org.eclipse.tptp.test.tools.junit.plugin.internal.harness
Class WorkbenchExecutorStub
java.lang.Object
org.eclipse.hyades.execution.local.RemoteObjectStub
org.eclipse.hyades.execution.local.ExecutionComponentStub
org.eclipse.hyades.execution.local.ExecutorStub
org.eclipse.hyades.execution.harness.TestExecutionHarnessExecutorStub
org.eclipse.tptp.test.tools.junit.plugin.internal.harness.WorkbenchExecutorStub
- All Implemented Interfaces:
- org.eclipse.hyades.execution.harness.IDataProcessorObservable.Observer, org.eclipse.hyades.execution.core.IExecutionComponent, org.eclipse.hyades.execution.core.IExecutor, org.eclipse.hyades.execution.core.IExecutorWithProgressMonitorSupport, org.eclipse.hyades.execution.invocation.IRemoteObject
- Direct Known Subclasses:
- DebugWorkbenchExecutorStub
- public class WorkbenchExecutorStub
- extends org.eclipse.hyades.execution.harness.TestExecutionHarnessExecutorStub
This Executor Stub has the additional capacity to "join" an existing
process, rather than launching it, if a workbench is already running on the
remote machine with the same workspace directory.
- Since:
- 4.1
| Fields inherited from class org.eclipse.hyades.execution.local.ExecutorStub |
agentInitCount, dataProcessors |
| Fields inherited from class org.eclipse.hyades.execution.local.RemoteObjectStub |
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 |
|
Method Summary |
protected void |
doLaunch(org.eclipse.core.runtime.IProgressMonitor monitor)
This implementation launches a remote eclipse process only if such a process
is not already running (with a tester agent inside). |
protected java.lang.String |
getExpectedLocationName()
|
java.lang.String |
getPid()
|
protected RemoteWorkbenchLocation |
getRemoteWorkbenchLocation()
Returns the remote workbench location that this executor is connected to.
|
void |
setExecutableObject(org.eclipse.hyades.execution.core.IExecutableObject theExecutableObject)
|
protected org.eclipse.hyades.internal.execution.local.control.Agent |
waitForAgent(java.lang.String agentType,
java.lang.String agentName,
org.eclipse.hyades.internal.execution.local.control.Process process,
int timeout,
org.eclipse.core.runtime.IProgressMonitor progressMonitor)
|
| Methods inherited from class org.eclipse.hyades.execution.harness.TestExecutionHarnessExecutorStub |
clean, debugAndLaunch, getAgentListener, getAgentProcess, getLaunchTimeout, getState, isDebugMode, launch, launch, performControlEvent, resume, setupDataProcessor, start, stop, supportsControlEvent |
| Methods inherited from class org.eclipse.hyades.execution.local.ExecutorStub |
findAgent, findProcess, getCommunicationPort, getCompatibleExecutableObject, getDataProcessors, getExecutableObject, getExecutionResultLocation, getExecutionResultName, getProcessConsole, kill, kill, resetAgentInitCount, setCommunicationPort, setDataProcessors, setExecutionResultLocation, setExecutionResultName, setupControlListener, waitForProcess |
| Methods inherited from class org.eclipse.hyades.execution.local.ExecutionComponentStub |
addChild, addExecutionComponentStateChangeListener, fireStateChangeEvent, getChildById, getChildByName, getChildren, getId, getName, getNode, getParent, getType, getVersion, handleMessage, init, removeChild, removeExecutionComponentStateChangeListener, sendMessage, setParent |
| Methods inherited from class org.eclipse.hyades.execution.local.RemoteObjectStub |
delegateRemoteCall, getDelegate, getSessionContext, getUniqueId, setDelegate, 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, getType, getVersion, handleMessage, init, removeChild, removeExecutionComponentStateChangeListener, sendMessage, setParent |
WorkbenchExecutorStub
public WorkbenchExecutorStub()
getPid
public java.lang.String getPid()
getExpectedLocationName
protected java.lang.String getExpectedLocationName()
doLaunch
protected void doLaunch(org.eclipse.core.runtime.IProgressMonitor monitor)
- This implementation launches a remote eclipse process only if such a process
is not already running (with a tester agent inside).
waitForAgent
protected org.eclipse.hyades.internal.execution.local.control.Agent waitForAgent(java.lang.String agentType,
java.lang.String agentName,
org.eclipse.hyades.internal.execution.local.control.Process process,
int timeout,
org.eclipse.core.runtime.IProgressMonitor progressMonitor)
throws org.eclipse.hyades.internal.execution.local.control.NotConnectedException
- Throws:
org.eclipse.hyades.internal.execution.local.control.NotConnectedException
setExecutableObject
public void setExecutableObject(org.eclipse.hyades.execution.core.IExecutableObject theExecutableObject)
throws org.eclipse.hyades.execution.core.ExecutionComponentStateException
- Throws:
org.eclipse.hyades.execution.core.ExecutionComponentStateException
getRemoteWorkbenchLocation
protected RemoteWorkbenchLocation getRemoteWorkbenchLocation()
- Returns the remote workbench location that this executor is connected to.
This object is used to communicate with the "Eclipse Tester Agent" that allows
to launch test on the remote workbench.
- Returns: