AWS SDK for C++

AWS SDK for C++ Version 1.11.788

Loading...
Searching...
No Matches
S3CrtClient.h
1
6#pragma once
7#include <aws/core/auth/AWSAuthSigner.h>
8#include <aws/core/auth/AWSCredentialsProviderChain.h>
9#include <aws/core/client/AWSClient.h>
10#include <aws/core/client/AWSClientAsyncCRTP.h>
11#include <aws/core/client/ClientConfiguration.h>
12#include <aws/core/utils/DNS.h>
13#include <aws/core/utils/crypto/Factories.h>
14#include <aws/core/utils/xml/XmlSerializer.h>
15#include <aws/crt/auth/Sigv4Signing.h>
16#include <aws/crt/http/HttpRequestResponse.h>
17#include <aws/s3-crt/ClientConfiguration.h>
18#include <aws/s3-crt/S3CrtErrorMarshaller.h>
19#include <aws/s3-crt/S3CrtIdentityProviderAdapter.h>
20#include <aws/s3-crt/S3CrtPaginationBase.h>
21#include <aws/s3-crt/S3CrtServiceClientModel.h>
22#include <aws/s3-crt/S3CrtWaiter.h>
23#include <aws/s3-crt/S3Crt_EXPORTS.h>
24#include <aws/s3-crt/S3ExpressIdentityProvider.h>
25#include <aws/s3/s3_client.h>
26
27struct aws_s3_client;
28// TODO: temporary fix for naming conflicts on Windows.
29#ifdef _WIN32
30#ifdef GetObject
31#undef GetObject
32#endif
33#endif
34
35namespace Aws {
36namespace S3Crt {
37namespace SSEHeaders {
38static const char SERVER_SIDE_ENCRYPTION[] = "x-amz-server-side-encryption";
39static const char SERVER_SIDE_ENCRYPTION_AWS_KMS_KEY_ID[] = "x-amz-server-side-encryption-aws-kms-key-id";
40static const char SERVER_SIDE_ENCRYPTION_CUSTOMER_ALGORITHM[] = "x-amz-server-side-encryption-customer-algorithm";
41static const char SERVER_SIDE_ENCRYPTION_CUSTOMER_KEY[] = "x-amz-server-side-encryption-customer-key";
42static const char SERVER_SIDE_ENCRYPTION_CUSTOMER_KEY_MD5[] = "x-amz-server-side-encryption-customer-key-MD5";
43} // namespace SSEHeaders
44
45// max expiration for presigned urls in s3 is 7 days.
46static const unsigned MAX_EXPIRATION_SECONDS = 7 * 24 * 60 * 60;
47
49
53class AWS_S3CRT_API S3CrtClient : public Aws::Client::AWSXMLClient,
55 public S3CrtPaginationBase<S3CrtClient>,
56 public S3CrtWaiter<S3CrtClient> {
57 public:
59 static const char* GetServiceName();
60 static const char* GetAllocationTag();
61
64
71
79
85 S3CrtClient(S3CrtClient&& rhs) noexcept;
86
94
95 /* Legacy constructors due deprecation */
101 Aws::Client::AWSAuthV4Signer::PayloadSigningPolicy signPayloads = Aws::Client::AWSAuthV4Signer::PayloadSigningPolicy::Never,
102 bool useVirtualAddressing = true,
103 Aws::S3Crt::US_EAST_1_REGIONAL_ENDPOINT_OPTION USEast1RegionalEndPointOption =
106
113 Aws::Client::AWSAuthV4Signer::PayloadSigningPolicy signPayloads = Aws::Client::AWSAuthV4Signer::PayloadSigningPolicy::Never,
114 bool useVirtualAddressing = true,
115 Aws::S3Crt::US_EAST_1_REGIONAL_ENDPOINT_OPTION USEast1RegionalEndPointOption =
117
122 S3CrtClient(const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
124 Aws::Client::AWSAuthV4Signer::PayloadSigningPolicy signPayloads = Aws::Client::AWSAuthV4Signer::PayloadSigningPolicy::Never,
125 bool useVirtualAddressing = true,
126 Aws::S3Crt::US_EAST_1_REGIONAL_ENDPOINT_OPTION USEast1RegionalEndPointOption =
128
129 /* End of legacy constructors due deprecation */
130 virtual ~S3CrtClient();
131
204
209 template <typename AbortMultipartUploadRequestT = Model::AbortMultipartUploadRequest>
210 Model::AbortMultipartUploadOutcomeCallable AbortMultipartUploadCallable(const AbortMultipartUploadRequestT& request) const {
211 return SubmitCallable(&S3CrtClient::AbortMultipartUpload, request);
212 }
213
218 template <typename AbortMultipartUploadRequestT = Model::AbortMultipartUploadRequest>
219 void AbortMultipartUploadAsync(const AbortMultipartUploadRequestT& request, const AbortMultipartUploadResponseReceivedHandler& handler,
220 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
221 return SubmitAsync(&S3CrtClient::AbortMultipartUpload, request, handler, context);
222 }
223
345
350 template <typename CompleteMultipartUploadRequestT = Model::CompleteMultipartUploadRequest>
351 Model::CompleteMultipartUploadOutcomeCallable CompleteMultipartUploadCallable(const CompleteMultipartUploadRequestT& request) const {
352 return SubmitCallable(&S3CrtClient::CompleteMultipartUpload, request);
353 }
354
359 template <typename CompleteMultipartUploadRequestT = Model::CompleteMultipartUploadRequest>
360 void CompleteMultipartUploadAsync(const CompleteMultipartUploadRequestT& request,
362 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
363 return SubmitAsync(&S3CrtClient::CompleteMultipartUpload, request, handler, context);
364 }
365
513
519 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
520
650
654 template <typename CreateBucketRequestT = Model::CreateBucketRequest>
655 Model::CreateBucketOutcomeCallable CreateBucketCallable(const CreateBucketRequestT& request) const {
656 return SubmitCallable(&S3CrtClient::CreateBucket, request);
657 }
658
663 template <typename CreateBucketRequestT = Model::CreateBucketRequest>
664 void CreateBucketAsync(const CreateBucketRequestT& request, const CreateBucketResponseReceivedHandler& handler,
665 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
666 return SubmitAsync(&S3CrtClient::CreateBucket, request, handler, context);
667 }
668
721
726 template <typename CreateBucketMetadataConfigurationRequestT = Model::CreateBucketMetadataConfigurationRequest>
728 const CreateBucketMetadataConfigurationRequestT& request) const {
729 return SubmitCallable(&S3CrtClient::CreateBucketMetadataConfiguration, request);
730 }
731
736 template <typename CreateBucketMetadataConfigurationRequestT = Model::CreateBucketMetadataConfigurationRequest>
737 void CreateBucketMetadataConfigurationAsync(const CreateBucketMetadataConfigurationRequestT& request,
739 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
740 return SubmitAsync(&S3CrtClient::CreateBucketMetadataConfiguration, request, handler, context);
741 }
742
792
797 template <typename CreateBucketMetadataTableConfigurationRequestT = Model::CreateBucketMetadataTableConfigurationRequest>
799 const CreateBucketMetadataTableConfigurationRequestT& request) const {
800 return SubmitCallable(&S3CrtClient::CreateBucketMetadataTableConfiguration, request);
801 }
802
807 template <typename CreateBucketMetadataTableConfigurationRequestT = Model::CreateBucketMetadataTableConfigurationRequest>
808 void CreateBucketMetadataTableConfigurationAsync(const CreateBucketMetadataTableConfigurationRequestT& request,
810 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
811 return SubmitAsync(&S3CrtClient::CreateBucketMetadataTableConfiguration, request, handler, context);
812 }
813
1036
1041 template <typename CreateMultipartUploadRequestT = Model::CreateMultipartUploadRequest>
1042 Model::CreateMultipartUploadOutcomeCallable CreateMultipartUploadCallable(const CreateMultipartUploadRequestT& request) const {
1043 return SubmitCallable(&S3CrtClient::CreateMultipartUpload, request);
1044 }
1045
1050 template <typename CreateMultipartUploadRequestT = Model::CreateMultipartUploadRequest>
1051 void CreateMultipartUploadAsync(const CreateMultipartUploadRequestT& request, const CreateMultipartUploadResponseReceivedHandler& handler,
1052 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
1053 return SubmitAsync(&S3CrtClient::CreateMultipartUpload, request, handler, context);
1054 }
1055
1205
1209 template <typename CreateSessionRequestT = Model::CreateSessionRequest>
1210 Model::CreateSessionOutcomeCallable CreateSessionCallable(const CreateSessionRequestT& request) const {
1211 return SubmitCallable(&S3CrtClient::CreateSession, request);
1212 }
1213
1218 template <typename CreateSessionRequestT = Model::CreateSessionRequest>
1219 void CreateSessionAsync(const CreateSessionRequestT& request, const CreateSessionResponseReceivedHandler& handler,
1220 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
1221 return SubmitAsync(&S3CrtClient::CreateSession, request, handler, context);
1222 }
1223
1269
1273 template <typename DeleteBucketRequestT = Model::DeleteBucketRequest>
1274 Model::DeleteBucketOutcomeCallable DeleteBucketCallable(const DeleteBucketRequestT& request) const {
1275 return SubmitCallable(&S3CrtClient::DeleteBucket, request);
1276 }
1277
1282 template <typename DeleteBucketRequestT = Model::DeleteBucketRequest>
1283 void DeleteBucketAsync(const DeleteBucketRequestT& request, const DeleteBucketResponseReceivedHandler& handler,
1284 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
1285 return SubmitAsync(&S3CrtClient::DeleteBucket, request, handler, context);
1286 }
1287
1318
1323 template <typename DeleteBucketAnalyticsConfigurationRequestT = Model::DeleteBucketAnalyticsConfigurationRequest>
1325 const DeleteBucketAnalyticsConfigurationRequestT& request) const {
1326 return SubmitCallable(&S3CrtClient::DeleteBucketAnalyticsConfiguration, request);
1327 }
1328
1333 template <typename DeleteBucketAnalyticsConfigurationRequestT = Model::DeleteBucketAnalyticsConfigurationRequest>
1334 void DeleteBucketAnalyticsConfigurationAsync(const DeleteBucketAnalyticsConfigurationRequestT& request,
1336 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
1337 return SubmitAsync(&S3CrtClient::DeleteBucketAnalyticsConfiguration, request, handler, context);
1338 }
1339
1362
1367 template <typename DeleteBucketCorsRequestT = Model::DeleteBucketCorsRequest>
1368 Model::DeleteBucketCorsOutcomeCallable DeleteBucketCorsCallable(const DeleteBucketCorsRequestT& request) const {
1369 return SubmitCallable(&S3CrtClient::DeleteBucketCors, request);
1370 }
1371
1376 template <typename DeleteBucketCorsRequestT = Model::DeleteBucketCorsRequest>
1377 void DeleteBucketCorsAsync(const DeleteBucketCorsRequestT& request, const DeleteBucketCorsResponseReceivedHandler& handler,
1378 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
1379 return SubmitAsync(&S3CrtClient::DeleteBucketCors, request, handler, context);
1380 }
1381
1429
1434 template <typename DeleteBucketEncryptionRequestT = Model::DeleteBucketEncryptionRequest>
1435 Model::DeleteBucketEncryptionOutcomeCallable DeleteBucketEncryptionCallable(const DeleteBucketEncryptionRequestT& request) const {
1436 return SubmitCallable(&S3CrtClient::DeleteBucketEncryption, request);
1437 }
1438
1443 template <typename DeleteBucketEncryptionRequestT = Model::DeleteBucketEncryptionRequest>
1444 void DeleteBucketEncryptionAsync(const DeleteBucketEncryptionRequestT& request,
1446 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
1447 return SubmitAsync(&S3CrtClient::DeleteBucketEncryption, request, handler, context);
1448 }
1449
1486
1491 template <typename DeleteBucketIntelligentTieringConfigurationRequestT = Model::DeleteBucketIntelligentTieringConfigurationRequest>
1493 const DeleteBucketIntelligentTieringConfigurationRequestT& request) const {
1494 return SubmitCallable(&S3CrtClient::DeleteBucketIntelligentTieringConfiguration, request);
1495 }
1496
1501 template <typename DeleteBucketIntelligentTieringConfigurationRequestT = Model::DeleteBucketIntelligentTieringConfigurationRequest>
1503 const DeleteBucketIntelligentTieringConfigurationRequestT& request,
1505 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
1506 return SubmitAsync(&S3CrtClient::DeleteBucketIntelligentTieringConfiguration, request, handler, context);
1507 }
1508
1541
1546 template <typename DeleteBucketInventoryConfigurationRequestT = Model::DeleteBucketInventoryConfigurationRequest>
1548 const DeleteBucketInventoryConfigurationRequestT& request) const {
1549 return SubmitCallable(&S3CrtClient::DeleteBucketInventoryConfiguration, request);
1550 }
1551
1556 template <typename DeleteBucketInventoryConfigurationRequestT = Model::DeleteBucketInventoryConfigurationRequest>
1557 void DeleteBucketInventoryConfigurationAsync(const DeleteBucketInventoryConfigurationRequestT& request,
1559 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
1560 return SubmitAsync(&S3CrtClient::DeleteBucketInventoryConfiguration, request, handler, context);
1561 }
1562
1619
1624 template <typename DeleteBucketLifecycleRequestT = Model::DeleteBucketLifecycleRequest>
1625 Model::DeleteBucketLifecycleOutcomeCallable DeleteBucketLifecycleCallable(const DeleteBucketLifecycleRequestT& request) const {
1626 return SubmitCallable(&S3CrtClient::DeleteBucketLifecycle, request);
1627 }
1628
1633 template <typename DeleteBucketLifecycleRequestT = Model::DeleteBucketLifecycleRequest>
1634 void DeleteBucketLifecycleAsync(const DeleteBucketLifecycleRequestT& request, const DeleteBucketLifecycleResponseReceivedHandler& handler,
1635 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
1636 return SubmitAsync(&S3CrtClient::DeleteBucketLifecycle, request, handler, context);
1637 }
1638
1673
1678 template <typename DeleteBucketMetadataConfigurationRequestT = Model::DeleteBucketMetadataConfigurationRequest>
1680 const DeleteBucketMetadataConfigurationRequestT& request) const {
1681 return SubmitCallable(&S3CrtClient::DeleteBucketMetadataConfiguration, request);
1682 }
1683
1688 template <typename DeleteBucketMetadataConfigurationRequestT = Model::DeleteBucketMetadataConfigurationRequest>
1689 void DeleteBucketMetadataConfigurationAsync(const DeleteBucketMetadataConfigurationRequestT& request,
1691 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
1692 return SubmitAsync(&S3CrtClient::DeleteBucketMetadataConfiguration, request, handler, context);
1693 }
1694
1738
1743 template <typename DeleteBucketMetadataTableConfigurationRequestT = Model::DeleteBucketMetadataTableConfigurationRequest>
1745 const DeleteBucketMetadataTableConfigurationRequestT& request) const {
1746 return SubmitCallable(&S3CrtClient::DeleteBucketMetadataTableConfiguration, request);
1747 }
1748
1753 template <typename DeleteBucketMetadataTableConfigurationRequestT = Model::DeleteBucketMetadataTableConfigurationRequest>
1754 void DeleteBucketMetadataTableConfigurationAsync(const DeleteBucketMetadataTableConfigurationRequestT& request,
1756 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
1757 return SubmitAsync(&S3CrtClient::DeleteBucketMetadataTableConfiguration, request, handler, context);
1758 }
1759
1820
1825 template <typename DeleteBucketMetricsConfigurationRequestT = Model::DeleteBucketMetricsConfigurationRequest>
1827 const DeleteBucketMetricsConfigurationRequestT& request) const {
1828 return SubmitCallable(&S3CrtClient::DeleteBucketMetricsConfiguration, request);
1829 }
1830
1835 template <typename DeleteBucketMetricsConfigurationRequestT = Model::DeleteBucketMetricsConfigurationRequest>
1836 void DeleteBucketMetricsConfigurationAsync(const DeleteBucketMetricsConfigurationRequestT& request,
1838 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
1839 return SubmitAsync(&S3CrtClient::DeleteBucketMetricsConfiguration, request, handler, context);
1840 }
1841
1863 const Model::DeleteBucketOwnershipControlsRequest& request) const;
1864
1869 template <typename DeleteBucketOwnershipControlsRequestT = Model::DeleteBucketOwnershipControlsRequest>
1871 const DeleteBucketOwnershipControlsRequestT& request) const {
1872 return SubmitCallable(&S3CrtClient::DeleteBucketOwnershipControls, request);
1873 }
1874
1879 template <typename DeleteBucketOwnershipControlsRequestT = Model::DeleteBucketOwnershipControlsRequest>
1880 void DeleteBucketOwnershipControlsAsync(const DeleteBucketOwnershipControlsRequestT& request,
1882 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
1883 return SubmitAsync(&S3CrtClient::DeleteBucketOwnershipControls, request, handler, context);
1884 }
1885
1945
1950 template <typename DeleteBucketPolicyRequestT = Model::DeleteBucketPolicyRequest>
1951 Model::DeleteBucketPolicyOutcomeCallable DeleteBucketPolicyCallable(const DeleteBucketPolicyRequestT& request) const {
1952 return SubmitCallable(&S3CrtClient::DeleteBucketPolicy, request);
1953 }
1954
1959 template <typename DeleteBucketPolicyRequestT = Model::DeleteBucketPolicyRequest>
1960 void DeleteBucketPolicyAsync(const DeleteBucketPolicyRequestT& request, const DeleteBucketPolicyResponseReceivedHandler& handler,
1961 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
1962 return SubmitAsync(&S3CrtClient::DeleteBucketPolicy, request, handler, context);
1963 }
1964
1993
1998 template <typename DeleteBucketReplicationRequestT = Model::DeleteBucketReplicationRequest>
1999 Model::DeleteBucketReplicationOutcomeCallable DeleteBucketReplicationCallable(const DeleteBucketReplicationRequestT& request) const {
2000 return SubmitCallable(&S3CrtClient::DeleteBucketReplication, request);
2001 }
2002
2007 template <typename DeleteBucketReplicationRequestT = Model::DeleteBucketReplicationRequest>
2008 void DeleteBucketReplicationAsync(const DeleteBucketReplicationRequestT& request,
2010 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
2011 return SubmitAsync(&S3CrtClient::DeleteBucketReplication, request, handler, context);
2012 }
2013
2038
2043 template <typename DeleteBucketTaggingRequestT = Model::DeleteBucketTaggingRequest>
2044 Model::DeleteBucketTaggingOutcomeCallable DeleteBucketTaggingCallable(const DeleteBucketTaggingRequestT& request) const {
2045 return SubmitCallable(&S3CrtClient::DeleteBucketTagging, request);
2046 }
2047
2052 template <typename DeleteBucketTaggingRequestT = Model::DeleteBucketTaggingRequest>
2053 void DeleteBucketTaggingAsync(const DeleteBucketTaggingRequestT& request, const DeleteBucketTaggingResponseReceivedHandler& handler,
2054 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
2055 return SubmitAsync(&S3CrtClient::DeleteBucketTagging, request, handler, context);
2056 }
2057
2086
2091 template <typename DeleteBucketWebsiteRequestT = Model::DeleteBucketWebsiteRequest>
2092 Model::DeleteBucketWebsiteOutcomeCallable DeleteBucketWebsiteCallable(const DeleteBucketWebsiteRequestT& request) const {
2093 return SubmitCallable(&S3CrtClient::DeleteBucketWebsite, request);
2094 }
2095
2100 template <typename DeleteBucketWebsiteRequestT = Model::DeleteBucketWebsiteRequest>
2101 void DeleteBucketWebsiteAsync(const DeleteBucketWebsiteRequestT& request, const DeleteBucketWebsiteResponseReceivedHandler& handler,
2102 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
2103 return SubmitAsync(&S3CrtClient::DeleteBucketWebsite, request, handler, context);
2104 }
2105
2208
2212 template <typename DeleteObjectRequestT = Model::DeleteObjectRequest>
2213 Model::DeleteObjectOutcomeCallable DeleteObjectCallable(const DeleteObjectRequestT& request) const {
2214 return SubmitCallable(&S3CrtClient::DeleteObject, request);
2215 }
2216
2221 template <typename DeleteObjectRequestT = Model::DeleteObjectRequest>
2222 void DeleteObjectAsync(const DeleteObjectRequestT& request, const DeleteObjectResponseReceivedHandler& handler,
2223 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
2224 return SubmitAsync(&S3CrtClient::DeleteObject, request, handler, context);
2225 }
2226
2250
2255 template <typename DeleteObjectTaggingRequestT = Model::DeleteObjectTaggingRequest>
2256 Model::DeleteObjectTaggingOutcomeCallable DeleteObjectTaggingCallable(const DeleteObjectTaggingRequestT& request) const {
2257 return SubmitCallable(&S3CrtClient::DeleteObjectTagging, request);
2258 }
2259
2264 template <typename DeleteObjectTaggingRequestT = Model::DeleteObjectTaggingRequest>
2265 void DeleteObjectTaggingAsync(const DeleteObjectTaggingRequestT& request, const DeleteObjectTaggingResponseReceivedHandler& handler,
2266 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
2267 return SubmitAsync(&S3CrtClient::DeleteObjectTagging, request, handler, context);
2268 }
2269
2366
2370 template <typename DeleteObjectsRequestT = Model::DeleteObjectsRequest>
2371 Model::DeleteObjectsOutcomeCallable DeleteObjectsCallable(const DeleteObjectsRequestT& request) const {
2372 return SubmitCallable(&S3CrtClient::DeleteObjects, request);
2373 }
2374
2379 template <typename DeleteObjectsRequestT = Model::DeleteObjectsRequest>
2380 void DeleteObjectsAsync(const DeleteObjectsRequestT& request, const DeleteObjectsResponseReceivedHandler& handler,
2381 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
2382 return SubmitAsync(&S3CrtClient::DeleteObjects, request, handler, context);
2383 }
2384
2415
2420 template <typename DeletePublicAccessBlockRequestT = Model::DeletePublicAccessBlockRequest>
2421 Model::DeletePublicAccessBlockOutcomeCallable DeletePublicAccessBlockCallable(const DeletePublicAccessBlockRequestT& request) const {
2422 return SubmitCallable(&S3CrtClient::DeletePublicAccessBlock, request);
2423 }
2424
2429 template <typename DeletePublicAccessBlockRequestT = Model::DeletePublicAccessBlockRequest>
2430 void DeletePublicAccessBlockAsync(const DeletePublicAccessBlockRequestT& request,
2432 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
2433 return SubmitAsync(&S3CrtClient::DeletePublicAccessBlock, request, handler, context);
2434 }
2435
2446
2450 template <typename GetBucketAbacRequestT = Model::GetBucketAbacRequest>
2451 Model::GetBucketAbacOutcomeCallable GetBucketAbacCallable(const GetBucketAbacRequestT& request) const {
2452 return SubmitCallable(&S3CrtClient::GetBucketAbac, request);
2453 }
2454
2459 template <typename GetBucketAbacRequestT = Model::GetBucketAbacRequest>
2460 void GetBucketAbacAsync(const GetBucketAbacRequestT& request, const GetBucketAbacResponseReceivedHandler& handler,
2461 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
2462 return SubmitAsync(&S3CrtClient::GetBucketAbac, request, handler, context);
2463 }
2464
2501
2506 template <typename GetBucketAccelerateConfigurationRequestT = Model::GetBucketAccelerateConfigurationRequest>
2508 const GetBucketAccelerateConfigurationRequestT& request) const {
2509 return SubmitCallable(&S3CrtClient::GetBucketAccelerateConfiguration, request);
2510 }
2511
2516 template <typename GetBucketAccelerateConfigurationRequestT = Model::GetBucketAccelerateConfigurationRequest>
2517 void GetBucketAccelerateConfigurationAsync(const GetBucketAccelerateConfigurationRequestT& request,
2519 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
2520 return SubmitAsync(&S3CrtClient::GetBucketAccelerateConfiguration, request, handler, context);
2521 }
2522
2556
2560 template <typename GetBucketAclRequestT = Model::GetBucketAclRequest>
2561 Model::GetBucketAclOutcomeCallable GetBucketAclCallable(const GetBucketAclRequestT& request) const {
2562 return SubmitCallable(&S3CrtClient::GetBucketAcl, request);
2563 }
2564
2569 template <typename GetBucketAclRequestT = Model::GetBucketAclRequest>
2570 void GetBucketAclAsync(const GetBucketAclRequestT& request, const GetBucketAclResponseReceivedHandler& handler,
2571 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
2572 return SubmitAsync(&S3CrtClient::GetBucketAcl, request, handler, context);
2573 }
2574
2607
2612 template <typename GetBucketAnalyticsConfigurationRequestT = Model::GetBucketAnalyticsConfigurationRequest>
2614 const GetBucketAnalyticsConfigurationRequestT& request) const {
2615 return SubmitCallable(&S3CrtClient::GetBucketAnalyticsConfiguration, request);
2616 }
2617
2622 template <typename GetBucketAnalyticsConfigurationRequestT = Model::GetBucketAnalyticsConfigurationRequest>
2623 void GetBucketAnalyticsConfigurationAsync(const GetBucketAnalyticsConfigurationRequestT& request,
2625 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
2626 return SubmitAsync(&S3CrtClient::GetBucketAnalyticsConfiguration, request, handler, context);
2627 }
2628
2658
2662 template <typename GetBucketCorsRequestT = Model::GetBucketCorsRequest>
2663 Model::GetBucketCorsOutcomeCallable GetBucketCorsCallable(const GetBucketCorsRequestT& request) const {
2664 return SubmitCallable(&S3CrtClient::GetBucketCors, request);
2665 }
2666
2671 template <typename GetBucketCorsRequestT = Model::GetBucketCorsRequest>
2672 void GetBucketCorsAsync(const GetBucketCorsRequestT& request, const GetBucketCorsResponseReceivedHandler& handler,
2673 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
2674 return SubmitAsync(&S3CrtClient::GetBucketCors, request, handler, context);
2675 }
2676
2729
2734 template <typename GetBucketEncryptionRequestT = Model::GetBucketEncryptionRequest>
2735 Model::GetBucketEncryptionOutcomeCallable GetBucketEncryptionCallable(const GetBucketEncryptionRequestT& request) const {
2736 return SubmitCallable(&S3CrtClient::GetBucketEncryption, request);
2737 }
2738
2743 template <typename GetBucketEncryptionRequestT = Model::GetBucketEncryptionRequest>
2744 void GetBucketEncryptionAsync(const GetBucketEncryptionRequestT& request, const GetBucketEncryptionResponseReceivedHandler& handler,
2745 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
2746 return SubmitAsync(&S3CrtClient::GetBucketEncryption, request, handler, context);
2747 }
2748
2784
2789 template <typename GetBucketIntelligentTieringConfigurationRequestT = Model::GetBucketIntelligentTieringConfigurationRequest>
2791 const GetBucketIntelligentTieringConfigurationRequestT& request) const {
2792 return SubmitCallable(&S3CrtClient::GetBucketIntelligentTieringConfiguration, request);
2793 }
2794
2799 template <typename GetBucketIntelligentTieringConfigurationRequestT = Model::GetBucketIntelligentTieringConfigurationRequest>
2801 const GetBucketIntelligentTieringConfigurationRequestT& request,
2803 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
2804 return SubmitAsync(&S3CrtClient::GetBucketIntelligentTieringConfiguration, request, handler, context);
2805 }
2806
2837
2842 template <typename GetBucketInventoryConfigurationRequestT = Model::GetBucketInventoryConfigurationRequest>
2844 const GetBucketInventoryConfigurationRequestT& request) const {
2845 return SubmitCallable(&S3CrtClient::GetBucketInventoryConfiguration, request);
2846 }
2847
2852 template <typename GetBucketInventoryConfigurationRequestT = Model::GetBucketInventoryConfigurationRequest>
2853 void GetBucketInventoryConfigurationAsync(const GetBucketInventoryConfigurationRequestT& request,
2855 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
2856 return SubmitAsync(&S3CrtClient::GetBucketInventoryConfiguration, request, handler, context);
2857 }
2858
2930
2935 template <typename GetBucketLifecycleConfigurationRequestT = Model::GetBucketLifecycleConfigurationRequest>
2937 const GetBucketLifecycleConfigurationRequestT& request) const {
2938 return SubmitCallable(&S3CrtClient::GetBucketLifecycleConfiguration, request);
2939 }
2940
2945 template <typename GetBucketLifecycleConfigurationRequestT = Model::GetBucketLifecycleConfigurationRequest>
2946 void GetBucketLifecycleConfigurationAsync(const GetBucketLifecycleConfigurationRequestT& request,
2948 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
2949 return SubmitAsync(&S3CrtClient::GetBucketLifecycleConfiguration, request, handler, context);
2950 }
2951
2993
2998 template <typename GetBucketLocationRequestT = Model::GetBucketLocationRequest>
2999 Model::GetBucketLocationOutcomeCallable GetBucketLocationCallable(const GetBucketLocationRequestT& request) const {
3000 return SubmitCallable(&S3CrtClient::GetBucketLocation, request);
3001 }
3002
3007 template <typename GetBucketLocationRequestT = Model::GetBucketLocationRequest>
3008 void GetBucketLocationAsync(const GetBucketLocationRequestT& request, const GetBucketLocationResponseReceivedHandler& handler,
3009 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
3010 return SubmitAsync(&S3CrtClient::GetBucketLocation, request, handler, context);
3011 }
3012
3030
3035 template <typename GetBucketLoggingRequestT = Model::GetBucketLoggingRequest>
3036 Model::GetBucketLoggingOutcomeCallable GetBucketLoggingCallable(const GetBucketLoggingRequestT& request) const {
3037 return SubmitCallable(&S3CrtClient::GetBucketLogging, request);
3038 }
3039
3044 template <typename GetBucketLoggingRequestT = Model::GetBucketLoggingRequest>
3045 void GetBucketLoggingAsync(const GetBucketLoggingRequestT& request, const GetBucketLoggingResponseReceivedHandler& handler,
3046 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
3047 return SubmitAsync(&S3CrtClient::GetBucketLogging, request, handler, context);
3048 }
3049
3084
3089 template <typename GetBucketMetadataConfigurationRequestT = Model::GetBucketMetadataConfigurationRequest>
3091 const GetBucketMetadataConfigurationRequestT& request) const {
3092 return SubmitCallable(&S3CrtClient::GetBucketMetadataConfiguration, request);
3093 }
3094
3099 template <typename GetBucketMetadataConfigurationRequestT = Model::GetBucketMetadataConfigurationRequest>
3100 void GetBucketMetadataConfigurationAsync(const GetBucketMetadataConfigurationRequestT& request,
3102 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
3103 return SubmitAsync(&S3CrtClient::GetBucketMetadataConfiguration, request, handler, context);
3104 }
3105
3148
3153 template <typename GetBucketMetadataTableConfigurationRequestT = Model::GetBucketMetadataTableConfigurationRequest>
3155 const GetBucketMetadataTableConfigurationRequestT& request) const {
3156 return SubmitCallable(&S3CrtClient::GetBucketMetadataTableConfiguration, request);
3157 }
3158
3163 template <typename GetBucketMetadataTableConfigurationRequestT = Model::GetBucketMetadataTableConfigurationRequest>
3164 void GetBucketMetadataTableConfigurationAsync(const GetBucketMetadataTableConfigurationRequestT& request,
3166 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
3167 return SubmitAsync(&S3CrtClient::GetBucketMetadataTableConfiguration, request, handler, context);
3168 }
3169
3229 const Model::GetBucketMetricsConfigurationRequest& request) const;
3230
3235 template <typename GetBucketMetricsConfigurationRequestT = Model::GetBucketMetricsConfigurationRequest>
3237 const GetBucketMetricsConfigurationRequestT& request) const {
3238 return SubmitCallable(&S3CrtClient::GetBucketMetricsConfiguration, request);
3239 }
3240
3245 template <typename GetBucketMetricsConfigurationRequestT = Model::GetBucketMetricsConfigurationRequest>
3246 void GetBucketMetricsConfigurationAsync(const GetBucketMetricsConfigurationRequestT& request,
3248 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
3249 return SubmitAsync(&S3CrtClient::GetBucketMetricsConfiguration, request, handler, context);
3250 }
3251
3287
3292 template <typename GetBucketNotificationConfigurationRequestT = Model::GetBucketNotificationConfigurationRequest>
3294 const GetBucketNotificationConfigurationRequestT& request) const {
3295 return SubmitCallable(&S3CrtClient::GetBucketNotificationConfiguration, request);
3296 }
3297
3302 template <typename GetBucketNotificationConfigurationRequestT = Model::GetBucketNotificationConfigurationRequest>
3303 void GetBucketNotificationConfigurationAsync(const GetBucketNotificationConfigurationRequestT& request,
3305 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
3306 return SubmitAsync(&S3CrtClient::GetBucketNotificationConfiguration, request, handler, context);
3307 }
3308
3336 const Model::GetBucketOwnershipControlsRequest& request) const;
3337
3342 template <typename GetBucketOwnershipControlsRequestT = Model::GetBucketOwnershipControlsRequest>
3344 const GetBucketOwnershipControlsRequestT& request) const {
3345 return SubmitCallable(&S3CrtClient::GetBucketOwnershipControls, request);
3346 }
3347
3352 template <typename GetBucketOwnershipControlsRequestT = Model::GetBucketOwnershipControlsRequest>
3353 void GetBucketOwnershipControlsAsync(const GetBucketOwnershipControlsRequestT& request,
3355 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
3356 return SubmitAsync(&S3CrtClient::GetBucketOwnershipControls, request, handler, context);
3357 }
3358
3424
3428 template <typename GetBucketPolicyRequestT = Model::GetBucketPolicyRequest>
3429 Model::GetBucketPolicyOutcomeCallable GetBucketPolicyCallable(const GetBucketPolicyRequestT& request) const {
3430 return SubmitCallable(&S3CrtClient::GetBucketPolicy, request);
3431 }
3432
3437 template <typename GetBucketPolicyRequestT = Model::GetBucketPolicyRequest>
3438 void GetBucketPolicyAsync(const GetBucketPolicyRequestT& request, const GetBucketPolicyResponseReceivedHandler& handler,
3439 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
3440 return SubmitAsync(&S3CrtClient::GetBucketPolicy, request, handler, context);
3441 }
3442
3471
3476 template <typename GetBucketPolicyStatusRequestT = Model::GetBucketPolicyStatusRequest>
3477 Model::GetBucketPolicyStatusOutcomeCallable GetBucketPolicyStatusCallable(const GetBucketPolicyStatusRequestT& request) const {
3478 return SubmitCallable(&S3CrtClient::GetBucketPolicyStatus, request);
3479 }
3480
3485 template <typename GetBucketPolicyStatusRequestT = Model::GetBucketPolicyStatusRequest>
3486 void GetBucketPolicyStatusAsync(const GetBucketPolicyStatusRequestT& request, const GetBucketPolicyStatusResponseReceivedHandler& handler,
3487 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
3488 return SubmitAsync(&S3CrtClient::GetBucketPolicyStatus, request, handler, context);
3489 }
3490
3522
3527 template <typename GetBucketReplicationRequestT = Model::GetBucketReplicationRequest>
3528 Model::GetBucketReplicationOutcomeCallable GetBucketReplicationCallable(const GetBucketReplicationRequestT& request) const {
3529 return SubmitCallable(&S3CrtClient::GetBucketReplication, request);
3530 }
3531
3536 template <typename GetBucketReplicationRequestT = Model::GetBucketReplicationRequest>
3537 void GetBucketReplicationAsync(const GetBucketReplicationRequestT& request, const GetBucketReplicationResponseReceivedHandler& handler,
3538 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
3539 return SubmitAsync(&S3CrtClient::GetBucketReplication, request, handler, context);
3540 }
3541
3559
3564 template <typename GetBucketRequestPaymentRequestT = Model::GetBucketRequestPaymentRequest>
3565 Model::GetBucketRequestPaymentOutcomeCallable GetBucketRequestPaymentCallable(const GetBucketRequestPaymentRequestT& request) const {
3566 return SubmitCallable(&S3CrtClient::GetBucketRequestPayment, request);
3567 }
3568
3573 template <typename GetBucketRequestPaymentRequestT = Model::GetBucketRequestPaymentRequest>
3574 void GetBucketRequestPaymentAsync(const GetBucketRequestPaymentRequestT& request,
3576 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
3577 return SubmitAsync(&S3CrtClient::GetBucketRequestPayment, request, handler, context);
3578 }
3579
3603
3608 template <typename GetBucketTaggingRequestT = Model::GetBucketTaggingRequest>
3609 Model::GetBucketTaggingOutcomeCallable GetBucketTaggingCallable(const GetBucketTaggingRequestT& request) const {
3610 return SubmitCallable(&S3CrtClient::GetBucketTagging, request);
3611 }
3612
3617 template <typename GetBucketTaggingRequestT = Model::GetBucketTaggingRequest>
3618 void GetBucketTaggingAsync(const GetBucketTaggingRequestT& request, const GetBucketTaggingResponseReceivedHandler& handler,
3619 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
3620 return SubmitAsync(&S3CrtClient::GetBucketTagging, request, handler, context);
3621 }
3622
3645
3650 template <typename GetBucketVersioningRequestT = Model::GetBucketVersioningRequest>
3651 Model::GetBucketVersioningOutcomeCallable GetBucketVersioningCallable(const GetBucketVersioningRequestT& request) const {
3652 return SubmitCallable(&S3CrtClient::GetBucketVersioning, request);
3653 }
3654
3659 template <typename GetBucketVersioningRequestT = Model::GetBucketVersioningRequest>
3660 void GetBucketVersioningAsync(const GetBucketVersioningRequestT& request, const GetBucketVersioningResponseReceivedHandler& handler,
3661 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
3662 return SubmitAsync(&S3CrtClient::GetBucketVersioning, request, handler, context);
3663 }
3664
3690
3695 template <typename GetBucketWebsiteRequestT = Model::GetBucketWebsiteRequest>
3696 Model::GetBucketWebsiteOutcomeCallable GetBucketWebsiteCallable(const GetBucketWebsiteRequestT& request) const {
3697 return SubmitCallable(&S3CrtClient::GetBucketWebsite, request);
3698 }
3699
3704 template <typename GetBucketWebsiteRequestT = Model::GetBucketWebsiteRequest>
3705 void GetBucketWebsiteAsync(const GetBucketWebsiteRequestT& request, const GetBucketWebsiteResponseReceivedHandler& handler,
3706 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
3707 return SubmitAsync(&S3CrtClient::GetBucketWebsite, request, handler, context);
3708 }
3709
3847
3853 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
3854
3889
3893 template <typename GetObjectAclRequestT = Model::GetObjectAclRequest>
3894 Model::GetObjectAclOutcomeCallable GetObjectAclCallable(const GetObjectAclRequestT& request) const {
3895 return SubmitCallable(&S3CrtClient::GetObjectAcl, request);
3896 }
3897
3902 template <typename GetObjectAclRequestT = Model::GetObjectAclRequest>
3903 void GetObjectAclAsync(const GetObjectAclRequestT& request, const GetObjectAclResponseReceivedHandler& handler,
3904 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
3905 return SubmitAsync(&S3CrtClient::GetObjectAcl, request, handler, context);
3906 }
3907
4048
4053 template <typename GetObjectAttributesRequestT = Model::GetObjectAttributesRequest>
4054 Model::GetObjectAttributesOutcomeCallable GetObjectAttributesCallable(const GetObjectAttributesRequestT& request) const {
4055 return SubmitCallable(&S3CrtClient::GetObjectAttributes, request);
4056 }
4057
4062 template <typename GetObjectAttributesRequestT = Model::GetObjectAttributesRequest>
4063 void GetObjectAttributesAsync(const GetObjectAttributesRequestT& request, const GetObjectAttributesResponseReceivedHandler& handler,
4064 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
4065 return SubmitAsync(&S3CrtClient::GetObjectAttributes, request, handler, context);
4066 }
4067
4085
4090 template <typename GetObjectLegalHoldRequestT = Model::GetObjectLegalHoldRequest>
4091 Model::GetObjectLegalHoldOutcomeCallable GetObjectLegalHoldCallable(const GetObjectLegalHoldRequestT& request) const {
4092 return SubmitCallable(&S3CrtClient::GetObjectLegalHold, request);
4093 }
4094
4099 template <typename GetObjectLegalHoldRequestT = Model::GetObjectLegalHoldRequest>
4100 void GetObjectLegalHoldAsync(const GetObjectLegalHoldRequestT& request, const GetObjectLegalHoldResponseReceivedHandler& handler,
4101 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
4102 return SubmitAsync(&S3CrtClient::GetObjectLegalHold, request, handler, context);
4103 }
4104
4123 const Model::GetObjectLockConfigurationRequest& request) const;
4124
4129 template <typename GetObjectLockConfigurationRequestT = Model::GetObjectLockConfigurationRequest>
4131 const GetObjectLockConfigurationRequestT& request) const {
4132 return SubmitCallable(&S3CrtClient::GetObjectLockConfiguration, request);
4133 }
4134
4139 template <typename GetObjectLockConfigurationRequestT = Model::GetObjectLockConfigurationRequest>
4140 void GetObjectLockConfigurationAsync(const GetObjectLockConfigurationRequestT& request,
4142 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
4143 return SubmitAsync(&S3CrtClient::GetObjectLockConfiguration, request, handler, context);
4144 }
4145
4163
4168 template <typename GetObjectRetentionRequestT = Model::GetObjectRetentionRequest>
4169 Model::GetObjectRetentionOutcomeCallable GetObjectRetentionCallable(const GetObjectRetentionRequestT& request) const {
4170 return SubmitCallable(&S3CrtClient::GetObjectRetention, request);
4171 }
4172
4177 template <typename GetObjectRetentionRequestT = Model::GetObjectRetentionRequest>
4178 void GetObjectRetentionAsync(const GetObjectRetentionRequestT& request, const GetObjectRetentionResponseReceivedHandler& handler,
4179 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
4180 return SubmitAsync(&S3CrtClient::GetObjectRetention, request, handler, context);
4181 }
4182
4212
4217 template <typename GetObjectTaggingRequestT = Model::GetObjectTaggingRequest>
4218 Model::GetObjectTaggingOutcomeCallable GetObjectTaggingCallable(const GetObjectTaggingRequestT& request) const {
4219 return SubmitCallable(&S3CrtClient::GetObjectTagging, request);
4220 }
4221
4226 template <typename GetObjectTaggingRequestT = Model::GetObjectTaggingRequest>
4227 void GetObjectTaggingAsync(const GetObjectTaggingRequestT& request, const GetObjectTaggingResponseReceivedHandler& handler,
4228 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
4229 return SubmitAsync(&S3CrtClient::GetObjectTagging, request, handler, context);
4230 }
4231
4251
4256 template <typename GetObjectTorrentRequestT = Model::GetObjectTorrentRequest>
4257 Model::GetObjectTorrentOutcomeCallable GetObjectTorrentCallable(const GetObjectTorrentRequestT& request) const {
4258 return SubmitCallable(&S3CrtClient::GetObjectTorrent, request);
4259 }
4260
4265 template <typename GetObjectTorrentRequestT = Model::GetObjectTorrentRequest>
4266 void GetObjectTorrentAsync(const GetObjectTorrentRequestT& request, const GetObjectTorrentResponseReceivedHandler& handler,
4267 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
4268 return SubmitAsync(&S3CrtClient::GetObjectTorrent, request, handler, context);
4269 }
4270
4309
4314 template <typename GetPublicAccessBlockRequestT = Model::GetPublicAccessBlockRequest>
4315 Model::GetPublicAccessBlockOutcomeCallable GetPublicAccessBlockCallable(const GetPublicAccessBlockRequestT& request) const {
4316 return SubmitCallable(&S3CrtClient::GetPublicAccessBlock, request);
4317 }
4318
4323 template <typename GetPublicAccessBlockRequestT = Model::GetPublicAccessBlockRequest>
4324 void GetPublicAccessBlockAsync(const GetPublicAccessBlockRequestT& request, const GetPublicAccessBlockResponseReceivedHandler& handler,
4325 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
4326 return SubmitAsync(&S3CrtClient::GetPublicAccessBlock, request, handler, context);
4327 }
4328
4398
4402 template <typename HeadBucketRequestT = Model::HeadBucketRequest>
4403 Model::HeadBucketOutcomeCallable HeadBucketCallable(const HeadBucketRequestT& request) const {
4404 return SubmitCallable(&S3CrtClient::HeadBucket, request);
4405 }
4406
4411 template <typename HeadBucketRequestT = Model::HeadBucketRequest>
4412 void HeadBucketAsync(const HeadBucketRequestT& request, const HeadBucketResponseReceivedHandler& handler,
4413 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
4414 return SubmitAsync(&S3CrtClient::HeadBucket, request, handler, context);
4415 }
4416
4534
4538 template <typename HeadObjectRequestT = Model::HeadObjectRequest>
4539 Model::HeadObjectOutcomeCallable HeadObjectCallable(const HeadObjectRequestT& request) const {
4540 return SubmitCallable(&S3CrtClient::HeadObject, request);
4541 }
4542
4547 template <typename HeadObjectRequestT = Model::HeadObjectRequest>
4548 void HeadObjectAsync(const HeadObjectRequestT& request, const HeadObjectResponseReceivedHandler& handler,
4549 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
4550 return SubmitAsync(&S3CrtClient::HeadObject, request, handler, context);
4551 }
4552
4591
4596 template <typename ListBucketAnalyticsConfigurationsRequestT = Model::ListBucketAnalyticsConfigurationsRequest>
4598 const ListBucketAnalyticsConfigurationsRequestT& request) const {
4599 return SubmitCallable(&S3CrtClient::ListBucketAnalyticsConfigurations, request);
4600 }
4601
4606 template <typename ListBucketAnalyticsConfigurationsRequestT = Model::ListBucketAnalyticsConfigurationsRequest>
4607 void ListBucketAnalyticsConfigurationsAsync(const ListBucketAnalyticsConfigurationsRequestT& request,
4609 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
4610 return SubmitAsync(&S3CrtClient::ListBucketAnalyticsConfigurations, request, handler, context);
4611 }
4612
4648
4653 template <typename ListBucketIntelligentTieringConfigurationsRequestT = Model::ListBucketIntelligentTieringConfigurationsRequest>
4655 const ListBucketIntelligentTieringConfigurationsRequestT& request) const {
4656 return SubmitCallable(&S3CrtClient::ListBucketIntelligentTieringConfigurations, request);
4657 }
4658
4663 template <typename ListBucketIntelligentTieringConfigurationsRequestT = Model::ListBucketIntelligentTieringConfigurationsRequest>
4665 const ListBucketIntelligentTieringConfigurationsRequestT& request,
4667 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
4668 return SubmitAsync(&S3CrtClient::ListBucketIntelligentTieringConfigurations, request, handler, context);
4669 }
4670
4709
4714 template <typename ListBucketInventoryConfigurationsRequestT = Model::ListBucketInventoryConfigurationsRequest>
4716 const ListBucketInventoryConfigurationsRequestT& request) const {
4717 return SubmitCallable(&S3CrtClient::ListBucketInventoryConfigurations, request);
4718 }
4719
4724 template <typename ListBucketInventoryConfigurationsRequestT = Model::ListBucketInventoryConfigurationsRequest>
4725 void ListBucketInventoryConfigurationsAsync(const ListBucketInventoryConfigurationsRequestT& request,
4727 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
4728 return SubmitAsync(&S3CrtClient::ListBucketInventoryConfigurations, request, handler, context);
4729 }
4730
4800
4805 template <typename ListBucketMetricsConfigurationsRequestT = Model::ListBucketMetricsConfigurationsRequest>
4807 const ListBucketMetricsConfigurationsRequestT& request) const {
4808 return SubmitCallable(&S3CrtClient::ListBucketMetricsConfigurations, request);
4809 }
4810
4815 template <typename ListBucketMetricsConfigurationsRequestT = Model::ListBucketMetricsConfigurationsRequest>
4816 void ListBucketMetricsConfigurationsAsync(const ListBucketMetricsConfigurationsRequestT& request,
4818 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
4819 return SubmitAsync(&S3CrtClient::ListBucketMetricsConfigurations, request, handler, context);
4820 }
4821
4845
4849 template <typename ListBucketsRequestT = Model::ListBucketsRequest>
4850 Model::ListBucketsOutcomeCallable ListBucketsCallable(const ListBucketsRequestT& request = {}) const {
4851 return SubmitCallable(&S3CrtClient::ListBuckets, request);
4852 }
4853
4858 template <typename ListBucketsRequestT = Model::ListBucketsRequest>
4860 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr,
4861 const ListBucketsRequestT& request = {}) const {
4862 return SubmitAsync(&S3CrtClient::ListBuckets, request, handler, context);
4863 }
4864
4903
4908 template <typename ListDirectoryBucketsRequestT = Model::ListDirectoryBucketsRequest>
4909 Model::ListDirectoryBucketsOutcomeCallable ListDirectoryBucketsCallable(const ListDirectoryBucketsRequestT& request = {}) const {
4910 return SubmitCallable(&S3CrtClient::ListDirectoryBuckets, request);
4911 }
4912
4917 template <typename ListDirectoryBucketsRequestT = Model::ListDirectoryBucketsRequest>
4919 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr,
4920 const ListDirectoryBucketsRequestT& request = {}) const {
4921 return SubmitAsync(&S3CrtClient::ListDirectoryBuckets, request, handler, context);
4922 }
4923
5021
5026 template <typename ListMultipartUploadsRequestT = Model::ListMultipartUploadsRequest>
5027 Model::ListMultipartUploadsOutcomeCallable ListMultipartUploadsCallable(const ListMultipartUploadsRequestT& request) const {
5028 return SubmitCallable(&S3CrtClient::ListMultipartUploads, request);
5029 }
5030
5035 template <typename ListMultipartUploadsRequestT = Model::ListMultipartUploadsRequest>
5036 void ListMultipartUploadsAsync(const ListMultipartUploadsRequestT& request, const ListMultipartUploadsResponseReceivedHandler& handler,
5037 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
5038 return SubmitAsync(&S3CrtClient::ListMultipartUploads, request, handler, context);
5039 }
5040
5069
5074 template <typename ListObjectVersionsRequestT = Model::ListObjectVersionsRequest>
5075 Model::ListObjectVersionsOutcomeCallable ListObjectVersionsCallable(const ListObjectVersionsRequestT& request) const {
5076 return SubmitCallable(&S3CrtClient::ListObjectVersions, request);
5077 }
5078
5083 template <typename ListObjectVersionsRequestT = Model::ListObjectVersionsRequest>
5084 void ListObjectVersionsAsync(const ListObjectVersionsRequestT& request, const ListObjectVersionsResponseReceivedHandler& handler,
5085 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
5086 return SubmitAsync(&S3CrtClient::ListObjectVersions, request, handler, context);
5087 }
5088
5119
5123 template <typename ListObjectsRequestT = Model::ListObjectsRequest>
5124 Model::ListObjectsOutcomeCallable ListObjectsCallable(const ListObjectsRequestT& request) const {
5125 return SubmitCallable(&S3CrtClient::ListObjects, request);
5126 }
5127
5132 template <typename ListObjectsRequestT = Model::ListObjectsRequest>
5133 void ListObjectsAsync(const ListObjectsRequestT& request, const ListObjectsResponseReceivedHandler& handler,
5134 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
5135 return SubmitAsync(&S3CrtClient::ListObjects, request, handler, context);
5136 }
5137
5221
5225 template <typename ListObjectsV2RequestT = Model::ListObjectsV2Request>
5226 Model::ListObjectsV2OutcomeCallable ListObjectsV2Callable(const ListObjectsV2RequestT& request) const {
5227 return SubmitCallable(&S3CrtClient::ListObjectsV2, request);
5228 }
5229
5234 template <typename ListObjectsV2RequestT = Model::ListObjectsV2Request>
5235 void ListObjectsV2Async(const ListObjectsV2RequestT& request, const ListObjectsV2ResponseReceivedHandler& handler,
5236 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
5237 return SubmitAsync(&S3CrtClient::ListObjectsV2, request, handler, context);
5238 }
5239
5320
5324 template <typename ListPartsRequestT = Model::ListPartsRequest>
5325 Model::ListPartsOutcomeCallable ListPartsCallable(const ListPartsRequestT& request) const {
5326 return SubmitCallable(&S3CrtClient::ListParts, request);
5327 }
5328
5333 template <typename ListPartsRequestT = Model::ListPartsRequest>
5334 void ListPartsAsync(const ListPartsRequestT& request, const ListPartsResponseReceivedHandler& handler,
5335 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
5336 return SubmitAsync(&S3CrtClient::ListParts, request, handler, context);
5337 }
5338
5358
5362 template <typename PutBucketAbacRequestT = Model::PutBucketAbacRequest>
5363 Model::PutBucketAbacOutcomeCallable PutBucketAbacCallable(const PutBucketAbacRequestT& request) const {
5364 return SubmitCallable(&S3CrtClient::PutBucketAbac, request);
5365 }
5366
5371 template <typename PutBucketAbacRequestT = Model::PutBucketAbacRequest>
5372 void PutBucketAbacAsync(const PutBucketAbacRequestT& request, const PutBucketAbacResponseReceivedHandler& handler,
5373 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
5374 return SubmitAsync(&S3CrtClient::PutBucketAbac, request, handler, context);
5375 }
5376
5416
5421 template <typename PutBucketAccelerateConfigurationRequestT = Model::PutBucketAccelerateConfigurationRequest>
5423 const PutBucketAccelerateConfigurationRequestT& request) const {
5424 return SubmitCallable(&S3CrtClient::PutBucketAccelerateConfiguration, request);
5425 }
5426
5431 template <typename PutBucketAccelerateConfigurationRequestT = Model::PutBucketAccelerateConfigurationRequest>
5432 void PutBucketAccelerateConfigurationAsync(const PutBucketAccelerateConfigurationRequestT& request,
5434 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
5435 return SubmitAsync(&S3CrtClient::PutBucketAccelerateConfiguration, request, handler, context);
5436 }
5437
5549
5553 template <typename PutBucketAclRequestT = Model::PutBucketAclRequest>
5554 Model::PutBucketAclOutcomeCallable PutBucketAclCallable(const PutBucketAclRequestT& request) const {
5555 return SubmitCallable(&S3CrtClient::PutBucketAcl, request);
5556 }
5557
5562 template <typename PutBucketAclRequestT = Model::PutBucketAclRequest>
5563 void PutBucketAclAsync(const PutBucketAclRequestT& request, const PutBucketAclResponseReceivedHandler& handler,
5564 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
5565 return SubmitAsync(&S3CrtClient::PutBucketAcl, request, handler, context);
5566 }
5567
5624
5629 template <typename PutBucketAnalyticsConfigurationRequestT = Model::PutBucketAnalyticsConfigurationRequest>
5631 const PutBucketAnalyticsConfigurationRequestT& request) const {
5632 return SubmitCallable(&S3CrtClient::PutBucketAnalyticsConfiguration, request);
5633 }
5634
5639 template <typename PutBucketAnalyticsConfigurationRequestT = Model::PutBucketAnalyticsConfigurationRequest>
5640 void PutBucketAnalyticsConfigurationAsync(const PutBucketAnalyticsConfigurationRequestT& request,
5642 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
5643 return SubmitAsync(&S3CrtClient::PutBucketAnalyticsConfiguration, request, handler, context);
5644 }
5645
5692
5696 template <typename PutBucketCorsRequestT = Model::PutBucketCorsRequest>
5697 Model::PutBucketCorsOutcomeCallable PutBucketCorsCallable(const PutBucketCorsRequestT& request) const {
5698 return SubmitCallable(&S3CrtClient::PutBucketCors, request);
5699 }
5700
5705 template <typename PutBucketCorsRequestT = Model::PutBucketCorsRequest>
5706 void PutBucketCorsAsync(const PutBucketCorsRequestT& request, const PutBucketCorsResponseReceivedHandler& handler,
5707 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
5708 return SubmitAsync(&S3CrtClient::PutBucketCors, request, handler, context);
5709 }
5710
5828
5833 template <typename PutBucketEncryptionRequestT = Model::PutBucketEncryptionRequest>
5834 Model::PutBucketEncryptionOutcomeCallable PutBucketEncryptionCallable(const PutBucketEncryptionRequestT& request) const {
5835 return SubmitCallable(&S3CrtClient::PutBucketEncryption, request);
5836 }
5837
5842 template <typename PutBucketEncryptionRequestT = Model::PutBucketEncryptionRequest>
5843 void PutBucketEncryptionAsync(const PutBucketEncryptionRequestT& request, const PutBucketEncryptionResponseReceivedHandler& handler,
5844 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
5845 return SubmitAsync(&S3CrtClient::PutBucketEncryption, request, handler, context);
5846 }
5847
5896
5901 template <typename PutBucketIntelligentTieringConfigurationRequestT = Model::PutBucketIntelligentTieringConfigurationRequest>
5903 const PutBucketIntelligentTieringConfigurationRequestT& request) const {
5904 return SubmitCallable(&S3CrtClient::PutBucketIntelligentTieringConfiguration, request);
5905 }
5906
5911 template <typename PutBucketIntelligentTieringConfigurationRequestT = Model::PutBucketIntelligentTieringConfigurationRequest>
5913 const PutBucketIntelligentTieringConfigurationRequestT& request,
5915 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
5916 return SubmitAsync(&S3CrtClient::PutBucketIntelligentTieringConfiguration, request, handler, context);
5917 }
5918
5988
5993 template <typename PutBucketInventoryConfigurationRequestT = Model::PutBucketInventoryConfigurationRequest>
5995 const PutBucketInventoryConfigurationRequestT& request) const {
5996 return SubmitCallable(&S3CrtClient::PutBucketInventoryConfiguration, request);
5997 }
5998
6003 template <typename PutBucketInventoryConfigurationRequestT = Model::PutBucketInventoryConfigurationRequest>
6004 void PutBucketInventoryConfigurationAsync(const PutBucketInventoryConfigurationRequestT& request,
6006 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
6007 return SubmitAsync(&S3CrtClient::PutBucketInventoryConfiguration, request, handler, context);
6008 }
6009
6107
6112 template <typename PutBucketLifecycleConfigurationRequestT = Model::PutBucketLifecycleConfigurationRequest>
6114 const PutBucketLifecycleConfigurationRequestT& request) const {
6115 return SubmitCallable(&S3CrtClient::PutBucketLifecycleConfiguration, request);
6116 }
6117
6122 template <typename PutBucketLifecycleConfigurationRequestT = Model::PutBucketLifecycleConfigurationRequest>
6123 void PutBucketLifecycleConfigurationAsync(const PutBucketLifecycleConfigurationRequestT& request,
6125 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
6126 return SubmitAsync(&S3CrtClient::PutBucketLifecycleConfiguration, request, handler, context);
6127 }
6128
6198
6203 template <typename PutBucketLoggingRequestT = Model::PutBucketLoggingRequest>
6204 Model::PutBucketLoggingOutcomeCallable PutBucketLoggingCallable(const PutBucketLoggingRequestT& request) const {
6205 return SubmitCallable(&S3CrtClient::PutBucketLogging, request);
6206 }
6207
6212 template <typename PutBucketLoggingRequestT = Model::PutBucketLoggingRequest>
6213 void PutBucketLoggingAsync(const PutBucketLoggingRequestT& request, const PutBucketLoggingResponseReceivedHandler& handler,
6214 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
6215 return SubmitAsync(&S3CrtClient::PutBucketLogging, request, handler, context);
6216 }
6217
6282 const Model::PutBucketMetricsConfigurationRequest& request) const;
6283
6288 template <typename PutBucketMetricsConfigurationRequestT = Model::PutBucketMetricsConfigurationRequest>
6290 const PutBucketMetricsConfigurationRequestT& request) const {
6291 return SubmitCallable(&S3CrtClient::PutBucketMetricsConfiguration, request);
6292 }
6293
6298 template <typename PutBucketMetricsConfigurationRequestT = Model::PutBucketMetricsConfigurationRequest>
6299 void PutBucketMetricsConfigurationAsync(const PutBucketMetricsConfigurationRequestT& request,
6301 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
6302 return SubmitAsync(&S3CrtClient::PutBucketMetricsConfiguration, request, handler, context);
6303 }
6304
6359
6364 template <typename PutBucketNotificationConfigurationRequestT = Model::PutBucketNotificationConfigurationRequest>
6366 const PutBucketNotificationConfigurationRequestT& request) const {
6367 return SubmitCallable(&S3CrtClient::PutBucketNotificationConfiguration, request);
6368 }
6369
6374 template <typename PutBucketNotificationConfigurationRequestT = Model::PutBucketNotificationConfigurationRequest>
6375 void PutBucketNotificationConfigurationAsync(const PutBucketNotificationConfigurationRequestT& request,
6377 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
6378 return SubmitAsync(&S3CrtClient::PutBucketNotificationConfiguration, request, handler, context);
6379 }
6380
6403 const Model::PutBucketOwnershipControlsRequest& request) const;
6404
6409 template <typename PutBucketOwnershipControlsRequestT = Model::PutBucketOwnershipControlsRequest>
6411 const PutBucketOwnershipControlsRequestT& request) const {
6412 return SubmitCallable(&S3CrtClient::PutBucketOwnershipControls, request);
6413 }
6414
6419 template <typename PutBucketOwnershipControlsRequestT = Model::PutBucketOwnershipControlsRequest>
6420 void PutBucketOwnershipControlsAsync(const PutBucketOwnershipControlsRequestT& request,
6422 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
6423 return SubmitAsync(&S3CrtClient::PutBucketOwnershipControls, request, handler, context);
6424 }
6425
6494
6498 template <typename PutBucketPolicyRequestT = Model::PutBucketPolicyRequest>
6499 Model::PutBucketPolicyOutcomeCallable PutBucketPolicyCallable(const PutBucketPolicyRequestT& request) const {
6500 return SubmitCallable(&S3CrtClient::PutBucketPolicy, request);
6501 }
6502
6507 template <typename PutBucketPolicyRequestT = Model::PutBucketPolicyRequest>
6508 void PutBucketPolicyAsync(const PutBucketPolicyRequestT& request, const PutBucketPolicyResponseReceivedHandler& handler,
6509 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
6510 return SubmitAsync(&S3CrtClient::PutBucketPolicy, request, handler, context);
6511 }
6512
6580
6585 template <typename PutBucketReplicationRequestT = Model::PutBucketReplicationRequest>
6586 Model::PutBucketReplicationOutcomeCallable PutBucketReplicationCallable(const PutBucketReplicationRequestT& request) const {
6587 return SubmitCallable(&S3CrtClient::PutBucketReplication, request);
6588 }
6589
6594 template <typename PutBucketReplicationRequestT = Model::PutBucketReplicationRequest>
6595 void PutBucketReplicationAsync(const PutBucketReplicationRequestT& request, const PutBucketReplicationResponseReceivedHandler& handler,
6596 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
6597 return SubmitAsync(&S3CrtClient::PutBucketReplication, request, handler, context);
6598 }
6599
6621
6626 template <typename PutBucketRequestPaymentRequestT = Model::PutBucketRequestPaymentRequest>
6627 Model::PutBucketRequestPaymentOutcomeCallable PutBucketRequestPaymentCallable(const PutBucketRequestPaymentRequestT& request) const {
6628 return SubmitCallable(&S3CrtClient::PutBucketRequestPayment, request);
6629 }
6630
6635 template <typename PutBucketRequestPaymentRequestT = Model::PutBucketRequestPaymentRequest>
6636 void PutBucketRequestPaymentAsync(const PutBucketRequestPaymentRequestT& request,
6638 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
6639 return SubmitAsync(&S3CrtClient::PutBucketRequestPayment, request, handler, context);
6640 }
6641
6700
6705 template <typename PutBucketTaggingRequestT = Model::PutBucketTaggingRequest>
6706 Model::PutBucketTaggingOutcomeCallable PutBucketTaggingCallable(const PutBucketTaggingRequestT& request) const {
6707 return SubmitCallable(&S3CrtClient::PutBucketTagging, request);
6708 }
6709
6714 template <typename PutBucketTaggingRequestT = Model::PutBucketTaggingRequest>
6715 void PutBucketTaggingAsync(const PutBucketTaggingRequestT& request, const PutBucketTaggingResponseReceivedHandler& handler,
6716 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
6717 return SubmitAsync(&S3CrtClient::PutBucketTagging, request, handler, context);
6718 }
6719
6766
6771 template <typename PutBucketVersioningRequestT = Model::PutBucketVersioningRequest>
6772 Model::PutBucketVersioningOutcomeCallable PutBucketVersioningCallable(const PutBucketVersioningRequestT& request) const {
6773 return SubmitCallable(&S3CrtClient::PutBucketVersioning, request);
6774 }
6775
6780 template <typename PutBucketVersioningRequestT = Model::PutBucketVersioningRequest>
6781 void PutBucketVersioningAsync(const PutBucketVersioningRequestT& request, const PutBucketVersioningResponseReceivedHandler& handler,
6782 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
6783 return SubmitAsync(&S3CrtClient::PutBucketVersioning, request, handler, context);
6784 }
6785
6833
6838 template <typename PutBucketWebsiteRequestT = Model::PutBucketWebsiteRequest>
6839 Model::PutBucketWebsiteOutcomeCallable PutBucketWebsiteCallable(const PutBucketWebsiteRequestT& request) const {
6840 return SubmitCallable(&S3CrtClient::PutBucketWebsite, request);
6841 }
6842
6847 template <typename PutBucketWebsiteRequestT = Model::PutBucketWebsiteRequest>
6848 void PutBucketWebsiteAsync(const PutBucketWebsiteRequestT& request, const PutBucketWebsiteResponseReceivedHandler& handler,
6849 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
6850 return SubmitAsync(&S3CrtClient::PutBucketWebsite, request, handler, context);
6851 }
6852
6973
6979 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
6980
7093
7097 template <typename PutObjectAclRequestT = Model::PutObjectAclRequest>
7098 Model::PutObjectAclOutcomeCallable PutObjectAclCallable(const PutObjectAclRequestT& request) const {
7099 return SubmitCallable(&S3CrtClient::PutObjectAcl, request);
7100 }
7101
7106 template <typename PutObjectAclRequestT = Model::PutObjectAclRequest>
7107 void PutObjectAclAsync(const PutObjectAclRequestT& request, const PutObjectAclResponseReceivedHandler& handler,
7108 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
7109 return SubmitAsync(&S3CrtClient::PutObjectAcl, request, handler, context);
7110 }
7111
7126
7131 template <typename PutObjectLegalHoldRequestT = Model::PutObjectLegalHoldRequest>
7132 Model::PutObjectLegalHoldOutcomeCallable PutObjectLegalHoldCallable(const PutObjectLegalHoldRequestT& request) const {
7133 return SubmitCallable(&S3CrtClient::PutObjectLegalHold, request);
7134 }
7135
7140 template <typename PutObjectLegalHoldRequestT = Model::PutObjectLegalHoldRequest>
7141 void PutObjectLegalHoldAsync(const PutObjectLegalHoldRequestT& request, const PutObjectLegalHoldResponseReceivedHandler& handler,
7142 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
7143 return SubmitAsync(&S3CrtClient::PutObjectLegalHold, request, handler, context);
7144 }
7145
7168 const Model::PutObjectLockConfigurationRequest& request) const;
7169
7174 template <typename PutObjectLockConfigurationRequestT = Model::PutObjectLockConfigurationRequest>
7176 const PutObjectLockConfigurationRequestT& request) const {
7177 return SubmitCallable(&S3CrtClient::PutObjectLockConfiguration, request);
7178 }
7179
7184 template <typename PutObjectLockConfigurationRequestT = Model::PutObjectLockConfigurationRequest>
7185 void PutObjectLockConfigurationAsync(const PutObjectLockConfigurationRequestT& request,
7187 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
7188 return SubmitAsync(&S3CrtClient::PutObjectLockConfiguration, request, handler, context);
7189 }
7190
7209
7214 template <typename PutObjectRetentionRequestT = Model::PutObjectRetentionRequest>
7215 Model::PutObjectRetentionOutcomeCallable PutObjectRetentionCallable(const PutObjectRetentionRequestT& request) const {
7216 return SubmitCallable(&S3CrtClient::PutObjectRetention, request);
7217 }
7218
7223 template <typename PutObjectRetentionRequestT = Model::PutObjectRetentionRequest>
7224 void PutObjectRetentionAsync(const PutObjectRetentionRequestT& request, const PutObjectRetentionResponseReceivedHandler& handler,
7225 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
7226 return SubmitAsync(&S3CrtClient::PutObjectRetention, request, handler, context);
7227 }
7228
7272
7277 template <typename PutObjectTaggingRequestT = Model::PutObjectTaggingRequest>
7278 Model::PutObjectTaggingOutcomeCallable PutObjectTaggingCallable(const PutObjectTaggingRequestT& request) const {
7279 return SubmitCallable(&S3CrtClient::PutObjectTagging, request);
7280 }
7281
7286 template <typename PutObjectTaggingRequestT = Model::PutObjectTaggingRequest>
7287 void PutObjectTaggingAsync(const PutObjectTaggingRequestT& request, const PutObjectTaggingResponseReceivedHandler& handler,
7288 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
7289 return SubmitAsync(&S3CrtClient::PutObjectTagging, request, handler, context);
7290 }
7291
7328
7333 template <typename PutPublicAccessBlockRequestT = Model::PutPublicAccessBlockRequest>
7334 Model::PutPublicAccessBlockOutcomeCallable PutPublicAccessBlockCallable(const PutPublicAccessBlockRequestT& request) const {
7335 return SubmitCallable(&S3CrtClient::PutPublicAccessBlock, request);
7336 }
7337
7342 template <typename PutPublicAccessBlockRequestT = Model::PutPublicAccessBlockRequest>
7343 void PutPublicAccessBlockAsync(const PutPublicAccessBlockRequestT& request, const PutPublicAccessBlockResponseReceivedHandler& handler,
7344 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
7345 return SubmitAsync(&S3CrtClient::PutPublicAccessBlock, request, handler, context);
7346 }
7347
7397
7401 template <typename RenameObjectRequestT = Model::RenameObjectRequest>
7402 Model::RenameObjectOutcomeCallable RenameObjectCallable(const RenameObjectRequestT& request) const {
7403 return SubmitCallable(&S3CrtClient::RenameObject, request);
7404 }
7405
7410 template <typename RenameObjectRequestT = Model::RenameObjectRequest>
7411 void RenameObjectAsync(const RenameObjectRequestT& request, const RenameObjectResponseReceivedHandler& handler,
7412 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
7413 return SubmitAsync(&S3CrtClient::RenameObject, request, handler, context);
7414 }
7415
7538
7542 template <typename RestoreObjectRequestT = Model::RestoreObjectRequest>
7543 Model::RestoreObjectOutcomeCallable RestoreObjectCallable(const RestoreObjectRequestT& request) const {
7544 return SubmitCallable(&S3CrtClient::RestoreObject, request);
7545 }
7546
7551 template <typename RestoreObjectRequestT = Model::RestoreObjectRequest>
7552 void RestoreObjectAsync(const RestoreObjectRequestT& request, const RestoreObjectResponseReceivedHandler& handler,
7553 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
7554 return SubmitAsync(&S3CrtClient::RestoreObject, request, handler, context);
7555 }
7556
7642
7647 template <typename SelectObjectContentRequestT = Model::SelectObjectContentRequest>
7649 return SubmitCallable(&S3CrtClient::SelectObjectContent, request);
7650 }
7651
7656 template <typename SelectObjectContentRequestT = Model::SelectObjectContentRequest>
7657 void SelectObjectContentAsync(SelectObjectContentRequestT& request, const SelectObjectContentResponseReceivedHandler& handler,
7658 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
7659 return SubmitAsync(&S3CrtClient::SelectObjectContent, request, handler, context);
7660 }
7661
7705
7710 template <
7711 typename UpdateBucketMetadataInventoryTableConfigurationRequestT = Model::UpdateBucketMetadataInventoryTableConfigurationRequest>
7713 const UpdateBucketMetadataInventoryTableConfigurationRequestT& request) const {
7714 return SubmitCallable(&S3CrtClient::UpdateBucketMetadataInventoryTableConfiguration, request);
7715 }
7716
7721 template <
7722 typename UpdateBucketMetadataInventoryTableConfigurationRequestT = Model::UpdateBucketMetadataInventoryTableConfigurationRequest>
7724 const UpdateBucketMetadataInventoryTableConfigurationRequestT& request,
7726 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
7727 return SubmitAsync(&S3CrtClient::UpdateBucketMetadataInventoryTableConfiguration, request, handler, context);
7728 }
7729
7759
7764 template <typename UpdateBucketMetadataJournalTableConfigurationRequestT = Model::UpdateBucketMetadataJournalTableConfigurationRequest>
7766 const UpdateBucketMetadataJournalTableConfigurationRequestT& request) const {
7767 return SubmitCallable(&S3CrtClient::UpdateBucketMetadataJournalTableConfiguration, request);
7768 }
7769
7774 template <typename UpdateBucketMetadataJournalTableConfigurationRequestT = Model::UpdateBucketMetadataJournalTableConfigurationRequest>
7776 const UpdateBucketMetadataJournalTableConfigurationRequestT& request,
7778 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
7779 return SubmitAsync(&S3CrtClient::UpdateBucketMetadataJournalTableConfiguration, request, handler, context);
7780 }
7781
7875
7880 template <typename UpdateObjectEncryptionRequestT = Model::UpdateObjectEncryptionRequest>
7881 Model::UpdateObjectEncryptionOutcomeCallable UpdateObjectEncryptionCallable(const UpdateObjectEncryptionRequestT& request) const {
7882 return SubmitCallable(&S3CrtClient::UpdateObjectEncryption, request);
7883 }
7884
7889 template <typename UpdateObjectEncryptionRequestT = Model::UpdateObjectEncryptionRequest>
7890 void UpdateObjectEncryptionAsync(const UpdateObjectEncryptionRequestT& request,
7892 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
7893 return SubmitAsync(&S3CrtClient::UpdateObjectEncryption, request, handler, context);
7894 }
7895
8047
8051 template <typename UploadPartRequestT = Model::UploadPartRequest>
8052 Model::UploadPartOutcomeCallable UploadPartCallable(const UploadPartRequestT& request) const {
8053 return SubmitCallable(&S3CrtClient::UploadPart, request);
8054 }
8055
8060 template <typename UploadPartRequestT = Model::UploadPartRequest>
8061 void UploadPartAsync(const UploadPartRequestT& request, const UploadPartResponseReceivedHandler& handler,
8062 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
8063 return SubmitAsync(&S3CrtClient::UploadPart, request, handler, context);
8064 }
8065
8225
8229 template <typename UploadPartCopyRequestT = Model::UploadPartCopyRequest>
8230 Model::UploadPartCopyOutcomeCallable UploadPartCopyCallable(const UploadPartCopyRequestT& request) const {
8231 return SubmitCallable(&S3CrtClient::UploadPartCopy, request);
8232 }
8233
8238 template <typename UploadPartCopyRequestT = Model::UploadPartCopyRequest>
8239 void UploadPartCopyAsync(const UploadPartCopyRequestT& request, const UploadPartCopyResponseReceivedHandler& handler,
8240 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
8241 return SubmitAsync(&S3CrtClient::UploadPartCopy, request, handler, context);
8242 }
8243
8295
8300 template <typename WriteGetObjectResponseRequestT = Model::WriteGetObjectResponseRequest>
8301 Model::WriteGetObjectResponseOutcomeCallable WriteGetObjectResponseCallable(const WriteGetObjectResponseRequestT& request) const {
8302 return SubmitCallable(&S3CrtClient::WriteGetObjectResponse, request);
8303 }
8304
8309 template <typename WriteGetObjectResponseRequestT = Model::WriteGetObjectResponseRequest>
8310 void WriteGetObjectResponseAsync(const WriteGetObjectResponseRequestT& request,
8312 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
8313 return SubmitAsync(&S3CrtClient::WriteGetObjectResponse, request, handler, context);
8314 }
8315
8317 uint64_t expirationInSeconds = MAX_EXPIRATION_SECONDS);
8318
8320 const Http::HeaderValueCollection& customizedHeaders,
8321 uint64_t expirationInSeconds = MAX_EXPIRATION_SECONDS);
8322
8337 uint64_t expirationInSeconds = MAX_EXPIRATION_SECONDS);
8344 Http::HeaderValueCollection customizedHeaders,
8345 uint64_t expirationInSeconds = MAX_EXPIRATION_SECONDS);
8346
8353 const Aws::String& kmsMasterKeyId = "",
8354 uint64_t expirationInSeconds = MAX_EXPIRATION_SECONDS);
8362 Http::HeaderValueCollection customizedHeaders, const Aws::String& kmsMasterKeyId = "",
8363 uint64_t expirationInSeconds = MAX_EXPIRATION_SECONDS);
8364
8370 const Aws::String& base64EncodedAES256Key,
8371 uint64_t expirationInSeconds = MAX_EXPIRATION_SECONDS);
8379 Http::HeaderValueCollection customizedHeaders, const Aws::String& base64EncodedAES256Key,
8380 uint64_t expirationInSeconds = MAX_EXPIRATION_SECONDS);
8381
8382 virtual bool MultipartUploadSupported() const;
8383
8384 virtual void OverrideEndpoint(const Aws::String& endpoint);
8385 virtual std::shared_ptr<S3CrtEndpointProviderBase>& accessEndpointProvider();
8386
8392 std::shared_ptr<const Aws::Client::AsyncCallerContext> asyncCallerContext;
8394 std::shared_ptr<Aws::Http::HttpRequest> request;
8395 std::shared_ptr<Aws::Http::HttpResponse> response;
8396 std::shared_ptr<Aws::Crt::Http::HttpRequest> crtHttpRequest;
8398 };
8399
8400 Aws::Client::XmlOutcome GenerateXmlOutcome(const std::shared_ptr<Http::HttpResponse>& response) const;
8401 Aws::Client::StreamOutcome GenerateStreamOutcome(const std::shared_ptr<Http::HttpResponse>& response) const;
8402
8403 protected:
8404 void AddContentLengthToRequest(const std::shared_ptr<Aws::Http::HttpRequest>& httpRequest, const std::shared_ptr<Aws::IOStream>& body,
8405 bool isChunked) const override;
8406
8407 private:
8409 void init(const S3Crt::ClientConfiguration& clientConfiguration,
8410 const std::shared_ptr<Aws::Auth::AWSCredentialsProvider> credentialsProvider);
8411
8412 struct CrtClientShutdownCallbackDataWrapper {
8413 void* data;
8414 std::function<void(void*)> fn;
8415 std::shared_ptr<Aws::Utils::Threading::Semaphore> clientShutdownSem;
8416 };
8417
8418 static void CrtClientShutdownCallback(void* data);
8419 void CancelCrtRequest(aws_s3_meta_request* meta_request) const;
8420 static int S3CrtRequestHeadersCallback(aws_s3_meta_request* meta_request, const struct aws_http_headers* headers, int response_status,
8421 void* user_data);
8422 static int S3CrtRequestGetBodyCallback(struct aws_s3_meta_request* meta_request, const struct aws_byte_cursor* body, uint64_t range_start,
8423 void* user_data);
8424 static void S3CrtRequestProgressCallback(struct aws_s3_meta_request* meta_request, const struct aws_s3_meta_request_progress* progress,
8425 void* user_data);
8426 static void S3CrtRequestFinishCallback(struct aws_s3_meta_request* meta_request,
8427 const struct aws_s3_meta_request_result* meta_request_result, void* user_data);
8428
8429 void InitCrtEndpointFromUri(aws_uri& endpoint_uri, const Aws::Http::URI& uri) const;
8430
8431 void InitCommonCrtRequestOption(CrtRequestCallbackUserData* userData, aws_s3_meta_request_options* options,
8432 const Aws::AmazonWebServiceRequest* request, const Aws::Http::URI& uri,
8433 Aws::Http::HttpMethod method) const;
8434
8436
8437 InvokeOperationOutcome InvokeServiceOperation(const AmazonWebServiceRequest& request,
8438 const std::function<void(Aws::Endpoint::ResolveEndpointOutcome&)>& resolveUri,
8439 Aws::String bucketName, Aws::Http::HttpMethod httpMethod) const;
8440
8441 S3Crt::ClientConfiguration m_clientConfiguration;
8442 struct aws_s3_client* m_s3CrtClient = {};
8443 struct aws_signing_config_aws m_s3CrtSigningConfig = {};
8444 struct CrtClientShutdownCallbackDataWrapper m_wrappedData = {};
8445 std::shared_ptr<Aws::Utils::Threading::Semaphore> m_clientShutdownSem;
8446 std::shared_ptr<Aws::Auth::AWSCredentialsProvider> m_credProvider;
8447 std::shared_ptr<Aws::Crt::Auth::ICredentialsProvider> m_crtCredProvider;
8448 std::shared_ptr<S3CrtEndpointProviderBase> m_endpointProvider;
8449 std::shared_ptr<S3ExpressIdentityProvider> m_identityProvider;
8450 S3CrtIdentityProviderUserData m_identityProviderUserData{m_identityProvider};
8451};
8452
8453} // namespace S3Crt
8454} // namespace Aws
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 Aws::String GeneratePresignedUrlWithSSES3(const Aws::String &bucket, const Aws::String &key, Aws::Http::HttpMethod method, Http::HeaderValueCollection customizedHeaders, uint64_t expirationInSeconds=MAX_EXPIRATION_SECONDS)
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
Definition S3CrtClient.h:58
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()
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
virtual Aws::String GeneratePresignedUrlWithSSES3(const Aws::String &bucket, const Aws::String &key, Aws::Http::HttpMethod method, uint64_t expirationInSeconds=MAX_EXPIRATION_SECONDS)
virtual Model::GetBucketAbacOutcome GetBucketAbac(const Model::GetBucketAbacRequest &request) const
Model::RestoreObjectOutcomeCallable RestoreObjectCallable(const RestoreObjectRequestT &request) const
Model::PutObjectAclOutcomeCallable PutObjectAclCallable(const PutObjectAclRequestT &request) const
Model::ListBucketMetricsConfigurationsOutcomeCallable ListBucketMetricsConfigurationsCallable(const ListBucketMetricsConfigurationsRequestT &request) const
virtual Aws::String GeneratePresignedUrl(const Aws::String &bucket, const Aws::String &key, Aws::Http::HttpMethod method, uint64_t expirationInSeconds=MAX_EXPIRATION_SECONDS)
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
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
void UpdateObjectEncryptionAsync(const UpdateObjectEncryptionRequestT &request, const UpdateObjectEncryptionResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) 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
Model::GetBucketAbacOutcomeCallable GetBucketAbacCallable(const GetBucketAbacRequestT &request) 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
void GetBucketAbacAsync(const GetBucketAbacRequestT &request, const GetBucketAbacResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) 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())
virtual 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)
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
virtual Model::PutBucketAbacOutcome PutBucketAbac(const Model::PutBucketAbacRequest &request) 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
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
Model::GetBucketMetricsConfigurationOutcomeCallable GetBucketMetricsConfigurationCallable(const GetBucketMetricsConfigurationRequestT &request) const
virtual 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)
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
virtual Model::UpdateObjectEncryptionOutcome UpdateObjectEncryption(const Model::UpdateObjectEncryptionRequest &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
Definition S3CrtClient.h:62
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
virtual 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)
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 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::DeleteBucketPolicyOutcome DeleteBucketPolicy(const Model::DeleteBucketPolicyRequest &request) const
virtual Model::HeadBucketOutcome HeadBucket(const Model::HeadBucketRequest &request) const
void PutBucketAbacAsync(const PutBucketAbacRequestT &request, const PutBucketAbacResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) 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
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
Definition S3CrtClient.h:63
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
virtual 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)
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
Model::UpdateObjectEncryptionOutcomeCallable UpdateObjectEncryptionCallable(const UpdateObjectEncryptionRequestT &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
virtual void OverrideEndpoint(const Aws::String &endpoint)
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
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
Model::PutBucketAbacOutcomeCallable PutBucketAbacCallable(const PutBucketAbacRequestT &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
virtual std::shared_ptr< S3CrtEndpointProviderBase > & accessEndpointProvider()
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
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< UpdateObjectEncryptionOutcome > UpdateObjectEncryptionOutcomeCallable
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< GetBucketAbacOutcome > GetBucketAbacOutcomeCallable
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< PutBucketAbacOutcome > PutBucketAbacOutcomeCallable
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
static const char SERVER_SIDE_ENCRYPTION_CUSTOMER_KEY[]
Definition S3CrtClient.h:41
static const char SERVER_SIDE_ENCRYPTION_CUSTOMER_ALGORITHM[]
Definition S3CrtClient.h:40
static const char SERVER_SIDE_ENCRYPTION_CUSTOMER_KEY_MD5[]
Definition S3CrtClient.h:42
static const char SERVER_SIDE_ENCRYPTION_AWS_KMS_KEY_ID[]
Definition S3CrtClient.h:39
static const char SERVER_SIDE_ENCRYPTION[]
Definition S3CrtClient.h:38
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::GetBucketAccelerateConfigurationRequest &, const Model::GetBucketAccelerateConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetBucketAccelerateConfigurationResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::GetBucketMetricsConfigurationRequest &, const Model::GetBucketMetricsConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetBucketMetricsConfigurationResponseReceivedHandler
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::RenameObjectRequest &, const Model::RenameObjectOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> RenameObjectResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::PutObjectRequest &, const Model::PutObjectOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> PutObjectResponseReceivedHandler
static const unsigned MAX_EXPIRATION_SECONDS
Definition S3CrtClient.h:46
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::PutPublicAccessBlockRequest &, const Model::PutPublicAccessBlockOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> PutPublicAccessBlockResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::UpdateObjectEncryptionRequest &, const Model::UpdateObjectEncryptionOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> UpdateObjectEncryptionResponseReceivedHandler
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::GetBucketVersioningRequest &, const Model::GetBucketVersioningOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetBucketVersioningResponseReceivedHandler
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::PutBucketRequestPaymentRequest &, const Model::PutBucketRequestPaymentOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> PutBucketRequestPaymentResponseReceivedHandler
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::PutBucketCorsRequest &, const Model::PutBucketCorsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> PutBucketCorsResponseReceivedHandler
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::ListBucketAnalyticsConfigurationsRequest &, const Model::ListBucketAnalyticsConfigurationsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> ListBucketAnalyticsConfigurationsResponseReceivedHandler
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::GetObjectRequest &, Model::GetObjectOutcome, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetObjectResponseReceivedHandler
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::DeleteBucketIntelligentTieringConfigurationRequest &, const Model::DeleteBucketIntelligentTieringConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> DeleteBucketIntelligentTieringConfigurationResponseReceivedHandler
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::UploadPartCopyRequest &, const Model::UploadPartCopyOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> UploadPartCopyResponseReceivedHandler
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::HeadBucketRequest &, const Model::HeadBucketOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> HeadBucketResponseReceivedHandler
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::GetObjectRetentionRequest &, const Model::GetObjectRetentionOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetObjectRetentionResponseReceivedHandler
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::PutBucketAccelerateConfigurationRequest &, const Model::PutBucketAccelerateConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> PutBucketAccelerateConfigurationResponseReceivedHandler
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::DeleteBucketInventoryConfigurationRequest &, const Model::DeleteBucketInventoryConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> DeleteBucketInventoryConfigurationResponseReceivedHandler
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::GetPublicAccessBlockRequest &, const Model::GetPublicAccessBlockOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetPublicAccessBlockResponseReceivedHandler
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::DeleteBucketMetadataConfigurationRequest &, const Model::DeleteBucketMetadataConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> DeleteBucketMetadataConfigurationResponseReceivedHandler
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::GetBucketReplicationRequest &, const Model::GetBucketReplicationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetBucketReplicationResponseReceivedHandler
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::PutBucketWebsiteRequest &, const Model::PutBucketWebsiteOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> PutBucketWebsiteResponseReceivedHandler
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::DeleteBucketRequest &, const Model::DeleteBucketOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> DeleteBucketResponseReceivedHandler
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::GetBucketWebsiteRequest &, const Model::GetBucketWebsiteOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetBucketWebsiteResponseReceivedHandler
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::GetBucketMetadataConfigurationRequest &, const Model::GetBucketMetadataConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetBucketMetadataConfigurationResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::ListBucketsRequest &, const Model::ListBucketsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> ListBucketsResponseReceivedHandler
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::CreateSessionRequest &, const Model::CreateSessionOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> CreateSessionResponseReceivedHandler
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::PutBucketAbacRequest &, const Model::PutBucketAbacOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> PutBucketAbacResponseReceivedHandler
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::PutBucketAnalyticsConfigurationRequest &, const Model::PutBucketAnalyticsConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> PutBucketAnalyticsConfigurationResponseReceivedHandler
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::DeleteBucketPolicyRequest &, const Model::DeleteBucketPolicyOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> DeleteBucketPolicyResponseReceivedHandler
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::PutBucketEncryptionRequest &, const Model::PutBucketEncryptionOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> PutBucketEncryptionResponseReceivedHandler
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::CreateBucketMetadataTableConfigurationRequest &, const Model::CreateBucketMetadataTableConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> CreateBucketMetadataTableConfigurationResponseReceivedHandler
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::PutBucketPolicyRequest &, const Model::PutBucketPolicyOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> PutBucketPolicyResponseReceivedHandler
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::GetObjectTorrentRequest &, Model::GetObjectTorrentOutcome, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetObjectTorrentResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::DeleteBucketCorsRequest &, const Model::DeleteBucketCorsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> DeleteBucketCorsResponseReceivedHandler
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::GetBucketLifecycleConfigurationRequest &, const Model::GetBucketLifecycleConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetBucketLifecycleConfigurationResponseReceivedHandler
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::PutBucketTaggingRequest &, const Model::PutBucketTaggingOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> PutBucketTaggingResponseReceivedHandler
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::DeletePublicAccessBlockRequest &, const Model::DeletePublicAccessBlockOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> DeletePublicAccessBlockResponseReceivedHandler
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::PutBucketOwnershipControlsRequest &, const Model::PutBucketOwnershipControlsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> PutBucketOwnershipControlsResponseReceivedHandler
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::ListObjectsV2Request &, const Model::ListObjectsV2Outcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> ListObjectsV2ResponseReceivedHandler
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::DeleteObjectTaggingRequest &, const Model::DeleteObjectTaggingOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> DeleteObjectTaggingResponseReceivedHandler
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::DeleteBucketWebsiteRequest &, const Model::DeleteBucketWebsiteOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> DeleteBucketWebsiteResponseReceivedHandler
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::PutBucketReplicationRequest &, const Model::PutBucketReplicationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> PutBucketReplicationResponseReceivedHandler
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::GetBucketAnalyticsConfigurationRequest &, const Model::GetBucketAnalyticsConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetBucketAnalyticsConfigurationResponseReceivedHandler
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::DeleteBucketEncryptionRequest &, const Model::DeleteBucketEncryptionOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> DeleteBucketEncryptionResponseReceivedHandler
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::PutObjectLockConfigurationRequest &, const Model::PutObjectLockConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> PutObjectLockConfigurationResponseReceivedHandler
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::GetObjectAttributesRequest &, const Model::GetObjectAttributesOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetObjectAttributesResponseReceivedHandler
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::GetBucketLoggingRequest &, const Model::GetBucketLoggingOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetBucketLoggingResponseReceivedHandler
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::DeleteBucketReplicationRequest &, const Model::DeleteBucketReplicationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> DeleteBucketReplicationResponseReceivedHandler
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::ListBucketMetricsConfigurationsRequest &, const Model::ListBucketMetricsConfigurationsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> ListBucketMetricsConfigurationsResponseReceivedHandler
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::ListPartsRequest &, const Model::ListPartsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> ListPartsResponseReceivedHandler
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::PutObjectRetentionRequest &, const Model::PutObjectRetentionOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> PutObjectRetentionResponseReceivedHandler
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::GetBucketNotificationConfigurationRequest &, const Model::GetBucketNotificationConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetBucketNotificationConfigurationResponseReceivedHandler
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::DeleteBucketOwnershipControlsRequest &, const Model::DeleteBucketOwnershipControlsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> DeleteBucketOwnershipControlsResponseReceivedHandler
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::GetBucketEncryptionRequest &, const Model::GetBucketEncryptionOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetBucketEncryptionResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::GetBucketAbacRequest &, const Model::GetBucketAbacOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetBucketAbacResponseReceivedHandler
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::ListObjectVersionsRequest &, const Model::ListObjectVersionsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> ListObjectVersionsResponseReceivedHandler
std::function< void(const S3CrtClient *, const Model::GetBucketInventoryConfigurationRequest &, const Model::GetBucketInventoryConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetBucketInventoryConfigurationResponseReceivedHandler
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
std::shared_ptr< Aws::Http::HttpRequest > request
CopyObjectResponseReceivedHandler copyResponseHandler