Class S3AsyncClientWrapper

java.lang.Object
io.trino.plugin.exchange.filesystem.s3.S3AsyncClientWrapper
All Implemented Interfaces:
AutoCloseable, software.amazon.awssdk.awscore.AwsClient, software.amazon.awssdk.core.SdkClient, software.amazon.awssdk.services.s3.S3AsyncClient, software.amazon.awssdk.utils.SdkAutoCloseable

public abstract class S3AsyncClientWrapper extends Object implements software.amazon.awssdk.services.s3.S3AsyncClient
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static enum 
     
  • Field Summary

    Fields inherited from interface software.amazon.awssdk.services.s3.S3AsyncClient

    SERVICE_METADATA_ID, SERVICE_NAME
  • Constructor Summary

    Constructors
    Constructor
    Description
    S3AsyncClientWrapper(software.amazon.awssdk.services.s3.S3AsyncClient delegate)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    CompletableFuture<software.amazon.awssdk.services.s3.model.AbortMultipartUploadResponse>
    abortMultipartUpload(software.amazon.awssdk.services.s3.model.AbortMultipartUploadRequest request)
     
    void
     
    CompletableFuture<software.amazon.awssdk.services.s3.model.CompleteMultipartUploadResponse>
    completeMultipartUpload(software.amazon.awssdk.services.s3.model.CompleteMultipartUploadRequest request)
     
    CompletableFuture<software.amazon.awssdk.services.s3.model.CreateMultipartUploadResponse>
    createMultipartUpload(software.amazon.awssdk.services.s3.model.CreateMultipartUploadRequest request)
     
    CompletableFuture<software.amazon.awssdk.services.s3.model.DeleteObjectsResponse>
    deleteObjects(software.amazon.awssdk.services.s3.model.DeleteObjectsRequest request)
     
    getObject(software.amazon.awssdk.services.s3.model.GetObjectRequest request, software.amazon.awssdk.core.async.AsyncResponseTransformer<software.amazon.awssdk.services.s3.model.GetObjectResponse,T> transformer)
     
    protected abstract void
     
    CompletableFuture<software.amazon.awssdk.services.s3.model.ListObjectsV2Response>
    listObjectsV2(software.amazon.awssdk.services.s3.model.ListObjectsV2Request request)
     
    software.amazon.awssdk.services.s3.paginators.ListObjectsV2Publisher
    listObjectsV2Paginator(software.amazon.awssdk.services.s3.model.ListObjectsV2Request listObjectsV2Request)
     
    CompletableFuture<software.amazon.awssdk.services.s3.model.PutObjectResponse>
    putObject(software.amazon.awssdk.services.s3.model.PutObjectRequest request, software.amazon.awssdk.core.async.AsyncRequestBody body)
     
     
    CompletableFuture<software.amazon.awssdk.services.s3.model.UploadPartResponse>
    uploadPart(software.amazon.awssdk.services.s3.model.UploadPartRequest request, software.amazon.awssdk.core.async.AsyncRequestBody body)
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface software.amazon.awssdk.services.s3.S3AsyncClient

    abortMultipartUpload, completeMultipartUpload, copyObject, copyObject, createBucket, createBucket, createMultipartUpload, createSession, createSession, deleteBucket, deleteBucket, deleteBucketAnalyticsConfiguration, deleteBucketAnalyticsConfiguration, deleteBucketCors, deleteBucketCors, deleteBucketEncryption, deleteBucketEncryption, deleteBucketIntelligentTieringConfiguration, deleteBucketIntelligentTieringConfiguration, deleteBucketInventoryConfiguration, deleteBucketInventoryConfiguration, deleteBucketLifecycle, deleteBucketLifecycle, deleteBucketMetricsConfiguration, deleteBucketMetricsConfiguration, deleteBucketOwnershipControls, deleteBucketOwnershipControls, deleteBucketPolicy, deleteBucketPolicy, deleteBucketReplication, deleteBucketReplication, deleteBucketTagging, deleteBucketTagging, deleteBucketWebsite, deleteBucketWebsite, deleteObject, deleteObject, deleteObjects, deleteObjectTagging, deleteObjectTagging, deletePublicAccessBlock, deletePublicAccessBlock, getBucketAccelerateConfiguration, getBucketAccelerateConfiguration, getBucketAcl, getBucketAcl, getBucketAnalyticsConfiguration, getBucketAnalyticsConfiguration, getBucketCors, getBucketCors, getBucketEncryption, getBucketEncryption, getBucketIntelligentTieringConfiguration, getBucketIntelligentTieringConfiguration, getBucketInventoryConfiguration, getBucketInventoryConfiguration, getBucketLifecycleConfiguration, getBucketLifecycleConfiguration, getBucketLocation, getBucketLocation, getBucketLogging, getBucketLogging, getBucketMetricsConfiguration, getBucketMetricsConfiguration, getBucketNotificationConfiguration, getBucketNotificationConfiguration, getBucketOwnershipControls, getBucketOwnershipControls, getBucketPolicy, getBucketPolicy, getBucketPolicyStatus, getBucketPolicyStatus, getBucketReplication, getBucketReplication, getBucketRequestPayment, getBucketRequestPayment, getBucketTagging, getBucketTagging, getBucketVersioning, getBucketVersioning, getBucketWebsite, getBucketWebsite, getObject, getObject, getObject, getObjectAcl, getObjectAcl, getObjectAttributes, getObjectAttributes, getObjectLegalHold, getObjectLegalHold, getObjectLockConfiguration, getObjectLockConfiguration, getObjectRetention, getObjectRetention, getObjectTagging, getObjectTagging, getObjectTorrent, getObjectTorrent, getObjectTorrent, getObjectTorrent, getPublicAccessBlock, getPublicAccessBlock, headBucket, headBucket, headObject, headObject, listBucketAnalyticsConfigurations, listBucketAnalyticsConfigurations, listBucketIntelligentTieringConfigurations, listBucketIntelligentTieringConfigurations, listBucketInventoryConfigurations, listBucketInventoryConfigurations, listBucketMetricsConfigurations, listBucketMetricsConfigurations, listBuckets, listBuckets, listBuckets, listDirectoryBuckets, listDirectoryBuckets, listDirectoryBucketsPaginator, listDirectoryBucketsPaginator, listMultipartUploads, listMultipartUploads, listMultipartUploadsPaginator, listMultipartUploadsPaginator, listObjects, listObjects, listObjectsV2, listObjectsV2Paginator, listObjectVersions, listObjectVersions, listObjectVersionsPaginator, listObjectVersionsPaginator, listParts, listParts, listPartsPaginator, listPartsPaginator, putBucketAccelerateConfiguration, putBucketAccelerateConfiguration, putBucketAcl, putBucketAcl, putBucketAnalyticsConfiguration, putBucketAnalyticsConfiguration, putBucketCors, putBucketCors, putBucketEncryption, putBucketEncryption, putBucketIntelligentTieringConfiguration, putBucketIntelligentTieringConfiguration, putBucketInventoryConfiguration, putBucketInventoryConfiguration, putBucketLifecycleConfiguration, putBucketLifecycleConfiguration, putBucketLogging, putBucketLogging, putBucketMetricsConfiguration, putBucketMetricsConfiguration, putBucketNotificationConfiguration, putBucketNotificationConfiguration, putBucketOwnershipControls, putBucketOwnershipControls, putBucketPolicy, putBucketPolicy, putBucketReplication, putBucketReplication, putBucketRequestPayment, putBucketRequestPayment, putBucketTagging, putBucketTagging, putBucketVersioning, putBucketVersioning, putBucketWebsite, putBucketWebsite, putObject, putObject, putObject, putObjectAcl, putObjectAcl, putObjectLegalHold, putObjectLegalHold, putObjectLockConfiguration, putObjectLockConfiguration, putObjectRetention, putObjectRetention, putObjectTagging, putObjectTagging, putPublicAccessBlock, putPublicAccessBlock, restoreObject, restoreObject, selectObjectContent, selectObjectContent, serviceClientConfiguration, uploadPart, uploadPart, uploadPart, uploadPartCopy, uploadPartCopy, utilities, waiter, writeGetObjectResponse, writeGetObjectResponse, writeGetObjectResponse, writeGetObjectResponse
  • Constructor Details

    • S3AsyncClientWrapper

      public S3AsyncClientWrapper(software.amazon.awssdk.services.s3.S3AsyncClient delegate)
  • Method Details

    • serviceName

      public String serviceName()
      Specified by:
      serviceName in interface software.amazon.awssdk.core.SdkClient
    • putObject

      public CompletableFuture<software.amazon.awssdk.services.s3.model.PutObjectResponse> putObject(software.amazon.awssdk.services.s3.model.PutObjectRequest request, software.amazon.awssdk.core.async.AsyncRequestBody body)
      Specified by:
      putObject in interface software.amazon.awssdk.services.s3.S3AsyncClient
    • deleteObjects

      public CompletableFuture<software.amazon.awssdk.services.s3.model.DeleteObjectsResponse> deleteObjects(software.amazon.awssdk.services.s3.model.DeleteObjectsRequest request)
      Specified by:
      deleteObjects in interface software.amazon.awssdk.services.s3.S3AsyncClient
    • getObject

      public <T> CompletableFuture<T> getObject(software.amazon.awssdk.services.s3.model.GetObjectRequest request, software.amazon.awssdk.core.async.AsyncResponseTransformer<software.amazon.awssdk.services.s3.model.GetObjectResponse,T> transformer)
      Specified by:
      getObject in interface software.amazon.awssdk.services.s3.S3AsyncClient
    • createMultipartUpload

      public CompletableFuture<software.amazon.awssdk.services.s3.model.CreateMultipartUploadResponse> createMultipartUpload(software.amazon.awssdk.services.s3.model.CreateMultipartUploadRequest request)
      Specified by:
      createMultipartUpload in interface software.amazon.awssdk.services.s3.S3AsyncClient
    • uploadPart

      public CompletableFuture<software.amazon.awssdk.services.s3.model.UploadPartResponse> uploadPart(software.amazon.awssdk.services.s3.model.UploadPartRequest request, software.amazon.awssdk.core.async.AsyncRequestBody body)
      Specified by:
      uploadPart in interface software.amazon.awssdk.services.s3.S3AsyncClient
    • completeMultipartUpload

      public CompletableFuture<software.amazon.awssdk.services.s3.model.CompleteMultipartUploadResponse> completeMultipartUpload(software.amazon.awssdk.services.s3.model.CompleteMultipartUploadRequest request)
      Specified by:
      completeMultipartUpload in interface software.amazon.awssdk.services.s3.S3AsyncClient
    • abortMultipartUpload

      public CompletableFuture<software.amazon.awssdk.services.s3.model.AbortMultipartUploadResponse> abortMultipartUpload(software.amazon.awssdk.services.s3.model.AbortMultipartUploadRequest request)
      Specified by:
      abortMultipartUpload in interface software.amazon.awssdk.services.s3.S3AsyncClient
    • listObjectsV2

      public CompletableFuture<software.amazon.awssdk.services.s3.model.ListObjectsV2Response> listObjectsV2(software.amazon.awssdk.services.s3.model.ListObjectsV2Request request)
      Specified by:
      listObjectsV2 in interface software.amazon.awssdk.services.s3.S3AsyncClient
    • handle

      protected abstract void handle(S3AsyncClientWrapper.RequestType requestType, CompletableFuture<?> responseFuture)
    • listObjectsV2Paginator

      public software.amazon.awssdk.services.s3.paginators.ListObjectsV2Publisher listObjectsV2Paginator(software.amazon.awssdk.services.s3.model.ListObjectsV2Request listObjectsV2Request)
      Specified by:
      listObjectsV2Paginator in interface software.amazon.awssdk.services.s3.S3AsyncClient
    • close

      public void close()
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface software.amazon.awssdk.utils.SdkAutoCloseable