supportsMultiStringFilters
boolean supportsMultiStringFilters()
- Return true if the subsystem supports more than one filter string
RETURNS true BY DEFAULT
-
-
supportsFilterStringExport
boolean supportsFilterStringExport()
- Return true if the subsystem supports the exporting of filter strings from it's filters
RETURNS true BY DEFAULT
-
-
supportsSubSystemConnect
boolean supportsSubSystemConnect()
- Return true if subsystem instances from this factory support connect and disconnect actions
Returns true in default implementation.
-
-
isPortEditable
boolean isPortEditable()
- Return true (default) or false to indicate if subsystems of this factory support user-editable
port numbers.
Returns true in default implementation.
-
-
supportsCommands
boolean supportsCommands()
- Return true if subsystem instances from this factory support remote command execution
Returns false in default implementation, and is usually only true for command subsystems.
NOTE: command subsystems are special because their filters don't yield children or allow
drilling into them via Show In Table, Open In New Window or Go Into. See bug 249245 and
bug 254605 for further explanation.
-
-
supportsProperties
boolean supportsProperties()
- Return true if subsystem instances from this factory support getting and setting properties
Returns false in default implementation, and not actually used yet.
-
-
supportsFilters
boolean supportsFilters()
- 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.
Returns true in default implementation.
-
-
supportsFilterChildren
boolean supportsFilterChildren()
- Indicates whether the subsystem supports displaying children under
its filters. By default, this will return true, but if filters that can't
be expanded are desired, this can be overridden to return false.
-
-
supportsFilterCaching
boolean supportsFilterCaching()
- Required method for subsystem factory child classes. Return true if you filter caching.
If you support filter caching, then the views will always check the in-memory cache for
filter results before attempting a query.
Returns true in default implementation.
-
-
supportsMultipleFilterStrings
boolean supportsMultipleFilterStrings()
- Required method for subsystem factory child classes. Return true if you support filters, and you support
multiple filter strings per filter. Return false to restrict the user to one string per filter.
Returns true in default implementation.
-
-
supportsNestedFilters
boolean supportsNestedFilters()
- Required method for subsystem factory child classes if returning true from supportsFilters.
Return true if you support filters within filters, false otherwise.
Returns false in default implementation.
-
-
supportsQuickFilters
boolean supportsQuickFilters()
- Return true if you support quick filters. These allow the user to subset a remote system object at
the time they expand it in the remote system explorer tree view.
Not supported yet
-
-
supportsDropInFilters
boolean supportsDropInFilters()
- Return true if filters of this subsystem factory support dropping into.
-
-
supportsDeferredQueries
boolean supportsDeferredQueries()
- Return true if deferred queries are supported.
Deferred queries work such that when a filter or element
children query is made, a WorkbenchJob is started to
perform the query in a background thread. The query can
take time to complete, but a negative side-effect of this
is that it will always take time to complete.
Alternative models can use asynchronous calls to populate
their model with data from the remote side, and refresh
the views when new data is in the model. Such subsystem
configurations should return
false
here.
The default implementation returns true
, indicating
that deferred queries are supported for filters, and delegates
the check for model elements to the ISystemViewElementAdapter.
-
-
-
Returns:
-
true
if deferred queries are supported.
providesCustomDropInFilters
boolean providesCustomDropInFilters()
- Return true if filters of this subsystem factory provide a custom implementation of drop support.
By default, the filter reference adapter treats a drop on a filter as an update to the list of filter
strings for a filter. For things like files, it is more desirable to treat the drop as a physical
resource copy, so in that case, custom drop makes sense.
By default this returns false.
-
-
supportsFileTypes
boolean supportsFileTypes()
- Return true if you support user-defined/managed named file types
Returns false in default implementation.
-
-
supportsTargets
boolean supportsTargets()
- Tell us if this subsystem factory supports targets, which are destinations for
pushes and builds. Normally only true for file system factories.
-
-
supportsServerLaunchProperties
boolean supportsServerLaunchProperties(
IHost host)
- Tell us if this subsystem factory supports server launch properties, which allow the user
to configure how the server-side code for these subsystems are started. There is a Server
Launch Setting property page, with a pluggable composite, where users can configure these
properties.
By default we return false here. This is overridden in UniversalFileSubSystemConfiguration though.
-
-
supportsServerLaunchType
boolean supportsServerLaunchType(
ServerLaunchType serverLaunchType)
- If
supportsServerLaunchProperties(IHost)
returns true, this method may be called by
the server launcher to decide if a given remote server launch type is supported or not.
We return true by default.
-
-
-
See Also:
-
ServerLaunchType
isCaseSensitive
boolean isCaseSensitive()
- Tell us if filter strings are case sensitive.
Returns false in default implementation.
-
-
showFilterPools
boolean showFilterPools()
- If we support filters, should we show filter pools in the remote system explorer?
Typically retrieved from user preferences.
-
-
setShowFilterPools
void setShowFilterPools(boolean show)
- If we support filters, should we show filter pools in the remote system explorer?
This is to set it after the user changes it in the user preferences. It may require
refreshing the current view.
-
-
setSubSystemConfigurationProxy
void setSubSystemConfigurationProxy(
ISubSystemConfigurationProxy proxy)
- Private method called by RSEUIPlugin
-
-
getSubSystemConfigurationProxy
ISubSystemConfigurationProxy getSubSystemConfigurationProxy()
- Private method
-
-
getVendor
String getVendor()
- Return vendor of this factory.
This comes from the xml "vendor" attribute of the extension point.
-
-
getName
String getName()
- Return name of this factory. Matches value in name attribute in extension point xml
-
-
getDescription
String getDescription()
- Return description of this factory. Comes from translated description string in extension point xml
-
-
getId
String getId()
- Return unique id of this factory. Matches value in id attribute in extension point xml
-
-
Specified by:
-
getId
in interface
ISystemFilterPoolManagerProvider
-
-
Returns:
- the id
getCategory
String getCategory()
- Return the category this subsystem factory subscribes to.
-
-
-
See Also:
-
ISubSystemConfigurationCategories
getSystemTypes
IRSESystemType[] getSystemTypes()
- Return the system types this subsystem factory supports.
-
-
deletingSystemProfile
void deletingSystemProfile(
ISystemProfile profile)
- Called by SystemRegistry when we are about to delete a profile.
Our only mission is to delete the filter pool associated with it,
because the registry has already called deleteSubSystemsByConnection
for every subsystem of every connection owned by this profile.
-
-
changingSystemProfileActiveStatus
void changingSystemProfileActiveStatus(
ISystemProfile profile,
boolean newStatus)
- Called by SystemRegistry when we have toggled the active-status of a profile
-
-
getSystemProfile
ISystemProfile getSystemProfile(
ISystemFilterPool pool)
- Get owning profile object given a filter pool object
-
-
renameSubSystemProfile
void renameSubSystemProfile(
String oldProfileName,
String newProfileName)
- Callback method called after renaming a subsystem profile.
This is called by SystemRegistry's renameSystemProfile method
after it is complete, , in order to allow the subsystem configuration
perform any required cleanup. For instance, subsystem configurations
must ensure that they update their filter pool manager names
(and their folders).
Must be called AFTER changing the profile's name!!
-
-
-
Parameters:
-
oldProfileName
- the old profile name. -
newProfileName
- the new profile name.
renameSubSystemProfile
void renameSubSystemProfile(
ISubSystem subsystem,
String oldProfileName,
String newProfileName)
- Called by SystemRegistry's renameSystemProfile method to ensure we update our
subsystem names within each subsystem.
This should be invoked after changing the profile's name.
-
-
-
Parameters:
-
subsystem
- the subsystem to be updated -
oldProfileName
- the old profile name -
newProfileName
- the new profile name
preTestRenameSubSystemProfile
void preTestRenameSubSystemProfile(
String oldProfileName)
throws
Exception
- Called by SystemRegistry's renameSystemProfile method to pre-test if we are going to run into errors on a
profile rename, due to file or folder in use.
-
-
-
Throws:
-
Exception
renameSubSystemsByConnection
void renameSubSystemsByConnection(
IHost conn,
String newConnectionName)
- Called by SystemRegistry's renameConnection method to ensure we update our
connection names within each subsystem.
Must be called prior to changing the connection's name!!
-
-
deleteSubSystemsByConnection
void deleteSubSystemsByConnection(
IHost conn)
- Called by SystemRegistry's deleteConnection method to ensure we delete all our
subsystems for a given connection.
-
-
createSubSystem
ISubSystem createSubSystem(
IHost conn,
boolean creatingConnection,
ISubSystemConfigurator[] configurators)
- Creates a new subsystem instance that is associated with the given connection object.
SystemRegistryImpl calls this when a new connection is created, and appliesToSystemType returns true.
-
-
-
Parameters:
-
conn
- The connection to create a subsystem for -
creatingConnection
- true if we are creating a connection, false if just creating
another subsystem for an existing connection. -
configurators
- The configurators that will be applied to a new subsystem or null if there are none. -
Since:
- 3.0
createSubSystemAfterTheFact
ISubSystem createSubSystemAfterTheFact(
IHost conn)
-
-
createSubSystemInternal
ISubSystem createSubSystemInternal(
IHost conn)
-
-
getConnectorService
IConnectorService getConnectorService(
IHost host)
- Get the connector service for a particular host.
This may create the connector service if necessary.
If the configuration is a service subsystem configuration, this should
return the connector service specified in
setConnectorService(IHost, IConnectorService)
.
-
-
-
Parameters:
-
host
- the host for which to create or retrieve the connector service
-
Returns:
- the connector service associated with this host. This can return null if there
is no connector service associated with this configuration. It is recommended that
there be a connector service if
supportsSubSystemConnect()
is true.
setConnectorService
void setConnectorService(
IHost host,
IConnectorService connectorService)
- Set the connector service for a particular host. This is usually managed
by a connector service manager known to this configuration. This must be
implemented by service subsystem configurations. Service subsystems allow
a connector service to be changed.
-
-
-
Parameters:
-
host
- the host for which to set this connector service. -
connectorService
- the connector service associated with this host. -
Since:
- org.eclipse.rse.core 3.0
getServiceType
Class getServiceType()
- Get the service type associated with this subsystem configuration. If the
configuration is not a service subsystem configuration it must return
null
, otherwise it must return the interface class that
the underlying service layer implements.
-
-
-
Returns:
- an interface class that is implemented by the service layer used
by subsystems that have this configuration, or
null
if this is not a service subsystem configuration. -
Since:
- org.eclipse.rse.core 3.0
getServiceImplType
Class getServiceImplType()
- Get the implementation type of the service associated with this subsystem
configuration. If the configuration is not a service subsystem
configuration then this must return
null
, otherwise it
must return the class that implements the interface specified in
getServiceType()
.
-
-
-
Returns:
- an implementation class that implements the interface specified
in
getServiceType()
, or null
if this is
not a service subsystem configuration. -
Since:
- org.eclipse.rse.core 3.0
getService
IService getService(
IHost host)
- Get the actual service associated with a particular host. If the
configuration is not a service subsystem this must return null. Otherwise
this must return the particular instance of the class returned by
getServiceImplType()
that is associated with this host instance.
-
-
-
Parameters:
-
host
- The host for which to retrieve the service.
-
Returns:
- The instance of
IService
which is associated with this
host, or null
if this is not a service subsystem
configuration. -
Since:
- org.eclipse.rse.core 3.0
createServerLauncher
IServerLauncherProperties createServerLauncher(
IConnectorService connectorService)
- Overridable entry for child classes to contribute a server launcher instance
for a given subsystem.
Create an instance of ServerLauncher, and add it to the given subsystem.
When a subsystem is created, and
supportsServerLaunchProperties(IHost)
returns true, this method is called to create the server launcher instance
associated with the subsystem. The default implementation is to create an
instance of
IRemoteServerLauncher
, but override to create your own
ServerLauncher instance if you have your own class.
-
-
updateSubSystem
void updateSubSystem(
ISubSystem subsystem,
boolean updateUserId,
String userId,
boolean updatePort,
int port)
- Updates user-editable attributes of an existing subsystem instance.
These attributes typically affect the live connection, so the subsystem will be forced to
disconnect.
The subsystem will be saved to disk.
-
-
-
Parameters:
-
subsystem
- target of the update action -
updateUserId
- true if we are updating the userId, else false to ignore userId -
userId
- new local user Id. Ignored if updateUserId is false -
updatePort
- true if we are updating the port, else false to ignore port -
port
- new local port value. Ignored if updatePort is false
setSubSystemPort
void setSubSystemPort(
ISubSystem subsystem,
int port)
- Update the port for the given subsystem instance.
-
-
setSubSystemUserId
void setSubSystemUserId(
ISubSystem subsystem,
String userId)
- Update the user ID for the given subsystem instance.
-
-
isSubSystemsDeletable
boolean isSubSystemsDeletable()
- Returns true if this factory allows users to delete instances of subsystem objects.
Would only be true if users are allowed to create multiple instances of subsystem objects
per connection.
-
-
deleteSubSystem
boolean deleteSubSystem(
ISubSystem subsystem)
- Deletes a given subsystem instance from the list maintained by this factory.
SystemRegistryImpl calls this when the user selects to delete a subsystem object,
or delete the parent connection this subsystem is associated with.
In former case, this is only called if the factory supports user-deletable subsystems.
-
-
cloneSubSystem
ISubSystem cloneSubSystem(
ISubSystem oldSubsystem,
IHost newConnection,
boolean copyProfileOperation)
throws
Exception
- Clone a given subsystem into the given connection.
Called when user does a copy-connection action.
-
-
-
Parameters:
-
oldSubsystem
- The subsystem to be cloned -
newConnection
- The connection into which to create and clone the old subsystem -
copyProfileOperation
- Pass true if this is an profile-copy operation versus a connection-copy operation
-
Returns:
- New subsystem within the new connection
-
Throws:
-
Exception
getSubSystems
ISubSystem[] getSubSystems(
IHost conn,
boolean force)
- Returns a list of subsystem objects existing for the given connection.
-
-
-
Parameters:
-
conn
- System connection to retrieve subsystems for -
force
- true if we should force all the subsystems to be restored from disk if not already
getSubSystems
ISubSystem[] getSubSystems(boolean force)
- Returns a list of all subsystem objects for all connections.
-
-
renameSubSystem
void renameSubSystem(
ISubSystem subsystem,
String newName)
- Renames a subsystem. This is better than ss.setName(String newName) as it saves the subsystem to disk.
-
-
disconnectAllSubSystems
void disconnectAllSubSystems()
throws
Exception
- Disconnect all subsystems currently connected.
Called by shutdown() of RSEUIPlugin.
-
-
-
Throws:
-
Exception
getFilterPoolManager
ISystemFilterPoolManager getFilterPoolManager(
ISystemProfile profile,
boolean force)
- Get the filter pool manager for the given profile. A subsystem
configuration has a filter pool manager for each profile.
-
-
-
Parameters:
-
profile
- The system profile for which to get the manager. -
force
- if true then create the default filters for this subsystem
configuration in this profile. This should only be done during
initial subsystem creation, not during subsystem restore.
-
Returns:
- a filter pool manager
-
Since:
- org.eclipse.rse.core 3.0
getFilterPoolManager
ISystemFilterPoolManager getFilterPoolManager(
ISystemProfile profile)
- Get the filter pool manager for the given profile. A subsystem
configuration has a filter pool manager for each profile. Do not force
the creation of default filter pools. Fully equivalent to
getFilterPoolManager(profile, false).
-
-
-
Parameters:
-
profile
- The system profile for which to get the manager.
-
Returns:
- a filter pool manager
copyFilterPoolManager
ISystemFilterPoolManager copyFilterPoolManager(
ISystemProfile oldProfile,
ISystemProfile newProfile)
throws
Exception
- Copy the filter pool manager and return a new one. Called during profile-copy operations.
Will also copy all of the filter pools and their respective data.
-
-
-
Throws:
-
Exception
getDefaultSystemFilterPool
ISystemFilterPool getDefaultSystemFilterPool(
ISubSystem subsys)
- Given a subsystem, return the first (hopefully only) default pool for this
subsystem's profile.
-
-
testForActiveReferences
ISubSystem[] testForActiveReferences(
ISystemProfile profile)
- Test if any filter pools in the given profile are referenced by other profiles,
which are active.
Called when user tries to make a profile inactive. We prevent this if there exists
active references.
-
-
-
Parameters:
-
profile
- The profile being tested
-
Returns:
- An array of the active subsystems which reference filter pools in this profile,
or null if none are found.
getTranslatedFilterTypeProperty
String getTranslatedFilterTypeProperty(
ISystemFilter selectedFilter)
- Return the translated string to show in the property sheet for the type property when a filter is selected.
-
-
showRefreshOnFilter
boolean showRefreshOnFilter()
- Return true if we should show the refresh action in the popup for the given element.
-
-
showGenericShowInTableOnFilter
boolean showGenericShowInTableOnFilter()
- Return true if we should show the show in table action in the popup for the given element.
-
-
showChangeFilterStringsPropertyPage
boolean showChangeFilterStringsPropertyPage(
ISystemFilter filter)
- Given a filter, decide whether to show the Filter Strings property page
for this filter. Default is true.
-
-
isFactoryFor
boolean isFactoryFor(
Class subSystemType)
- Determines whether this factory is responsible for the creation of subsytems of the specified type
Subsystem factories should override this to indicate which subsystems they support.
-
-
-
Parameters:
-
subSystemType
- type of subsystem
-
Returns:
- whether this factory is for the specified subsystemtype
setConnection
void setConnection(
IHost connection)
- Called by adapters prior to asking for actions, in case the connection of the currently selected
object is required by the action.
-
-
setCurrentSelection
void setCurrentSelection(
Object[] selection)
- Called by adapters prior to asking for actions. For cases when current selection is needed.
-
-
commit
boolean commit()
- Saves absolutely everything to disk. This is called as a safety
measure when the workbench shuts down.
Totally handled for you!
Calls saveSubSystems() and saveFilterPools()
Exceptions are swallowed since we cannot deal with them on shutdown anyway!
-
-
Specified by:
-
commit
in interface
IRSEPersistableContainer
-
-
Returns:
- true if the object was persisted.
saveSubSystem
void saveSubSystem(
ISubSystem subsys)
throws
Exception
- Save one subsystem to disk.
Called by each subsystem when their data changes.
-
-
-
Throws:
-
Exception
getSubSystemList
List getSubSystemList()
- Return the internal list of subsystems instantiated for this
configuration. Internal use only, do not call or use. Use
getSubSystems(boolean)
with a false
argument
instead.
-
-
-
Returns:
- The internal list of SubSystem instances for this configuration.
Any operations on this list (such as iterating, adding or
removing members) must always be synchronized against the list,
in order to protect against concurrent modification.
getFilterPoolManagerList
List getFilterPoolManagerList()
- Return the internal list of filter pool managers associated with this
configuration. Internal use only, do not call or use.
-
-
-
Returns:
- The internal list of filter pool Managers associated with this
configuration. Any operations on this list (such as iterating,
adding or removing members) must always be synchronized against
the list, in order to protect against concurrent modification.
getDefaultFilterPool
ISystemFilterPool getDefaultFilterPool(
ISystemProfile profile,
String oldProfileName)
-
-
getSystemProfile
ISystemProfile getSystemProfile(
String name)
-
-
renameFilterPoolManager
void renameFilterPoolManager(
ISystemProfile profile)
-
-
Copyright (c) IBM Corporation and others 2000, 2008. All Rights Reserved.