7#include <aws/s3-crt/S3Crt_EXPORTS.h>
8#include <aws/core/client/ClientConfiguration.h>
9#include <aws/core/auth/AWSCredentialsProviderChain.h>
10#include <aws/core/utils/crypto/Factories.h>
11#include <aws/s3-crt/ClientConfiguration.h>
12#include <aws/s3-crt/S3CrtErrorMarshaller.h>
13#include <aws/s3/s3_client.h>
14#include <aws/crt/auth/Sigv4Signing.h>
15#include <aws/crt/http/HttpRequestResponse.h>
16#include <aws/core/client/AWSClient.h>
17#include <aws/core/client/AWSClientAsyncCRTP.h>
18#include <aws/core/auth/AWSAuthSigner.h>
19#include <aws/core/utils/xml/XmlSerializer.h>
20#include <aws/core/utils/DNS.h>
21#include <aws/s3-crt/S3CrtServiceClientModel.h>
22#include <aws/s3-crt/S3ExpressIdentityProvider.h>
23#include <aws/s3-crt/S3CrtIdentityProviderAdapter.h>
101 bool useVirtualAddressing =
true,
112 bool useVirtualAddressing =
true,
119 S3CrtClient(
const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
122 bool useVirtualAddressing =
true,
200 template<
typename AbortMultipartUploadRequestT = Model::AbortMultipartUploadRequest>
203 return SubmitCallable(&S3CrtClient::AbortMultipartUpload, request);
209 template<
typename AbortMultipartUploadRequestT = Model::AbortMultipartUploadRequest>
212 return SubmitAsync(&S3CrtClient::AbortMultipartUpload, request, handler, context);
336 template<
typename CompleteMultipartUploadRequestT = Model::CompleteMultipartUploadRequest>
339 return SubmitCallable(&S3CrtClient::CompleteMultipartUpload, request);
345 template<
typename CompleteMultipartUploadRequestT = Model::CompleteMultipartUploadRequest>
348 return SubmitAsync(&S3CrtClient::CompleteMultipartUpload, request, handler, context);
634 template<
typename CreateBucketRequestT = Model::CreateBucketRequest>
637 return SubmitCallable(&S3CrtClient::CreateBucket, request);
643 template<
typename CreateBucketRequestT = Model::CreateBucketRequest>
646 return SubmitAsync(&S3CrtClient::CreateBucket, request, handler, context);
700 template<
typename CreateBucketMetadataConfigurationRequestT = Model::CreateBucketMetadataConfigurationRequest>
703 return SubmitCallable(&S3CrtClient::CreateBucketMetadataConfiguration, request);
709 template<
typename CreateBucketMetadataConfigurationRequestT = Model::CreateBucketMetadataConfigurationRequest>
712 return SubmitAsync(&S3CrtClient::CreateBucketMetadataConfiguration, request, handler, context);
763 template<
typename CreateBucketMetadataTableConfigurationRequestT = Model::CreateBucketMetadataTableConfigurationRequest>
766 return SubmitCallable(&S3CrtClient::CreateBucketMetadataTableConfiguration, request);
772 template<
typename CreateBucketMetadataTableConfigurationRequestT = Model::CreateBucketMetadataTableConfigurationRequest>
775 return SubmitAsync(&S3CrtClient::CreateBucketMetadataTableConfiguration, request, handler, context);
1002 template<
typename CreateMultipartUploadRequestT = Model::CreateMultipartUploadRequest>
1005 return SubmitCallable(&S3CrtClient::CreateMultipartUpload, request);
1011 template<
typename CreateMultipartUploadRequestT = Model::CreateMultipartUploadRequest>
1014 return SubmitAsync(&S3CrtClient::CreateMultipartUpload, request, handler, context);
1167 template<
typename CreateSessionRequestT = Model::CreateSessionRequest>
1170 return SubmitCallable(&S3CrtClient::CreateSession, request);
1176 template<
typename CreateSessionRequestT = Model::CreateSessionRequest>
1179 return SubmitAsync(&S3CrtClient::CreateSession, request, handler, context);
1227 template<
typename DeleteBucketRequestT = Model::DeleteBucketRequest>
1230 return SubmitCallable(&S3CrtClient::DeleteBucket, request);
1236 template<
typename DeleteBucketRequestT = Model::DeleteBucketRequest>
1239 return SubmitAsync(&S3CrtClient::DeleteBucket, request, handler, context);
1271 template<
typename DeleteBucketAnalyticsConfigurationRequestT = Model::DeleteBucketAnalyticsConfigurationRequest>
1274 return SubmitCallable(&S3CrtClient::DeleteBucketAnalyticsConfiguration, request);
1280 template<
typename DeleteBucketAnalyticsConfigurationRequestT = Model::DeleteBucketAnalyticsConfigurationRequest>
1283 return SubmitAsync(&S3CrtClient::DeleteBucketAnalyticsConfiguration, request, handler, context);
1308 template<
typename DeleteBucketCorsRequestT = Model::DeleteBucketCorsRequest>
1311 return SubmitCallable(&S3CrtClient::DeleteBucketCors, request);
1317 template<
typename DeleteBucketCorsRequestT = Model::DeleteBucketCorsRequest>
1320 return SubmitAsync(&S3CrtClient::DeleteBucketCors, request, handler, context);
1370 template<
typename DeleteBucketEncryptionRequestT = Model::DeleteBucketEncryptionRequest>
1373 return SubmitCallable(&S3CrtClient::DeleteBucketEncryption, request);
1379 template<
typename DeleteBucketEncryptionRequestT = Model::DeleteBucketEncryptionRequest>
1382 return SubmitAsync(&S3CrtClient::DeleteBucketEncryption, request, handler, context);
1420 template<
typename DeleteBucketIntelligentTieringConfigurationRequestT = Model::DeleteBucketIntelligentTieringConfigurationRequest>
1423 return SubmitCallable(&S3CrtClient::DeleteBucketIntelligentTieringConfiguration, request);
1429 template<
typename DeleteBucketIntelligentTieringConfigurationRequestT = Model::DeleteBucketIntelligentTieringConfigurationRequest>
1432 return SubmitAsync(&S3CrtClient::DeleteBucketIntelligentTieringConfiguration, request, handler, context);
1464 template<
typename DeleteBucketInventoryConfigurationRequestT = Model::DeleteBucketInventoryConfigurationRequest>
1467 return SubmitCallable(&S3CrtClient::DeleteBucketInventoryConfiguration, request);
1473 template<
typename DeleteBucketInventoryConfigurationRequestT = Model::DeleteBucketInventoryConfigurationRequest>
1476 return SubmitAsync(&S3CrtClient::DeleteBucketInventoryConfiguration, request, handler, context);
1535 template<
typename DeleteBucketLifecycleRequestT = Model::DeleteBucketLifecycleRequest>
1538 return SubmitCallable(&S3CrtClient::DeleteBucketLifecycle, request);
1544 template<
typename DeleteBucketLifecycleRequestT = Model::DeleteBucketLifecycleRequest>
1547 return SubmitAsync(&S3CrtClient::DeleteBucketLifecycle, request, handler, context);
1583 template<
typename DeleteBucketMetadataConfigurationRequestT = Model::DeleteBucketMetadataConfigurationRequest>
1586 return SubmitCallable(&S3CrtClient::DeleteBucketMetadataConfiguration, request);
1592 template<
typename DeleteBucketMetadataConfigurationRequestT = Model::DeleteBucketMetadataConfigurationRequest>
1595 return SubmitAsync(&S3CrtClient::DeleteBucketMetadataConfiguration, request, handler, context);
1640 template<
typename DeleteBucketMetadataTableConfigurationRequestT = Model::DeleteBucketMetadataTableConfigurationRequest>
1643 return SubmitCallable(&S3CrtClient::DeleteBucketMetadataTableConfiguration, request);
1649 template<
typename DeleteBucketMetadataTableConfigurationRequestT = Model::DeleteBucketMetadataTableConfigurationRequest>
1652 return SubmitAsync(&S3CrtClient::DeleteBucketMetadataTableConfiguration, request, handler, context);
1687 template<
typename DeleteBucketMetricsConfigurationRequestT = Model::DeleteBucketMetricsConfigurationRequest>
1690 return SubmitCallable(&S3CrtClient::DeleteBucketMetricsConfiguration, request);
1696 template<
typename DeleteBucketMetricsConfigurationRequestT = Model::DeleteBucketMetricsConfigurationRequest>
1699 return SubmitAsync(&S3CrtClient::DeleteBucketMetricsConfiguration, request, handler, context);
1723 template<
typename DeleteBucketOwnershipControlsRequestT = Model::DeleteBucketOwnershipControlsRequest>
1726 return SubmitCallable(&S3CrtClient::DeleteBucketOwnershipControls, request);
1732 template<
typename DeleteBucketOwnershipControlsRequestT = Model::DeleteBucketOwnershipControlsRequest>
1735 return SubmitAsync(&S3CrtClient::DeleteBucketOwnershipControls, request, handler, context);
1797 template<
typename DeleteBucketPolicyRequestT = Model::DeleteBucketPolicyRequest>
1800 return SubmitCallable(&S3CrtClient::DeleteBucketPolicy, request);
1806 template<
typename DeleteBucketPolicyRequestT = Model::DeleteBucketPolicyRequest>
1809 return SubmitAsync(&S3CrtClient::DeleteBucketPolicy, request, handler, context);
1840 template<
typename DeleteBucketReplicationRequestT = Model::DeleteBucketReplicationRequest>
1843 return SubmitCallable(&S3CrtClient::DeleteBucketReplication, request);
1849 template<
typename DeleteBucketReplicationRequestT = Model::DeleteBucketReplicationRequest>
1852 return SubmitAsync(&S3CrtClient::DeleteBucketReplication, request, handler, context);
1874 template<
typename DeleteBucketTaggingRequestT = Model::DeleteBucketTaggingRequest>
1877 return SubmitCallable(&S3CrtClient::DeleteBucketTagging, request);
1883 template<
typename DeleteBucketTaggingRequestT = Model::DeleteBucketTaggingRequest>
1886 return SubmitAsync(&S3CrtClient::DeleteBucketTagging, request, handler, context);
1917 template<
typename DeleteBucketWebsiteRequestT = Model::DeleteBucketWebsiteRequest>
1920 return SubmitCallable(&S3CrtClient::DeleteBucketWebsite, request);
1926 template<
typename DeleteBucketWebsiteRequestT = Model::DeleteBucketWebsiteRequest>
1929 return SubmitAsync(&S3CrtClient::DeleteBucketWebsite, request, handler, context);
2028 template<
typename DeleteObjectRequestT = Model::DeleteObjectRequest>
2031 return SubmitCallable(&S3CrtClient::DeleteObject, request);
2037 template<
typename DeleteObjectRequestT = Model::DeleteObjectRequest>
2040 return SubmitAsync(&S3CrtClient::DeleteObject, request, handler, context);
2066 template<
typename DeleteObjectTaggingRequestT = Model::DeleteObjectTaggingRequest>
2069 return SubmitCallable(&S3CrtClient::DeleteObjectTagging, request);
2075 template<
typename DeleteObjectTaggingRequestT = Model::DeleteObjectTaggingRequest>
2078 return SubmitAsync(&S3CrtClient::DeleteObjectTagging, request, handler, context);
2174 template<
typename DeleteObjectsRequestT = Model::DeleteObjectsRequest>
2177 return SubmitCallable(&S3CrtClient::DeleteObjects, request);
2183 template<
typename DeleteObjectsRequestT = Model::DeleteObjectsRequest>
2186 return SubmitAsync(&S3CrtClient::DeleteObjects, request, handler, context);
2217 template<
typename DeletePublicAccessBlockRequestT = Model::DeletePublicAccessBlockRequest>
2220 return SubmitCallable(&S3CrtClient::DeletePublicAccessBlock, request);
2226 template<
typename DeletePublicAccessBlockRequestT = Model::DeletePublicAccessBlockRequest>
2229 return SubmitAsync(&S3CrtClient::DeletePublicAccessBlock, request, handler, context);
2267 template<
typename GetBucketAccelerateConfigurationRequestT = Model::GetBucketAccelerateConfigurationRequest>
2270 return SubmitCallable(&S3CrtClient::GetBucketAccelerateConfiguration, request);
2276 template<
typename GetBucketAccelerateConfigurationRequestT = Model::GetBucketAccelerateConfigurationRequest>
2279 return SubmitAsync(&S3CrtClient::GetBucketAccelerateConfiguration, request, handler, context);
2324 template<
typename GetBucketAclRequestT = Model::GetBucketAclRequest>
2327 return SubmitCallable(&S3CrtClient::GetBucketAcl, request);
2333 template<
typename GetBucketAclRequestT = Model::GetBucketAclRequest>
2336 return SubmitAsync(&S3CrtClient::GetBucketAcl, request, handler, context);
2370 template<
typename GetBucketAnalyticsConfigurationRequestT = Model::GetBucketAnalyticsConfigurationRequest>
2373 return SubmitCallable(&S3CrtClient::GetBucketAnalyticsConfiguration, request);
2379 template<
typename GetBucketAnalyticsConfigurationRequestT = Model::GetBucketAnalyticsConfigurationRequest>
2382 return SubmitAsync(&S3CrtClient::GetBucketAnalyticsConfiguration, request, handler, context);
2414 template<
typename GetBucketCorsRequestT = Model::GetBucketCorsRequest>
2417 return SubmitCallable(&S3CrtClient::GetBucketCors, request);
2423 template<
typename GetBucketCorsRequestT = Model::GetBucketCorsRequest>
2426 return SubmitAsync(&S3CrtClient::GetBucketCors, request, handler, context);
2477 template<
typename GetBucketEncryptionRequestT = Model::GetBucketEncryptionRequest>
2480 return SubmitCallable(&S3CrtClient::GetBucketEncryption, request);
2486 template<
typename GetBucketEncryptionRequestT = Model::GetBucketEncryptionRequest>
2489 return SubmitAsync(&S3CrtClient::GetBucketEncryption, request, handler, context);
2526 template<
typename GetBucketIntelligentTieringConfigurationRequestT = Model::GetBucketIntelligentTieringConfigurationRequest>
2529 return SubmitCallable(&S3CrtClient::GetBucketIntelligentTieringConfiguration, request);
2535 template<
typename GetBucketIntelligentTieringConfigurationRequestT = Model::GetBucketIntelligentTieringConfigurationRequest>
2538 return SubmitAsync(&S3CrtClient::GetBucketIntelligentTieringConfiguration, request, handler, context);
2570 template<
typename GetBucketInventoryConfigurationRequestT = Model::GetBucketInventoryConfigurationRequest>
2573 return SubmitCallable(&S3CrtClient::GetBucketInventoryConfiguration, request);
2579 template<
typename GetBucketInventoryConfigurationRequestT = Model::GetBucketInventoryConfigurationRequest>
2582 return SubmitAsync(&S3CrtClient::GetBucketInventoryConfiguration, request, handler, context);
2655 template<
typename GetBucketLifecycleConfigurationRequestT = Model::GetBucketLifecycleConfigurationRequest>
2658 return SubmitCallable(&S3CrtClient::GetBucketLifecycleConfiguration, request);
2664 template<
typename GetBucketLifecycleConfigurationRequestT = Model::GetBucketLifecycleConfigurationRequest>
2667 return SubmitAsync(&S3CrtClient::GetBucketLifecycleConfiguration, request, handler, context);
2701 template<
typename GetBucketLocationRequestT = Model::GetBucketLocationRequest>
2704 return SubmitCallable(&S3CrtClient::GetBucketLocation, request);
2710 template<
typename GetBucketLocationRequestT = Model::GetBucketLocationRequest>
2713 return SubmitAsync(&S3CrtClient::GetBucketLocation, request, handler, context);
2742 template<
typename GetBucketLoggingRequestT = Model::GetBucketLoggingRequest>
2745 return SubmitCallable(&S3CrtClient::GetBucketLogging, request);
2751 template<
typename GetBucketLoggingRequestT = Model::GetBucketLoggingRequest>
2754 return SubmitAsync(&S3CrtClient::GetBucketLogging, request, handler, context);
2790 template<
typename GetBucketMetadataConfigurationRequestT = Model::GetBucketMetadataConfigurationRequest>
2793 return SubmitCallable(&S3CrtClient::GetBucketMetadataConfiguration, request);
2799 template<
typename GetBucketMetadataConfigurationRequestT = Model::GetBucketMetadataConfigurationRequest>
2802 return SubmitAsync(&S3CrtClient::GetBucketMetadataConfiguration, request, handler, context);
2846 template<
typename GetBucketMetadataTableConfigurationRequestT = Model::GetBucketMetadataTableConfigurationRequest>
2849 return SubmitCallable(&S3CrtClient::GetBucketMetadataTableConfiguration, request);
2855 template<
typename GetBucketMetadataTableConfigurationRequestT = Model::GetBucketMetadataTableConfigurationRequest>
2858 return SubmitAsync(&S3CrtClient::GetBucketMetadataTableConfiguration, request, handler, context);
2893 template<
typename GetBucketMetricsConfigurationRequestT = Model::GetBucketMetricsConfigurationRequest>
2896 return SubmitCallable(&S3CrtClient::GetBucketMetricsConfiguration, request);
2902 template<
typename GetBucketMetricsConfigurationRequestT = Model::GetBucketMetricsConfigurationRequest>
2905 return SubmitAsync(&S3CrtClient::GetBucketMetricsConfiguration, request, handler, context);
2942 template<
typename GetBucketNotificationConfigurationRequestT = Model::GetBucketNotificationConfigurationRequest>
2945 return SubmitCallable(&S3CrtClient::GetBucketNotificationConfiguration, request);
2951 template<
typename GetBucketNotificationConfigurationRequestT = Model::GetBucketNotificationConfigurationRequest>
2954 return SubmitAsync(&S3CrtClient::GetBucketNotificationConfiguration, request, handler, context);
2984 template<
typename GetBucketOwnershipControlsRequestT = Model::GetBucketOwnershipControlsRequest>
2987 return SubmitCallable(&S3CrtClient::GetBucketOwnershipControls, request);
2993 template<
typename GetBucketOwnershipControlsRequestT = Model::GetBucketOwnershipControlsRequest>
2996 return SubmitAsync(&S3CrtClient::GetBucketOwnershipControls, request, handler, context);
3064 template<
typename GetBucketPolicyRequestT = Model::GetBucketPolicyRequest>
3067 return SubmitCallable(&S3CrtClient::GetBucketPolicy, request);
3073 template<
typename GetBucketPolicyRequestT = Model::GetBucketPolicyRequest>
3076 return SubmitAsync(&S3CrtClient::GetBucketPolicy, request, handler, context);
3107 template<
typename GetBucketPolicyStatusRequestT = Model::GetBucketPolicyStatusRequest>
3110 return SubmitCallable(&S3CrtClient::GetBucketPolicyStatus, request);
3116 template<
typename GetBucketPolicyStatusRequestT = Model::GetBucketPolicyStatusRequest>
3119 return SubmitAsync(&S3CrtClient::GetBucketPolicyStatus, request, handler, context);
3153 template<
typename GetBucketReplicationRequestT = Model::GetBucketReplicationRequest>
3156 return SubmitCallable(&S3CrtClient::GetBucketReplication, request);
3162 template<
typename GetBucketReplicationRequestT = Model::GetBucketReplicationRequest>
3165 return SubmitAsync(&S3CrtClient::GetBucketReplication, request, handler, context);
3185 template<
typename GetBucketRequestPaymentRequestT = Model::GetBucketRequestPaymentRequest>
3188 return SubmitCallable(&S3CrtClient::GetBucketRequestPayment, request);
3194 template<
typename GetBucketRequestPaymentRequestT = Model::GetBucketRequestPaymentRequest>
3197 return SubmitAsync(&S3CrtClient::GetBucketRequestPayment, request, handler, context);
3222 template<
typename GetBucketTaggingRequestT = Model::GetBucketTaggingRequest>
3225 return SubmitCallable(&S3CrtClient::GetBucketTagging, request);
3231 template<
typename GetBucketTaggingRequestT = Model::GetBucketTaggingRequest>
3234 return SubmitAsync(&S3CrtClient::GetBucketTagging, request, handler, context);
3259 template<
typename GetBucketVersioningRequestT = Model::GetBucketVersioningRequest>
3262 return SubmitCallable(&S3CrtClient::GetBucketVersioning, request);
3268 template<
typename GetBucketVersioningRequestT = Model::GetBucketVersioningRequest>
3271 return SubmitAsync(&S3CrtClient::GetBucketVersioning, request, handler, context);
3299 template<
typename GetBucketWebsiteRequestT = Model::GetBucketWebsiteRequest>
3302 return SubmitCallable(&S3CrtClient::GetBucketWebsite, request);
3308 template<
typename GetBucketWebsiteRequestT = Model::GetBucketWebsiteRequest>
3311 return SubmitAsync(&S3CrtClient::GetBucketWebsite, request, handler, context);
3488 template<
typename GetObjectAclRequestT = Model::GetObjectAclRequest>
3491 return SubmitCallable(&S3CrtClient::GetObjectAcl, request);
3497 template<
typename GetObjectAclRequestT = Model::GetObjectAclRequest>
3500 return SubmitAsync(&S3CrtClient::GetObjectAcl, request, handler, context);
3643 template<
typename GetObjectAttributesRequestT = Model::GetObjectAttributesRequest>
3646 return SubmitCallable(&S3CrtClient::GetObjectAttributes, request);
3652 template<
typename GetObjectAttributesRequestT = Model::GetObjectAttributesRequest>
3655 return SubmitAsync(&S3CrtClient::GetObjectAttributes, request, handler, context);
3675 template<
typename GetObjectLegalHoldRequestT = Model::GetObjectLegalHoldRequest>
3678 return SubmitCallable(&S3CrtClient::GetObjectLegalHold, request);
3684 template<
typename GetObjectLegalHoldRequestT = Model::GetObjectLegalHoldRequest>
3687 return SubmitAsync(&S3CrtClient::GetObjectLegalHold, request, handler, context);
3708 template<
typename GetObjectLockConfigurationRequestT = Model::GetObjectLockConfigurationRequest>
3711 return SubmitCallable(&S3CrtClient::GetObjectLockConfiguration, request);
3717 template<
typename GetObjectLockConfigurationRequestT = Model::GetObjectLockConfigurationRequest>
3720 return SubmitAsync(&S3CrtClient::GetObjectLockConfiguration, request, handler, context);
3740 template<
typename GetObjectRetentionRequestT = Model::GetObjectRetentionRequest>
3743 return SubmitCallable(&S3CrtClient::GetObjectRetention, request);
3749 template<
typename GetObjectRetentionRequestT = Model::GetObjectRetentionRequest>
3752 return SubmitAsync(&S3CrtClient::GetObjectRetention, request, handler, context);
3784 template<
typename GetObjectTaggingRequestT = Model::GetObjectTaggingRequest>
3787 return SubmitCallable(&S3CrtClient::GetObjectTagging, request);
3793 template<
typename GetObjectTaggingRequestT = Model::GetObjectTaggingRequest>
3796 return SubmitAsync(&S3CrtClient::GetObjectTagging, request, handler, context);
3818 template<
typename GetObjectTorrentRequestT = Model::GetObjectTorrentRequest>
3821 return SubmitCallable(&S3CrtClient::GetObjectTorrent, request);
3827 template<
typename GetObjectTorrentRequestT = Model::GetObjectTorrentRequest>
3830 return SubmitAsync(&S3CrtClient::GetObjectTorrent, request, handler, context);
3867 template<
typename GetPublicAccessBlockRequestT = Model::GetPublicAccessBlockRequest>
3870 return SubmitCallable(&S3CrtClient::GetPublicAccessBlock, request);
3876 template<
typename GetPublicAccessBlockRequestT = Model::GetPublicAccessBlockRequest>
3879 return SubmitAsync(&S3CrtClient::GetPublicAccessBlock, request, handler, context);
3945 template<
typename HeadBucketRequestT = Model::HeadBucketRequest>
3948 return SubmitCallable(&S3CrtClient::HeadBucket, request);
3954 template<
typename HeadBucketRequestT = Model::HeadBucketRequest>
3957 return SubmitAsync(&S3CrtClient::HeadBucket, request, handler, context);
4077 template<
typename HeadObjectRequestT = Model::HeadObjectRequest>
4080 return SubmitCallable(&S3CrtClient::HeadObject, request);
4086 template<
typename HeadObjectRequestT = Model::HeadObjectRequest>
4089 return SubmitAsync(&S3CrtClient::HeadObject, request, handler, context);
4129 template<
typename ListBucketAnalyticsConfigurationsRequestT = Model::ListBucketAnalyticsConfigurationsRequest>
4132 return SubmitCallable(&S3CrtClient::ListBucketAnalyticsConfigurations, request);
4138 template<
typename ListBucketAnalyticsConfigurationsRequestT = Model::ListBucketAnalyticsConfigurationsRequest>
4141 return SubmitAsync(&S3CrtClient::ListBucketAnalyticsConfigurations, request, handler, context);
4178 template<
typename ListBucketIntelligentTieringConfigurationsRequestT = Model::ListBucketIntelligentTieringConfigurationsRequest>
4181 return SubmitCallable(&S3CrtClient::ListBucketIntelligentTieringConfigurations, request);
4187 template<
typename ListBucketIntelligentTieringConfigurationsRequestT = Model::ListBucketIntelligentTieringConfigurationsRequest>
4190 return SubmitAsync(&S3CrtClient::ListBucketIntelligentTieringConfigurations, request, handler, context);
4230 template<
typename ListBucketInventoryConfigurationsRequestT = Model::ListBucketInventoryConfigurationsRequest>
4233 return SubmitCallable(&S3CrtClient::ListBucketInventoryConfigurations, request);
4239 template<
typename ListBucketInventoryConfigurationsRequestT = Model::ListBucketInventoryConfigurationsRequest>
4242 return SubmitAsync(&S3CrtClient::ListBucketInventoryConfigurations, request, handler, context);
4284 template<
typename ListBucketMetricsConfigurationsRequestT = Model::ListBucketMetricsConfigurationsRequest>
4287 return SubmitCallable(&S3CrtClient::ListBucketMetricsConfigurations, request);
4293 template<
typename ListBucketMetricsConfigurationsRequestT = Model::ListBucketMetricsConfigurationsRequest>
4296 return SubmitAsync(&S3CrtClient::ListBucketMetricsConfigurations, request, handler, context);
4332 template<
typename ListBucketsRequestT = Model::ListBucketsRequest>
4335 return SubmitCallable(&S3CrtClient::ListBuckets, request);
4341 template<
typename ListBucketsRequestT = Model::ListBucketsRequest>
4344 return SubmitAsync(&S3CrtClient::ListBuckets, request, handler, context);
4386 template<
typename ListDirectoryBucketsRequestT = Model::ListDirectoryBucketsRequest>
4389 return SubmitCallable(&S3CrtClient::ListDirectoryBuckets, request);
4395 template<
typename ListDirectoryBucketsRequestT = Model::ListDirectoryBucketsRequest>
4398 return SubmitAsync(&S3CrtClient::ListDirectoryBuckets, request, handler, context);
4507 template<
typename ListMultipartUploadsRequestT = Model::ListMultipartUploadsRequest>
4510 return SubmitCallable(&S3CrtClient::ListMultipartUploads, request);
4516 template<
typename ListMultipartUploadsRequestT = Model::ListMultipartUploadsRequest>
4519 return SubmitAsync(&S3CrtClient::ListMultipartUploads, request, handler, context);
4558 template<
typename ListObjectVersionsRequestT = Model::ListObjectVersionsRequest>
4561 return SubmitCallable(&S3CrtClient::ListObjectVersions, request);
4567 template<
typename ListObjectVersionsRequestT = Model::ListObjectVersionsRequest>
4570 return SubmitAsync(&S3CrtClient::ListObjectVersions, request, handler, context);
4612 template<
typename ListObjectsRequestT = Model::ListObjectsRequest>
4615 return SubmitCallable(&S3CrtClient::ListObjects, request);
4621 template<
typename ListObjectsRequestT = Model::ListObjectsRequest>
4624 return SubmitAsync(&S3CrtClient::ListObjects, request, handler, context);
4710 template<
typename ListObjectsV2RequestT = Model::ListObjectsV2Request>
4713 return SubmitCallable(&S3CrtClient::ListObjectsV2, request);
4719 template<
typename ListObjectsV2RequestT = Model::ListObjectsV2Request>
4722 return SubmitAsync(&S3CrtClient::ListObjectsV2, request, handler, context);
4814 template<
typename ListPartsRequestT = Model::ListPartsRequest>
4817 return SubmitCallable(&S3CrtClient::ListParts, request);
4823 template<
typename ListPartsRequestT = Model::ListPartsRequest>
4826 return SubmitAsync(&S3CrtClient::ListParts, request, handler, context);
4867 template<
typename PutBucketAccelerateConfigurationRequestT = Model::PutBucketAccelerateConfigurationRequest>
4870 return SubmitCallable(&S3CrtClient::PutBucketAccelerateConfiguration, request);
4876 template<
typename PutBucketAccelerateConfigurationRequestT = Model::PutBucketAccelerateConfigurationRequest>
4879 return SubmitAsync(&S3CrtClient::PutBucketAccelerateConfiguration, request, handler, context);
4995 template<
typename PutBucketAclRequestT = Model::PutBucketAclRequest>
4998 return SubmitCallable(&S3CrtClient::PutBucketAcl, request);
5004 template<
typename PutBucketAclRequestT = Model::PutBucketAclRequest>
5007 return SubmitAsync(&S3CrtClient::PutBucketAcl, request, handler, context);
5065 template<
typename PutBucketAnalyticsConfigurationRequestT = Model::PutBucketAnalyticsConfigurationRequest>
5068 return SubmitCallable(&S3CrtClient::PutBucketAnalyticsConfiguration, request);
5074 template<
typename PutBucketAnalyticsConfigurationRequestT = Model::PutBucketAnalyticsConfigurationRequest>
5077 return SubmitAsync(&S3CrtClient::PutBucketAnalyticsConfiguration, request, handler, context);
5126 template<
typename PutBucketCorsRequestT = Model::PutBucketCorsRequest>
5129 return SubmitCallable(&S3CrtClient::PutBucketCors, request);
5135 template<
typename PutBucketCorsRequestT = Model::PutBucketCorsRequest>
5138 return SubmitAsync(&S3CrtClient::PutBucketCors, request, handler, context);
5256 template<
typename PutBucketEncryptionRequestT = Model::PutBucketEncryptionRequest>
5259 return SubmitCallable(&S3CrtClient::PutBucketEncryption, request);
5265 template<
typename PutBucketEncryptionRequestT = Model::PutBucketEncryptionRequest>
5268 return SubmitAsync(&S3CrtClient::PutBucketEncryption, request, handler, context);
5318 template<
typename PutBucketIntelligentTieringConfigurationRequestT = Model::PutBucketIntelligentTieringConfigurationRequest>
5321 return SubmitCallable(&S3CrtClient::PutBucketIntelligentTieringConfiguration, request);
5327 template<
typename PutBucketIntelligentTieringConfigurationRequestT = Model::PutBucketIntelligentTieringConfigurationRequest>
5330 return SubmitAsync(&S3CrtClient::PutBucketIntelligentTieringConfiguration, request, handler, context);
5401 template<
typename PutBucketInventoryConfigurationRequestT = Model::PutBucketInventoryConfigurationRequest>
5404 return SubmitCallable(&S3CrtClient::PutBucketInventoryConfiguration, request);
5410 template<
typename PutBucketInventoryConfigurationRequestT = Model::PutBucketInventoryConfigurationRequest>
5413 return SubmitAsync(&S3CrtClient::PutBucketInventoryConfiguration, request, handler, context);
5512 template<
typename PutBucketLifecycleConfigurationRequestT = Model::PutBucketLifecycleConfigurationRequest>
5515 return SubmitCallable(&S3CrtClient::PutBucketLifecycleConfiguration, request);
5521 template<
typename PutBucketLifecycleConfigurationRequestT = Model::PutBucketLifecycleConfigurationRequest>
5524 return SubmitAsync(&S3CrtClient::PutBucketLifecycleConfiguration, request, handler, context);
5598 template<
typename PutBucketLoggingRequestT = Model::PutBucketLoggingRequest>
5601 return SubmitCallable(&S3CrtClient::PutBucketLogging, request);
5607 template<
typename PutBucketLoggingRequestT = Model::PutBucketLoggingRequest>
5610 return SubmitAsync(&S3CrtClient::PutBucketLogging, request, handler, context);
5650 template<
typename PutBucketMetricsConfigurationRequestT = Model::PutBucketMetricsConfigurationRequest>
5653 return SubmitCallable(&S3CrtClient::PutBucketMetricsConfiguration, request);
5659 template<
typename PutBucketMetricsConfigurationRequestT = Model::PutBucketMetricsConfigurationRequest>
5662 return SubmitAsync(&S3CrtClient::PutBucketMetricsConfiguration, request, handler, context);
5718 template<
typename PutBucketNotificationConfigurationRequestT = Model::PutBucketNotificationConfigurationRequest>
5721 return SubmitCallable(&S3CrtClient::PutBucketNotificationConfiguration, request);
5727 template<
typename PutBucketNotificationConfigurationRequestT = Model::PutBucketNotificationConfigurationRequest>
5730 return SubmitAsync(&S3CrtClient::PutBucketNotificationConfiguration, request, handler, context);
5755 template<
typename PutBucketOwnershipControlsRequestT = Model::PutBucketOwnershipControlsRequest>
5758 return SubmitCallable(&S3CrtClient::PutBucketOwnershipControls, request);
5764 template<
typename PutBucketOwnershipControlsRequestT = Model::PutBucketOwnershipControlsRequest>
5767 return SubmitAsync(&S3CrtClient::PutBucketOwnershipControls, request, handler, context);
5838 template<
typename PutBucketPolicyRequestT = Model::PutBucketPolicyRequest>
5841 return SubmitCallable(&S3CrtClient::PutBucketPolicy, request);
5847 template<
typename PutBucketPolicyRequestT = Model::PutBucketPolicyRequest>
5850 return SubmitAsync(&S3CrtClient::PutBucketPolicy, request, handler, context);
5920 template<
typename PutBucketReplicationRequestT = Model::PutBucketReplicationRequest>
5923 return SubmitCallable(&S3CrtClient::PutBucketReplication, request);
5929 template<
typename PutBucketReplicationRequestT = Model::PutBucketReplicationRequest>
5932 return SubmitAsync(&S3CrtClient::PutBucketReplication, request, handler, context);
5956 template<
typename PutBucketRequestPaymentRequestT = Model::PutBucketRequestPaymentRequest>
5959 return SubmitCallable(&S3CrtClient::PutBucketRequestPayment, request);
5965 template<
typename PutBucketRequestPaymentRequestT = Model::PutBucketRequestPaymentRequest>
5968 return SubmitAsync(&S3CrtClient::PutBucketRequestPayment, request, handler, context);
6021 template<
typename PutBucketTaggingRequestT = Model::PutBucketTaggingRequest>
6024 return SubmitCallable(&S3CrtClient::PutBucketTagging, request);
6030 template<
typename PutBucketTaggingRequestT = Model::PutBucketTaggingRequest>
6033 return SubmitAsync(&S3CrtClient::PutBucketTagging, request, handler, context);
6082 template<
typename PutBucketVersioningRequestT = Model::PutBucketVersioningRequest>
6085 return SubmitCallable(&S3CrtClient::PutBucketVersioning, request);
6091 template<
typename PutBucketVersioningRequestT = Model::PutBucketVersioningRequest>
6094 return SubmitAsync(&S3CrtClient::PutBucketVersioning, request, handler, context);
6144 template<
typename PutBucketWebsiteRequestT = Model::PutBucketWebsiteRequest>
6147 return SubmitCallable(&S3CrtClient::PutBucketWebsite, request);
6153 template<
typename PutBucketWebsiteRequestT = Model::PutBucketWebsiteRequest>
6156 return SubmitAsync(&S3CrtClient::PutBucketWebsite, request, handler, context);
6382 template<
typename PutObjectAclRequestT = Model::PutObjectAclRequest>
6385 return SubmitCallable(&S3CrtClient::PutObjectAcl, request);
6391 template<
typename PutObjectAclRequestT = Model::PutObjectAclRequest>
6394 return SubmitAsync(&S3CrtClient::PutObjectAcl, request, handler, context);
6412 template<
typename PutObjectLegalHoldRequestT = Model::PutObjectLegalHoldRequest>
6415 return SubmitCallable(&S3CrtClient::PutObjectLegalHold, request);
6421 template<
typename PutObjectLegalHoldRequestT = Model::PutObjectLegalHoldRequest>
6424 return SubmitAsync(&S3CrtClient::PutObjectLegalHold, request, handler, context);
6449 template<
typename PutObjectLockConfigurationRequestT = Model::PutObjectLockConfigurationRequest>
6452 return SubmitCallable(&S3CrtClient::PutObjectLockConfiguration, request);
6458 template<
typename PutObjectLockConfigurationRequestT = Model::PutObjectLockConfigurationRequest>
6461 return SubmitAsync(&S3CrtClient::PutObjectLockConfiguration, request, handler, context);
6482 template<
typename PutObjectRetentionRequestT = Model::PutObjectRetentionRequest>
6485 return SubmitCallable(&S3CrtClient::PutObjectRetention, request);
6491 template<
typename PutObjectRetentionRequestT = Model::PutObjectRetentionRequest>
6494 return SubmitAsync(&S3CrtClient::PutObjectRetention, request, handler, context);
6540 template<
typename PutObjectTaggingRequestT = Model::PutObjectTaggingRequest>
6543 return SubmitCallable(&S3CrtClient::PutObjectTagging, request);
6549 template<
typename PutObjectTaggingRequestT = Model::PutObjectTaggingRequest>
6552 return SubmitAsync(&S3CrtClient::PutObjectTagging, request, handler, context);
6589 template<
typename PutPublicAccessBlockRequestT = Model::PutPublicAccessBlockRequest>
6592 return SubmitCallable(&S3CrtClient::PutPublicAccessBlock, request);
6598 template<
typename PutPublicAccessBlockRequestT = Model::PutPublicAccessBlockRequest>
6601 return SubmitAsync(&S3CrtClient::PutPublicAccessBlock, request, handler, context);
6654 template<
typename RenameObjectRequestT = Model::RenameObjectRequest>
6657 return SubmitCallable(&S3CrtClient::RenameObject, request);
6663 template<
typename RenameObjectRequestT = Model::RenameObjectRequest>
6666 return SubmitAsync(&S3CrtClient::RenameObject, request, handler, context);
6791 template<
typename RestoreObjectRequestT = Model::RestoreObjectRequest>
6794 return SubmitCallable(&S3CrtClient::RestoreObject, request);
6800 template<
typename RestoreObjectRequestT = Model::RestoreObjectRequest>
6803 return SubmitAsync(&S3CrtClient::RestoreObject, request, handler, context);
6891 template<
typename SelectObjectContentRequestT = Model::SelectObjectContentRequest>
6894 return SubmitCallable(&S3CrtClient::SelectObjectContent, request);
6900 template<
typename SelectObjectContentRequestT = Model::SelectObjectContentRequest>
6903 return SubmitAsync(&S3CrtClient::SelectObjectContent, request, handler, context);
6948 template<
typename UpdateBucketMetadataInventoryTableConfigurationRequestT = Model::UpdateBucketMetadataInventoryTableConfigurationRequest>
6951 return SubmitCallable(&S3CrtClient::UpdateBucketMetadataInventoryTableConfiguration, request);
6957 template<
typename UpdateBucketMetadataInventoryTableConfigurationRequestT = Model::UpdateBucketMetadataInventoryTableConfigurationRequest>
6960 return SubmitAsync(&S3CrtClient::UpdateBucketMetadataInventoryTableConfiguration, request, handler, context);
6991 template<
typename UpdateBucketMetadataJournalTableConfigurationRequestT = Model::UpdateBucketMetadataJournalTableConfigurationRequest>
6994 return SubmitCallable(&S3CrtClient::UpdateBucketMetadataJournalTableConfiguration, request);
7000 template<
typename UpdateBucketMetadataJournalTableConfigurationRequestT = Model::UpdateBucketMetadataJournalTableConfigurationRequest>
7003 return SubmitAsync(&S3CrtClient::UpdateBucketMetadataJournalTableConfiguration, request, handler, context);
7151 template<
typename UploadPartRequestT = Model::UploadPartRequest>
7154 return SubmitCallable(&S3CrtClient::UploadPart, request);
7160 template<
typename UploadPartRequestT = Model::UploadPartRequest>
7163 return SubmitAsync(&S3CrtClient::UploadPart, request, handler, context);
7318 template<
typename UploadPartCopyRequestT = Model::UploadPartCopyRequest>
7321 return SubmitCallable(&S3CrtClient::UploadPartCopy, request);
7327 template<
typename UploadPartCopyRequestT = Model::UploadPartCopyRequest>
7330 return SubmitAsync(&S3CrtClient::UploadPartCopy, request, handler, context);
7385 template<
typename WriteGetObjectResponseRequestT = Model::WriteGetObjectResponseRequest>
7388 return SubmitCallable(&S3CrtClient::WriteGetObjectResponse, request);
7394 template<
typename WriteGetObjectResponseRequestT = Model::WriteGetObjectResponseRequest>
7397 return SubmitAsync(&S3CrtClient::WriteGetObjectResponse, request, handler, context);
7404 uint64_t expirationInSeconds = MAX_EXPIRATION_SECONDS);
7410 uint64_t expirationInSeconds = MAX_EXPIRATION_SECONDS);
7426 uint64_t expirationInSeconds = MAX_EXPIRATION_SECONDS);
7436 uint64_t expirationInSeconds = MAX_EXPIRATION_SECONDS);
7447 uint64_t expirationInSeconds = MAX_EXPIRATION_SECONDS);
7459 uint64_t expirationInSeconds = MAX_EXPIRATION_SECONDS);
7469 uint64_t expirationInSeconds = MAX_EXPIRATION_SECONDS);
7480 uint64_t expirationInSeconds = MAX_EXPIRATION_SECONDS);
7507 const std::shared_ptr<Aws::IOStream>& body,
7508 bool isChunked)
const override;
7512 const std::shared_ptr<Aws::Auth::AWSCredentialsProvider> credentialsProvider);
7514 struct CrtClientShutdownCallbackDataWrapper {
7516 std::function<void(
void*)> fn;
7517 std::shared_ptr<Aws::Utils::Threading::Semaphore> clientShutdownSem;
7520 static void CrtClientShutdownCallback(
void *data);
7521 void CancelCrtRequestAsync(aws_s3_meta_request *meta_request)
const;
7522 static int S3CrtRequestHeadersCallback(aws_s3_meta_request *meta_request,
const struct aws_http_headers *headers,
int response_status,
void *user_data);
7523 static int S3CrtRequestGetBodyCallback(
struct aws_s3_meta_request *meta_request,
const struct aws_byte_cursor *body, uint64_t range_start,
void *user_data);
7524 static void S3CrtRequestProgressCallback(
struct aws_s3_meta_request *meta_request,
const struct aws_s3_meta_request_progress *progress,
void *user_data);
7525 static void S3CrtRequestFinishCallback(
struct aws_s3_meta_request *meta_request,
const struct aws_s3_meta_request_result *meta_request_result,
void *user_data);
7527 void InitCrtEndpointFromUri(aws_uri &endpoint_uri,
const Aws::Http::URI &uri)
const;
7529 void InitCommonCrtRequestOption(CrtRequestCallbackUserData *userData,
7530 aws_s3_meta_request_options *options,
7534 struct aws_s3_client* m_s3CrtClient = {};
7535 struct aws_signing_config_aws m_s3CrtSigningConfig = {};
7536 struct CrtClientShutdownCallbackDataWrapper m_wrappedData = {};
7537 std::shared_ptr<Aws::Utils::Threading::Semaphore> m_clientShutdownSem;
7538 std::shared_ptr<Aws::Auth::AWSCredentialsProvider> m_credProvider;
7539 std::shared_ptr<Aws::Crt::Auth::ICredentialsProvider> m_crtCredProvider;
7540 std::shared_ptr<S3CrtEndpointProviderBase> m_endpointProvider;
7541 std::shared_ptr<S3ExpressIdentityProvider> m_identityProvider;
7542 S3CrtIdentityProviderUserData m_identityProviderUserData{m_identityProvider};
virtual Model::GetPublicAccessBlockOutcome GetPublicAccessBlock(const Model::GetPublicAccessBlockRequest &request) const
Model::GetBucketCorsOutcomeCallable GetBucketCorsCallable(const GetBucketCorsRequestT &request) const
virtual Model::GetBucketPolicyOutcome GetBucketPolicy(const Model::GetBucketPolicyRequest &request) const
void HeadObjectAsync(const HeadObjectRequestT &request, const HeadObjectResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void PutObjectTaggingAsync(const PutObjectTaggingRequestT &request, const PutObjectTaggingResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual bool MultipartUploadSupported() const
Model::GetBucketIntelligentTieringConfigurationOutcomeCallable GetBucketIntelligentTieringConfigurationCallable(const GetBucketIntelligentTieringConfigurationRequestT &request) const
Model::PutBucketCorsOutcomeCallable PutBucketCorsCallable(const PutBucketCorsRequestT &request) const
Model::GetObjectAclOutcomeCallable GetObjectAclCallable(const GetObjectAclRequestT &request) const
virtual Model::GetObjectLegalHoldOutcome GetObjectLegalHold(const Model::GetObjectLegalHoldRequest &request) const
virtual Model::CopyObjectOutcome CopyObject(const Model::CopyObjectRequest &request) const
void GetBucketEncryptionAsync(const GetBucketEncryptionRequestT &request, const GetBucketEncryptionResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::DeleteBucketMetadataConfigurationOutcome DeleteBucketMetadataConfiguration(const Model::DeleteBucketMetadataConfigurationRequest &request) const
Model::PutPublicAccessBlockOutcomeCallable PutPublicAccessBlockCallable(const PutPublicAccessBlockRequestT &request) const
virtual Model::CreateBucketMetadataTableConfigurationOutcome CreateBucketMetadataTableConfiguration(const Model::CreateBucketMetadataTableConfigurationRequest &request) const
void PutPublicAccessBlockAsync(const PutPublicAccessBlockRequestT &request, const PutPublicAccessBlockResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::PutBucketMetricsConfigurationOutcome PutBucketMetricsConfiguration(const Model::PutBucketMetricsConfigurationRequest &request) const
virtual Model::ListObjectsOutcome ListObjects(const Model::ListObjectsRequest &request) const
void ListPartsAsync(const ListPartsRequestT &request, const ListPartsResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::PutObjectRetentionOutcomeCallable PutObjectRetentionCallable(const PutObjectRetentionRequestT &request) const
Model::ListDirectoryBucketsOutcomeCallable ListDirectoryBucketsCallable(const ListDirectoryBucketsRequestT &request={}) const
void GetObjectAclAsync(const GetObjectAclRequestT &request, const GetObjectAclResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::UploadPartOutcome UploadPart(const Model::UploadPartRequest &request) const
virtual Model::CompleteMultipartUploadOutcome CompleteMultipartUpload(const Model::CompleteMultipartUploadRequest &request) const
Model::PutObjectTaggingOutcomeCallable PutObjectTaggingCallable(const PutObjectTaggingRequestT &request) const
void GetBucketCorsAsync(const GetBucketCorsRequestT &request, const GetBucketCorsResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::PutBucketIntelligentTieringConfigurationOutcomeCallable PutBucketIntelligentTieringConfigurationCallable(const PutBucketIntelligentTieringConfigurationRequestT &request) const
Model::DeleteBucketPolicyOutcomeCallable DeleteBucketPolicyCallable(const DeleteBucketPolicyRequestT &request) const
void DeleteBucketTaggingAsync(const DeleteBucketTaggingRequestT &request, const DeleteBucketTaggingResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Aws::Client::AWSXMLClient BASECLASS
void ListObjectVersionsAsync(const ListObjectVersionsRequestT &request, const ListObjectVersionsResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Aws::Client::StreamOutcome GenerateStreamOutcome(const std::shared_ptr< Http::HttpResponse > &response) const
void PutBucketLoggingAsync(const PutBucketLoggingRequestT &request, const PutBucketLoggingResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::PutObjectRetentionOutcome PutObjectRetention(const Model::PutObjectRetentionRequest &request) const
void AbortMultipartUploadAsync(const AbortMultipartUploadRequestT &request, const AbortMultipartUploadResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::DeleteBucketMetadataConfigurationOutcomeCallable DeleteBucketMetadataConfigurationCallable(const DeleteBucketMetadataConfigurationRequestT &request) const
virtual Model::PutObjectTaggingOutcome PutObjectTagging(const Model::PutObjectTaggingRequest &request) const
static const char * GetAllocationTag()
Aws::String GeneratePresignedUrl(const Aws::String &bucket, const Aws::String &key, Aws::Http::HttpMethod method, uint64_t expirationInSeconds=MAX_EXPIRATION_SECONDS)
Aws::String GeneratePresignedUrlWithSSEC(const Aws::String &bucket, const Aws::String &key, Aws::Http::HttpMethod method, const Aws::String &base64EncodedAES256Key, uint64_t expirationInSeconds=MAX_EXPIRATION_SECONDS)
Model::DeleteObjectOutcomeCallable DeleteObjectCallable(const DeleteObjectRequestT &request) const
void CompleteMultipartUploadAsync(const CompleteMultipartUploadRequestT &request, const CompleteMultipartUploadResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::GetObjectTorrentOutcome GetObjectTorrent(const Model::GetObjectTorrentRequest &request) const
void DeleteObjectTaggingAsync(const DeleteObjectTaggingRequestT &request, const DeleteObjectTaggingResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void DeleteBucketOwnershipControlsAsync(const DeleteBucketOwnershipControlsRequestT &request, const DeleteBucketOwnershipControlsResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void GetBucketIntelligentTieringConfigurationAsync(const GetBucketIntelligentTieringConfigurationRequestT &request, const GetBucketIntelligentTieringConfigurationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void DeleteObjectAsync(const DeleteObjectRequestT &request, const DeleteObjectResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::CreateBucketMetadataTableConfigurationOutcomeCallable CreateBucketMetadataTableConfigurationCallable(const CreateBucketMetadataTableConfigurationRequestT &request) const
Model::GetBucketAnalyticsConfigurationOutcomeCallable GetBucketAnalyticsConfigurationCallable(const GetBucketAnalyticsConfigurationRequestT &request) const
void UploadPartAsync(const UploadPartRequestT &request, const UploadPartResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual void GetObjectAsync(const Model::GetObjectRequest &request, const GetObjectResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void ListObjectsAsync(const ListObjectsRequestT &request, const ListObjectsResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::DeleteObjectTaggingOutcomeCallable DeleteObjectTaggingCallable(const DeleteObjectTaggingRequestT &request) const
void ListBucketsAsync(const ListBucketsResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr, const ListBucketsRequestT &request={}) const
virtual Model::DeleteBucketInventoryConfigurationOutcome DeleteBucketInventoryConfiguration(const Model::DeleteBucketInventoryConfigurationRequest &request) const
Model::CreateBucketMetadataConfigurationOutcomeCallable CreateBucketMetadataConfigurationCallable(const CreateBucketMetadataConfigurationRequestT &request) const
Model::DeleteBucketEncryptionOutcomeCallable DeleteBucketEncryptionCallable(const DeleteBucketEncryptionRequestT &request) const
virtual Model::GetBucketCorsOutcome GetBucketCors(const Model::GetBucketCorsRequest &request) const
virtual Model::DeleteBucketOwnershipControlsOutcome DeleteBucketOwnershipControls(const Model::DeleteBucketOwnershipControlsRequest &request) const
void GetBucketPolicyStatusAsync(const GetBucketPolicyStatusRequestT &request, const GetBucketPolicyStatusResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::DeleteBucketWebsiteOutcome DeleteBucketWebsite(const Model::DeleteBucketWebsiteRequest &request) const
Model::PutBucketPolicyOutcomeCallable PutBucketPolicyCallable(const PutBucketPolicyRequestT &request) const
Model::UploadPartOutcomeCallable UploadPartCallable(const UploadPartRequestT &request) const
virtual Model::UploadPartCopyOutcome UploadPartCopy(const Model::UploadPartCopyRequest &request) const
virtual Model::DeleteBucketEncryptionOutcome DeleteBucketEncryption(const Model::DeleteBucketEncryptionRequest &request) const
void CreateBucketMetadataTableConfigurationAsync(const CreateBucketMetadataTableConfigurationRequestT &request, const CreateBucketMetadataTableConfigurationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::RestoreObjectOutcomeCallable RestoreObjectCallable(const RestoreObjectRequestT &request) const
Model::PutObjectAclOutcomeCallable PutObjectAclCallable(const PutObjectAclRequestT &request) const
Model::ListBucketMetricsConfigurationsOutcomeCallable ListBucketMetricsConfigurationsCallable(const ListBucketMetricsConfigurationsRequestT &request) const
Model::PutBucketInventoryConfigurationOutcomeCallable PutBucketInventoryConfigurationCallable(const PutBucketInventoryConfigurationRequestT &request) const
Model::PutObjectLockConfigurationOutcomeCallable PutObjectLockConfigurationCallable(const PutObjectLockConfigurationRequestT &request) const
Model::DeleteBucketMetadataTableConfigurationOutcomeCallable DeleteBucketMetadataTableConfigurationCallable(const DeleteBucketMetadataTableConfigurationRequestT &request) const
Model::DeleteObjectsOutcomeCallable DeleteObjectsCallable(const DeleteObjectsRequestT &request) const
virtual Model::DeleteObjectsOutcome DeleteObjects(const Model::DeleteObjectsRequest &request) const
void PutBucketVersioningAsync(const PutBucketVersioningRequestT &request, const PutBucketVersioningResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::GetObjectRetentionOutcomeCallable GetObjectRetentionCallable(const GetObjectRetentionRequestT &request) const
void GetObjectAttributesAsync(const GetObjectAttributesRequestT &request, const GetObjectAttributesResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::ListBucketIntelligentTieringConfigurationsOutcomeCallable ListBucketIntelligentTieringConfigurationsCallable(const ListBucketIntelligentTieringConfigurationsRequestT &request) const
void PutBucketMetricsConfigurationAsync(const PutBucketMetricsConfigurationRequestT &request, const PutBucketMetricsConfigurationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::PutBucketNotificationConfigurationOutcome PutBucketNotificationConfiguration(const Model::PutBucketNotificationConfigurationRequest &request) const
Model::GetBucketAclOutcomeCallable GetBucketAclCallable(const GetBucketAclRequestT &request) const
Model::DeleteBucketIntelligentTieringConfigurationOutcomeCallable DeleteBucketIntelligentTieringConfigurationCallable(const DeleteBucketIntelligentTieringConfigurationRequestT &request) const
void GetBucketOwnershipControlsAsync(const GetBucketOwnershipControlsRequestT &request, const GetBucketOwnershipControlsResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
static const char * GetServiceName()
S3CrtClient & operator=(const S3CrtClient &rhs)
Model::DeleteBucketInventoryConfigurationOutcomeCallable DeleteBucketInventoryConfigurationCallable(const DeleteBucketInventoryConfigurationRequestT &request) const
void GetBucketMetadataTableConfigurationAsync(const GetBucketMetadataTableConfigurationRequestT &request, const GetBucketMetadataTableConfigurationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::PutBucketWebsiteOutcomeCallable PutBucketWebsiteCallable(const PutBucketWebsiteRequestT &request) const
Model::CreateMultipartUploadOutcomeCallable CreateMultipartUploadCallable(const CreateMultipartUploadRequestT &request) const
virtual Model::PutBucketRequestPaymentOutcome PutBucketRequestPayment(const Model::PutBucketRequestPaymentRequest &request) const
void PutBucketWebsiteAsync(const PutBucketWebsiteRequestT &request, const PutBucketWebsiteResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::ListObjectsV2OutcomeCallable ListObjectsV2Callable(const ListObjectsV2RequestT &request) const
void RenameObjectAsync(const RenameObjectRequestT &request, const RenameObjectResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::PutBucketIntelligentTieringConfigurationOutcome PutBucketIntelligentTieringConfiguration(const Model::PutBucketIntelligentTieringConfigurationRequest &request) const
virtual Model::ListPartsOutcome ListParts(const Model::ListPartsRequest &request) const
void AddContentLengthToRequest(const std::shared_ptr< Aws::Http::HttpRequest > &httpRequest, const std::shared_ptr< Aws::IOStream > &body, bool isChunked) const override
void PutBucketReplicationAsync(const PutBucketReplicationRequestT &request, const PutBucketReplicationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void CreateSessionAsync(const CreateSessionRequestT &request, const CreateSessionResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void WriteGetObjectResponseAsync(const WriteGetObjectResponseRequestT &request, const WriteGetObjectResponseResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void RestoreObjectAsync(const RestoreObjectRequestT &request, const RestoreObjectResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Aws::String GeneratePresignedUrlWithSSEKMS(const Aws::String &bucket, const Aws::String &key, Aws::Http::HttpMethod method, Http::HeaderValueCollection customizedHeaders, const Aws::String &kmsMasterKeyId="", uint64_t expirationInSeconds=MAX_EXPIRATION_SECONDS)
Aws::String GeneratePresignedUrlWithSSEC(const Aws::String &bucket, const Aws::String &key, Aws::Http::HttpMethod method, Http::HeaderValueCollection customizedHeaders, const Aws::String &base64EncodedAES256Key, uint64_t expirationInSeconds=MAX_EXPIRATION_SECONDS)
virtual Model::PutBucketInventoryConfigurationOutcome PutBucketInventoryConfiguration(const Model::PutBucketInventoryConfigurationRequest &request) const
void GetBucketLifecycleConfigurationAsync(const GetBucketLifecycleConfigurationRequestT &request, const GetBucketLifecycleConfigurationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::HeadObjectOutcome HeadObject(const Model::HeadObjectRequest &request) const
Model::ListBucketInventoryConfigurationsOutcomeCallable ListBucketInventoryConfigurationsCallable(const ListBucketInventoryConfigurationsRequestT &request) const
void GetBucketAccelerateConfigurationAsync(const GetBucketAccelerateConfigurationRequestT &request, const GetBucketAccelerateConfigurationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void ListBucketInventoryConfigurationsAsync(const ListBucketInventoryConfigurationsRequestT &request, const ListBucketInventoryConfigurationsResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::RenameObjectOutcomeCallable RenameObjectCallable(const RenameObjectRequestT &request) const
virtual Model::DeleteBucketIntelligentTieringConfigurationOutcome DeleteBucketIntelligentTieringConfiguration(const Model::DeleteBucketIntelligentTieringConfigurationRequest &request) const
void DeleteBucketEncryptionAsync(const DeleteBucketEncryptionRequestT &request, const DeleteBucketEncryptionResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void DeleteBucketCorsAsync(const DeleteBucketCorsRequestT &request, const DeleteBucketCorsResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::GetBucketLifecycleConfigurationOutcome GetBucketLifecycleConfiguration(const Model::GetBucketLifecycleConfigurationRequest &request) const
Model::HeadBucketOutcomeCallable HeadBucketCallable(const HeadBucketRequestT &request) const
Model::GetBucketRequestPaymentOutcomeCallable GetBucketRequestPaymentCallable(const GetBucketRequestPaymentRequestT &request) const
Model::ListObjectVersionsOutcomeCallable ListObjectVersionsCallable(const ListObjectVersionsRequestT &request) const
Aws::Client::XmlOutcome GenerateXmlOutcome(const std::shared_ptr< Http::HttpResponse > &response) const
virtual Model::GetObjectOutcome GetObject(const Model::GetObjectRequest &request) const
Model::GetBucketVersioningOutcomeCallable GetBucketVersioningCallable(const GetBucketVersioningRequestT &request) const
S3CrtClient(const Aws::S3Crt::ClientConfiguration &clientConfiguration=Aws::S3Crt::ClientConfiguration(), Aws::Client::AWSAuthV4Signer::PayloadSigningPolicy signPayloads=Aws::Client::AWSAuthV4Signer::PayloadSigningPolicy::Never, bool useVirtualAddressing=true, Aws::S3Crt::US_EAST_1_REGIONAL_ENDPOINT_OPTION USEast1RegionalEndPointOption=Aws::S3Crt::US_EAST_1_REGIONAL_ENDPOINT_OPTION::NOT_SET, const Aws::Auth::DefaultAWSCredentialsProviderChain &credentialsProvider=Aws::Auth::DefaultAWSCredentialsProviderChain())
S3CrtClient(const S3CrtClient &rhs)
Model::DeleteBucketOwnershipControlsOutcomeCallable DeleteBucketOwnershipControlsCallable(const DeleteBucketOwnershipControlsRequestT &request) const
void GetBucketReplicationAsync(const GetBucketReplicationRequestT &request, const GetBucketReplicationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void PutObjectAclAsync(const PutObjectAclRequestT &request, const PutObjectAclResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void DeleteBucketPolicyAsync(const DeleteBucketPolicyRequestT &request, const DeleteBucketPolicyResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::GetBucketMetadataConfigurationOutcomeCallable GetBucketMetadataConfigurationCallable(const GetBucketMetadataConfigurationRequestT &request) const
Model::GetBucketReplicationOutcomeCallable GetBucketReplicationCallable(const GetBucketReplicationRequestT &request) const
Model::GetObjectTaggingOutcomeCallable GetObjectTaggingCallable(const GetObjectTaggingRequestT &request) const
virtual Model::ListObjectVersionsOutcome ListObjectVersions(const Model::ListObjectVersionsRequest &request) const
virtual Model::PutBucketLifecycleConfigurationOutcome PutBucketLifecycleConfiguration(const Model::PutBucketLifecycleConfigurationRequest &request) const
Aws::String GeneratePresignedUrlWithSSES3(const Aws::String &bucket, const Aws::String &key, Aws::Http::HttpMethod method, Http::HeaderValueCollection customizedHeaders, uint64_t expirationInSeconds=MAX_EXPIRATION_SECONDS)
Aws::String GeneratePresignedUrl(const Aws::String &bucket, const Aws::String &key, Aws::Http::HttpMethod method, const Http::HeaderValueCollection &customizedHeaders, uint64_t expirationInSeconds=MAX_EXPIRATION_SECONDS)
virtual Model::DeleteBucketReplicationOutcome DeleteBucketReplication(const Model::DeleteBucketReplicationRequest &request) const
void PutObjectLockConfigurationAsync(const PutObjectLockConfigurationRequestT &request, const PutObjectLockConfigurationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void GetObjectRetentionAsync(const GetObjectRetentionRequestT &request, const GetObjectRetentionResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void PutObjectLegalHoldAsync(const PutObjectLegalHoldRequestT &request, const PutObjectLegalHoldResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void OverrideEndpoint(const Aws::String &endpoint)
Model::GetBucketMetricsConfigurationOutcomeCallable GetBucketMetricsConfigurationCallable(const GetBucketMetricsConfigurationRequestT &request) const
virtual Model::DeletePublicAccessBlockOutcome DeletePublicAccessBlock(const Model::DeletePublicAccessBlockRequest &request) const
void ListBucketMetricsConfigurationsAsync(const ListBucketMetricsConfigurationsRequestT &request, const ListBucketMetricsConfigurationsResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual void CopyObjectAsync(const Model::CopyObjectRequest &request, const CopyObjectResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::GetBucketMetricsConfigurationOutcome GetBucketMetricsConfiguration(const Model::GetBucketMetricsConfigurationRequest &request) const
Model::DeleteBucketLifecycleOutcomeCallable DeleteBucketLifecycleCallable(const DeleteBucketLifecycleRequestT &request) const
virtual Model::DeleteBucketCorsOutcome DeleteBucketCors(const Model::DeleteBucketCorsRequest &request) const
Model::GetObjectLegalHoldOutcomeCallable GetObjectLegalHoldCallable(const GetObjectLegalHoldRequestT &request) const
Model::SelectObjectContentOutcomeCallable SelectObjectContentCallable(SelectObjectContentRequestT &request) const
Model::DeleteBucketCorsOutcomeCallable DeleteBucketCorsCallable(const DeleteBucketCorsRequestT &request) const
virtual Model::DeleteObjectOutcome DeleteObject(const Model::DeleteObjectRequest &request) const
Model::GetBucketOwnershipControlsOutcomeCallable GetBucketOwnershipControlsCallable(const GetBucketOwnershipControlsRequestT &request) const
Model::PutBucketEncryptionOutcomeCallable PutBucketEncryptionCallable(const PutBucketEncryptionRequestT &request) const
void GetBucketAnalyticsConfigurationAsync(const GetBucketAnalyticsConfigurationRequestT &request, const GetBucketAnalyticsConfigurationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::GetBucketInventoryConfigurationOutcome GetBucketInventoryConfiguration(const Model::GetBucketInventoryConfigurationRequest &request) const
void PutBucketTaggingAsync(const PutBucketTaggingRequestT &request, const PutBucketTaggingResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void DeleteBucketLifecycleAsync(const DeleteBucketLifecycleRequestT &request, const DeleteBucketLifecycleResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::CreateBucketMetadataConfigurationOutcome CreateBucketMetadataConfiguration(const Model::CreateBucketMetadataConfigurationRequest &request) const
Model::GetObjectAttributesOutcomeCallable GetObjectAttributesCallable(const GetObjectAttributesRequestT &request) const
virtual Model::GetBucketAccelerateConfigurationOutcome GetBucketAccelerateConfiguration(const Model::GetBucketAccelerateConfigurationRequest &request) const
void UploadPartCopyAsync(const UploadPartCopyRequestT &request, const UploadPartCopyResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::PutBucketAccelerateConfigurationOutcomeCallable PutBucketAccelerateConfigurationCallable(const PutBucketAccelerateConfigurationRequestT &request) const
S3CrtClientConfiguration ClientConfigurationType
virtual Model::DeleteObjectTaggingOutcome DeleteObjectTagging(const Model::DeleteObjectTaggingRequest &request) const
virtual Model::ListDirectoryBucketsOutcome ListDirectoryBuckets(const Model::ListDirectoryBucketsRequest &request={}) const
void GetBucketWebsiteAsync(const GetBucketWebsiteRequestT &request, const GetBucketWebsiteResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual void PutObjectAsync(const Model::PutObjectRequest &request, const PutObjectResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::GetObjectAclOutcome GetObjectAcl(const Model::GetObjectAclRequest &request) const
virtual Model::PutBucketAccelerateConfigurationOutcome PutBucketAccelerateConfiguration(const Model::PutBucketAccelerateConfigurationRequest &request) const
void PutBucketEncryptionAsync(const PutBucketEncryptionRequestT &request, const PutBucketEncryptionResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::ListBucketInventoryConfigurationsOutcome ListBucketInventoryConfigurations(const Model::ListBucketInventoryConfigurationsRequest &request) const
void GetBucketLoggingAsync(const GetBucketLoggingRequestT &request, const GetBucketLoggingResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void GetBucketRequestPaymentAsync(const GetBucketRequestPaymentRequestT &request, const GetBucketRequestPaymentResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::GetBucketVersioningOutcome GetBucketVersioning(const Model::GetBucketVersioningRequest &request) const
Model::GetBucketAccelerateConfigurationOutcomeCallable GetBucketAccelerateConfigurationCallable(const GetBucketAccelerateConfigurationRequestT &request) const
Model::PutBucketRequestPaymentOutcomeCallable PutBucketRequestPaymentCallable(const PutBucketRequestPaymentRequestT &request) const
virtual Model::DeleteBucketOutcome DeleteBucket(const Model::DeleteBucketRequest &request) const
void ListBucketAnalyticsConfigurationsAsync(const ListBucketAnalyticsConfigurationsRequestT &request, const ListBucketAnalyticsConfigurationsResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void ListDirectoryBucketsAsync(const ListDirectoryBucketsResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr, const ListDirectoryBucketsRequestT &request={}) const
virtual Model::PutBucketPolicyOutcome PutBucketPolicy(const Model::PutBucketPolicyRequest &request) const
virtual Model::UpdateBucketMetadataInventoryTableConfigurationOutcome UpdateBucketMetadataInventoryTableConfiguration(const Model::UpdateBucketMetadataInventoryTableConfigurationRequest &request) const
void ListMultipartUploadsAsync(const ListMultipartUploadsRequestT &request, const ListMultipartUploadsResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::PutObjectOutcome PutObject(const Model::PutObjectRequest &request) const
void GetObjectLegalHoldAsync(const GetObjectLegalHoldRequestT &request, const GetObjectLegalHoldResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
S3CrtClient(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, const Aws::S3Crt::ClientConfiguration &clientConfiguration=Aws::S3Crt::ClientConfiguration(), Aws::Client::AWSAuthV4Signer::PayloadSigningPolicy signPayloads=Aws::Client::AWSAuthV4Signer::PayloadSigningPolicy::Never, bool useVirtualAddressing=true, Aws::S3Crt::US_EAST_1_REGIONAL_ENDPOINT_OPTION USEast1RegionalEndPointOption=Aws::S3Crt::US_EAST_1_REGIONAL_ENDPOINT_OPTION::NOT_SET)
Model::UpdateBucketMetadataInventoryTableConfigurationOutcomeCallable UpdateBucketMetadataInventoryTableConfigurationCallable(const UpdateBucketMetadataInventoryTableConfigurationRequestT &request) const
virtual Model::ListBucketAnalyticsConfigurationsOutcome ListBucketAnalyticsConfigurations(const Model::ListBucketAnalyticsConfigurationsRequest &request) const
virtual Model::CreateMultipartUploadOutcome CreateMultipartUpload(const Model::CreateMultipartUploadRequest &request) const
void DeleteBucketAsync(const DeleteBucketRequestT &request, const DeleteBucketResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::GetBucketLifecycleConfigurationOutcomeCallable GetBucketLifecycleConfigurationCallable(const GetBucketLifecycleConfigurationRequestT &request) const
void DeleteBucketInventoryConfigurationAsync(const DeleteBucketInventoryConfigurationRequestT &request, const DeleteBucketInventoryConfigurationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::GetBucketAclOutcome GetBucketAcl(const Model::GetBucketAclRequest &request) const
void PutBucketAnalyticsConfigurationAsync(const PutBucketAnalyticsConfigurationRequestT &request, const PutBucketAnalyticsConfigurationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::ListBucketsOutcomeCallable ListBucketsCallable(const ListBucketsRequestT &request={}) const
virtual Model::PutBucketEncryptionOutcome PutBucketEncryption(const Model::PutBucketEncryptionRequest &request) const
virtual Model::WriteGetObjectResponseOutcome WriteGetObjectResponse(const Model::WriteGetObjectResponseRequest &request) const
Model::DeleteBucketMetricsConfigurationOutcomeCallable DeleteBucketMetricsConfigurationCallable(const DeleteBucketMetricsConfigurationRequestT &request) const
virtual Model::GetBucketLocationOutcome GetBucketLocation(const Model::GetBucketLocationRequest &request) const
virtual Model::DeleteBucketPolicyOutcome DeleteBucketPolicy(const Model::DeleteBucketPolicyRequest &request) const
virtual Model::HeadBucketOutcome HeadBucket(const Model::HeadBucketRequest &request) const
Model::AbortMultipartUploadOutcomeCallable AbortMultipartUploadCallable(const AbortMultipartUploadRequestT &request) const
Model::PutBucketTaggingOutcomeCallable PutBucketTaggingCallable(const PutBucketTaggingRequestT &request) const
Model::DeletePublicAccessBlockOutcomeCallable DeletePublicAccessBlockCallable(const DeletePublicAccessBlockRequestT &request) const
void CreateMultipartUploadAsync(const CreateMultipartUploadRequestT &request, const CreateMultipartUploadResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void PutBucketAclAsync(const PutBucketAclRequestT &request, const PutBucketAclResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Aws::String GeneratePresignedUrlWithSSES3(const Aws::String &bucket, const Aws::String &key, Aws::Http::HttpMethod method, uint64_t expirationInSeconds=MAX_EXPIRATION_SECONDS)
virtual Model::PutObjectLockConfigurationOutcome PutObjectLockConfiguration(const Model::PutObjectLockConfigurationRequest &request) const
void DeleteBucketMetricsConfigurationAsync(const DeleteBucketMetricsConfigurationRequestT &request, const DeleteBucketMetricsConfigurationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::CreateSessionOutcome CreateSession(const Model::CreateSessionRequest &request) const
Model::HeadObjectOutcomeCallable HeadObjectCallable(const HeadObjectRequestT &request) const
virtual Model::PutBucketAclOutcome PutBucketAcl(const Model::PutBucketAclRequest &request) const
void DeleteBucketMetadataTableConfigurationAsync(const DeleteBucketMetadataTableConfigurationRequestT &request, const DeleteBucketMetadataTableConfigurationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::AbortMultipartUploadOutcome AbortMultipartUpload(const Model::AbortMultipartUploadRequest &request) const
void PutObjectRetentionAsync(const PutObjectRetentionRequestT &request, const PutObjectRetentionResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::PutBucketOwnershipControlsOutcome PutBucketOwnershipControls(const Model::PutBucketOwnershipControlsRequest &request) const
Model::GetObjectTorrentOutcomeCallable GetObjectTorrentCallable(const GetObjectTorrentRequestT &request) const
virtual Model::GetBucketEncryptionOutcome GetBucketEncryption(const Model::GetBucketEncryptionRequest &request) const
S3CrtEndpointProvider EndpointProviderType
Model::ListMultipartUploadsOutcomeCallable ListMultipartUploadsCallable(const ListMultipartUploadsRequestT &request) const
virtual Model::RestoreObjectOutcome RestoreObject(const Model::RestoreObjectRequest &request) const
Model::CreateSessionOutcomeCallable CreateSessionCallable(const CreateSessionRequestT &request) const
virtual Model::PutObjectLegalHoldOutcome PutObjectLegalHold(const Model::PutObjectLegalHoldRequest &request) const
virtual Model::GetBucketLoggingOutcome GetBucketLogging(const Model::GetBucketLoggingRequest &request) const
Model::GetBucketTaggingOutcomeCallable GetBucketTaggingCallable(const GetBucketTaggingRequestT &request) const
Model::PutBucketOwnershipControlsOutcomeCallable PutBucketOwnershipControlsCallable(const PutBucketOwnershipControlsRequestT &request) const
Model::PutBucketAnalyticsConfigurationOutcomeCallable PutBucketAnalyticsConfigurationCallable(const PutBucketAnalyticsConfigurationRequestT &request) const
Model::PutBucketLifecycleConfigurationOutcomeCallable PutBucketLifecycleConfigurationCallable(const PutBucketLifecycleConfigurationRequestT &request) const
virtual Model::PutBucketReplicationOutcome PutBucketReplication(const Model::PutBucketReplicationRequest &request) const
Model::GetBucketMetadataTableConfigurationOutcomeCallable GetBucketMetadataTableConfigurationCallable(const GetBucketMetadataTableConfigurationRequestT &request) const
virtual Model::ListBucketsOutcome ListBuckets(const Model::ListBucketsRequest &request={}) const
Model::CompleteMultipartUploadOutcomeCallable CompleteMultipartUploadCallable(const CompleteMultipartUploadRequestT &request) const
virtual Model::ListBucketIntelligentTieringConfigurationsOutcome ListBucketIntelligentTieringConfigurations(const Model::ListBucketIntelligentTieringConfigurationsRequest &request) const
virtual Model::GetBucketAnalyticsConfigurationOutcome GetBucketAnalyticsConfiguration(const Model::GetBucketAnalyticsConfigurationRequest &request) const
Model::GetBucketNotificationConfigurationOutcomeCallable GetBucketNotificationConfigurationCallable(const GetBucketNotificationConfigurationRequestT &request) const
void GetObjectTaggingAsync(const GetObjectTaggingRequestT &request, const GetObjectTaggingResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::DeleteBucketMetricsConfigurationOutcome DeleteBucketMetricsConfiguration(const Model::DeleteBucketMetricsConfigurationRequest &request) const
Model::DeleteBucketReplicationOutcomeCallable DeleteBucketReplicationCallable(const DeleteBucketReplicationRequestT &request) const
Model::CreateBucketOutcomeCallable CreateBucketCallable(const CreateBucketRequestT &request) const
Model::GetBucketWebsiteOutcomeCallable GetBucketWebsiteCallable(const GetBucketWebsiteRequestT &request) const
virtual Model::SelectObjectContentOutcome SelectObjectContent(Model::SelectObjectContentRequest &request) const
Model::GetBucketLoggingOutcomeCallable GetBucketLoggingCallable(const GetBucketLoggingRequestT &request) const
virtual Model::DeleteBucketLifecycleOutcome DeleteBucketLifecycle(const Model::DeleteBucketLifecycleRequest &request) const
void GetBucketInventoryConfigurationAsync(const GetBucketInventoryConfigurationRequestT &request, const GetBucketInventoryConfigurationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::PutBucketWebsiteOutcome PutBucketWebsite(const Model::PutBucketWebsiteRequest &request) const
virtual Model::CreateBucketOutcome CreateBucket(const Model::CreateBucketRequest &request) const
virtual Model::ListObjectsV2Outcome ListObjectsV2(const Model::ListObjectsV2Request &request) const
S3CrtClient(S3CrtClient &&rhs) noexcept
void DeleteBucketMetadataConfigurationAsync(const DeleteBucketMetadataConfigurationRequestT &request, const DeleteBucketMetadataConfigurationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::PutBucketAnalyticsConfigurationOutcome PutBucketAnalyticsConfiguration(const Model::PutBucketAnalyticsConfigurationRequest &request) const
Model::PutBucketReplicationOutcomeCallable PutBucketReplicationCallable(const PutBucketReplicationRequestT &request) const
void PutBucketIntelligentTieringConfigurationAsync(const PutBucketIntelligentTieringConfigurationRequestT &request, const PutBucketIntelligentTieringConfigurationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void GetBucketTaggingAsync(const GetBucketTaggingRequestT &request, const GetBucketTaggingResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::GetBucketTaggingOutcome GetBucketTagging(const Model::GetBucketTaggingRequest &request) const
void DeleteBucketAnalyticsConfigurationAsync(const DeleteBucketAnalyticsConfigurationRequestT &request, const DeleteBucketAnalyticsConfigurationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::PutPublicAccessBlockOutcome PutPublicAccessBlock(const Model::PutPublicAccessBlockRequest &request) const
Model::GetBucketLocationOutcomeCallable GetBucketLocationCallable(const GetBucketLocationRequestT &request) const
Model::DeleteBucketWebsiteOutcomeCallable DeleteBucketWebsiteCallable(const DeleteBucketWebsiteRequestT &request) const
void GetBucketPolicyAsync(const GetBucketPolicyRequestT &request, const GetBucketPolicyResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::ListMultipartUploadsOutcome ListMultipartUploads(const Model::ListMultipartUploadsRequest &request) const
void PutBucketAccelerateConfigurationAsync(const PutBucketAccelerateConfigurationRequestT &request, const PutBucketAccelerateConfigurationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void GetBucketMetadataConfigurationAsync(const GetBucketMetadataConfigurationRequestT &request, const GetBucketMetadataConfigurationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::WriteGetObjectResponseOutcomeCallable WriteGetObjectResponseCallable(const WriteGetObjectResponseRequestT &request) const
virtual Model::GetObjectAttributesOutcome GetObjectAttributes(const Model::GetObjectAttributesRequest &request) const
void SelectObjectContentAsync(SelectObjectContentRequestT &request, const SelectObjectContentResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void GetBucketMetricsConfigurationAsync(const GetBucketMetricsConfigurationRequestT &request, const GetBucketMetricsConfigurationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
S3CrtClient(const Aws::Auth::AWSCredentials &credentials, const Aws::S3Crt::ClientConfiguration &clientConfiguration=Aws::S3Crt::ClientConfiguration(), Aws::Client::AWSAuthV4Signer::PayloadSigningPolicy signPayloads=Aws::Client::AWSAuthV4Signer::PayloadSigningPolicy::Never, bool useVirtualAddressing=true, Aws::S3Crt::US_EAST_1_REGIONAL_ENDPOINT_OPTION USEast1RegionalEndPointOption=Aws::S3Crt::US_EAST_1_REGIONAL_ENDPOINT_OPTION::NOT_SET)
void GetBucketAclAsync(const GetBucketAclRequestT &request, const GetBucketAclResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void DeletePublicAccessBlockAsync(const DeletePublicAccessBlockRequestT &request, const DeletePublicAccessBlockResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::PutBucketTaggingOutcome PutBucketTagging(const Model::PutBucketTaggingRequest &request) const
virtual Model::PutBucketLoggingOutcome PutBucketLogging(const Model::PutBucketLoggingRequest &request) const
virtual Model::RenameObjectOutcome RenameObject(const Model::RenameObjectRequest &request) const
void GetBucketLocationAsync(const GetBucketLocationRequestT &request, const GetBucketLocationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::DeleteBucketTaggingOutcomeCallable DeleteBucketTaggingCallable(const DeleteBucketTaggingRequestT &request) const
void DeleteObjectsAsync(const DeleteObjectsRequestT &request, const DeleteObjectsResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::GetBucketMetadataTableConfigurationOutcome GetBucketMetadataTableConfiguration(const Model::GetBucketMetadataTableConfigurationRequest &request) const
virtual Model::DeleteBucketTaggingOutcome DeleteBucketTagging(const Model::DeleteBucketTaggingRequest &request) const
virtual Model::GetObjectTaggingOutcome GetObjectTagging(const Model::GetObjectTaggingRequest &request) const
void ListObjectsV2Async(const ListObjectsV2RequestT &request, const ListObjectsV2ResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::DeleteBucketMetadataTableConfigurationOutcome DeleteBucketMetadataTableConfiguration(const Model::DeleteBucketMetadataTableConfigurationRequest &request) const
virtual Model::GetBucketIntelligentTieringConfigurationOutcome GetBucketIntelligentTieringConfiguration(const Model::GetBucketIntelligentTieringConfigurationRequest &request) const
virtual Model::GetBucketMetadataConfigurationOutcome GetBucketMetadataConfiguration(const Model::GetBucketMetadataConfigurationRequest &request) const
Model::DeleteBucketOutcomeCallable DeleteBucketCallable(const DeleteBucketRequestT &request) const
virtual Model::GetBucketWebsiteOutcome GetBucketWebsite(const Model::GetBucketWebsiteRequest &request) const
virtual Model::GetObjectLockConfigurationOutcome GetObjectLockConfiguration(const Model::GetObjectLockConfigurationRequest &request) const
Model::UpdateBucketMetadataJournalTableConfigurationOutcomeCallable UpdateBucketMetadataJournalTableConfigurationCallable(const UpdateBucketMetadataJournalTableConfigurationRequestT &request) const
virtual Model::GetBucketNotificationConfigurationOutcome GetBucketNotificationConfiguration(const Model::GetBucketNotificationConfigurationRequest &request) const
void PutBucketPolicyAsync(const PutBucketPolicyRequestT &request, const PutBucketPolicyResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::GetBucketEncryptionOutcomeCallable GetBucketEncryptionCallable(const GetBucketEncryptionRequestT &request) const
virtual Model::GetBucketReplicationOutcome GetBucketReplication(const Model::GetBucketReplicationRequest &request) const
virtual Model::PutBucketVersioningOutcome PutBucketVersioning(const Model::PutBucketVersioningRequest &request) const
void DeleteBucketReplicationAsync(const DeleteBucketReplicationRequestT &request, const DeleteBucketReplicationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
S3CrtClient & operator=(S3CrtClient &&rhs) noexcept
void PutBucketRequestPaymentAsync(const PutBucketRequestPaymentRequestT &request, const PutBucketRequestPaymentResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void GetObjectLockConfigurationAsync(const GetObjectLockConfigurationRequestT &request, const GetObjectLockConfigurationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void PutBucketCorsAsync(const PutBucketCorsRequestT &request, const PutBucketCorsResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::GetBucketPolicyOutcomeCallable GetBucketPolicyCallable(const GetBucketPolicyRequestT &request) const
virtual Model::GetObjectRetentionOutcome GetObjectRetention(const Model::GetObjectRetentionRequest &request) const
Model::PutBucketMetricsConfigurationOutcomeCallable PutBucketMetricsConfigurationCallable(const PutBucketMetricsConfigurationRequestT &request) const
Model::ListObjectsOutcomeCallable ListObjectsCallable(const ListObjectsRequestT &request) const
virtual Model::ListBucketMetricsConfigurationsOutcome ListBucketMetricsConfigurations(const Model::ListBucketMetricsConfigurationsRequest &request) const
void GetObjectTorrentAsync(const GetObjectTorrentRequestT &request, const GetObjectTorrentResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::PutBucketAclOutcomeCallable PutBucketAclCallable(const PutBucketAclRequestT &request) const
Model::PutBucketLoggingOutcomeCallable PutBucketLoggingCallable(const PutBucketLoggingRequestT &request) const
virtual Model::PutBucketCorsOutcome PutBucketCors(const Model::PutBucketCorsRequest &request) const
void HeadBucketAsync(const HeadBucketRequestT &request, const HeadBucketResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::GetObjectLockConfigurationOutcomeCallable GetObjectLockConfigurationCallable(const GetObjectLockConfigurationRequestT &request) const
Model::ListPartsOutcomeCallable ListPartsCallable(const ListPartsRequestT &request) const
void PutBucketOwnershipControlsAsync(const PutBucketOwnershipControlsRequestT &request, const PutBucketOwnershipControlsResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void UpdateBucketMetadataJournalTableConfigurationAsync(const UpdateBucketMetadataJournalTableConfigurationRequestT &request, const UpdateBucketMetadataJournalTableConfigurationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
std::shared_ptr< S3CrtEndpointProviderBase > & accessEndpointProvider()
virtual Model::PutObjectAclOutcome PutObjectAcl(const Model::PutObjectAclRequest &request) const
Model::PutBucketVersioningOutcomeCallable PutBucketVersioningCallable(const PutBucketVersioningRequestT &request) const
void CreateBucketMetadataConfigurationAsync(const CreateBucketMetadataConfigurationRequestT &request, const CreateBucketMetadataConfigurationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::GetBucketPolicyStatusOutcome GetBucketPolicyStatus(const Model::GetBucketPolicyStatusRequest &request) const
virtual Model::GetBucketRequestPaymentOutcome GetBucketRequestPayment(const Model::GetBucketRequestPaymentRequest &request) const
void UpdateBucketMetadataInventoryTableConfigurationAsync(const UpdateBucketMetadataInventoryTableConfigurationRequestT &request, const UpdateBucketMetadataInventoryTableConfigurationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::GetBucketInventoryConfigurationOutcomeCallable GetBucketInventoryConfigurationCallable(const GetBucketInventoryConfigurationRequestT &request) const
Model::GetBucketPolicyStatusOutcomeCallable GetBucketPolicyStatusCallable(const GetBucketPolicyStatusRequestT &request) const
Model::GetPublicAccessBlockOutcomeCallable GetPublicAccessBlockCallable(const GetPublicAccessBlockRequestT &request) const
virtual Model::UpdateBucketMetadataJournalTableConfigurationOutcome UpdateBucketMetadataJournalTableConfiguration(const Model::UpdateBucketMetadataJournalTableConfigurationRequest &request) const
void DeleteBucketIntelligentTieringConfigurationAsync(const DeleteBucketIntelligentTieringConfigurationRequestT &request, const DeleteBucketIntelligentTieringConfigurationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void PutBucketInventoryConfigurationAsync(const PutBucketInventoryConfigurationRequestT &request, const PutBucketInventoryConfigurationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void PutBucketLifecycleConfigurationAsync(const PutBucketLifecycleConfigurationRequestT &request, const PutBucketLifecycleConfigurationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::UploadPartCopyOutcomeCallable UploadPartCopyCallable(const UploadPartCopyRequestT &request) const
void CreateBucketAsync(const CreateBucketRequestT &request, const CreateBucketResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::PutBucketNotificationConfigurationOutcomeCallable PutBucketNotificationConfigurationCallable(const PutBucketNotificationConfigurationRequestT &request) const
Model::PutObjectLegalHoldOutcomeCallable PutObjectLegalHoldCallable(const PutObjectLegalHoldRequestT &request) const
Model::DeleteBucketAnalyticsConfigurationOutcomeCallable DeleteBucketAnalyticsConfigurationCallable(const DeleteBucketAnalyticsConfigurationRequestT &request) const
void GetPublicAccessBlockAsync(const GetPublicAccessBlockRequestT &request, const GetPublicAccessBlockResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Aws::String GeneratePresignedUrlWithSSEKMS(const Aws::String &bucket, const Aws::String &key, Aws::Http::HttpMethod method, const Aws::String &kmsMasterKeyId="", uint64_t expirationInSeconds=MAX_EXPIRATION_SECONDS)
virtual Model::GetBucketOwnershipControlsOutcome GetBucketOwnershipControls(const Model::GetBucketOwnershipControlsRequest &request) const
virtual Model::DeleteBucketAnalyticsConfigurationOutcome DeleteBucketAnalyticsConfiguration(const Model::DeleteBucketAnalyticsConfigurationRequest &request) const
Model::ListBucketAnalyticsConfigurationsOutcomeCallable ListBucketAnalyticsConfigurationsCallable(const ListBucketAnalyticsConfigurationsRequestT &request) const
void PutBucketNotificationConfigurationAsync(const PutBucketNotificationConfigurationRequestT &request, const PutBucketNotificationConfigurationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void GetBucketVersioningAsync(const GetBucketVersioningRequestT &request, const GetBucketVersioningResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void GetBucketNotificationConfigurationAsync(const GetBucketNotificationConfigurationRequestT &request, const GetBucketNotificationConfigurationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void ListBucketIntelligentTieringConfigurationsAsync(const ListBucketIntelligentTieringConfigurationsRequestT &request, const ListBucketIntelligentTieringConfigurationsResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void DeleteBucketWebsiteAsync(const DeleteBucketWebsiteRequestT &request, const DeleteBucketWebsiteResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::future< DeleteObjectTaggingOutcome > DeleteObjectTaggingOutcomeCallable
std::future< GetBucketPolicyOutcome > GetBucketPolicyOutcomeCallable
std::future< ListBucketAnalyticsConfigurationsOutcome > ListBucketAnalyticsConfigurationsOutcomeCallable
std::future< GetBucketLocationOutcome > GetBucketLocationOutcomeCallable
std::future< DeleteBucketReplicationOutcome > DeleteBucketReplicationOutcomeCallable
std::future< GetObjectLockConfigurationOutcome > GetObjectLockConfigurationOutcomeCallable
std::future< CompleteMultipartUploadOutcome > CompleteMultipartUploadOutcomeCallable
std::future< DeleteBucketOutcome > DeleteBucketOutcomeCallable
std::future< PutBucketIntelligentTieringConfigurationOutcome > PutBucketIntelligentTieringConfigurationOutcomeCallable
std::future< GetObjectTorrentOutcome > GetObjectTorrentOutcomeCallable
std::future< GetBucketWebsiteOutcome > GetBucketWebsiteOutcomeCallable
std::future< UploadPartOutcome > UploadPartOutcomeCallable
std::future< CreateSessionOutcome > CreateSessionOutcomeCallable
std::future< ListBucketInventoryConfigurationsOutcome > ListBucketInventoryConfigurationsOutcomeCallable
std::future< CreateBucketMetadataTableConfigurationOutcome > CreateBucketMetadataTableConfigurationOutcomeCallable
std::future< GetBucketEncryptionOutcome > GetBucketEncryptionOutcomeCallable
std::future< DeleteBucketMetadataTableConfigurationOutcome > DeleteBucketMetadataTableConfigurationOutcomeCallable
std::future< DeleteBucketCorsOutcome > DeleteBucketCorsOutcomeCallable
std::future< RestoreObjectOutcome > RestoreObjectOutcomeCallable
std::future< PutBucketPolicyOutcome > PutBucketPolicyOutcomeCallable
std::future< DeleteBucketInventoryConfigurationOutcome > DeleteBucketInventoryConfigurationOutcomeCallable
std::future< DeleteObjectsOutcome > DeleteObjectsOutcomeCallable
std::future< UpdateBucketMetadataJournalTableConfigurationOutcome > UpdateBucketMetadataJournalTableConfigurationOutcomeCallable
std::future< PutBucketRequestPaymentOutcome > PutBucketRequestPaymentOutcomeCallable
std::future< GetBucketOwnershipControlsOutcome > GetBucketOwnershipControlsOutcomeCallable
std::future< GetBucketAccelerateConfigurationOutcome > GetBucketAccelerateConfigurationOutcomeCallable
std::future< GetBucketVersioningOutcome > GetBucketVersioningOutcomeCallable
std::future< PutBucketTaggingOutcome > PutBucketTaggingOutcomeCallable
std::future< GetObjectTaggingOutcome > GetObjectTaggingOutcomeCallable
std::future< PutBucketReplicationOutcome > PutBucketReplicationOutcomeCallable
std::future< PutBucketInventoryConfigurationOutcome > PutBucketInventoryConfigurationOutcomeCallable
std::future< DeleteBucketWebsiteOutcome > DeleteBucketWebsiteOutcomeCallable
std::future< PutBucketAclOutcome > PutBucketAclOutcomeCallable
std::future< ListPartsOutcome > ListPartsOutcomeCallable
std::future< PutBucketCorsOutcome > PutBucketCorsOutcomeCallable
std::future< PutBucketAnalyticsConfigurationOutcome > PutBucketAnalyticsConfigurationOutcomeCallable
std::future< ListBucketMetricsConfigurationsOutcome > ListBucketMetricsConfigurationsOutcomeCallable
std::future< DeleteBucketAnalyticsConfigurationOutcome > DeleteBucketAnalyticsConfigurationOutcomeCallable
std::future< DeleteBucketMetadataConfigurationOutcome > DeleteBucketMetadataConfigurationOutcomeCallable
std::future< PutObjectRetentionOutcome > PutObjectRetentionOutcomeCallable
std::future< PutBucketLoggingOutcome > PutBucketLoggingOutcomeCallable
std::future< PutBucketVersioningOutcome > PutBucketVersioningOutcomeCallable
std::future< PutObjectTaggingOutcome > PutObjectTaggingOutcomeCallable
std::future< HeadObjectOutcome > HeadObjectOutcomeCallable
std::future< PutObjectLockConfigurationOutcome > PutObjectLockConfigurationOutcomeCallable
std::future< GetBucketLifecycleConfigurationOutcome > GetBucketLifecycleConfigurationOutcomeCallable
std::future< GetBucketTaggingOutcome > GetBucketTaggingOutcomeCallable
std::future< GetBucketLoggingOutcome > GetBucketLoggingOutcomeCallable
std::future< UpdateBucketMetadataInventoryTableConfigurationOutcome > UpdateBucketMetadataInventoryTableConfigurationOutcomeCallable
std::future< GetBucketNotificationConfigurationOutcome > GetBucketNotificationConfigurationOutcomeCallable
std::future< PutBucketMetricsConfigurationOutcome > PutBucketMetricsConfigurationOutcomeCallable
std::future< ListObjectsOutcome > ListObjectsOutcomeCallable
std::future< SelectObjectContentOutcome > SelectObjectContentOutcomeCallable
std::future< AbortMultipartUploadOutcome > AbortMultipartUploadOutcomeCallable
std::future< DeleteBucketPolicyOutcome > DeleteBucketPolicyOutcomeCallable
std::future< GetBucketAnalyticsConfigurationOutcome > GetBucketAnalyticsConfigurationOutcomeCallable
std::future< PutBucketOwnershipControlsOutcome > PutBucketOwnershipControlsOutcomeCallable
std::future< GetBucketMetadataTableConfigurationOutcome > GetBucketMetadataTableConfigurationOutcomeCallable
std::future< CreateBucketMetadataConfigurationOutcome > CreateBucketMetadataConfigurationOutcomeCallable
std::future< ListObjectsV2Outcome > ListObjectsV2OutcomeCallable
std::future< PutPublicAccessBlockOutcome > PutPublicAccessBlockOutcomeCallable
std::future< GetBucketAclOutcome > GetBucketAclOutcomeCallable
std::future< PutObjectAclOutcome > PutObjectAclOutcomeCallable
std::future< PutBucketAccelerateConfigurationOutcome > PutBucketAccelerateConfigurationOutcomeCallable
std::future< ListBucketIntelligentTieringConfigurationsOutcome > ListBucketIntelligentTieringConfigurationsOutcomeCallable
std::future< HeadBucketOutcome > HeadBucketOutcomeCallable
std::future< CreateMultipartUploadOutcome > CreateMultipartUploadOutcomeCallable
std::future< PutBucketEncryptionOutcome > PutBucketEncryptionOutcomeCallable
std::future< ListDirectoryBucketsOutcome > ListDirectoryBucketsOutcomeCallable
std::future< PutBucketLifecycleConfigurationOutcome > PutBucketLifecycleConfigurationOutcomeCallable
std::future< ListBucketsOutcome > ListBucketsOutcomeCallable
std::future< DeleteBucketLifecycleOutcome > DeleteBucketLifecycleOutcomeCallable
std::future< ListObjectVersionsOutcome > ListObjectVersionsOutcomeCallable
std::future< GetBucketIntelligentTieringConfigurationOutcome > GetBucketIntelligentTieringConfigurationOutcomeCallable
std::future< PutBucketWebsiteOutcome > PutBucketWebsiteOutcomeCallable
std::future< GetBucketMetadataConfigurationOutcome > GetBucketMetadataConfigurationOutcomeCallable
std::future< DeleteBucketTaggingOutcome > DeleteBucketTaggingOutcomeCallable
std::future< DeleteBucketOwnershipControlsOutcome > DeleteBucketOwnershipControlsOutcomeCallable
std::future< DeleteBucketEncryptionOutcome > DeleteBucketEncryptionOutcomeCallable
std::future< WriteGetObjectResponseOutcome > WriteGetObjectResponseOutcomeCallable
std::future< PutObjectLegalHoldOutcome > PutObjectLegalHoldOutcomeCallable
std::future< GetObjectLegalHoldOutcome > GetObjectLegalHoldOutcomeCallable
std::future< GetObjectRetentionOutcome > GetObjectRetentionOutcomeCallable
std::future< GetBucketRequestPaymentOutcome > GetBucketRequestPaymentOutcomeCallable
std::future< PutBucketNotificationConfigurationOutcome > PutBucketNotificationConfigurationOutcomeCallable
std::future< RenameObjectOutcome > RenameObjectOutcomeCallable
std::future< GetBucketInventoryConfigurationOutcome > GetBucketInventoryConfigurationOutcomeCallable
std::future< GetObjectAttributesOutcome > GetObjectAttributesOutcomeCallable
std::future< DeleteObjectOutcome > DeleteObjectOutcomeCallable
std::future< CreateBucketOutcome > CreateBucketOutcomeCallable
std::future< DeleteBucketIntelligentTieringConfigurationOutcome > DeleteBucketIntelligentTieringConfigurationOutcomeCallable
std::future< GetPublicAccessBlockOutcome > GetPublicAccessBlockOutcomeCallable
std::future< GetBucketMetricsConfigurationOutcome > GetBucketMetricsConfigurationOutcomeCallable
std::future< DeleteBucketMetricsConfigurationOutcome > DeleteBucketMetricsConfigurationOutcomeCallable
std::future< DeletePublicAccessBlockOutcome > DeletePublicAccessBlockOutcomeCallable
std::future< GetBucketPolicyStatusOutcome > GetBucketPolicyStatusOutcomeCallable
std::future< GetBucketCorsOutcome > GetBucketCorsOutcomeCallable
std::future< GetBucketReplicationOutcome > GetBucketReplicationOutcomeCallable
std::future< GetObjectAclOutcome > GetObjectAclOutcomeCallable
std::future< ListMultipartUploadsOutcome > ListMultipartUploadsOutcomeCallable
std::future< UploadPartCopyOutcome > UploadPartCopyOutcomeCallable
std::function< void(const S3CrtClient *, const Model::PutObjectRequest &, const Model::PutObjectOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > PutObjectResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::GetBucketCorsRequest &, const Model::GetBucketCorsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetBucketCorsResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::DeleteObjectsRequest &, const Model::DeleteObjectsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DeleteObjectsResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::RenameObjectRequest &, const Model::RenameObjectOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > RenameObjectResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::PutObjectLegalHoldRequest &, const Model::PutObjectLegalHoldOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > PutObjectLegalHoldResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::CompleteMultipartUploadRequest &, const Model::CompleteMultipartUploadOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > CompleteMultipartUploadResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::GetBucketInventoryConfigurationRequest &, const Model::GetBucketInventoryConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetBucketInventoryConfigurationResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::GetBucketMetadataTableConfigurationRequest &, const Model::GetBucketMetadataTableConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetBucketMetadataTableConfigurationResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::GetBucketMetricsConfigurationRequest &, const Model::GetBucketMetricsConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetBucketMetricsConfigurationResponseReceivedHandler
static const unsigned MAX_EXPIRATION_SECONDS
std::function< void(const S3CrtClient *, const Model::GetBucketWebsiteRequest &, const Model::GetBucketWebsiteOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetBucketWebsiteResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::DeleteBucketInventoryConfigurationRequest &, const Model::DeleteBucketInventoryConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DeleteBucketInventoryConfigurationResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::GetBucketPolicyRequest &, Model::GetBucketPolicyOutcome, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetBucketPolicyResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::GetBucketEncryptionRequest &, const Model::GetBucketEncryptionOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetBucketEncryptionResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::GetBucketAnalyticsConfigurationRequest &, const Model::GetBucketAnalyticsConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetBucketAnalyticsConfigurationResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::CreateBucketMetadataTableConfigurationRequest &, const Model::CreateBucketMetadataTableConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > CreateBucketMetadataTableConfigurationResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::PutBucketAclRequest &, const Model::PutBucketAclOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > PutBucketAclResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::ListBucketAnalyticsConfigurationsRequest &, const Model::ListBucketAnalyticsConfigurationsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListBucketAnalyticsConfigurationsResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::PutBucketEncryptionRequest &, const Model::PutBucketEncryptionOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > PutBucketEncryptionResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::CreateSessionRequest &, const Model::CreateSessionOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > CreateSessionResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::PutBucketOwnershipControlsRequest &, const Model::PutBucketOwnershipControlsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > PutBucketOwnershipControlsResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::GetObjectLockConfigurationRequest &, const Model::GetObjectLockConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetObjectLockConfigurationResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::GetBucketAccelerateConfigurationRequest &, const Model::GetBucketAccelerateConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetBucketAccelerateConfigurationResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::HeadObjectRequest &, const Model::HeadObjectOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > HeadObjectResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::PutBucketRequestPaymentRequest &, const Model::PutBucketRequestPaymentOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > PutBucketRequestPaymentResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::ListObjectsV2Request &, const Model::ListObjectsV2Outcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListObjectsV2ResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::CreateMultipartUploadRequest &, const Model::CreateMultipartUploadOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > CreateMultipartUploadResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::ListPartsRequest &, const Model::ListPartsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListPartsResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::DeleteBucketWebsiteRequest &, const Model::DeleteBucketWebsiteOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DeleteBucketWebsiteResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::RestoreObjectRequest &, const Model::RestoreObjectOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > RestoreObjectResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::DeleteObjectRequest &, const Model::DeleteObjectOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DeleteObjectResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::DeleteBucketRequest &, const Model::DeleteBucketOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DeleteBucketResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::DeleteBucketMetricsConfigurationRequest &, const Model::DeleteBucketMetricsConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DeleteBucketMetricsConfigurationResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::DeleteBucketOwnershipControlsRequest &, const Model::DeleteBucketOwnershipControlsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DeleteBucketOwnershipControlsResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::GetBucketMetadataConfigurationRequest &, const Model::GetBucketMetadataConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetBucketMetadataConfigurationResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::DeleteBucketMetadataTableConfigurationRequest &, const Model::DeleteBucketMetadataTableConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DeleteBucketMetadataTableConfigurationResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::GetObjectAttributesRequest &, const Model::GetObjectAttributesOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetObjectAttributesResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::DeleteBucketEncryptionRequest &, const Model::DeleteBucketEncryptionOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DeleteBucketEncryptionResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::DeletePublicAccessBlockRequest &, const Model::DeletePublicAccessBlockOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DeletePublicAccessBlockResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::GetBucketRequestPaymentRequest &, const Model::GetBucketRequestPaymentOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetBucketRequestPaymentResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::GetBucketAclRequest &, const Model::GetBucketAclOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetBucketAclResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::PutBucketLoggingRequest &, const Model::PutBucketLoggingOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > PutBucketLoggingResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::DeleteBucketReplicationRequest &, const Model::DeleteBucketReplicationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DeleteBucketReplicationResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::PutBucketCorsRequest &, const Model::PutBucketCorsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > PutBucketCorsResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::PutObjectLockConfigurationRequest &, const Model::PutObjectLockConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > PutObjectLockConfigurationResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::GetObjectRetentionRequest &, const Model::GetObjectRetentionOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetObjectRetentionResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::AbortMultipartUploadRequest &, const Model::AbortMultipartUploadOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > AbortMultipartUploadResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::GetBucketVersioningRequest &, const Model::GetBucketVersioningOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetBucketVersioningResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::SelectObjectContentRequest &, const Model::SelectObjectContentOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > SelectObjectContentResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::CreateBucketRequest &, const Model::CreateBucketOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > CreateBucketResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::PutObjectTaggingRequest &, const Model::PutObjectTaggingOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > PutObjectTaggingResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::WriteGetObjectResponseRequest &, const Model::WriteGetObjectResponseOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > WriteGetObjectResponseResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::ListBucketMetricsConfigurationsRequest &, const Model::ListBucketMetricsConfigurationsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListBucketMetricsConfigurationsResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::UpdateBucketMetadataJournalTableConfigurationRequest &, const Model::UpdateBucketMetadataJournalTableConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > UpdateBucketMetadataJournalTableConfigurationResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::PutBucketNotificationConfigurationRequest &, const Model::PutBucketNotificationConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > PutBucketNotificationConfigurationResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::GetBucketNotificationConfigurationRequest &, const Model::GetBucketNotificationConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetBucketNotificationConfigurationResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::CopyObjectRequest &, const Model::CopyObjectOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > CopyObjectResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::ListMultipartUploadsRequest &, const Model::ListMultipartUploadsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListMultipartUploadsResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::GetBucketLifecycleConfigurationRequest &, const Model::GetBucketLifecycleConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetBucketLifecycleConfigurationResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::UploadPartRequest &, const Model::UploadPartOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > UploadPartResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::PutBucketInventoryConfigurationRequest &, const Model::PutBucketInventoryConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > PutBucketInventoryConfigurationResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::PutBucketMetricsConfigurationRequest &, const Model::PutBucketMetricsConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > PutBucketMetricsConfigurationResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::GetBucketOwnershipControlsRequest &, const Model::GetBucketOwnershipControlsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetBucketOwnershipControlsResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::GetBucketLocationRequest &, const Model::GetBucketLocationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetBucketLocationResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::GetBucketIntelligentTieringConfigurationRequest &, const Model::GetBucketIntelligentTieringConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetBucketIntelligentTieringConfigurationResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::HeadBucketRequest &, const Model::HeadBucketOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > HeadBucketResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::DeleteObjectTaggingRequest &, const Model::DeleteObjectTaggingOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DeleteObjectTaggingResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::CreateBucketMetadataConfigurationRequest &, const Model::CreateBucketMetadataConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > CreateBucketMetadataConfigurationResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::ListObjectVersionsRequest &, const Model::ListObjectVersionsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListObjectVersionsResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::GetBucketTaggingRequest &, const Model::GetBucketTaggingOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetBucketTaggingResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::GetObjectAclRequest &, const Model::GetObjectAclOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetObjectAclResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::UploadPartCopyRequest &, const Model::UploadPartCopyOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > UploadPartCopyResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::ListBucketInventoryConfigurationsRequest &, const Model::ListBucketInventoryConfigurationsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListBucketInventoryConfigurationsResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::PutPublicAccessBlockRequest &, const Model::PutPublicAccessBlockOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > PutPublicAccessBlockResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::PutBucketVersioningRequest &, const Model::PutBucketVersioningOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > PutBucketVersioningResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::GetObjectTorrentRequest &, Model::GetObjectTorrentOutcome, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetObjectTorrentResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::GetObjectLegalHoldRequest &, const Model::GetObjectLegalHoldOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetObjectLegalHoldResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::DeleteBucketPolicyRequest &, const Model::DeleteBucketPolicyOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DeleteBucketPolicyResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::PutBucketIntelligentTieringConfigurationRequest &, const Model::PutBucketIntelligentTieringConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > PutBucketIntelligentTieringConfigurationResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::ListBucketIntelligentTieringConfigurationsRequest &, const Model::ListBucketIntelligentTieringConfigurationsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListBucketIntelligentTieringConfigurationsResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::PutBucketLifecycleConfigurationRequest &, const Model::PutBucketLifecycleConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > PutBucketLifecycleConfigurationResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::DeleteBucketCorsRequest &, const Model::DeleteBucketCorsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DeleteBucketCorsResponseReceivedHandler
US_EAST_1_REGIONAL_ENDPOINT_OPTION
std::function< void(const S3CrtClient *, const Model::PutObjectRetentionRequest &, const Model::PutObjectRetentionOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > PutObjectRetentionResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::PutBucketAccelerateConfigurationRequest &, const Model::PutBucketAccelerateConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > PutBucketAccelerateConfigurationResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::GetObjectTaggingRequest &, const Model::GetObjectTaggingOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetObjectTaggingResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::GetBucketReplicationRequest &, const Model::GetBucketReplicationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetBucketReplicationResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::GetBucketPolicyStatusRequest &, const Model::GetBucketPolicyStatusOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetBucketPolicyStatusResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::DeleteBucketAnalyticsConfigurationRequest &, const Model::DeleteBucketAnalyticsConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DeleteBucketAnalyticsConfigurationResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::GetPublicAccessBlockRequest &, const Model::GetPublicAccessBlockOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetPublicAccessBlockResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::PutBucketWebsiteRequest &, const Model::PutBucketWebsiteOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > PutBucketWebsiteResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::PutObjectAclRequest &, const Model::PutObjectAclOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > PutObjectAclResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::DeleteBucketTaggingRequest &, const Model::DeleteBucketTaggingOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DeleteBucketTaggingResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::PutBucketReplicationRequest &, const Model::PutBucketReplicationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > PutBucketReplicationResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::PutBucketTaggingRequest &, const Model::PutBucketTaggingOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > PutBucketTaggingResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::DeleteBucketLifecycleRequest &, const Model::DeleteBucketLifecycleOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DeleteBucketLifecycleResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::ListDirectoryBucketsRequest &, const Model::ListDirectoryBucketsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListDirectoryBucketsResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::ListObjectsRequest &, const Model::ListObjectsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListObjectsResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::DeleteBucketIntelligentTieringConfigurationRequest &, const Model::DeleteBucketIntelligentTieringConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DeleteBucketIntelligentTieringConfigurationResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::GetBucketLoggingRequest &, const Model::GetBucketLoggingOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetBucketLoggingResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::PutBucketPolicyRequest &, const Model::PutBucketPolicyOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > PutBucketPolicyResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::PutBucketAnalyticsConfigurationRequest &, const Model::PutBucketAnalyticsConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > PutBucketAnalyticsConfigurationResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::UpdateBucketMetadataInventoryTableConfigurationRequest &, const Model::UpdateBucketMetadataInventoryTableConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > UpdateBucketMetadataInventoryTableConfigurationResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::GetObjectRequest &, Model::GetObjectOutcome, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetObjectResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::DeleteBucketMetadataConfigurationRequest &, const Model::DeleteBucketMetadataConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DeleteBucketMetadataConfigurationResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::ListBucketsRequest &, const Model::ListBucketsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListBucketsResponseReceivedHandler
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::unique_ptr< T, D > UniquePtr
std::shared_ptr< const Aws::Client::AsyncCallerContext > asyncCallerContext
PutObjectResponseReceivedHandler putResponseHandler
GetObjectResponseReceivedHandler getResponseHandler
std::shared_ptr< Aws::Crt::Http::HttpRequest > crtHttpRequest
Aws::UniquePtr< struct aws_s3_checksum_config > checksumConfig
std::shared_ptr< Aws::Http::HttpResponse > response
const Aws::AmazonWebServiceRequest * originalRequest
const S3CrtClient * s3CrtClient
std::shared_ptr< Aws::Http::HttpRequest > request
CopyObjectResponseReceivedHandler copyResponseHandler