7#include <aws/core/utils/memory/stl/AWSMap.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/s3-crt/S3CrtRequest.h>
10#include <aws/s3-crt/S3Crt_EXPORTS.h>
11#include <aws/s3-crt/model/ChecksumAlgorithm.h>
12#include <aws/s3-crt/model/ObjectLockRetention.h>
13#include <aws/s3-crt/model/RequestPayer.h>
71 template <
typename BucketT = Aws::String>
73 m_bucketHasBeenSet =
true;
74 m_bucket = std::forward<BucketT>(value);
76 template <
typename BucketT = Aws::String>
90 template <
typename KeyT = Aws::String>
92 m_keyHasBeenSet =
true;
93 m_key = std::forward<KeyT>(value);
95 template <
typename KeyT = Aws::String>
97 SetKey(std::forward<KeyT>(value));
108 template <
typename RetentionT = ObjectLockRetention>
110 m_retentionHasBeenSet =
true;
111 m_retention = std::forward<RetentionT>(value);
113 template <
typename RetentionT = ObjectLockRetention>
125 m_requestPayerHasBeenSet =
true;
126 m_requestPayer = value;
141 template <
typename VersionIdT = Aws::String>
143 m_versionIdHasBeenSet =
true;
144 m_versionId = std::forward<VersionIdT>(value);
146 template <
typename VersionIdT = Aws::String>
160 m_bypassGovernanceRetentionHasBeenSet =
true;
161 m_bypassGovernanceRetention = value;
177 template <
typename ContentMD5T = Aws::String>
179 m_contentMD5HasBeenSet =
true;
180 m_contentMD5 = std::forward<ContentMD5T>(value);
182 template <
typename ContentMD5T = Aws::String>
205 m_checksumAlgorithmHasBeenSet =
true;
206 m_checksumAlgorithm = value;
222 template <
typename ExpectedBucketOwnerT = Aws::String>
224 m_expectedBucketOwnerHasBeenSet =
true;
225 m_expectedBucketOwner = std::forward<ExpectedBucketOwnerT>(value);
227 template <
typename ExpectedBucketOwnerT = Aws::String>
238 template <
typename CustomizedAccessLogTagT = Aws::Map<Aws::String, Aws::String>>
240 m_customizedAccessLogTagHasBeenSet =
true;
241 m_customizedAccessLogTag = std::forward<CustomizedAccessLogTagT>(value);
243 template <
typename CustomizedAccessLogTagT = Aws::Map<Aws::String, Aws::String>>
248 template <
typename CustomizedAccessLogTagKeyT = Aws::String,
typename CustomizedAccessLogTagValueT = Aws::String>
250 m_customizedAccessLogTagHasBeenSet =
true;
251 m_customizedAccessLogTag.emplace(std::forward<CustomizedAccessLogTagKeyT>(key), std::forward<CustomizedAccessLogTagValueT>(value));
266 bool m_bypassGovernanceRetention{
false};
275 bool m_bucketHasBeenSet =
false;
276 bool m_keyHasBeenSet =
false;
277 bool m_retentionHasBeenSet =
false;
278 bool m_requestPayerHasBeenSet =
false;
279 bool m_versionIdHasBeenSet =
false;
280 bool m_bypassGovernanceRetentionHasBeenSet =
false;
281 bool m_contentMD5HasBeenSet =
false;
282 bool m_checksumAlgorithmHasBeenSet =
false;
283 bool m_expectedBucketOwnerHasBeenSet =
false;
284 bool m_customizedAccessLogTagHasBeenSet =
false;
PutObjectRetentionRequest & WithVersionId(VersionIdT &&value)
const ObjectLockRetention & GetRetention() const
bool ChecksumAlgorithmHasBeenSet() const
AWS_S3CRT_API EndpointParameters GetEndpointContextParams() const override
PutObjectRetentionRequest & WithKey(KeyT &&value)
PutObjectRetentionRequest & WithBypassGovernanceRetention(bool value)
bool RetentionHasBeenSet() const
AWS_S3CRT_API Aws::String SerializePayload() const override
PutObjectRetentionRequest & WithBucket(BucketT &&value)
const Aws::String & GetKey() const
bool ContentMD5HasBeenSet() const
void SetCustomizedAccessLogTag(CustomizedAccessLogTagT &&value)
AWS_S3CRT_API PutObjectRetentionRequest()=default
const Aws::Map< Aws::String, Aws::String > & GetCustomizedAccessLogTag() const
ChecksumAlgorithm GetChecksumAlgorithm() const
PutObjectRetentionRequest & WithExpectedBucketOwner(ExpectedBucketOwnerT &&value)
PutObjectRetentionRequest & WithRetention(RetentionT &&value)
bool GetBypassGovernanceRetention() const
PutObjectRetentionRequest & WithCustomizedAccessLogTag(CustomizedAccessLogTagT &&value)
virtual const char * GetServiceRequestName() const override
bool BucketHasBeenSet() const
const Aws::String & GetExpectedBucketOwner() const
bool ExpectedBucketOwnerHasBeenSet() const
const Aws::String & GetContentMD5() const
PutObjectRetentionRequest & AddCustomizedAccessLogTag(CustomizedAccessLogTagKeyT &&key, CustomizedAccessLogTagValueT &&value)
const Aws::String & GetBucket() const
PutObjectRetentionRequest & WithChecksumAlgorithm(ChecksumAlgorithm value)
AWS_S3CRT_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
void SetBypassGovernanceRetention(bool value)
bool RequestPayerHasBeenSet() const
AWS_S3CRT_API bool ChecksumAlgorithmIsSet() const override
bool RequestChecksumRequired() const override
AWS_S3CRT_API bool HasEmbeddedError(IOStream &body, const Http::HeaderValueCollection &header) const override
void SetKey(KeyT &&value)
AWS_S3CRT_API Aws::String GetChecksumAlgorithmName() const override
void SetRequestPayer(RequestPayer value)
void SetRetention(RetentionT &&value)
void SetBucket(BucketT &&value)
PutObjectRetentionRequest & WithContentMD5(ContentMD5T &&value)
PutObjectRetentionRequest & WithRequestPayer(RequestPayer value)
bool CustomizedAccessLogTagHasBeenSet() const
bool BypassGovernanceRetentionHasBeenSet() const
void SetExpectedBucketOwner(ExpectedBucketOwnerT &&value)
void SetChecksumAlgorithm(ChecksumAlgorithm value)
void SetContentMD5(ContentMD5T &&value)
bool VersionIdHasBeenSet() const
AWS_S3CRT_API void AddQueryStringParameters(Aws::Http::URI &uri) const override
bool KeyHasBeenSet() const
void SetVersionId(VersionIdT &&value)
RequestPayer GetRequestPayer() const
const Aws::String & GetVersionId() const
Aws::Endpoint::EndpointParameters EndpointParameters
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
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