Remote Systems
v6.4.1

com.ibm.etools.systems.dftsubsystem.impl
Class DefaultSubSystemFactoryImpl

java.lang.Object
  extended byEObjectImpl
      extended bycom.ibm.etools.systems.subsystems.impl.SubSystemFactoryImpl
          extended bycom.ibm.etools.systems.dftsubsystem.impl.DefaultSubSystemFactoryImpl
All Implemented Interfaces:
DefaultSubSystemFactory, ISubSystemConstants, ISystemNewFilterActionConfigurator, SubSystemFactory, SystemFilterPoolManagerProvider

public class DefaultSubSystemFactoryImpl
extends SubSystemFactoryImpl
implements DefaultSubSystemFactory

See Also:
Serialized Form

Field Summary
static String copyright
           
 
Fields inherited from class com.ibm.etools.systems.subsystems.impl.SubSystemFactoryImpl
compileManager, currentlyProcessingConnection, currentlyProcessingSubSystemFactory, currentlySelected, currentlySelectedConnection, filterNamingPolicy, filterPoolManagerList, filterPoolManagers, filterPoolManagersPerProfile, imageTable, mofInitSS, mofInitSubclassSS, ssfactory, sspkg, subSystemList, udas
 
Fields inherited from interface com.ibm.etools.systems.subsystems.SubSystemFactory
FORCE_INTO_MEMORY, LAZILY
 
Fields inherited from interface com.ibm.etools.systems.subsystems.ISubSystemConstants
Copyright, DEFAULT_PORT, SAVEFILE_FILTERS, SAVEFILE_SUBSYSTEMS
 
Constructor Summary
protected DefaultSubSystemFactoryImpl()
          Constructor.
 
Method Summary
protected  SystemFilterPool createDefaultFilterPool(SystemFilterPoolManager mgr)
          Overridable lifecycle method.
protected  SubSystem createSubSystemInternal(SystemConnection conn)
          Lifecycle method you typically override.
 Object eGet(EStructuralFeature eFeature, boolean resolve)
           
 NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs)
           
 boolean eIsSet(EStructuralFeature eFeature)
           
 void eSet(EStructuralFeature eFeature, Object newValue)
           
protected  EClass eStaticClass()
           
 void eUnset(EStructuralFeature eFeature)
           
protected  Vector getAdditionalFilterActions(SystemFilter selectedFilter, Shell shell)
          Overridable method for getting Remote System view popup menu actions.
protected  Vector getAdditionalSubSystemActions(SubSystem selectedSubSystem, Shell shell)
          Overridable method for getting Remote System view popup menu actions.
protected  IAction getChangeFilterAction(SystemFilter selectedFilter, Shell shell)
          Overridable method for getting the Change Filter popup menu action.
protected  IAction getNewFilterPoolFilterAction(SystemFilterPool selectedPool, Shell shell)
          Overridable method for getting the New Filter popup menu action.
 ImageDescriptor getSystemFilterImage(SystemFilter filter)
          Optionally overridable method affecting the visual display of objects within subsystems created by this factory.
 ImageDescriptor getSystemFilterPoolImage(SystemFilterPool filterPool)
          Optionally overridable method affecting the visual display of objects within subsystems created by this factory.
 String getTranslatedFilterTypeProperty(SystemFilter selectedFilter)
          Optionally overridable method affecting the visual display of objects within subsystems created by this factory.
protected  void initializeSubSystem(SubSystem subsys, ISystemNewConnectionWizardPage[] yourNewConnectionWizardPages)
          Overridable lifecycle method.
protected  void initSubSystemMOF()
          Private 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 com.ibm.etools.systems.subsystems.impl.SubSystemFactoryImpl
