|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.ggf.drmaa.JobInfo
The class represents the status and usage information for a finished job. It contains the job's id, the job's exit status, and a table indicating the amount of resources used during the execution of the job. The resource table contents are dependent on the DRM.
Example
public static void main (String[] args) { SessionFactory factory = SessionFactory.getFactory (); Session session = factory.getSession (); try { session.init (null); JobTemplate jt = session.createJobTemplate (); jt.setRemoteCommand ("sleeper.sh"); jt.setArgs (new String[] {"5"}); String id = session.runJob (jt); session.deleteJobTemplate (jt); JobInfo info = session.wait (id, Session.TIMEOUT_WAIT_FOREVER); // Interrogate job exit status if (info.wasAborted ()) { System.out.println("Job " + info.getJobId () + " never ran"); } else if (info.hasExited ()) { System.out.println("Job " + info.getJobId () + " finished regularly with exit status " + info.getExitStatus ()); } else if (info.hasSignaled ()) { System.out.println("Job " + info.getJobId () + " finished due to signal " + info.getTerminatingSignal ()); if (info.hasCoreDump()) { System.out.println("A core dump is available."); } } else { System.out.println("Job " + info.getJobId () + " finished with unclear conditions"); } System.out.println ("\nJob Usage:"); Map rmap = info.getResourceUsage (); Iterator i = rmap.keySet ().iterator (); while (i.hasNext ()) { String name = (String)i.next (); String value = (String)rmap.get (name); System.out.println(" " + name + "=" + value); } session.exit (); } catch (DrmaaException e) { System.out.println ("Error: " + e.getMessage ()); } }
Field Summary | |
protected java.lang.String |
jobId
the id of the job this class describes |
protected java.util.Map |
resourceUsage
a Map of resource usage data |
protected int |
status
the exit status code for the job |
Constructor Summary | |
protected |
JobInfo(java.lang.String jobId,
int status,
java.util.Map resourceUsage)
Creates a new instance of JobInfo |
Method Summary | |
abstract int |
getExitStatus()
If hasExited() returns true, this function returns the exit code that the job passed to _exit() (see exit(2)) or exit(3C)), or the value that the child process returned from main. |
java.lang.String |
getJobId()
Get the job id. |
java.util.Map |
getResourceUsage()
Get the resource usage data. |
abstract java.lang.String |
getTerminatingSignal()
If hasSignaled() returns true , this returns a representation of the
signal that caused the termination of the job. |
abstract boolean |
hasCoreDump()
If hasSignaled() returns true , this function returns true
if a core image of the terminated job was created. |
abstract boolean |
hasExited()
Returns true if the job terminated normally. |
abstract boolean |
hasSignaled()
Returns true if the job terminated due to the receipt
of a signal. |
abstract boolean |
wasAborted()
Returns true if the job ended before entering the running state. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
protected java.lang.String jobId
protected int status
protected java.util.Map resourceUsage
Constructor Detail |
protected JobInfo(java.lang.String jobId, int status, java.util.Map resourceUsage)
jobId
- the id of the jobstatus
- the status code of the jobresourceUsage
- the resource usage data for the job. No copy will be
made. Because no copy is made, null
should not be pass in,
as this will cause getResourceUsage() to throw a NullPointer.Method Detail |
public java.lang.String getJobId()
public java.util.Map getResourceUsage()
public abstract boolean hasExited()
true
if the job terminated normally.
False
can also indicate that
although the job has terminated normally an exit status is not available
or that it is not known whether the job terminated normally. In both
cases getExitStatus() doesn't provide exit status information.
True
indicates more detailed diagnosis can be provided
by means of getExitStatus().
public abstract int getExitStatus()
public abstract boolean hasSignaled()
true
if the job terminated due to the receipt
of a signal. False
can also indicate that although the
job has terminated due to the receipt of a signal the signal is not
available or that it is not known whether the job terminated due to
the receipt of a signal. In both cases getTerminatingSignal() does not
provide signal information.
public abstract java.lang.String getTerminatingSignal()
true
, this returns a representation of the
signal that caused the termination of the job. For signals declared by
POSIX, the symbolic names are be returned (e.g., SIGABRT, SIGALRM).
public abstract boolean hasCoreDump()
true
, this function returns true
if a core image of the terminated job was created.
public abstract boolean wasAborted()
true
if the job ended before entering the running state.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |