Class OSSUnderFileSystem

  • All Implemented Interfaces:
    alluxio.underfs.UnderFileSystem, java.io.Closeable, java.lang.AutoCloseable

    @ThreadSafe
    public class OSSUnderFileSystem
    extends alluxio.underfs.ObjectUnderFileSystem
    Aliyun OSS UnderFileSystem implementation.
    • Nested Class Summary

      • Nested classes/interfaces inherited from class alluxio.underfs.ObjectUnderFileSystem

        alluxio.underfs.ObjectUnderFileSystem.DeleteBuffer, alluxio.underfs.ObjectUnderFileSystem.ObjectListingChunk, alluxio.underfs.ObjectUnderFileSystem.ObjectPermissions, alluxio.underfs.ObjectUnderFileSystem.ObjectStatus, alluxio.underfs.ObjectUnderFileSystem.OperationBuffer<T extends java.lang.Object>, alluxio.underfs.ObjectUnderFileSystem.RenameBuffer
      • Nested classes/interfaces inherited from interface alluxio.underfs.UnderFileSystem

        alluxio.underfs.UnderFileSystem.Factory, alluxio.underfs.UnderFileSystem.SpaceType
    • Field Summary

      • Fields inherited from class alluxio.underfs.ObjectUnderFileSystem

        mExecutorService, mRootKeySupplier, PATH_SEPARATOR, PATH_SEPARATOR_CHAR
      • Fields inherited from class alluxio.underfs.BaseUnderFileSystem

        mUfsConf, mUri
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      protected OSSUnderFileSystem​(alluxio.AlluxioURI uri, com.aliyun.oss.OSS ossClient, java.lang.String bucketName, alluxio.underfs.UnderFileSystemConfiguration conf)
      Constructor for OSSUnderFileSystem.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected boolean copyObject​(java.lang.String src, java.lang.String dst)  
      boolean createEmptyObject​(java.lang.String key)  
      static OSSUnderFileSystem createInstance​(alluxio.AlluxioURI uri, alluxio.underfs.UnderFileSystemConfiguration conf)
      Constructs a new instance of OSSUnderFileSystem.
      protected java.io.OutputStream createObject​(java.lang.String key)  
      protected boolean deleteObject​(java.lang.String key)  
      protected java.lang.String getFolderSuffix()  
      protected alluxio.underfs.ObjectUnderFileSystem.ObjectListingChunk getObjectListingChunk​(java.lang.String key, boolean recursive)  
      protected alluxio.underfs.ObjectUnderFileSystem.ObjectStatus getObjectStatus​(java.lang.String key)  
      protected alluxio.underfs.ObjectUnderFileSystem.ObjectPermissions getPermissions()  
      protected java.lang.String getRootKey()  
      java.lang.String getUnderFSType()  
      protected java.io.InputStream openObject​(java.lang.String key, alluxio.underfs.options.OpenOptions options, alluxio.retry.RetryPolicy retryPolicy)  
      void setMode​(java.lang.String path, short mode)  
      void setOwner​(java.lang.String path, java.lang.String user, java.lang.String group)  
      • Methods inherited from class alluxio.underfs.ObjectUnderFileSystem

        cleanup, close, connectFromMaster, connectFromWorker, convertToFolderName, create, createNonexistingFile, createNonexistingFile, deleteDirectory, deleteExistingDirectory, deleteExistingDirectory, deleteExistingFile, deleteFile, deleteObjects, getBlockSizeByte, getChildName, getDirectoryStatus, getExistingDirectoryStatus, getExistingFileStatus, getExistingStatus, getFileLocations, getFileLocations, getFileStatus, getListingChunkLength, getListingChunkLengthMax, getObjectListingChunkForPath, getParentPath, getSpace, getStatus, isDirectory, isExistingDirectory, isFile, isObjectStorage, isRoot, listInternal, listStatus, listStatus, mkdirs, mkdirsInternal, open, openExistingFile, openExistingFile, parentExists, renameDirectory, renameFile, renameRenamableDirectory, renameRenamableFile, stripPrefixIfPresent, supportsFlush
      • Methods inherited from class alluxio.underfs.BaseUnderFileSystem

        create, deleteDirectory, exists, getAclPair, getActiveSyncInfo, getConfiguration, getFingerprint, getOperationMode, getPhysicalStores, isSeekable, mkdirs, open, resolveUri, setAclEntries, startActiveSyncPolling, startSync, stopActiveSyncPolling, stopSync, supportsActiveSync, validatePath
      • Methods inherited from class java.lang.Object

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

      • OSSUnderFileSystem

        protected OSSUnderFileSystem​(alluxio.AlluxioURI uri,
                                     com.aliyun.oss.OSS ossClient,
                                     java.lang.String bucketName,
                                     alluxio.underfs.UnderFileSystemConfiguration conf)
        Constructor for OSSUnderFileSystem.
        Parameters:
        uri - the AlluxioURI for this UFS
        ossClient - Aliyun OSS client
        bucketName - bucket name of user's configured Alluxio bucket
        conf - configuration for this UFS
    • Method Detail

      • createInstance

        public static OSSUnderFileSystem createInstance​(alluxio.AlluxioURI uri,
                                                        alluxio.underfs.UnderFileSystemConfiguration conf)
                                                 throws java.lang.Exception
        Constructs a new instance of OSSUnderFileSystem.
        Parameters:
        uri - the AlluxioURI for this UFS
        conf - the configuration for this UFS
        Returns:
        the created OSSUnderFileSystem instance
        Throws:
        java.lang.Exception
      • getUnderFSType

        public java.lang.String getUnderFSType()
      • setOwner

        public void setOwner​(java.lang.String path,
                             java.lang.String user,
                             java.lang.String group)
      • setMode

        public void setMode​(java.lang.String path,
                            short mode)
                     throws java.io.IOException
        Throws:
        java.io.IOException
      • copyObject

        protected boolean copyObject​(java.lang.String src,
                                     java.lang.String dst)
        Specified by:
        copyObject in class alluxio.underfs.ObjectUnderFileSystem
      • createEmptyObject

        public boolean createEmptyObject​(java.lang.String key)
        Specified by:
        createEmptyObject in class alluxio.underfs.ObjectUnderFileSystem
      • createObject

        protected java.io.OutputStream createObject​(java.lang.String key)
                                             throws java.io.IOException
        Specified by:
        createObject in class alluxio.underfs.ObjectUnderFileSystem
        Throws:
        java.io.IOException
      • deleteObject

        protected boolean deleteObject​(java.lang.String key)
        Specified by:
        deleteObject in class alluxio.underfs.ObjectUnderFileSystem
      • getFolderSuffix

        protected java.lang.String getFolderSuffix()
        Specified by:
        getFolderSuffix in class alluxio.underfs.ObjectUnderFileSystem
      • getObjectListingChunk

        protected alluxio.underfs.ObjectUnderFileSystem.ObjectListingChunk getObjectListingChunk​(java.lang.String key,
                                                                                                 boolean recursive)
                                                                                          throws java.io.IOException
        Specified by:
        getObjectListingChunk in class alluxio.underfs.ObjectUnderFileSystem
        Throws:
        java.io.IOException
      • getObjectStatus

        protected alluxio.underfs.ObjectUnderFileSystem.ObjectStatus getObjectStatus​(java.lang.String key)
        Specified by:
        getObjectStatus in class alluxio.underfs.ObjectUnderFileSystem
      • getPermissions

        protected alluxio.underfs.ObjectUnderFileSystem.ObjectPermissions getPermissions()
        Specified by:
        getPermissions in class alluxio.underfs.ObjectUnderFileSystem
      • getRootKey

        protected java.lang.String getRootKey()
        Specified by:
        getRootKey in class alluxio.underfs.ObjectUnderFileSystem
      • openObject

        protected java.io.InputStream openObject​(java.lang.String key,
                                                 alluxio.underfs.options.OpenOptions options,
                                                 alluxio.retry.RetryPolicy retryPolicy)
                                          throws java.io.IOException
        Specified by:
        openObject in class alluxio.underfs.ObjectUnderFileSystem
        Throws:
        java.io.IOException