addCommonRemoteActions, addFilterPoolManager, addSubSystem, addUserDefinedActions, changingSystemProfileActiveStatus, cloneSubSystem, configureNewFilterAction, copyFilterPoolManager, copySubSystemData, createActionSubSystem, createCompileManager, createEvent, createEvent, createEvent, createFilterByPrompting, createServerLauncher, createSubSystem, customizeChangeFilterPropertyPage, customizeFilterStringPropertyPage, deleteFilterPoolManager, deleteSubSystem, deleteSubSystemsByConnection, deletingSystemProfile, disconnectAllSubSystems, doPostRestoreProcessing, 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, getActionSubSystem, getActiveFilterPoolManagers, getAdditionalFilterPoolActions, getAdditionalFilterPoolReferenceActions, getAdditionalFilterReferenceActions, getCategory, getCompileManager, getConnectingMessage, getDefaultFilterPoolName, getDefaultSystemFilterPool, getDefaultSystemFilterPool, getDisconnectingMessage, getFilterActions, getFilterPool, getFilterPoolActions, getFilterPoolManager, getFilterPoolManager, getFilterPoolManager, getFilterPoolManager, getFilterPoolManager, getFilterPoolManagerList, getFilterPoolManagerName, getFilterPoolManagers, getFilterPoolReferenceActions, getFilterPools, getFilterReferenceActions, getGraphicsImage, getGraphicsLiveImage, getId, getImage, getLiveImage, getMOFHelpers, getName, getNewConnectionWizardPages, getNewFilterPoolFilterActions, getNewFilterWizardPoolWrapperInformation, getNewNestedFilterAction, getPasswordValidator, getPortValidator, getReferencableSystemFilterPoolManagers, getRemoveFilterPoolReferenceAction, getServerLauncherForm, getSSMOFfactory, getSubSystemActions, getSubSystemFactoryProxy, getSubSystemList, getSubSystemNewFilterPoolActions, getSubSystemPropertyPageCoreFrom, getSubSystemPropertyPages, getSubSystems, getSubSystems, getSubSystems, getSubSystems, getSubSystemsFolder, getSystemFilterPoolForBrokenReference, getSystemFilterPoolManager, getSystemFilterPoolManagerImage, getSystemFilterPoolManagers, getSystemFilterStringImage, getSystemFilterStringImage, getSystemProfile, getSystemProfile, getSystemProfile, getSystemProfile, getSystemProfileName, getSystemTypes, getTypeFiltersFolder, getUserIdValidator, getVendor, handleException, initMOF, internalGetSubSystemName, internalGetSubSystems, invalidateFilterCache, invalidateSubSystemCache, isFactoryFor, isSubSystemsDeletable, isUserPrivateProfile, needsUpdate, preTestRenameSubSystemProfile, providesCustomDropInFilters, removeSubSystem, renameFilterPoolManager, renameSubSystem, renameSubSystemProfile, renameSubSystemProfile, renameSubSystemsByConnection, reset, restore, restoreAllFilterPoolManagersForAllProfiles, restoreSubSystem, restoreSubSystems, save, saveFilterPools, saveFilterPools, saveSubSystem, saveSubSystems, saveSubSystems, setConnection, setCurrentSelection, setShowFilterPools, setSubSystemFactoryProxy, setSubSystemPort, setSubSystemUserId, showChangeFilterStringsPropertyPage, showFilterPools, showGenericShowInTableOnFilter, showRefreshOnFilter, subSystemsHaveBeenRestored, supportsCommands, supportsCompileActions, supportsDropInFilters, supportsFilterCaching, supportsFilterStringExport, supportsMultipleFilterStrings, supportsMultiStringFilters, supportsProperties, supportsQuickFilters, supportsServerLaunchProperties, supportsServerLaunchType, supportsTargets, supportsUserDefinedActions, supportsUserId, testForActiveReferences, toString, updateSubSystem
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface com.ibm.etools.systems.subsystems.SubSystemFactory
addCommonRemoteActions, changingSystemProfileActiveStatus, cloneSubSystem, copyFilterPoolManager, createFilterByPrompting, createSubSystem, customizeChangeFilterPropertyPage, customizeFilterStringPropertyPage, deleteSubSystem, deleteSubSystemsByConnection, deletingSystemProfile, disconnectAllSubSystems, getActionSubSystem, getCategory, getCompileManager, getDefaultSystemFilterPool, getFilterActions, getFilterPoolActions, getFilterPoolManager, getFilterPoolManagerList, getFilterPoolReferenceActions, getFilterReferenceActions, getGraphicsImage, getGraphicsLiveImage, getId, getImage, getLiveImage, getName, getNewConnectionWizardPages, getPasswordValidator, getPortValidator, getServerLauncherForm, getSubSystemActions, getSubSystemFactoryProxy, getSubSystemList, getSubSystemPropertyPageCoreFrom, getSubSystems, getSubSystems, getSystemProfile, getSystemTypes, getUserIdValidator, getVendor, isSubSystemsDeletable, preTestRenameSubSystemProfile, providesCustomDropInFilters, renameSubSystem, renameSubSystemProfile, renameSubSystemProfile, renameSubSystemsByConnection, reset, save, saveSubSystem, setConnection, setCurrentSelection, setShowFilterPools, setSubSystemFactoryProxy, setSubSystemPort, setSubSystemUserId, showChangeFilterStringsPropertyPage, showFilterPools, showGenericShowInTableOnFilter, showRefreshOnFilter, supportsCommands, supportsCompileActions, supportsDropInFilters, supportsFilterCaching, supportsFilterStringExport, supportsMultipleFilterStrings, supportsMultiStringFilters, supportsProperties, supportsQuickFilters, supportsServerLaunchProperties, supportsServerLaunchType, supportsTargets, supportsUserDefinedActions, supportsUserId, testForActiveReferences, updateSubSystem
 
