7#include <aws/s3-crt/S3Crt_EXPORTS.h>
8#include <aws/s3-crt/S3CrtRequest.h>
9#include <aws/s3-crt/model/ObjectCannedACL.h>
10#include <aws/core/utils/Array.h>
11#include <aws/core/utils/memory/stl/AWSString.h>
12#include <aws/s3-crt/model/ChecksumAlgorithm.h>
13#include <aws/core/utils/DateTime.h>
14#include <aws/core/utils/memory/stl/AWSMap.h>
15#include <aws/s3-crt/model/ServerSideEncryption.h>
16#include <aws/s3-crt/model/StorageClass.h>
17#include <aws/s3-crt/model/RequestPayer.h>
18#include <aws/s3-crt/model/ObjectLockMode.h>
19#include <aws/s3-crt/model/ObjectLockLegalHoldStatus.h>
132 inline void SetBucket(
const char* value) { m_bucketHasBeenSet =
true; m_bucket.assign(value); }
148 inline void SetCacheControl(
const char* value) { m_cacheControlHasBeenSet =
true; m_cacheControl.assign(value); }
164 inline void SetContentDisposition(
const char* value) { m_contentDispositionHasBeenSet =
true; m_contentDisposition.assign(value); }
181 inline void SetContentEncoding(
const char* value) { m_contentEncodingHasBeenSet =
true; m_contentEncoding.assign(value); }
195 inline void SetContentLanguage(
const char* value) { m_contentLanguageHasBeenSet =
true; m_contentLanguage.assign(value); }
209 inline void SetContentLength(
long long value) { m_contentLengthHasBeenSet =
true; m_contentLength = value; }
234 inline void SetContentMD5(
const char* value) { m_contentMD5HasBeenSet =
true; m_contentMD5.assign(value); }
383 inline void SetIfNoneMatch(
const char* value) { m_ifNoneMatchHasBeenSet =
true; m_ifNoneMatch.assign(value); }
400 inline void SetGrantFullControl(
const char* value) { m_grantFullControlHasBeenSet =
true; m_grantFullControl.assign(value); }
417 inline void SetGrantRead(
const char* value) { m_grantReadHasBeenSet =
true; m_grantRead.assign(value); }
434 inline void SetGrantReadACP(
const char* value) { m_grantReadACPHasBeenSet =
true; m_grantReadACP.assign(value); }
451 inline void SetGrantWriteACP(
const char* value) { m_grantWriteACPHasBeenSet =
true; m_grantWriteACP.assign(value); }
465 inline void SetKey(
const char* value) { m_keyHasBeenSet =
true; m_key.assign(value); }
487 inline PutObjectRequest&
AddMetadata(
const char* key,
const char* value) { m_metadataHasBeenSet =
true; m_metadata.emplace(key, value);
return *
this; }
600 inline void SetWebsiteRedirectLocation(
const char* value) { m_websiteRedirectLocationHasBeenSet =
true; m_websiteRedirectLocation.assign(value); }
616 inline void SetSSECustomerAlgorithm(
const char* value) { m_sSECustomerAlgorithmHasBeenSet =
true; m_sSECustomerAlgorithm.assign(value); }
635 inline void SetSSECustomerKey(
const char* value) { m_sSECustomerKeyHasBeenSet =
true; m_sSECustomerKey.assign(value); }
652 inline void SetSSECustomerKeyMD5(
const char* value) { m_sSECustomerKeyMD5HasBeenSet =
true; m_sSECustomerKeyMD5.assign(value); }
690 inline void SetSSEKMSKeyId(
const char* value) { m_sSEKMSKeyIdHasBeenSet =
true; m_sSEKMSKeyId.assign(value); }
717 inline void SetSSEKMSEncryptionContext(
const char* value) { m_sSEKMSEncryptionContextHasBeenSet =
true; m_sSEKMSEncryptionContext.assign(value); }
748 inline void SetBucketKeyEnabled(
bool value) { m_bucketKeyEnabledHasBeenSet =
true; m_bucketKeyEnabled = value; }
772 inline void SetTagging(
const char* value) { m_taggingHasBeenSet =
true; m_tagging.assign(value); }
831 inline void SetExpectedBucketOwner(
const char* value) { m_expectedBucketOwnerHasBeenSet =
true; m_expectedBucketOwner.assign(value); }
856 bool m_aCLHasBeenSet =
false;
860 bool m_bucketHasBeenSet =
false;
863 bool m_cacheControlHasBeenSet =
false;
866 bool m_contentDispositionHasBeenSet =
false;
869 bool m_contentEncodingHasBeenSet =
false;
872 bool m_contentLanguageHasBeenSet =
false;
874 long long m_contentLength;
875 bool m_contentLengthHasBeenSet =
false;
878 bool m_contentMD5HasBeenSet =
false;
881 bool m_checksumAlgorithmHasBeenSet =
false;
884 bool m_checksumCRC32HasBeenSet =
false;
887 bool m_checksumCRC32CHasBeenSet =
false;
890 bool m_checksumSHA1HasBeenSet =
false;
893 bool m_checksumSHA256HasBeenSet =
false;
896 bool m_expiresHasBeenSet =
false;
899 bool m_ifNoneMatchHasBeenSet =
false;
902 bool m_grantFullControlHasBeenSet =
false;
905 bool m_grantReadHasBeenSet =
false;
908 bool m_grantReadACPHasBeenSet =
false;
911 bool m_grantWriteACPHasBeenSet =
false;
914 bool m_keyHasBeenSet =
false;
917 bool m_metadataHasBeenSet =
false;
920 bool m_serverSideEncryptionHasBeenSet =
false;
923 bool m_storageClassHasBeenSet =
false;
926 bool m_websiteRedirectLocationHasBeenSet =
false;
929 bool m_sSECustomerAlgorithmHasBeenSet =
false;
932 bool m_sSECustomerKeyHasBeenSet =
false;
935 bool m_sSECustomerKeyMD5HasBeenSet =
false;
938 bool m_sSEKMSKeyIdHasBeenSet =
false;
941 bool m_sSEKMSEncryptionContextHasBeenSet =
false;
943 bool m_bucketKeyEnabled;
944 bool m_bucketKeyEnabledHasBeenSet =
false;
947 bool m_requestPayerHasBeenSet =
false;
950 bool m_taggingHasBeenSet =
false;
953 bool m_objectLockModeHasBeenSet =
false;
956 bool m_objectLockRetainUntilDateHasBeenSet =
false;
959 bool m_objectLockLegalHoldStatusHasBeenSet =
false;
962 bool m_expectedBucketOwnerHasBeenSet =
false;
965 bool m_customizedAccessLogTagHasBeenSet =
false;
Aws::Vector< Aws::Endpoint::EndpointParameter > EndpointParameters
PutObjectRequest & WithGrantRead(Aws::String &&value)
PutObjectRequest & WithContentDisposition(const char *value)
const Aws::String & GetChecksumSHA256() const
bool GrantReadHasBeenSet() const
void SetBucketKeyEnabled(bool value)
void SetContentEncoding(const Aws::String &value)
PutObjectRequest & WithSSEKMSKeyId(Aws::String &&value)
const ChecksumAlgorithm & GetChecksumAlgorithm() const
bool RequestPayerHasBeenSet() const
bool ExpiresHasBeenSet() const
const Aws::Map< Aws::String, Aws::String > & GetCustomizedAccessLogTag() const
PutObjectRequest & WithWebsiteRedirectLocation(const Aws::String &value)
void SetCustomizedAccessLogTag(Aws::Map< Aws::String, Aws::String > &&value)
PutObjectRequest & WithExpires(Aws::Utils::DateTime &&value)
void SetSSEKMSEncryptionContext(const char *value)
void SetExpectedBucketOwner(Aws::String &&value)
PutObjectRequest & WithObjectLockLegalHoldStatus(const ObjectLockLegalHoldStatus &value)
void SetGrantRead(const char *value)
bool ChecksumCRC32HasBeenSet() const
void SetWebsiteRedirectLocation(Aws::String &&value)
void SetGrantWriteACP(Aws::String &&value)
void SetExpectedBucketOwner(const Aws::String &value)
PutObjectRequest & WithContentDisposition(Aws::String &&value)
PutObjectRequest & AddCustomizedAccessLogTag(const char *key, Aws::String &&value)
PutObjectRequest & WithBucket(const Aws::String &value)
bool GrantWriteACPHasBeenSet() const
bool ContentMD5HasBeenSet() const
PutObjectRequest & WithIfNoneMatch(Aws::String &&value)
PutObjectRequest & WithChecksumAlgorithm(ChecksumAlgorithm &&value)
void SetACL(const ObjectCannedACL &value)
AWS_S3CRT_API bool HasEmbeddedError(IOStream &body, const Http::HeaderValueCollection &header) const override
void SetIfNoneMatch(const char *value)
void SetChecksumCRC32(Aws::String &&value)
PutObjectRequest & AddCustomizedAccessLogTag(const char *key, const char *value)
void SetChecksumCRC32(const Aws::String &value)
PutObjectRequest & WithExpectedBucketOwner(const char *value)
bool ChecksumSHA1HasBeenSet() const
PutObjectRequest & WithCustomizedAccessLogTag(Aws::Map< Aws::String, Aws::String > &&value)
const Aws::String & GetGrantRead() const
void SetObjectLockLegalHoldStatus(const ObjectLockLegalHoldStatus &value)
const Aws::String & GetContentEncoding() const
void SetContentLength(long long value)
PutObjectRequest & WithSSECustomerKeyMD5(const Aws::String &value)
PutObjectRequest & WithChecksumCRC32C(Aws::String &&value)
PutObjectRequest & WithRequestPayer(const RequestPayer &value)
PutObjectRequest & WithGrantFullControl(Aws::String &&value)
void SetObjectLockMode(const ObjectLockMode &value)
PutObjectRequest & WithRequestPayer(RequestPayer &&value)
const Aws::String & GetGrantReadACP() const
PutObjectRequest & WithGrantReadACP(Aws::String &&value)
PutObjectRequest & WithChecksumCRC32(Aws::String &&value)
PutObjectRequest & AddMetadata(Aws::String &&key, Aws::String &&value)
void SetRequestPayer(RequestPayer &&value)
void SetChecksumSHA256(const char *value)
void SetExpires(const Aws::Utils::DateTime &value)
PutObjectRequest & WithObjectLockRetainUntilDate(const Aws::Utils::DateTime &value)
void SetSSECustomerKey(const char *value)
PutObjectRequest & WithContentLanguage(Aws::String &&value)
bool KeyHasBeenSet() const
PutObjectRequest & AddCustomizedAccessLogTag(const Aws::String &key, const Aws::String &value)
PutObjectRequest & WithKey(Aws::String &&value)
PutObjectRequest & AddMetadata(const char *key, const char *value)
PutObjectRequest & WithSSEKMSEncryptionContext(const char *value)
bool ObjectLockModeHasBeenSet() const
void SetCacheControl(Aws::String &&value)
PutObjectRequest & WithSSEKMSKeyId(const Aws::String &value)
void SetExpires(Aws::Utils::DateTime &&value)
PutObjectRequest & WithGrantFullControl(const char *value)
PutObjectRequest & WithContentEncoding(const char *value)
bool TaggingHasBeenSet() const
void SetChecksumCRC32C(const Aws::String &value)
void SetChecksumSHA1(Aws::String &&value)
PutObjectRequest & WithGrantWriteACP(Aws::String &&value)
void SetContentDisposition(Aws::String &&value)
void SetCacheControl(const Aws::String &value)
PutObjectRequest & WithContentLength(long long value)
PutObjectRequest & WithCacheControl(Aws::String &&value)
void SetExpectedBucketOwner(const char *value)
void SetSSEKMSKeyId(const Aws::String &value)
const RequestPayer & GetRequestPayer() const
void SetGrantWriteACP(const char *value)
PutObjectRequest & WithSSEKMSEncryptionContext(Aws::String &&value)
void SetContentLanguage(Aws::String &&value)
virtual const char * GetServiceRequestName() const override
PutObjectRequest & WithGrantWriteACP(const char *value)
const Aws::String & GetContentMD5() const
PutObjectRequest & WithChecksumCRC32(const char *value)
bool SSEKMSEncryptionContextHasBeenSet() const
PutObjectRequest & WithSSECustomerAlgorithm(const char *value)
PutObjectRequest & WithSSEKMSKeyId(const char *value)
bool IfNoneMatchHasBeenSet() const
PutObjectRequest & WithWebsiteRedirectLocation(Aws::String &&value)
void SetContentDisposition(const Aws::String &value)
void SetChecksumSHA256(const Aws::String &value)
PutObjectRequest & AddCustomizedAccessLogTag(Aws::String &&key, Aws::String &&value)
PutObjectRequest & WithKey(const char *value)
void SetContentDisposition(const char *value)
void SetBucket(const Aws::String &value)
PutObjectRequest & WithContentLanguage(const Aws::String &value)
PutObjectRequest & WithContentEncoding(Aws::String &&value)
PutObjectRequest & WithSSECustomerKey(const Aws::String &value)
void SetSSECustomerKey(Aws::String &&value)
bool CacheControlHasBeenSet() const
bool ContentDispositionHasBeenSet() const
PutObjectRequest & WithObjectLockRetainUntilDate(Aws::Utils::DateTime &&value)
PutObjectRequest & WithChecksumSHA1(Aws::String &&value)
void SetServerSideEncryption(ServerSideEncryption &&value)
AWS_S3CRT_API EndpointParameters GetEndpointContextParams() const override
const Aws::String & GetSSEKMSKeyId() const
void SetMetadata(const Aws::Map< Aws::String, Aws::String > &value)
void SetChecksumCRC32(const char *value)
const Aws::String & GetChecksumSHA1() const
const Aws::Map< Aws::String, Aws::String > & GetMetadata() const
const ObjectCannedACL & GetACL() const
void SetMetadata(Aws::Map< Aws::String, Aws::String > &&value)
void SetChecksumCRC32C(const char *value)
AWS_S3CRT_API Aws::String GetChecksumAlgorithmName() const override
void SetChecksumAlgorithm(ChecksumAlgorithm &&value)
void SetChecksumAlgorithm(const ChecksumAlgorithm &value)
PutObjectRequest & AddMetadata(Aws::String &&key, const char *value)
PutObjectRequest & WithServerSideEncryption(const ServerSideEncryption &value)
const StorageClass & GetStorageClass() const
bool ExpectedBucketOwnerHasBeenSet() const
void SetRequestPayer(const RequestPayer &value)
PutObjectRequest & WithChecksumSHA1(const char *value)
void SetSSECustomerKeyMD5(const char *value)
const Aws::String & GetIfNoneMatch() const
PutObjectRequest & AddMetadata(const Aws::String &key, const Aws::String &value)
PutObjectRequest & WithChecksumSHA256(const char *value)
PutObjectRequest & WithACL(const ObjectCannedACL &value)
bool ContentEncodingHasBeenSet() const
bool BucketKeyEnabledHasBeenSet() const
long long GetContentLength() const
PutObjectRequest & WithContentLanguage(const char *value)
void SetACL(ObjectCannedACL &&value)
void SetWebsiteRedirectLocation(const char *value)
bool ContentLanguageHasBeenSet() const
bool GrantFullControlHasBeenSet() const
void SetChecksumSHA1(const char *value)
PutObjectRequest & WithExpires(const Aws::Utils::DateTime &value)
void SetContentMD5(const Aws::String &value)
void SetCustomizedAccessLogTag(const Aws::Map< Aws::String, Aws::String > &value)
PutObjectRequest & WithMetadata(Aws::Map< Aws::String, Aws::String > &&value)
bool ChecksumAlgorithmHasBeenSet() const
void SetSSEKMSKeyId(const char *value)
void SetGrantRead(Aws::String &&value)
PutObjectRequest & WithSSECustomerAlgorithm(const Aws::String &value)
PutObjectRequest & WithExpectedBucketOwner(Aws::String &&value)
bool MetadataHasBeenSet() const
PutObjectRequest & WithGrantWriteACP(const Aws::String &value)
PutObjectRequest & WithGrantFullControl(const Aws::String &value)
void SetKey(const char *value)
PutObjectRequest & WithSSECustomerKeyMD5(const char *value)
void SetWebsiteRedirectLocation(const Aws::String &value)
PutObjectRequest & WithContentMD5(const char *value)
bool ObjectLockRetainUntilDateHasBeenSet() const
PutObjectRequest & WithGrantRead(const Aws::String &value)
void SetTagging(const char *value)
void SetServerSideEncryption(const ServerSideEncryption &value)
PutObjectRequest & WithObjectLockLegalHoldStatus(ObjectLockLegalHoldStatus &&value)
void SetGrantWriteACP(const Aws::String &value)
void SetIfNoneMatch(const Aws::String &value)
PutObjectRequest & WithKey(const Aws::String &value)
void SetGrantReadACP(const char *value)
PutObjectRequest & WithSSECustomerKey(const char *value)
const Aws::String & GetChecksumCRC32C() const
PutObjectRequest & WithServerSideEncryption(ServerSideEncryption &&value)
PutObjectRequest & WithGrantRead(const char *value)
PutObjectRequest & WithWebsiteRedirectLocation(const char *value)
PutObjectRequest & WithBucketKeyEnabled(bool value)
PutObjectRequest & WithIfNoneMatch(const Aws::String &value)
void SetObjectLockRetainUntilDate(Aws::Utils::DateTime &&value)
PutObjectRequest & WithExpectedBucketOwner(const Aws::String &value)
PutObjectRequest & AddCustomizedAccessLogTag(Aws::String &&key, const Aws::String &value)
PutObjectRequest & WithACL(ObjectCannedACL &&value)
PutObjectRequest & AddCustomizedAccessLogTag(Aws::String &&key, const char *value)
void SetObjectLockLegalHoldStatus(ObjectLockLegalHoldStatus &&value)
const Aws::Utils::DateTime & GetExpires() const
void SetKey(const Aws::String &value)
PutObjectRequest & WithContentEncoding(const Aws::String &value)
const Aws::String & GetGrantWriteACP() const
void SetGrantReadACP(Aws::String &&value)
void SetSSECustomerKey(const Aws::String &value)
const Aws::String & GetSSEKMSEncryptionContext() const
const Aws::String & GetWebsiteRedirectLocation() const
PutObjectRequest & WithSSECustomerAlgorithm(Aws::String &&value)
const Aws::String & GetContentDisposition() const
bool ACLHasBeenSet() const
AWS_S3CRT_API PutObjectRequest()
const ObjectLockMode & GetObjectLockMode() const
PutObjectRequest & WithSSECustomerKeyMD5(Aws::String &&value)
PutObjectRequest & WithGrantReadACP(const char *value)
PutObjectRequest & WithMetadata(const Aws::Map< Aws::String, Aws::String > &value)
const Aws::String & GetSSECustomerAlgorithm() const
PutObjectRequest & AddMetadata(Aws::String &&key, const Aws::String &value)
void SetSSEKMSKeyId(Aws::String &&value)
PutObjectRequest & WithChecksumSHA1(const Aws::String &value)
void SetSSEKMSEncryptionContext(const Aws::String &value)
PutObjectRequest & WithObjectLockMode(ObjectLockMode &&value)
void SetSSECustomerAlgorithm(const Aws::String &value)
const Aws::String & GetTagging() const
PutObjectRequest & WithContentMD5(Aws::String &&value)
void SetIfNoneMatch(Aws::String &&value)
void SetTagging(Aws::String &&value)
const Aws::Utils::DateTime & GetObjectLockRetainUntilDate() const
PutObjectRequest & WithChecksumSHA256(const Aws::String &value)
const Aws::String & GetExpectedBucketOwner() const
PutObjectRequest & WithStorageClass(StorageClass &&value)
PutObjectRequest & WithBucket(const char *value)
void SetContentEncoding(const char *value)
PutObjectRequest & WithSSECustomerKey(Aws::String &&value)
PutObjectRequest & AddCustomizedAccessLogTag(const Aws::String &key, Aws::String &&value)
void SetSSECustomerAlgorithm(const char *value)
bool SSECustomerKeyHasBeenSet() const
void SetGrantReadACP(const Aws::String &value)
const Aws::String & GetKey() const
void SetCacheControl(const char *value)
PutObjectRequest & WithContentMD5(const Aws::String &value)
PutObjectRequest & AddMetadata(const Aws::String &key, Aws::String &&value)
PutObjectRequest & WithIfNoneMatch(const char *value)
const Aws::String & GetContentLanguage() const
void SetContentEncoding(Aws::String &&value)
void SetStorageClass(StorageClass &&value)
bool ContentLengthHasBeenSet() const
PutObjectRequest & WithTagging(const Aws::String &value)
const Aws::String & GetChecksumCRC32() const
bool ServerSideEncryptionHasBeenSet() const
void SetGrantFullControl(Aws::String &&value)
PutObjectRequest & WithBucket(Aws::String &&value)
PutObjectRequest & WithObjectLockMode(const ObjectLockMode &value)
AWS_S3CRT_API void AddQueryStringParameters(Aws::Http::URI &uri) const override
void SetObjectLockMode(ObjectLockMode &&value)
void SetBucket(Aws::String &&value)
bool SSECustomerKeyMD5HasBeenSet() const
PutObjectRequest & WithGrantReadACP(const Aws::String &value)
void SetGrantRead(const Aws::String &value)
bool ChecksumSHA256HasBeenSet() const
PutObjectRequest & WithChecksumCRC32(const Aws::String &value)
bool StorageClassHasBeenSet() const
void SetChecksumSHA1(const Aws::String &value)
PutObjectRequest & WithTagging(Aws::String &&value)
const Aws::String & GetBucket() const
PutObjectRequest & WithChecksumAlgorithm(const ChecksumAlgorithm &value)
PutObjectRequest & WithTagging(const char *value)
bool GetBucketKeyEnabled() const
void SetChecksumSHA256(Aws::String &&value)
PutObjectRequest & WithChecksumCRC32C(const Aws::String &value)
PutObjectRequest & WithCustomizedAccessLogTag(const Aws::Map< Aws::String, Aws::String > &value)
void SetStorageClass(const StorageClass &value)
PutObjectRequest & WithSSEKMSEncryptionContext(const Aws::String &value)
void SetTagging(const Aws::String &value)
PutObjectRequest & WithCacheControl(const Aws::String &value)
const Aws::String & GetSSECustomerKeyMD5() const
bool GrantReadACPHasBeenSet() const
PutObjectRequest & WithStorageClass(const StorageClass &value)
void SetContentLanguage(const Aws::String &value)
void SetSSECustomerKeyMD5(Aws::String &&value)
void SetKey(Aws::String &&value)
PutObjectRequest & WithChecksumSHA256(Aws::String &&value)
bool ChecksumCRC32CHasBeenSet() const
void SetObjectLockRetainUntilDate(const Aws::Utils::DateTime &value)
void SetSSEKMSEncryptionContext(Aws::String &&value)
bool CustomizedAccessLogTagHasBeenSet() const
PutObjectRequest & AddMetadata(const char *key, Aws::String &&value)
bool BucketHasBeenSet() const
void SetChecksumCRC32C(Aws::String &&value)
bool WebsiteRedirectLocationHasBeenSet() const
void SetSSECustomerKeyMD5(const Aws::String &value)
const Aws::String & GetCacheControl() const
PutObjectRequest & WithChecksumCRC32C(const char *value)
const Aws::String & GetGrantFullControl() const
const ServerSideEncryption & GetServerSideEncryption() const
void SetGrantFullControl(const Aws::String &value)
void SetContentMD5(const char *value)
bool ObjectLockLegalHoldStatusHasBeenSet() const
void SetContentMD5(Aws::String &&value)
PutObjectRequest & WithContentDisposition(const Aws::String &value)
void SetBucket(const char *value)
AWS_S3CRT_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
bool SSEKMSKeyIdHasBeenSet() const
const Aws::String & GetSSECustomerKey() const
void SetContentLanguage(const char *value)
void SetSSECustomerAlgorithm(Aws::String &&value)
bool SSECustomerAlgorithmHasBeenSet() const
PutObjectRequest & WithCacheControl(const char *value)
const ObjectLockLegalHoldStatus & GetObjectLockLegalHoldStatus() const
void SetGrantFullControl(const char *value)
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