| org.griphyn.cPlanner.transfer.SLS
All known Subclasses: org.griphyn.cPlanner.transfer.sls.Transfer, org.griphyn.cPlanner.transfer.sls.Condor,
SLS | public interface SLS (Code) | | This interface defines the second level staging process, that manages
the transfer of files from the headnode to the worker node temp and back.
author: Karan Vahi version: $Revision: 414 $ |
Field Summary | |
final public static String | VERSION The version associated with the API. |
Method Summary | |
public boolean | doesCondorModifications() Returns a boolean whether the SLS implementation does a condor based
modification or not. | public File | generateSLSInputFile(SubInfo job, String fileName, String submitDir, String headNodeDirectory, String workerNodeDirectory) Generates a second level staging file of the input files to the worker node
directory. | public File | generateSLSOutputFile(SubInfo job, String fileName, String submitDir, String headNodeDirectory, String workerNodeDirectory) Generates a second level staging file of the input files to the worker node
directory. | public String | getSLSInputLFN(SubInfo job) Returns the LFN of sls input file. | public String | getSLSOutputLFN(SubInfo job) Returns the LFN of sls output file. | public void | initialize(PegasusBag bag) Initializes the SLS implementation.
Parameters: bag - the bag of objects. | public String | invocationString(SubInfo job, File slsFile) Constructs a command line invocation for a job, with a given sls file.
The SLS maybe null. | public boolean | modifyJobForFirstLevelStaging(SubInfo job, String submitDir, String slsInputLFN, String slsOutputLFN) Modifies a job for the first level staging to headnode.This is to add
any files that needs to be staged to the head node for a job specific
to the SLS implementation. | public boolean | modifyJobForWorkerNodeExecution(SubInfo job, String headNodeURLPrefix, String headNodeDirectory, String workerNodeDirectory) Modifies a compute job for second level staging. | public boolean | needsSLSInput(SubInfo job) Returns a boolean indicating whether it will an input file for a job
to do the transfers. | public boolean | needsSLSOutput(SubInfo job) Returns a boolean indicating whether it will an output file for a job
to do the transfers. |
VERSION | final public static String VERSION(Code) | | The version associated with the API.
|
doesCondorModifications | public boolean doesCondorModifications()(Code) | | Returns a boolean whether the SLS implementation does a condor based
modification or not. By condor based modification we mean whether it
uses condor specific classads to achieve the second level staging or not.
boolean |
generateSLSInputFile | public File generateSLSInputFile(SubInfo job, String fileName, String submitDir, String headNodeDirectory, String workerNodeDirectory)(Code) | | Generates a second level staging file of the input files to the worker node
directory. It should be consistent with the function needsSLSFile( SubInfo )
Parameters: job - the job for which the file is being created Parameters: submitDir - the submit directory where it has to be written out. Parameters: fileName - the name of the file that needs to be written out. Parameters: headNodeDirectory - the directory on the head node of the compute site. Parameters: workerNodeDirectory - the worker node directory the full path to lof file created, else null if no file is written out. See Also: SLS.needsSLSFile(SubInfo) |
generateSLSOutputFile | public File generateSLSOutputFile(SubInfo job, String fileName, String submitDir, String headNodeDirectory, String workerNodeDirectory)(Code) | | Generates a second level staging file of the input files to the worker node
directory. It should be consistent with the function needsSLSFile( SubInfo )
Parameters: job - the job for which the file is being created Parameters: submitDir - the submit directory where it has to be written out. Parameters: fileName - the name of the file that needs to be written out. Parameters: headNodeDirectory - the directory on the head node of the compute site. Parameters: workerNodeDirectory - the worker node directory the full path to lof file created, else null if no file is written out. See Also: SLS.needsSLSFile(SubInfo) |
getSLSInputLFN | public String getSLSInputLFN(SubInfo job)(Code) | | Returns the LFN of sls input file.
Parameters: job - SubInfo the name of the sls input file. |
getSLSOutputLFN | public String getSLSOutputLFN(SubInfo job)(Code) | | Returns the LFN of sls output file.
Parameters: job - SubInfo the name of the sls input file. |
initialize | public void initialize(PegasusBag bag)(Code) | | Initializes the SLS implementation.
Parameters: bag - the bag of objects. Contains access to catalogs etc. |
invocationString | public String invocationString(SubInfo job, File slsFile)(Code) | | Constructs a command line invocation for a job, with a given sls file.
The SLS maybe null. In the case where SLS impl does not read from a file,
it is advised to create a file in generateSLSXXX methods, and then read
the file in this function and put it on the command line.
Parameters: job - the job that is being sls enabled Parameters: slsFile - the slsFile that is accessible on the worker node. Can be null invocation string |
modifyJobForFirstLevelStaging | public boolean modifyJobForFirstLevelStaging(SubInfo job, String submitDir, String slsInputLFN, String slsOutputLFN)(Code) | | Modifies a job for the first level staging to headnode.This is to add
any files that needs to be staged to the head node for a job specific
to the SLS implementation. If any file needs to be added, a FileTransfer
object should be created and added as an input or an output file.
Parameters: job - the job Parameters: submitDir - the submit directory Parameters: slsInputLFN - the sls input file if required, that is used forstaging in from the head node to worker node directory. Parameters: slsOutputLFN - the sls output file if required, that is usedfor staging in from the head node to worker node directory. boolean |
modifyJobForWorkerNodeExecution | public boolean modifyJobForWorkerNodeExecution(SubInfo job, String headNodeURLPrefix, String headNodeDirectory, String workerNodeDirectory)(Code) | | Modifies a compute job for second level staging.
Parameters: job - the job to be modified. Parameters: headNodeURLPrefix - the url prefix for the server on the headnode Parameters: headNodeDirectory - the directory on the headnode, where the input data isread from and the output data written out. Parameters: workerNodeDirectory - the directory in the worker node tmp boolean indicating whether job was successfully modified or not. |
needsSLSInput | public boolean needsSLSInput(SubInfo job)(Code) | | Returns a boolean indicating whether it will an input file for a job
to do the transfers. Transfer reads from stdin the file transfers that
it needs to do.
Parameters: job - the job being detected. true |
needsSLSOutput | public boolean needsSLSOutput(SubInfo job)(Code) | | Returns a boolean indicating whether it will an output file for a job
to do the transfers. Transfer reads from stdin the file transfers that
it needs to do.
Parameters: job - the job being detected. true |
|
|