|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectedu.isi.pegasus.planner.transfer.implementation.Abstract
edu.isi.pegasus.planner.transfer.implementation.AbstractMultipleFTPerXFERJob
public abstract class AbstractMultipleFTPerXFERJob
An abstract implementation for implementations that can handle multiple file transfers in a single file transfer job.
| Field Summary |
|---|
| Fields inherited from class edu.isi.pegasus.planner.transfer.implementation.Abstract |
|---|
CHANGE_XBIT_TRANSFORMATION, mAddNodesForSettingXBit, mChmodDisabledForAllSites, mDisabledChmodSites, mLocalIrodsEnv, mLocalIrodsEnvBasename, mLocalS3cfg, mLocalS3cfgBasename, mLocalUserProxy, mLocalUserProxyBasename, mLogger, mPOptions, mProps, mRefiner, mSiteStore, mTCHandle, NOOP_PREFIX, SET_XBIT_PREFIX, XBIT_DERIVATION_NS, XBIT_DERIVATION_VERSION, XBIT_EXECUTABLE_BASENAME, XBIT_TRANSFORMATION_NS, XBIT_TRANSFORMATION_VERSION |
| Fields inherited from interface edu.isi.pegasus.planner.transfer.Implementation |
|---|
TRANSFER_UNIVERSE, VERSION |
| Constructor Summary | |
|---|---|
AbstractMultipleFTPerXFERJob(PegasusBag bag)
The overloaded constructor, that is called by the Factory to load the class. |
|
| Method Summary | |
|---|---|
TransferJob |
createTransferJob(Job job,
String site,
Collection files,
Collection execFiles,
String txJobName,
int jobClass)
Constructs a general transfer job that handles multiple transfers per transfer job. |
protected TransformationCatalogEntry |
defaultTCEntry(String namespace,
String name,
String version,
String executableBasename,
String site)
Returns a default TC entry to be used in case entry is not found in the transformation catalog. |
protected abstract String |
generateArgumentString(TransferJob job)
It constructs the arguments to the transfer executable that need to be passed to the executable referred to in this transfer mode. |
protected abstract String |
getCompleteTCName()
Returns the complete name for the transformation that the implementation is using.. |
protected abstract String |
getDerivationName()
Returns the logical name of the derivation that this implementation refers to. |
protected abstract String |
getDerivationNamespace()
Returns the namespace of the derivation that this implementation refers to. |
protected abstract String |
getDerivationVersion()
Returns the version of the derivation that this implementation refers to. |
protected abstract List<Profile> |
getEnvironmentVariables(String site)
Returns the environment profiles that are required for the default entry to sensibly work. |
void |
postProcess(TransferJob job)
An optional method that allows the derived classes to do their own post processing on the the transfer job before it is returned to the calling module. |
protected String |
prepareSTDINAndAssociateCredentials(TransferJob job,
Collection files,
String stagingSite,
int jobClass)
Prepares the stdin for the transfer job. |
protected abstract void |
writeStdInAndAssociateCredentials(TransferJob job,
FileWriter stdIn,
Collection files,
String stagingSite,
int jobClass)
Writes to a FileWriter stream the stdin which goes into the magic script via standard input |
| Methods inherited from class edu.isi.pegasus.planner.transfer.implementation.Abstract |
|---|
addSetXBitJobs, addSetXBitJobs, addSetXBitJobs, applyPriority, checkAndTransferIrodsEnvFile, checkAndTransferProxy, construct, createNoOPJob, createSetXBitJob, createSetXBitJob, createSetXBitJob, determineDisabledChmodSites, disableChmodJobCreation, getNOOPJobName, getPriority, getSetXBitJobName, setRefiner |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface edu.isi.pegasus.planner.transfer.Implementation |
|---|
doesPreserveXBit, getDescription, getTransformationCatalogEntry, useThirdPartyTransferAlways |
| Constructor Detail |
|---|
public AbstractMultipleFTPerXFERJob(PegasusBag bag)
bag - the bag of Pegasus initialization objects| Method Detail |
|---|
public TransferJob createTransferJob(Job job,
String site,
Collection files,
Collection execFiles,
String txJobName,
int jobClass)
createTransferJob in interface Implementationjob - the Job object for the job, in relation to which
the transfer node is being added. Either the transfer
node can be transferring this jobs input files to
the execution pool, or transferring this job's output
files to the output pool.site - the site where the transfer job should run.files - collection of FileTransfer objects
representing the data files and staged executables to be
transferred.execFiles - subset collection of the files parameter, that identifies
the executable files that are being transferred.txJobName - the name of transfer node.jobClass - the job Class for the newly added job. Can be one of the
following:
stage-in
stage-out
inter-pool transfer
stage-in worker transfer
protected TransformationCatalogEntry defaultTCEntry(String namespace,
String name,
String version,
String executableBasename,
String site)
namespace - the namespace of the transfer transformationname - the logical name of the transfer transformationversion - the version of the transfer transformationexecutableBasename - the basename of the executablesite - the site for which the default entry is required.
protected abstract List<Profile> getEnvironmentVariables(String site)
site - the site where the job is going to run.
public void postProcess(TransferJob job)
job - the TransferJob that has been created.
protected String prepareSTDINAndAssociateCredentials(TransferJob job,
Collection files,
String stagingSite,
int jobClass)
throws Exception
name - the name of the transfer job.files - Collection of FileTransfer objects containing
the information about sourceam fin and destURL's.stagingSite - the site where the data will be populated by first
level staging jobs.jobClass - the job Class for the newly added job. Can be one of the
following:
stage-in
stage-out
inter-pool transfer
Exception - in case of error.protected abstract String getDerivationNamespace()
protected abstract String getDerivationName()
protected abstract String getDerivationVersion()
protected abstract String generateArgumentString(TransferJob job)
job - the object containing the transfer node.
protected abstract void writeStdInAndAssociateCredentials(TransferJob job,
FileWriter stdIn,
Collection files,
String stagingSite,
int jobClass)
throws Exception
job - the transfer job .stdIn - the writer to the stdin file.files - Collection of FileTransfer objects containing
the information about sourceam fin and destURL's.stagingSite - the site where the data will be populated by first
level staging jobs.jobClass - the job Class for the newly added job. Can be one of the
following:
stage-in
stage-out
inter-pool transfer
Exceptionprotected abstract String getCompleteTCName()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||