Class TPTGUC
- java.lang.Object
-
- edu.isi.pegasus.planner.transfer.implementation.Abstract
-
- edu.isi.pegasus.planner.transfer.implementation.AbstractMultipleFTPerXFERJob
-
- edu.isi.pegasus.planner.transfer.implementation.GUC
-
- edu.isi.pegasus.planner.transfer.implementation.TPTGUC
-
- All Implemented Interfaces:
Implementation
,MultipleFTPerXFERJob
public class TPTGUC extends GUC
The implementation that is used to create transfer jobs that callout to the new globus-url-copy client, that support multiple file transfersIn order to use the transfer implementation implemented by this class,
- the property pegasus.transfer.*.impl must be set to value TPTGUC.
There should be an entry in the transformation catalog with the fully qualified name as
globus::guc
for all the sites where workflow is run, or on the local site in case of third party transfers. Pegasus can automatically construct the path to the globus-url-copy client, if the environment variable GLOBUS_LOCATION is specified in the site catalog for the site.The arguments with which the client is invoked can be specified
- by specifying the property pegasus.transfer.arguments - associating the Pegasus profile key transfer.arguments
- Version:
- $Revision$
- Author:
- Karan Vahi
-
-
Field Summary
-
Fields inherited from class edu.isi.pegasus.planner.transfer.implementation.GUC
DERIVATION_NAME, DERIVATION_NAMESPACE, DERIVATION_VERSION, DESCRIPTION, mNumOfTXStreams, mUseForce, TRANSFORMATION_NAME, TRANSFORMATION_NAMESPACE, TRANSFORMATION_VERSION
-
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
Constructors Constructor Description TPTGUC(PegasusBag bag)
The overloaded constructor, that is called by the Factory to load the class.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected java.lang.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.void
postProcess(TransferJob job)
Makes sure the stdin is transferred by the Condor File Transfer Mechanism.boolean
useThirdPartyTransferAlways()
Return a boolean indicating whether the transfers to be done always in a third party transfer mode.-
Methods inherited from class edu.isi.pegasus.planner.transfer.implementation.GUC
defaultTCEntry, doesPreserveXBit, getCompleteTCName, getDerivationName, getDerivationNamespace, getDerivationVersion, getDescription, getEnvironmentVariables, getTransformationCatalogEntry, writeStdInAndAssociateCredentials
-
Methods inherited from class edu.isi.pegasus.planner.transfer.implementation.AbstractMultipleFTPerXFERJob
createTransferJob, defaultTCEntry, prepareSTDINAndAssociateCredentials
-
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
-
-
-
-
Constructor Detail
-
TPTGUC
public TPTGUC(PegasusBag bag)
The overloaded constructor, that is called by the Factory to load the class.- Parameters:
bag
- the bag of Pegasus initialization objects.
-
-
Method Detail
-
useThirdPartyTransferAlways
public boolean useThirdPartyTransferAlways()
Return a boolean indicating whether the transfers to be done always in a third party transfer mode. A value of false, results in the direct or peer to peer transfers being done.A value of false does not preclude third party transfers. They still can be done, by setting the property "pegasus.transfer.*.thirdparty.sites".
- Specified by:
useThirdPartyTransferAlways
in interfaceImplementation
- Overrides:
useThirdPartyTransferAlways
in classGUC
- Returns:
- true always
- See Also:
PegasusProperties.getThirdPartySites(String)
-
generateArgumentString
protected java.lang.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.- Overrides:
generateArgumentString
in classGUC
- Parameters:
job
- the object containing the transfer node.- Returns:
- the argument string
-
postProcess
public void postProcess(TransferJob job)
Makes sure the stdin is transferred by the Condor File Transfer Mechanism. In addition, the stdin is set to null, after the file has been marked for transfer by Condor File Transfer Mechanism.- Overrides:
postProcess
in classGUC
- Parameters:
job
- theTransferJob
that has been created.
-
-