Class SWIFT_PING.SwiftClient

  • Enclosing class:
    SWIFT_PING

    protected static class SWIFT_PING.SwiftClient
    extends java.lang.Object
    A thread safe Swift client
    • Constructor Detail

      • SwiftClient

        public SwiftClient​(SWIFT_PING.Authenticator authenticator,
                           Log l)
        Constructor
        Parameters:
        authenticator - Swift auth provider
    • Method Detail

      • authenticate

        public void authenticate()
                          throws java.lang.Exception
        Authenticate
        Throws:
        java.lang.Exception
      • deleteObject

        public void deleteObject​(java.lang.String containerName,
                                 java.lang.String objectName)
                          throws java.lang.Exception
        Delete a object (=file) from the storage
        Parameters:
        containerName - Folder name
        objectName - File name
        Throws:
        java.io.IOException
        java.lang.Exception
      • createContainer

        public void createContainer​(java.lang.String containerName)
                             throws java.lang.Exception
        Create a container, which is equivalent to a bucket
        Parameters:
        containerName - Name of the container
        Throws:
        java.io.IOException
        java.lang.Exception
      • createObject

        public void createObject​(java.lang.String containerName,
                                 java.lang.String objectName,
                                 byte[] contents)
                          throws java.lang.Exception
        Create an object (=file)
        Parameters:
        containerName - Name of the container
        objectName - Name of the file
        contents - Binary content of the file
        Throws:
        java.io.IOException
        java.lang.Exception
      • readObject

        public byte[] readObject​(java.lang.String containerName,
                                 java.lang.String objectName)
                          throws java.lang.Exception
        Read the content of a file
        Parameters:
        containerName - Name of the folder
        objectName - name of the file
        Returns:
        Content of the files
        Throws:
        java.io.IOException
        java.lang.Exception
      • listObjects

        public java.util.List<java.lang.String> listObjects​(java.lang.String containerName)
                                                     throws java.lang.Exception
        List files in a folder
        Parameters:
        containerName - Folder name
        Returns:
        List of file names
        Throws:
        java.io.IOException
        java.lang.Exception
      • getConnBuilder

        private SWIFT_PING.ConnBuilder getConnBuilder​(java.lang.String container,
                                                      java.lang.String object)
                                               throws java.io.IOException
        Throws:
        java.io.IOException