Class 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 transfers

    In 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
    • 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 interface Implementation
        Overrides:
        useThirdPartyTransferAlways in class GUC
        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 class GUC
        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 class GUC
        Parameters:
        job - the TransferJob that has been created.