Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/artifact/massEditor/MassXViewerEventManager.java')
-rw-r--r--plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/artifact/massEditor/MassXViewerEventManager.java166
1 files changed, 83 insertions, 83 deletions
diff --git a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/artifact/massEditor/MassXViewerEventManager.java b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/artifact/massEditor/MassXViewerEventManager.java
index 84010701a67..a9afaa835d6 100644
--- a/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/artifact/massEditor/MassXViewerEventManager.java
+++ b/plugins/org.eclipse.osee.framework.ui.skynet/src/org/eclipse/osee/framework/ui/skynet/artifact/massEditor/MassXViewerEventManager.java
@@ -8,8 +8,8 @@
* Contributors:
* Boeing - initial API and implementation
*******************************************************************************/
-package org.eclipse.osee.framework.ui.skynet.artifact.massEditor;
-
+package org.eclipse.osee.framework.ui.skynet.artifact.massEditor;
+
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
@@ -24,84 +24,84 @@ import org.eclipse.osee.framework.skynet.core.event2.artifact.EventModType;
import org.eclipse.osee.framework.skynet.core.event2.artifact.IArtifactEventListener;
import org.eclipse.osee.framework.skynet.core.event2.filter.IEventFilter;
import org.eclipse.osee.framework.ui.swt.Displays;
-
-/**
- * Common location for event handling for mass editor in order to keep number of registrations and processing to a
- * minimum.
- *
- * @author Donald G. Dunne
- */
-public class MassXViewerEventManager implements IArtifactEventListener {
-
- List<IMassViewerEventHandler> handlers = new ArrayList<IMassViewerEventHandler>();
- static MassXViewerEventManager instance;
-
- public static void add(IMassViewerEventHandler iWorldEventHandler) {
- if (instance == null) {
- instance = new MassXViewerEventManager();
- OseeEventManager.addListener(instance);
- }
- instance.handlers.add(iWorldEventHandler);
- }
-
- public static void remove(IMassViewerEventHandler iWorldEventHandler) {
- if (instance != null) {
- instance.handlers.remove(iWorldEventHandler);
- }
- }
-
- @Override
- public void handleArtifactEvent(final ArtifactEvent artifactEvent, Sender sender) {
- for (IMassViewerEventHandler handler : new CopyOnWriteArrayList<IMassViewerEventHandler>(handlers)) {
- if (handler.isDisposed()) {
- handlers.remove(handler);
- }
- }
-
- final Collection<Artifact> modifiedArts =
- artifactEvent.getCacheArtifacts(EventModType.Modified, EventModType.Reloaded);
- final Collection<Artifact> relModifiedArts = artifactEvent.getRelCacheArtifacts();
- final Collection<EventBasicGuidArtifact> deletedPurgedArts =
- artifactEvent.get(EventModType.Deleted, EventModType.Purged);
-
- Displays.ensureInDisplayThread(new Runnable() {
- @Override
- public void run() {
- if (!deletedPurgedArts.isEmpty()) {
- for (IMassViewerEventHandler handler : handlers) {
- if (!handler.isDisposed()) {
- IContentProvider contentProvider = handler.getMassXViewer().getContentProvider();
- // remove from UI
- if (contentProvider instanceof MassContentProvider) {
- ((MassContentProvider) contentProvider).removeAll(deletedPurgedArts);
- }
- }
- }
- }
- for (IMassViewerEventHandler handler : handlers) {
- if (!handler.isDisposed()) {
- IContentProvider contentProvider = handler.getMassXViewer().getContentProvider();
- // remove from UI
- if (contentProvider instanceof MassContentProvider) {
- ((MassContentProvider) contentProvider).updateAll(modifiedArts);
- }
- }
-
- for (Artifact art : relModifiedArts) {
- // Don't refresh deleted artifacts
- if (art.isDeleted()) {
- continue;
- }
- handler.getMassXViewer().refresh(art);
- }
- }
- }
- });
- }
-
- @Override
- public List<? extends IEventFilter> getEventFilters() {
- return null;
- }
-
-}
+
+/**
+ * Common location for event handling for mass editor in order to keep number of registrations and processing to a
+ * minimum.
+ *
+ * @author Donald G. Dunne
+ */
+public class MassXViewerEventManager implements IArtifactEventListener {
+
+ List<IMassViewerEventHandler> handlers = new ArrayList<IMassViewerEventHandler>();
+ static MassXViewerEventManager instance;
+
+ public static void add(IMassViewerEventHandler iWorldEventHandler) {
+ if (instance == null) {
+ instance = new MassXViewerEventManager();
+ OseeEventManager.addListener(instance);
+ }
+ instance.handlers.add(iWorldEventHandler);
+ }
+
+ public static void remove(IMassViewerEventHandler iWorldEventHandler) {
+ if (instance != null) {
+ instance.handlers.remove(iWorldEventHandler);
+ }
+ }
+
+ @Override
+ public void handleArtifactEvent(final ArtifactEvent artifactEvent, Sender sender) {
+ for (IMassViewerEventHandler handler : new CopyOnWriteArrayList<IMassViewerEventHandler>(handlers)) {
+ if (handler.isDisposed()) {
+ handlers.remove(handler);
+ }
+ }
+
+ final Collection<Artifact> modifiedArts =
+ artifactEvent.getCacheArtifacts(EventModType.Modified, EventModType.Reloaded);
+ final Collection<Artifact> relModifiedArts = artifactEvent.getRelCacheArtifacts();
+ final Collection<EventBasicGuidArtifact> deletedPurgedArts =
+ artifactEvent.get(EventModType.Deleted, EventModType.Purged);
+
+ Displays.ensureInDisplayThread(new Runnable() {
+ @Override
+ public void run() {
+ if (!deletedPurgedArts.isEmpty()) {
+ for (IMassViewerEventHandler handler : handlers) {
+ if (!handler.isDisposed()) {
+ IContentProvider contentProvider = handler.getMassXViewer().getContentProvider();
+ // remove from UI
+ if (contentProvider instanceof MassContentProvider) {
+ ((MassContentProvider) contentProvider).removeAll(deletedPurgedArts);
+ }
+ }
+ }
+ }
+ for (IMassViewerEventHandler handler : handlers) {
+ if (!handler.isDisposed()) {
+ IContentProvider contentProvider = handler.getMassXViewer().getContentProvider();
+ // remove from UI
+ if (contentProvider instanceof MassContentProvider) {
+ ((MassContentProvider) contentProvider).updateAll(modifiedArts);
+ }
+ }
+
+ for (Artifact art : relModifiedArts) {
+ // Don't refresh deleted artifacts
+ if (art.isDeleted()) {
+ continue;
+ }
+ handler.getMassXViewer().refresh(art);
+ }
+ }
+ }
+ });
+ }
+
+ @Override
+ public List<? extends IEventFilter> getEventFilters() {
+ return null;
+ }
+
+}

Back to the top