| 
 | ||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.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 ());
   }
 }
 
| 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 returnstrueif a core image of the terminated job was created. | 
| abstract  boolean | hasExited()Returns trueif the job terminated normally. | 
| abstract  boolean | hasSignaled()Returns trueif the job terminated due to the receipt
 of a signal. | 
| abstract  boolean | wasAborted()Returns trueif the job ended before entering the running state. | 
| Methods inherited from class java.lang.Object | 
| equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
| 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 | |||||||||