| java.lang.Object org.griphyn.cPlanner.transfer.implementation.Abstract org.griphyn.cPlanner.transfer.implementation.AbstractMultipleFTPerXFERJob org.griphyn.cPlanner.transfer.implementation.T2
T2 | public class T2 extends AbstractMultipleFTPerXFERJob (Code) | | The implementation that creates transfer jobs referring to the T2
executable distributed with the VDS. T2 extends upon the multiple transfers
provided by the transfer executable, providing for conditional/optional transfers,
and retry in case of url if alternative source or destinations are specified.
The T2 client is generally invoked on the remote execution sites, unless the
user uses the thirdparty transfer option, in which case the T2 is invoked on
the submit host. Hence there should be an entry in the transformation catalog
for logical transformation T2 at the execution sites.
T2 is distributed as part of the VDS worker package and can be found at
$PEGASUS_HOME/bin/T2.
It leads to the creation of the setup chmod jobs to the workflow, that appear
as parents to compute jobs in case the transfer implementation does not
preserve the X bit on the file being transferred. This is required for
staging of executables as part of the workflow. The setup jobs are only added
as children to the stage in jobs.
In order to use the transfer implementation implemented by this class,
- the property pegasus.transfer.*.impl must be set to value T2.
There should be an entry in the transformation catalog with the fully qualified
name as pegasus::T2 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
author: Karan Vahi version: $Revision: 145 $ |
Method Summary | |
public 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) It constructs the arguments to the transfer executable that need to be passed
to the executable referred to in this transfer mode.
Parameters: job - the object containing the transfer node. | 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. | public 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.
Parameters: site - the site where the job is going to run. | public TransformationCatalogEntry | getTransformationCatalogEntry(String siteHandle) Retrieves the transformation catalog entry for the executable that is
being used to transfer the files in the implementation.
Parameters: siteHandle - the handle of the site where the transformation isto be searched. | public 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 stdin which T2 takes via standard input. |
DERIVATION_NAME | final public static String DERIVATION_NAME(Code) | | The name of the underlying derivation.
|
DERIVATION_NAMESPACE | final public static String DERIVATION_NAMESPACE(Code) | | The derivation namespace for for the transfer job.
|
DERIVATION_VERSION | final public static String DERIVATION_VERSION(Code) | | The derivation version number for the transfer job.
|
DESCRIPTION | final public static String DESCRIPTION(Code) | | A short description of the transfer implementation.
|
TRANSFORMATION_NAME | final public static String TRANSFORMATION_NAME(Code) | | The name of the underlying transformation that is queried for in the
Transformation Catalog.
|
TRANSFORMATION_NAMESPACE | final public static String TRANSFORMATION_NAMESPACE(Code) | | The transformation namespace for the transfer job.
|
TRANSFORMATION_VERSION | final public static String TRANSFORMATION_VERSION(Code) | | The version number for the transfer job.
|
mNumOfTXProcesses | protected String mNumOfTXProcesses(Code) | | The number of g-u-c processes that are spawned to transfer the files in
one transfer job.
|
mNumOfTXStreams | protected String mNumOfTXStreams(Code) | | The number of streams that each g-u-c process opens to do the ftp transfer.
|
mUseForce | protected boolean mUseForce(Code) | | Whether to use force option for the transfer executable or not.
|
T2 | public T2(PegasusProperties properties, PlannerOptions options)(Code) | | The overloaded constructor, that is called by the Factory to load the
class.
Parameters: properties - the properties object. Parameters: options - the options passed to the Planner. |
doesPreserveXBit | public boolean doesPreserveXBit()(Code) | | Returns a boolean indicating whether the transfer protocol being used by
the implementation preserves the X Bit or not while staging.
boolean |
generateArgumentString | protected String generateArgumentString(TransferJob job)(Code) | | It constructs the arguments to the transfer executable that need to be passed
to the executable referred to in this transfer mode.
Parameters: job - the object containing the transfer node. the argument string |
getCompleteTCName | protected String getCompleteTCName()(Code) | | Returns the complete name for the transformation.
the complete name. |
getDerivationName | protected String getDerivationName()(Code) | | Returns the logical name of the derivation that this implementation
refers to.
the name of the derivation. |
getDerivationNamespace | protected String getDerivationNamespace()(Code) | | Returns the namespace of the derivation that this implementation
refers to.
the namespace of the derivation. |
getDerivationVersion | protected String getDerivationVersion()(Code) | | Returns the version of the derivation that this implementation
refers to.
the version of the derivation. |
getDescription | public String getDescription()(Code) | | Returns a textual description of the transfer implementation.
a short textual description |
getEnvironmentVariables | protected List getEnvironmentVariables(String site)(Code) | | Returns the environment profiles that are required for the default
entry to sensibly work.
Parameters: site - the site where the job is going to run. List of environment variables, else null in case where therequired environment variables could not be found. |
getTransformationCatalogEntry | public TransformationCatalogEntry getTransformationCatalogEntry(String siteHandle)(Code) | | Retrieves the transformation catalog entry for the executable that is
being used to transfer the files in the implementation.
Parameters: siteHandle - the handle of the site where the transformation isto be searched. the transformation catalog entry if found, else null. |
useThirdPartyTransferAlways | public boolean useThirdPartyTransferAlways()(Code) | | 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".
boolean indicating whether to always use third party transfersor not. See Also: PegasusProperties.getThirdPartySites(String) |
Methods inherited from org.griphyn.cPlanner.transfer.implementation.Abstract | protected boolean addSetXBitJobs(SubInfo computeJob, SubInfo txJob, Collection execFiles)(Code)(Java Doc) public boolean addSetXBitJobs(SubInfo computeJob, String txJobName, Collection execFiles, int transferClass)(Code)(Java Doc) public boolean addSetXBitJobs(SubInfo computeJob, String txJobName, Collection execFiles, int transferClass, int xbitIndex)(Code)(Java Doc) public void applyPriority(TransferJob job)(Code)(Java Doc) public boolean checkAndTransferProxy(TransferJob job)(Code)(Java Doc) protected void construct(SubInfo job, String key, String value)(Code)(Java Doc) public SubInfo createNoOPJob(String name)(Code)(Java Doc) protected SubInfo createSetXBitJob(FileTransfer file, String name)(Code)(Java Doc) protected Set determineDisabledChmodSites(String sites)(Code)(Java Doc) protected boolean disableChmodJobCreation(String site)(Code)(Java Doc) public String getNOOPJobName(String name, int counter)(Code)(Java Doc) protected String getPathToUserProxy()(Code)(Java Doc) protected String getPriority(TransferJob job)(Code)(Java Doc) public String getSetXBitJobName(String name, int counter)(Code)(Java Doc) public void setRefiner(Refiner refiner)(Code)(Java Doc)
|
|
|