|
RSE Release 1.0 |
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||||
java.lang.Objectorg.eclipse.rse.core.model.PropertySetContainer
org.eclipse.rse.core.model.RSEModelObject
org.eclipse.rse.core.subsystems.SubSystem
org.eclipse.rse.subsystems.processes.core.subsystem.impl.RemoteProcessSubSystemImpl
| Nested Class Summary |
|---|
| Nested classes inherited from class org.eclipse.rse.core.subsystems.SubSystem |
|---|
SubSystem.ChangeStatusJob, SubSystem.ConnectJob, SubSystem.DisconnectJob, SubSystem.DisplayErrorMessageJob, SubSystem.GetPropertiesJob, SubSystem.GetPropertyJob, SubSystem.ResolveAbsoluteJob, SubSystem.ResolveAbsolutesJob, SubSystem.ResolveRelativeJob, SubSystem.SetPropertiesJob, SubSystem.SetPropertyJob, SubSystem.SubSystemOperationJob |
| Field Summary |
|---|
| Fields inherited from class org.eclipse.rse.core.model.RSEModelObject |
|---|
_isDirty, _wasRestored |
| Constructor Summary | |
|---|---|
RemoteProcessSubSystemImpl(IHost host,
IConnectorService connectorService)
|
|
| Method Summary | |
|---|---|
void |
communicationsStateChange(CommunicationsEvent e)
This method is invoked whenever the communications state is invoked immediately before and after the state of the communications changes. |
Object |
getObjectWithAbsoluteName(String key)
For drag and drop, clipboard, and other object retrieval mechanisms in support of remote objects. |
IRemoteProcess |
getParentProcess(IRemoteProcess process)
Given a process, return its parent process object. |
IRemoteProcessSubSystemConfiguration |
getParentRemoteProcessSubSystemConfiguration()
Return parent subsystem factory, cast to a RemoteProcessSubSystemConfiguration |
abstract IRemoteProcess |
getRemoteProcessObject(long pid)
Given a pid, return an IRemoteProcess object for it. |
abstract String[] |
getSignalTypes()
Returns a list of the types of signals that can be sent to a process on the remote system. |
void |
initializeSubSystem(IProgressMonitor monitor)
Called on each subsystem associated with a particular IConnectorService after it connects |
protected Object[] |
internalResolveFilterString(IProgressMonitor monitor,
String filterString)
Resolve an absolute filter string. |
boolean |
isCaseSensitive()
Return true if names are case-sensitive. |
boolean |
isPassiveCommunicationsListener()
This method determines if the communications listener is a passive or active listener. |
abstract boolean |
kill(IRemoteProcess process,
String signal)
Kill the given process. |
abstract IRemoteProcess[] |
listAllProcesses(IHostProcessFilter processNameFilter,
IRemoteProcessContext context,
IProgressMonitor monitor)
Return a list of all processes on the remote system. |
IRemoteProcess[] |
listRoots(IRemoteProcessContext context,
IProgressMonitor monitor)
At this point there is only one root process, the 'init' process with pid 1 |
void |
uninitializeSubSystem(IProgressMonitor monitor)
Called on each subsystem associated with a particular IConnectorService after it disconnects |
| Methods inherited from class org.eclipse.rse.core.model.RSEModelObject |
|---|
compareStrings, getDescription, isDirty, setDirty, setWasRestored, wasRestored |
| Methods inherited from class org.eclipse.rse.core.model.PropertySetContainer |
|---|
addPropertySet, addPropertySets, createPropertySet, createPropertySet, getPropertySet, getPropertySets, removePropertySet |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface org.eclipse.rse.subsystems.processes.core.subsystem.IRemoteProcessSubSystem |
|---|
listChildProcesses, listChildProcesses |
| Methods inherited from interface org.eclipse.core.runtime.jobs.ISchedulingRule |
|---|
contains, isConflicting |
| Methods inherited from interface org.eclipse.rse.core.model.IRSEModelObject |
|---|
getDescription |
| Methods inherited from interface org.eclipse.rse.core.model.IPropertySetContainer |
|---|
addPropertySet, addPropertySets, createPropertySet, createPropertySet, getPropertySet, getPropertySets, removePropertySet |
| Methods inherited from interface org.eclipse.rse.core.persistance.IRSEPersistableContainer |
|---|
commit, isDirty, setDirty, setWasRestored, wasRestored |
| Constructor Detail |
public RemoteProcessSubSystemImpl(IHost host,
IConnectorService connectorService)
| Method Detail |
public IRemoteProcessSubSystemConfiguration getParentRemoteProcessSubSystemConfiguration()
IRemoteProcessSubSystem
getParentRemoteProcessSubSystemConfiguration in interface IRemoteProcessSubSystempublic boolean isCaseSensitive()
IRemoteProcessSubSystem
isCaseSensitive in interface IRemoteProcessSubSystempublic void communicationsStateChange(CommunicationsEvent e)
ICommunicationsListener
communicationsStateChange in interface ICommunicationsListenerpublic void initializeSubSystem(IProgressMonitor monitor)
ISubSystem
initializeSubSystem in interface ISubSysteminitializeSubSystem in class SubSystempublic void uninitializeSubSystem(IProgressMonitor monitor)
ISubSystem
uninitializeSubSystem in interface ISubSystempublic IRemoteProcess getParentProcess(IRemoteProcess process)
IRemoteProcessSubSystem
getParentProcess in interface IRemoteProcessSubSystemprocess - the process to return parent of.
protected Object[] internalResolveFilterString(IProgressMonitor monitor,
String filterString)
throws InvocationTargetException,
InterruptedException
SubSystemSubSystemConfiguration.supportsFilters(),
which is the default. Otherwise, SubSystem.getChildren()
is called when the subsystem itself is expanded.
When a user expands a filter this method is invoked for each filter string and the
results are concatenated and displayed to the user. You can affect the post-concatenated
result by overriding SubSystem.sortResolvedFilterStringObjects(Object[]) if you desire to
sort the result, say, or pick our redundancies.
The resulting objects are displayed in the tree in the Remote System view.
There are two requirements on the returned objects:
IAdaptable.
remote-adapter registered
for the object's class or interface type. Further, if this subsystem is visible
in the RSE, which is the default, then there must also be an RSE GUI-adapter registered
with the platform. The base class implementation of this interface is AbstractSystemViewAdapter.
A good place to start with your remote-resource classes to subclasss AbstractResource, as it
already implements IAdaptable, and maintains a reference to this owning subsystem, which helps when
implementing the remote-adapter.
Be sure to register your adapter factory in your plugin's startup method.
Actually resolve an absolute filter string. This is called by the run(IProgressMonitor monitor) method, which in turn is called by resolveFilterString.
As per IRunnableWithProgress rules:
internalResolveFilterString in class SubSystemInvocationTargetException
InterruptedException
public IRemoteProcess[] listRoots(IRemoteProcessContext context,
IProgressMonitor monitor)
listRoots in interface IRemoteProcessSubSystemcontext - A context object that will be associated with each returned processmonitor - the progress monitor
public abstract IRemoteProcess[] listAllProcesses(IHostProcessFilter processNameFilter,
IRemoteProcessContext context,
IProgressMonitor monitor)
throws InterruptedException,
SystemMessageException
IRemoteProcessSubSystem
listAllProcesses in interface IRemoteProcessSubSystemprocessNameFilter - filter the results according to this objectcontext - A context object that will be associated with each returned processmonitor - the progress monitor
InterruptedException
SystemMessageException
public abstract IRemoteProcess getRemoteProcessObject(long pid)
throws SystemMessageException
IRemoteProcessSubSystem
getRemoteProcessObject in interface IRemoteProcessSubSystempid - The pid of the desired process
SystemMessageException
public abstract boolean kill(IRemoteProcess process,
String signal)
throws SystemMessageException
IRemoteProcessSubSystem
kill in interface IRemoteProcessSubSystemprocess - represents the object to be killed.
SystemMessageException
public abstract String[] getSignalTypes()
throws SystemMessageException
IRemoteProcessSubSystem
getSignalTypes in interface IRemoteProcessSubSystemSystemMessageExceptionpublic boolean isPassiveCommunicationsListener()
ICommunicationsListener
isPassiveCommunicationsListener in interface ICommunicationsListener
public Object getObjectWithAbsoluteName(String key)
throws Exception
IRemoteObjectResolverReturn the remote object within the subsystem that corresponds to the specified unique ID.
This is the functional opposite of ISystemRemoteElementAdapter.getAbsoluteName(Object).
getObjectWithAbsoluteName in interface IRemoteObjectResolvergetObjectWithAbsoluteName in class SubSystemException
|
RSE Release 1.0 |
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||||