From 5ee28d4f109adc9af41a55618e8e94b36e792440 Mon Sep 17 00:00:00 2001 From: David McKnight Date: Thu, 3 Apr 2008 16:06:28 +0000 Subject: [PATCH] [225506] [api][breaking] RSE UI leaks non-API types --- .../ui/propertypages/SystemCachePreferencePage.java | 5 +++-- .../internal/shells/ui/view/CommandsViewPage.java | 3 ++- .../shells/ui/view/SystemCommandsViewProvider.java | 4 ++-- .../rse/shells/ui/view/SystemCommandsView.java | 5 +++-- .../ui/view/SystemTableViewColumnManager.java | 4 +--- .../rse/internal/ui/view/SystemTableViewPart.java | 2 ++ .../internal/ui/view/monitor/MonitorViewPage.java | 5 +++-- .../rse/ui/view/SubSystemConfigurationAdapter.java | 8 +++++--- .../UI/org/eclipse/rse/ui/view/SystemTableView.java | 12 ++++++------ .../ui/view/SystemTableViewProvider.java | 9 +++++---- 10 files changed, 32 insertions(+), 25 deletions(-) rename rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/{internal => }/ui/view/SystemTableViewProvider.java (96%) diff --git a/rse/plugins/org.eclipse.rse.files.ui/src/org/eclipse/rse/internal/files/ui/propertypages/SystemCachePreferencePage.java b/rse/plugins/org.eclipse.rse.files.ui/src/org/eclipse/rse/internal/files/ui/propertypages/SystemCachePreferencePage.java index 7354e6dcd8b..1b46125ff1c 100644 --- a/rse/plugins/org.eclipse.rse.files.ui/src/org/eclipse/rse/internal/files/ui/propertypages/SystemCachePreferencePage.java +++ b/rse/plugins/org.eclipse.rse.files.ui/src/org/eclipse/rse/internal/files/ui/propertypages/SystemCachePreferencePage.java @@ -1,5 +1,5 @@ /******************************************************************************** - * Copyright (c) 2002, 2007 IBM Corporation and others. All rights reserved. + * Copyright (c) 2002, 2008 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 @@ -17,6 +17,7 @@ * Martin Oberhuber (Wind River) - [189130] Move SystemIFileProperties from UI to Core * David McKnight (IBM) - [216252] [api][nls] Resource Strings specific to subsystems should be moved from rse.ui into files.ui / shells.ui / processes.ui where possible * David McKnight (IBM) - [220547] [api][breaking] SimpleSystemMessage needs to specify a message id and some messages should be shared + * David McKnight (IBM) - [225506] [api][breaking] RSE UI leaks non-API types ********************************************************************************/ package org.eclipse.rse.internal.files.ui.propertypages; @@ -46,7 +47,6 @@ import org.eclipse.rse.internal.files.ui.FileResources; import org.eclipse.rse.internal.files.ui.ISystemFileConstants; import org.eclipse.rse.internal.files.ui.resources.SystemRemoteEditManager; import org.eclipse.rse.internal.subsystems.files.core.ISystemFilePreferencesConstants; -import org.eclipse.rse.internal.ui.view.SystemTableViewProvider; import org.eclipse.rse.services.clientserver.messages.SimpleSystemMessage; import org.eclipse.rse.services.clientserver.messages.SystemMessage; import org.eclipse.rse.subsystems.files.core.SystemIFileProperties; @@ -57,6 +57,7 @@ import org.eclipse.rse.ui.SystemWidgetHelpers; import org.eclipse.rse.ui.messages.SystemMessageDialog; import org.eclipse.rse.ui.view.ISystemEditableRemoteObject; import org.eclipse.rse.ui.view.ISystemRemoteElementAdapter; +import org.eclipse.rse.ui.view.SystemTableViewProvider; import org.eclipse.swt.SWT; import org.eclipse.swt.events.VerifyEvent; import org.eclipse.swt.events.VerifyListener; diff --git a/rse/plugins/org.eclipse.rse.shells.ui/src/org/eclipse/rse/internal/shells/ui/view/CommandsViewPage.java b/rse/plugins/org.eclipse.rse.shells.ui/src/org/eclipse/rse/internal/shells/ui/view/CommandsViewPage.java index 13beb84b116..10c21ecdbbd 100644 --- a/rse/plugins/org.eclipse.rse.shells.ui/src/org/eclipse/rse/internal/shells/ui/view/CommandsViewPage.java +++ b/rse/plugins/org.eclipse.rse.shells.ui/src/org/eclipse/rse/internal/shells/ui/view/CommandsViewPage.java @@ -21,6 +21,7 @@ * Kevin Doyle (IBM) - [212940] Duplicate Help Context Identifiers * David McKnight (IBM) - [216252] [api][nls] Resource Strings specific to subsystems should be moved from rse.ui into files.ui / shells.ui / processes.ui where possible * Radoslav Gerganov (ProSyst) - [181563] Fix hardcoded Ctrl+Space for remote shell content assist + * David McKnight (IBM) - [225506] [api][breaking] RSE UI leaks non-API types ********************************************************************************/ package org.eclipse.rse.internal.shells.ui.view; @@ -41,7 +42,6 @@ import org.eclipse.osgi.util.NLS; import org.eclipse.rse.core.subsystems.ISubSystem; import org.eclipse.rse.internal.shells.ui.ShellResources; import org.eclipse.rse.internal.ui.SystemResources; -import org.eclipse.rse.internal.ui.view.SystemTableViewProvider; import org.eclipse.rse.services.clientserver.PathUtility; import org.eclipse.rse.services.clientserver.messages.CommonMessages; import org.eclipse.rse.shells.ui.view.CommandEntryViewerConfiguration; @@ -57,6 +57,7 @@ import org.eclipse.rse.ui.RSEUIPlugin; import org.eclipse.rse.ui.actions.SystemCopyToClipboardAction; import org.eclipse.rse.ui.actions.SystemPasteFromClipboardAction; import org.eclipse.rse.ui.view.ISystemViewElementAdapter; +import org.eclipse.rse.ui.view.SystemTableViewProvider; import org.eclipse.swt.SWT; import org.eclipse.swt.custom.CTabFolder; import org.eclipse.swt.dnd.Clipboard; diff --git a/rse/plugins/org.eclipse.rse.shells.ui/src/org/eclipse/rse/internal/shells/ui/view/SystemCommandsViewProvider.java b/rse/plugins/org.eclipse.rse.shells.ui/src/org/eclipse/rse/internal/shells/ui/view/SystemCommandsViewProvider.java index c17f4a4c207..d911848cad3 100644 --- a/rse/plugins/org.eclipse.rse.shells.ui/src/org/eclipse/rse/internal/shells/ui/view/SystemCommandsViewProvider.java +++ b/rse/plugins/org.eclipse.rse.shells.ui/src/org/eclipse/rse/internal/shells/ui/view/SystemCommandsViewProvider.java @@ -12,12 +12,12 @@ * Emily Bruner, Mazen Faraj, Adrian Storisteanu, Li Ding, and Kent Hawley. * * Contributors: - * {Name} (company) - description of contribution. + * David McKnight (IBM) - [225506] [api][breaking] RSE UI leaks non-API types *******************************************************************************/ package org.eclipse.rse.internal.shells.ui.view; -import org.eclipse.rse.internal.ui.view.SystemTableViewProvider; +import org.eclipse.rse.ui.view.SystemTableViewProvider; public class SystemCommandsViewProvider extends SystemTableViewProvider { diff --git a/rse/plugins/org.eclipse.rse.shells.ui/src/org/eclipse/rse/shells/ui/view/SystemCommandsView.java b/rse/plugins/org.eclipse.rse.shells.ui/src/org/eclipse/rse/shells/ui/view/SystemCommandsView.java index 4f3699de4a8..47dc8b07bb6 100644 --- a/rse/plugins/org.eclipse.rse.shells.ui/src/org/eclipse/rse/shells/ui/view/SystemCommandsView.java +++ b/rse/plugins/org.eclipse.rse.shells.ui/src/org/eclipse/rse/shells/ui/view/SystemCommandsView.java @@ -13,6 +13,7 @@ * Contributors: * Martin Oberhuber (Wind River) - [180562] dont implement ISystemThemeConstants * Martin Oberhuber (Wind River) - [168975] Move RSE Events API to Core + * David McKnight (IBM) - [225506] [api][breaking] RSE UI leaks non-API types ********************************************************************************/ package org.eclipse.rse.shells.ui.view; @@ -24,13 +25,13 @@ import org.eclipse.jface.viewers.ViewerFilter; import org.eclipse.rse.core.events.ISystemResourceChangeEvent; import org.eclipse.rse.core.events.ISystemResourceChangeEvents; import org.eclipse.rse.internal.shells.ui.view.SystemCommandsViewProvider; -import org.eclipse.rse.internal.ui.view.SystemTableViewProvider; import org.eclipse.rse.subsystems.shells.core.model.ISystemOutputRemoteTypes; import org.eclipse.rse.subsystems.shells.core.subsystems.IRemoteCommandShell; import org.eclipse.rse.subsystems.shells.core.subsystems.IRemoteOutput; import org.eclipse.rse.ui.ISystemThemeConstants; import org.eclipse.rse.ui.messages.ISystemMessageLine; import org.eclipse.rse.ui.view.SystemTableView; +import org.eclipse.rse.ui.view.SystemTableViewProvider; import org.eclipse.swt.SWT; import org.eclipse.swt.graphics.Color; import org.eclipse.swt.graphics.Font; @@ -81,7 +82,7 @@ public class SystemCommandsView extends SystemTableView // overridden to produce custom provider protected SystemTableViewProvider getProvider() { - if (_provider == null) + if (_provider == null) { _provider = new SystemCommandsViewProvider(); } diff --git a/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/SystemTableViewColumnManager.java b/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/SystemTableViewColumnManager.java index d7579ae4dfe..a052e8cf8dd 100644 --- a/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/SystemTableViewColumnManager.java +++ b/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/SystemTableViewColumnManager.java @@ -12,6 +12,7 @@ * * Contributors: * David Dykstal (IBM) - moved SystemPreferencesManager to a new package + * David McKnight (IBM) - [225506] [api][breaking] RSE UI leaks non-API types ********************************************************************************/ package org.eclipse.rse.internal.ui.view; @@ -23,9 +24,6 @@ import org.eclipse.rse.ui.view.ISystemViewElementAdapter; import org.eclipse.ui.views.properties.IPropertyDescriptor; -/** - * @author dmcknigh - */ public class SystemTableViewColumnManager { private Viewer _viewer; diff --git a/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/SystemTableViewPart.java b/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/SystemTableViewPart.java index 24d37d9d3fb..a44f761a325 100644 --- a/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/SystemTableViewPart.java +++ b/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/SystemTableViewPart.java @@ -28,6 +28,7 @@ * Martin Oberhuber (Wind River) - [215820] Move SystemRegistry implementation to Core * David McKnight (IBM) - [223103] [cleanup] fix broken externalized strings * David McKnight (IBM) - [224313] [api] Create RSE Events for MOVE and COPY holding both source and destination fields + * David McKnight (IBM) - [225506] [api][breaking] RSE UI leaks non-API types ********************************************************************************/ package org.eclipse.rse.internal.ui.view; @@ -96,6 +97,7 @@ import org.eclipse.rse.ui.model.ISystemShellProvider; import org.eclipse.rse.ui.view.IRSEViewPart; import org.eclipse.rse.ui.view.ISystemViewElementAdapter; import org.eclipse.rse.ui.view.SystemTableView; +import org.eclipse.rse.ui.view.SystemTableViewProvider; import org.eclipse.swt.SWT; import org.eclipse.swt.dnd.Clipboard; import org.eclipse.swt.layout.GridData; diff --git a/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/monitor/MonitorViewPage.java b/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/monitor/MonitorViewPage.java index 2b3ef5411cc..775c5e63df1 100644 --- a/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/monitor/MonitorViewPage.java +++ b/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/monitor/MonitorViewPage.java @@ -1,5 +1,5 @@ /******************************************************************************** - * Copyright (c) 2002, 2007 IBM Corporation and others. All rights reserved. + * Copyright (c) 2002, 2008 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 @@ -17,6 +17,7 @@ * Martin Oberhuber (Wind River) - [186773] split ISystemRegistryUI from ISystemRegistry * Kevin Doyle (IBM) - [177587] changed wrapped selection provider in setFocus() * Kevin Doyle (IBM) - [212940] Duplicate Help Context Identifiers + * David McKnight (IBM) - [225506] [api][breaking] RSE UI leaks non-API types ********************************************************************************/ package org.eclipse.rse.internal.ui.view.monitor; @@ -41,7 +42,6 @@ import org.eclipse.rse.core.model.ISystemContainer; import org.eclipse.rse.core.model.ISystemRegistry; import org.eclipse.rse.core.subsystems.ISubSystem; import org.eclipse.rse.internal.ui.SystemResources; -import org.eclipse.rse.internal.ui.view.SystemTableViewProvider; import org.eclipse.rse.services.clientserver.messages.SystemMessage; import org.eclipse.rse.ui.ISystemMessages; import org.eclipse.rse.ui.RSEUIPlugin; @@ -50,6 +50,7 @@ import org.eclipse.rse.ui.actions.SystemCopyToClipboardAction; import org.eclipse.rse.ui.actions.SystemPasteFromClipboardAction; import org.eclipse.rse.ui.view.ISystemViewElementAdapter; import org.eclipse.rse.ui.view.SystemTableView; +import org.eclipse.rse.ui.view.SystemTableViewProvider; import org.eclipse.rse.ui.widgets.ISystemCollapsableSectionListener; import org.eclipse.rse.ui.widgets.SystemCollapsableSection; import org.eclipse.swt.SWT; diff --git a/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/ui/view/SubSystemConfigurationAdapter.java b/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/ui/view/SubSystemConfigurationAdapter.java index c0328637fa1..a9e43a45fb6 100644 --- a/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/ui/view/SubSystemConfigurationAdapter.java +++ b/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/ui/view/SubSystemConfigurationAdapter.java @@ -17,7 +17,8 @@ * Martin Oberhuber (Wind River) - [190231] Remove UI-only code from SubSystemConfiguration * Martin Oberhuber (Wind River) - [174789] [performance] Don't contribute Property Pages to Wizard automatically * David McKnight (IBM) - [197129] Removing obsolete ISystemConnectionWizardPropertyPage and SystemSubSystemsPropertiesWizardPage - * David Dykstal (IBM) - [217556] remove service subsystem types + * David Dykstal (IBM) - [217556] remove service subsystem types + * David McKnight (IBM) - [225506] [api][breaking] RSE UI leaks non-API types ********************************************************************************/ package org.eclipse.rse.ui.view; @@ -37,6 +38,7 @@ import org.eclipse.rse.core.filters.ISystemFilterPool; import org.eclipse.rse.core.filters.ISystemFilterPoolManager; import org.eclipse.rse.core.filters.ISystemFilterPoolReference; import org.eclipse.rse.core.filters.ISystemFilterPoolReferenceManager; +import org.eclipse.rse.core.filters.ISystemFilterPoolWrapperInformation; import org.eclipse.rse.core.filters.ISystemFilterReference; import org.eclipse.rse.core.filters.ISystemFilterString; import org.eclipse.rse.core.model.ISystemNewConnectionWizardPage; @@ -574,7 +576,7 @@ public class SubSystemConfigurationAdapter implements ISubSystemConfigurationAda else { boolean anyAdded = false; - SystemFilterPoolWrapperInformation poolWrapperInfo = getNewFilterWizardPoolWrapperInformation(); + ISystemFilterPoolWrapperInformation poolWrapperInfo = getNewFilterWizardPoolWrapperInformation(); ISystemProfile[] activeProfiles = RSECorePlugin.getTheSystemRegistry().getActiveSystemProfiles(); ISystemProfile activeProfile = selectedSubSystem.getHost().getSystemProfile(); for (int idx = 0; idx < activeProfiles.length; idx++) @@ -609,7 +611,7 @@ public class SubSystemConfigurationAdapter implements ISubSystemConfigurationAda * Overridable entry for child classes to supply their own flavour of ISystemFilterPoolWrapperInformation for * the new filter wizards. */ - protected SystemFilterPoolWrapperInformation getNewFilterWizardPoolWrapperInformation() + protected ISystemFilterPoolWrapperInformation getNewFilterWizardPoolWrapperInformation() { return new SystemFilterPoolWrapperInformation(SystemResources.RESID_NEWFILTER_PAGE2_PROFILE_LABEL, SystemResources.RESID_NEWFILTER_PAGE2_PROFILE_TOOLTIP, SystemResources.RESID_NEWFILTER_PAGE2_PROFILE_VERBIAGE); 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 ba574380ad3..6b2732a2d40 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 @@ -18,6 +18,7 @@ * David McKnight (IBM) - [193329] using "Resource" instead of "Name" in the label column * Xuan Chen (IBM) - [160775] [api] rename (at least within a zip) blocks UI thread * David McKnight (IBM) - [224313] [api] Create RSE Events for MOVE and COPY holding both source and destination fields + * David McKnight (IBM) - [225506] [api][breaking] RSE UI leaks non-API types ********************************************************************************/ package org.eclipse.rse.ui.view; @@ -77,7 +78,6 @@ import org.eclipse.rse.internal.ui.view.SystemDecoratingLabelProvider; import org.eclipse.rse.internal.ui.view.SystemInheritableTextCellEditor; import org.eclipse.rse.internal.ui.view.SystemTableViewColumnManager; import org.eclipse.rse.internal.ui.view.SystemTableViewFilter; -import org.eclipse.rse.internal.ui.view.SystemTableViewProvider; import org.eclipse.rse.internal.ui.view.SystemTableViewSorter; import org.eclipse.rse.internal.ui.view.SystemView; import org.eclipse.rse.internal.ui.view.SystemViewDataDragAdapter; @@ -257,17 +257,17 @@ public class SystemTableView // of actions. I say limited because somethings don't yet work properly. protected SystemRefreshAction _refreshAction; protected PropertyDialogAction _propertyDialogAction; - protected SystemOpenExplorerPerspectiveAction _openToPerspectiveAction; - protected SystemShowInTableAction _showInTableAction; + private SystemOpenExplorerPerspectiveAction _openToPerspectiveAction; + private SystemShowInTableAction _showInTableAction; // global actions // Note the Edit menu actions are set in SystemViewPart. Here we use these // actions from our own popup menu actions. - protected SystemCommonDeleteAction _deleteAction; + private SystemCommonDeleteAction _deleteAction; // for global delete menu item - protected SystemCommonRenameAction _renameAction; + private SystemCommonRenameAction _renameAction; // for common rename menu item - protected SystemCommonSelectAllAction _selectAllAction; + private SystemCommonSelectAllAction _selectAllAction; // for common Ctrl+A select-all protected boolean _selectionShowRefreshAction; diff --git a/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/SystemTableViewProvider.java b/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/ui/view/SystemTableViewProvider.java similarity index 96% rename from rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/SystemTableViewProvider.java rename to rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/ui/view/SystemTableViewProvider.java index 71cd68651c6..1a845e77b8b 100644 --- a/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/internal/ui/view/SystemTableViewProvider.java +++ b/rse/plugins/org.eclipse.rse.ui/UI/org/eclipse/rse/ui/view/SystemTableViewProvider.java @@ -14,9 +14,10 @@ * Contributors: * Martin Oberhuber (Wind River) - [186128] Move IProgressMonitor last in all API * David McKnight (IBM) - [216161] table view needs to handle context when filter reference is input + * David McKnight (IBM) - [225506] [api][breaking] RSE UI leaks non-API types *******************************************************************************/ -package org.eclipse.rse.internal.ui.view; +package org.eclipse.rse.ui.view; import java.text.SimpleDateFormat; import java.util.ArrayList; @@ -37,9 +38,9 @@ import org.eclipse.jface.viewers.Viewer; import org.eclipse.rse.core.filters.ISystemFilterReference; import org.eclipse.rse.core.model.ISystemContainer; import org.eclipse.rse.core.subsystems.ISubSystem; -import org.eclipse.rse.ui.view.ContextObject; -import org.eclipse.rse.ui.view.ISystemViewElementAdapter; -import org.eclipse.rse.ui.view.SystemAdapterHelpers; +import org.eclipse.rse.internal.ui.view.SystemTableViewColumnManager; +import org.eclipse.rse.internal.ui.view.SystemViewPromptableAdapter; +import org.eclipse.rse.internal.ui.view.SystemViewRootInputAdapter; import org.eclipse.swt.graphics.Image; import org.eclipse.ui.views.properties.IPropertyDescriptor;