TPTP 4.4.0 Platform Project
Public API Specification

org.eclipse.hyades.execution.remote
Class ExecutorSkeleton

java.lang.Object
  extended byorg.eclipse.hyades.execution.remote.RemoteObjectSkeleton
      extended byorg.eclipse.hyades.execution.remote.ExecutionComponentSkeleton
          extended byorg.eclipse.hyades.execution.remote.ExecutorSkeleton
All Implemented Interfaces:
IExecutionComponent, IExecutor, IRemoteObject
Direct Known Subclasses:
JavaProcessExecutorSkeleton, JavaTaskExecutorSkeleton

public class ExecutorSkeleton
extends ExecutionComponentSkeleton
implements IExecutor


Field Summary
 
Fields inherited from class org.eclipse.hyades.execution.remote.RemoteObjectSkeleton
delegate, sessionContext, uniqueId
 
Fields inherited from interface org.eclipse.hyades.execution.core.IExecutor
CONTROL_EVENT_RESUME, CONTROL_EVENT_SUSPEND
 
Fields inherited from interface org.eclipse.hyades.execution.core.IExecutionComponent
DEAD, INACTIVE, NOT_CONFIGURED, READY, SUSPENDED
 
Constructor Summary
ExecutorSkeleton()
           
ExecutorSkeleton(IExecutionComponent delegate, java.lang.Integer id)
           
 
Method Summary
 IExecutableObject getCompatibleExecutableObject(java.lang.String classname)
          Returns an empty instance of an IExecutableObject that is compatible with this IExecutor.
 IExecutableObject getExecutableObject()
           
 IProcessConsole getProcessConsole()
          Return the process console of the current executor
 void kill()
          Kills this process if it is active.
 void launch()
          Launches the executable on this ISession's node
 java.lang.String performControlEvent(java.lang.String controlEvent, java.lang.String[] params)
          Performs the control event specified.
 void setExecutableObject(IExecutableObject theExecutableObject)
          Set the executable object.
 boolean supportsControlEvent(java.lang.String controlEvent)
          Returns a boolean specifying whether the control event specified is supported.
 
Methods inherited from class org.eclipse.hyades.execution.remote.ExecutionComponentSkeleton
addChild, addExecutionComponentStateChangeListener, fireStateChangeEvent, getChildById, getChildByName, getChildren, getId, getName, getNode, getParent, getState, getType, getVersion, handleMessage, init, removeChild, removeExecutionComponentStateChangeListener, sendMessage, setParent
 
Methods inherited from class org.eclipse.hyades.execution.remote.RemoteObjectSkeleton
delegateRemoteCall, getDelegate, getSessionContext, getUniqueId, setDelegate, setId, setSessionContext
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.eclipse.hyades.execution.core.IExecutionComponent
addChild, addExecutionComponentStateChangeListener, fireStateChangeEvent, getChildById, getChildByName, getChildren, getId, getName, getNode, getParent, getState, getType, getVersion, handleMessage, init, removeChild, removeExecutionComponentStateChangeListener, sendMessage, setParent
 

Constructor Detail

ExecutorSkeleton

public ExecutorSkeleton()

ExecutorSkeleton

public ExecutorSkeleton(IExecutionComponent delegate,
                        java.lang.Integer id)
Method Detail

launch

public void launch()
            throws ExecutionComponentStateException
Description copied from interface: IExecutor
Launches the executable on this ISession's node

Specified by:
launch in interface IExecutor
Throws:
ExecutionComponentStateException
See Also:
IExecutor.launch()

kill

public void kill()
          throws ExecutionComponentStateException
Description copied from interface: IExecutor
Kills this process if it is active.

Specified by:
kill in interface IExecutor
Throws:
ExecutionComponentStateException
See Also:
IExecutor.kill()

setExecutableObject

public void setExecutableObject(IExecutableObject theExecutableObject)
                         throws ExecutionComponentStateException
Description copied from interface: IExecutor
Set the executable object. The executable object contains all information necessary to execute within the parent execution environment

Specified by:
setExecutableObject in interface IExecutor
Parameters:
theExecutableObject - An IExecutableObject instance which describes the executable in a manner understood by this IExecutor.
Throws:
ExecutionComponentStateException - If the IExecutor is not in a valid state to accept an IExecutableObject.
See Also:
IExecutor.setExecutableObject(org.eclipse.hyades.execution.core.IExecutableObject)

getExecutableObject

public IExecutableObject getExecutableObject()
Specified by:
getExecutableObject in interface IExecutor
See Also:
IExecutor.getExecutableObject()

getProcessConsole

public IProcessConsole getProcessConsole()
                                  throws ExecutionComponentStateException
Description copied from interface: IExecutor
Return the process console of the current executor

Specified by:
getProcessConsole in interface IExecutor
Returns:
IProcessConsole
Throws:
ExecutionComponentStateException
See Also:
IExecutor.getProcessConsole()

getCompatibleExecutableObject

public IExecutableObject getCompatibleExecutableObject(java.lang.String classname)
                                                throws java.lang.ClassNotFoundException
Description copied from interface: IExecutor
Returns an empty instance of an IExecutableObject that is compatible with this IExecutor.

Issue: Do we want this to be the ExecutableObject (thus replacing the setExecutableObject() method), and if so, how do we know when to pass the object across the wire (since the IExecutor doing the real work won't be the same instance of IExecutor that contains this IExecutableObject.)

Specified by:
getCompatibleExecutableObject in interface IExecutor
Returns:
an empty instance of a compatible IExecutableObject.
Throws:
java.lang.ClassNotFoundException
See Also:
org.eclipse.hyades.execution.core.IExecutor#getCompatibleExecutableObject()

performControlEvent

public java.lang.String performControlEvent(java.lang.String controlEvent,
                                            java.lang.String[] params)
Description copied from interface: IExecutor
Performs the control event specified.

Specified by:
performControlEvent in interface IExecutor
Parameters:
controlEvent - Contol Event to perform.
Returns:
Error Message if error occurred. Otherwise null.

supportsControlEvent

public boolean supportsControlEvent(java.lang.String controlEvent)
Description copied from interface: IExecutor
Returns a boolean specifying whether the control event specified is supported.

Specified by:
supportsControlEvent in interface IExecutor
Parameters:
controlEvent - Contol Event in question.
Returns:
Specifies whether the control event is supported.

TPTP 4.4.0 Platform Project
Public API Specification