|
|||||||||||
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 | +--org.objectweb.proactive.core.process.AbstractExternalProcessDecorator | +--org.objectweb.proactive.core.process.prun.PrunSubProcess
The PrunSubProcess class is able to start any class, of the ProActive library, on a cluster managed by PBS prtocol. An instance of this class can be coupled for instance with RlLoginProcess or SSHProcess classes in order to log into the cluster's front end with rlogin or ssh and then to run a job with PBSBSubProcess.
For instance:
.............. PBSBSubProcess PBS = new PBSBSubProcess(new SimpleExternalProcess("ls -lsa")); RLoginProcess p = new RLoginProcess(PBS, false); p.setHostname("cluster_front_end_name"); p.startProcess(); ...............
Nested Class Summary | |
class |
PrunSubProcess.ParserMessageLogger
Implementation of a MessageLogger that look for the jobID of the launched job |
Nested classes inherited from class org.objectweb.proactive.core.process.AbstractExternalProcessDecorator |
AbstractExternalProcessDecorator.CompositeMessageLogger, AbstractExternalProcessDecorator.CompositeMessageSink |
Nested classes inherited from class org.objectweb.proactive.core.process.AbstractExternalProcess |
AbstractExternalProcess.NullMessageLogger, AbstractExternalProcess.ProcessInputHandler, AbstractExternalProcess.ProcessOutputHandler, AbstractExternalProcess.SimpleMessageSink, AbstractExternalProcess.StandardOutputMessageLogger |
Field Summary | |
protected java.lang.String |
bookingDuration
|
protected static java.lang.String |
DEFAULT_BOOKING_DURATION
|
protected static java.lang.String |
DEFAULT_HOSTS_NUMBER
|
protected static java.lang.String |
DEFAULT_PROCESSOR_NUMBER
|
static java.lang.String |
DEFAULT_PRUNPATH
|
protected java.lang.String |
hostList
|
protected java.lang.String |
hosts
|
protected java.lang.String |
interactive
|
protected int |
jobID
|
protected java.lang.String |
outputFile
|
protected java.lang.String |
processorPerNode
|
protected java.lang.String |
queueName
|
Fields inherited from class org.objectweb.proactive.core.process.AbstractExternalProcessDecorator |
targetProcess |
Fields inherited from class org.objectweb.proactive.core.process.AbstractExternalProcess |
clogger, errorMessageLogger, externalProcess, inputMessageLogger, IS_WINDOWS_SYSTEM, 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.ExternalProcessDecorator |
APPEND_TO_COMMAND_COMPOSITION, GIVE_COMMAND_AS_PARAMETER, SEND_TO_OUTPUT_STREAM_COMPOSITION |
Fields inherited from interface org.objectweb.proactive.core.process.UniversalProcess |
logger |
Constructor Summary | |
PrunSubProcess()
Creates a new PBSBsubProcess Used with XML Descriptors |
|
PrunSubProcess(ExternalProcess targetProcess)
Creates a new PBSBsubProcess |
Method Summary | |
static ExternalProcess |
buildBKillProcess(int jobID)
Builds bdel command and encapsulates it in a process |
protected java.lang.String |
buildCommand()
|
java.lang.String |
getBookingDuration()
Return the booking duration of the cluster's nodes. |
java.lang.String |
getHostList()
Returns the hostList value of this process. |
java.lang.String |
getHostsNumber()
Returns the number of nodes requested for the job |
int |
getJobID()
Returns the id of the job associated to this process |
java.lang.String |
getOutputFile()
|
java.lang.String |
getProcessorPerNodeNumber()
|
java.lang.String |
getQueueName()
Returns the name of the queue where the job was launched |
protected java.lang.String |
internalBuildCommand()
|
protected void |
internalStartProcess(java.lang.String command)
|
static void |
main(java.lang.String[] args)
|
protected java.lang.String |
parseHostname(java.lang.String message)
return the list of the hostnames on which the job is running the message should be in the form : host1/processor ... hostn/processor |
protected void |
sendJobDetailsCommand()
|
protected java.lang.String[] |
separateCommandFromOptions(java.lang.String s)
|
void |
setBookingDuration(java.lang.String d)
Set the booking duration of the cluster's nodes. |
void |
setErrorMessageLogger(MessageLogger errorMessageLogger)
sets the MessageLogger handling the error stream of the process |
void |
setHostList(java.lang.String hostList)
Sets the value of the hostList parameter with the given value |
void |
setHostsNumber(java.lang.String hosts)
Sets the number of nodes requested when running the job |
void |
setInteractive(java.lang.String interactive)
Allows to launch this BsubProcess with -I (interactive option) |
void |
setOutputFile(java.lang.String string)
Set the output file to be passed to prun using the -o option |
void |
setOutputMessageSink(MessageSink outputMessageSink)
sets the MessageSink handling the output stream of the process |
void |
setProcessorPerNodeNumber(java.lang.String processorPerNode)
Sets the number of nodes requested when running the job |
void |
setQueueName(java.lang.String queueName)
Sets the value of the queue where the job will be launched. |
Methods inherited from class org.objectweb.proactive.core.process.AbstractExternalProcessDecorator |
getCompositionType, getTargetProcess, handleOutput, setCompositionType, setTargetProcess, toString |
Methods inherited from class org.objectweb.proactive.core.process.AbstractExternalProcess |
buildEnvironmentCommand, buildUnixEnvironmentCommand, buildWindowsEnvironmentCommand, getErrorMessageLogger, getInputMessageLogger, getOutputMessageSink, handleError, handleInput, handleProcess, internalStopProcess, internalWaitFor, setInputMessageLogger |
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, 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.ExternalProcess |
getErrorMessageLogger, getInputMessageLogger, getOutputMessageSink, setInputMessageLogger |
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 |
public static final java.lang.String DEFAULT_PRUNPATH
protected static final java.lang.String DEFAULT_HOSTS_NUMBER
protected static final java.lang.String DEFAULT_PROCESSOR_NUMBER
protected static final java.lang.String DEFAULT_BOOKING_DURATION
protected int jobID
protected java.lang.String queueName
protected java.lang.String hostList
protected java.lang.String hosts
protected java.lang.String processorPerNode
protected java.lang.String bookingDuration
protected java.lang.String interactive
protected java.lang.String outputFile
Constructor Detail |
public PrunSubProcess()
public PrunSubProcess(ExternalProcess targetProcess)
targetProcess
- The target process associated to this process. The target process
represents the process that will be launched with the qsub commandMethod Detail |
public void setErrorMessageLogger(MessageLogger errorMessageLogger)
ExternalProcess
setErrorMessageLogger
in interface ExternalProcess
setErrorMessageLogger
in class AbstractExternalProcess
errorMessageLogger
- the handler of the error stream of the processpublic void setOutputMessageSink(MessageSink outputMessageSink)
ExternalProcess
setOutputMessageSink
in interface ExternalProcess
setOutputMessageSink
in class AbstractExternalProcess
outputMessageSink
- the handler of the output stream of the processpublic static ExternalProcess buildBKillProcess(int jobID)
jobID
- The id of the job previously launched
public static void main(java.lang.String[] args)
public java.lang.String getOutputFile()
public void setOutputFile(java.lang.String string)
string
- public int getJobID()
public java.lang.String getQueueName()
public void setQueueName(java.lang.String queueName)
queueName
- public void setHostList(java.lang.String hostList)
hostList
- public java.lang.String getHostList()
public void setBookingDuration(java.lang.String d)
public java.lang.String getBookingDuration()
protected java.lang.String parseHostname(java.lang.String message)
message
-
public void setInteractive(java.lang.String interactive)
interactive
- true for -I option false otherwisepublic void setHostsNumber(java.lang.String hosts)
public void setProcessorPerNodeNumber(java.lang.String processorPerNode)
public java.lang.String getHostsNumber()
public java.lang.String getProcessorPerNodeNumber()
protected java.lang.String internalBuildCommand()
internalBuildCommand
in class AbstractExternalProcessDecorator
protected void sendJobDetailsCommand()
protected void internalStartProcess(java.lang.String command) throws java.io.IOException
internalStartProcess
in class AbstractExternalProcessDecorator
java.io.IOException
protected java.lang.String buildCommand()
buildCommand
in class AbstractExternalProcessDecorator
protected java.lang.String[] separateCommandFromOptions(java.lang.String s)
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |