Class S3CFG

  • All Implemented Interfaces:
    CredentialHandler

    public class S3CFG
    extends Abstract
    implements CredentialHandler
    A convenience class that allows us to determine the path to the user s3cfg file.
    Version:
    $Revision$
    Author:
    Mats Rynge, Karan Vahi
    • Constructor Summary

      Constructors 
      Constructor Description
      S3CFG()
      The default constructor.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.String getBaseName​(java.lang.String site)
      returns the basename of the path to the local credential
      java.lang.String getDescription()
      Returns the description for the implementing handler
      java.lang.String getEnvironmentVariable​(java.lang.String site)
      Returns the name of the environment variable that needs to be set for the job associated with the credential.
      java.lang.String getLocalPath()
      Returns the path to user cred on the local site.
      java.lang.String getPath​(java.lang.String site)
      Returns the path to S3CFG .
      java.lang.String getProfileKey()
      Returns the env or pegasus profile key that needs to be associated for the credential.
      void initialize​(PegasusBag bag)
      Initializes the credential implementation.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • S3CFG_FILE_VARIABLE

        public static final java.lang.String S3CFG_FILE_VARIABLE
        The name of the environment variable that specifies the path to the s3cfg file.
        See Also:
        Constant Field Values
      • S3CFG_PEGASUS_PROFILE_KEY

        private static final java.lang.String S3CFG_PEGASUS_PROFILE_KEY
      • DESCRIPTION

        private static final java.lang.String DESCRIPTION
        The description
        See Also:
        Constant Field Values
      • mLocalCredentialPath

        private java.lang.String mLocalCredentialPath
        The local path to the credential
    • Constructor Detail

      • S3CFG

        public S3CFG()
        The default constructor.
    • Method Detail

      • initialize

        public void initialize​(PegasusBag bag)
        Initializes the credential implementation. Implementations require access to the logger, properties and the SiteCatalog Store.
        Specified by:
        initialize in interface CredentialHandler
        Overrides:
        initialize in class Abstract
        Parameters:
        bag - the bag of Pegasus objects.
      • getPath

        public java.lang.String getPath​(java.lang.String site)
        Returns the path to S3CFG . The order of preference is as follows - If a S3CFG is specified as a Pegasus Profile in the site catalog - Else the path on the local site
        Specified by:
        getPath in interface CredentialHandler
        Parameters:
        site - the site handle
        Returns:
        the path to S3CFG.S3CFG_FILE_VARIABLE for the site.
      • getLocalPath

        public java.lang.String getLocalPath()
        Returns the path to user cred on the local site. The order of preference is as follows - If a S3CFG.S3CFG_FILE_VARIABLE is specified in the site catalog entry as a Pegasus Profile that is used, else the corresponding env profile for backward support - Else S3CFG.S3CFG_FILE_VARIABLE Pegasus Profile specified in the properties, else the corresponding env profile for backward support - Else the one pointed to by the environment variable S3CFG.S3CFG_FILE_VARIABLE - Else the default path of ~/.pegasus/s3cfg - Else the legacy default path of ~/.s3cfg
        Parameters:
        site - the site catalog entry object.
        Returns:
        the path to user cred.
      • getBaseName

        public java.lang.String getBaseName​(java.lang.String site)
        returns the basename of the path to the local credential
        Specified by:
        getBaseName in interface CredentialHandler
        Parameters:
        site - the site handle
        Returns:
      • getProfileKey

        public java.lang.String getProfileKey()
        Returns the env or pegasus profile key that needs to be associated for the credential.
        Specified by:
        getProfileKey in interface CredentialHandler
        Returns:
        the name of the environment variable.
      • getEnvironmentVariable

        public java.lang.String getEnvironmentVariable​(java.lang.String site)
        Returns the name of the environment variable that needs to be set for the job associated with the credential.
        Specified by:
        getEnvironmentVariable in interface CredentialHandler
        Returns:
        the name of the environment variable.
      • getDescription

        public java.lang.String getDescription()
        Returns the description for the implementing handler
        Specified by:
        getDescription in interface CredentialHandler
        Returns:
        description