7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSMap.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/s3/S3Request.h>
11#include <aws/s3/S3_EXPORTS.h>
12#include <aws/s3/model/ChecksumAlgorithm.h>
13#include <aws/s3/model/ChecksumType.h>
14#include <aws/s3/model/ObjectCannedACL.h>
15#include <aws/s3/model/ObjectLockLegalHoldStatus.h>
16#include <aws/s3/model/ObjectLockMode.h>
17#include <aws/s3/model/RequestPayer.h>
18#include <aws/s3/model/ServerSideEncryption.h>
19#include <aws/s3/model/StorageClass.h>
75 m_aCLHasBeenSet =
true;
123 template <
typename BucketT = Aws::String>
125 m_bucketHasBeenSet =
true;
126 m_bucket = std::forward<BucketT>(value);
128 template <
typename BucketT = Aws::String>
141 template <
typename CacheControlT = Aws::String>
143 m_cacheControlHasBeenSet =
true;
144 m_cacheControl = std::forward<CacheControlT>(value);
146 template <
typename CacheControlT = Aws::String>
159 template <
typename ContentDispositionT = Aws::String>
161 m_contentDispositionHasBeenSet =
true;
162 m_contentDisposition = std::forward<ContentDispositionT>(value);
164 template <
typename ContentDispositionT = Aws::String>
180 template <
typename ContentEncodingT = Aws::String>
182 m_contentEncodingHasBeenSet =
true;
183 m_contentEncoding = std::forward<ContentEncodingT>(value);
185 template <
typename ContentEncodingT = Aws::String>
198 template <
typename ContentLanguageT = Aws::String>
200 m_contentLanguageHasBeenSet =
true;
201 m_contentLanguage = std::forward<ContentLanguageT>(value);
203 template <
typename ContentLanguageT = Aws::String>
216 template <
typename ContentTypeT = Aws::String>
218 m_contentTypeHasBeenSet =
true;
219 m_contentType = std::forward<ContentTypeT>(value);
221 template <
typename ContentTypeT = Aws::String>
234 template <
typename ExpiresT = Aws::Utils::DateTime>
236 m_expiresHasBeenSet =
true;
237 m_expires = std::forward<ExpiresT>(value);
239 template <
typename ExpiresT = Aws::Utils::DateTime>
281 template <
typename GrantFullControlT = Aws::String>
283 m_grantFullControlHasBeenSet =
true;
284 m_grantFullControl = std::forward<GrantFullControlT>(value);
286 template <
typename GrantFullControlT = Aws::String>
328 template <
typename GrantReadT = Aws::String>
330 m_grantReadHasBeenSet =
true;
331 m_grantRead = std::forward<GrantReadT>(value);
333 template <
typename GrantReadT = Aws::String>
375 template <
typename GrantReadACPT = Aws::String>
377 m_grantReadACPHasBeenSet =
true;
378 m_grantReadACP = std::forward<GrantReadACPT>(value);
380 template <
typename GrantReadACPT = Aws::String>
422 template <
typename GrantWriteACPT = Aws::String>
424 m_grantWriteACPHasBeenSet =
true;
425 m_grantWriteACP = std::forward<GrantWriteACPT>(value);
427 template <
typename GrantWriteACPT = Aws::String>
440 template <
typename KeyT = Aws::String>
442 m_keyHasBeenSet =
true;
443 m_key = std::forward<KeyT>(value);
445 template <
typename KeyT = Aws::String>
447 SetKey(std::forward<KeyT>(value));
458 template <
typename MetadataT = Aws::Map<Aws::String, Aws::String>>
460 m_metadataHasBeenSet =
true;
461 m_metadata = std::forward<MetadataT>(value);
463 template <
typename MetadataT = Aws::Map<Aws::String, Aws::String>>
468 template <
typename MetadataKeyT = Aws::String,
typename MetadataValueT = Aws::String>
470 m_metadataHasBeenSet =
true;
471 m_metadata.emplace(std::forward<MetadataKeyT>(key), std::forward<MetadataValueT>(value));
531 m_serverSideEncryptionHasBeenSet =
true;
532 m_serverSideEncryption = value;
557 m_storageClassHasBeenSet =
true;
558 m_storageClass = value;
575 template <
typename WebsiteRedirectLocationT = Aws::String>
577 m_websiteRedirectLocationHasBeenSet =
true;
578 m_websiteRedirectLocation = std::forward<WebsiteRedirectLocationT>(value);
580 template <
typename WebsiteRedirectLocationT = Aws::String>
595 template <
typename SSECustomerAlgorithmT = Aws::String>
597 m_sSECustomerAlgorithmHasBeenSet =
true;
598 m_sSECustomerAlgorithm = std::forward<SSECustomerAlgorithmT>(value);
600 template <
typename SSECustomerAlgorithmT = Aws::String>
618 template <
typename SSECustomerKeyT = Aws::String>
620 m_sSECustomerKeyHasBeenSet =
true;
621 m_sSECustomerKey = std::forward<SSECustomerKeyT>(value);
623 template <
typename SSECustomerKeyT = Aws::String>
639 template <
typename SSECustomerKeyMD5T = Aws::String>
641 m_sSECustomerKeyMD5HasBeenSet =
true;
642 m_sSECustomerKeyMD5 = std::forward<SSECustomerKeyMD5T>(value);
644 template <
typename SSECustomerKeyMD5T = Aws::String>
679 template <
typename SSEKMSKeyIdT = Aws::String>
681 m_sSEKMSKeyIdHasBeenSet =
true;
682 m_sSEKMSKeyId = std::forward<SSEKMSKeyIdT>(value);
684 template <
typename SSEKMSKeyIdT = Aws::String>
703 template <
typename SSEKMSEncryptionContextT = Aws::String>
705 m_sSEKMSEncryptionContextHasBeenSet =
true;
706 m_sSEKMSEncryptionContext = std::forward<SSEKMSEncryptionContextT>(value);
708 template <
typename SSEKMSEncryptionContextT = Aws::String>
741 m_bucketKeyEnabledHasBeenSet =
true;
742 m_bucketKeyEnabled = value;
755 m_requestPayerHasBeenSet =
true;
756 m_requestPayer = value;
772 template <
typename TaggingT = Aws::String>
774 m_taggingHasBeenSet =
true;
775 m_tagging = std::forward<TaggingT>(value);
777 template <
typename TaggingT = Aws::String>
793 m_objectLockModeHasBeenSet =
true;
794 m_objectLockMode = value;
809 template <
typename ObjectLockRetainUntilDateT = Aws::Utils::DateTime>
811 m_objectLockRetainUntilDateHasBeenSet =
true;
812 m_objectLockRetainUntilDate = std::forward<ObjectLockRetainUntilDateT>(value);
814 template <
typename ObjectLockRetainUntilDateT = Aws::Utils::DateTime>
829 m_objectLockLegalHoldStatusHasBeenSet =
true;
830 m_objectLockLegalHoldStatus = value;
846 template <
typename ExpectedBucketOwnerT = Aws::String>
848 m_expectedBucketOwnerHasBeenSet =
true;
849 m_expectedBucketOwner = std::forward<ExpectedBucketOwnerT>(value);
851 template <
typename ExpectedBucketOwnerT = Aws::String>
868 m_checksumAlgorithmHasBeenSet =
true;
869 m_checksumAlgorithm = value;
887 m_checksumTypeHasBeenSet =
true;
888 m_checksumType = value;
900 template <
typename CustomizedAccessLogTagT = Aws::Map<Aws::String, Aws::String>>
902 m_customizedAccessLogTagHasBeenSet =
true;
903 m_customizedAccessLogTag = std::forward<CustomizedAccessLogTagT>(value);
905 template <
typename CustomizedAccessLogTagT = Aws::Map<Aws::String, Aws::String>>
910 template <
typename CustomizedAccessLogTagKeyT = Aws::String,
typename CustomizedAccessLogTagValueT = Aws::String>
912 m_customizedAccessLogTagHasBeenSet =
true;
913 m_customizedAccessLogTag.emplace(std::forward<CustomizedAccessLogTagKeyT>(key), std::forward<CustomizedAccessLogTagValueT>(value));
962 bool m_bucketKeyEnabled{
false};
981 bool m_aCLHasBeenSet =
false;
982 bool m_bucketHasBeenSet =
false;
983 bool m_cacheControlHasBeenSet =
false;
984 bool m_contentDispositionHasBeenSet =
false;
985 bool m_contentEncodingHasBeenSet =
false;
986 bool m_contentLanguageHasBeenSet =
false;
987 bool m_contentTypeHasBeenSet =
false;
988 bool m_expiresHasBeenSet =
false;
989 bool m_grantFullControlHasBeenSet =
false;
990 bool m_grantReadHasBeenSet =
false;
991 bool m_grantReadACPHasBeenSet =
false;
992 bool m_grantWriteACPHasBeenSet =
false;
993 bool m_keyHasBeenSet =
false;
994 bool m_metadataHasBeenSet =
false;
995 bool m_serverSideEncryptionHasBeenSet =
false;
996 bool m_storageClassHasBeenSet =
false;
997 bool m_websiteRedirectLocationHasBeenSet =
false;
998 bool m_sSECustomerAlgorithmHasBeenSet =
false;
999 bool m_sSECustomerKeyHasBeenSet =
false;
1000 bool m_sSECustomerKeyMD5HasBeenSet =
false;
1001 bool m_sSEKMSKeyIdHasBeenSet =
false;
1002 bool m_sSEKMSEncryptionContextHasBeenSet =
false;
1003 bool m_bucketKeyEnabledHasBeenSet =
false;
1004 bool m_requestPayerHasBeenSet =
false;
1005 bool m_taggingHasBeenSet =
false;
1006 bool m_objectLockModeHasBeenSet =
false;
1007 bool m_objectLockRetainUntilDateHasBeenSet =
false;
1008 bool m_objectLockLegalHoldStatusHasBeenSet =
false;
1009 bool m_expectedBucketOwnerHasBeenSet =
false;
1010 bool m_checksumAlgorithmHasBeenSet =
false;
1011 bool m_checksumTypeHasBeenSet =
false;
1012 bool m_customizedAccessLogTagHasBeenSet =
false;
CreateMultipartUploadRequest & WithSSECustomerKeyMD5(SSECustomerKeyMD5T &&value)
AWS_S3_API EndpointParameters GetEndpointContextParams() const override
bool BucketKeyEnabledHasBeenSet() const
void SetObjectLockLegalHoldStatus(ObjectLockLegalHoldStatus value)
CreateMultipartUploadRequest & WithTagging(TaggingT &&value)
bool ChecksumTypeHasBeenSet() const
const Aws::String & GetSSECustomerAlgorithm() const
const Aws::String & GetSSECustomerKeyMD5() const
void SetExpires(ExpiresT &&value)
bool SSECustomerKeyMD5HasBeenSet() const
ChecksumAlgorithm GetChecksumAlgorithm() const
bool StorageClassHasBeenSet() const
virtual const char * GetServiceRequestName() const override
void SetChecksumAlgorithm(ChecksumAlgorithm value)
const Aws::Utils::DateTime & GetObjectLockRetainUntilDate() const
void SetBucket(BucketT &&value)
AWS_S3_API bool HasEmbeddedError(IOStream &body, const Http::HeaderValueCollection &header) const override
const Aws::String & GetGrantRead() const
bool SSEKMSEncryptionContextHasBeenSet() const
CreateMultipartUploadRequest & WithObjectLockRetainUntilDate(ObjectLockRetainUntilDateT &&value)
void SetSSECustomerKey(SSECustomerKeyT &&value)
bool ObjectLockModeHasBeenSet() const
void SetChecksumType(ChecksumType value)
AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
CreateMultipartUploadRequest & WithContentType(ContentTypeT &&value)
CreateMultipartUploadRequest & AddCustomizedAccessLogTag(CustomizedAccessLogTagKeyT &&key, CustomizedAccessLogTagValueT &&value)
CreateMultipartUploadRequest & WithCacheControl(CacheControlT &&value)
CreateMultipartUploadRequest & WithMetadata(MetadataT &&value)
CreateMultipartUploadRequest & WithGrantWriteACP(GrantWriteACPT &&value)
ObjectLockLegalHoldStatus GetObjectLockLegalHoldStatus() const
bool GrantFullControlHasBeenSet() const
bool CacheControlHasBeenSet() const
const Aws::String & GetGrantWriteACP() const
const Aws::String & GetTagging() const
void SetObjectLockRetainUntilDate(ObjectLockRetainUntilDateT &&value)
void SetContentType(ContentTypeT &&value)
bool GrantReadACPHasBeenSet() const
void SetMetadata(MetadataT &&value)
void SetExpectedBucketOwner(ExpectedBucketOwnerT &&value)
const Aws::String & GetCacheControl() const
CreateMultipartUploadRequest & WithSSECustomerAlgorithm(SSECustomerAlgorithmT &&value)
const Aws::String & GetBucket() const
bool ACLHasBeenSet() const
void SetGrantWriteACP(GrantWriteACPT &&value)
AWS_S3_API CreateMultipartUploadRequest()=default
CreateMultipartUploadRequest & WithGrantReadACP(GrantReadACPT &&value)
const Aws::String & GetGrantReadACP() const
ObjectCannedACL GetACL() const
void SetSSEKMSEncryptionContext(SSEKMSEncryptionContextT &&value)
const Aws::String & GetContentEncoding() const
CreateMultipartUploadRequest & WithACL(ObjectCannedACL value)
const Aws::String & GetSSEKMSEncryptionContext() const
void SetACL(ObjectCannedACL value)
bool ChecksumAlgorithmHasBeenSet() const
const Aws::Utils::DateTime & GetExpires() const
void SetCacheControl(CacheControlT &&value)
bool RequestPayerHasBeenSet() const
CreateMultipartUploadRequest & WithExpectedBucketOwner(ExpectedBucketOwnerT &&value)
CreateMultipartUploadRequest & WithExpires(ExpiresT &&value)
ChecksumType GetChecksumType() const
CreateMultipartUploadRequest & WithContentLanguage(ContentLanguageT &&value)
CreateMultipartUploadRequest & WithBucket(BucketT &&value)
CreateMultipartUploadRequest & WithServerSideEncryption(ServerSideEncryption value)
AWS_S3_API Aws::String SerializePayload() const override
void SetGrantFullControl(GrantFullControlT &&value)
bool GrantWriteACPHasBeenSet() const
bool ContentEncodingHasBeenSet() const
CreateMultipartUploadRequest & WithSSEKMSEncryptionContext(SSEKMSEncryptionContextT &&value)
void SetKey(KeyT &&value)
AWS_S3_API void AddQueryStringParameters(Aws::Http::URI &uri) const override
CreateMultipartUploadRequest & WithGrantRead(GrantReadT &&value)
CreateMultipartUploadRequest & WithKey(KeyT &&value)
const Aws::Map< Aws::String, Aws::String > & GetMetadata() const
bool TaggingHasBeenSet() const
StorageClass GetStorageClass() const
bool ContentDispositionHasBeenSet() const
void SetTagging(TaggingT &&value)
CreateMultipartUploadRequest & WithObjectLockMode(ObjectLockMode value)
const Aws::String & GetContentLanguage() const
bool WebsiteRedirectLocationHasBeenSet() const
const Aws::String & GetExpectedBucketOwner() const
const Aws::String & GetWebsiteRedirectLocation() const
CreateMultipartUploadRequest & WithChecksumAlgorithm(ChecksumAlgorithm value)
const Aws::String & GetSSEKMSKeyId() const
void SetGrantReadACP(GrantReadACPT &&value)
bool CustomizedAccessLogTagHasBeenSet() const
bool GrantReadHasBeenSet() const
CreateMultipartUploadRequest & WithChecksumType(ChecksumType value)
CreateMultipartUploadRequest & WithRequestPayer(RequestPayer value)
const Aws::String & GetGrantFullControl() const
const Aws::String & GetContentType() const
CreateMultipartUploadRequest & WithBucketKeyEnabled(bool value)
CreateMultipartUploadRequest & WithSSECustomerKey(SSECustomerKeyT &&value)
const Aws::Map< Aws::String, Aws::String > & GetCustomizedAccessLogTag() const
bool KeyHasBeenSet() const
void SetContentEncoding(ContentEncodingT &&value)
void SetSSECustomerAlgorithm(SSECustomerAlgorithmT &&value)
bool ObjectLockRetainUntilDateHasBeenSet() const
bool ExpiresHasBeenSet() const
void SetSSEKMSKeyId(SSEKMSKeyIdT &&value)
CreateMultipartUploadRequest & WithObjectLockLegalHoldStatus(ObjectLockLegalHoldStatus value)
void SetContentLanguage(ContentLanguageT &&value)
ServerSideEncryption GetServerSideEncryption() const
void SetWebsiteRedirectLocation(WebsiteRedirectLocationT &&value)
void SetStorageClass(StorageClass value)
bool SSECustomerKeyHasBeenSet() const
bool BucketHasBeenSet() const
bool GetBucketKeyEnabled() const
CreateMultipartUploadRequest & WithCustomizedAccessLogTag(CustomizedAccessLogTagT &&value)
CreateMultipartUploadRequest & WithWebsiteRedirectLocation(WebsiteRedirectLocationT &&value)
const Aws::String & GetSSECustomerKey() const
const Aws::String & GetContentDisposition() const
void SetRequestPayer(RequestPayer value)
ObjectLockMode GetObjectLockMode() const
void SetBucketKeyEnabled(bool value)
const Aws::String & GetKey() const
void SetSSECustomerKeyMD5(SSECustomerKeyMD5T &&value)
bool SSEKMSKeyIdHasBeenSet() const
bool SSECustomerAlgorithmHasBeenSet() const
void SetContentDisposition(ContentDispositionT &&value)
void SetObjectLockMode(ObjectLockMode value)
CreateMultipartUploadRequest & WithContentDisposition(ContentDispositionT &&value)
void SetGrantRead(GrantReadT &&value)
bool ExpectedBucketOwnerHasBeenSet() const
void SetServerSideEncryption(ServerSideEncryption value)
bool MetadataHasBeenSet() const
void SetCustomizedAccessLogTag(CustomizedAccessLogTagT &&value)
bool ObjectLockLegalHoldStatusHasBeenSet() const
CreateMultipartUploadRequest & WithGrantFullControl(GrantFullControlT &&value)
CreateMultipartUploadRequest & AddMetadata(MetadataKeyT &&key, MetadataValueT &&value)
CreateMultipartUploadRequest & WithStorageClass(StorageClass value)
bool ServerSideEncryptionHasBeenSet() const
CreateMultipartUploadRequest & WithSSEKMSKeyId(SSEKMSKeyIdT &&value)
bool ContentTypeHasBeenSet() const
RequestPayer GetRequestPayer() const
bool ContentLanguageHasBeenSet() const
CreateMultipartUploadRequest & WithContentEncoding(ContentEncodingT &&value)
Aws::Endpoint::EndpointParameters EndpointParameters
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
ObjectLockLegalHoldStatus
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_iostream< char, std::char_traits< char > > IOStream
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String