diff --git a/rse/plugins/org.eclipse.rse.core/src/org/eclipse/rse/core/subsystems/ISubSystem.java b/rse/plugins/org.eclipse.rse.core/src/org/eclipse/rse/core/subsystems/ISubSystem.java
index 18eab004f7c..1d24d4ddc53 100644
--- a/rse/plugins/org.eclipse.rse.core/src/org/eclipse/rse/core/subsystems/ISubSystem.java
+++ b/rse/plugins/org.eclipse.rse.core/src/org/eclipse/rse/core/subsystems/ISubSystem.java
@@ -16,6 +16,7 @@
* Martin Oberhuber (Wind River) - [187218] Fix error reporting for connect()
* David McKnight (IBM) - [207095] Implicit connect needs to run in the same job as caller
* David McKnight (IBM) - [186363] get rid of obsolete calls to ISubSystem.connect()
+ * David McKnight (IBM) - [187711] new doesFilterEncompass apis
********************************************************************************/
package org.eclipse.rse.core.subsystems;
@@ -271,6 +272,23 @@ public interface ISubSystem extends ISystemFilterPoolReferenceManagerProvider, I
*/
public boolean doesFilterStringMatch(String filterString, String remoteObjectAbsoluteName, boolean caseSensitive);
+ /**
+ * Return true if the remote remote object would be a descendent of the result of this filter
+ * @param filter
+ * @param remoteObjectAbsoluteName
+ * @return
+ */
+ public boolean doesFilterEncompass(ISystemFilter filter, String remoteObjectAbsoluteName);
+
+ /**
+ * Return true if the remote remote object would be a descendent of the result of this filter
+ * @param filterString
+ * @param remoteObjectAbsoluteName
+ * @param caseSensitive
+ * @return
+ */
+ public boolean doesFilterStringEncompass(String filterString, String remoteObjectAbsoluteName, boolean caseSensitive);
+
// -------------------------
// Filter Pool References...
// -------------------------
diff --git a/rse/plugins/org.eclipse.rse.files.ui/icons/full/elcl16/synced.gif b/rse/plugins/org.eclipse.rse.files.ui/icons/full/elcl16/synced.gif
new file mode 100644
index 00000000000..870934b6934
Binary files /dev/null and b/rse/plugins/org.eclipse.rse.files.ui/icons/full/elcl16/synced.gif differ
diff --git a/rse/plugins/org.eclipse.rse.files.ui/plugin.properties b/rse/plugins/org.eclipse.rse.files.ui/plugin.properties
index c704b737b42..ca28ea3d608 100644
--- a/rse/plugins/org.eclipse.rse.files.ui/plugin.properties
+++ b/rse/plugins/org.eclipse.rse.files.ui/plugin.properties
@@ -13,6 +13,7 @@
#
# Contributors:
# Willian Mitsuda - [184824] added a Remote action set item
+# David McKnight (IBM) - [187711] Link with Editor action for System View
###############################################################################
# NLS_MESSAGEFORMAT_NONE
@@ -50,3 +51,5 @@ searchMenu.label = Se&arch
Remote.ActionSet = Remote...
Remote.Search = &Remote...
Remote.Search.tooltip = Opens Remote Search dialog page for text and file searching on remote systems
+
+LinkWithSystemView.label = Link with Editor
diff --git a/rse/plugins/org.eclipse.rse.files.ui/plugin.xml b/rse/plugins/org.eclipse.rse.files.ui/plugin.xml
index 3ac14d00406..3a0d3747f97 100644
--- a/rse/plugins/org.eclipse.rse.files.ui/plugin.xml
+++ b/rse/plugins/org.eclipse.rse.files.ui/plugin.xml
@@ -15,6 +15,7 @@ Contributors:
Martin Oberhuber (Wind River) - [180519] declaratively register adapter factories
Martin Oberhuber (Wind River) - [168975] Move RSE Events API to Core
Martin Oberhuber (Wind River) - [186748] Move ISubSystemConfigurationAdapter from UI/rse.core.subsystems.util
+David McKnight (IBM) - [187711] Link with Editor action for System View
-->
@@ -434,5 +435,21 @@ Martin Oberhuber (Wind River) - [186748] Move ISubSystemConfigurationAdapter fro
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/rse/plugins/org.eclipse.rse.files.ui/src/org/eclipse/rse/internal/files/ui/actions/LinkWithSystemViewAction.java b/rse/plugins/org.eclipse.rse.files.ui/src/org/eclipse/rse/internal/files/ui/actions/LinkWithSystemViewAction.java
new file mode 100644
index 00000000000..1a9606cf2c5
--- /dev/null
+++ b/rse/plugins/org.eclipse.rse.files.ui/src/org/eclipse/rse/internal/files/ui/actions/LinkWithSystemViewAction.java
@@ -0,0 +1,121 @@
+/********************************************************************************
+ * Copyright (c) 2007 IBM Corporation. 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.
+ *
+ * Contributors:
+ * David McKnight (IBM) - [187711] Link with Editor action for System View
+ ********************************************************************************/
+package org.eclipse.rse.internal.files.ui.actions;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.jface.action.IAction;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.rse.core.RSECorePlugin;
+import org.eclipse.rse.core.subsystems.ISubSystem;
+import org.eclipse.rse.internal.ui.view.SystemView;
+import org.eclipse.rse.internal.ui.view.SystemViewPart;
+import org.eclipse.rse.subsystems.files.core.SystemIFileProperties;
+import org.eclipse.rse.ui.IViewLinker;
+import org.eclipse.rse.ui.view.ISystemEditableRemoteObject;
+import org.eclipse.swt.widgets.TreeItem;
+import org.eclipse.ui.IEditorInput;
+import org.eclipse.ui.IEditorPart;
+import org.eclipse.ui.IFileEditorInput;
+import org.eclipse.ui.IViewActionDelegate;
+import org.eclipse.ui.IViewPart;
+
+public class LinkWithSystemViewAction implements IViewActionDelegate {
+
+ public class ViewLinker implements IViewLinker
+ {
+ public void link(IEditorPart editor, SystemView systemView)
+ {
+ IEditorInput input = editor.getEditorInput();
+ if (input instanceof IFileEditorInput)
+ {
+ IFileEditorInput fileInput = (IFileEditorInput) input;
+ fileInput.getFile();
+
+ IFile file = fileInput.getFile();
+ SystemIFileProperties properties = new SystemIFileProperties(file);
+ Object rmtEditable = properties.getRemoteFileObject();
+ Object remoteObj = null;
+ ISubSystem subSystem = null;
+ if (rmtEditable != null && rmtEditable instanceof ISystemEditableRemoteObject)
+ {
+ ISystemEditableRemoteObject editable = (ISystemEditableRemoteObject) rmtEditable;
+ remoteObj = editable.getRemoteObject();
+
+ }
+ else
+ {
+ String subsystemId = properties.getRemoteFileSubSystem();
+ String path = properties.getRemoteFilePath();
+ if (subsystemId != null && path != null)
+ {
+ subSystem = RSECorePlugin.getTheSystemRegistry().getSubSystem(subsystemId);
+ if (subSystem != null)
+ {
+ if (subSystem.isConnected())
+ {
+ try
+ {
+ remoteObj = subSystem.getObjectWithAbsoluteName(path, new NullProgressMonitor());
+ }
+ catch (Exception e)
+ {
+ return;
+ }
+ }
+ }
+ }
+ }
+
+ if (remoteObj != null)
+ {
+ TreeItem item = (TreeItem)systemView.findFirstRemoteItemReference(remoteObj, null);
+ if (item != null){
+ systemView.getTree().setSelection(item);
+ }
+ else {
+ // item does not exist in tree
+ systemView.expandTo(subSystem, remoteObj);
+
+ }
+
+ }
+ }
+ }
+ }
+
+ private SystemViewPart _systemViewPart;
+ private IAction _action;
+ private IViewLinker _linker;
+
+ public void init(IViewPart view) {
+ _systemViewPart = (SystemViewPart)view;
+ _linker = new ViewLinker();
+ }
+
+ public void run(IAction action) {
+ if (_systemViewPart != null){
+ _systemViewPart.setLinkingEnabled(action.isChecked(), _linker);
+ }
+ }
+
+ public void selectionChanged(IAction action, ISelection selection) {
+ if (_action == null) {
+ action.setChecked(_systemViewPart.isLinkingEnabled());
+ _action= action;
+ }
+
+ }
+
+}
diff --git a/rse/plugins/org.eclipse.rse.subsystems.files.core/src/org/eclipse/rse/subsystems/files/core/subsystems/RemoteFileSubSystem.java b/rse/plugins/org.eclipse.rse.subsystems.files.core/src/org/eclipse/rse/subsystems/files/core/subsystems/RemoteFileSubSystem.java
index f4bdd714e59..070d658b8b1 100644
--- a/rse/plugins/org.eclipse.rse.subsystems.files.core/src/org/eclipse/rse/subsystems/files/core/subsystems/RemoteFileSubSystem.java
+++ b/rse/plugins/org.eclipse.rse.subsystems.files.core/src/org/eclipse/rse/subsystems/files/core/subsystems/RemoteFileSubSystem.java
@@ -23,6 +23,7 @@
* David McKnight (IBM) - [207178] changing list APIs for file service and subsystems
* David McKnight (IBM) - [210109] store constants in IFileService rather than IFileServiceConstants
* David McKnight (IBM) - [211472] [api][breaking] IRemoteObjectResolver.getObjectWithAbsoluteName() needs a progress monitor
+ * David McKnight (IBM) - [187711] doestFilterEncompass api
*******************************************************************************/
package org.eclipse.rse.subsystems.files.core.subsystems;
@@ -404,6 +405,52 @@ public abstract class RemoteFileSubSystem extends SubSystem implements IRemoteFi
// "Univ Filter String Testing '" + container + "' versus '" + remoteObjectAbsoluteName + "' => " + affected);
return affected;
}
+
+ /**
+ * Return true if the remote remote object would be a descendent of the result of this filter
+ * @param filterString
+ * @param remoteObjectAbsoluteName
+ * @param caseSensitive
+ * @return
+ */
+ public boolean doesFilterStringEncompass(String filterString, String remoteObjectAbsoluteName, boolean caseSensitive)
+ {
+ RemoteFileFilterString rffs = new RemoteFileFilterString(getParentRemoteFileSubSystemConfiguration(), filterString);
+ // ok, this is a tweak: if the absolute name has " -folder" at the end, that means it is a folder...
+ if (remoteObjectAbsoluteName.endsWith(" -folder")) //$NON-NLS-1$
+ {
+ if (!rffs.getShowSubDirs())
+ return false;
+ remoteObjectAbsoluteName = remoteObjectAbsoluteName.substring(0, remoteObjectAbsoluteName.indexOf(" -folder")); //$NON-NLS-1$
+ }
+ // problem 1: we don't know if the given remote object name represents a file or folder. We have to assume a file,
+ // since we don't support filtering by folder names.
+ if (!rffs.getShowFiles())
+ return false;
+
+ // step 1: verify the path of the remote object matches the path of the filter string
+ String container = rffs.getPath();
+ if (container == null)
+ return false;
+
+ if (container.equals(".")) //$NON-NLS-1$
+ {
+ try
+ {
+ container = getRemoteFileObject(container, new NullProgressMonitor()).getAbsolutePath();
+ }
+ catch (Exception e)
+ {
+ }
+ }
+
+ if (container.indexOf(remoteObjectAbsoluteName) > -1){
+ return true;
+ }
+
+ return false;
+ }
+
// -------------------------------
// SubSystem METHODS ...
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 aba1e155e87..f56ea7727f7 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
@@ -46,6 +46,7 @@
* David McKnight (IBM) - [205819] Need to use input stream copy when EFS files are the src
* Xuan Chen (IBM) - [160775] [api] rename (at least within a zip) blocks UI thread
* David McKnight (IBM) - [199424] api to create tree items after query complete
+ * David McKnight (IBM) - [187711] expandTo to handle filters specially
********************************************************************************/
package org.eclipse.rse.internal.ui.view;
@@ -5709,8 +5710,22 @@ public class SystemView extends SafeTreeViewer
provider.setEnableDeferredQueries(true);
return;
}
- else
+ else if (data instanceof ISystemFilterReference)
{
+ ISystemFilterReference ref = (ISystemFilterReference)data;
+ if (ss.doesFilterMatch(ref.getReferencedFilter(), remoteObjectName)){
+ expandTo(data, remoteObject);
+ }
+ else if (ss.doesFilterListContentsOf(ref.getReferencedFilter(),remoteObjectName)){
+ expandTo(data, remoteObject);
+ }
+ else if (ss.doesFilterEncompass(ref.getReferencedFilter(), remoteObjectName))
+ {
+ expandTo(data, remoteObject);
+ }
+ }
+ else
+ {
ISystemViewElementAdapter dataAdapter = (ISystemViewElementAdapter)((IAdaptable)data).getAdapter(ISystemViewElementAdapter.class);
String path = dataAdapter.getAbsoluteName(data);
if (remoteObjectName.startsWith(path))
diff --git a/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/SystemViewPart.java b/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/SystemViewPart.java
index 41a689a16d4..4cfb3323ea0 100644
--- a/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/SystemViewPart.java
+++ b/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/SystemViewPart.java
@@ -26,6 +26,7 @@
* Martin Oberhuber (Wind River) - [197025] Wait for model complete before restoring initial state
* Martin Oberhuber (Wind River) - [197025][197167] Improved wait for model complete
* David McKnight (IBM) - [199424] restoring memento state asynchronously
+ * David McKnight (IBM) - [187711] Link with Editor handled by extension
********************************************************************************/
package org.eclipse.rse.internal.ui.view;
@@ -44,7 +45,6 @@ import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.Platform;
import org.eclipse.core.runtime.Status;
import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.jface.action.Action;
import org.eclipse.jface.action.GroupMarker;
import org.eclipse.jface.action.IMenuManager;
import org.eclipse.jface.action.IStatusLineManager;
@@ -86,8 +86,8 @@ import org.eclipse.rse.internal.ui.actions.SystemPreferenceShowFilterPoolsAction
import org.eclipse.rse.internal.ui.actions.SystemWorkWithProfilesAction;
import org.eclipse.rse.services.clientserver.messages.SystemMessage;
import org.eclipse.rse.ui.ISystemContextMenuConstants;
-import org.eclipse.rse.ui.ISystemIconConstants;
import org.eclipse.rse.ui.ISystemPreferencesConstants;
+import org.eclipse.rse.ui.IViewLinker;
import org.eclipse.rse.ui.RSESystemTypeAdapter;
import org.eclipse.rse.ui.RSEUIPlugin;
import org.eclipse.rse.ui.SystemBasePlugin;
@@ -115,7 +115,6 @@ import org.eclipse.ui.IEditorInput;
import org.eclipse.ui.IEditorPart;
import org.eclipse.ui.IEditorReference;
import org.eclipse.ui.IElementFactory;
-import org.eclipse.ui.IFileEditorInput;
import org.eclipse.ui.IMemento;
import org.eclipse.ui.IPartListener;
import org.eclipse.ui.IPersistableElement;
@@ -142,20 +141,7 @@ public class SystemViewPart
implements ISetSelectionTarget, IShellProvider, ISystemMessageLine, IElementFactory, IPersistableElement, IAdapterFactory, ISystemPreferenceChangeListener, ISelectionChangedListener, IRSEViewPart
{
- public class ToggleLinkingAction extends Action
- {
- public ToggleLinkingAction(SystemViewPart viewPart, String label)
- {
- super(label);
- setChecked(isLinkingEnabled);
- }
- public void run()
- {
- toggleLinkingEnabled();
- setChecked(isLinkingEnabled);
- }
- }
protected SystemView systemView;
protected ISystemViewInputProvider input = null;
@@ -163,11 +149,16 @@ public class SystemViewPart
protected SystemMessage sysErrorMessage;
protected IStatusLineManager statusLine = null;
protected boolean inputIsRoot = true;
- protected boolean isLinkingEnabled = false;
+
protected FrameList frameList;
protected SystemViewPartGotoActionGroup gotoActionGroup;
- protected ToggleLinkingAction toggleLinkingAction;
+
+ // link with editor stuff
+ protected boolean _isLinkingEnabled = false;
+
+ // view linker is used when a link with editor is required
+ protected IViewLinker _viewLinker;
// remember-state variables...
@@ -251,11 +242,17 @@ public class SystemViewPart
return ((ILabelProvider) getSystemView().getLabelProvider()).getText(element);
}
- public void toggleLinkingEnabled()
+ public boolean isLinkingEnabled()
{
- isLinkingEnabled = !isLinkingEnabled;
- if (isLinkingEnabled)
+ return _isLinkingEnabled;
+ }
+
+ public void setLinkingEnabled(boolean flag, IViewLinker viewLinker)
+ {
+ _isLinkingEnabled = flag;
+ if (_isLinkingEnabled)
{
+ _viewLinker = viewLinker;
IWorkbenchWindow activeWindow = SystemBasePlugin.getActiveWorkbenchWindow();
IWorkbenchPage activePage = activeWindow.getActivePage();
IEditorPart editor = activePage.getActiveEditor();
@@ -274,59 +271,11 @@ public class SystemViewPart
*/
protected void editorActivated(IEditorPart editor)
{
- if (!isLinkingEnabled)
+ if (!_isLinkingEnabled)
return;
- IEditorInput input = editor.getEditorInput();
- if (input instanceof IFileEditorInput)
- {
- IFileEditorInput fileInput = (IFileEditorInput) input;
- fileInput.getFile();
- /* FIXME - can't couple this view to files ui
- IFile file = fileInput.getFile();
- SystemIFileProperties properties = new SystemIFileProperties(file);
- Object rmtEditable = properties.getRemoteFileObject();
- Object remoteObj = null;
- if (rmtEditable != null && rmtEditable instanceof ISystemEditableRemoteObject)
- {
- ISystemEditableRemoteObject editable = (ISystemEditableRemoteObject) rmtEditable;
- remoteObj = editable.getRemoteObject();
-
- }
- else
- {
- String subsystemId = properties.getRemoteFileSubSystem();
- String path = properties.getRemoteFilePath();
- if (subsystemId != null && path != null)
- {
- ISubSystem subSystem = RSECorePlugin.getTheSystemRegistry().getSubSystem(subsystemId);
- if (subSystem != null)
- {
- if (subSystem.isConnected())
- {
- try
- {
- remoteObj = subSystem.getObjectWithAbsoluteName(path);
- }
- catch (Exception e)
- {
- return;
- }
- }
- }
- }
- }
-
-
- if (remoteObj != null)
- {
- // DKM - causes editor to loose focus
- //systemView.refreshRemoteObject(path, remoteObj, true);
-
- SystemResourceChangeEvent event = new SystemResourceChangeEvent(remoteObj, ISystemResourceChangeEvents.EVENT_SELECT_REMOTE, null);
- systemView.systemResourceChanged(event);
- }
- */
+ if (_viewLinker != null){
+ _viewLinker.link(editor, systemView);
}
}
/**
@@ -614,7 +563,7 @@ public class SystemViewPart
_copyAction.setEnabled(_copyAction.updateSelection(sel));
_pasteAction.setEnabled(_pasteAction.updateSelection(sel));
//systemView.getPropertyDialogAction();
- if (isLinkingEnabled)
+ if (_isLinkingEnabled)
{
linkToEditor(sel);
}
@@ -715,13 +664,6 @@ public class SystemViewPart
collapseAllAction.setSelectionProvider(systemView);
toolBarMgr.add(collapseAllAction);
- toolBarMgr.add(new GroupMarker(ISystemContextMenuConstants.GROUP_VIEWER_SETUP));
- toggleLinkingAction = new ToggleLinkingAction(this, SystemViewResources.RESID_PROPERTY_LINKINGACTION_TEXT);
- toggleLinkingAction.setToolTipText(SystemViewResources.RESID_PROPERTY_LINKINGACTION_TOOLTIP);
- toggleLinkingAction.setImageDescriptor(getNavigatorImageDescriptor(ISystemIconConstants.ICON_IDE_LINKTOEDITOR_ID));
- toggleLinkingAction.setHoverImageDescriptor(getNavigatorImageDescriptor(ISystemIconConstants.ICON_IDE_LINKTOEDITOR_ID));
- toolBarMgr.add(toggleLinkingAction);
-
IMenuManager menuMgr = actionBars.getMenuManager();
populateSystemViewPulldownMenu(menuMgr, getShell(), showConnectionActions, this, systemView);
@@ -1038,7 +980,7 @@ public class SystemViewPart
return;
}
- if (isLinkingEnabled)
+ if (_isLinkingEnabled)
{
memento.putString(TAG_LINKWITHEDITOR, "t"); //$NON-NLS-1$
}
@@ -1797,21 +1739,7 @@ public class SystemViewPart
// restore the show filter pools and show filter strings settings as they were when this was saved
boolean showFilterPools = false;
boolean showFilterStrings = false;
- String linkWithEditor = memento.getString(TAG_LINKWITHEDITOR);
- if (linkWithEditor != null)
- {
- if (linkWithEditor.equals("t")) //$NON-NLS-1$
- {
- isLinkingEnabled = true;
- toggleLinkingAction.setChecked(true);
- }
- else
- isLinkingEnabled = false;
- }
- else
- {
- isLinkingEnabled = false;
- }
+
String savedValue = memento.getString(TAG_SHOWFILTERPOOLS);
if (savedValue != null)
diff --git a/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/ui/IViewLinker.java b/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/ui/IViewLinker.java
new file mode 100644
index 00000000000..31647177921
--- /dev/null
+++ b/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/ui/IViewLinker.java
@@ -0,0 +1,27 @@
+/********************************************************************************
+ * Copyright (c) 2007 IBM Corporation. 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.
+ *
+ * Contributors:
+ * David McKnight (IBM) - [187711] IViewLinker to be API that system view part calls when link with editor
+ ********************************************************************************/
+package org.eclipse.rse.ui;
+
+import org.eclipse.rse.internal.ui.view.SystemView;
+import org.eclipse.ui.IEditorPart;
+
+public interface IViewLinker {
+
+ /**
+ * System View part calls link when using Link With Editor. Provider of action supplies this implementation.
+ * @param editor the active editor
+ * @param systemView the view to link
+ */
+ public void link(IEditorPart editor, SystemView systemView);
+}
diff --git a/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/ui/SystemPreferencesManager.java b/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/ui/SystemPreferencesManager.java
index 298b4baa897..37d79f2cf32 100644
--- a/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/ui/SystemPreferencesManager.java
+++ b/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/ui/SystemPreferencesManager.java
@@ -83,6 +83,8 @@ public class SystemPreferencesManager {
}
private static void initDefaultsUI() {
+
+ String showProp = System.getProperty("rse.showNewConnectionPrompt");
RSEUIPlugin ui = RSEUIPlugin.getDefault();
Preferences store = ui.getPluginPreferences();
showNewConnectionPrompt= getBooleanProperty("rse.showNewConnectionPrompt", ISystemPreferencesConstants.DEFAULT_SHOWNEWCONNECTIONPROMPT); //$NON-NLS-1$
diff --git a/rse/plugins/org.eclipse.rse.ui/subsystems/org/eclipse/rse/core/subsystems/SubSystem.java b/rse/plugins/org.eclipse.rse.ui/subsystems/org/eclipse/rse/core/subsystems/SubSystem.java
index c7d524879a4..032fe9c2fd6 100644
--- a/rse/plugins/org.eclipse.rse.ui/subsystems/org/eclipse/rse/core/subsystems/SubSystem.java
+++ b/rse/plugins/org.eclipse.rse.ui/subsystems/org/eclipse/rse/core/subsystems/SubSystem.java
@@ -28,6 +28,7 @@
* David McKnight (IBM) - [186363] get rid of obsolete calls to SubSystem.connect()
* David McKnight (IBM) - [211472] [api][breaking] IRemoteObjectResolver.getObjectWithAbsoluteName() needs a progress monitor
* David McKnight (IBM) - [212403] [apidoc][breaking] Fixing docs of SubSystem#getConnectorService() and making internalConnect() private
+ * David McKnight (IBM) - [187711] default implementation of doesFilterEncompass()
********************************************************************************/
package org.eclipse.rse.core.subsystems;
@@ -743,6 +744,30 @@ public abstract class SubSystem extends RSEModelObject
{
return true;
}
+
+ public boolean doesFilterStringEncompass(String filter, String remoteObjectAbsoluteName, boolean caseSensitive)
+ {
+ return true;
+ }
+
+ public boolean doesFilterEncompass(ISystemFilter filter, String remoteObjectAbsoluteName)
+ {
+ boolean would = false;
+ String[] strings = filter.getFilterStrings();
+ if (strings != null){
+ for (int idx=0; !would && (idx