Package org.jcsp.net.remote
Class ProcessSpawner
java.lang.Object
org.jcsp.net.remote.ProcessSpawner
- All Implemented Interfaces:
CSProcess
Launches a new JVM to run a process received by this spawner. This process will communicate with the
new JVM, routing any exceptions to the requesting host and also any information printed to the
System.err
or System.out
streams.-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final ApplicationID
The application identifier of the caller that the child should adopt.private final NetChannelOutput
For sending data back to the calling JVM who is running theRemoteProcess
proxy.private final String
The classpath the spawned JVM should use to get the caller's classes from a networked filesystem ornull
if the default classpath should be used.private final NodeFactory
The factory the child should use to initialize its node ornull
if the default initialization should take place.(package private) static final int
AnException
follows that was raised by the spawned process.(package private) static final int
AnException
follows that was raised by the spawned process on failure.(package private) static final int
The process terminated without error.(package private) static final int
AString
follows with a line of text that was forSystem.err
.(package private) static final int
AString
follows with a line of text that was forSystem.out
.private static final Integer
AnException
follows that was raised by the spawned process.private static final Integer
AnException
follows that was raised by the spawned process on failure.private static final Integer
The process terminated without error.private static final Integer
AString
follows with a line of text that was forSystem.err
.private static final Integer
AString
follows with a line of text that was forSystem.out
.private final CSProcess
The process that needs to be started.private final SpawnerService
The parent service that started this one.private final String
A unique name generated by the service fo use in creating a temporary file. -
Constructor Summary
ConstructorsConstructorDescriptionProcessSpawner
(SpawnerService service, CSProcess process, NetChannelOutput caller, NodeFactory factory, ApplicationID applicationID, int unique, String classPath) Constructs a new spawner. -
Method Summary
-
Field Details
-
MSG_STDOUT
static final int MSG_STDOUTAString
follows with a line of text that was forSystem.out
.- See Also:
-
MSG_STDERR
static final int MSG_STDERRAString
follows with a line of text that was forSystem.err
.- See Also:
-
MSG_EXCEPTION
static final int MSG_EXCEPTIONAnException
follows that was raised by the spawned process.- See Also:
-
MSG_FAIL
static final int MSG_FAILAnException
follows that was raised by the spawned process on failure.- See Also:
-
MSG_OK
static final int MSG_OKThe process terminated without error.- See Also:
-
msgSTDOUT
AString
follows with a line of text that was forSystem.out
. -
msgSTDERR
AString
follows with a line of text that was forSystem.err
. -
msgEXCEPTION
AnException
follows that was raised by the spawned process. -
msgFAIL
AnException
follows that was raised by the spawned process on failure. -
msgOK
The process terminated without error. -
service
The parent service that started this one. -
process
The process that needs to be started. -
caller
For sending data back to the calling JVM who is running theRemoteProcess
proxy. -
factory
The factory the child should use to initialize its node ornull
if the default initialization should take place. -
applicationID
The application identifier of the caller that the child should adopt. -
uniqueName
A unique name generated by the service fo use in creating a temporary file. -
classPath
The classpath the spawned JVM should use to get the caller's classes from a networked filesystem ornull
if the default classpath should be used.
-
-
Constructor Details
-
ProcessSpawner
public ProcessSpawner(SpawnerService service, CSProcess process, NetChannelOutput caller, NodeFactory factory, ApplicationID applicationID, int unique, String classPath) Constructs a new spawner.- Parameters:
service
- the parent service that is creating this object.process
- the process that should be run.caller
- for sending data back to the caller.factory
- optional factory for initializing the child process' node.applicationID
- caller's application ID that the child should adopt.unique
- a unique number allocated by the parent service.classPath
- classpath specified by the caller process for any classes available from a networked filesystem.
-
-
Method Details