AWS SDK for C++

AWS SDK for C++ Version 1.11.695

Loading...
Searching...
No Matches
PutObjectRequest.h
1
6#pragma once
7#include <aws/core/utils/Array.h>
8#include <aws/core/utils/DateTime.h>
9#include <aws/core/utils/memory/stl/AWSMap.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <aws/s3/S3Request.h>
12#include <aws/s3/S3_EXPORTS.h>
13#include <aws/s3/model/ChecksumAlgorithm.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>
20
21#include <utility>
22
23namespace Aws {
24namespace Http {
25class URI;
26} // namespace Http
27namespace S3 {
28namespace Model {
29
33 public:
34 AWS_S3_API PutObjectRequest() = default;
35
36 // Service request name is the Operation name which will send this request out,
37 // each operation should has unique request name, so that we can get operation's name from this request.
38 // Note: this is not true for response, multiple operations may have the same response name,
39 // so we can not get operation's name from response.
40 inline virtual const char* GetServiceRequestName() const override { return "PutObject"; }
41
42 AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
43
45
46 AWS_S3_API bool HasEmbeddedError(IOStream& body, const Http::HeaderValueCollection& header) const override;
47 AWS_S3_API Aws::String GetChecksumAlgorithmName() const override;
51 AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
52
54
81 inline ObjectCannedACL GetACL() const { return m_aCL; }
82 inline bool ACLHasBeenSet() const { return m_aCLHasBeenSet; }
83 inline void SetACL(ObjectCannedACL value) {
84 m_aCLHasBeenSet = true;
85 m_aCL = value;
86 }
88 SetACL(value);
89 return *this;
90 }
92
94
129 inline const Aws::String& GetBucket() const { return m_bucket; }
130 inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; }
131 template <typename BucketT = Aws::String>
132 void SetBucket(BucketT&& value) {
133 m_bucketHasBeenSet = true;
134 m_bucket = std::forward<BucketT>(value);
135 }
136 template <typename BucketT = Aws::String>
137 PutObjectRequest& WithBucket(BucketT&& value) {
138 SetBucket(std::forward<BucketT>(value));
139 return *this;
140 }
142
144
149 inline const Aws::String& GetCacheControl() const { return m_cacheControl; }
150 inline bool CacheControlHasBeenSet() const { return m_cacheControlHasBeenSet; }
151 template <typename CacheControlT = Aws::String>
152 void SetCacheControl(CacheControlT&& value) {
153 m_cacheControlHasBeenSet = true;
154 m_cacheControl = std::forward<CacheControlT>(value);
155 }
156 template <typename CacheControlT = Aws::String>
157 PutObjectRequest& WithCacheControl(CacheControlT&& value) {
158 SetCacheControl(std::forward<CacheControlT>(value));
159 return *this;
160 }
162
164
169 inline const Aws::String& GetContentDisposition() const { return m_contentDisposition; }
170 inline bool ContentDispositionHasBeenSet() const { return m_contentDispositionHasBeenSet; }
171 template <typename ContentDispositionT = Aws::String>
172 void SetContentDisposition(ContentDispositionT&& value) {
173 m_contentDispositionHasBeenSet = true;
174 m_contentDisposition = std::forward<ContentDispositionT>(value);
175 }
176 template <typename ContentDispositionT = Aws::String>
177 PutObjectRequest& WithContentDisposition(ContentDispositionT&& value) {
178 SetContentDisposition(std::forward<ContentDispositionT>(value));
179 return *this;
180 }
182
184
190 inline const Aws::String& GetContentEncoding() const { return m_contentEncoding; }
191 inline bool ContentEncodingHasBeenSet() const { return m_contentEncodingHasBeenSet; }
192 template <typename ContentEncodingT = Aws::String>
193 void SetContentEncoding(ContentEncodingT&& value) {
194 m_contentEncodingHasBeenSet = true;
195 m_contentEncoding = std::forward<ContentEncodingT>(value);
196 }
197 template <typename ContentEncodingT = Aws::String>
198 PutObjectRequest& WithContentEncoding(ContentEncodingT&& value) {
199 SetContentEncoding(std::forward<ContentEncodingT>(value));
200 return *this;
201 }
203
205
208 inline const Aws::String& GetContentLanguage() const { return m_contentLanguage; }
209 inline bool ContentLanguageHasBeenSet() const { return m_contentLanguageHasBeenSet; }
210 template <typename ContentLanguageT = Aws::String>
211 void SetContentLanguage(ContentLanguageT&& value) {
212 m_contentLanguageHasBeenSet = true;
213 m_contentLanguage = std::forward<ContentLanguageT>(value);
214 }
215 template <typename ContentLanguageT = Aws::String>
216 PutObjectRequest& WithContentLanguage(ContentLanguageT&& value) {
217 SetContentLanguage(std::forward<ContentLanguageT>(value));
218 return *this;
219 }
221
223
228 inline long long GetContentLength() const { return m_contentLength; }
229 inline bool ContentLengthHasBeenSet() const { return m_contentLengthHasBeenSet; }
230 inline void SetContentLength(long long value) {
231 m_contentLengthHasBeenSet = true;
232 m_contentLength = value;
233 }
234 inline PutObjectRequest& WithContentLength(long long value) {
235 SetContentLength(value);
236 return *this;
237 }
239
241
258 inline const Aws::String& GetContentMD5() const { return m_contentMD5; }
259 inline bool ContentMD5HasBeenSet() const { return m_contentMD5HasBeenSet; }
260 template <typename ContentMD5T = Aws::String>
261 void SetContentMD5(ContentMD5T&& value) {
262 m_contentMD5HasBeenSet = true;
263 m_contentMD5 = std::forward<ContentMD5T>(value);
264 }
265 template <typename ContentMD5T = Aws::String>
266 PutObjectRequest& WithContentMD5(ContentMD5T&& value) {
267 SetContentMD5(std::forward<ContentMD5T>(value));
268 return *this;
269 }
271
273
301 inline ChecksumAlgorithm GetChecksumAlgorithm() const { return m_checksumAlgorithm; }
302 inline bool ChecksumAlgorithmHasBeenSet() const { return m_checksumAlgorithmHasBeenSet; }
304 m_checksumAlgorithmHasBeenSet = true;
305 m_checksumAlgorithm = value;
306 }
309 return *this;
310 }
312
314
322 inline const Aws::String& GetChecksumCRC32() const { return m_checksumCRC32; }
323 inline bool ChecksumCRC32HasBeenSet() const { return m_checksumCRC32HasBeenSet; }
324 template <typename ChecksumCRC32T = Aws::String>
325 void SetChecksumCRC32(ChecksumCRC32T&& value) {
326 m_checksumCRC32HasBeenSet = true;
327 m_checksumCRC32 = std::forward<ChecksumCRC32T>(value);
329 }
330 inline void SetChecksumCRC32(const char* value) {
331 m_checksumCRC32HasBeenSet = true;
332 m_checksumCRC32.assign(value);
334 }
335 template <typename ChecksumCRC32T = Aws::String>
336 PutObjectRequest& WithChecksumCRC32(ChecksumCRC32T&& value) {
337 SetChecksumCRC32(std::forward<ChecksumCRC32T>(value));
338 return *this;
339 }
341
343
351 inline const Aws::String& GetChecksumCRC32C() const { return m_checksumCRC32C; }
352 inline bool ChecksumCRC32CHasBeenSet() const { return m_checksumCRC32CHasBeenSet; }
353 template <typename ChecksumCRC32CT = Aws::String>
354 void SetChecksumCRC32C(ChecksumCRC32CT&& value) {
355 m_checksumCRC32CHasBeenSet = true;
356 m_checksumCRC32C = std::forward<ChecksumCRC32CT>(value);
358 }
359 inline void SetChecksumCRC32C(const char* value) {
360 m_checksumCRC32CHasBeenSet = true;
361 m_checksumCRC32C.assign(value);
363 }
364 template <typename ChecksumCRC32CT = Aws::String>
365 PutObjectRequest& WithChecksumCRC32C(ChecksumCRC32CT&& value) {
366 SetChecksumCRC32C(std::forward<ChecksumCRC32CT>(value));
367 return *this;
368 }
370
372
381 inline const Aws::String& GetChecksumCRC64NVME() const { return m_checksumCRC64NVME; }
382 inline bool ChecksumCRC64NVMEHasBeenSet() const { return m_checksumCRC64NVMEHasBeenSet; }
383 template <typename ChecksumCRC64NVMET = Aws::String>
384 void SetChecksumCRC64NVME(ChecksumCRC64NVMET&& value) {
385 m_checksumCRC64NVMEHasBeenSet = true;
386 m_checksumCRC64NVME = std::forward<ChecksumCRC64NVMET>(value);
387 }
388 template <typename ChecksumCRC64NVMET = Aws::String>
389 PutObjectRequest& WithChecksumCRC64NVME(ChecksumCRC64NVMET&& value) {
390 SetChecksumCRC64NVME(std::forward<ChecksumCRC64NVMET>(value));
391 return *this;
392 }
394
396
404 inline const Aws::String& GetChecksumSHA1() const { return m_checksumSHA1; }
405 inline bool ChecksumSHA1HasBeenSet() const { return m_checksumSHA1HasBeenSet; }
406 template <typename ChecksumSHA1T = Aws::String>
407 void SetChecksumSHA1(ChecksumSHA1T&& value) {
408 m_checksumSHA1HasBeenSet = true;
409 m_checksumSHA1 = std::forward<ChecksumSHA1T>(value);
411 }
412 inline void SetChecksumSHA1(const char* value) {
413 m_checksumSHA1HasBeenSet = true;
414 m_checksumSHA1.assign(value);
416 }
417 template <typename ChecksumSHA1T = Aws::String>
418 PutObjectRequest& WithChecksumSHA1(ChecksumSHA1T&& value) {
419 SetChecksumSHA1(std::forward<ChecksumSHA1T>(value));
420 return *this;
421 }
423
425
433 inline const Aws::String& GetChecksumSHA256() const { return m_checksumSHA256; }
434 inline bool ChecksumSHA256HasBeenSet() const { return m_checksumSHA256HasBeenSet; }
435 template <typename ChecksumSHA256T = Aws::String>
436 void SetChecksumSHA256(ChecksumSHA256T&& value) {
437 m_checksumSHA256HasBeenSet = true;
438 m_checksumSHA256 = std::forward<ChecksumSHA256T>(value);
440 }
441 inline void SetChecksumSHA256(const char* value) {
442 m_checksumSHA256HasBeenSet = true;
443 m_checksumSHA256.assign(value);
445 }
446 template <typename ChecksumSHA256T = Aws::String>
447 PutObjectRequest& WithChecksumSHA256(ChecksumSHA256T&& value) {
448 SetChecksumSHA256(std::forward<ChecksumSHA256T>(value));
449 return *this;
450 }
452
454
459 inline const Aws::Utils::DateTime& GetExpires() const { return m_expires; }
460 inline bool ExpiresHasBeenSet() const { return m_expiresHasBeenSet; }
461 template <typename ExpiresT = Aws::Utils::DateTime>
462 void SetExpires(ExpiresT&& value) {
463 m_expiresHasBeenSet = true;
464 m_expires = std::forward<ExpiresT>(value);
465 }
466 template <typename ExpiresT = Aws::Utils::DateTime>
467 PutObjectRequest& WithExpires(ExpiresT&& value) {
468 SetExpires(std::forward<ExpiresT>(value));
469 return *this;
470 }
472
474
486 inline const Aws::String& GetIfMatch() const { return m_ifMatch; }
487 inline bool IfMatchHasBeenSet() const { return m_ifMatchHasBeenSet; }
488 template <typename IfMatchT = Aws::String>
489 void SetIfMatch(IfMatchT&& value) {
490 m_ifMatchHasBeenSet = true;
491 m_ifMatch = std::forward<IfMatchT>(value);
492 }
493 template <typename IfMatchT = Aws::String>
494 PutObjectRequest& WithIfMatch(IfMatchT&& value) {
495 SetIfMatch(std::forward<IfMatchT>(value));
496 return *this;
497 }
499
501
512 inline const Aws::String& GetIfNoneMatch() const { return m_ifNoneMatch; }
513 inline bool IfNoneMatchHasBeenSet() const { return m_ifNoneMatchHasBeenSet; }
514 template <typename IfNoneMatchT = Aws::String>
515 void SetIfNoneMatch(IfNoneMatchT&& value) {
516 m_ifNoneMatchHasBeenSet = true;
517 m_ifNoneMatch = std::forward<IfNoneMatchT>(value);
518 }
519 template <typename IfNoneMatchT = Aws::String>
520 PutObjectRequest& WithIfNoneMatch(IfNoneMatchT&& value) {
521 SetIfNoneMatch(std::forward<IfNoneMatchT>(value));
522 return *this;
523 }
525
527
533 inline const Aws::String& GetGrantFullControl() const { return m_grantFullControl; }
534 inline bool GrantFullControlHasBeenSet() const { return m_grantFullControlHasBeenSet; }
535 template <typename GrantFullControlT = Aws::String>
536 void SetGrantFullControl(GrantFullControlT&& value) {
537 m_grantFullControlHasBeenSet = true;
538 m_grantFullControl = std::forward<GrantFullControlT>(value);
539 }
540 template <typename GrantFullControlT = Aws::String>
541 PutObjectRequest& WithGrantFullControl(GrantFullControlT&& value) {
542 SetGrantFullControl(std::forward<GrantFullControlT>(value));
543 return *this;
544 }
546
548
554 inline const Aws::String& GetGrantRead() const { return m_grantRead; }
555 inline bool GrantReadHasBeenSet() const { return m_grantReadHasBeenSet; }
556 template <typename GrantReadT = Aws::String>
557 void SetGrantRead(GrantReadT&& value) {
558 m_grantReadHasBeenSet = true;
559 m_grantRead = std::forward<GrantReadT>(value);
560 }
561 template <typename GrantReadT = Aws::String>
562 PutObjectRequest& WithGrantRead(GrantReadT&& value) {
563 SetGrantRead(std::forward<GrantReadT>(value));
564 return *this;
565 }
567
569
575 inline const Aws::String& GetGrantReadACP() const { return m_grantReadACP; }
576 inline bool GrantReadACPHasBeenSet() const { return m_grantReadACPHasBeenSet; }
577 template <typename GrantReadACPT = Aws::String>
578 void SetGrantReadACP(GrantReadACPT&& value) {
579 m_grantReadACPHasBeenSet = true;
580 m_grantReadACP = std::forward<GrantReadACPT>(value);
581 }
582 template <typename GrantReadACPT = Aws::String>
583 PutObjectRequest& WithGrantReadACP(GrantReadACPT&& value) {
584 SetGrantReadACP(std::forward<GrantReadACPT>(value));
585 return *this;
586 }
588
590
596 inline const Aws::String& GetGrantWriteACP() const { return m_grantWriteACP; }
597 inline bool GrantWriteACPHasBeenSet() const { return m_grantWriteACPHasBeenSet; }
598 template <typename GrantWriteACPT = Aws::String>
599 void SetGrantWriteACP(GrantWriteACPT&& value) {
600 m_grantWriteACPHasBeenSet = true;
601 m_grantWriteACP = std::forward<GrantWriteACPT>(value);
602 }
603 template <typename GrantWriteACPT = Aws::String>
604 PutObjectRequest& WithGrantWriteACP(GrantWriteACPT&& value) {
605 SetGrantWriteACP(std::forward<GrantWriteACPT>(value));
606 return *this;
607 }
609
611
614 inline const Aws::String& GetKey() const { return m_key; }
615 inline bool KeyHasBeenSet() const { return m_keyHasBeenSet; }
616 template <typename KeyT = Aws::String>
617 void SetKey(KeyT&& value) {
618 m_keyHasBeenSet = true;
619 m_key = std::forward<KeyT>(value);
620 }
621 template <typename KeyT = Aws::String>
622 PutObjectRequest& WithKey(KeyT&& value) {
623 SetKey(std::forward<KeyT>(value));
624 return *this;
625 }
627
629
636 inline long long GetWriteOffsetBytes() const { return m_writeOffsetBytes; }
637 inline bool WriteOffsetBytesHasBeenSet() const { return m_writeOffsetBytesHasBeenSet; }
638 inline void SetWriteOffsetBytes(long long value) {
639 m_writeOffsetBytesHasBeenSet = true;
640 m_writeOffsetBytes = value;
641 }
642 inline PutObjectRequest& WithWriteOffsetBytes(long long value) {
643 SetWriteOffsetBytes(value);
644 return *this;
645 }
647
649
652 inline const Aws::Map<Aws::String, Aws::String>& GetMetadata() const { return m_metadata; }
653 inline bool MetadataHasBeenSet() const { return m_metadataHasBeenSet; }
654 template <typename MetadataT = Aws::Map<Aws::String, Aws::String>>
655 void SetMetadata(MetadataT&& value) {
656 m_metadataHasBeenSet = true;
657 m_metadata = std::forward<MetadataT>(value);
658 }
659 template <typename MetadataT = Aws::Map<Aws::String, Aws::String>>
660 PutObjectRequest& WithMetadata(MetadataT&& value) {
661 SetMetadata(std::forward<MetadataT>(value));
662 return *this;
663 }
664 template <typename MetadataKeyT = Aws::String, typename MetadataValueT = Aws::String>
665 PutObjectRequest& AddMetadata(MetadataKeyT&& key, MetadataValueT&& value) {
666 m_metadataHasBeenSet = true;
667 m_metadata.emplace(std::forward<MetadataKeyT>(key), std::forward<MetadataValueT>(value));
668 return *this;
669 }
671
673
735 inline ServerSideEncryption GetServerSideEncryption() const { return m_serverSideEncryption; }
736 inline bool ServerSideEncryptionHasBeenSet() const { return m_serverSideEncryptionHasBeenSet; }
738 m_serverSideEncryptionHasBeenSet = true;
739 m_serverSideEncryption = value;
740 }
743 return *this;
744 }
746
748
761 inline StorageClass GetStorageClass() const { return m_storageClass; }
762 inline bool StorageClassHasBeenSet() const { return m_storageClassHasBeenSet; }
763 inline void SetStorageClass(StorageClass value) {
764 m_storageClassHasBeenSet = true;
765 m_storageClass = value;
766 }
768 SetStorageClass(value);
769 return *this;
770 }
772
774
793 inline const Aws::String& GetWebsiteRedirectLocation() const { return m_websiteRedirectLocation; }
794 inline bool WebsiteRedirectLocationHasBeenSet() const { return m_websiteRedirectLocationHasBeenSet; }
795 template <typename WebsiteRedirectLocationT = Aws::String>
796 void SetWebsiteRedirectLocation(WebsiteRedirectLocationT&& value) {
797 m_websiteRedirectLocationHasBeenSet = true;
798 m_websiteRedirectLocation = std::forward<WebsiteRedirectLocationT>(value);
799 }
800 template <typename WebsiteRedirectLocationT = Aws::String>
801 PutObjectRequest& WithWebsiteRedirectLocation(WebsiteRedirectLocationT&& value) {
802 SetWebsiteRedirectLocation(std::forward<WebsiteRedirectLocationT>(value));
803 return *this;
804 }
806
808
813 inline const Aws::String& GetSSECustomerAlgorithm() const { return m_sSECustomerAlgorithm; }
814 inline bool SSECustomerAlgorithmHasBeenSet() const { return m_sSECustomerAlgorithmHasBeenSet; }
815 template <typename SSECustomerAlgorithmT = Aws::String>
816 void SetSSECustomerAlgorithm(SSECustomerAlgorithmT&& value) {
817 m_sSECustomerAlgorithmHasBeenSet = true;
818 m_sSECustomerAlgorithm = std::forward<SSECustomerAlgorithmT>(value);
819 }
820 template <typename SSECustomerAlgorithmT = Aws::String>
821 PutObjectRequest& WithSSECustomerAlgorithm(SSECustomerAlgorithmT&& value) {
822 SetSSECustomerAlgorithm(std::forward<SSECustomerAlgorithmT>(value));
823 return *this;
824 }
826
828
836 inline const Aws::String& GetSSECustomerKey() const { return m_sSECustomerKey; }
837 inline bool SSECustomerKeyHasBeenSet() const { return m_sSECustomerKeyHasBeenSet; }
838 template <typename SSECustomerKeyT = Aws::String>
839 void SetSSECustomerKey(SSECustomerKeyT&& value) {
840 m_sSECustomerKeyHasBeenSet = true;
841 m_sSECustomerKey = std::forward<SSECustomerKeyT>(value);
842 }
843 template <typename SSECustomerKeyT = Aws::String>
844 PutObjectRequest& WithSSECustomerKey(SSECustomerKeyT&& value) {
845 SetSSECustomerKey(std::forward<SSECustomerKeyT>(value));
846 return *this;
847 }
849
851
857 inline const Aws::String& GetSSECustomerKeyMD5() const { return m_sSECustomerKeyMD5; }
858 inline bool SSECustomerKeyMD5HasBeenSet() const { return m_sSECustomerKeyMD5HasBeenSet; }
859 template <typename SSECustomerKeyMD5T = Aws::String>
860 void SetSSECustomerKeyMD5(SSECustomerKeyMD5T&& value) {
861 m_sSECustomerKeyMD5HasBeenSet = true;
862 m_sSECustomerKeyMD5 = std::forward<SSECustomerKeyMD5T>(value);
863 }
864 template <typename SSECustomerKeyMD5T = Aws::String>
865 PutObjectRequest& WithSSECustomerKeyMD5(SSECustomerKeyMD5T&& value) {
866 SetSSECustomerKeyMD5(std::forward<SSECustomerKeyMD5T>(value));
867 return *this;
868 }
870
872
897 inline const Aws::String& GetSSEKMSKeyId() const { return m_sSEKMSKeyId; }
898 inline bool SSEKMSKeyIdHasBeenSet() const { return m_sSEKMSKeyIdHasBeenSet; }
899 template <typename SSEKMSKeyIdT = Aws::String>
900 void SetSSEKMSKeyId(SSEKMSKeyIdT&& value) {
901 m_sSEKMSKeyIdHasBeenSet = true;
902 m_sSEKMSKeyId = std::forward<SSEKMSKeyIdT>(value);
903 }
904 template <typename SSEKMSKeyIdT = Aws::String>
905 PutObjectRequest& WithSSEKMSKeyId(SSEKMSKeyIdT&& value) {
906 SetSSEKMSKeyId(std::forward<SSEKMSKeyIdT>(value));
907 return *this;
908 }
910
912
928 inline const Aws::String& GetSSEKMSEncryptionContext() const { return m_sSEKMSEncryptionContext; }
929 inline bool SSEKMSEncryptionContextHasBeenSet() const { return m_sSEKMSEncryptionContextHasBeenSet; }
930 template <typename SSEKMSEncryptionContextT = Aws::String>
931 void SetSSEKMSEncryptionContext(SSEKMSEncryptionContextT&& value) {
932 m_sSEKMSEncryptionContextHasBeenSet = true;
933 m_sSEKMSEncryptionContext = std::forward<SSEKMSEncryptionContextT>(value);
934 }
935 template <typename SSEKMSEncryptionContextT = Aws::String>
936 PutObjectRequest& WithSSEKMSEncryptionContext(SSEKMSEncryptionContextT&& value) {
937 SetSSEKMSEncryptionContext(std::forward<SSEKMSEncryptionContextT>(value));
938 return *this;
939 }
941
943
965 inline bool GetBucketKeyEnabled() const { return m_bucketKeyEnabled; }
966 inline bool BucketKeyEnabledHasBeenSet() const { return m_bucketKeyEnabledHasBeenSet; }
967 inline void SetBucketKeyEnabled(bool value) {
968 m_bucketKeyEnabledHasBeenSet = true;
969 m_bucketKeyEnabled = value;
970 }
972 SetBucketKeyEnabled(value);
973 return *this;
974 }
976
978
979 inline RequestPayer GetRequestPayer() const { return m_requestPayer; }
980 inline bool RequestPayerHasBeenSet() const { return m_requestPayerHasBeenSet; }
981 inline void SetRequestPayer(RequestPayer value) {
982 m_requestPayerHasBeenSet = true;
983 m_requestPayer = value;
984 }
986 SetRequestPayer(value);
987 return *this;
988 }
990
992
997 inline const Aws::String& GetTagging() const { return m_tagging; }
998 inline bool TaggingHasBeenSet() const { return m_taggingHasBeenSet; }
999 template <typename TaggingT = Aws::String>
1000 void SetTagging(TaggingT&& value) {
1001 m_taggingHasBeenSet = true;
1002 m_tagging = std::forward<TaggingT>(value);
1003 }
1004 template <typename TaggingT = Aws::String>
1005 PutObjectRequest& WithTagging(TaggingT&& value) {
1006 SetTagging(std::forward<TaggingT>(value));
1007 return *this;
1008 }
1010
1012
1016 inline ObjectLockMode GetObjectLockMode() const { return m_objectLockMode; }
1017 inline bool ObjectLockModeHasBeenSet() const { return m_objectLockModeHasBeenSet; }
1019 m_objectLockModeHasBeenSet = true;
1020 m_objectLockMode = value;
1021 }
1023 SetObjectLockMode(value);
1024 return *this;
1025 }
1027
1029
1034 inline const Aws::Utils::DateTime& GetObjectLockRetainUntilDate() const { return m_objectLockRetainUntilDate; }
1035 inline bool ObjectLockRetainUntilDateHasBeenSet() const { return m_objectLockRetainUntilDateHasBeenSet; }
1036 template <typename ObjectLockRetainUntilDateT = Aws::Utils::DateTime>
1037 void SetObjectLockRetainUntilDate(ObjectLockRetainUntilDateT&& value) {
1038 m_objectLockRetainUntilDateHasBeenSet = true;
1039 m_objectLockRetainUntilDate = std::forward<ObjectLockRetainUntilDateT>(value);
1040 }
1041 template <typename ObjectLockRetainUntilDateT = Aws::Utils::DateTime>
1042 PutObjectRequest& WithObjectLockRetainUntilDate(ObjectLockRetainUntilDateT&& value) {
1043 SetObjectLockRetainUntilDate(std::forward<ObjectLockRetainUntilDateT>(value));
1044 return *this;
1045 }
1047
1049
1056 inline ObjectLockLegalHoldStatus GetObjectLockLegalHoldStatus() const { return m_objectLockLegalHoldStatus; }
1057 inline bool ObjectLockLegalHoldStatusHasBeenSet() const { return m_objectLockLegalHoldStatusHasBeenSet; }
1059 m_objectLockLegalHoldStatusHasBeenSet = true;
1060 m_objectLockLegalHoldStatus = value;
1061 }
1064 return *this;
1065 }
1067
1069
1074 inline const Aws::String& GetExpectedBucketOwner() const { return m_expectedBucketOwner; }
1075 inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
1076 template <typename ExpectedBucketOwnerT = Aws::String>
1077 void SetExpectedBucketOwner(ExpectedBucketOwnerT&& value) {
1078 m_expectedBucketOwnerHasBeenSet = true;
1079 m_expectedBucketOwner = std::forward<ExpectedBucketOwnerT>(value);
1080 }
1081 template <typename ExpectedBucketOwnerT = Aws::String>
1082 PutObjectRequest& WithExpectedBucketOwner(ExpectedBucketOwnerT&& value) {
1083 SetExpectedBucketOwner(std::forward<ExpectedBucketOwnerT>(value));
1084 return *this;
1085 }
1087
1089
1090 inline const Aws::Map<Aws::String, Aws::String>& GetCustomizedAccessLogTag() const { return m_customizedAccessLogTag; }
1091 inline bool CustomizedAccessLogTagHasBeenSet() const { return m_customizedAccessLogTagHasBeenSet; }
1092 template <typename CustomizedAccessLogTagT = Aws::Map<Aws::String, Aws::String>>
1093 void SetCustomizedAccessLogTag(CustomizedAccessLogTagT&& value) {
1094 m_customizedAccessLogTagHasBeenSet = true;
1095 m_customizedAccessLogTag = std::forward<CustomizedAccessLogTagT>(value);
1096 }
1097 template <typename CustomizedAccessLogTagT = Aws::Map<Aws::String, Aws::String>>
1098 PutObjectRequest& WithCustomizedAccessLogTag(CustomizedAccessLogTagT&& value) {
1099 SetCustomizedAccessLogTag(std::forward<CustomizedAccessLogTagT>(value));
1100 return *this;
1101 }
1102 template <typename CustomizedAccessLogTagKeyT = Aws::String, typename CustomizedAccessLogTagValueT = Aws::String>
1103 PutObjectRequest& AddCustomizedAccessLogTag(CustomizedAccessLogTagKeyT&& key, CustomizedAccessLogTagValueT&& value) {
1104 m_customizedAccessLogTagHasBeenSet = true;
1105 m_customizedAccessLogTag.emplace(std::forward<CustomizedAccessLogTagKeyT>(key), std::forward<CustomizedAccessLogTagValueT>(value));
1106 return *this;
1107 }
1109 private:
1111 bool m_aCLHasBeenSet = false;
1112
1113 Aws::String m_bucket;
1114 bool m_bucketHasBeenSet = false;
1115
1116 Aws::String m_cacheControl;
1117 bool m_cacheControlHasBeenSet = false;
1118
1119 Aws::String m_contentDisposition;
1120 bool m_contentDispositionHasBeenSet = false;
1121
1122 Aws::String m_contentEncoding;
1123 bool m_contentEncodingHasBeenSet = false;
1124
1125 Aws::String m_contentLanguage;
1126 bool m_contentLanguageHasBeenSet = false;
1127
1128 long long m_contentLength{0};
1129 bool m_contentLengthHasBeenSet = false;
1130
1131 Aws::String m_contentMD5;
1132 bool m_contentMD5HasBeenSet = false;
1133
1134 ChecksumAlgorithm m_checksumAlgorithm{ChecksumAlgorithm::NOT_SET};
1135 bool m_checksumAlgorithmHasBeenSet = false;
1136
1137 Aws::String m_checksumCRC32;
1138 bool m_checksumCRC32HasBeenSet = false;
1139
1140 Aws::String m_checksumCRC32C;
1141 bool m_checksumCRC32CHasBeenSet = false;
1142
1143 Aws::String m_checksumCRC64NVME;
1144 bool m_checksumCRC64NVMEHasBeenSet = false;
1145
1146 Aws::String m_checksumSHA1;
1147 bool m_checksumSHA1HasBeenSet = false;
1148
1149 Aws::String m_checksumSHA256;
1150 bool m_checksumSHA256HasBeenSet = false;
1151
1152 Aws::Utils::DateTime m_expires{};
1153 bool m_expiresHasBeenSet = false;
1154
1155 Aws::String m_ifMatch;
1156 bool m_ifMatchHasBeenSet = false;
1157
1158 Aws::String m_ifNoneMatch;
1159 bool m_ifNoneMatchHasBeenSet = false;
1160
1161 Aws::String m_grantFullControl;
1162 bool m_grantFullControlHasBeenSet = false;
1163
1164 Aws::String m_grantRead;
1165 bool m_grantReadHasBeenSet = false;
1166
1167 Aws::String m_grantReadACP;
1168 bool m_grantReadACPHasBeenSet = false;
1169
1170 Aws::String m_grantWriteACP;
1171 bool m_grantWriteACPHasBeenSet = false;
1172
1173 Aws::String m_key;
1174 bool m_keyHasBeenSet = false;
1175
1176 long long m_writeOffsetBytes{0};
1177 bool m_writeOffsetBytesHasBeenSet = false;
1178
1180 bool m_metadataHasBeenSet = false;
1181
1183 bool m_serverSideEncryptionHasBeenSet = false;
1184
1185 StorageClass m_storageClass{StorageClass::NOT_SET};
1186 bool m_storageClassHasBeenSet = false;
1187
1188 Aws::String m_websiteRedirectLocation;
1189 bool m_websiteRedirectLocationHasBeenSet = false;
1190
1191 Aws::String m_sSECustomerAlgorithm;
1192 bool m_sSECustomerAlgorithmHasBeenSet = false;
1193
1194 Aws::String m_sSECustomerKey;
1195 bool m_sSECustomerKeyHasBeenSet = false;
1196
1197 Aws::String m_sSECustomerKeyMD5;
1198 bool m_sSECustomerKeyMD5HasBeenSet = false;
1199
1200 Aws::String m_sSEKMSKeyId;
1201 bool m_sSEKMSKeyIdHasBeenSet = false;
1202
1203 Aws::String m_sSEKMSEncryptionContext;
1204 bool m_sSEKMSEncryptionContextHasBeenSet = false;
1205
1206 bool m_bucketKeyEnabled{false};
1207 bool m_bucketKeyEnabledHasBeenSet = false;
1208
1209 RequestPayer m_requestPayer{RequestPayer::NOT_SET};
1210 bool m_requestPayerHasBeenSet = false;
1211
1212 Aws::String m_tagging;
1213 bool m_taggingHasBeenSet = false;
1214
1215 ObjectLockMode m_objectLockMode{ObjectLockMode::NOT_SET};
1216 bool m_objectLockModeHasBeenSet = false;
1217
1218 Aws::Utils::DateTime m_objectLockRetainUntilDate{};
1219 bool m_objectLockRetainUntilDateHasBeenSet = false;
1220
1222 bool m_objectLockLegalHoldStatusHasBeenSet = false;
1223
1224 Aws::String m_expectedBucketOwner;
1225 bool m_expectedBucketOwnerHasBeenSet = false;
1226
1227 Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
1228 bool m_customizedAccessLogTagHasBeenSet = false;
1229};
1230
1231} // namespace Model
1232} // namespace S3
1233} // namespace Aws
Aws::Vector< Aws::Endpoint::EndpointParameter > EndpointParameters
void SetSSEKMSKeyId(SSEKMSKeyIdT &&value)
PutObjectRequest & WithGrantFullControl(GrantFullControlT &&value)
const Aws::String & GetSSEKMSKeyId() const
AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
void SetSSECustomerKeyMD5(SSECustomerKeyMD5T &&value)
void SetExpectedBucketOwner(ExpectedBucketOwnerT &&value)
void SetObjectLockRetainUntilDate(ObjectLockRetainUntilDateT &&value)
void SetChecksumSHA256(ChecksumSHA256T &&value)
void SetChecksumCRC32C(const char *value)
PutObjectRequest & WithGrantWriteACP(GrantWriteACPT &&value)
void SetIfMatch(IfMatchT &&value)
PutObjectRequest & WithContentDisposition(ContentDispositionT &&value)
PutObjectRequest & WithCustomizedAccessLogTag(CustomizedAccessLogTagT &&value)
PutObjectRequest & WithObjectLockMode(ObjectLockMode value)
PutObjectRequest & WithObjectLockRetainUntilDate(ObjectLockRetainUntilDateT &&value)
void SetSSECustomerAlgorithm(SSECustomerAlgorithmT &&value)
void SetIfNoneMatch(IfNoneMatchT &&value)
void SetChecksumSHA1(ChecksumSHA1T &&value)
void SetChecksumSHA1(const char *value)
const Aws::String & GetChecksumCRC32C() const
PutObjectRequest & WithObjectLockLegalHoldStatus(ObjectLockLegalHoldStatus value)
PutObjectRequest & WithSSEKMSEncryptionContext(SSEKMSEncryptionContextT &&value)
virtual const char * GetServiceRequestName() const override
PutObjectRequest & WithChecksumCRC64NVME(ChecksumCRC64NVMET &&value)
PutObjectRequest & WithIfMatch(IfMatchT &&value)
PutObjectRequest & WithChecksumSHA256(ChecksumSHA256T &&value)
const Aws::String & GetExpectedBucketOwner() const
const Aws::String & GetChecksumCRC64NVME() const
void SetStorageClass(StorageClass value)
void SetWriteOffsetBytes(long long value)
PutObjectRequest & WithWriteOffsetBytes(long long value)
const Aws::String & GetGrantRead() const
PutObjectRequest & WithSSEKMSKeyId(SSEKMSKeyIdT &&value)
PutObjectRequest & WithBucketKeyEnabled(bool value)
PutObjectRequest & WithExpectedBucketOwner(ExpectedBucketOwnerT &&value)
const Aws::String & GetIfNoneMatch() const
void SetSSEKMSEncryptionContext(SSEKMSEncryptionContextT &&value)
void SetChecksumCRC32(ChecksumCRC32T &&value)
AWS_S3_API PutObjectRequest()=default
const Aws::String & GetContentLanguage() const
void SetSSECustomerKey(SSECustomerKeyT &&value)
void SetWebsiteRedirectLocation(WebsiteRedirectLocationT &&value)
void SetCustomizedAccessLogTag(CustomizedAccessLogTagT &&value)
const Aws::String & GetContentEncoding() const
PutObjectRequest & WithStorageClass(StorageClass value)
PutObjectRequest & WithACL(ObjectCannedACL value)
void SetExpires(ExpiresT &&value)
AWS_S3_API void AddQueryStringParameters(Aws::Http::URI &uri) const override
void SetChecksumSHA256(const char *value)
const Aws::String & GetTagging() const
void SetCacheControl(CacheControlT &&value)
PutObjectRequest & WithGrantRead(GrantReadT &&value)
ObjectLockMode GetObjectLockMode() const
PutObjectRequest & WithSSECustomerAlgorithm(SSECustomerAlgorithmT &&value)
AWS_S3_API Aws::String GetChecksumAlgorithmName() const override
void SetChecksumAlgorithm(ChecksumAlgorithm value)
void SetGrantFullControl(GrantFullControlT &&value)
void SetContentLanguage(ContentLanguageT &&value)
PutObjectRequest & WithContentLanguage(ContentLanguageT &&value)
PutObjectRequest & AddCustomizedAccessLogTag(CustomizedAccessLogTagKeyT &&key, CustomizedAccessLogTagValueT &&value)
void SetChecksumCRC64NVME(ChecksumCRC64NVMET &&value)
const Aws::String & GetSSECustomerKey() const
const Aws::String & GetContentMD5() const
const Aws::String & GetSSECustomerAlgorithm() const
const Aws::String & GetGrantFullControl() const
PutObjectRequest & WithServerSideEncryption(ServerSideEncryption value)
void SetContentLength(long long value)
void SetACL(ObjectCannedACL value)
PutObjectRequest & WithBucket(BucketT &&value)
const Aws::Utils::DateTime & GetExpires() const
void SetServerSideEncryption(ServerSideEncryption value)
const Aws::Map< Aws::String, Aws::String > & GetCustomizedAccessLogTag() const
AWS_S3_API EndpointParameters GetEndpointContextParams() const override
PutObjectRequest & WithIfNoneMatch(IfNoneMatchT &&value)
void SetContentMD5(ContentMD5T &&value)
const Aws::String & GetGrantReadACP() const
const Aws::Utils::DateTime & GetObjectLockRetainUntilDate() const
PutObjectRequest & WithWebsiteRedirectLocation(WebsiteRedirectLocationT &&value)
void SetMetadata(MetadataT &&value)
const Aws::String & GetChecksumCRC32() const
AWS_S3_API bool HasEmbeddedError(IOStream &body, const Http::HeaderValueCollection &header) const override
ServerSideEncryption GetServerSideEncryption() const
const Aws::String & GetChecksumSHA1() const
PutObjectRequest & WithKey(KeyT &&value)
PutObjectRequest & AddMetadata(MetadataKeyT &&key, MetadataValueT &&value)
void SetGrantReadACP(GrantReadACPT &&value)
PutObjectRequest & WithChecksumCRC32(ChecksumCRC32T &&value)
const Aws::String & GetKey() const
const Aws::String & GetGrantWriteACP() const
const Aws::String & GetBucket() const
PutObjectRequest & WithContentEncoding(ContentEncodingT &&value)
void SetChecksumCRC32(const char *value)
void SetChecksumCRC32C(ChecksumCRC32CT &&value)
const Aws::String & GetChecksumSHA256() const
PutObjectRequest & WithExpires(ExpiresT &&value)
PutObjectRequest & WithSSECustomerKey(SSECustomerKeyT &&value)
const Aws::String & GetWebsiteRedirectLocation() const
PutObjectRequest & WithChecksumAlgorithm(ChecksumAlgorithm value)
const Aws::String & GetSSECustomerKeyMD5() const
PutObjectRequest & WithTagging(TaggingT &&value)
ObjectCannedACL GetACL() const
void SetObjectLockLegalHoldStatus(ObjectLockLegalHoldStatus value)
void SetGrantRead(GrantReadT &&value)
PutObjectRequest & WithMetadata(MetadataT &&value)
const Aws::String & GetSSEKMSEncryptionContext() const
ChecksumAlgorithm GetChecksumAlgorithm() const
const Aws::Map< Aws::String, Aws::String > & GetMetadata() const
void SetRequestPayer(RequestPayer value)
void SetObjectLockMode(ObjectLockMode value)
PutObjectRequest & WithContentMD5(ContentMD5T &&value)
void SetContentEncoding(ContentEncodingT &&value)
PutObjectRequest & WithSSECustomerKeyMD5(SSECustomerKeyMD5T &&value)
PutObjectRequest & WithChecksumCRC32C(ChecksumCRC32CT &&value)
PutObjectRequest & WithCacheControl(CacheControlT &&value)
PutObjectRequest & WithChecksumSHA1(ChecksumSHA1T &&value)
void SetGrantWriteACP(GrantWriteACPT &&value)
const Aws::String & GetIfMatch() const
const Aws::String & GetCacheControl() const
const Aws::String & GetContentDisposition() const
void SetContentDisposition(ContentDispositionT &&value)
ObjectLockLegalHoldStatus GetObjectLockLegalHoldStatus() const
PutObjectRequest & WithRequestPayer(RequestPayer value)
PutObjectRequest & WithContentLength(long long value)
PutObjectRequest & WithGrantReadACP(GrantReadACPT &&value)
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