RSE
Release 2.0

org.eclipse.rse.core.servicesubsystem
Class ServiceSubSystemConfiguration

java.lang.Object
  extended by org.eclipse.rse.core.subsystems.SubSystemConfiguration
      extended by org.eclipse.rse.core.servicesubsystem.ServiceSubSystemConfiguration
All Implemented Interfaces:
IAdaptable, ISystemFilterPoolManagerProvider, IRSEPersistableContainer, IServiceSubSystemConfiguration, ISubSystemConfiguration

public abstract class ServiceSubSystemConfiguration
extends SubSystemConfiguration
implements IServiceSubSystemConfiguration

This class is to be used by subsystem-providers that do not desire to use MOF/EMF. It is therefore recommended starting base class for subsystem providers.
To use this class, simply subclass it and override the appropriate methods in it, such as:

For additional customization of the subsystem, you may supply a SubSystemConfigurationAdapter, which allows you to

  • supply your own New->Filter popup menu action via SubSystemConfigurationAdapter.getNewFilterPoolFilterAction(ISubSystemConfiguration, ISystemFilterPool, org.eclipse.swt.widgets.Shell), and
  • supply your own Change Filter popup menu action via SubSystemConfigurationAdapter.getChangeFilterAction(ISubSystemConfiguration, ISystemFilter, org.eclipse.swt.widgets.Shell).

    This class is typically used together with:

    In general, for what methods to override, only worry about the non-generated methods in this class, and ignore the hundreds in SubSystemConfiguration

    See Also:
    ServiceSubSystem, AbstractConnectorService, AbstractConnectorServiceManager

    Field Summary
     
    Fields inherited from class org.eclipse.rse.core.subsystems.SubSystemConfiguration
    currentlyProcessingConnection, currentlyProcessingSubSystemConfiguration, currentlySelected, currentlySelectedConnection, filterNamingPolicy, filterPoolManagerList, filterPoolManagers, filterPoolManagersPerProfile, subSystemList
     
    Fields inherited from interface org.eclipse.rse.core.subsystems.ISubSystemConfiguration
    FORCE_INTO_MEMORY, LAZILY
     
    Fields inherited from interface org.eclipse.rse.core.model.IRSEPersistableContainer
    NO_CHILDREN
     
    Constructor Summary
    protected ServiceSubSystemConfiguration()
               
     
    Method Summary
     String getTranslatedFilterTypeProperty(ISystemFilter selectedFilter)
              Optionally overridable method affecting the visual display of objects within subsystems created by this subsystem configuration.
    protected  void initializeSubSystem(ISubSystem subsys, ISystemNewConnectionWizardPage[] yourNewConnectionWizardPages)
              Overridable lifecycle method.
     boolean isCaseSensitive()
              Overridable configuration method.
     boolean isPortEditable()
              Overridable configuration method.
     boolean supportsDuplicateFilterStrings()
              Overridable configuration method.
     boolean supportsFileTypes()
              Overridable configuration method.
     boolean supportsFilters()
              Overridable configuration method.
     boolean supportsNestedFilters()
              Overridable configuration method.
     boolean supportsSubSystemConnect()
              Overridable configuration method.
     boolean supportsUserDefinedActions()
              COverridable configuration method.
     
    Methods inherited from class org.eclipse.rse.core.subsystems.SubSystemConfiguration
    addFilterPoolManager, addSubSystem, beginRestore, changingSystemProfileActiveStatus, cloneEvent, cloneSubSystem, commit, copyFilterPoolManager, copySubSystemData, createDefaultFilterPool, createEvent, createEvent, createEvent, createServerLauncher, createSubSystem, createSubSystemAfterTheFact, createSubSystemInternal, deleteFilterPoolManager, deleteSubSystem, deleteSubSystemsByConnection, deletingSystemProfile, disconnectAllSubSystems, doPostRestoreProcessing, endRestore, filterEventFilterCreated, filterEventFilterDeleted, filterEventFilterPoolCreated, filterEventFilterPoolDeleted, filterEventFilterPoolRenamed, filterEventFilterPoolsRePositioned, filterEventFilterRenamed, filterEventFiltersRePositioned, filterEventFilterStringCreated, filterEventFilterStringDeleted, filterEventFilterStringsRePositioned, filterEventFilterStringUpdated, filterEventFilterUpdated, fireEvent, fireEvent, fireEvent, fireSubSystemEvent, fireSubSystemEvent, fireSubSystemEvent, fireSubSystemFilterEvent, fireSubSystemFilterEvent, fireSubSystemFilterEvent, fireSubSystemFilterEvent, fireSubSystemFilterEvent, fireSubSystemFilterEvent, getActiveFilterPoolManagers, getAdapter, getAllSystemFilterPoolManagers, getCategory, getConnectingMessage, getDefaultFilterPool, getDefaultFilterPoolName, getDefaultSystemFilterPool, getDefaultSystemFilterPool, getDescription, getDisconnectingMessage, getFilterPool, getFilterPoolManager, getFilterPoolManager, getFilterPoolManager, getFilterPoolManager, getFilterPoolManager, getFilterPoolManagerList, getFilterPoolManagerName, getFilterPoolManagers, getFilterPools, getId, getName, getNewFilterWizardPoolWrapperInformation, getPersistableChildren, getPersistableParent, getReferencableSystemFilterPoolManagers, getSubSystemConfigurationProxy, getSubSystemList, getSubSystems, getSubSystems, getSubSystems, getSubSystems, getSystemFilterPoolForBrokenReference, getSystemFilterPoolManager, getSystemFilterPoolManagers, getSystemProfile, getSystemProfile, getSystemProfile, getSystemProfile, getSystemProfileName, getSystemTypes, getVendor, handleException, internalGetSubSystemName, internalGetSubSystems, invalidateFilterCache, invalidateSubSystemCache, isDirty, isFactoryFor, isSubSystemsDeletable, isTainted, isUserPrivateProfile, needsUpdate, preTestRenameSubSystemProfile, providesCustomDropInFilters, removeSubSystem, renameFilterPoolManager, renameSubSystem, renameSubSystemProfile, renameSubSystemProfile, renameSubSystemsByConnection, reset, saveFilterPools, saveFilterPools, saveSubSystem, saveSubSystems, saveSubSystems, setConnection, setCurrentSelection, setDirty, setShowFilterPools, setSubSystemConfigurationProxy, setSubSystemPort, setSubSystemUserId, setTainted, setWasRestored, showChangeFilterStringsPropertyPage, showFilterPools, showGenericShowInTableOnFilter, showRefreshOnFilter, subSystemsHaveBeenRestored, supportsCommands, supportsCompileActions, supportsDeferredQueries, supportsDropInFilters, supportsFilterCaching, supportsFilterChildren, supportsFilterStringExport, supportsMultipleFilterStrings, supportsMultiStringFilters, supportsProperties, supportsQuickFilters, supportsServerLaunchProperties, supportsServerLaunchType, supportsTargets, testForActiveReferences, toString, updateSubSystem, wasRestored
     
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
     
    Methods inherited from interface org.eclipse.rse.core.subsystems.IServiceSubSystemConfiguration
    getConnectorService, getService, getServiceImplType, getServiceType, setConnectorService
     
    Methods inherited from interface org.eclipse.rse.core.subsystems.ISubSystemConfiguration
    changingSystemProfileActiveStatus, cloneSubSystem, commit, copyFilterPoolManager, createServerLauncher, createSubSystem, createSubSystemAfterTheFact, createSubSystemInternal, deleteSubSystem, deleteSubSystemsByConnection, deletingSystemProfile, disconnectAllSubSystems, getAllSystemFilterPoolManagers, getCategory, getDefaultFilterPool, getDefaultSystemFilterPool, getDescription, getFilterPoolManager, getFilterPoolManagerList, getId, getName, getSubSystemConfigurationProxy, getSubSystemList, getSubSystems, getSubSystems, getSystemProfile, getSystemProfile, getSystemTypes, getVendor, isFactoryFor, isSubSystemsDeletable, preTestRenameSubSystemProfile, providesCustomDropInFilters, renameFilterPoolManager, renameSubSystem, renameSubSystemProfile, renameSubSystemProfile, renameSubSystemsByConnection, reset, saveSubSystem, setConnection, setCurrentSelection, setShowFilterPools, setSubSystemConfigurationProxy, setSubSystemPort, setSubSystemUserId, showChangeFilterStringsPropertyPage, showFilterPools, showGenericShowInTableOnFilter, showRefreshOnFilter, supportsCommands, supportsCompileActions, supportsDeferredQueries, supportsDropInFilters, supportsFilterCaching, supportsFilterChildren, supportsFilterStringExport, supportsMultipleFilterStrings, supportsMultiStringFilters, supportsProperties, supportsQuickFilters, supportsServerLaunchProperties, supportsServerLaunchType, supportsTargets, testForActiveReferences, updateSubSystem
     
    Methods inherited from interface org.eclipse.rse.core.filters.ISystemFilterPoolManagerProvider
    filterEventFilterCreated, filterEventFilterDeleted, filterEventFilterPoolCreated, filterEventFilterPoolDeleted, filterEventFilterPoolRenamed, filterEventFilterPoolsRePositioned, filterEventFilterRenamed, filterEventFiltersRePositioned, filterEventFilterStringCreated, filterEventFilterStringDeleted, filterEventFilterStringsRePositioned, filterEventFilterStringUpdated, filterEventFilterUpdated, getReferencableSystemFilterPoolManagers, getSystemFilterPoolForBrokenReference, getSystemFilterPoolManager, getSystemFilterPoolManagers
     
    Methods inherited from interface org.eclipse.core.runtime.IAdaptable
    getAdapter
     
    Methods inherited from interface org.eclipse.rse.core.model.IRSEPersistableContainer
    getPersistableChildren, getPersistableParent, isDirty, isTainted, setDirty, setTainted, setWasRestored, wasRestored
     

    Constructor Detail

    ServiceSubSystemConfiguration

    protected ServiceSubSystemConfiguration()
    Method Detail

    supportsSubSystemConnect

    public boolean supportsSubSystemConnect()
    Overridable configuration method. Default is false
    Return true if instance of this subsystem configuration's subsystems support connect and disconnect actions.

    Specified by:
    supportsSubSystemConnect in interface ISubSystemConfiguration
    Overrides:
    supportsSubSystemConnect in class SubSystemConfiguration

    isPortEditable

    public boolean isPortEditable()
    Overridable configuration method. Default is true
    Return true (default) or false to indicate if subsystems of this subsystem configuration support user-editable port numbers.

    Specified by:
    isPortEditable in interface ISubSystemConfiguration
    Overrides:
    isPortEditable in class SubSystemConfiguration

    supportsFilters

    public boolean supportsFilters()
    Overridable configuration method. Default is true
    Required method for subsystem configuration child classes. Return true if you support filters, false otherwise. If you support filters, then some housekeeping will be done for you automatically. Specifically, they will be saved and restored for you automatically.

    Specified by:
    supportsFilters in interface ISubSystemConfiguration
    Overrides:
    supportsFilters in class SubSystemConfiguration
    Returns:
    true to indicate that Filters are supported by default.

    supportsNestedFilters

    public boolean supportsNestedFilters()
    Overridable configuration method. Default is false
    Do we allow filters within filters?

    Specified by:
    supportsNestedFilters in interface ISubSystemConfiguration
    Overrides:
    supportsNestedFilters in class SubSystemConfiguration

    supportsUserDefinedActions

    public boolean supportsUserDefinedActions()
    COverridable configuration method. Default is false
    Return true if you support user-defined actions for the remote system objects returned from expansion of subsystems created by this subsystem configuration

    Specified by:
    supportsUserDefinedActions in interface ISubSystemConfiguration
    Overrides:
    supportsUserDefinedActions in class SubSystemConfiguration

    supportsFileTypes

    public boolean supportsFileTypes()
    Overridable configuration method. Default is false
    Return true if you support user-defined/managed named file types

    Specified by:
    supportsFileTypes in interface ISubSystemConfiguration
    Overrides:
    supportsFileTypes in class SubSystemConfiguration

    isCaseSensitive

    public boolean isCaseSensitive()
    Overridable configuration method. Default is false
    Tell us if filter strings are case sensitive.

    Specified by:
    isCaseSensitive in interface ISubSystemConfiguration
    Overrides:
    isCaseSensitive in class SubSystemConfiguration

    supportsDuplicateFilterStrings

    public boolean supportsDuplicateFilterStrings()
    Overridable configuration method. Default is false
    Tell us if duplicate filter strings are supported per filter.

    Overrides:
    supportsDuplicateFilterStrings in class SubSystemConfiguration

    initializeSubSystem

    protected void initializeSubSystem(ISubSystem subsys,
                                       ISystemNewConnectionWizardPage[] yourNewConnectionWizardPages)
    Overridable lifecycle method. Not typically overridden.
    After a new subsystem instance is created, the framework calls this method to initialize it. This is your opportunity to set default attribute values.

    The reason for the connect wizard pages parameter is in case your subsystem configuration contributes a page to that wizard, whose values are needed to set the subsystem's initial state. For example, you might decide to add a page to the connection wizard to prompt for a JDBC Driver name. If so, when this method is called at the time a new connection is created after the wizard, your page will have the user's value. You can thus use it here to initialize that subsystem property. Be use to use instanceof to find your particular page.

    If you override this, PLEASE CALL SUPER TO DO DEFAULT INITIALIZATION!

    Overrides:
    initializeSubSystem in class SubSystemConfiguration
    Parameters:
    subsys - - The subsystem that was created via createSubSystemInternal
    yourNewConnectionWizardPages - - The wizard pages you supplied to the New Connection wizard, via the SubSystemConfigurationAdapter.getNewConnectionWizardPages(org.eclipse.rse.core.subsystems.ISubSystemConfiguration, org.eclipse.jface.wizard.IWizard) method or null if you didn't override this method. Note there may be more pages than you originally supplied, as you are passed all pages contributed by this subsystem configuration object, including subclasses. Null on a clone operation.
    See Also:
    SubSystemConfigurationAdapter.getNewConnectionWizardPages(org.eclipse.rse.core.subsystems.ISubSystemConfiguration, org.eclipse.jface.wizard.IWizard)

    getTranslatedFilterTypeProperty

    public String getTranslatedFilterTypeProperty(ISystemFilter selectedFilter)
    Optionally overridable method affecting the visual display of objects within subsystems created by this subsystem configuration.
    Return the translated string to show in the property sheet for the "type" property, for the selected filter. This method is only called for filters within subsystems created by this subsystem configuration.

    Returns a default string, override if appropriate.

    Specified by:
    getTranslatedFilterTypeProperty in interface ISubSystemConfiguration
    Overrides:
    getTranslatedFilterTypeProperty in class SubSystemConfiguration

    RSE
    Release 2.0

    Copyright (c) IBM Corporation and others 2000, 2007. All Rights Reserved.