Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorafinkbein2008-09-09 21:12:56 +0000
committerafinkbein2008-09-09 21:12:56 +0000
commit8fcab0e421702c05d03c80ebe752dcba258d402c (patch)
treec8ac270a0496bbfa6797a9d7e67327b4236b3508
parentf07c98fd2cd19769b742c48f4c7c1ee8f41179b9 (diff)
downloadorg.eclipse.osee-8fcab0e421702c05d03c80ebe752dcba258d402c.tar.gz
org.eclipse.osee-8fcab0e421702c05d03c80ebe752dcba258d402c.tar.xz
org.eclipse.osee-8fcab0e421702c05d03c80ebe752dcba258d402c.zip
-rw-r--r--org.eclipse.osee.framework.ui.plugin/src/org/eclipse/osee/framework/ui/plugin/OseePluginUiActivator.java40
1 files changed, 40 insertions, 0 deletions
diff --git a/org.eclipse.osee.framework.ui.plugin/src/org/eclipse/osee/framework/ui/plugin/OseePluginUiActivator.java b/org.eclipse.osee.framework.ui.plugin/src/org/eclipse/osee/framework/ui/plugin/OseePluginUiActivator.java
index b6788aa1b1c..86896e04d4e 100644
--- a/org.eclipse.osee.framework.ui.plugin/src/org/eclipse/osee/framework/ui/plugin/OseePluginUiActivator.java
+++ b/org.eclipse.osee.framework.ui.plugin/src/org/eclipse/osee/framework/ui/plugin/OseePluginUiActivator.java
@@ -10,9 +10,20 @@
*******************************************************************************/
package org.eclipse.osee.framework.ui.plugin;
+import java.io.File;
+import java.net.URL;
import java.util.logging.Logger;
+
+import org.eclipse.core.runtime.FileLocator;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.osee.framework.db.connection.core.OseeInfo;
+import org.eclipse.osee.framework.jdk.core.util.Lib;
import org.eclipse.osee.framework.logging.OseeLog;
import org.eclipse.osee.framework.plugin.core.config.ConfigUtil;
+import org.eclipse.osgi.service.datalocation.Location;
+import org.eclipse.ui.IWorkbench;
+import org.eclipse.ui.IWorkbenchListener;
+import org.eclipse.ui.PlatformUI;
import org.osgi.framework.BundleContext;
/**
@@ -41,6 +52,35 @@ public class OseePluginUiActivator extends OseeUiActivator {
public void start(BundleContext context) throws Exception {
super.start(context);
OseeLog.registerLoggerListener(new EclipseErrorLogLogger());
+ PlatformUI.getWorkbench().addWorkbenchListener(new IWorkbenchListener(){
+
+ @Override
+ public void postShutdown(IWorkbench workbench) {
+ }
+
+ @Override
+ public boolean preShutdown(IWorkbench workbench, boolean forced) {
+ try{
+ if(Lib.isWindows()){
+ String clearCache = OseeInfo.getValue("clear_cache");
+ if(Boolean.parseBoolean(clearCache)){
+ Location location = Platform.getInstallLocation();
+ URL url = FileLocator.toFileURL(location.getURL());
+ File file = new File(url.getFile());
+ File cache = new File(new File(new File(file, "p2"), "org.eclipse.equinox.p2.metadata.repository"), "cache");
+ File[] files = cache.listFiles();
+ for(File toDelete:files){
+ toDelete.delete();
+ }
+ }
+ }
+ } catch (Throwable th){
+
+ }
+ return true;
+ }
+
+ });
}
/*

Back to the top