Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorafinkbein2009-04-28 18:58:11 +0000
committerafinkbein2009-04-28 18:58:11 +0000
commitd8769f392ddd78ed55672853cdb22c5a1243aabc (patch)
tree92bdf9504ea057647b79dcaa65a0a3c4964cc5e0
parent1ec1ff4d7dec9f3cbcb80dcb6d3b284e7d195f12 (diff)
downloadorg.eclipse.osee-d8769f392ddd78ed55672853cdb22c5a1243aabc.tar.gz
org.eclipse.osee-d8769f392ddd78ed55672853cdb22c5a1243aabc.tar.xz
org.eclipse.osee-d8769f392ddd78ed55672853cdb22c5a1243aabc.zip
potential fix for ResourcePlugin workspace issue at startup time. Needs to be cleaned up still.
-rw-r--r--org.eclipse.osee.framework.ui.plugin/META-INF/MANIFEST.MF3
-rw-r--r--org.eclipse.osee.framework.ui.plugin/build.properties3
-rw-r--r--org.eclipse.osee.framework.ui.plugin/plugin.xml11
-rw-r--r--org.eclipse.osee.framework.ui.plugin/src/org/eclipse/osee/framework/ui/plugin/OseePluginUiActivator.java11
-rw-r--r--org.eclipse.osee.framework.ui.plugin/src/org/eclipse/osee/framework/ui/plugin/workspace/EarlyStartup.java33
-rw-r--r--org.eclipse.osee.framework.ui.plugin/src/org/eclipse/osee/framework/ui/plugin/workspace/SafeWorkspaceAccess.java22
-rw-r--r--org.eclipse.osee.framework.ui.plugin/src/org/eclipse/osee/framework/ui/plugin/workspace/WrapResourceChangeListener.java16
-rw-r--r--org.eclipse.osee.framework.ui.plugin/src/org/eclipse/osee/framework/ui/plugin/workspace/internal/ResourceChangeListenerImpl.java32
-rw-r--r--org.eclipse.osee.framework.ui.plugin/src/org/eclipse/osee/framework/ui/plugin/workspace/internal/SafeWorkspaceAccessImpl.java32
9 files changed, 161 insertions, 2 deletions
diff --git a/org.eclipse.osee.framework.ui.plugin/META-INF/MANIFEST.MF b/org.eclipse.osee.framework.ui.plugin/META-INF/MANIFEST.MF
index 02e6e6059d2..d24c2b3342b 100644
--- a/org.eclipse.osee.framework.ui.plugin/META-INF/MANIFEST.MF
+++ b/org.eclipse.osee.framework.ui.plugin/META-INF/MANIFEST.MF
@@ -24,7 +24,8 @@ Bundle-ActivationPolicy: lazy
Export-Package: org.eclipse.osee.framework.ui.plugin,
org.eclipse.osee.framework.ui.plugin.io,
org.eclipse.osee.framework.ui.plugin.util,
- org.eclipse.osee.framework.ui.plugin.views.property
+ org.eclipse.osee.framework.ui.plugin.views.property,
+ org.eclipse.osee.framework.ui.plugin.workspace
Import-Package: org.eclipse.jdt.core,
org.eclipse.jdt.ui,
org.eclipse.osee.framework.core.client,
diff --git a/org.eclipse.osee.framework.ui.plugin/build.properties b/org.eclipse.osee.framework.ui.plugin/build.properties
index 556c6f5f246..c6e51a81c97 100644
--- a/org.eclipse.osee.framework.ui.plugin/build.properties
+++ b/org.eclipse.osee.framework.ui.plugin/build.properties
@@ -1,7 +1,8 @@
bin.includes = META-INF/,\
images/,\
.,\
- schema/
+ schema/,\
+ plugin.xml
jars.compile.order = .
source.. = src/
output.. = bin/
diff --git a/org.eclipse.osee.framework.ui.plugin/plugin.xml b/org.eclipse.osee.framework.ui.plugin/plugin.xml
new file mode 100644
index 00000000000..b5beabc4856
--- /dev/null
+++ b/org.eclipse.osee.framework.ui.plugin/plugin.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<plugin>
+ <extension
+ point="org.eclipse.ui.startup">
+ <startup
+ class="org.eclipse.osee.framework.ui.plugin.workspace.EarlyStartup">
+ </startup>
+ </extension>
+
+</plugin>
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 4cff59d8592..bec0b6bcc00 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
@@ -33,6 +33,8 @@ public class OseePluginUiActivator extends OseeUiActivator {
// The shared instance
private static OseePluginUiActivator plugin;
+ private BundleContext context;
+
/**
* The constructor
*/
@@ -46,6 +48,7 @@ public class OseePluginUiActivator extends OseeUiActivator {
*/
public void start(BundleContext context) throws Exception {
super.start(context);
+ this.context = context;
OseeLog.registerLoggerListener(new EclipseErrorLogLogger());
if (PlatformUI.isWorkbenchRunning()) {
@@ -92,6 +95,7 @@ public class OseePluginUiActivator extends OseeUiActivator {
*/
public void stop(BundleContext context) throws Exception {
plugin = null;
+ context = null;
super.stop(context);
}
@@ -103,4 +107,11 @@ public class OseePluginUiActivator extends OseeUiActivator {
public static OseePluginUiActivator getInstance() {
return plugin;
}
+
+ /**
+ * @return
+ */
+ public BundleContext getContext() {
+ return context;
+ }
} \ No newline at end of file
diff --git a/org.eclipse.osee.framework.ui.plugin/src/org/eclipse/osee/framework/ui/plugin/workspace/EarlyStartup.java b/org.eclipse.osee.framework.ui.plugin/src/org/eclipse/osee/framework/ui/plugin/workspace/EarlyStartup.java
new file mode 100644
index 00000000000..bb2129a67ad
--- /dev/null
+++ b/org.eclipse.osee.framework.ui.plugin/src/org/eclipse/osee/framework/ui/plugin/workspace/EarlyStartup.java
@@ -0,0 +1,33 @@
+/*
+ * Created on Apr 28, 2009
+ *
+ * PLACE_YOUR_DISTRIBUTION_STATEMENT_RIGHT_HERE
+ */
+package org.eclipse.osee.framework.ui.plugin.workspace;
+
+import java.util.Hashtable;
+import org.eclipse.osee.framework.ui.plugin.OseePluginUiActivator;
+import org.eclipse.osee.framework.ui.plugin.workspace.internal.SafeWorkspaceAccessImpl;
+import org.eclipse.ui.IStartup;
+import org.osgi.framework.BundleContext;
+
+/**
+ * @author b1528444
+ *
+ */
+public class EarlyStartup implements IStartup {
+
+ /* (non-Javadoc)
+ * @see org.eclipse.ui.IStartup#earlyStartup()
+ */
+ @Override
+ public void earlyStartup() {
+ registerWorkspaceAccessService();
+ }
+
+ private void registerWorkspaceAccessService(){
+ BundleContext context = OseePluginUiActivator.getInstance().getContext();
+ context.registerService(SafeWorkspaceAccess.class.getName(), new SafeWorkspaceAccessImpl(), new Hashtable());
+ }
+
+}
diff --git a/org.eclipse.osee.framework.ui.plugin/src/org/eclipse/osee/framework/ui/plugin/workspace/SafeWorkspaceAccess.java b/org.eclipse.osee.framework.ui.plugin/src/org/eclipse/osee/framework/ui/plugin/workspace/SafeWorkspaceAccess.java
new file mode 100644
index 00000000000..3669e8a5c58
--- /dev/null
+++ b/org.eclipse.osee.framework.ui.plugin/src/org/eclipse/osee/framework/ui/plugin/workspace/SafeWorkspaceAccess.java
@@ -0,0 +1,22 @@
+/*
+ * Created on Apr 28, 2009
+ *
+ * PLACE_YOUR_DISTRIBUTION_STATEMENT_RIGHT_HERE
+ */
+package org.eclipse.osee.framework.ui.plugin.workspace;
+
+import org.eclipse.core.resources.IWorkspace;
+
+
+/**
+ * @author b1528444
+ *
+ */
+public interface SafeWorkspaceAccess {
+ IWorkspace getWorkspace();
+
+ /**
+ * @param workspaceListener
+ */
+ void addResourceChangeListener(WrapResourceChangeListener workspaceListener);
+}
diff --git a/org.eclipse.osee.framework.ui.plugin/src/org/eclipse/osee/framework/ui/plugin/workspace/WrapResourceChangeListener.java b/org.eclipse.osee.framework.ui.plugin/src/org/eclipse/osee/framework/ui/plugin/workspace/WrapResourceChangeListener.java
new file mode 100644
index 00000000000..4931d8cea1e
--- /dev/null
+++ b/org.eclipse.osee.framework.ui.plugin/src/org/eclipse/osee/framework/ui/plugin/workspace/WrapResourceChangeListener.java
@@ -0,0 +1,16 @@
+/*
+ * Created on Apr 28, 2009
+ *
+ * PLACE_YOUR_DISTRIBUTION_STATEMENT_RIGHT_HERE
+ */
+package org.eclipse.osee.framework.ui.plugin.workspace;
+
+import org.eclipse.core.resources.IResourceChangeEvent;
+
+/**
+ * @author b1528444
+ *
+ */
+public interface WrapResourceChangeListener {
+ public void resourceChanged(IResourceChangeEvent event);
+}
diff --git a/org.eclipse.osee.framework.ui.plugin/src/org/eclipse/osee/framework/ui/plugin/workspace/internal/ResourceChangeListenerImpl.java b/org.eclipse.osee.framework.ui.plugin/src/org/eclipse/osee/framework/ui/plugin/workspace/internal/ResourceChangeListenerImpl.java
new file mode 100644
index 00000000000..4447ec4fbf2
--- /dev/null
+++ b/org.eclipse.osee.framework.ui.plugin/src/org/eclipse/osee/framework/ui/plugin/workspace/internal/ResourceChangeListenerImpl.java
@@ -0,0 +1,32 @@
+/*
+ * Created on Apr 28, 2009
+ *
+ * PLACE_YOUR_DISTRIBUTION_STATEMENT_RIGHT_HERE
+ */
+package org.eclipse.osee.framework.ui.plugin.workspace.internal;
+
+import org.eclipse.core.resources.IResourceChangeEvent;
+import org.eclipse.core.resources.IResourceChangeListener;
+import org.eclipse.osee.framework.ui.plugin.workspace.WrapResourceChangeListener;
+
+/**
+ * @author b1528444
+ *
+ */
+public class ResourceChangeListenerImpl implements IResourceChangeListener {
+
+ private WrapResourceChangeListener listener;
+
+ public ResourceChangeListenerImpl(WrapResourceChangeListener listener){
+ this.listener = listener;
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.core.resources.IResourceChangeListener#resourceChanged(org.eclipse.core.resources.IResourceChangeEvent)
+ */
+ @Override
+ public void resourceChanged(IResourceChangeEvent event) {
+ listener.resourceChanged(event);
+ }
+
+}
diff --git a/org.eclipse.osee.framework.ui.plugin/src/org/eclipse/osee/framework/ui/plugin/workspace/internal/SafeWorkspaceAccessImpl.java b/org.eclipse.osee.framework.ui.plugin/src/org/eclipse/osee/framework/ui/plugin/workspace/internal/SafeWorkspaceAccessImpl.java
new file mode 100644
index 00000000000..5960821be5b
--- /dev/null
+++ b/org.eclipse.osee.framework.ui.plugin/src/org/eclipse/osee/framework/ui/plugin/workspace/internal/SafeWorkspaceAccessImpl.java
@@ -0,0 +1,32 @@
+/*
+ * Created on Apr 28, 2009
+ *
+ * PLACE_YOUR_DISTRIBUTION_STATEMENT_RIGHT_HERE
+ */
+package org.eclipse.osee.framework.ui.plugin.workspace.internal;
+
+import org.eclipse.core.resources.IWorkspace;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.osee.framework.ui.plugin.workspace.SafeWorkspaceAccess;
+import org.eclipse.osee.framework.ui.plugin.workspace.WrapResourceChangeListener;
+
+/**
+ * @author b1528444
+ *
+ */
+public class SafeWorkspaceAccessImpl implements SafeWorkspaceAccess {
+
+ @Override
+ public IWorkspace getWorkspace() {
+ return ResourcesPlugin.getWorkspace();
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osee.framework.ui.plugin.workspace.SafeWorkspaceAccess#addResourceChangeListener(org.eclipse.osee.framework.ui.plugin.workspace.WrapResourceChangeListener)
+ */
+ @Override
+ public void addResourceChangeListener(WrapResourceChangeListener workspaceListener) {
+ ResourcesPlugin.getWorkspace().addResourceChangeListener(new ResourceChangeListenerImpl(workspaceListener));
+ }
+
+}

Back to the top