7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/s3control/S3Control_EXPORTS.h>
11#include <aws/s3control/model/S3AnnotationDirective.h>
12#include <aws/s3control/model/S3CannedAccessControlList.h>
13#include <aws/s3control/model/S3ChecksumAlgorithm.h>
14#include <aws/s3control/model/S3Grant.h>
15#include <aws/s3control/model/S3MetadataDirective.h>
16#include <aws/s3control/model/S3ObjectLockEventHold.h>
17#include <aws/s3control/model/S3ObjectLockEventHoldDuration.h>
18#include <aws/s3control/model/S3ObjectLockLegalHoldStatus.h>
19#include <aws/s3control/model/S3ObjectLockMode.h>
20#include <aws/s3control/model/S3ObjectMetadata.h>
21#include <aws/s3control/model/S3StorageClass.h>
22#include <aws/s3control/model/S3Tag.h>
74 template <
typename TargetResourceT = Aws::String>
76 m_targetResourceHasBeenSet =
true;
77 m_targetResource = std::forward<TargetResourceT>(value);
79 template <
typename TargetResourceT = Aws::String>
94 m_cannedAccessControlListHasBeenSet =
true;
95 m_cannedAccessControlList = value;
110 template <
typename AccessControlGrantsT = Aws::Vector<S3Grant>>
112 m_accessControlGrantsHasBeenSet =
true;
113 m_accessControlGrants = std::forward<AccessControlGrantsT>(value);
115 template <
typename AccessControlGrantsT = Aws::Vector<S3Grant>>
120 template <
typename AccessControlGrantsT = S3Grant>
122 m_accessControlGrantsHasBeenSet =
true;
123 m_accessControlGrants.emplace_back(std::forward<AccessControlGrantsT>(value));
135 m_metadataDirectiveHasBeenSet =
true;
136 m_metadataDirective = value;
155 m_annotationDirectiveHasBeenSet =
true;
156 m_annotationDirective = value;
170 template <
typename ModifiedSinceConstra
intT = Aws::Utils::DateTime>
172 m_modifiedSinceConstraintHasBeenSet =
true;
173 m_modifiedSinceConstraint = std::forward<ModifiedSinceConstraintT>(value);
175 template <
typename ModifiedSinceConstra
intT = Aws::Utils::DateTime>
190 template <
typename NewObjectMetadataT = S3ObjectMetadata>
192 m_newObjectMetadataHasBeenSet =
true;
193 m_newObjectMetadata = std::forward<NewObjectMetadataT>(value);
195 template <
typename NewObjectMetadataT = S3ObjectMetadata>
214 template <
typename NewObjectTaggingT = Aws::Vector<S3Tag>>
216 m_newObjectTaggingHasBeenSet =
true;
217 m_newObjectTagging = std::forward<NewObjectTaggingT>(value);
219 template <
typename NewObjectTaggingT = Aws::Vector<S3Tag>>
224 template <
typename NewObjectTaggingT = S3Tag>
226 m_newObjectTaggingHasBeenSet =
true;
227 m_newObjectTagging.emplace_back(std::forward<NewObjectTaggingT>(value));
242 template <
typename RedirectLocationT = Aws::String>
244 m_redirectLocationHasBeenSet =
true;
245 m_redirectLocation = std::forward<RedirectLocationT>(value);
247 template <
typename RedirectLocationT = Aws::String>
262 m_requesterPaysHasBeenSet =
true;
263 m_requesterPays = value;
280 m_storageClassHasBeenSet =
true;
281 m_storageClass = value;
295 template <
typename UnModifiedSinceConstra
intT = Aws::Utils::DateTime>
297 m_unModifiedSinceConstraintHasBeenSet =
true;
298 m_unModifiedSinceConstraint = std::forward<UnModifiedSinceConstraintT>(value);
300 template <
typename UnModifiedSinceConstra
intT = Aws::Utils::DateTime>
335 template <
typename SSEAwsKmsKeyIdT = Aws::String>
337 m_sSEAwsKmsKeyIdHasBeenSet =
true;
338 m_sSEAwsKmsKeyId = std::forward<SSEAwsKmsKeyIdT>(value);
340 template <
typename SSEAwsKmsKeyIdT = Aws::String>
356 template <
typename TargetKeyPrefixT = Aws::String>
358 m_targetKeyPrefixHasBeenSet =
true;
359 m_targetKeyPrefix = std::forward<TargetKeyPrefixT>(value);
361 template <
typename TargetKeyPrefixT = Aws::String>
377 m_objectLockLegalHoldStatusHasBeenSet =
true;
378 m_objectLockLegalHoldStatus = value;
395 m_objectLockModeHasBeenSet =
true;
396 m_objectLockMode = value;
412 template <
typename ObjectLockRetainUntilDateT = Aws::Utils::DateTime>
414 m_objectLockRetainUntilDateHasBeenSet =
true;
415 m_objectLockRetainUntilDate = std::forward<ObjectLockRetainUntilDateT>(value);
417 template <
typename ObjectLockRetainUntilDateT = Aws::Utils::DateTime>
442 m_bucketKeyEnabledHasBeenSet =
true;
443 m_bucketKeyEnabled = value;
461 m_checksumAlgorithmHasBeenSet =
true;
462 m_checksumAlgorithm = value;
480 m_objectLockEventHoldHasBeenSet =
true;
481 m_objectLockEventHold = value;
498 template <
typename ObjectLockEventHoldDurationT = S3ObjectLockEventHoldDuration>
500 m_objectLockEventHoldDurationHasBeenSet =
true;
501 m_objectLockEventHoldDuration = std::forward<ObjectLockEventHoldDurationT>(value);
503 template <
typename ObjectLockEventHoldDurationT = S3ObjectLockEventHoldDuration>
522 S3ObjectMetadata m_newObjectMetadata;
528 bool m_requesterPays{
false};
544 bool m_bucketKeyEnabled{
false};
550 S3ObjectLockEventHoldDuration m_objectLockEventHoldDuration;
551 bool m_targetResourceHasBeenSet =
false;
552 bool m_cannedAccessControlListHasBeenSet =
false;
553 bool m_accessControlGrantsHasBeenSet =
false;
554 bool m_metadataDirectiveHasBeenSet =
false;
555 bool m_annotationDirectiveHasBeenSet =
false;
556 bool m_modifiedSinceConstraintHasBeenSet =
false;
557 bool m_newObjectMetadataHasBeenSet =
false;
558 bool m_newObjectTaggingHasBeenSet =
false;
559 bool m_redirectLocationHasBeenSet =
false;
560 bool m_requesterPaysHasBeenSet =
false;
561 bool m_storageClassHasBeenSet =
false;
562 bool m_unModifiedSinceConstraintHasBeenSet =
false;
563 bool m_sSEAwsKmsKeyIdHasBeenSet =
false;
564 bool m_targetKeyPrefixHasBeenSet =
false;
565 bool m_objectLockLegalHoldStatusHasBeenSet =
false;
566 bool m_objectLockModeHasBeenSet =
false;
567 bool m_objectLockRetainUntilDateHasBeenSet =
false;
568 bool m_bucketKeyEnabledHasBeenSet =
false;
569 bool m_checksumAlgorithmHasBeenSet =
false;
570 bool m_objectLockEventHoldHasBeenSet =
false;
571 bool m_objectLockEventHoldDurationHasBeenSet =
false;
S3AnnotationDirective GetAnnotationDirective() const
void SetTargetKeyPrefix(TargetKeyPrefixT &&value)
void SetObjectLockLegalHoldStatus(S3ObjectLockLegalHoldStatus value)
S3ChecksumAlgorithm GetChecksumAlgorithm() const
bool BucketKeyEnabledHasBeenSet() const
S3CopyObjectOperation & WithStorageClass(S3StorageClass value)
bool ModifiedSinceConstraintHasBeenSet() const
bool ObjectLockModeHasBeenSet() const
const Aws::Vector< S3Tag > & GetNewObjectTagging() const
S3CopyObjectOperation & AddAccessControlGrants(AccessControlGrantsT &&value)
void SetObjectLockEventHoldDuration(ObjectLockEventHoldDurationT &&value)
bool UnModifiedSinceConstraintHasBeenSet() const
void SetObjectLockMode(S3ObjectLockMode value)
S3MetadataDirective GetMetadataDirective() const
void SetObjectLockEventHold(S3ObjectLockEventHold value)
void SetTargetResource(TargetResourceT &&value)
bool AnnotationDirectiveHasBeenSet() const
S3CopyObjectOperation & WithObjectLockRetainUntilDate(ObjectLockRetainUntilDateT &&value)
bool TargetKeyPrefixHasBeenSet() const
S3CopyObjectOperation & WithNewObjectMetadata(NewObjectMetadataT &&value)
const Aws::Vector< S3Grant > & GetAccessControlGrants() const
S3CopyObjectOperation & WithObjectLockEventHold(S3ObjectLockEventHold value)
S3CopyObjectOperation & WithUnModifiedSinceConstraint(UnModifiedSinceConstraintT &&value)
AWS_S3CONTROL_API S3CopyObjectOperation()=default
S3CopyObjectOperation & WithRequesterPays(bool value)
const S3ObjectMetadata & GetNewObjectMetadata() const
S3CopyObjectOperation & WithNewObjectTagging(NewObjectTaggingT &&value)
const Aws::String & GetTargetResource() const
AWS_S3CONTROL_API S3CopyObjectOperation(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetNewObjectMetadata(NewObjectMetadataT &&value)
S3CopyObjectOperation & WithSSEAwsKmsKeyId(SSEAwsKmsKeyIdT &&value)
S3CopyObjectOperation & WithBucketKeyEnabled(bool value)
S3CopyObjectOperation & WithAccessControlGrants(AccessControlGrantsT &&value)
bool AccessControlGrantsHasBeenSet() const
void SetAccessControlGrants(AccessControlGrantsT &&value)
void SetModifiedSinceConstraint(ModifiedSinceConstraintT &&value)
bool RequesterPaysHasBeenSet() const
S3CopyObjectOperation & WithModifiedSinceConstraint(ModifiedSinceConstraintT &&value)
bool GetRequesterPays() const
bool NewObjectTaggingHasBeenSet() const
void SetStorageClass(S3StorageClass value)
S3CopyObjectOperation & WithRedirectLocation(RedirectLocationT &&value)
void SetObjectLockRetainUntilDate(ObjectLockRetainUntilDateT &&value)
bool NewObjectMetadataHasBeenSet() const
S3CopyObjectOperation & WithObjectLockEventHoldDuration(ObjectLockEventHoldDurationT &&value)
bool StorageClassHasBeenSet() const
S3CopyObjectOperation & WithCannedAccessControlList(S3CannedAccessControlList value)
void SetChecksumAlgorithm(S3ChecksumAlgorithm value)
void SetNewObjectTagging(NewObjectTaggingT &&value)
void SetRequesterPays(bool value)
bool GetBucketKeyEnabled() const
void SetBucketKeyEnabled(bool value)
S3StorageClass GetStorageClass() const
void SetMetadataDirective(S3MetadataDirective value)
void SetSSEAwsKmsKeyId(SSEAwsKmsKeyIdT &&value)
const Aws::String & GetSSEAwsKmsKeyId() const
bool MetadataDirectiveHasBeenSet() const
bool ObjectLockLegalHoldStatusHasBeenSet() const
void SetCannedAccessControlList(S3CannedAccessControlList value)
S3CopyObjectOperation & WithAnnotationDirective(S3AnnotationDirective value)
bool CannedAccessControlListHasBeenSet() const
void SetAnnotationDirective(S3AnnotationDirective value)
const S3ObjectLockEventHoldDuration & GetObjectLockEventHoldDuration() const
S3CopyObjectOperation & WithObjectLockLegalHoldStatus(S3ObjectLockLegalHoldStatus value)
const Aws::Utils::DateTime & GetModifiedSinceConstraint() const
const Aws::String & GetTargetKeyPrefix() const
bool ObjectLockEventHoldDurationHasBeenSet() const
const Aws::Utils::DateTime & GetObjectLockRetainUntilDate() const
S3CopyObjectOperation & WithTargetResource(TargetResourceT &&value)
S3CopyObjectOperation & WithObjectLockMode(S3ObjectLockMode value)
bool SSEAwsKmsKeyIdHasBeenSet() const
AWS_S3CONTROL_API S3CopyObjectOperation & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
S3CopyObjectOperation & WithMetadataDirective(S3MetadataDirective value)
S3CopyObjectOperation & WithTargetKeyPrefix(TargetKeyPrefixT &&value)
const Aws::String & GetRedirectLocation() const
bool RedirectLocationHasBeenSet() const
S3ObjectLockMode GetObjectLockMode() const
const Aws::Utils::DateTime & GetUnModifiedSinceConstraint() const
S3CannedAccessControlList GetCannedAccessControlList() const
bool ObjectLockRetainUntilDateHasBeenSet() const
S3ObjectLockLegalHoldStatus GetObjectLockLegalHoldStatus() const
AWS_S3CONTROL_API void AddToNode(Aws::Utils::Xml::XmlNode &parentNode) const
S3ObjectLockEventHold GetObjectLockEventHold() const
bool ChecksumAlgorithmHasBeenSet() const
bool TargetResourceHasBeenSet() const
S3CopyObjectOperation & WithChecksumAlgorithm(S3ChecksumAlgorithm value)
S3CopyObjectOperation & AddNewObjectTagging(NewObjectTaggingT &&value)
void SetUnModifiedSinceConstraint(UnModifiedSinceConstraintT &&value)
bool ObjectLockEventHoldHasBeenSet() const
void SetRedirectLocation(RedirectLocationT &&value)
S3CannedAccessControlList
S3ObjectLockLegalHoldStatus
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector