edu.isi.pegasus.planner.code.gridstart
Class UserPOSTScript

java.lang.Object
  extended by edu.isi.pegasus.planner.code.gridstart.UserPOSTScript
All Implemented Interfaces:
POSTScript

public class UserPOSTScript
extends Object
implements POSTScript

A user defined post script. By default, the postscript is given the name of the job output file on the submit host, to work upon. Additional arguments to the post script can be specified via properties or profiles. The postscript is only constructed if the job already contains the Dagman profile key passed.

Version:
$Revision: 4507 $
Author:
Karan Vahi vahi@isi.edu

Field Summary
protected  LogManager mLogger
          The LogManager object which is used to log all the messages.
protected  String mPOSTScriptPath
          The path to the user postscript on the submit host.
protected  PegasusProperties mProps
          The object holding all the properties pertaining to Pegasus.
static String SHORT_NAME
          The SHORTNAME for this implementation.
 
Fields inherited from interface edu.isi.pegasus.planner.code.POSTScript
VERSION
 
Constructor Summary
UserPOSTScript()
          The default constructor.
 
Method Summary
 boolean construct(Job job, String key)
          Constructs the postscript that has to be invoked on the submit host after the job has executed on the remote end.
 String getExitCodePath()
          Returns the path to exitcode that is to be used on the kickstart output.
 void initialize(PegasusProperties properties, String path, String submitDir)
          Initialize the POSTScript implementation.
 String shortDescribe()
          Returns a short textual description of the implementing class.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

SHORT_NAME

public static final String SHORT_NAME
The SHORTNAME for this implementation.

See Also:
Constant Field Values

mLogger

protected LogManager mLogger
The LogManager object which is used to log all the messages.


mProps

protected PegasusProperties mProps
The object holding all the properties pertaining to Pegasus.


mPOSTScriptPath

protected String mPOSTScriptPath
The path to the user postscript on the submit host.

Constructor Detail

UserPOSTScript

public UserPOSTScript()
The default constructor.

Method Detail

initialize

public void initialize(PegasusProperties properties,
                       String path,
                       String submitDir)
Initialize the POSTScript implementation.

Specified by:
initialize in interface POSTScript
Parameters:
properties - the PegasusProperties object containing all the properties required by Pegasus.
path - the path to the POSTScript on the submit host.
submitDir - the submit directory where the submit file for the job has to be generated.
Throws:
RuntimeException - in case of path being null.

construct

public boolean construct(Job job,
                         String key)
Constructs the postscript that has to be invoked on the submit host after the job has executed on the remote end. The postscript works on the stdout of the remote job, that has been transferred back to the submit host by Condor.

The postscript is constructed and populated as a profile in the DAGMAN namespace.

Specified by:
construct in interface POSTScript
Parameters:
job - the Job object containing the job description of the job that has to be enabled on the grid.
key - the DAGMan profile key that has to be inserted.
Returns:
boolean true if postscript was generated,else false.

shortDescribe

public String shortDescribe()
Returns a short textual description of the implementing class.

Specified by:
shortDescribe in interface POSTScript
Returns:
short textual description.

getExitCodePath

public String getExitCodePath()
Returns the path to exitcode that is to be used on the kickstart output.

Returns:
the path to the exitcode script to be invoked.


Copyright © 2011 The University of Southern California. All Rights Reserved.