Methods inherited from interface com.ibm.etools.systems.filters.SystemFilterPoolManagerProvider
filterEventFilterCreated, filterEventFilterDeleted, filterEventFilterPoolCreated, filterEventFilterPoolDeleted, filterEventFilterPoolRenamed, filterEventFilterPoolsRePositioned, filterEventFilterRenamed, filterEventFiltersRePositioned, filterEventFilterStringCreated, filterEventFilterStringDeleted, filterEventFilterStringsRePositioned, filterEventFilterStringUpdated, filterEventFilterUpdated, getReferencableSystemFilterPoolManagers, getSystemFilterPoolForBrokenReference, getSystemFilterPoolManager, getSystemFilterPoolManagerImage, getSystemFilterPoolManagers, getSystemFilterStringImage, getSystemFilterStringImage
 

Field Detail

copyright

public static final String copyright

See Also:
Constant Field Values
Constructor Detail

DefaultSubSystemFactoryImpl

protected DefaultSubSystemFactoryImpl()
Constructor. Generated by MOF/EMF, but called by SubSystemFactoryProxy when starting subsystem factory extensions.

Method Detail

eStaticClass

protected EClass eStaticClass()

Overrides:
eStaticClass in class SubSystemFactoryImpl

eInverseRemove

public NotificationChain eInverseRemove(InternalEObject otherEnd,
                                        int featureID,
                                        Class baseClass,
                                        NotificationChain msgs)

Overrides:
eInverseRemove in class SubSystemFactoryImpl

eGet

public Object eGet(EStructuralFeature eFeature,
                   boolean resolve)

Overrides:
eGet in class SubSystemFactoryImpl

eSet

public void eSet(EStructuralFeature eFeature,
                 Object newValue)

Overrides:
eSet in class SubSystemFactoryImpl

eUnset

public void eUnset(EStructuralFeature eFeature)

Overrides:
eUnset in class SubSystemFactoryImpl

eIsSet

public boolean eIsSet(EStructuralFeature eFeature)

Overrides:
eIsSet in class SubSystemFactoryImpl

supportsSubSystemConnect

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

Specified by:
supportsSubSystemConnect in interface SubSystemFactory
Overrides:
supportsSubSystemConnect in class SubSystemFactoryImpl

isPortEditable

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

