|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.griphyn.cPlanner.transfer.implementation.Abstract
org.griphyn.cPlanner.transfer.implementation.AbstractMultipleFTPerXFERJob
org.griphyn.cPlanner.transfer.implementation.SRM
public class SRM
The implementation that is used to create transfer jobs that callout to the SRMCP client, that can transfer files to and from a SRM server.
In order to use the transfer implementation implemented by this class,
- the property pegasus.transfer.*.impl must be set to value SRM.
There should be an entry in the transformation catalog with the fully qualified
name as SRM::srmcp for all the sites where workflow is run,
or on the local site in case of third party transfers.
The arguments with which the client is invoked can be specified
- by specifying the property pegasus.transfer.arguments
- associating the VDS profile key transfer.arguments
| Field Summary | |
|---|---|
static String |
DERIVATION_NAME
The name of the underlying derivation. |
static String |
DERIVATION_NAMESPACE
The derivation namespace for for the transfer job. |
static String |
DERIVATION_VERSION
The derivation version number for the transfer job. |
static String |
DESCRIPTION
A short description of the transfer implementation. |
private static String |
NEW_FILE_URL_SCHEME
The new file URL scheme that replaces the old one. |
private static String |
OLD_FILE_URL_SCHEME
The old file URL scheme that needs to be replaced. |
static String |
TRANSFORMATION_NAME
The name of the underlying transformation that is queried for in the Transformation Catalog. |
static String |
TRANSFORMATION_NAMESPACE
The transformation namespace for the transfer job. |
static String |
TRANSFORMATION_VERSION
The version number for the transfer job. |
| Fields inherited from class org.griphyn.cPlanner.transfer.implementation.Abstract |
|---|
CHANGE_XBIT_TRANSFORMATION, mDisabledChmodSites, mLocalUserProxy, mLocalUserProxyBasename, mLogger, mPOptions, mProps, mRefiner, mSCHandle, mTCHandle, NOOP_PREFIX, SET_XBIT_PREFIX, XBIT_DERIVATION_NS, XBIT_DERIVATION_VERSION, XBIT_TRANSFORMATION_NS, XBIT_TRANSFORMATION_VERSION |
| Fields inherited from interface org.griphyn.cPlanner.transfer.Implementation |
|---|
TRANSFER_UNIVERSE, VERSION |
| Constructor Summary | |
|---|---|
SRM(PegasusProperties properties,
PlannerOptions options)
The overloaded constructor, that is called by the Factory to load the class. |
|
| Method Summary | |
|---|---|
boolean |
doesPreserveXBit()
Returns a boolean indicating whether the transfer protocol being used by the implementation preserves the X Bit or not while staging. |
protected String |
generateArgumentString(TransferJob job)
Constructs the arguments to the transfer executable that need to be passed to the executable referred to in this transfer mode. |
protected String |
getCompleteTCName()
Returns the complete name for the transformation. |
protected String |
getDerivationName()
Returns the logical name of the derivation that this implementation refers to. |
protected String |
getDerivationNamespace()
Returns the namespace of the derivation that this implementation refers to. |
protected String |
getDerivationVersion()
Returns the version of the derivation that this implementation refers to. |
String |
getDescription()
Returns a textual description of the transfer implementation. |
protected List |
getEnvironmentVariables(String site)
Returns the environment profiles that are required for the default entry to sensibly work. |
TransformationCatalogEntry |
getTransformationCatalogEntry(String siteHandle)
Retrieves the transformation catalog entry for the executable that is being used to transfer the files in the implementation. |
void |
postProcess(TransferJob job)
Makes sure the stdin is transferred by the Condor File Transfer Mechanism. |
private String |
sanitizeURL(String url)
Method that sanitizes file URL's to match with the SRM client. |
boolean |
useThirdPartyTransferAlways()
Return a boolean indicating whether the transfers to be done always in a third party transfer mode. |
protected void |
writeJumboStdIn(FileWriter writer,
Collection files)
Writes to a FileWriter stream the input for the SRM job. |
| Methods inherited from class org.griphyn.cPlanner.transfer.implementation.AbstractMultipleFTPerXFERJob |
|---|
createTransferJob, defaultTCEntry, prepareSTDIN |
| Methods inherited from class org.griphyn.cPlanner.transfer.implementation.Abstract |
|---|
addSetXBitJobs, addSetXBitJobs, addSetXBitJobs, applyPriority, checkAndTransferProxy, construct, createNoOPJob, createSetXBitJob, determineDisabledChmodSites, disableChmodJobCreation, getNOOPJobName, getPathToUserProxy, getPriority, getSetXBitJobName, setRefiner |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static final String TRANSFORMATION_NAMESPACE
public static final String TRANSFORMATION_NAME
public static final String TRANSFORMATION_VERSION
public static final String DERIVATION_NAMESPACE
public static final String DERIVATION_NAME
public static final String DERIVATION_VERSION
public static final String DESCRIPTION
private static final String OLD_FILE_URL_SCHEME
private static final String NEW_FILE_URL_SCHEME
| Constructor Detail |
|---|
public SRM(PegasusProperties properties,
PlannerOptions options)
properties - the properties object.options - the options passed to the Planner.| Method Detail |
|---|
protected void writeJumboStdIn(FileWriter writer,
Collection files)
throws Exception
writeJumboStdIn in class AbstractMultipleFTPerXFERJobwriter - the writer to the stdin file.files - Collection of FileTransfer objects containing
the information about sourceam fin and destURL's.
Exceptionprotected String generateArgumentString(TransferJob job)
generateArgumentString in class AbstractMultipleFTPerXFERJobjob - the object containing the transfer node.
public void postProcess(TransferJob job)
postProcess in class AbstractMultipleFTPerXFERJobjob - the TransferJob that has been created.public boolean doesPreserveXBit()
public boolean useThirdPartyTransferAlways()
A value of false does not preclude third party transfers. They still can be done, by setting the property "pegasus.transfer.*.thirdparty.sites".
PegasusProperties.getThirdPartySites(String)public String getDescription()
public TransformationCatalogEntry getTransformationCatalogEntry(String siteHandle)
siteHandle - the handle of the site where the transformation is
to be searched.
protected List getEnvironmentVariables(String site)
getEnvironmentVariables in class AbstractMultipleFTPerXFERJobsite - the site where the job is going to run.
protected String getCompleteTCName()
getCompleteTCName in class AbstractMultipleFTPerXFERJobprotected String getDerivationNamespace()
getDerivationNamespace in class AbstractMultipleFTPerXFERJobprotected String getDerivationName()
getDerivationName in class AbstractMultipleFTPerXFERJobprotected String getDerivationVersion()
getDerivationVersion in class AbstractMultipleFTPerXFERJobprivate String sanitizeURL(String url)
url - the URL to be santized.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||