Class MinioAsyncClient

java.lang.Object
io.minio.S3Base
io.minio.MinioAsyncClient
cn.herodotus.oss.dialect.minio.definition.pool.MinioAsyncClient
All Implemented Interfaces:
AutoCloseable

public class MinioAsyncClient extends io.minio.MinioAsyncClient

Description: 自定义扩展 Minio Client

扩展 MinioAsyncClient 主要为了解决部分分片上传方法为 protected 无法调用的问题。

Author:
: gengwei.zheng
Date:
: 2022/7/3 4:31
  • Nested Class Summary

    Nested classes/interfaces inherited from class io.minio.MinioAsyncClient

    io.minio.MinioAsyncClient.Builder

    Nested classes/interfaces inherited from class io.minio.S3Base

    io.minio.S3Base.NotificationResultRecords
  • Field Summary

    Fields inherited from class io.minio.S3Base

    awsDomainSuffix, awsDualstack, awsS3Prefix, baseUrl, closeHttpClient, DEFAULT_CONNECTION_TIMEOUT, httpClient, MAX_BUCKET_POLICY_SIZE, NO_SUCH_BUCKET, NO_SUCH_BUCKET_MESSAGE, NO_SUCH_BUCKET_POLICY, NO_SUCH_OBJECT_LOCK_CONFIGURATION, provider, region, regionCache, SERVER_SIDE_ENCRYPTION_CONFIGURATION_NOT_FOUND_ERROR, US_EAST_1, useVirtualStyle
  • Constructor Summary

    Constructors
    Constructor
    Description
    MinioAsyncClient(io.minio.MinioAsyncClient client)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    CompletableFuture<io.minio.AbortMultipartUploadResponse>
    abortMultipartUploadAsync(String bucketName, String region, String objectName, String uploadId, com.google.common.collect.Multimap<String,String> extraHeaders, com.google.common.collect.Multimap<String,String> extraQueryParams)
    中止分片上传
    CompletableFuture<io.minio.ObjectWriteResponse>
    completeMultipartUploadAsync(String bucketName, String region, String objectName, String uploadId, io.minio.messages.Part[] parts, com.google.common.collect.Multimap<String,String> extraHeaders, com.google.common.collect.Multimap<String,String> extraQueryParams)
    完成分片上传
    CompletableFuture<io.minio.CreateMultipartUploadResponse>
    createMultipartUploadAsync(String bucketName, String region, String objectName, com.google.common.collect.Multimap<String,String> headers, com.google.common.collect.Multimap<String,String> extraQueryParams)
    创建分片上传
    CompletableFuture<io.minio.ListMultipartUploadsResponse>
    listMultipartUploadsAsync(String bucketName, String region, String delimiter, String encodingType, String keyMarker, Integer maxUploads, String prefix, String uploadIdMarker, com.google.common.collect.Multimap<String,String> extraHeaders, com.google.common.collect.Multimap<String,String> extraQueryParams)
    列出正在进行的分片上传
    CompletableFuture<io.minio.ListPartsResponse>
    listPartsAsync(String bucketName, String region, String objectName, Integer maxParts, Integer partNumberMarker, String uploadId, com.google.common.collect.Multimap<String,String> extraHeaders, com.google.common.collect.Multimap<String,String> extraQueryParams)
    列出分片
    CompletableFuture<io.minio.UploadPartResponse>
    uploadPartAsync(String bucketName, String region, String objectName, Object data, long length, String uploadId, int partNumber, com.google.common.collect.Multimap<String,String> extraHeaders, com.google.common.collect.Multimap<String,String> extraQueryParams)
    上传分片传
    CompletableFuture<io.minio.UploadPartCopyResponse>
    uploadPartCopyAsync(String bucketName, String region, String objectName, String uploadId, int partNumber, com.google.common.collect.Multimap<String,String> headers, com.google.common.collect.Multimap<String,String> extraQueryParams)
    上传分片拷贝

    Methods inherited from class io.minio.MinioAsyncClient

    bucketExists, builder, composeObject, copyObject, deleteBucketEncryption, deleteBucketLifecycle, deleteBucketNotification, deleteBucketPolicy, deleteBucketReplication, deleteBucketTags, deleteObjectLockConfiguration, deleteObjectTags, disableObjectLegalHold, downloadObject, enableObjectLegalHold, getBucketEncryption, getBucketLifecycle, getBucketNotification, getBucketPolicy, getBucketReplication, getBucketTags, getBucketVersioning, getObject, getObjectLockConfiguration, getObjectRetention, getObjectTags, getPresignedObjectUrl, getPresignedPostFormData, isObjectLegalHoldEnabled, listBuckets, listBuckets, listenBucketNotification, listObjects, makeBucket, putObject, removeBucket, removeObject, removeObjects, restoreObject, selectObjectContent, setBucketEncryption, setBucketLifecycle, setBucketNotification, setBucketPolicy, setBucketReplication, setBucketTags, setBucketVersioning, setObjectLockConfiguration, setObjectRetention, setObjectTags, statObject, uploadObject, uploadSnowballObjects

    Methods inherited from class io.minio.S3Base

    abortMultipartUpload, buildUrl, calculatePartCount, calculatePartCountAsync, checkArgs, close, completeMultipartUpload, createMultipartUpload, createRequest, deleteObjects, deleteObjectsAsync, disableAccelerateEndpoint, disableDualStackEndpoint, disableVirtualStyleEndpoint, enableAccelerateEndpoint, enableDualStackEndpoint, enableVirtualStyleEndpoint, execute, execute, executeAsync, executeAsync, executeDelete, executeDeleteAsync, executeGet, executeGetAsync, executeHead, executeHeadAsync, executePost, executePostAsync, executePut, executePutAsync, getRegion, getRegionAsync, httpHeaders, ignoreCertCheck, listMultipartUploads, listObjectsV1, listObjectsV1, listObjectsV1Async, listObjectsV2, listObjectsV2, listObjectsV2Async, listObjectVersions, listObjectVersions, listObjectVersionsAsync, listParts, merge, newMultimap, newMultimap, newMultimap, newPartReader, putObject, putObject, putObjectAsync, putObjectAsync, setAppInfo, setAwsS3Prefix, setTimeout, statObjectAsync, throwEncapsulatedException, traceOff, traceOn, uploadPart, uploadPartAsync, uploadPartCopy

    Methods inherited from class java.lang.Object

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

    • MinioAsyncClient

      public MinioAsyncClient(io.minio.MinioAsyncClient client)
  • Method Details

    • createMultipartUploadAsync

      public CompletableFuture<io.minio.CreateMultipartUploadResponse> createMultipartUploadAsync(String bucketName, String region, String objectName, com.google.common.collect.Multimap<String,String> headers, com.google.common.collect.Multimap<String,String> extraQueryParams) throws io.minio.errors.InsufficientDataException, io.minio.errors.InternalException, InvalidKeyException, IOException, NoSuchAlgorithmException, io.minio.errors.XmlParserException
      创建分片上传
      Overrides:
      createMultipartUploadAsync in class io.minio.S3Base
      Parameters:
      bucketName - 存储桶名称.
      region - 区域 (可选).
      objectName - 对象名称.
      headers - 额外消息头 (可选).
      extraQueryParams - 额外查询参数 (可选).
      Returns:
      创建分片上传响应对象 CreateMultipartUploadResponse
      Throws:
      io.minio.errors.InsufficientDataException - 数据不足错误
      io.minio.errors.InternalException - 内部错误
      InvalidKeyException - 无效的Key错误
      IOException - IO错误
      NoSuchAlgorithmException - 没有此算法错误
      io.minio.errors.XmlParserException - XML解析错误
    • uploadPartAsync

      public CompletableFuture<io.minio.UploadPartResponse> uploadPartAsync(String bucketName, String region, String objectName, Object data, long length, String uploadId, int partNumber, com.google.common.collect.Multimap<String,String> extraHeaders, com.google.common.collect.Multimap<String,String> extraQueryParams) throws io.minio.errors.InsufficientDataException, io.minio.errors.InternalException, InvalidKeyException, IOException, NoSuchAlgorithmException, io.minio.errors.XmlParserException
      上传分片传
      Overrides:
      uploadPartAsync in class io.minio.S3Base
      Parameters:
      bucketName - 存储桶名称.
      region - 区域 (可选).
      objectName - 对象名称.
      data - Object data must be InputStream, RandomAccessFile, byte[] or String.
      length - 上传对象数据长度.
      uploadId - 上传 ID.
      partNumber - 分片序号.
      extraHeaders - 额外消息头 (可选).
      extraQueryParams - 额外查询参数 (可选).
      Returns:
      上传分片传响应对象 UploadPartResponse
      Throws:
      io.minio.errors.InsufficientDataException - 数据不足错误
      io.minio.errors.InternalException - 内部错误
      InvalidKeyException - 无效的Key错误
      IOException - IO错误
      NoSuchAlgorithmException - 没有此算法错误
      io.minio.errors.XmlParserException - XML解析错误
    • uploadPartCopyAsync

      public CompletableFuture<io.minio.UploadPartCopyResponse> uploadPartCopyAsync(String bucketName, String region, String objectName, String uploadId, int partNumber, com.google.common.collect.Multimap<String,String> headers, com.google.common.collect.Multimap<String,String> extraQueryParams) throws io.minio.errors.InsufficientDataException, io.minio.errors.InternalException, InvalidKeyException, IOException, NoSuchAlgorithmException, io.minio.errors.XmlParserException
      上传分片拷贝
      Overrides:
      uploadPartCopyAsync in class io.minio.S3Base
      Parameters:
      bucketName - 存储桶名称.
      region - 区域 (可选).
      objectName - 对象名称.
      uploadId - 上传 ID.
      partNumber - 分片序号.
      headers - 额外消息头 (可选).
      extraQueryParams - 额外查询参数 (可选).
      Returns:
      上传分片拷贝传响应对象 UploadPartCopyResponse
      Throws:
      io.minio.errors.InsufficientDataException - 数据不足错误
      io.minio.errors.InternalException - 内部错误
      InvalidKeyException - 无效的Key错误
      IOException - IO错误
      NoSuchAlgorithmException - 没有此算法错误
      io.minio.errors.XmlParserException - XML解析错误
    • abortMultipartUploadAsync

      public CompletableFuture<io.minio.AbortMultipartUploadResponse> abortMultipartUploadAsync(String bucketName, String region, String objectName, String uploadId, com.google.common.collect.Multimap<String,String> extraHeaders, com.google.common.collect.Multimap<String,String> extraQueryParams) throws io.minio.errors.InsufficientDataException, io.minio.errors.InternalException, InvalidKeyException, IOException, NoSuchAlgorithmException, io.minio.errors.XmlParserException
      中止分片上传
      Overrides:
      abortMultipartUploadAsync in class io.minio.S3Base
      Parameters:
      bucketName - 存储桶名称.
      region - 区域 (可选).
      objectName - 对象名称.
      uploadId - 上传 ID.
      extraHeaders - 额外消息头 (可选).
      extraQueryParams - 额外查询参数 (可选).
      Returns:
      完成分片上传响应对象 AbortMultipartUploadResponse
      Throws:
      io.minio.errors.InsufficientDataException - 数据不足错误
      io.minio.errors.InternalException - 内部错误
      InvalidKeyException - 无效的Key错误
      IOException - IO错误
      NoSuchAlgorithmException - 没有此算法错误
      io.minio.errors.XmlParserException - XML解析错误
    • completeMultipartUploadAsync

      public CompletableFuture<io.minio.ObjectWriteResponse> completeMultipartUploadAsync(String bucketName, String region, String objectName, String uploadId, io.minio.messages.Part[] parts, com.google.common.collect.Multimap<String,String> extraHeaders, com.google.common.collect.Multimap<String,String> extraQueryParams) throws io.minio.errors.InsufficientDataException, io.minio.errors.InternalException, InvalidKeyException, IOException, NoSuchAlgorithmException, io.minio.errors.XmlParserException
      完成分片上传
      Overrides:
      completeMultipartUploadAsync in class io.minio.S3Base
      Parameters:
      bucketName - 存储桶名称.
      region - 区域 (可选).
      objectName - 对象名称.
      uploadId - 上传 ID.
      parts - 分片数组.
      extraHeaders - 额外消息头 (可选).
      extraQueryParams - 额外查询参数 (可选).
      Returns:
      完成分片上传响应对象 ObjectWriteResponse
      Throws:
      io.minio.errors.InsufficientDataException - 数据不足错误
      io.minio.errors.InternalException - 内部错误
      InvalidKeyException - 无效的Key错误
      IOException - IO错误
      NoSuchAlgorithmException - 没有此算法错误
      io.minio.errors.XmlParserException - XML解析错误
    • listPartsAsync

      public CompletableFuture<io.minio.ListPartsResponse> listPartsAsync(String bucketName, String region, String objectName, Integer maxParts, Integer partNumberMarker, String uploadId, com.google.common.collect.Multimap<String,String> extraHeaders, com.google.common.collect.Multimap<String,String> extraQueryParams) throws io.minio.errors.InsufficientDataException, io.minio.errors.InternalException, InvalidKeyException, IOException, NoSuchAlgorithmException, io.minio.errors.XmlParserException
      列出分片
      Overrides:
      listPartsAsync in class io.minio.S3Base
      Parameters:
      bucketName - 存储桶名称.
      region - 区域 (可选).
      objectName - 对象名称.
      maxParts - 可以获取的最大分片书 (可选).
      partNumberMarker - 分片序号标记 (可选).
      uploadId - 上传 ID.
      extraHeaders - 额外消息头 (可选).
      extraQueryParams - 额外查询参数 (可选).
      Returns:
      列出分片响应对象 ListPartsResponse
      Throws:
      io.minio.errors.InsufficientDataException - 数据不足错误
      io.minio.errors.InternalException - 内部错误
      InvalidKeyException - 无效的Key错误
      IOException - IO错误
      NoSuchAlgorithmException - 没有此算法错误
      io.minio.errors.XmlParserException - XML解析错误
    • listMultipartUploadsAsync

      public CompletableFuture<io.minio.ListMultipartUploadsResponse> listMultipartUploadsAsync(String bucketName, String region, String delimiter, String encodingType, String keyMarker, Integer maxUploads, String prefix, String uploadIdMarker, com.google.common.collect.Multimap<String,String> extraHeaders, com.google.common.collect.Multimap<String,String> extraQueryParams) throws io.minio.errors.InsufficientDataException, io.minio.errors.InternalException, InvalidKeyException, IOException, NoSuchAlgorithmException, io.minio.errors.XmlParserException
      列出正在进行的分片上传
      Overrides:
      listMultipartUploadsAsync in class io.minio.S3Base
      Parameters:
      bucketName - Name of the bucket.
      region - Region of the bucket (可选).
      delimiter - 分隔符 (可选).
      encodingType - 编码类型 (可选).
      keyMarker - 关键标记 (可选).
      maxUploads - 最大上传数量 (可选).
      prefix - 前缀 (Optional).
      uploadIdMarker - Upload ID 标记 (可选).
      extraHeaders - 额外消息头 (可选).
      extraQueryParams - 额外查询参数 (可选).
      Returns:
      列出正在进行的分片上传响应对象 ListMultipartUploadsResponse
      Throws:
      io.minio.errors.InsufficientDataException - 数据不足错误
      io.minio.errors.InternalException - 内部错误
      InvalidKeyException - 无效的Key错误
      IOException - IO错误
      NoSuchAlgorithmException - 没有此算法错误
      io.minio.errors.XmlParserException - XML解析错误