Specified by:
isPortEditable in interface SubSystemFactory
Overrides:
isPortEditable in class SubSystemFactoryImpl

supportsFilters

public boolean supportsFilters()
Overridable configuration method. Default is true
Required method for subsystem factory 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 SubSystemFactory
Overrides:
supportsFilters in class SubSystemFactoryImpl

supportsNestedFilters

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

Specified by:
supportsNestedFilters in interface SubSystemFactory
Overrides:
supportsNestedFilters in class SubSystemFactoryImpl

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 factory

Specified by:
supportsUserDefinedActions in interface SubSystemFactory
Overrides:
supportsUserDefinedActions in class SubSystemFactoryImpl
See Also:
SubSystemFactoryImpl.supportsUserDefinedActions(ISelection), SubSystemFactoryImpl.getActionSubSystem(SubSystem), SubSystemFactoryImpl.createActionSubSystem()

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 SubSystemFactory
Overrides:
supportsFileTypes in class SubSystemFactoryImpl

isCaseSensitive

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

Specified by:
isCaseSensitive in interface SubSystemFactory
Overrides:
isCaseSensitive in class SubSystemFactoryImpl

supportsDuplicateFilterStrings

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

Overrides:
supportsDuplicateFilterStrings in class SubSystemFactoryImpl

createSubSystemInternal

protected SubSystem createSubSystemInternal(SystemConnection conn)
Lifecycle method you typically override.
Create a subsystem instance. Called by parent class.

If you override DefaultSubSystem, you must override this method and instantiate and return an instance of your DefaultSubSystem override

Overrides:
createSubSystemInternal in class SubSystemFactoryImpl
Parameters:
conn - The connection object this is being created for. Only passed for your interest.

initializeSubSystem

