|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--org.objectweb.proactive.core.process.AbstractUniversalProcess | +--org.objectweb.proactive.core.process.AbstractExternalProcess
Nested Class Summary | |
static class |
AbstractExternalProcess.NullMessageLogger
Implementation of a MessageLogger that discard all output |
protected class |
AbstractExternalProcess.ProcessInputHandler
This class reads all messages from an input and log them using a MessageLogger |
protected class |
AbstractExternalProcess.ProcessOutputHandler
This class uses a MessageSink to write all messages produced in a given output |
static class |
AbstractExternalProcess.SimpleMessageSink
Implementation of a MessageSink that can receive one message at a time |
static class |
AbstractExternalProcess.StandardOutputMessageLogger
Implementation of a MessageLogger that output all messages to the standard output |
Field Summary | |
protected static org.apache.log4j.Logger |
clogger
|
protected MessageLogger |
errorMessageLogger
|
protected java.lang.Process |
externalProcess
|
protected MessageLogger |
inputMessageLogger
|
protected static boolean |
IS_WINDOWS_SYSTEM
|
protected MessageSink |
outputMessageSink
|
Fields inherited from class org.objectweb.proactive.core.process.AbstractUniversalProcess |
certificateLocation, command, DEFAULT_HOSTNAME, DEFAULT_USERNAME, environment, hostname, isFinished, isStarted, LOCALHOST, privateKeyLocation, securityFile, username |
Fields inherited from interface org.objectweb.proactive.core.process.UniversalProcess |
logger |
Constructor Summary | |
protected |
AbstractExternalProcess()
|
|
AbstractExternalProcess(MessageLogger messageLogger)
|
|
AbstractExternalProcess(MessageLogger inputMessageLogger,
MessageLogger errorMessageLogger)
|
|
AbstractExternalProcess(MessageLogger inputMessageLogger,
MessageLogger errorMessageLogger,
MessageSink outputMessageSink)
|
Method Summary | |
protected abstract java.lang.String |
buildCommand()
|
protected java.lang.String |
buildEnvironmentCommand()
|
protected java.lang.String |
buildUnixEnvironmentCommand()
|
protected java.lang.String |
buildWindowsEnvironmentCommand()
|
MessageLogger |
getErrorMessageLogger()
Returns the MessageLogger handling the error stream of the process |
MessageLogger |
getInputMessageLogger()
Returns the MessageLogger handling the input stream of the process |
MessageSink |
getOutputMessageSink()
Returns the MessageSink handling the output stream of the process |
protected void |
handleError(java.io.BufferedReader err)
|
protected void |
handleInput(java.io.BufferedReader in)
|
protected void |
handleOutput(java.io.BufferedWriter out)
|
protected void |
handleProcess(java.io.BufferedReader in,
java.io.BufferedWriter out,
java.io.BufferedReader err)
|
protected void |
internalStartProcess(java.lang.String commandToExecute)
|
protected void |
internalStopProcess()
|
protected int |
internalWaitFor()
|
void |
setErrorMessageLogger(MessageLogger errorMessageLogger)
sets the MessageLogger handling the error stream of the process |
void |
setInputMessageLogger(MessageLogger inputMessageLogger)
sets the MessageLogger handling the input stream of the process |
void |
setOutputMessageSink(MessageSink outputMessageSink)
sets the MessageSink handling the output stream of the process |
Methods inherited from class org.objectweb.proactive.core.process.AbstractUniversalProcess |
checkStarted, getCertificateLocation, getCommand, getEnvironment, getHostname, getPrivateKeyLocation, getSecurityFile, getUsername, isFinished, isStarted, setCertificateLocation, setEnvironment, setHostname, setPrivateKeyLocation, setSecurityFile, setUsername, startProcess, stopProcess, toString, toString, waitFor |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface org.objectweb.proactive.core.process.UniversalProcess |
getCertificateLocation, getCommand, getEnvironment, getHostname, getPrivateKeyLocation, getSecurityFile, getUsername, isFinished, isStarted, setCertificateLocation, setEnvironment, setHostname, setPrivateKeyLocation, setSecurityFile, setUsername, startProcess, stopProcess, waitFor |
Field Detail |
protected static org.apache.log4j.Logger clogger
protected static final boolean IS_WINDOWS_SYSTEM
protected java.lang.Process externalProcess
protected MessageLogger inputMessageLogger
protected MessageLogger errorMessageLogger
protected MessageSink outputMessageSink
Constructor Detail |
protected AbstractExternalProcess()
public AbstractExternalProcess(MessageLogger messageLogger)
public AbstractExternalProcess(MessageLogger inputMessageLogger, MessageLogger errorMessageLogger)
public AbstractExternalProcess(MessageLogger inputMessageLogger, MessageLogger errorMessageLogger, MessageSink outputMessageSink)
Method Detail |
public MessageLogger getInputMessageLogger()
ExternalProcess
getInputMessageLogger
in interface ExternalProcess
public MessageLogger getErrorMessageLogger()
ExternalProcess
getErrorMessageLogger
in interface ExternalProcess
public MessageSink getOutputMessageSink()
ExternalProcess
getOutputMessageSink
in interface ExternalProcess
public void setInputMessageLogger(MessageLogger inputMessageLogger)
ExternalProcess
setInputMessageLogger
in interface ExternalProcess
inputMessageLogger
- the handler of the input stream of the processpublic void setErrorMessageLogger(MessageLogger errorMessageLogger)
ExternalProcess
setErrorMessageLogger
in interface ExternalProcess
errorMessageLogger
- the handler of the error stream of the processpublic void setOutputMessageSink(MessageSink outputMessageSink)
ExternalProcess
setOutputMessageSink
in interface ExternalProcess
outputMessageSink
- the handler of the output stream of the processprotected abstract java.lang.String buildCommand()
buildCommand
in class AbstractUniversalProcess
protected java.lang.String buildEnvironmentCommand()
protected java.lang.String buildWindowsEnvironmentCommand()
protected java.lang.String buildUnixEnvironmentCommand()
protected void internalStartProcess(java.lang.String commandToExecute) throws java.io.IOException
internalStartProcess
in class AbstractUniversalProcess
java.io.IOException
protected void internalStopProcess()
internalStopProcess
in class AbstractUniversalProcess
protected int internalWaitFor() throws java.lang.InterruptedException
internalWaitFor
in class AbstractUniversalProcess
java.lang.InterruptedException
protected void handleProcess(java.io.BufferedReader in, java.io.BufferedWriter out, java.io.BufferedReader err)
protected void handleInput(java.io.BufferedReader in)
protected void handleError(java.io.BufferedReader err)
protected void handleOutput(java.io.BufferedWriter out)
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |