AWS SDK for C++

AWS SDK for C++ Version 1.11.759

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/S3Crt_EXPORTS.h>
23#include <aws/s3-crt/S3ExpressIdentityProvider.h>
24#include <aws/s3/s3_client.h>
25
26struct aws_s3_client;
27// TODO: temporary fix for naming conflicts on Windows.
28#ifdef _WIN32
29#ifdef GetObject
30#undef GetObject
31#endif
32#endif
33
34namespace Aws {
35namespace S3Crt {
36namespace SSEHeaders {
37static const char SERVER_SIDE_ENCRYPTION[] = "x-amz-server-side-encryption";
38static const char SERVER_SIDE_ENCRYPTION_AWS_KMS_KEY_ID[] = "x-amz-server-side-encryption-aws-kms-key-id";
39static const char SERVER_SIDE_ENCRYPTION_CUSTOMER_ALGORITHM[] = "x-amz-server-side-encryption-customer-algorithm";
40static const char SERVER_SIDE_ENCRYPTION_CUSTOMER_KEY[] = "x-amz-server-side-encryption-customer-key";
41static const char SERVER_SIDE_ENCRYPTION_CUSTOMER_KEY_MD5[] = "x-amz-server-side-encryption-customer-key-MD5";
42} // namespace SSEHeaders
43
44// max expiration for presigned urls in s3 is 7 days.
45static const unsigned MAX_EXPIRATION_SECONDS = 7 * 24 * 60 * 60;
46
48
52class AWS_S3CRT_API S3CrtClient : public Aws::Client::AWSXMLClient,
54 public S3CrtPaginationBase<S3CrtClient> {
55 public:
57 static const char* GetServiceName();
58 static const char* GetAllocationTag();
59
62
69
77
83 S3CrtClient(S3CrtClient&& rhs) noexcept;
84
92
93 /* Legacy constructors due deprecation */
99 Aws::Client::AWSAuthV4Signer::PayloadSigningPolicy signPayloads = Aws::Client::AWSAuthV4Signer::PayloadSigningPolicy::Never,
100 bool useVirtualAddressing = true,
101 Aws::S3Crt::US_EAST_1_REGIONAL_ENDPOINT_OPTION USEast1RegionalEndPointOption =
104
111 Aws::Client::AWSAuthV4Signer::PayloadSigningPolicy signPayloads = Aws::Client::AWSAuthV4Signer::PayloadSigningPolicy::Never,
112 bool useVirtualAddressing = true,
113 Aws::S3Crt::US_EAST_1_REGIONAL_ENDPOINT_OPTION USEast1RegionalEndPointOption =
115
120 S3CrtClient(const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
122 Aws::Client::AWSAuthV4Signer::PayloadSigningPolicy signPayloads = Aws::Client::AWSAuthV4Signer::PayloadSigningPolicy::Never,
123 bool useVirtualAddressing = true,
124 Aws::S3Crt::US_EAST_1_REGIONAL_ENDPOINT_OPTION USEast1RegionalEndPointOption =
126
127 /* End of legacy constructors due deprecation */
128 virtual ~S3CrtClient();
129
202
207 template <typename AbortMultipartUploadRequestT = Model::AbortMultipartUploadRequest>
208 Model::AbortMultipartUploadOutcomeCallable AbortMultipartUploadCallable(const AbortMultipartUploadRequestT& request) const {
209 return SubmitCallable(&S3CrtClient::AbortMultipartUpload, request);
210 }
211
216 template <typename AbortMultipartUploadRequestT = Model::AbortMultipartUploadRequest>
217 void AbortMultipartUploadAsync(const AbortMultipartUploadRequestT& request, const AbortMultipartUploadResponseReceivedHandler& handler,
218 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
219 return SubmitAsync(&S3CrtClient::AbortMultipartUpload, request, handler, context);
220 }
221
343
348 template <typename CompleteMultipartUploadRequestT = Model::CompleteMultipartUploadRequest>
349 Model::CompleteMultipartUploadOutcomeCallable CompleteMultipartUploadCallable(const CompleteMultipartUploadRequestT& request) const {
350 return SubmitCallable(&S3CrtClient::CompleteMultipartUpload, request);
351 }
352
357 template <typename CompleteMultipartUploadRequestT = Model::CompleteMultipartUploadRequest>
358 void CompleteMultipartUploadAsync(const CompleteMultipartUploadRequestT& request,
360 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
361 return SubmitAsync(&S3CrtClient::CompleteMultipartUpload, request, handler, context);
362 }
363
509
515 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
516
632
636 template <typename CreateBucketRequestT = Model::CreateBucketRequest>
637 Model::CreateBucketOutcomeCallable CreateBucketCallable(const CreateBucketRequestT& request) const {
638 return SubmitCallable(&S3CrtClient::CreateBucket, request);
639 }
640
645 template <typename CreateBucketRequestT = Model::CreateBucketRequest>
646 void CreateBucketAsync(const CreateBucketRequestT& request, const CreateBucketResponseReceivedHandler& handler,
647 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
648 return SubmitAsync(&S3CrtClient::CreateBucket, request, handler, context);
649 }
650
703
708 template <typename CreateBucketMetadataConfigurationRequestT = Model::CreateBucketMetadataConfigurationRequest>
710 const CreateBucketMetadataConfigurationRequestT& request) const {
711 return SubmitCallable(&S3CrtClient::CreateBucketMetadataConfiguration, request);
712 }
713
718 template <typename CreateBucketMetadataConfigurationRequestT = Model::CreateBucketMetadataConfigurationRequest>
719 void CreateBucketMetadataConfigurationAsync(const CreateBucketMetadataConfigurationRequestT& request,
721 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
722 return SubmitAsync(&S3CrtClient::CreateBucketMetadataConfiguration, request, handler, context);
723 }
724
774
779 template <typename CreateBucketMetadataTableConfigurationRequestT = Model::CreateBucketMetadataTableConfigurationRequest>
781 const CreateBucketMetadataTableConfigurationRequestT& request) const {
782 return SubmitCallable(&S3CrtClient::CreateBucketMetadataTableConfiguration, request);
783 }
784
789 template <typename CreateBucketMetadataTableConfigurationRequestT = Model::CreateBucketMetadataTableConfigurationRequest>
790 void CreateBucketMetadataTableConfigurationAsync(const CreateBucketMetadataTableConfigurationRequestT& request,
792 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
793 return SubmitAsync(&S3CrtClient::CreateBucketMetadataTableConfiguration, request, handler, context);
794 }
795
1018
1023 template <typename CreateMultipartUploadRequestT = Model::CreateMultipartUploadRequest>
1024 Model::CreateMultipartUploadOutcomeCallable CreateMultipartUploadCallable(const CreateMultipartUploadRequestT& request) const {
1025 return SubmitCallable(&S3CrtClient::CreateMultipartUpload, request);
1026 }
1027
1032 template <typename CreateMultipartUploadRequestT = Model::CreateMultipartUploadRequest>
1033 void CreateMultipartUploadAsync(const CreateMultipartUploadRequestT& request, const CreateMultipartUploadResponseReceivedHandler& handler,
1034 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
1035 return SubmitAsync(&S3CrtClient::CreateMultipartUpload, request, handler, context);
1036 }
1037
1187
1191 template <typename CreateSessionRequestT = Model::CreateSessionRequest>
1192 Model::CreateSessionOutcomeCallable CreateSessionCallable(const CreateSessionRequestT& request) const {
1193 return SubmitCallable(&S3CrtClient::CreateSession, request);
1194 }
1195
1200 template <typename CreateSessionRequestT = Model::CreateSessionRequest>
1201 void CreateSessionAsync(const CreateSessionRequestT& request, const CreateSessionResponseReceivedHandler& handler,
1202 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
1203 return SubmitAsync(&S3CrtClient::CreateSession, request, handler, context);
1204 }
1205
1251
1255 template <typename DeleteBucketRequestT = Model::DeleteBucketRequest>
1256 Model::DeleteBucketOutcomeCallable DeleteBucketCallable(const DeleteBucketRequestT& request) const {
1257 return SubmitCallable(&S3CrtClient::DeleteBucket, request);
1258 }
1259
1264 template <typename DeleteBucketRequestT = Model::DeleteBucketRequest>
1265 void DeleteBucketAsync(const DeleteBucketRequestT& request, const DeleteBucketResponseReceivedHandler& handler,
1266 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
1267 return SubmitAsync(&S3CrtClient::DeleteBucket, request, handler, context);
1268 }
1269
1300
1305 template <typename DeleteBucketAnalyticsConfigurationRequestT = Model::DeleteBucketAnalyticsConfigurationRequest>
1307 const DeleteBucketAnalyticsConfigurationRequestT& request) const {
1308 return SubmitCallable(&S3CrtClient::DeleteBucketAnalyticsConfiguration, request);
1309 }
1310
1315 template <typename DeleteBucketAnalyticsConfigurationRequestT = Model::DeleteBucketAnalyticsConfigurationRequest>
1316 void DeleteBucketAnalyticsConfigurationAsync(const DeleteBucketAnalyticsConfigurationRequestT& request,
1318 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
1319 return SubmitAsync(&S3CrtClient::DeleteBucketAnalyticsConfiguration, request, handler, context);
1320 }
1321
1344
1349 template <typename DeleteBucketCorsRequestT = Model::DeleteBucketCorsRequest>
1350 Model::DeleteBucketCorsOutcomeCallable DeleteBucketCorsCallable(const DeleteBucketCorsRequestT& request) const {
1351 return SubmitCallable(&S3CrtClient::DeleteBucketCors, request);
1352 }
1353
1358 template <typename DeleteBucketCorsRequestT = Model::DeleteBucketCorsRequest>
1359 void DeleteBucketCorsAsync(const DeleteBucketCorsRequestT& request, const DeleteBucketCorsResponseReceivedHandler& handler,
1360 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
1361 return SubmitAsync(&S3CrtClient::DeleteBucketCors, request, handler, context);
1362 }
1363
1411
1416 template <typename DeleteBucketEncryptionRequestT = Model::DeleteBucketEncryptionRequest>
1417 Model::DeleteBucketEncryptionOutcomeCallable DeleteBucketEncryptionCallable(const DeleteBucketEncryptionRequestT& request) const {
1418 return SubmitCallable(&S3CrtClient::DeleteBucketEncryption, request);
1419 }
1420
1425 template <typename DeleteBucketEncryptionRequestT = Model::DeleteBucketEncryptionRequest>
1426 void DeleteBucketEncryptionAsync(const DeleteBucketEncryptionRequestT& request,
1428 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
1429 return SubmitAsync(&S3CrtClient::DeleteBucketEncryption, request, handler, context);
1430 }
1431
1468
1473 template <typename DeleteBucketIntelligentTieringConfigurationRequestT = Model::DeleteBucketIntelligentTieringConfigurationRequest>
1475 const DeleteBucketIntelligentTieringConfigurationRequestT& request) const {
1476 return SubmitCallable(&S3CrtClient::DeleteBucketIntelligentTieringConfiguration, request);
1477 }
1478
1483 template <typename DeleteBucketIntelligentTieringConfigurationRequestT = Model::DeleteBucketIntelligentTieringConfigurationRequest>
1485 const DeleteBucketIntelligentTieringConfigurationRequestT& request,
1487 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
1488 return SubmitAsync(&S3CrtClient::DeleteBucketIntelligentTieringConfiguration, request, handler, context);
1489 }
1490
1521
1526 template <typename DeleteBucketInventoryConfigurationRequestT = Model::DeleteBucketInventoryConfigurationRequest>
1528 const DeleteBucketInventoryConfigurationRequestT& request) const {
1529 return SubmitCallable(&S3CrtClient::DeleteBucketInventoryConfiguration, request);
1530 }
1531
1536 template <typename DeleteBucketInventoryConfigurationRequestT = Model::DeleteBucketInventoryConfigurationRequest>
1537 void DeleteBucketInventoryConfigurationAsync(const DeleteBucketInventoryConfigurationRequestT& request,
1539 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
1540 return SubmitAsync(&S3CrtClient::DeleteBucketInventoryConfiguration, request, handler, context);
1541 }
1542
1599
1604 template <typename DeleteBucketLifecycleRequestT = Model::DeleteBucketLifecycleRequest>
1605 Model::DeleteBucketLifecycleOutcomeCallable DeleteBucketLifecycleCallable(const DeleteBucketLifecycleRequestT& request) const {
1606 return SubmitCallable(&S3CrtClient::DeleteBucketLifecycle, request);
1607 }
1608
1613 template <typename DeleteBucketLifecycleRequestT = Model::DeleteBucketLifecycleRequest>
1614 void DeleteBucketLifecycleAsync(const DeleteBucketLifecycleRequestT& request, const DeleteBucketLifecycleResponseReceivedHandler& handler,
1615 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
1616 return SubmitAsync(&S3CrtClient::DeleteBucketLifecycle, request, handler, context);
1617 }
1618
1653
1658 template <typename DeleteBucketMetadataConfigurationRequestT = Model::DeleteBucketMetadataConfigurationRequest>
1660 const DeleteBucketMetadataConfigurationRequestT& request) const {
1661 return SubmitCallable(&S3CrtClient::DeleteBucketMetadataConfiguration, request);
1662 }
1663
1668 template <typename DeleteBucketMetadataConfigurationRequestT = Model::DeleteBucketMetadataConfigurationRequest>
1669 void DeleteBucketMetadataConfigurationAsync(const DeleteBucketMetadataConfigurationRequestT& request,
1671 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
1672 return SubmitAsync(&S3CrtClient::DeleteBucketMetadataConfiguration, request, handler, context);
1673 }
1674
1718
1723 template <typename DeleteBucketMetadataTableConfigurationRequestT = Model::DeleteBucketMetadataTableConfigurationRequest>
1725 const DeleteBucketMetadataTableConfigurationRequestT& request) const {
1726 return SubmitCallable(&S3CrtClient::DeleteBucketMetadataTableConfiguration, request);
1727 }
1728
1733 template <typename DeleteBucketMetadataTableConfigurationRequestT = Model::DeleteBucketMetadataTableConfigurationRequest>
1734 void DeleteBucketMetadataTableConfigurationAsync(const DeleteBucketMetadataTableConfigurationRequestT& request,
1736 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
1737 return SubmitAsync(&S3CrtClient::DeleteBucketMetadataTableConfiguration, request, handler, context);
1738 }
1739
1773
1778 template <typename DeleteBucketMetricsConfigurationRequestT = Model::DeleteBucketMetricsConfigurationRequest>
1780 const DeleteBucketMetricsConfigurationRequestT& request) const {
1781 return SubmitCallable(&S3CrtClient::DeleteBucketMetricsConfiguration, request);
1782 }
1783
1788 template <typename DeleteBucketMetricsConfigurationRequestT = Model::DeleteBucketMetricsConfigurationRequest>
1789 void DeleteBucketMetricsConfigurationAsync(const DeleteBucketMetricsConfigurationRequestT& request,
1791 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
1792 return SubmitAsync(&S3CrtClient::DeleteBucketMetricsConfiguration, request, handler, context);
1793 }
1794
1816 const Model::DeleteBucketOwnershipControlsRequest& request) const;
1817
1822 template <typename DeleteBucketOwnershipControlsRequestT = Model::DeleteBucketOwnershipControlsRequest>
1824 const DeleteBucketOwnershipControlsRequestT& request) const {
1825 return SubmitCallable(&S3CrtClient::DeleteBucketOwnershipControls, request);
1826 }
1827
1832 template <typename DeleteBucketOwnershipControlsRequestT = Model::DeleteBucketOwnershipControlsRequest>
1833 void DeleteBucketOwnershipControlsAsync(const DeleteBucketOwnershipControlsRequestT& request,
1835 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
1836 return SubmitAsync(&S3CrtClient::DeleteBucketOwnershipControls, request, handler, context);
1837 }
1838
1898
1903 template <typename DeleteBucketPolicyRequestT = Model::DeleteBucketPolicyRequest>
1904 Model::DeleteBucketPolicyOutcomeCallable DeleteBucketPolicyCallable(const DeleteBucketPolicyRequestT& request) const {
1905 return SubmitCallable(&S3CrtClient::DeleteBucketPolicy, request);
1906 }
1907
1912 template <typename DeleteBucketPolicyRequestT = Model::DeleteBucketPolicyRequest>
1913 void DeleteBucketPolicyAsync(const DeleteBucketPolicyRequestT& request, const DeleteBucketPolicyResponseReceivedHandler& handler,
1914 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
1915 return SubmitAsync(&S3CrtClient::DeleteBucketPolicy, request, handler, context);
1916 }
1917
1946
1951 template <typename DeleteBucketReplicationRequestT = Model::DeleteBucketReplicationRequest>
1952 Model::DeleteBucketReplicationOutcomeCallable DeleteBucketReplicationCallable(const DeleteBucketReplicationRequestT& request) const {
1953 return SubmitCallable(&S3CrtClient::DeleteBucketReplication, request);
1954 }
1955
1960 template <typename DeleteBucketReplicationRequestT = Model::DeleteBucketReplicationRequest>
1961 void DeleteBucketReplicationAsync(const DeleteBucketReplicationRequestT& request,
1963 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
1964 return SubmitAsync(&S3CrtClient::DeleteBucketReplication, request, handler, context);
1965 }
1966
1996
2001 template <typename DeleteBucketTaggingRequestT = Model::DeleteBucketTaggingRequest>
2002 Model::DeleteBucketTaggingOutcomeCallable DeleteBucketTaggingCallable(const DeleteBucketTaggingRequestT& request) const {
2003 return SubmitCallable(&S3CrtClient::DeleteBucketTagging, request);
2004 }
2005
2010 template <typename DeleteBucketTaggingRequestT = Model::DeleteBucketTaggingRequest>
2011 void DeleteBucketTaggingAsync(const DeleteBucketTaggingRequestT& request, const DeleteBucketTaggingResponseReceivedHandler& handler,
2012 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
2013 return SubmitAsync(&S3CrtClient::DeleteBucketTagging, request, handler, context);
2014 }
2015
2044
2049 template <typename DeleteBucketWebsiteRequestT = Model::DeleteBucketWebsiteRequest>
2050 Model::DeleteBucketWebsiteOutcomeCallable DeleteBucketWebsiteCallable(const DeleteBucketWebsiteRequestT& request) const {
2051 return SubmitCallable(&S3CrtClient::DeleteBucketWebsite, request);
2052 }
2053
2058 template <typename DeleteBucketWebsiteRequestT = Model::DeleteBucketWebsiteRequest>
2059 void DeleteBucketWebsiteAsync(const DeleteBucketWebsiteRequestT& request, const DeleteBucketWebsiteResponseReceivedHandler& handler,
2060 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
2061 return SubmitAsync(&S3CrtClient::DeleteBucketWebsite, request, handler, context);
2062 }
2063
2166
2170 template <typename DeleteObjectRequestT = Model::DeleteObjectRequest>
2171 Model::DeleteObjectOutcomeCallable DeleteObjectCallable(const DeleteObjectRequestT& request) const {
2172 return SubmitCallable(&S3CrtClient::DeleteObject, request);
2173 }
2174
2179 template <typename DeleteObjectRequestT = Model::DeleteObjectRequest>
2180 void DeleteObjectAsync(const DeleteObjectRequestT& request, const DeleteObjectResponseReceivedHandler& handler,
2181 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
2182 return SubmitAsync(&S3CrtClient::DeleteObject, request, handler, context);
2183 }
2184
2208
2213 template <typename DeleteObjectTaggingRequestT = Model::DeleteObjectTaggingRequest>
2214 Model::DeleteObjectTaggingOutcomeCallable DeleteObjectTaggingCallable(const DeleteObjectTaggingRequestT& request) const {
2215 return SubmitCallable(&S3CrtClient::DeleteObjectTagging, request);
2216 }
2217
2222 template <typename DeleteObjectTaggingRequestT = Model::DeleteObjectTaggingRequest>
2223 void DeleteObjectTaggingAsync(const DeleteObjectTaggingRequestT& request, const DeleteObjectTaggingResponseReceivedHandler& handler,
2224 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
2225 return SubmitAsync(&S3CrtClient::DeleteObjectTagging, request, handler, context);
2226 }
2227
2324
2328 template <typename DeleteObjectsRequestT = Model::DeleteObjectsRequest>
2329 Model::DeleteObjectsOutcomeCallable DeleteObjectsCallable(const DeleteObjectsRequestT& request) const {
2330 return SubmitCallable(&S3CrtClient::DeleteObjects, request);
2331 }
2332
2337 template <typename DeleteObjectsRequestT = Model::DeleteObjectsRequest>
2338 void DeleteObjectsAsync(const DeleteObjectsRequestT& request, const DeleteObjectsResponseReceivedHandler& handler,
2339 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
2340 return SubmitAsync(&S3CrtClient::DeleteObjects, request, handler, context);
2341 }
2342
2373
2378 template <typename DeletePublicAccessBlockRequestT = Model::DeletePublicAccessBlockRequest>
2379 Model::DeletePublicAccessBlockOutcomeCallable DeletePublicAccessBlockCallable(const DeletePublicAccessBlockRequestT& request) const {
2380 return SubmitCallable(&S3CrtClient::DeletePublicAccessBlock, request);
2381 }
2382
2387 template <typename DeletePublicAccessBlockRequestT = Model::DeletePublicAccessBlockRequest>
2388 void DeletePublicAccessBlockAsync(const DeletePublicAccessBlockRequestT& request,
2390 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
2391 return SubmitAsync(&S3CrtClient::DeletePublicAccessBlock, request, handler, context);
2392 }
2393
2404
2408 template <typename GetBucketAbacRequestT = Model::GetBucketAbacRequest>
2409 Model::GetBucketAbacOutcomeCallable GetBucketAbacCallable(const GetBucketAbacRequestT& request) const {
2410 return SubmitCallable(&S3CrtClient::GetBucketAbac, request);
2411 }
2412
2417 template <typename GetBucketAbacRequestT = Model::GetBucketAbacRequest>
2418 void GetBucketAbacAsync(const GetBucketAbacRequestT& request, const GetBucketAbacResponseReceivedHandler& handler,
2419 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
2420 return SubmitAsync(&S3CrtClient::GetBucketAbac, request, handler, context);
2421 }
2422
2459
2464 template <typename GetBucketAccelerateConfigurationRequestT = Model::GetBucketAccelerateConfigurationRequest>
2466 const GetBucketAccelerateConfigurationRequestT& request) const {
2467 return SubmitCallable(&S3CrtClient::GetBucketAccelerateConfiguration, request);
2468 }
2469
2474 template <typename GetBucketAccelerateConfigurationRequestT = Model::GetBucketAccelerateConfigurationRequest>
2475 void GetBucketAccelerateConfigurationAsync(const GetBucketAccelerateConfigurationRequestT& request,
2477 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
2478 return SubmitAsync(&S3CrtClient::GetBucketAccelerateConfiguration, request, handler, context);
2479 }
2480
2514
2518 template <typename GetBucketAclRequestT = Model::GetBucketAclRequest>
2519 Model::GetBucketAclOutcomeCallable GetBucketAclCallable(const GetBucketAclRequestT& request) const {
2520 return SubmitCallable(&S3CrtClient::GetBucketAcl, request);
2521 }
2522
2527 template <typename GetBucketAclRequestT = Model::GetBucketAclRequest>
2528 void GetBucketAclAsync(const GetBucketAclRequestT& request, const GetBucketAclResponseReceivedHandler& handler,
2529 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
2530 return SubmitAsync(&S3CrtClient::GetBucketAcl, request, handler, context);
2531 }
2532
2565
2570 template <typename GetBucketAnalyticsConfigurationRequestT = Model::GetBucketAnalyticsConfigurationRequest>
2572 const GetBucketAnalyticsConfigurationRequestT& request) const {
2573 return SubmitCallable(&S3CrtClient::GetBucketAnalyticsConfiguration, request);
2574 }
2575
2580 template <typename GetBucketAnalyticsConfigurationRequestT = Model::GetBucketAnalyticsConfigurationRequest>
2581 void GetBucketAnalyticsConfigurationAsync(const GetBucketAnalyticsConfigurationRequestT& request,
2583 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
2584 return SubmitAsync(&S3CrtClient::GetBucketAnalyticsConfiguration, request, handler, context);
2585 }
2586
2616
2620 template <typename GetBucketCorsRequestT = Model::GetBucketCorsRequest>
2621 Model::GetBucketCorsOutcomeCallable GetBucketCorsCallable(const GetBucketCorsRequestT& request) const {
2622 return SubmitCallable(&S3CrtClient::GetBucketCors, request);
2623 }
2624
2629 template <typename GetBucketCorsRequestT = Model::GetBucketCorsRequest>
2630 void GetBucketCorsAsync(const GetBucketCorsRequestT& request, const GetBucketCorsResponseReceivedHandler& handler,
2631 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
2632 return SubmitAsync(&S3CrtClient::GetBucketCors, request, handler, context);
2633 }
2634
2687
2692 template <typename GetBucketEncryptionRequestT = Model::GetBucketEncryptionRequest>
2693 Model::GetBucketEncryptionOutcomeCallable GetBucketEncryptionCallable(const GetBucketEncryptionRequestT& request) const {
2694 return SubmitCallable(&S3CrtClient::GetBucketEncryption, request);
2695 }
2696
2701 template <typename GetBucketEncryptionRequestT = Model::GetBucketEncryptionRequest>
2702 void GetBucketEncryptionAsync(const GetBucketEncryptionRequestT& request, const GetBucketEncryptionResponseReceivedHandler& handler,
2703 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
2704 return SubmitAsync(&S3CrtClient::GetBucketEncryption, request, handler, context);
2705 }
2706
2742
2747 template <typename GetBucketIntelligentTieringConfigurationRequestT = Model::GetBucketIntelligentTieringConfigurationRequest>
2749 const GetBucketIntelligentTieringConfigurationRequestT& request) const {
2750 return SubmitCallable(&S3CrtClient::GetBucketIntelligentTieringConfiguration, request);
2751 }
2752
2757 template <typename GetBucketIntelligentTieringConfigurationRequestT = Model::GetBucketIntelligentTieringConfigurationRequest>
2759 const GetBucketIntelligentTieringConfigurationRequestT& request,
2761 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
2762 return SubmitAsync(&S3CrtClient::GetBucketIntelligentTieringConfiguration, request, handler, context);
2763 }
2764
2795
2800 template <typename GetBucketInventoryConfigurationRequestT = Model::GetBucketInventoryConfigurationRequest>
2802 const GetBucketInventoryConfigurationRequestT& request) const {
2803 return SubmitCallable(&S3CrtClient::GetBucketInventoryConfiguration, request);
2804 }
2805
2810 template <typename GetBucketInventoryConfigurationRequestT = Model::GetBucketInventoryConfigurationRequest>
2811 void GetBucketInventoryConfigurationAsync(const GetBucketInventoryConfigurationRequestT& request,
2813 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
2814 return SubmitAsync(&S3CrtClient::GetBucketInventoryConfiguration, request, handler, context);
2815 }
2816
2888
2893 template <typename GetBucketLifecycleConfigurationRequestT = Model::GetBucketLifecycleConfigurationRequest>
2895 const GetBucketLifecycleConfigurationRequestT& request) const {
2896 return SubmitCallable(&S3CrtClient::GetBucketLifecycleConfiguration, request);
2897 }
2898
2903 template <typename GetBucketLifecycleConfigurationRequestT = Model::GetBucketLifecycleConfigurationRequest>
2904 void GetBucketLifecycleConfigurationAsync(const GetBucketLifecycleConfigurationRequestT& request,
2906 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
2907 return SubmitAsync(&S3CrtClient::GetBucketLifecycleConfiguration, request, handler, context);
2908 }
2909
2951
2956 template <typename GetBucketLocationRequestT = Model::GetBucketLocationRequest>
2957 Model::GetBucketLocationOutcomeCallable GetBucketLocationCallable(const GetBucketLocationRequestT& request) const {
2958 return SubmitCallable(&S3CrtClient::GetBucketLocation, request);
2959 }
2960
2965 template <typename GetBucketLocationRequestT = Model::GetBucketLocationRequest>
2966 void GetBucketLocationAsync(const GetBucketLocationRequestT& request, const GetBucketLocationResponseReceivedHandler& handler,
2967 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
2968 return SubmitAsync(&S3CrtClient::GetBucketLocation, request, handler, context);
2969 }
2970
2988
2993 template <typename GetBucketLoggingRequestT = Model::GetBucketLoggingRequest>
2994 Model::GetBucketLoggingOutcomeCallable GetBucketLoggingCallable(const GetBucketLoggingRequestT& request) const {
2995 return SubmitCallable(&S3CrtClient::GetBucketLogging, request);
2996 }
2997
3002 template <typename GetBucketLoggingRequestT = Model::GetBucketLoggingRequest>
3003 void GetBucketLoggingAsync(const GetBucketLoggingRequestT& request, const GetBucketLoggingResponseReceivedHandler& handler,
3004 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
3005 return SubmitAsync(&S3CrtClient::GetBucketLogging, request, handler, context);
3006 }
3007
3042
3047 template <typename GetBucketMetadataConfigurationRequestT = Model::GetBucketMetadataConfigurationRequest>
3049 const GetBucketMetadataConfigurationRequestT& request) const {
3050 return SubmitCallable(&S3CrtClient::GetBucketMetadataConfiguration, request);
3051 }
3052
3057 template <typename GetBucketMetadataConfigurationRequestT = Model::GetBucketMetadataConfigurationRequest>
3058 void GetBucketMetadataConfigurationAsync(const GetBucketMetadataConfigurationRequestT& request,
3060 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
3061 return SubmitAsync(&S3CrtClient::GetBucketMetadataConfiguration, request, handler, context);
3062 }
3063
3106
3111 template <typename GetBucketMetadataTableConfigurationRequestT = Model::GetBucketMetadataTableConfigurationRequest>
3113 const GetBucketMetadataTableConfigurationRequestT& request) const {
3114 return SubmitCallable(&S3CrtClient::GetBucketMetadataTableConfiguration, request);
3115 }
3116
3121 template <typename GetBucketMetadataTableConfigurationRequestT = Model::GetBucketMetadataTableConfigurationRequest>
3122 void GetBucketMetadataTableConfigurationAsync(const GetBucketMetadataTableConfigurationRequestT& request,
3124 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
3125 return SubmitAsync(&S3CrtClient::GetBucketMetadataTableConfiguration, request, handler, context);
3126 }
3127
3160 const Model::GetBucketMetricsConfigurationRequest& request) const;
3161
3166 template <typename GetBucketMetricsConfigurationRequestT = Model::GetBucketMetricsConfigurationRequest>
3168 const GetBucketMetricsConfigurationRequestT& request) const {
3169 return SubmitCallable(&S3CrtClient::GetBucketMetricsConfiguration, request);
3170 }
3171
3176 template <typename GetBucketMetricsConfigurationRequestT = Model::GetBucketMetricsConfigurationRequest>
3177 void GetBucketMetricsConfigurationAsync(const GetBucketMetricsConfigurationRequestT& request,
3179 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
3180 return SubmitAsync(&S3CrtClient::GetBucketMetricsConfiguration, request, handler, context);
3181 }
3182
3218
3223 template <typename GetBucketNotificationConfigurationRequestT = Model::GetBucketNotificationConfigurationRequest>
3225 const GetBucketNotificationConfigurationRequestT& request) const {
3226 return SubmitCallable(&S3CrtClient::GetBucketNotificationConfiguration, request);
3227 }
3228
3233 template <typename GetBucketNotificationConfigurationRequestT = Model::GetBucketNotificationConfigurationRequest>
3234 void GetBucketNotificationConfigurationAsync(const GetBucketNotificationConfigurationRequestT& request,
3236 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
3237 return SubmitAsync(&S3CrtClient::GetBucketNotificationConfiguration, request, handler, context);
3238 }
3239
3267 const Model::GetBucketOwnershipControlsRequest& request) const;
3268
3273 template <typename GetBucketOwnershipControlsRequestT = Model::GetBucketOwnershipControlsRequest>
3275 const GetBucketOwnershipControlsRequestT& request) const {
3276 return SubmitCallable(&S3CrtClient::GetBucketOwnershipControls, request);
3277 }
3278
3283 template <typename GetBucketOwnershipControlsRequestT = Model::GetBucketOwnershipControlsRequest>
3284 void GetBucketOwnershipControlsAsync(const GetBucketOwnershipControlsRequestT& request,
3286 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
3287 return SubmitAsync(&S3CrtClient::GetBucketOwnershipControls, request, handler, context);
3288 }
3289
3355
3359 template <typename GetBucketPolicyRequestT = Model::GetBucketPolicyRequest>
3360 Model::GetBucketPolicyOutcomeCallable GetBucketPolicyCallable(const GetBucketPolicyRequestT& request) const {
3361 return SubmitCallable(&S3CrtClient::GetBucketPolicy, request);
3362 }
3363
3368 template <typename GetBucketPolicyRequestT = Model::GetBucketPolicyRequest>
3369 void GetBucketPolicyAsync(const GetBucketPolicyRequestT& request, const GetBucketPolicyResponseReceivedHandler& handler,
3370 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
3371 return SubmitAsync(&S3CrtClient::GetBucketPolicy, request, handler, context);
3372 }
3373
3402
3407 template <typename GetBucketPolicyStatusRequestT = Model::GetBucketPolicyStatusRequest>
3408 Model::GetBucketPolicyStatusOutcomeCallable GetBucketPolicyStatusCallable(const GetBucketPolicyStatusRequestT& request) const {
3409 return SubmitCallable(&S3CrtClient::GetBucketPolicyStatus, request);
3410 }
3411
3416 template <typename GetBucketPolicyStatusRequestT = Model::GetBucketPolicyStatusRequest>
3417 void GetBucketPolicyStatusAsync(const GetBucketPolicyStatusRequestT& request, const GetBucketPolicyStatusResponseReceivedHandler& handler,
3418 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
3419 return SubmitAsync(&S3CrtClient::GetBucketPolicyStatus, request, handler, context);
3420 }
3421
3453
3458 template <typename GetBucketReplicationRequestT = Model::GetBucketReplicationRequest>
3459 Model::GetBucketReplicationOutcomeCallable GetBucketReplicationCallable(const GetBucketReplicationRequestT& request) const {
3460 return SubmitCallable(&S3CrtClient::GetBucketReplication, request);
3461 }
3462
3467 template <typename GetBucketReplicationRequestT = Model::GetBucketReplicationRequest>
3468 void GetBucketReplicationAsync(const GetBucketReplicationRequestT& request, const GetBucketReplicationResponseReceivedHandler& handler,
3469 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
3470 return SubmitAsync(&S3CrtClient::GetBucketReplication, request, handler, context);
3471 }
3472
3490
3495 template <typename GetBucketRequestPaymentRequestT = Model::GetBucketRequestPaymentRequest>
3496 Model::GetBucketRequestPaymentOutcomeCallable GetBucketRequestPaymentCallable(const GetBucketRequestPaymentRequestT& request) const {
3497 return SubmitCallable(&S3CrtClient::GetBucketRequestPayment, request);
3498 }
3499
3504 template <typename GetBucketRequestPaymentRequestT = Model::GetBucketRequestPaymentRequest>
3505 void GetBucketRequestPaymentAsync(const GetBucketRequestPaymentRequestT& request,
3507 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
3508 return SubmitAsync(&S3CrtClient::GetBucketRequestPayment, request, handler, context);
3509 }
3510
3539
3544 template <typename GetBucketTaggingRequestT = Model::GetBucketTaggingRequest>
3545 Model::GetBucketTaggingOutcomeCallable GetBucketTaggingCallable(const GetBucketTaggingRequestT& request) const {
3546 return SubmitCallable(&S3CrtClient::GetBucketTagging, request);
3547 }
3548
3553 template <typename GetBucketTaggingRequestT = Model::GetBucketTaggingRequest>
3554 void GetBucketTaggingAsync(const GetBucketTaggingRequestT& request, const GetBucketTaggingResponseReceivedHandler& handler,
3555 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
3556 return SubmitAsync(&S3CrtClient::GetBucketTagging, request, handler, context);
3557 }
3558
3581
3586 template <typename GetBucketVersioningRequestT = Model::GetBucketVersioningRequest>
3587 Model::GetBucketVersioningOutcomeCallable GetBucketVersioningCallable(const GetBucketVersioningRequestT& request) const {
3588 return SubmitCallable(&S3CrtClient::GetBucketVersioning, request);
3589 }
3590
3595 template <typename GetBucketVersioningRequestT = Model::GetBucketVersioningRequest>
3596 void GetBucketVersioningAsync(const GetBucketVersioningRequestT& request, const GetBucketVersioningResponseReceivedHandler& handler,
3597 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
3598 return SubmitAsync(&S3CrtClient::GetBucketVersioning, request, handler, context);
3599 }
3600
3626
3631 template <typename GetBucketWebsiteRequestT = Model::GetBucketWebsiteRequest>
3632 Model::GetBucketWebsiteOutcomeCallable GetBucketWebsiteCallable(const GetBucketWebsiteRequestT& request) const {
3633 return SubmitCallable(&S3CrtClient::GetBucketWebsite, request);
3634 }
3635
3640 template <typename GetBucketWebsiteRequestT = Model::GetBucketWebsiteRequest>
3641 void GetBucketWebsiteAsync(const GetBucketWebsiteRequestT& request, const GetBucketWebsiteResponseReceivedHandler& handler,
3642 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
3643 return SubmitAsync(&S3CrtClient::GetBucketWebsite, request, handler, context);
3644 }
3645
3783
3789 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
3790
3825
3829 template <typename GetObjectAclRequestT = Model::GetObjectAclRequest>
3830 Model::GetObjectAclOutcomeCallable GetObjectAclCallable(const GetObjectAclRequestT& request) const {
3831 return SubmitCallable(&S3CrtClient::GetObjectAcl, request);
3832 }
3833
3838 template <typename GetObjectAclRequestT = Model::GetObjectAclRequest>
3839 void GetObjectAclAsync(const GetObjectAclRequestT& request, const GetObjectAclResponseReceivedHandler& handler,
3840 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
3841 return SubmitAsync(&S3CrtClient::GetObjectAcl, request, handler, context);
3842 }
3843
3984
3989 template <typename GetObjectAttributesRequestT = Model::GetObjectAttributesRequest>
3990 Model::GetObjectAttributesOutcomeCallable GetObjectAttributesCallable(const GetObjectAttributesRequestT& request) const {
3991 return SubmitCallable(&S3CrtClient::GetObjectAttributes, request);
3992 }
3993
3998 template <typename GetObjectAttributesRequestT = Model::GetObjectAttributesRequest>
3999 void GetObjectAttributesAsync(const GetObjectAttributesRequestT& request, const GetObjectAttributesResponseReceivedHandler& handler,
4000 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
4001 return SubmitAsync(&S3CrtClient::GetObjectAttributes, request, handler, context);
4002 }
4003
4021
4026 template <typename GetObjectLegalHoldRequestT = Model::GetObjectLegalHoldRequest>
4027 Model::GetObjectLegalHoldOutcomeCallable GetObjectLegalHoldCallable(const GetObjectLegalHoldRequestT& request) const {
4028 return SubmitCallable(&S3CrtClient::GetObjectLegalHold, request);
4029 }
4030
4035 template <typename GetObjectLegalHoldRequestT = Model::GetObjectLegalHoldRequest>
4036 void GetObjectLegalHoldAsync(const GetObjectLegalHoldRequestT& request, const GetObjectLegalHoldResponseReceivedHandler& handler,
4037 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
4038 return SubmitAsync(&S3CrtClient::GetObjectLegalHold, request, handler, context);
4039 }
4040
4059 const Model::GetObjectLockConfigurationRequest& request) const;
4060
4065 template <typename GetObjectLockConfigurationRequestT = Model::GetObjectLockConfigurationRequest>
4067 const GetObjectLockConfigurationRequestT& request) const {
4068 return SubmitCallable(&S3CrtClient::GetObjectLockConfiguration, request);
4069 }
4070
4075 template <typename GetObjectLockConfigurationRequestT = Model::GetObjectLockConfigurationRequest>
4076 void GetObjectLockConfigurationAsync(const GetObjectLockConfigurationRequestT& request,
4078 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
4079 return SubmitAsync(&S3CrtClient::GetObjectLockConfiguration, request, handler, context);
4080 }
4081
4099
4104 template <typename GetObjectRetentionRequestT = Model::GetObjectRetentionRequest>
4105 Model::GetObjectRetentionOutcomeCallable GetObjectRetentionCallable(const GetObjectRetentionRequestT& request) const {
4106 return SubmitCallable(&S3CrtClient::GetObjectRetention, request);
4107 }
4108
4113 template <typename GetObjectRetentionRequestT = Model::GetObjectRetentionRequest>
4114 void GetObjectRetentionAsync(const GetObjectRetentionRequestT& request, const GetObjectRetentionResponseReceivedHandler& handler,
4115 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
4116 return SubmitAsync(&S3CrtClient::GetObjectRetention, request, handler, context);
4117 }
4118
4148
4153 template <typename GetObjectTaggingRequestT = Model::GetObjectTaggingRequest>
4154 Model::GetObjectTaggingOutcomeCallable GetObjectTaggingCallable(const GetObjectTaggingRequestT& request) const {
4155 return SubmitCallable(&S3CrtClient::GetObjectTagging, request);
4156 }
4157
4162 template <typename GetObjectTaggingRequestT = Model::GetObjectTaggingRequest>
4163 void GetObjectTaggingAsync(const GetObjectTaggingRequestT& request, const GetObjectTaggingResponseReceivedHandler& handler,
4164 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
4165 return SubmitAsync(&S3CrtClient::GetObjectTagging, request, handler, context);
4166 }
4167
4187
4192 template <typename GetObjectTorrentRequestT = Model::GetObjectTorrentRequest>
4193 Model::GetObjectTorrentOutcomeCallable GetObjectTorrentCallable(const GetObjectTorrentRequestT& request) const {
4194 return SubmitCallable(&S3CrtClient::GetObjectTorrent, request);
4195 }
4196
4201 template <typename GetObjectTorrentRequestT = Model::GetObjectTorrentRequest>
4202 void GetObjectTorrentAsync(const GetObjectTorrentRequestT& request, const GetObjectTorrentResponseReceivedHandler& handler,
4203 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
4204 return SubmitAsync(&S3CrtClient::GetObjectTorrent, request, handler, context);
4205 }
4206
4245
4250 template <typename GetPublicAccessBlockRequestT = Model::GetPublicAccessBlockRequest>
4251 Model::GetPublicAccessBlockOutcomeCallable GetPublicAccessBlockCallable(const GetPublicAccessBlockRequestT& request) const {
4252 return SubmitCallable(&S3CrtClient::GetPublicAccessBlock, request);
4253 }
4254
4259 template <typename GetPublicAccessBlockRequestT = Model::GetPublicAccessBlockRequest>
4260 void GetPublicAccessBlockAsync(const GetPublicAccessBlockRequestT& request, const GetPublicAccessBlockResponseReceivedHandler& handler,
4261 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
4262 return SubmitAsync(&S3CrtClient::GetPublicAccessBlock, request, handler, context);
4263 }
4264
4332
4336 template <typename HeadBucketRequestT = Model::HeadBucketRequest>
4337 Model::HeadBucketOutcomeCallable HeadBucketCallable(const HeadBucketRequestT& request) const {
4338 return SubmitCallable(&S3CrtClient::HeadBucket, request);
4339 }
4340
4345 template <typename HeadBucketRequestT = Model::HeadBucketRequest>
4346 void HeadBucketAsync(const HeadBucketRequestT& request, const HeadBucketResponseReceivedHandler& handler,
4347 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
4348 return SubmitAsync(&S3CrtClient::HeadBucket, request, handler, context);
4349 }
4350
4468
4472 template <typename HeadObjectRequestT = Model::HeadObjectRequest>
4473 Model::HeadObjectOutcomeCallable HeadObjectCallable(const HeadObjectRequestT& request) const {
4474 return SubmitCallable(&S3CrtClient::HeadObject, request);
4475 }
4476
4481 template <typename HeadObjectRequestT = Model::HeadObjectRequest>
4482 void HeadObjectAsync(const HeadObjectRequestT& request, const HeadObjectResponseReceivedHandler& handler,
4483 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
4484 return SubmitAsync(&S3CrtClient::HeadObject, request, handler, context);
4485 }
4486
4525
4530 template <typename ListBucketAnalyticsConfigurationsRequestT = Model::ListBucketAnalyticsConfigurationsRequest>
4532 const ListBucketAnalyticsConfigurationsRequestT& request) const {
4533 return SubmitCallable(&S3CrtClient::ListBucketAnalyticsConfigurations, request);
4534 }
4535
4540 template <typename ListBucketAnalyticsConfigurationsRequestT = Model::ListBucketAnalyticsConfigurationsRequest>
4541 void ListBucketAnalyticsConfigurationsAsync(const ListBucketAnalyticsConfigurationsRequestT& request,
4543 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
4544 return SubmitAsync(&S3CrtClient::ListBucketAnalyticsConfigurations, request, handler, context);
4545 }
4546
4582
4587 template <typename ListBucketIntelligentTieringConfigurationsRequestT = Model::ListBucketIntelligentTieringConfigurationsRequest>
4589 const ListBucketIntelligentTieringConfigurationsRequestT& request) const {
4590 return SubmitCallable(&S3CrtClient::ListBucketIntelligentTieringConfigurations, request);
4591 }
4592
4597 template <typename ListBucketIntelligentTieringConfigurationsRequestT = Model::ListBucketIntelligentTieringConfigurationsRequest>
4599 const ListBucketIntelligentTieringConfigurationsRequestT& request,
4601 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
4602 return SubmitAsync(&S3CrtClient::ListBucketIntelligentTieringConfigurations, request, handler, context);
4603 }
4604
4643
4648 template <typename ListBucketInventoryConfigurationsRequestT = Model::ListBucketInventoryConfigurationsRequest>
4650 const ListBucketInventoryConfigurationsRequestT& request) const {
4651 return SubmitCallable(&S3CrtClient::ListBucketInventoryConfigurations, request);
4652 }
4653
4658 template <typename ListBucketInventoryConfigurationsRequestT = Model::ListBucketInventoryConfigurationsRequest>
4659 void ListBucketInventoryConfigurationsAsync(const ListBucketInventoryConfigurationsRequestT& request,
4661 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
4662 return SubmitAsync(&S3CrtClient::ListBucketInventoryConfigurations, request, handler, context);
4663 }
4664
4705
4710 template <typename ListBucketMetricsConfigurationsRequestT = Model::ListBucketMetricsConfigurationsRequest>
4712 const ListBucketMetricsConfigurationsRequestT& request) const {
4713 return SubmitCallable(&S3CrtClient::ListBucketMetricsConfigurations, request);
4714 }
4715
4720 template <typename ListBucketMetricsConfigurationsRequestT = Model::ListBucketMetricsConfigurationsRequest>
4721 void ListBucketMetricsConfigurationsAsync(const ListBucketMetricsConfigurationsRequestT& request,
4723 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
4724 return SubmitAsync(&S3CrtClient::ListBucketMetricsConfigurations, request, handler, context);
4725 }
4726
4750
4754 template <typename ListBucketsRequestT = Model::ListBucketsRequest>
4755 Model::ListBucketsOutcomeCallable ListBucketsCallable(const ListBucketsRequestT& request = {}) const {
4756 return SubmitCallable(&S3CrtClient::ListBuckets, request);
4757 }
4758
4763 template <typename ListBucketsRequestT = Model::ListBucketsRequest>
4765 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr,
4766 const ListBucketsRequestT& request = {}) const {
4767 return SubmitAsync(&S3CrtClient::ListBuckets, request, handler, context);
4768 }
4769
4808
4813 template <typename ListDirectoryBucketsRequestT = Model::ListDirectoryBucketsRequest>
4814 Model::ListDirectoryBucketsOutcomeCallable ListDirectoryBucketsCallable(const ListDirectoryBucketsRequestT& request = {}) const {
4815 return SubmitCallable(&S3CrtClient::ListDirectoryBuckets, request);
4816 }
4817
4822 template <typename ListDirectoryBucketsRequestT = Model::ListDirectoryBucketsRequest>
4824 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr,
4825 const ListDirectoryBucketsRequestT& request = {}) const {
4826 return SubmitAsync(&S3CrtClient::ListDirectoryBuckets, request, handler, context);
4827 }
4828
4926
4931 template <typename ListMultipartUploadsRequestT = Model::ListMultipartUploadsRequest>
4932 Model::ListMultipartUploadsOutcomeCallable ListMultipartUploadsCallable(const ListMultipartUploadsRequestT& request) const {
4933 return SubmitCallable(&S3CrtClient::ListMultipartUploads, request);
4934 }
4935
4940 template <typename ListMultipartUploadsRequestT = Model::ListMultipartUploadsRequest>
4941 void ListMultipartUploadsAsync(const ListMultipartUploadsRequestT& request, const ListMultipartUploadsResponseReceivedHandler& handler,
4942 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
4943 return SubmitAsync(&S3CrtClient::ListMultipartUploads, request, handler, context);
4944 }
4945
4974
4979 template <typename ListObjectVersionsRequestT = Model::ListObjectVersionsRequest>
4980 Model::ListObjectVersionsOutcomeCallable ListObjectVersionsCallable(const ListObjectVersionsRequestT& request) const {
4981 return SubmitCallable(&S3CrtClient::ListObjectVersions, request);
4982 }
4983
4988 template <typename ListObjectVersionsRequestT = Model::ListObjectVersionsRequest>
4989 void ListObjectVersionsAsync(const ListObjectVersionsRequestT& request, const ListObjectVersionsResponseReceivedHandler& handler,
4990 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
4991 return SubmitAsync(&S3CrtClient::ListObjectVersions, request, handler, context);
4992 }
4993
5024
5028 template <typename ListObjectsRequestT = Model::ListObjectsRequest>
5029 Model::ListObjectsOutcomeCallable ListObjectsCallable(const ListObjectsRequestT& request) const {
5030 return SubmitCallable(&S3CrtClient::ListObjects, request);
5031 }
5032
5037 template <typename ListObjectsRequestT = Model::ListObjectsRequest>
5038 void ListObjectsAsync(const ListObjectsRequestT& request, const ListObjectsResponseReceivedHandler& handler,
5039 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
5040 return SubmitAsync(&S3CrtClient::ListObjects, request, handler, context);
5041 }
5042
5126
5130 template <typename ListObjectsV2RequestT = Model::ListObjectsV2Request>
5131 Model::ListObjectsV2OutcomeCallable ListObjectsV2Callable(const ListObjectsV2RequestT& request) const {
5132 return SubmitCallable(&S3CrtClient::ListObjectsV2, request);
5133 }
5134
5139 template <typename ListObjectsV2RequestT = Model::ListObjectsV2Request>
5140 void ListObjectsV2Async(const ListObjectsV2RequestT& request, const ListObjectsV2ResponseReceivedHandler& handler,
5141 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
5142 return SubmitAsync(&S3CrtClient::ListObjectsV2, request, handler, context);
5143 }
5144
5225
5229 template <typename ListPartsRequestT = Model::ListPartsRequest>
5230 Model::ListPartsOutcomeCallable ListPartsCallable(const ListPartsRequestT& request) const {
5231 return SubmitCallable(&S3CrtClient::ListParts, request);
5232 }
5233
5238 template <typename ListPartsRequestT = Model::ListPartsRequest>
5239 void ListPartsAsync(const ListPartsRequestT& request, const ListPartsResponseReceivedHandler& handler,
5240 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
5241 return SubmitAsync(&S3CrtClient::ListParts, request, handler, context);
5242 }
5243
5263
5267 template <typename PutBucketAbacRequestT = Model::PutBucketAbacRequest>
5268 Model::PutBucketAbacOutcomeCallable PutBucketAbacCallable(const PutBucketAbacRequestT& request) const {
5269 return SubmitCallable(&S3CrtClient::PutBucketAbac, request);
5270 }
5271
5276 template <typename PutBucketAbacRequestT = Model::PutBucketAbacRequest>
5277 void PutBucketAbacAsync(const PutBucketAbacRequestT& request, const PutBucketAbacResponseReceivedHandler& handler,
5278 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
5279 return SubmitAsync(&S3CrtClient::PutBucketAbac, request, handler, context);
5280 }
5281
5321
5326 template <typename PutBucketAccelerateConfigurationRequestT = Model::PutBucketAccelerateConfigurationRequest>
5328 const PutBucketAccelerateConfigurationRequestT& request) const {
5329 return SubmitCallable(&S3CrtClient::PutBucketAccelerateConfiguration, request);
5330 }
5331
5336 template <typename PutBucketAccelerateConfigurationRequestT = Model::PutBucketAccelerateConfigurationRequest>
5337 void PutBucketAccelerateConfigurationAsync(const PutBucketAccelerateConfigurationRequestT& request,
5339 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
5340 return SubmitAsync(&S3CrtClient::PutBucketAccelerateConfiguration, request, handler, context);
5341 }
5342
5454
5458 template <typename PutBucketAclRequestT = Model::PutBucketAclRequest>
5459 Model::PutBucketAclOutcomeCallable PutBucketAclCallable(const PutBucketAclRequestT& request) const {
5460 return SubmitCallable(&S3CrtClient::PutBucketAcl, request);
5461 }
5462
5467 template <typename PutBucketAclRequestT = Model::PutBucketAclRequest>
5468 void PutBucketAclAsync(const PutBucketAclRequestT& request, const PutBucketAclResponseReceivedHandler& handler,
5469 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
5470 return SubmitAsync(&S3CrtClient::PutBucketAcl, request, handler, context);
5471 }
5472
5529
5534 template <typename PutBucketAnalyticsConfigurationRequestT = Model::PutBucketAnalyticsConfigurationRequest>
5536 const PutBucketAnalyticsConfigurationRequestT& request) const {
5537 return SubmitCallable(&S3CrtClient::PutBucketAnalyticsConfiguration, request);
5538 }
5539
5544 template <typename PutBucketAnalyticsConfigurationRequestT = Model::PutBucketAnalyticsConfigurationRequest>
5545 void PutBucketAnalyticsConfigurationAsync(const PutBucketAnalyticsConfigurationRequestT& request,
5547 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
5548 return SubmitAsync(&S3CrtClient::PutBucketAnalyticsConfiguration, request, handler, context);
5549 }
5550
5597
5601 template <typename PutBucketCorsRequestT = Model::PutBucketCorsRequest>
5602 Model::PutBucketCorsOutcomeCallable PutBucketCorsCallable(const PutBucketCorsRequestT& request) const {
5603 return SubmitCallable(&S3CrtClient::PutBucketCors, request);
5604 }
5605
5610 template <typename PutBucketCorsRequestT = Model::PutBucketCorsRequest>
5611 void PutBucketCorsAsync(const PutBucketCorsRequestT& request, const PutBucketCorsResponseReceivedHandler& handler,
5612 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
5613 return SubmitAsync(&S3CrtClient::PutBucketCors, request, handler, context);
5614 }
5615
5733
5738 template <typename PutBucketEncryptionRequestT = Model::PutBucketEncryptionRequest>
5739 Model::PutBucketEncryptionOutcomeCallable PutBucketEncryptionCallable(const PutBucketEncryptionRequestT& request) const {
5740 return SubmitCallable(&S3CrtClient::PutBucketEncryption, request);
5741 }
5742
5747 template <typename PutBucketEncryptionRequestT = Model::PutBucketEncryptionRequest>
5748 void PutBucketEncryptionAsync(const PutBucketEncryptionRequestT& request, const PutBucketEncryptionResponseReceivedHandler& handler,
5749 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
5750 return SubmitAsync(&S3CrtClient::PutBucketEncryption, request, handler, context);
5751 }
5752
5801
5806 template <typename PutBucketIntelligentTieringConfigurationRequestT = Model::PutBucketIntelligentTieringConfigurationRequest>
5808 const PutBucketIntelligentTieringConfigurationRequestT& request) const {
5809 return SubmitCallable(&S3CrtClient::PutBucketIntelligentTieringConfiguration, request);
5810 }
5811
5816 template <typename PutBucketIntelligentTieringConfigurationRequestT = Model::PutBucketIntelligentTieringConfigurationRequest>
5818 const PutBucketIntelligentTieringConfigurationRequestT& request,
5820 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
5821 return SubmitAsync(&S3CrtClient::PutBucketIntelligentTieringConfiguration, request, handler, context);
5822 }
5823
5893
5898 template <typename PutBucketInventoryConfigurationRequestT = Model::PutBucketInventoryConfigurationRequest>
5900 const PutBucketInventoryConfigurationRequestT& request) const {
5901 return SubmitCallable(&S3CrtClient::PutBucketInventoryConfiguration, request);
5902 }
5903
5908 template <typename PutBucketInventoryConfigurationRequestT = Model::PutBucketInventoryConfigurationRequest>
5909 void PutBucketInventoryConfigurationAsync(const PutBucketInventoryConfigurationRequestT& request,
5911 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
5912 return SubmitAsync(&S3CrtClient::PutBucketInventoryConfiguration, request, handler, context);
5913 }
5914
6012
6017 template <typename PutBucketLifecycleConfigurationRequestT = Model::PutBucketLifecycleConfigurationRequest>
6019 const PutBucketLifecycleConfigurationRequestT& request) const {
6020 return SubmitCallable(&S3CrtClient::PutBucketLifecycleConfiguration, request);
6021 }
6022
6027 template <typename PutBucketLifecycleConfigurationRequestT = Model::PutBucketLifecycleConfigurationRequest>
6028 void PutBucketLifecycleConfigurationAsync(const PutBucketLifecycleConfigurationRequestT& request,
6030 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
6031 return SubmitAsync(&S3CrtClient::PutBucketLifecycleConfiguration, request, handler, context);
6032 }
6033
6103
6108 template <typename PutBucketLoggingRequestT = Model::PutBucketLoggingRequest>
6109 Model::PutBucketLoggingOutcomeCallable PutBucketLoggingCallable(const PutBucketLoggingRequestT& request) const {
6110 return SubmitCallable(&S3CrtClient::PutBucketLogging, request);
6111 }
6112
6117 template <typename PutBucketLoggingRequestT = Model::PutBucketLoggingRequest>
6118 void PutBucketLoggingAsync(const PutBucketLoggingRequestT& request, const PutBucketLoggingResponseReceivedHandler& handler,
6119 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
6120 return SubmitAsync(&S3CrtClient::PutBucketLogging, request, handler, context);
6121 }
6122
6160 const Model::PutBucketMetricsConfigurationRequest& request) const;
6161
6166 template <typename PutBucketMetricsConfigurationRequestT = Model::PutBucketMetricsConfigurationRequest>
6168 const PutBucketMetricsConfigurationRequestT& request) const {
6169 return SubmitCallable(&S3CrtClient::PutBucketMetricsConfiguration, request);
6170 }
6171
6176 template <typename PutBucketMetricsConfigurationRequestT = Model::PutBucketMetricsConfigurationRequest>
6177 void PutBucketMetricsConfigurationAsync(const PutBucketMetricsConfigurationRequestT& request,
6179 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
6180 return SubmitAsync(&S3CrtClient::PutBucketMetricsConfiguration, request, handler, context);
6181 }
6182
6237
6242 template <typename PutBucketNotificationConfigurationRequestT = Model::PutBucketNotificationConfigurationRequest>
6244 const PutBucketNotificationConfigurationRequestT& request) const {
6245 return SubmitCallable(&S3CrtClient::PutBucketNotificationConfiguration, request);
6246 }
6247
6252 template <typename PutBucketNotificationConfigurationRequestT = Model::PutBucketNotificationConfigurationRequest>
6253 void PutBucketNotificationConfigurationAsync(const PutBucketNotificationConfigurationRequestT& request,
6255 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
6256 return SubmitAsync(&S3CrtClient::PutBucketNotificationConfiguration, request, handler, context);
6257 }
6258
6281 const Model::PutBucketOwnershipControlsRequest& request) const;
6282
6287 template <typename PutBucketOwnershipControlsRequestT = Model::PutBucketOwnershipControlsRequest>
6289 const PutBucketOwnershipControlsRequestT& request) const {
6290 return SubmitCallable(&S3CrtClient::PutBucketOwnershipControls, request);
6291 }
6292
6297 template <typename PutBucketOwnershipControlsRequestT = Model::PutBucketOwnershipControlsRequest>
6298 void PutBucketOwnershipControlsAsync(const PutBucketOwnershipControlsRequestT& request,
6300 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
6301 return SubmitAsync(&S3CrtClient::PutBucketOwnershipControls, request, handler, context);
6302 }
6303
6372
6376 template <typename PutBucketPolicyRequestT = Model::PutBucketPolicyRequest>
6377 Model::PutBucketPolicyOutcomeCallable PutBucketPolicyCallable(const PutBucketPolicyRequestT& request) const {
6378 return SubmitCallable(&S3CrtClient::PutBucketPolicy, request);
6379 }
6380
6385 template <typename PutBucketPolicyRequestT = Model::PutBucketPolicyRequest>
6386 void PutBucketPolicyAsync(const PutBucketPolicyRequestT& request, const PutBucketPolicyResponseReceivedHandler& handler,
6387 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
6388 return SubmitAsync(&S3CrtClient::PutBucketPolicy, request, handler, context);
6389 }
6390
6458
6463 template <typename PutBucketReplicationRequestT = Model::PutBucketReplicationRequest>
6464 Model::PutBucketReplicationOutcomeCallable PutBucketReplicationCallable(const PutBucketReplicationRequestT& request) const {
6465 return SubmitCallable(&S3CrtClient::PutBucketReplication, request);
6466 }
6467
6472 template <typename PutBucketReplicationRequestT = Model::PutBucketReplicationRequest>
6473 void PutBucketReplicationAsync(const PutBucketReplicationRequestT& request, const PutBucketReplicationResponseReceivedHandler& handler,
6474 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
6475 return SubmitAsync(&S3CrtClient::PutBucketReplication, request, handler, context);
6476 }
6477
6499
6504 template <typename PutBucketRequestPaymentRequestT = Model::PutBucketRequestPaymentRequest>
6505 Model::PutBucketRequestPaymentOutcomeCallable PutBucketRequestPaymentCallable(const PutBucketRequestPaymentRequestT& request) const {
6506 return SubmitCallable(&S3CrtClient::PutBucketRequestPayment, request);
6507 }
6508
6513 template <typename PutBucketRequestPaymentRequestT = Model::PutBucketRequestPaymentRequest>
6514 void PutBucketRequestPaymentAsync(const PutBucketRequestPaymentRequestT& request,
6516 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
6517 return SubmitAsync(&S3CrtClient::PutBucketRequestPayment, request, handler, context);
6518 }
6519
6578
6583 template <typename PutBucketTaggingRequestT = Model::PutBucketTaggingRequest>
6584 Model::PutBucketTaggingOutcomeCallable PutBucketTaggingCallable(const PutBucketTaggingRequestT& request) const {
6585 return SubmitCallable(&S3CrtClient::PutBucketTagging, request);
6586 }
6587
6592 template <typename PutBucketTaggingRequestT = Model::PutBucketTaggingRequest>
6593 void PutBucketTaggingAsync(const PutBucketTaggingRequestT& request, const PutBucketTaggingResponseReceivedHandler& handler,
6594 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
6595 return SubmitAsync(&S3CrtClient::PutBucketTagging, request, handler, context);
6596 }
6597
6644
6649 template <typename PutBucketVersioningRequestT = Model::PutBucketVersioningRequest>
6650 Model::PutBucketVersioningOutcomeCallable PutBucketVersioningCallable(const PutBucketVersioningRequestT& request) const {
6651 return SubmitCallable(&S3CrtClient::PutBucketVersioning, request);
6652 }
6653
6658 template <typename PutBucketVersioningRequestT = Model::PutBucketVersioningRequest>
6659 void PutBucketVersioningAsync(const PutBucketVersioningRequestT& request, const PutBucketVersioningResponseReceivedHandler& handler,
6660 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
6661 return SubmitAsync(&S3CrtClient::PutBucketVersioning, request, handler, context);
6662 }
6663
6711
6716 template <typename PutBucketWebsiteRequestT = Model::PutBucketWebsiteRequest>
6717 Model::PutBucketWebsiteOutcomeCallable PutBucketWebsiteCallable(const PutBucketWebsiteRequestT& request) const {
6718 return SubmitCallable(&S3CrtClient::PutBucketWebsite, request);
6719 }
6720
6725 template <typename PutBucketWebsiteRequestT = Model::PutBucketWebsiteRequest>
6726 void PutBucketWebsiteAsync(const PutBucketWebsiteRequestT& request, const PutBucketWebsiteResponseReceivedHandler& handler,
6727 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
6728 return SubmitAsync(&S3CrtClient::PutBucketWebsite, request, handler, context);
6729 }
6730
6851
6857 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
6858
6971
6975 template <typename PutObjectAclRequestT = Model::PutObjectAclRequest>
6976 Model::PutObjectAclOutcomeCallable PutObjectAclCallable(const PutObjectAclRequestT& request) const {
6977 return SubmitCallable(&S3CrtClient::PutObjectAcl, request);
6978 }
6979
6984 template <typename PutObjectAclRequestT = Model::PutObjectAclRequest>
6985 void PutObjectAclAsync(const PutObjectAclRequestT& request, const PutObjectAclResponseReceivedHandler& handler,
6986 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
6987 return SubmitAsync(&S3CrtClient::PutObjectAcl, request, handler, context);
6988 }
6989
7004
7009 template <typename PutObjectLegalHoldRequestT = Model::PutObjectLegalHoldRequest>
7010 Model::PutObjectLegalHoldOutcomeCallable PutObjectLegalHoldCallable(const PutObjectLegalHoldRequestT& request) const {
7011 return SubmitCallable(&S3CrtClient::PutObjectLegalHold, request);
7012 }
7013
7018 template <typename PutObjectLegalHoldRequestT = Model::PutObjectLegalHoldRequest>
7019 void PutObjectLegalHoldAsync(const PutObjectLegalHoldRequestT& request, const PutObjectLegalHoldResponseReceivedHandler& handler,
7020 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
7021 return SubmitAsync(&S3CrtClient::PutObjectLegalHold, request, handler, context);
7022 }
7023
7046 const Model::PutObjectLockConfigurationRequest& request) const;
7047
7052 template <typename PutObjectLockConfigurationRequestT = Model::PutObjectLockConfigurationRequest>
7054 const PutObjectLockConfigurationRequestT& request) const {
7055 return SubmitCallable(&S3CrtClient::PutObjectLockConfiguration, request);
7056 }
7057
7062 template <typename PutObjectLockConfigurationRequestT = Model::PutObjectLockConfigurationRequest>
7063 void PutObjectLockConfigurationAsync(const PutObjectLockConfigurationRequestT& request,
7065 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
7066 return SubmitAsync(&S3CrtClient::PutObjectLockConfiguration, request, handler, context);
7067 }
7068
7087
7092 template <typename PutObjectRetentionRequestT = Model::PutObjectRetentionRequest>
7093 Model::PutObjectRetentionOutcomeCallable PutObjectRetentionCallable(const PutObjectRetentionRequestT& request) const {
7094 return SubmitCallable(&S3CrtClient::PutObjectRetention, request);
7095 }
7096
7101 template <typename PutObjectRetentionRequestT = Model::PutObjectRetentionRequest>
7102 void PutObjectRetentionAsync(const PutObjectRetentionRequestT& request, const PutObjectRetentionResponseReceivedHandler& handler,
7103 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
7104 return SubmitAsync(&S3CrtClient::PutObjectRetention, request, handler, context);
7105 }
7106
7150
7155 template <typename PutObjectTaggingRequestT = Model::PutObjectTaggingRequest>
7156 Model::PutObjectTaggingOutcomeCallable PutObjectTaggingCallable(const PutObjectTaggingRequestT& request) const {
7157 return SubmitCallable(&S3CrtClient::PutObjectTagging, request);
7158 }
7159
7164 template <typename PutObjectTaggingRequestT = Model::PutObjectTaggingRequest>
7165 void PutObjectTaggingAsync(const PutObjectTaggingRequestT& request, const PutObjectTaggingResponseReceivedHandler& handler,
7166 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
7167 return SubmitAsync(&S3CrtClient::PutObjectTagging, request, handler, context);
7168 }
7169
7206
7211 template <typename PutPublicAccessBlockRequestT = Model::PutPublicAccessBlockRequest>
7212 Model::PutPublicAccessBlockOutcomeCallable PutPublicAccessBlockCallable(const PutPublicAccessBlockRequestT& request) const {
7213 return SubmitCallable(&S3CrtClient::PutPublicAccessBlock, request);
7214 }
7215
7220 template <typename PutPublicAccessBlockRequestT = Model::PutPublicAccessBlockRequest>
7221 void PutPublicAccessBlockAsync(const PutPublicAccessBlockRequestT& request, const PutPublicAccessBlockResponseReceivedHandler& handler,
7222 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
7223 return SubmitAsync(&S3CrtClient::PutPublicAccessBlock, request, handler, context);
7224 }
7225
7275
7279 template <typename RenameObjectRequestT = Model::RenameObjectRequest>
7280 Model::RenameObjectOutcomeCallable RenameObjectCallable(const RenameObjectRequestT& request) const {
7281 return SubmitCallable(&S3CrtClient::RenameObject, request);
7282 }
7283
7288 template <typename RenameObjectRequestT = Model::RenameObjectRequest>
7289 void RenameObjectAsync(const RenameObjectRequestT& request, const RenameObjectResponseReceivedHandler& handler,
7290 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
7291 return SubmitAsync(&S3CrtClient::RenameObject, request, handler, context);
7292 }
7293
7416
7420 template <typename RestoreObjectRequestT = Model::RestoreObjectRequest>
7421 Model::RestoreObjectOutcomeCallable RestoreObjectCallable(const RestoreObjectRequestT& request) const {
7422 return SubmitCallable(&S3CrtClient::RestoreObject, request);
7423 }
7424
7429 template <typename RestoreObjectRequestT = Model::RestoreObjectRequest>
7430 void RestoreObjectAsync(const RestoreObjectRequestT& request, const RestoreObjectResponseReceivedHandler& handler,
7431 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
7432 return SubmitAsync(&S3CrtClient::RestoreObject, request, handler, context);
7433 }
7434
7520
7525 template <typename SelectObjectContentRequestT = Model::SelectObjectContentRequest>
7527 return SubmitCallable(&S3CrtClient::SelectObjectContent, request);
7528 }
7529
7534 template <typename SelectObjectContentRequestT = Model::SelectObjectContentRequest>
7535 void SelectObjectContentAsync(SelectObjectContentRequestT& request, const SelectObjectContentResponseReceivedHandler& handler,
7536 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
7537 return SubmitAsync(&S3CrtClient::SelectObjectContent, request, handler, context);
7538 }
7539
7583
7588 template <
7589 typename UpdateBucketMetadataInventoryTableConfigurationRequestT = Model::UpdateBucketMetadataInventoryTableConfigurationRequest>
7591 const UpdateBucketMetadataInventoryTableConfigurationRequestT& request) const {
7592 return SubmitCallable(&S3CrtClient::UpdateBucketMetadataInventoryTableConfiguration, request);
7593 }
7594
7599 template <
7600 typename UpdateBucketMetadataInventoryTableConfigurationRequestT = Model::UpdateBucketMetadataInventoryTableConfigurationRequest>
7602 const UpdateBucketMetadataInventoryTableConfigurationRequestT& request,
7604 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
7605 return SubmitAsync(&S3CrtClient::UpdateBucketMetadataInventoryTableConfiguration, request, handler, context);
7606 }
7607
7637
7642 template <typename UpdateBucketMetadataJournalTableConfigurationRequestT = Model::UpdateBucketMetadataJournalTableConfigurationRequest>
7644 const UpdateBucketMetadataJournalTableConfigurationRequestT& request) const {
7645 return SubmitCallable(&S3CrtClient::UpdateBucketMetadataJournalTableConfiguration, request);
7646 }
7647
7652 template <typename UpdateBucketMetadataJournalTableConfigurationRequestT = Model::UpdateBucketMetadataJournalTableConfigurationRequest>
7654 const UpdateBucketMetadataJournalTableConfigurationRequestT& request,
7656 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
7657 return SubmitAsync(&S3CrtClient::UpdateBucketMetadataJournalTableConfiguration, request, handler, context);
7658 }
7659
7753
7758 template <typename UpdateObjectEncryptionRequestT = Model::UpdateObjectEncryptionRequest>
7759 Model::UpdateObjectEncryptionOutcomeCallable UpdateObjectEncryptionCallable(const UpdateObjectEncryptionRequestT& request) const {
7760 return SubmitCallable(&S3CrtClient::UpdateObjectEncryption, request);
7761 }
7762
7767 template <typename UpdateObjectEncryptionRequestT = Model::UpdateObjectEncryptionRequest>
7768 void UpdateObjectEncryptionAsync(const UpdateObjectEncryptionRequestT& request,
7770 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
7771 return SubmitAsync(&S3CrtClient::UpdateObjectEncryption, request, handler, context);
7772 }
7773
7925
7929 template <typename UploadPartRequestT = Model::UploadPartRequest>
7930 Model::UploadPartOutcomeCallable UploadPartCallable(const UploadPartRequestT& request) const {
7931 return SubmitCallable(&S3CrtClient::UploadPart, request);
7932 }
7933
7938 template <typename UploadPartRequestT = Model::UploadPartRequest>
7939 void UploadPartAsync(const UploadPartRequestT& request, const UploadPartResponseReceivedHandler& handler,
7940 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
7941 return SubmitAsync(&S3CrtClient::UploadPart, request, handler, context);
7942 }
7943
8101
8105 template <typename UploadPartCopyRequestT = Model::UploadPartCopyRequest>
8106 Model::UploadPartCopyOutcomeCallable UploadPartCopyCallable(const UploadPartCopyRequestT& request) const {
8107 return SubmitCallable(&S3CrtClient::UploadPartCopy, request);
8108 }
8109
8114 template <typename UploadPartCopyRequestT = Model::UploadPartCopyRequest>
8115 void UploadPartCopyAsync(const UploadPartCopyRequestT& request, const UploadPartCopyResponseReceivedHandler& handler,
8116 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
8117 return SubmitAsync(&S3CrtClient::UploadPartCopy, request, handler, context);
8118 }
8119
8171
8176 template <typename WriteGetObjectResponseRequestT = Model::WriteGetObjectResponseRequest>
8177 Model::WriteGetObjectResponseOutcomeCallable WriteGetObjectResponseCallable(const WriteGetObjectResponseRequestT& request) const {
8178 return SubmitCallable(&S3CrtClient::WriteGetObjectResponse, request);
8179 }
8180
8185 template <typename WriteGetObjectResponseRequestT = Model::WriteGetObjectResponseRequest>
8186 void WriteGetObjectResponseAsync(const WriteGetObjectResponseRequestT& request,
8188 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
8189 return SubmitAsync(&S3CrtClient::WriteGetObjectResponse, request, handler, context);
8190 }
8191
8193 uint64_t expirationInSeconds = MAX_EXPIRATION_SECONDS);
8194
8196 const Http::HeaderValueCollection& customizedHeaders,
8197 uint64_t expirationInSeconds = MAX_EXPIRATION_SECONDS);
8198
8213 uint64_t expirationInSeconds = MAX_EXPIRATION_SECONDS);
8220 Http::HeaderValueCollection customizedHeaders,
8221 uint64_t expirationInSeconds = MAX_EXPIRATION_SECONDS);
8222
8229 const Aws::String& kmsMasterKeyId = "",
8230 uint64_t expirationInSeconds = MAX_EXPIRATION_SECONDS);
8238 Http::HeaderValueCollection customizedHeaders, const Aws::String& kmsMasterKeyId = "",
8239 uint64_t expirationInSeconds = MAX_EXPIRATION_SECONDS);
8240
8246 const Aws::String& base64EncodedAES256Key,
8247 uint64_t expirationInSeconds = MAX_EXPIRATION_SECONDS);
8255 Http::HeaderValueCollection customizedHeaders, const Aws::String& base64EncodedAES256Key,
8256 uint64_t expirationInSeconds = MAX_EXPIRATION_SECONDS);
8257
8258 virtual bool MultipartUploadSupported() const;
8259
8260 virtual void OverrideEndpoint(const Aws::String& endpoint);
8261 virtual std::shared_ptr<S3CrtEndpointProviderBase>& accessEndpointProvider();
8262
8268 std::shared_ptr<const Aws::Client::AsyncCallerContext> asyncCallerContext;
8270 std::shared_ptr<Aws::Http::HttpRequest> request;
8271 std::shared_ptr<Aws::Http::HttpResponse> response;
8272 std::shared_ptr<Aws::Crt::Http::HttpRequest> crtHttpRequest;
8274 };
8275
8276 Aws::Client::XmlOutcome GenerateXmlOutcome(const std::shared_ptr<Http::HttpResponse>& response) const;
8277 Aws::Client::StreamOutcome GenerateStreamOutcome(const std::shared_ptr<Http::HttpResponse>& response) const;
8278
8279 protected:
8280 void AddContentLengthToRequest(const std::shared_ptr<Aws::Http::HttpRequest>& httpRequest, const std::shared_ptr<Aws::IOStream>& body,
8281 bool isChunked) const override;
8282
8283 private:
8285 void init(const S3Crt::ClientConfiguration& clientConfiguration,
8286 const std::shared_ptr<Aws::Auth::AWSCredentialsProvider> credentialsProvider);
8287
8288 struct CrtClientShutdownCallbackDataWrapper {
8289 void* data;
8290 std::function<void(void*)> fn;
8291 std::shared_ptr<Aws::Utils::Threading::Semaphore> clientShutdownSem;
8292 };
8293
8294 static void CrtClientShutdownCallback(void* data);
8295 void CancelCrtRequest(aws_s3_meta_request* meta_request) const;
8296 static int S3CrtRequestHeadersCallback(aws_s3_meta_request* meta_request, const struct aws_http_headers* headers, int response_status,
8297 void* user_data);
8298 static int S3CrtRequestGetBodyCallback(struct aws_s3_meta_request* meta_request, const struct aws_byte_cursor* body, uint64_t range_start,
8299 void* user_data);
8300 static void S3CrtRequestProgressCallback(struct aws_s3_meta_request* meta_request, const struct aws_s3_meta_request_progress* progress,
8301 void* user_data);
8302 static void S3CrtRequestFinishCallback(struct aws_s3_meta_request* meta_request,
8303 const struct aws_s3_meta_request_result* meta_request_result, void* user_data);
8304
8305 void InitCrtEndpointFromUri(aws_uri& endpoint_uri, const Aws::Http::URI& uri) const;
8306
8307 void InitCommonCrtRequestOption(CrtRequestCallbackUserData* userData, aws_s3_meta_request_options* options,
8308 const Aws::AmazonWebServiceRequest* request, const Aws::Http::URI& uri,
8309 Aws::Http::HttpMethod method) const;
8310 S3Crt::ClientConfiguration m_clientConfiguration;
8311 struct aws_s3_client* m_s3CrtClient = {};
8312 struct aws_signing_config_aws m_s3CrtSigningConfig = {};
8313 struct CrtClientShutdownCallbackDataWrapper m_wrappedData = {};
8314 std::shared_ptr<Aws::Utils::Threading::Semaphore> m_clientShutdownSem;
8315 std::shared_ptr<Aws::Auth::AWSCredentialsProvider> m_credProvider;
8316 std::shared_ptr<Aws::Crt::Auth::ICredentialsProvider> m_crtCredProvider;
8317 std::shared_ptr<S3CrtEndpointProviderBase> m_endpointProvider;
8318 std::shared_ptr<S3ExpressIdentityProvider> m_identityProvider;
8319 S3CrtIdentityProviderUserData m_identityProviderUserData{m_identityProvider};
8320};
8321
8322} // namespace S3Crt
8323} // 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:56
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:60
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:61
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:40
static const char SERVER_SIDE_ENCRYPTION_CUSTOMER_ALGORITHM[]
Definition S3CrtClient.h:39
static const char SERVER_SIDE_ENCRYPTION_CUSTOMER_KEY_MD5[]
Definition S3CrtClient.h:41
static const char SERVER_SIDE_ENCRYPTION_AWS_KMS_KEY_ID[]
Definition S3CrtClient.h:38
static const char SERVER_SIDE_ENCRYPTION[]
Definition S3CrtClient.h:37
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:45
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