protected void initializeSubSystem(SubSystem 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 parm is in case your factory 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 apres 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 SubSystemFactoryImpl
Parameters:
subsys - - The subsystem that was created via createSubSystemInternal
yourNewConnectionWizardPages - - The wizard pages you supplied to the New Connection wizard, via the #getNewConnectionWizardPages(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 factory object, including subclasses. Null on a clone operation.
See Also:
com.ibm.etools.systems.subsystems.impl.SubSystemFactoryImpl#getNewConnectionWizardPages(org.eclipse.jface.wizard.IWizard)

createDefaultFilterPool

protected SystemFilterPool createDefaultFilterPool(SystemFilterPoolManager mgr)
Overridable lifecycle method. Typically overridden to supply a default filter.
When the user creates a new profile in the RSE (which is mapped to a SystemFilterPoolManager by our parent class), each subsystem factory that supports filters is asked if it wants to create a default system filter pool in that profile.
This is the method that is called to do that default filter pool creation in the new profile.

By default we create an empty filter pool with a generated name, and no pre-defined filters. If you don't want that behaviour, override this method and do one of the following:

Overrides:
createDefaultFilterPool in class SubSystemFactoryImpl

getAdditionalSubSystemActions

protected Vector getAdditionalSubSystemActions(SubSystem selectedSubSystem,
                                               Shell shell)
Overridable method for getting Remote System view popup menu actions.
Called by SystemView when constructing the popup menu for a selected subsystem.

For contributing popup menu actions to subsystem objects, beyond the default actions already supplied by our parent class. This method is only called with subsystems created by this subsystem factory.

Returns null by default. Override to show your own popup menu actions for your own subsystems.

Overrides:
getAdditionalSubSystemActions in class SubSystemFactoryImpl
Returns:
Vector of IAction objects, which usually are subclasses of SystemBaseAction or SystemBaseDialogAction or SystemBaseWizardAction or SystemBaseSubMenuAction.
See Also:
SubSystemFactoryImpl.getSubSystemActions(SubSystem,Shell)

getNewFilterPoolFilterAction

protected IAction getNewFilterPoolFilterAction(SystemFilterPool selectedPool,
                                               Shell shell)
Overridable method for getting the New Filter popup menu action.
Called by SystemView when constructing the cascading "New" menu for a selected subsystem or filter pool, depending on the user's preference setting for showing filter pools.

By default returns new SystemNewFilterAction. Override if you want your own wizard. Note, this is usually accomplished by creating your own wizard class, and subclassing the SystemNewFilterAction to return display own wizard.
Note: if your subsystems allow the user to create different types of filters, then override getNewFilterPoolFilterActions to return multiple actions.

Overrides:
getNewFilterPoolFilterAction in class SubSystemFactoryImpl
Parameters:
shell - - parent shell of viewer where the popup menu is being constructed

getChangeFilterAction

protected IAction getChangeFilterAction(SystemFilter selectedFilter,
                                        Shell shell)
Overridable method for getting the Change Filter popup menu action.
Called by SystemView when constructing the popup menu for a selected filter. This method is only called for filters within subsystems created by this subsystem factory.

By default returns new SystemChangeFilterAction. Override if you want your own dialog. Note, this is usually accomplished by creating your own dialog class, and subclassing the SystemChangeFilterAction to display your own dialog.

Overrides:
getChangeFilterAction in class SubSystemFactoryImpl
Parameters:
selectedFilter - the currently selected filter
shell - parent shell of viewer where the popup menu is being constructed
Returns:
an IAction object, which is usually a subclasses of SystemBaseDialogAction or SystemChangeFilterAction.

getTranslatedFilterTypeProperty

public String getTranslatedFilterTypeProperty(SystemFilter selectedFilter)
Optionally overridable method affecting the visual display of objects within subsystems created by this factory.
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 factory.

Returns a default string, override if appropriate.

Specified by:
getTranslatedFilterTypeProperty in interface SubSystemFactory
Overrides:
getTranslatedFilterTypeProperty in class SubSystemFactoryImpl

getAdditionalFilterActions

protected Vector getAdditionalFilterActions(SystemFilter selectedFilter,
                                            Shell shell)
Overridable method for getting Remote System view popup menu actions. Called by SystemView when constructing the popup menu for a selected filter.
This method is only called for filters within subsystems created by this subsystem factory.
By default, this returns null. Override if appropriate.

Overrides:
getAdditionalFilterActions in class SubSystemFactoryImpl
Returns:
Vector of IAction objects, which usually are subclasses of SystemBaseAction or SystemBaseDialogAction or SystemBaseWizardAction or SystemBaseSubMenuAction.
See Also:
SubSystemFactoryImpl.getFilterActions(SystemFilter,Shell)

getSystemFilterPoolImage

public ImageDescriptor getSystemFilterPoolImage(SystemFilterPool filterPool)
Optionally overridable method affecting the visual display of objects within subsystems created by this factory.
Supply the image to be used for filter pools within subsystems created by this subsystem factory.

Returns a default image. Override if appropriate.

Specified by:
getSystemFilterPoolImage in interface SystemFilterPoolManagerProvider
Overrides:
getSystemFilterPoolImage in class SubSystemFactoryImpl

getSystemFilterImage

public ImageDescriptor getSystemFilterImage(SystemFilter filter)
Optionally overridable method affecting the visual display of objects within subsystems created by this factory.
Supply the image to be used for filters, within subsystems created by this subsystem factory.

Returns a default image. Override if appropriate.

Specified by:
getSystemFilterImage in interface SystemFilterPoolManagerProvider
Overrides:
getSystemFilterImage in class SubSystemFactoryImpl

initSubSystemMOF

protected void initSubSystemMOF()
Private method. Do not override or call.
Initialize the MOF package. Need only be done once.

Overrides:
initSubSystemMOF in class SubSystemFactoryImpl

Remote Systems
v6.4.1

Copyright © 2005 IBM Corp. All Rights Reserved.

Note: This documentation is for part of an interim API that is still under development and expected to change significantly before reaching stability. It is being made available at this early stage to solicit feedback from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken (repeatedly) as the API evolves.