From a05c47c8346782bcbf381354428c2e7a9d79fa5c Mon Sep 17 00:00:00 2001 From: Martin Oberhuber < martin.oberhuber@windriver.com> Date: Mon, 14 May 2007 11:43:32 +0000 Subject: [PATCH] [168975] Move ISystemRegistryUI#fireRemoteResourceChangedEvent from UI to Core --- .../guide/api/uiAPI.html | 4 +- .../core/events/SystemRemoteChangeEvent.java | 22 +++++ .../rse/core/model/ISystemRegistry.java | 14 +++ .../actions/SystemCopyRemoteFileAction.java | 3 +- .../actions/SystemMoveRemoteFileAction.java | 3 +- .../files/ui/wizards/SystemNewFileWizard.java | 5 +- .../ui/view/SystemDNDTransferRunnable.java | 5 +- .../internal/ui/view/SystemTableTreeView.java | 6 +- .../rse/internal/ui/view/SystemView.java | 5 +- .../view/scratchpad/SystemScratchpadView.java | 6 +- .../eclipse/rse/ui/view/SystemTableView.java | 6 +- .../rse/ui/internal/model/SystemRegistry.java | 10 +-- .../rse/ui/model/ISystemRegistryUI.java | 16 ---- .../ui/model/SystemRemoteChangeEventUI.java | 90 ------------------- 14 files changed, 64 insertions(+), 131 deletions(-) delete mode 100644 rse/plugins/org.eclipse.rse.ui/model/org/eclipse/rse/ui/model/SystemRemoteChangeEventUI.java diff --git a/rse/doc/org.eclipse.rse.doc.isv/guide/api/uiAPI.html b/rse/doc/org.eclipse.rse.doc.isv/guide/api/uiAPI.html index 20696285410..c7e2c699064 100755 --- a/rse/doc/org.eclipse.rse.doc.isv/guide/api/uiAPI.html +++ b/rse/doc/org.eclipse.rse.doc.isv/guide/api/uiAPI.html @@ -3,7 +3,7 @@ - + RSE User Interface API @@ -126,7 +126,7 @@ To get the system registry, use the original client's thread; or you may want to pass the originating viewer's ID with the resource change event. Such operations are only possible when the UI is loaded, and therefore you need to use -ISystemRegistryUI.fireEvent() +ISystemRegistry.fireEvent() method in that case. To get the system registry UI interface, use the RSEUIPlugin.getTheSystemRegistry() method. diff --git a/rse/plugins/org.eclipse.rse.core/src/org/eclipse/rse/core/events/SystemRemoteChangeEvent.java b/rse/plugins/org.eclipse.rse.core/src/org/eclipse/rse/core/events/SystemRemoteChangeEvent.java index a1e27cedc43..ae44dd60064 100644 --- a/rse/plugins/org.eclipse.rse.core/src/org/eclipse/rse/core/events/SystemRemoteChangeEvent.java +++ b/rse/plugins/org.eclipse.rse.core/src/org/eclipse/rse/core/events/SystemRemoteChangeEvent.java @@ -29,6 +29,7 @@ public class SystemRemoteChangeEvent implements ISystemRemoteChangeEvent private Object resource, parent; private String oldName; private ISubSystem subsystem; + private Object originatingViewer; /** * Constructor for non-rename event @@ -153,5 +154,26 @@ public class SystemRemoteChangeEvent implements ISystemRemoteChangeEvent { return oldName; } + + /** + * Set the originating viewer. + * Only this viewer is candidate for updating the selection. Eg, on a + * create event, if this and the resource parent is set, the newly + * created object is selected after the parent's contents are refreshed, + * for the originating viewer. + */ + public void setOriginatingViewer(Object originatingViewer) { + this.originatingViewer = originatingViewer; + } + + /** + * Get the originating viewer from which this remote resource change event + * comes from. The combination of this, if non-null, plus the resource parent, + * allows viewers to decide whether to update the selection within the + * parent resource, after refreshing that resource. + */ + public Object getOriginatingViewer() { + return originatingViewer; + } } \ No newline at end of file diff --git a/rse/plugins/org.eclipse.rse.core/src/org/eclipse/rse/core/model/ISystemRegistry.java b/rse/plugins/org.eclipse.rse.core/src/org/eclipse/rse/core/model/ISystemRegistry.java index f155f8cc300..6ef4523fe4c 100644 --- a/rse/plugins/org.eclipse.rse.core/src/org/eclipse/rse/core/model/ISystemRegistry.java +++ b/rse/plugins/org.eclipse.rse.core/src/org/eclipse/rse/core/model/ISystemRegistry.java @@ -806,6 +806,20 @@ public interface ISystemRegistry extends ISchedulingRule { */ public void fireRemoteResourceChangeEvent(int eventType, Object resource, Object resourceParent, ISubSystem subsystem, String oldName); + /** + * Notify all listeners of a change to a remote resource such as a file. + * This one takes the information needed and creates the event for you. + * @param eventType - one of the constants from {@link org.eclipse.rse.core.events.ISystemRemoteChangeEvents} + * @param resource - the remote resource object, or absolute name of the resource as would be given by calling getAbsoluteName on its remote adapter + * @param resourceParent - the remote resource's parent object, or absolute name, if that is known. If it is non-null, this will aid in refreshing occurences of that parent. + * @param subsystem - the subsystem which contains this remote resource. This allows the search for impacts to be + * limited to subsystems of the same parent factory, and to connections with the same hostname as the subsystem's connection. + * @param oldName - on a rename operation, this is the absolute name of the resource prior to the rename + * @param originatingViewer - optional. If set, this gives the viewer a clue that it should select the affected resource after refreshing its parent. + * This saves sending a separate event to reveal and select the new created resource on a create event, for example. + */ + public void fireRemoteResourceChangeEvent(int eventType, Object resource, Object resourceParent, ISubSystem subsystem, String oldName, Object originatingViewer); + /** * Notify a specific listener of a change to a remote resource such as a file. */ diff --git a/rse/plugins/org.eclipse.rse.files.ui/src/org/eclipse/rse/internal/files/ui/actions/SystemCopyRemoteFileAction.java b/rse/plugins/org.eclipse.rse.files.ui/src/org/eclipse/rse/internal/files/ui/actions/SystemCopyRemoteFileAction.java index e6a0ce1d180..1e0c1e5594b 100644 --- a/rse/plugins/org.eclipse.rse.files.ui/src/org/eclipse/rse/internal/files/ui/actions/SystemCopyRemoteFileAction.java +++ b/rse/plugins/org.eclipse.rse.files.ui/src/org/eclipse/rse/internal/files/ui/actions/SystemCopyRemoteFileAction.java @@ -26,6 +26,7 @@ import org.eclipse.core.runtime.NullProgressMonitor; import org.eclipse.jface.dialogs.Dialog; import org.eclipse.jface.viewers.IStructuredSelection; import org.eclipse.jface.viewers.Viewer; +import org.eclipse.rse.core.RSECorePlugin; import org.eclipse.rse.core.SystemBasePlugin; import org.eclipse.rse.core.events.ISystemRemoteChangeEvents; import org.eclipse.rse.core.filters.ISystemFilter; @@ -474,7 +475,7 @@ public class SystemCopyRemoteFileAction extends SystemBaseCopyAction invalidateFilterReferences(targetFolder); - RSEUIPlugin.getTheSystemRegistry().fireRemoteResourceChangeEvent( + RSECorePlugin.getTheSystemRegistry().fireRemoteResourceChangeEvent( ISystemRemoteChangeEvents.SYSTEM_REMOTE_RESOURCE_CREATED, copiedFiles, targetFolder.getAbsolutePath(), fileSS, null, originatingViewer); /* Old release 1.0 way... diff --git a/rse/plugins/org.eclipse.rse.files.ui/src/org/eclipse/rse/internal/files/ui/actions/SystemMoveRemoteFileAction.java b/rse/plugins/org.eclipse.rse.files.ui/src/org/eclipse/rse/internal/files/ui/actions/SystemMoveRemoteFileAction.java index 1642eafedda..38570b09461 100644 --- a/rse/plugins/org.eclipse.rse.files.ui/src/org/eclipse/rse/internal/files/ui/actions/SystemMoveRemoteFileAction.java +++ b/rse/plugins/org.eclipse.rse.files.ui/src/org/eclipse/rse/internal/files/ui/actions/SystemMoveRemoteFileAction.java @@ -19,6 +19,7 @@ package org.eclipse.rse.internal.files.ui.actions; import java.util.Vector; import org.eclipse.core.runtime.IProgressMonitor; +import org.eclipse.rse.core.RSECorePlugin; import org.eclipse.rse.core.events.ISystemRemoteChangeEvents; import org.eclipse.rse.core.model.IHost; import org.eclipse.rse.core.subsystems.ISubSystem; @@ -155,7 +156,7 @@ public class SystemMoveRemoteFileAction extends SystemCopyRemoteFileAction ISubSystem fileSS = targetFolder.getParentRemoteFileSubSystem(); //RSEUIPlugin.getTheSystemRegistry().fireRemoteResourceChangeEvent( // ISystemRemoteChangeEvents.SYSTEM_REMOTE_RESOURCE_DELETED, copiedFiles, firstSelectionParent.getAbsolutePath(), fileSS, null, null); - RSEUIPlugin.getTheSystemRegistry().fireRemoteResourceChangeEvent( + RSECorePlugin.getTheSystemRegistry().fireRemoteResourceChangeEvent( ISystemRemoteChangeEvents.SYSTEM_REMOTE_RESOURCE_DELETED, movedFiles, firstSelectionParent.getAbsolutePath(), fileSS, null, null); diff --git a/rse/plugins/org.eclipse.rse.files.ui/src/org/eclipse/rse/internal/files/ui/wizards/SystemNewFileWizard.java b/rse/plugins/org.eclipse.rse.files.ui/src/org/eclipse/rse/internal/files/ui/wizards/SystemNewFileWizard.java index 215b732b619..7c49f7cd66b 100644 --- a/rse/plugins/org.eclipse.rse.files.ui/src/org/eclipse/rse/internal/files/ui/wizards/SystemNewFileWizard.java +++ b/rse/plugins/org.eclipse.rse.files.ui/src/org/eclipse/rse/internal/files/ui/wizards/SystemNewFileWizard.java @@ -21,6 +21,7 @@ import java.util.Vector; import org.eclipse.core.runtime.IProgressMonitor; import org.eclipse.core.runtime.NullProgressMonitor; import org.eclipse.jface.viewers.Viewer; +import org.eclipse.rse.core.RSECorePlugin; import org.eclipse.rse.core.SystemBasePlugin; import org.eclipse.rse.core.events.ISystemRemoteChangeEvents; import org.eclipse.rse.core.events.ISystemResourceChangeEvents; @@ -28,6 +29,7 @@ import org.eclipse.rse.core.events.ISystemResourceChangeListener; import org.eclipse.rse.core.events.SystemResourceChangeEvent; import org.eclipse.rse.core.filters.ISystemFilter; import org.eclipse.rse.core.filters.ISystemFilterReference; +import org.eclipse.rse.core.model.ISystemRegistry; import org.eclipse.rse.core.subsystems.ISubSystem; import org.eclipse.rse.internal.files.ui.FileResources; import org.eclipse.rse.services.clientserver.archiveutils.ArchiveHandlerManager; @@ -44,7 +46,6 @@ import org.eclipse.rse.ui.ISystemIconConstants; import org.eclipse.rse.ui.ISystemMessages; import org.eclipse.rse.ui.RSEUIPlugin; import org.eclipse.rse.ui.messages.SystemMessageDialog; -import org.eclipse.rse.ui.model.ISystemRegistryUI; import org.eclipse.rse.ui.view.ISystemTree; import org.eclipse.rse.ui.wizards.AbstractSystemWizard; @@ -282,7 +283,7 @@ public class SystemNewFileWizard protected static void updateGUI(IRemoteFile parentFolder, IRemoteFile newFileOrFolder, Viewer viewer, boolean isInputAFilter, ISystemFilterReference selectedFilterRef) { - ISystemRegistryUI sr = RSEUIPlugin.getTheSystemRegistry(); + ISystemRegistry sr = RSECorePlugin.getTheSystemRegistry(); if (selectedFilterRef != null) { selectedFilterRef.markStale(true); diff --git a/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/SystemDNDTransferRunnable.java b/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/SystemDNDTransferRunnable.java index 43b3a21ce88..c1a9bc7e8a7 100644 --- a/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/SystemDNDTransferRunnable.java +++ b/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/SystemDNDTransferRunnable.java @@ -29,11 +29,13 @@ import org.eclipse.core.runtime.IStatus; import org.eclipse.core.runtime.Status; import org.eclipse.jface.viewers.TreeViewer; import org.eclipse.jface.viewers.Viewer; +import org.eclipse.rse.core.RSECorePlugin; import org.eclipse.rse.core.SystemBasePlugin; import org.eclipse.rse.core.events.ISystemRemoteChangeEvents; import org.eclipse.rse.core.filters.ISystemFilterReference; import org.eclipse.rse.core.model.IHost; import org.eclipse.rse.core.model.ISystemContainer; +import org.eclipse.rse.core.model.ISystemRegistry; import org.eclipse.rse.core.model.ISystemResourceSet; import org.eclipse.rse.core.model.SystemRemoteResourceSet; import org.eclipse.rse.core.subsystems.ISubSystem; @@ -44,7 +46,6 @@ import org.eclipse.rse.services.clientserver.messages.SystemMessage; import org.eclipse.rse.ui.ISystemMessages; import org.eclipse.rse.ui.RSEUIPlugin; import org.eclipse.rse.ui.messages.SystemMessageDialog; -import org.eclipse.rse.ui.model.ISystemRegistryUI; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Shell; import org.eclipse.ui.progress.UIJob; @@ -611,7 +612,7 @@ public class SystemDNDTransferRunnable extends WorkspaceJob public IStatus runInUIThread(IProgressMonitor monitor) { - ISystemRegistryUI registry = RSEUIPlugin.getTheSystemRegistry(); + ISystemRegistry registry = RSECorePlugin.getTheSystemRegistry(); if (_resultTgtObjects.size() > 0) { boolean doRefresh = _ok; diff --git a/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/SystemTableTreeView.java b/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/SystemTableTreeView.java index 9df0035f830..29a501883ad 100644 --- a/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/SystemTableTreeView.java +++ b/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/SystemTableTreeView.java @@ -44,6 +44,7 @@ import org.eclipse.jface.viewers.StructuredSelection; import org.eclipse.jface.viewers.TableLayout; import org.eclipse.jface.viewers.TreeViewer; import org.eclipse.jface.window.SameShellProvider; +import org.eclipse.rse.core.RSECorePlugin; import org.eclipse.rse.core.SystemAdapterHelpers; import org.eclipse.rse.core.SystemBasePlugin; import org.eclipse.rse.core.events.ISystemRemoteChangeEvent; @@ -77,7 +78,6 @@ import org.eclipse.rse.ui.actions.ISystemAction; import org.eclipse.rse.ui.actions.SystemRefreshAction; import org.eclipse.rse.ui.messages.ISystemMessageLine; import org.eclipse.rse.ui.messages.SystemMessageDialog; -import org.eclipse.rse.ui.model.ISystemRegistryUI; import org.eclipse.rse.ui.model.ISystemShellProvider; import org.eclipse.rse.ui.view.AbstractSystemViewAdapter; import org.eclipse.rse.ui.view.ContextObject; @@ -1277,7 +1277,7 @@ public class SystemTableTreeView */ public boolean doDelete(IProgressMonitor monitor) { - ISystemRegistryUI sr = RSEUIPlugin.getTheSystemRegistry(); + ISystemRegistry sr = RSECorePlugin.getTheSystemRegistry(); IStructuredSelection selection = (IStructuredSelection) getSelection(); Iterator elements = selection.iterator(); //int selectedCount = selection.size(); @@ -1369,7 +1369,7 @@ public class SystemTableTreeView */ public boolean doRename(String[] newNames) { - ISystemRegistryUI sr = RSEUIPlugin.getTheSystemRegistry(); + ISystemRegistry sr = RSECorePlugin.getTheSystemRegistry(); IStructuredSelection selection = (IStructuredSelection) getSelection(); Iterator elements = selection.iterator(); //int selectedCount = selection.size(); diff --git a/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/SystemView.java b/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/SystemView.java index 1fd43f74cc1..0199a1cab44 100644 --- a/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/SystemView.java +++ b/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/SystemView.java @@ -124,7 +124,6 @@ import org.eclipse.rse.ui.dialogs.SystemPromptDialog; import org.eclipse.rse.ui.messages.ISystemMessageLine; import org.eclipse.rse.ui.messages.SystemMessageDialog; import org.eclipse.rse.ui.model.ISystemPromptableObject; -import org.eclipse.rse.ui.model.ISystemRegistryUI; import org.eclipse.rse.ui.model.ISystemShellProvider; import org.eclipse.rse.ui.model.SystemRemoteElementResourceSet; import org.eclipse.rse.ui.model.SystemResourceChangeEventUI; @@ -4603,7 +4602,7 @@ public class SystemView extends SafeTreeViewer * Required method from ISystemDeleteTarget */ public boolean doDelete(IProgressMonitor monitor) { - ISystemRegistryUI sr = RSEUIPlugin.getTheSystemRegistry(); + ISystemRegistry sr = RSECorePlugin.getTheSystemRegistry(); IStructuredSelection selection = (IStructuredSelection) getSelection(); Iterator elements = selection.iterator(); //int selectedCount = selection.size(); @@ -4731,7 +4730,7 @@ public class SystemView extends SafeTreeViewer * Required method from ISystemRenameTarget */ public boolean doRename(String[] newNames) { - ISystemRegistryUI sr = RSEUIPlugin.getTheSystemRegistry(); + ISystemRegistry sr = RSECorePlugin.getTheSystemRegistry(); IStructuredSelection selection = (IStructuredSelection) getSelection(); Iterator elements = selection.iterator(); Object element = null; diff --git a/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/scratchpad/SystemScratchpadView.java b/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/scratchpad/SystemScratchpadView.java index 55d39324ee5..f472ba3ecd2 100644 --- a/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/scratchpad/SystemScratchpadView.java +++ b/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/scratchpad/SystemScratchpadView.java @@ -42,6 +42,7 @@ import org.eclipse.jface.viewers.StructuredSelection; import org.eclipse.jface.viewers.TableLayout; import org.eclipse.jface.viewers.TreeViewer; import org.eclipse.jface.window.SameShellProvider; +import org.eclipse.rse.core.RSECorePlugin; import org.eclipse.rse.core.SystemAdapterHelpers; import org.eclipse.rse.core.SystemBasePlugin; import org.eclipse.rse.core.events.ISystemRemoteChangeEvent; @@ -78,7 +79,6 @@ import org.eclipse.rse.ui.actions.SystemRefreshAction; import org.eclipse.rse.ui.internal.model.SystemRegistry; import org.eclipse.rse.ui.messages.ISystemMessageLine; import org.eclipse.rse.ui.messages.SystemMessageDialog; -import org.eclipse.rse.ui.model.ISystemRegistryUI; import org.eclipse.rse.ui.model.ISystemShellProvider; import org.eclipse.rse.ui.view.AbstractSystemViewAdapter; import org.eclipse.rse.ui.view.ContextObject; @@ -823,7 +823,7 @@ public class SystemScratchpadView */ public boolean doDelete(IProgressMonitor monitor) { - ISystemRegistryUI sr = RSEUIPlugin.getTheSystemRegistry(); + ISystemRegistry sr = RSECorePlugin.getTheSystemRegistry(); IStructuredSelection selection = (IStructuredSelection) getSelection(); Iterator elements = selection.iterator(); //int selectedCount = selection.size(); @@ -915,7 +915,7 @@ public class SystemScratchpadView */ public boolean doRename(String[] newNames) { - ISystemRegistryUI sr = RSEUIPlugin.getTheSystemRegistry(); + ISystemRegistry sr = RSECorePlugin.getTheSystemRegistry(); IStructuredSelection selection = (IStructuredSelection) getSelection(); Iterator elements = selection.iterator(); //int selectedCount = selection.size(); diff --git a/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/ui/view/SystemTableView.java b/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/ui/view/SystemTableView.java index 4465d683bbf..1baa3f6d661 100644 --- a/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/ui/view/SystemTableView.java +++ b/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/ui/view/SystemTableView.java @@ -43,6 +43,7 @@ import org.eclipse.jface.viewers.StructuredSelection; import org.eclipse.jface.viewers.TableLayout; import org.eclipse.jface.viewers.TableViewer; import org.eclipse.jface.window.SameShellProvider; +import org.eclipse.rse.core.RSECorePlugin; import org.eclipse.rse.core.SystemAdapterHelpers; import org.eclipse.rse.core.SystemBasePlugin; import org.eclipse.rse.core.events.ISystemRemoteChangeEvent; @@ -87,7 +88,6 @@ import org.eclipse.rse.ui.actions.ISystemAction; import org.eclipse.rse.ui.actions.SystemRefreshAction; import org.eclipse.rse.ui.messages.ISystemMessageLine; import org.eclipse.rse.ui.messages.SystemMessageDialog; -import org.eclipse.rse.ui.model.ISystemRegistryUI; import org.eclipse.rse.ui.model.ISystemShellProvider; import org.eclipse.swt.SWT; import org.eclipse.swt.dnd.DND; @@ -1408,7 +1408,7 @@ public class SystemTableView */ public boolean doDelete(IProgressMonitor monitor) { - ISystemRegistryUI sr = RSEUIPlugin.getTheSystemRegistry(); + ISystemRegistry sr = RSECorePlugin.getTheSystemRegistry(); IStructuredSelection selection = (IStructuredSelection) getSelection(); Iterator elements = selection.iterator(); //int selectedCount = selection.size(); @@ -1500,7 +1500,7 @@ public class SystemTableView */ public boolean doRename(String[] newNames) { - ISystemRegistryUI sr = RSEUIPlugin.getTheSystemRegistry(); + ISystemRegistry sr = RSECorePlugin.getTheSystemRegistry(); IStructuredSelection selection = (IStructuredSelection) getSelection(); Iterator elements = selection.iterator(); Object element = null; diff --git a/rse/plugins/org.eclipse.rse.ui/model/org/eclipse/rse/ui/internal/model/SystemRegistry.java b/rse/plugins/org.eclipse.rse.ui/model/org/eclipse/rse/ui/internal/model/SystemRegistry.java index adb2090b7e4..4ff1742839b 100644 --- a/rse/plugins/org.eclipse.rse.ui/model/org/eclipse/rse/ui/internal/model/SystemRegistry.java +++ b/rse/plugins/org.eclipse.rse.ui/model/org/eclipse/rse/ui/internal/model/SystemRegistry.java @@ -55,6 +55,7 @@ import org.eclipse.rse.core.events.ISystemRemoteChangeListener; import org.eclipse.rse.core.events.ISystemResourceChangeEvent; import org.eclipse.rse.core.events.ISystemResourceChangeEvents; import org.eclipse.rse.core.events.ISystemResourceChangeListener; +import org.eclipse.rse.core.events.SystemRemoteChangeEvent; import org.eclipse.rse.core.events.SystemResourceChangeEvent; import org.eclipse.rse.core.filters.ISystemFilter; import org.eclipse.rse.core.filters.ISystemFilterPoolReferenceManager; @@ -95,7 +96,6 @@ import org.eclipse.rse.ui.RSEUIPlugin; import org.eclipse.rse.ui.SystemPreferencesManager; import org.eclipse.rse.ui.messages.SystemMessageDialog; import org.eclipse.rse.ui.model.ISystemRegistryUI; -import org.eclipse.rse.ui.model.SystemRemoteChangeEventUI; import org.eclipse.rse.ui.subsystems.ISubSystemConfigurationAdapter; import org.eclipse.rse.ui.view.ISystemRemoteElementAdapter; import org.eclipse.rse.ui.view.ISystemViewInputProvider; @@ -122,7 +122,7 @@ public class SystemRegistry implements ISystemRegistryUI, ISystemViewInputProvid private SystemModelChangeEventManager modelListenerManager = null; private SystemModelChangeEvent modelEvent; private SystemRemoteChangeEventManager remoteListManager = null; - private SystemRemoteChangeEventUI remoteEvent; + private SystemRemoteChangeEvent remoteEvent; private int listenerCount = 0; private int modelListenerCount = 0; @@ -3027,7 +3027,7 @@ public class SystemRegistry implements ISystemRegistryUI, ISystemViewInputProvid invalidateFiltersFor(resourceParent, subsystem); if (remoteEvent == null) - remoteEvent = new SystemRemoteChangeEventUI(); + remoteEvent = new SystemRemoteChangeEvent(); remoteEvent.setEventType(eventType); remoteEvent.setResource(resource); remoteEvent.setResourceParent(resourceParent); @@ -3048,7 +3048,7 @@ public class SystemRegistry implements ISystemRegistryUI, ISystemViewInputProvid * @param originatingViewer - optional. If set, this gives the viewer a clue that it should select the affected resource after refreshing its parent. * This saves sending a separate event to reveal and select the new created resource on a create event, for example. */ - public void fireRemoteResourceChangeEvent(int eventType, Object resource, Object resourceParent, ISubSystem subsystem, String oldName, Viewer originatingViewer) + public void fireRemoteResourceChangeEvent(int eventType, Object resource, Object resourceParent, ISubSystem subsystem, String oldName, Object originatingViewer) { if (resourceParent instanceof ISystemContainer) { @@ -3058,7 +3058,7 @@ public class SystemRegistry implements ISystemRegistryUI, ISystemViewInputProvid invalidateFiltersFor(resourceParent, subsystem); if (remoteEvent == null) - remoteEvent = new SystemRemoteChangeEventUI(); + remoteEvent = new SystemRemoteChangeEvent(); remoteEvent.setEventType(eventType); remoteEvent.setResource(resource); remoteEvent.setResourceParent(resourceParent); diff --git a/rse/plugins/org.eclipse.rse.ui/model/org/eclipse/rse/ui/model/ISystemRegistryUI.java b/rse/plugins/org.eclipse.rse.ui/model/org/eclipse/rse/ui/model/ISystemRegistryUI.java index 4a2a3bbe4d0..fffb6ab420d 100644 --- a/rse/plugins/org.eclipse.rse.ui/model/org/eclipse/rse/ui/model/ISystemRegistryUI.java +++ b/rse/plugins/org.eclipse.rse.ui/model/org/eclipse/rse/ui/model/ISystemRegistryUI.java @@ -16,11 +16,9 @@ package org.eclipse.rse.ui.model; import org.eclipse.jface.operation.IRunnableContext; -import org.eclipse.jface.viewers.Viewer; import org.eclipse.rse.core.events.ISystemResourceChangeEvent; import org.eclipse.rse.core.events.ISystemResourceChangeListener; import org.eclipse.rse.core.model.ISystemRegistry; -import org.eclipse.rse.core.subsystems.ISubSystem; import org.eclipse.rse.ui.view.ISystemViewInputProvider; import org.eclipse.swt.dnd.Clipboard; import org.eclipse.swt.widgets.Shell; @@ -53,20 +51,6 @@ public interface ISystemRegistryUI */ public void postEvent(ISystemResourceChangeListener listener, ISystemResourceChangeEvent event); - /** - * Notify all listeners of a change to a remote resource such as a file. - * This one takes the information needed and creates the event for you. - * @param eventType - one of the constants from {@link org.eclipse.rse.core.events.ISystemRemoteChangeEvents} - * @param resource - the remote resource object, or absolute name of the resource as would be given by calling getAbsoluteName on its remote adapter - * @param resourceParent - the remote resource's parent object, or absolute name, if that is known. If it is non-null, this will aid in refreshing occurences of that parent. - * @param subsystem - the subsystem which contains this remote resource. This allows the search for impacts to be - * limited to subsystems of the same parent factory, and to connections with the same hostname as the subsystem's connection. - * @param oldName - on a rename operation, this is the absolute name of the resource prior to the rename - * @param originatingViewer - optional. If set, this gives the viewer a clue that it should select the affected resource after refreshing its parent. - * This saves sending a separate event to reveal and select the new created resource on a create event, for example. - */ - public void fireRemoteResourceChangeEvent(int eventType, Object resource, Object resourceParent, ISubSystem subsystem, String oldName, Viewer originatingViewer); - // ---------------------------------- // ACTIVE PROGRESS MONITOR METHODS... // ---------------------------------- diff --git a/rse/plugins/org.eclipse.rse.ui/model/org/eclipse/rse/ui/model/SystemRemoteChangeEventUI.java b/rse/plugins/org.eclipse.rse.ui/model/org/eclipse/rse/ui/model/SystemRemoteChangeEventUI.java deleted file mode 100644 index da97bbb3428..00000000000 --- a/rse/plugins/org.eclipse.rse.ui/model/org/eclipse/rse/ui/model/SystemRemoteChangeEventUI.java +++ /dev/null @@ -1,90 +0,0 @@ -/******************************************************************************** - * Copyright (c) 2002, 2007 IBM Corporation and others. All rights reserved. - * This program and the accompanying materials are made available under the terms - * of the Eclipse Public License v1.0 which accompanies this distribution, and is - * available at http://www.eclipse.org/legal/epl-v10.html - * - * Initial Contributors: - * The following IBM employees contributed to the Remote System Explorer - * component that contains this file: David McKnight, Kushal Munir, - * Michael Berger, David Dykstal, Phil Coulthard, Don Yantzi, Eric Simpson, - * Emily Bruner, Mazen Faraj, Adrian Storisteanu, Li Ding, and Kent Hawley. - * - * Contributors: - * Martin Oberhuber (Wind River) - [168975] Move RSE Events API to Core - ********************************************************************************/ - -package org.eclipse.rse.ui.model; - -import org.eclipse.jface.viewers.Viewer; -import org.eclipse.rse.core.events.SystemRemoteChangeEvent; -import org.eclipse.rse.core.subsystems.ISubSystem; - -/** - * For listeners interested in changes with remote resources. - * These events are designed to state what the change to the resource was, not to - * optimize those events for a GUI (eg, a delete event versus a refresh event) - */ -public class SystemRemoteChangeEventUI extends SystemRemoteChangeEvent { - - private Viewer originatingViewer; - - /** - * Constructor for non-rename event - * @param eventType - one of the constants from {@link org.eclipse.rse.core.events.ISystemRemoteChangeEvents} - * @param resource - the remote resource object, or absolute name of the resource as would be given by calling getAbsoluteName on its remote adapter - * @param resourceParent - the remote resource's parent object, or absolute name, if that is known. If it is non-null, this will aid in refreshing occurences of that parent. - * @param subsystem - the subsystem which contains this remote resource. This allows the search for impacts to be - * limited to subsystems of the same parent factory, and to connections with the same hostname as the subsystem's connection. - */ - public SystemRemoteChangeEventUI(int eventType, Object resource, Object resourceParent, ISubSystem subsystem) - { - super(eventType, resource, resourceParent, subsystem); - } - - /** - * Constructor for a rename event. - * @param eventType - one of the constants from {@link org.eclipse.rse.core.events.ISystemRemoteChangeEvents} - * @param resource - the remote resource object, or absolute name of the resource as would be given by calling getAbsoluteName on its remote adapter - * @param resourceParent - the remote resource's parent object, or absolute name, if that is known. If it is non-null, this will aid in refreshing occurences of that parent. - * @param subsystem - the subsystem which contains this remote resource. This allows the search for impacts to be - * limited to subsystems of the same parent factory, and to connections with the same hostname as the subsystem's connection. - * @param oldName - on a rename operation, this is the absolute name of the resource prior to the rename - */ - public SystemRemoteChangeEventUI(int eventType, Object resource, Object resourceParent, ISubSystem subsystem, String oldName) - { - super(eventType, resource, resourceParent, subsystem, oldName); - } - - /** - * Constructor you shouldn't use unless you intend to call the setters - */ - public SystemRemoteChangeEventUI() - { - } - - /** - * Set the originating viewer. - * Only this viewer is candidate for updating the selection. Eg, on a - * create event, if this and the resource parent is set, the newly - * created object is selected after the parent's contents are refreshed, - * for the originating viewer. - */ - public void setOriginatingViewer(Viewer originatingViewer) - { - this.originatingViewer = originatingViewer; - } - - - /** - * Get the originating viewer from which this remote resource change event - * comes from. The combination of this, if non-null, plus the resource parent, - * allows viewers to decide whether to update the selection within the - * parent resource, after refreshing that resource. - */ - public Viewer getOriginatingViewer() - { - return originatingViewer; - } - -}