aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3
diff options
context:
space:
mode:
authordakovalkov <dakovalkov@yandex-team.com>2023-12-03 13:33:55 +0300
committerdakovalkov <dakovalkov@yandex-team.com>2023-12-03 14:04:39 +0300
commit2a718325637e5302334b6d0a6430f63168f8dbb3 (patch)
tree64be81080b7df9ec1d86d053a0c394ae53fcf1fe /contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3
parente0d94a470142d95c3007e9c5d80380994940664a (diff)
downloadydb-2a718325637e5302334b6d0a6430f63168f8dbb3.tar.gz
Update contrib/libs/aws-sdk-cpp to 1.11.37
Diffstat (limited to 'contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3')
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/CMakeLists.darwin-arm64.txt50
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/CMakeLists.darwin-x86_64.txt50
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/CMakeLists.linux-aarch64.txt50
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/CMakeLists.linux-x86_64.txt50
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/CMakeLists.windows-x86_64.txt50
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3ARN.h64
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3Client.h9861
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3ClientConfiguration.h63
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3Endpoint.h55
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3EndpointProvider.h114
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3EndpointRules.h23
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3Request.h4
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3ServiceClientModel.h503
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AbortIncompleteMultipartUpload.h12
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AbortMultipartUploadRequest.h218
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AbortMultipartUploadResult.h8
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AccelerateConfiguration.h12
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AccessControlPolicy.h14
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AccessControlTranslation.h30
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AnalyticsAndOperator.h14
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AnalyticsConfiguration.h18
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AnalyticsExportDestination.h12
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AnalyticsFilter.h16
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AnalyticsS3BucketDestination.h18
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Bucket.h18
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/BucketLifecycleConfiguration.h12
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/BucketLocationConstraint.h2
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/BucketLoggingStatus.h12
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CORSConfiguration.h12
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CORSRule.h22
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CSVInput.h56
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CSVOutput.h20
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Checksum.h381
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ChecksumAlgorithm.h33
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ChecksumMode.h30
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CloudFunctionConfiguration.h22
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CommonPrefix.h12
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CompleteMultipartUploadRequest.h761
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CompleteMultipartUploadResult.h623
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CompletedMultipartUpload.h44
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CompletedPart.h350
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Condition.h14
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CopyObjectRequest.h670
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CopyObjectResult.h98
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CopyObjectResultDetails.h374
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CopyPartResult.h350
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CreateBucketConfiguration.h12
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CreateBucketRequest.h89
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CreateBucketResult.h36
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CreateMultipartUploadRequest.h495
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CreateMultipartUploadResult.h316
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DefaultRetention.h16
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Delete.h14
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketAnalyticsConfigurationRequest.h54
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketCorsRequest.h52
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketEncryptionRequest.h52
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketIntelligentTieringConfigurationRequest.h18
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketInventoryConfigurationRequest.h54
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketLifecycleRequest.h52
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketMetricsConfigurationRequest.h54
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketOwnershipControlsRequest.h52
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketPolicyRequest.h52
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketReplicationRequest.h52
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketRequest.h52
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketTaggingRequest.h52
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketWebsiteRequest.h52
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteMarkerEntry.h20
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteMarkerReplication.h12
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectRequest.h234
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectResult.h8
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectTaggingRequest.h216
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectTaggingResult.h8
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectsRequest.h339
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectsResult.h8
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeletePublicAccessBlockRequest.h52
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeletedObject.h18
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Destination.h174
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Encryption.h88
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/EncryptionConfiguration.h116
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Error.h1938
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ErrorDocument.h12
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Event.h12
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/EventBridgeConfiguration.h42
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ExistingObjectReplication.h14
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/FilterRule.h14
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAccelerateConfigurationRequest.h52
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAccelerateConfigurationResult.h8
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAclRequest.h52
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAclResult.h8
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAnalyticsConfigurationRequest.h54
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAnalyticsConfigurationResult.h8
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketCorsRequest.h52
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketCorsResult.h8
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketEncryptionRequest.h52
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketEncryptionResult.h8
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketIntelligentTieringConfigurationRequest.h18
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketIntelligentTieringConfigurationResult.h8
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketInventoryConfigurationRequest.h54
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketInventoryConfigurationResult.h8
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLifecycleConfigurationRequest.h52
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLifecycleConfigurationResult.h8
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLocationRequest.h52
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLocationResult.h8
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLoggingRequest.h52
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLoggingResult.h8
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketMetricsConfigurationRequest.h54
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketMetricsConfigurationResult.h8
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketNotificationConfigurationRequest.h52
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketNotificationConfigurationResult.h65
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketOwnershipControlsRequest.h52
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketOwnershipControlsResult.h33
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketPolicyRequest.h52
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketPolicyResult.h16
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketPolicyStatusRequest.h52
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketPolicyStatusResult.h8
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketReplicationRequest.h52
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketReplicationResult.h8
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketRequestPaymentRequest.h52
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketRequestPaymentResult.h8
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketTaggingRequest.h52
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketTaggingResult.h8
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketVersioningRequest.h52
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketVersioningResult.h8
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketWebsiteRequest.h52
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketWebsiteResult.h8
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectAclRequest.h122
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectAclResult.h8
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectAttributesParts.h238
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectAttributesRequest.h732
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectAttributesResult.h319
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectLegalHoldRequest.h170
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectLegalHoldResult.h18
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectLockConfigurationRequest.h116
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectLockConfigurationResult.h8
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectRequest.h407
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectResult.h438
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectRetentionRequest.h122
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectRetentionResult.h8
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectTaggingRequest.h218
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectTaggingResult.h8
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectTorrentRequest.h56
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectTorrentResult.h16
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetPublicAccessBlockRequest.h52
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetPublicAccessBlockResult.h8
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GlacierJobParameters.h12
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Grant.h14
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Grantee.h140
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/HeadBucketRequest.h212
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/HeadObjectRequest.h431
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/HeadObjectResult.h585
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/IndexDocument.h12
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Initiator.h46
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InputSerialization.h18
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/IntelligentTieringAndOperator.h14
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/IntelligentTieringConfiguration.h18
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/IntelligentTieringFilter.h16
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InvalidObjectState.h14
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InventoryConfiguration.h28
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InventoryDestination.h12
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InventoryEncryption.h14
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InventoryFilter.h12
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InventoryOptionalField.h4
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InventoryS3BucketDestination.h20
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InventorySchedule.h12
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/JSONInput.h12
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/JSONOutput.h12
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LambdaFunctionConfiguration.h84
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LifecycleConfiguration.h12
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LifecycleExpiration.h16
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LifecycleRule.h38
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LifecycleRuleAndOperator.h62
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LifecycleRuleFilter.h64
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketAnalyticsConfigurationsRequest.h54
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketAnalyticsConfigurationsResult.h8
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketIntelligentTieringConfigurationsRequest.h50
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketIntelligentTieringConfigurationsResult.h51
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketInventoryConfigurationsRequest.h54
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketInventoryConfigurationsResult.h8
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketMetricsConfigurationsRequest.h54
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketMetricsConfigurationsResult.h8
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketsResult.h22
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListMultipartUploadsRequest.h224
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListMultipartUploadsResult.h29
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectVersionsRequest.h64
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectVersionsResult.h8
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectsRequest.h248
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectsResult.h8
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectsV2Request.h228
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectsV2Result.h148
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListPartsRequest.h450
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListPartsResult.h88
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LoggingEnabled.h68
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/MetadataEntry.h14
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Metrics.h14
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/MetricsAndOperator.h58
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/MetricsConfiguration.h43
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/MetricsFilter.h67
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/MultipartUpload.h57
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/NoncurrentVersionExpiration.h84
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/NoncurrentVersionTransition.h65
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/NotificationConfiguration.h83
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/NotificationConfigurationDeprecated.h28
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/NotificationConfigurationFilter.h12
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Object.h220
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectAttributes.h34
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectIdentifier.h14
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectLockConfiguration.h14
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectLockLegalHold.h26
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectLockRetention.h14
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectLockRule.h12
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectOwnership.h3
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectPart.h433
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectStorageClass.h3
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectVersion.h72
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/OutputLocation.h12
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/OutputSerialization.h14
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Owner.h14
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/OwnershipControls.h12
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/OwnershipControlsRule.h12
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ParquetInput.h10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Part.h354
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PolicyStatus.h12
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Progress.h16
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ProgressEvent.h12
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PublicAccessBlockConfiguration.h74
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketAccelerateConfigurationRequest.h145
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketAclRequest.h223
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketAnalyticsConfigurationRequest.h56
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketCorsRequest.h179
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketEncryptionRequest.h227
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketIntelligentTieringConfigurationRequest.h20
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketInventoryConfigurationRequest.h56
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketLifecycleConfigurationRequest.h145
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketLoggingRequest.h179
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketMetricsConfigurationRequest.h56
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketNotificationConfigurationRequest.h82
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketOwnershipControlsRequest.h120
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketPolicyRequest.h193
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketReplicationRequest.h181
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketRequestPaymentRequest.h179
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketTaggingRequest.h179
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketVersioningRequest.h181
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketWebsiteRequest.h179
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectAclRequest.h453
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectAclResult.h8
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectLegalHoldRequest.h325
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectLegalHoldResult.h8
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectLockConfigurationRequest.h199
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectLockConfigurationResult.h8
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectRequest.h883
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectResult.h486
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectRetentionRequest.h267
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectRetentionResult.h8
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectTaggingRequest.h361
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectTaggingResult.h8
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutPublicAccessBlockRequest.h179
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/QueueConfiguration.h18
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/QueueConfigurationDeprecated.h16
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RecordsEvent.h8
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Redirect.h20
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RedirectAllRequestsTo.h14
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicaModifications.h12
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationConfiguration.h62
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationRule.h38
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationRuleAndOperator.h14
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationRuleFilter.h16
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationTime.h14
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationTimeValue.h24
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RequestPaymentConfiguration.h12
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RequestProgress.h12
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RestoreObjectRequest.h311
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RestoreObjectResult.h8
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RestoreRequest.h24
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RoutingRule.h14
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Rule.h30
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/S3KeyFilter.h12
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/S3Location.h26
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SSEKMS.h44
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SSES3.h10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ScanRange.h34
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SelectObjectContentHandler.h14
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SelectObjectContentRequest.h266
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SelectParameters.h18
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ServerSideEncryptionByDefault.h192
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ServerSideEncryptionConfiguration.h12
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ServerSideEncryptionRule.h14
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SourceSelectionCriteria.h48
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SseKmsEncryptedObjects.h38
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Stats.h16
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/StatsEvent.h12
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/StorageClass.h3
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/StorageClassAnalysis.h12
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/StorageClassAnalysisDataExport.h14
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Tag.h14
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Tagging.h12
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/TargetGrant.h21
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Tiering.h14
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/TopicConfiguration.h18
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/TopicConfigurationDeprecated.h16
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Transition.h16
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/TransitionStorageClass.h3
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/UploadPartCopyRequest.h399
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/UploadPartCopyResult.h56
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/UploadPartRequest.h659
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/UploadPartResult.h348
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/VersioningConfiguration.h18
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/WebsiteConfiguration.h18
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/WriteGetObjectResponseRequest.h838
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3ARN.cpp210
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Client.cpp3439
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3ClientConfiguration.cpp89
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Endpoint.cpp221
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3EndpointProvider.cpp72
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3EndpointRules.cpp4191
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Request.cpp14
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AbortMultipartUploadRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Bucket.cpp4
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/BucketLocationConstraint.cpp14
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Checksum.cpp106
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ChecksumAlgorithm.cpp84
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ChecksumMode.cpp63
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CompleteMultipartUploadRequest.cpp88
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CompleteMultipartUploadResult.cpp20
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CompletedPart.cpp56
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CopyObjectRequest.cpp47
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CopyObjectResultDetails.cpp64
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CopyPartResult.cpp64
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CreateBucketRequest.cpp19
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CreateMultipartUploadRequest.cpp21
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CreateMultipartUploadResult.cpp14
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketAnalyticsConfigurationRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketCorsRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketEncryptionRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketIntelligentTieringConfigurationRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketInventoryConfigurationRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketLifecycleRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketMetricsConfigurationRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketOwnershipControlsRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketPolicyRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketReplicationRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketTaggingRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketWebsiteRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteMarkerEntry.cpp4
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectTaggingRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectsRequest.cpp30
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeletePublicAccessBlockRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Event.cpp70
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/EventBridgeConfiguration.cpp51
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketAccelerateConfigurationRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketAclRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketAnalyticsConfigurationRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketCorsRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketEncryptionRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketIntelligentTieringConfigurationRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketInventoryConfigurationRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketLifecycleConfigurationRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketLocationRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketLocationResult.cpp3
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketLoggingRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketMetricsConfigurationRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketNotificationConfigurationRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketNotificationConfigurationResult.cpp5
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketOwnershipControlsRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketPolicyRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketPolicyStatusRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketReplicationRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketRequestPaymentRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketTaggingRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketVersioningRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketWebsiteRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAclRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAttributesParts.cpp163
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAttributesRequest.cpp144
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAttributesResult.cpp96
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectLegalHoldRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectLockConfigurationRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectRequest.cpp38
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectResult.cpp38
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectRetentionRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectTaggingRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectTorrentRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetPublicAccessBlockRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/HeadBucketRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/HeadObjectRequest.cpp21
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/HeadObjectResult.cpp30
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryOptionalField.cpp14
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/LifecycleExpiration.cpp4
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/LifecycleRuleAndOperator.cpp40
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/LifecycleRuleFilter.cpp36
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketAnalyticsConfigurationsRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketIntelligentTieringConfigurationsRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketInventoryConfigurationsRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketMetricsConfigurationsRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListMultipartUploadsRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListObjectVersionsRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListObjectsRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListObjectsV2Request.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListPartsRequest.cpp34
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListPartsResult.cpp13
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MetricsAndOperator.cpp18
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MetricsFilter.cpp14
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MultipartUpload.cpp24
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NoncurrentVersionExpiration.cpp22
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NoncurrentVersionTransition.cpp22
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NotificationConfiguration.cpp18
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Object.cpp28
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectAttributes.cpp91
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockRetention.cpp4
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectOwnership.cpp7
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectPart.cpp142
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectStorageClass.cpp7
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectVersion.cpp28
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Part.cpp64
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketAccelerateConfigurationRequest.cpp30
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketAclRequest.cpp30
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketAnalyticsConfigurationRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketCorsRequest.cpp30
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketEncryptionRequest.cpp30
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketIntelligentTieringConfigurationRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketInventoryConfigurationRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketLifecycleConfigurationRequest.cpp30
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketLoggingRequest.cpp30
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketMetricsConfigurationRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketNotificationConfigurationRequest.cpp19
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketOwnershipControlsRequest.cpp10
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketPolicyRequest.cpp30
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketReplicationRequest.cpp30
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketRequestPaymentRequest.cpp30
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketTaggingRequest.cpp30
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketVersioningRequest.cpp30
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketWebsiteRequest.cpp30
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectAclRequest.cpp30
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectLegalHoldRequest.cpp30
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectLockConfigurationRequest.cpp30
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectRequest.cpp66
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectResult.cpp24
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectRetentionRequest.cpp30
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectTaggingRequest.cpp30
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutPublicAccessBlockRequest.cpp30
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RestoreObjectRequest.cpp30
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/SelectObjectContentRequest.cpp12
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/StorageClass.cpp7
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Transition.cpp4
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/TransitionStorageClass.cpp7
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/UploadPartCopyRequest.cpp36
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/UploadPartRequest.cpp62
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/UploadPartResult.cpp24
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/WriteGetObjectResponseRequest.cpp46
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/ya.make50
451 files changed, 31227 insertions, 20398 deletions
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/CMakeLists.darwin-arm64.txt b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/CMakeLists.darwin-arm64.txt
index 1b1705649a..42e8df4fa8 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/CMakeLists.darwin-arm64.txt
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/CMakeLists.darwin-arm64.txt
@@ -9,29 +9,41 @@
add_library(libs-aws-sdk-cpp-aws-cpp-sdk-s3)
target_compile_options(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE
+ -DAWS_AUTH_USE_IMPORT_EXPORT
-DAWS_CAL_USE_IMPORT_EXPORT
-DAWS_CHECKSUMS_USE_IMPORT_EXPORT
-DAWS_COMMON_USE_IMPORT_EXPORT
+ -DAWS_COMPRESSION_USE_IMPORT_EXPORT
+ -DAWS_CRT_CPP_USE_IMPORT_EXPORT
-DAWS_EVENT_STREAM_USE_IMPORT_EXPORT
+ -DAWS_HTTP_USE_IMPORT_EXPORT
-DAWS_IO_USE_IMPORT_EXPORT
+ -DAWS_MQTT_USE_IMPORT_EXPORT
+ -DAWS_MQTT_WITH_WEBSOCKETS
+ -DAWS_S3_USE_IMPORT_EXPORT
+ -DAWS_SDKUTILS_USE_IMPORT_EXPORT
-DAWS_SDK_VERSION_MAJOR=1
- -DAWS_SDK_VERSION_MINOR=8
- -DAWS_SDK_VERSION_PATCH=186
+ -DAWS_SDK_VERSION_MINOR=11
+ -DAWS_SDK_VERSION_PATCH=37
+ -DAWS_TEST_REGION=US_EAST_1
-DAWS_USE_EPOLL
+ -DENABLED_REQUEST_COMPRESSION
+ -DENABLED_ZLIB_REQUEST_COMPRESSION
-DENABLE_CURL_CLIENT
-DENABLE_OPENSSL_ENCRYPTION
-DHAS_PATHCONF
-DHAS_UMASK
- -DS2N_ADX
- -DS2N_BIKE_R3_AVX2
- -DS2N_BIKE_R3_AVX512
- -DS2N_BIKE_R3_PCLMUL
- -DS2N_BIKE_R3_VPCLMUL
+ -DS2N_CLONE_SUPPORTED
-DS2N_CPUID_AVAILABLE
-DS2N_FALL_THROUGH_SUPPORTED
- -DS2N_HAVE_EXECINFO
+ -DS2N_FEATURES_AVAILABLE
-DS2N_KYBER512R3_AVX2_BMI2
- -DS2N_SIKE_P434_R3_ASM
+ -DS2N_LIBCRYPTO_SUPPORTS_EVP_MD5_SHA1_HASH
+ -DS2N_LIBCRYPTO_SUPPORTS_EVP_MD_CTX_SET_PKEY_CTX
+ -DS2N_LIBCRYPTO_SUPPORTS_EVP_RC4
+ -DS2N_MADVISE_SUPPORTED
+ -DS2N_PLATFORM_SUPPORTS_KTLS
+ -DS2N_STACKTRACE
-DS2N___RESTRICT__SUPPORTED
$<IF:$<CXX_COMPILER_ID:MSVC>,,-Wno-everything>
)
@@ -44,15 +56,22 @@ target_include_directories(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE
target_link_libraries(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PUBLIC
contrib-libs-cxxsupp
libs-aws-sdk-cpp-aws-cpp-sdk-core
+ restricted-aws-aws-c-auth
restricted-aws-aws-c-common
restricted-aws-aws-c-event-stream
+ restricted-aws-aws-c-io
+ restricted-aws-aws-c-mqtt
+ restricted-aws-aws-c-sdkutils
+ restricted-aws-aws-crt-cpp
)
target_sources(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE
- ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3ARN.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Client.cpp
- ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Endpoint.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3ClientConfiguration.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3EndpointProvider.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3EndpointRules.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3ErrorMarshaller.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Errors.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Request.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AbortIncompleteMultipartUpload.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AbortMultipartUploadRequest.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AbortMultipartUploadResult.cpp
@@ -78,6 +97,9 @@ target_sources(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CORSRule.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CSVInput.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CSVOutput.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Checksum.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ChecksumAlgorithm.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ChecksumMode.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CloudFunctionConfiguration.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CommonPrefix.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CompleteMultipartUploadRequest.cpp
@@ -128,6 +150,7 @@ target_sources(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Error.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ErrorDocument.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Event.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/EventBridgeConfiguration.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ExistingObjectReplication.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ExistingObjectReplicationStatus.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ExpirationStatus.cpp
@@ -177,6 +200,9 @@ target_sources(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketWebsiteResult.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAclRequest.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAclResult.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAttributesParts.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAttributesRequest.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAttributesResult.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectLegalHoldRequest.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectLegalHoldResult.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectLockConfigurationRequest.cpp
@@ -261,6 +287,7 @@ target_sources(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NotificationConfigurationDeprecated.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NotificationConfigurationFilter.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Object.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectAttributes.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectCannedACL.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectIdentifier.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockConfiguration.cpp
@@ -272,6 +299,7 @@ target_sources(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockRetentionMode.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockRule.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectOwnership.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectPart.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectStorageClass.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectVersion.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectVersionStorageClass.cpp
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/CMakeLists.darwin-x86_64.txt b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/CMakeLists.darwin-x86_64.txt
index 1b1705649a..42e8df4fa8 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/CMakeLists.darwin-x86_64.txt
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/CMakeLists.darwin-x86_64.txt
@@ -9,29 +9,41 @@
add_library(libs-aws-sdk-cpp-aws-cpp-sdk-s3)
target_compile_options(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE
+ -DAWS_AUTH_USE_IMPORT_EXPORT
-DAWS_CAL_USE_IMPORT_EXPORT
-DAWS_CHECKSUMS_USE_IMPORT_EXPORT
-DAWS_COMMON_USE_IMPORT_EXPORT
+ -DAWS_COMPRESSION_USE_IMPORT_EXPORT
+ -DAWS_CRT_CPP_USE_IMPORT_EXPORT
-DAWS_EVENT_STREAM_USE_IMPORT_EXPORT
+ -DAWS_HTTP_USE_IMPORT_EXPORT
-DAWS_IO_USE_IMPORT_EXPORT
+ -DAWS_MQTT_USE_IMPORT_EXPORT
+ -DAWS_MQTT_WITH_WEBSOCKETS
+ -DAWS_S3_USE_IMPORT_EXPORT
+ -DAWS_SDKUTILS_USE_IMPORT_EXPORT
-DAWS_SDK_VERSION_MAJOR=1
- -DAWS_SDK_VERSION_MINOR=8
- -DAWS_SDK_VERSION_PATCH=186
+ -DAWS_SDK_VERSION_MINOR=11
+ -DAWS_SDK_VERSION_PATCH=37
+ -DAWS_TEST_REGION=US_EAST_1
-DAWS_USE_EPOLL
+ -DENABLED_REQUEST_COMPRESSION
+ -DENABLED_ZLIB_REQUEST_COMPRESSION
-DENABLE_CURL_CLIENT
-DENABLE_OPENSSL_ENCRYPTION
-DHAS_PATHCONF
-DHAS_UMASK
- -DS2N_ADX
- -DS2N_BIKE_R3_AVX2
- -DS2N_BIKE_R3_AVX512
- -DS2N_BIKE_R3_PCLMUL
- -DS2N_BIKE_R3_VPCLMUL
+ -DS2N_CLONE_SUPPORTED
-DS2N_CPUID_AVAILABLE
-DS2N_FALL_THROUGH_SUPPORTED
- -DS2N_HAVE_EXECINFO
+ -DS2N_FEATURES_AVAILABLE
-DS2N_KYBER512R3_AVX2_BMI2
- -DS2N_SIKE_P434_R3_ASM
+ -DS2N_LIBCRYPTO_SUPPORTS_EVP_MD5_SHA1_HASH
+ -DS2N_LIBCRYPTO_SUPPORTS_EVP_MD_CTX_SET_PKEY_CTX
+ -DS2N_LIBCRYPTO_SUPPORTS_EVP_RC4
+ -DS2N_MADVISE_SUPPORTED
+ -DS2N_PLATFORM_SUPPORTS_KTLS
+ -DS2N_STACKTRACE
-DS2N___RESTRICT__SUPPORTED
$<IF:$<CXX_COMPILER_ID:MSVC>,,-Wno-everything>
)
@@ -44,15 +56,22 @@ target_include_directories(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE
target_link_libraries(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PUBLIC
contrib-libs-cxxsupp
libs-aws-sdk-cpp-aws-cpp-sdk-core
+ restricted-aws-aws-c-auth
restricted-aws-aws-c-common
restricted-aws-aws-c-event-stream
+ restricted-aws-aws-c-io
+ restricted-aws-aws-c-mqtt
+ restricted-aws-aws-c-sdkutils
+ restricted-aws-aws-crt-cpp
)
target_sources(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE
- ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3ARN.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Client.cpp
- ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Endpoint.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3ClientConfiguration.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3EndpointProvider.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3EndpointRules.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3ErrorMarshaller.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Errors.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Request.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AbortIncompleteMultipartUpload.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AbortMultipartUploadRequest.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AbortMultipartUploadResult.cpp
@@ -78,6 +97,9 @@ target_sources(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CORSRule.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CSVInput.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CSVOutput.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Checksum.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ChecksumAlgorithm.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ChecksumMode.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CloudFunctionConfiguration.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CommonPrefix.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CompleteMultipartUploadRequest.cpp
@@ -128,6 +150,7 @@ target_sources(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Error.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ErrorDocument.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Event.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/EventBridgeConfiguration.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ExistingObjectReplication.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ExistingObjectReplicationStatus.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ExpirationStatus.cpp
@@ -177,6 +200,9 @@ target_sources(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketWebsiteResult.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAclRequest.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAclResult.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAttributesParts.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAttributesRequest.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAttributesResult.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectLegalHoldRequest.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectLegalHoldResult.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectLockConfigurationRequest.cpp
@@ -261,6 +287,7 @@ target_sources(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NotificationConfigurationDeprecated.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NotificationConfigurationFilter.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Object.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectAttributes.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectCannedACL.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectIdentifier.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockConfiguration.cpp
@@ -272,6 +299,7 @@ target_sources(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockRetentionMode.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockRule.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectOwnership.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectPart.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectStorageClass.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectVersion.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectVersionStorageClass.cpp
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/CMakeLists.linux-aarch64.txt b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/CMakeLists.linux-aarch64.txt
index 114aa69426..2fdc7856d5 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/CMakeLists.linux-aarch64.txt
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/CMakeLists.linux-aarch64.txt
@@ -9,29 +9,41 @@
add_library(libs-aws-sdk-cpp-aws-cpp-sdk-s3)
target_compile_options(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE
+ -DAWS_AUTH_USE_IMPORT_EXPORT
-DAWS_CAL_USE_IMPORT_EXPORT
-DAWS_CHECKSUMS_USE_IMPORT_EXPORT
-DAWS_COMMON_USE_IMPORT_EXPORT
+ -DAWS_COMPRESSION_USE_IMPORT_EXPORT
+ -DAWS_CRT_CPP_USE_IMPORT_EXPORT
-DAWS_EVENT_STREAM_USE_IMPORT_EXPORT
+ -DAWS_HTTP_USE_IMPORT_EXPORT
-DAWS_IO_USE_IMPORT_EXPORT
+ -DAWS_MQTT_USE_IMPORT_EXPORT
+ -DAWS_MQTT_WITH_WEBSOCKETS
+ -DAWS_S3_USE_IMPORT_EXPORT
+ -DAWS_SDKUTILS_USE_IMPORT_EXPORT
-DAWS_SDK_VERSION_MAJOR=1
- -DAWS_SDK_VERSION_MINOR=8
- -DAWS_SDK_VERSION_PATCH=186
+ -DAWS_SDK_VERSION_MINOR=11
+ -DAWS_SDK_VERSION_PATCH=37
+ -DAWS_TEST_REGION=US_EAST_1
-DAWS_USE_EPOLL
+ -DENABLED_REQUEST_COMPRESSION
+ -DENABLED_ZLIB_REQUEST_COMPRESSION
-DENABLE_CURL_CLIENT
-DENABLE_OPENSSL_ENCRYPTION
-DHAS_PATHCONF
-DHAS_UMASK
- -DS2N_ADX
- -DS2N_BIKE_R3_AVX2
- -DS2N_BIKE_R3_AVX512
- -DS2N_BIKE_R3_PCLMUL
- -DS2N_BIKE_R3_VPCLMUL
+ -DS2N_CLONE_SUPPORTED
-DS2N_CPUID_AVAILABLE
-DS2N_FALL_THROUGH_SUPPORTED
- -DS2N_HAVE_EXECINFO
+ -DS2N_FEATURES_AVAILABLE
-DS2N_KYBER512R3_AVX2_BMI2
- -DS2N_SIKE_P434_R3_ASM
+ -DS2N_LIBCRYPTO_SUPPORTS_EVP_MD5_SHA1_HASH
+ -DS2N_LIBCRYPTO_SUPPORTS_EVP_MD_CTX_SET_PKEY_CTX
+ -DS2N_LIBCRYPTO_SUPPORTS_EVP_RC4
+ -DS2N_MADVISE_SUPPORTED
+ -DS2N_PLATFORM_SUPPORTS_KTLS
+ -DS2N_STACKTRACE
-DS2N___RESTRICT__SUPPORTED
$<IF:$<CXX_COMPILER_ID:MSVC>,,-Wno-everything>
)
@@ -45,15 +57,22 @@ target_link_libraries(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PUBLIC
contrib-libs-linux-headers
contrib-libs-cxxsupp
libs-aws-sdk-cpp-aws-cpp-sdk-core
+ restricted-aws-aws-c-auth
restricted-aws-aws-c-common
restricted-aws-aws-c-event-stream
+ restricted-aws-aws-c-io
+ restricted-aws-aws-c-mqtt
+ restricted-aws-aws-c-sdkutils
+ restricted-aws-aws-crt-cpp
)
target_sources(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE
- ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3ARN.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Client.cpp
- ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Endpoint.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3ClientConfiguration.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3EndpointProvider.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3EndpointRules.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3ErrorMarshaller.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Errors.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Request.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AbortIncompleteMultipartUpload.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AbortMultipartUploadRequest.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AbortMultipartUploadResult.cpp
@@ -79,6 +98,9 @@ target_sources(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CORSRule.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CSVInput.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CSVOutput.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Checksum.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ChecksumAlgorithm.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ChecksumMode.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CloudFunctionConfiguration.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CommonPrefix.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CompleteMultipartUploadRequest.cpp
@@ -129,6 +151,7 @@ target_sources(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Error.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ErrorDocument.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Event.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/EventBridgeConfiguration.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ExistingObjectReplication.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ExistingObjectReplicationStatus.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ExpirationStatus.cpp
@@ -178,6 +201,9 @@ target_sources(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketWebsiteResult.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAclRequest.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAclResult.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAttributesParts.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAttributesRequest.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAttributesResult.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectLegalHoldRequest.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectLegalHoldResult.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectLockConfigurationRequest.cpp
@@ -262,6 +288,7 @@ target_sources(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NotificationConfigurationDeprecated.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NotificationConfigurationFilter.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Object.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectAttributes.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectCannedACL.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectIdentifier.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockConfiguration.cpp
@@ -273,6 +300,7 @@ target_sources(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockRetentionMode.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockRule.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectOwnership.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectPart.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectStorageClass.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectVersion.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectVersionStorageClass.cpp
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/CMakeLists.linux-x86_64.txt b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/CMakeLists.linux-x86_64.txt
index 114aa69426..2fdc7856d5 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/CMakeLists.linux-x86_64.txt
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/CMakeLists.linux-x86_64.txt
@@ -9,29 +9,41 @@
add_library(libs-aws-sdk-cpp-aws-cpp-sdk-s3)
target_compile_options(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE
+ -DAWS_AUTH_USE_IMPORT_EXPORT
-DAWS_CAL_USE_IMPORT_EXPORT
-DAWS_CHECKSUMS_USE_IMPORT_EXPORT
-DAWS_COMMON_USE_IMPORT_EXPORT
+ -DAWS_COMPRESSION_USE_IMPORT_EXPORT
+ -DAWS_CRT_CPP_USE_IMPORT_EXPORT
-DAWS_EVENT_STREAM_USE_IMPORT_EXPORT
+ -DAWS_HTTP_USE_IMPORT_EXPORT
-DAWS_IO_USE_IMPORT_EXPORT
+ -DAWS_MQTT_USE_IMPORT_EXPORT
+ -DAWS_MQTT_WITH_WEBSOCKETS
+ -DAWS_S3_USE_IMPORT_EXPORT
+ -DAWS_SDKUTILS_USE_IMPORT_EXPORT
-DAWS_SDK_VERSION_MAJOR=1
- -DAWS_SDK_VERSION_MINOR=8
- -DAWS_SDK_VERSION_PATCH=186
+ -DAWS_SDK_VERSION_MINOR=11
+ -DAWS_SDK_VERSION_PATCH=37
+ -DAWS_TEST_REGION=US_EAST_1
-DAWS_USE_EPOLL
+ -DENABLED_REQUEST_COMPRESSION
+ -DENABLED_ZLIB_REQUEST_COMPRESSION
-DENABLE_CURL_CLIENT
-DENABLE_OPENSSL_ENCRYPTION
-DHAS_PATHCONF
-DHAS_UMASK
- -DS2N_ADX
- -DS2N_BIKE_R3_AVX2
- -DS2N_BIKE_R3_AVX512
- -DS2N_BIKE_R3_PCLMUL
- -DS2N_BIKE_R3_VPCLMUL
+ -DS2N_CLONE_SUPPORTED
-DS2N_CPUID_AVAILABLE
-DS2N_FALL_THROUGH_SUPPORTED
- -DS2N_HAVE_EXECINFO
+ -DS2N_FEATURES_AVAILABLE
-DS2N_KYBER512R3_AVX2_BMI2
- -DS2N_SIKE_P434_R3_ASM
+ -DS2N_LIBCRYPTO_SUPPORTS_EVP_MD5_SHA1_HASH
+ -DS2N_LIBCRYPTO_SUPPORTS_EVP_MD_CTX_SET_PKEY_CTX
+ -DS2N_LIBCRYPTO_SUPPORTS_EVP_RC4
+ -DS2N_MADVISE_SUPPORTED
+ -DS2N_PLATFORM_SUPPORTS_KTLS
+ -DS2N_STACKTRACE
-DS2N___RESTRICT__SUPPORTED
$<IF:$<CXX_COMPILER_ID:MSVC>,,-Wno-everything>
)
@@ -45,15 +57,22 @@ target_link_libraries(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PUBLIC
contrib-libs-linux-headers
contrib-libs-cxxsupp
libs-aws-sdk-cpp-aws-cpp-sdk-core
+ restricted-aws-aws-c-auth
restricted-aws-aws-c-common
restricted-aws-aws-c-event-stream
+ restricted-aws-aws-c-io
+ restricted-aws-aws-c-mqtt
+ restricted-aws-aws-c-sdkutils
+ restricted-aws-aws-crt-cpp
)
target_sources(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE
- ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3ARN.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Client.cpp
- ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Endpoint.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3ClientConfiguration.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3EndpointProvider.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3EndpointRules.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3ErrorMarshaller.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Errors.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Request.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AbortIncompleteMultipartUpload.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AbortMultipartUploadRequest.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AbortMultipartUploadResult.cpp
@@ -79,6 +98,9 @@ target_sources(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CORSRule.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CSVInput.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CSVOutput.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Checksum.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ChecksumAlgorithm.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ChecksumMode.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CloudFunctionConfiguration.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CommonPrefix.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CompleteMultipartUploadRequest.cpp
@@ -129,6 +151,7 @@ target_sources(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Error.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ErrorDocument.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Event.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/EventBridgeConfiguration.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ExistingObjectReplication.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ExistingObjectReplicationStatus.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ExpirationStatus.cpp
@@ -178,6 +201,9 @@ target_sources(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketWebsiteResult.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAclRequest.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAclResult.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAttributesParts.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAttributesRequest.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAttributesResult.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectLegalHoldRequest.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectLegalHoldResult.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectLockConfigurationRequest.cpp
@@ -262,6 +288,7 @@ target_sources(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NotificationConfigurationDeprecated.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NotificationConfigurationFilter.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Object.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectAttributes.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectCannedACL.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectIdentifier.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockConfiguration.cpp
@@ -273,6 +300,7 @@ target_sources(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockRetentionMode.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockRule.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectOwnership.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectPart.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectStorageClass.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectVersion.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectVersionStorageClass.cpp
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/CMakeLists.windows-x86_64.txt b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/CMakeLists.windows-x86_64.txt
index 1b1705649a..42e8df4fa8 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/CMakeLists.windows-x86_64.txt
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/CMakeLists.windows-x86_64.txt
@@ -9,29 +9,41 @@
add_library(libs-aws-sdk-cpp-aws-cpp-sdk-s3)
target_compile_options(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE
+ -DAWS_AUTH_USE_IMPORT_EXPORT
-DAWS_CAL_USE_IMPORT_EXPORT
-DAWS_CHECKSUMS_USE_IMPORT_EXPORT
-DAWS_COMMON_USE_IMPORT_EXPORT
+ -DAWS_COMPRESSION_USE_IMPORT_EXPORT
+ -DAWS_CRT_CPP_USE_IMPORT_EXPORT
-DAWS_EVENT_STREAM_USE_IMPORT_EXPORT
+ -DAWS_HTTP_USE_IMPORT_EXPORT
-DAWS_IO_USE_IMPORT_EXPORT
+ -DAWS_MQTT_USE_IMPORT_EXPORT
+ -DAWS_MQTT_WITH_WEBSOCKETS
+ -DAWS_S3_USE_IMPORT_EXPORT
+ -DAWS_SDKUTILS_USE_IMPORT_EXPORT
-DAWS_SDK_VERSION_MAJOR=1
- -DAWS_SDK_VERSION_MINOR=8
- -DAWS_SDK_VERSION_PATCH=186
+ -DAWS_SDK_VERSION_MINOR=11
+ -DAWS_SDK_VERSION_PATCH=37
+ -DAWS_TEST_REGION=US_EAST_1
-DAWS_USE_EPOLL
+ -DENABLED_REQUEST_COMPRESSION
+ -DENABLED_ZLIB_REQUEST_COMPRESSION
-DENABLE_CURL_CLIENT
-DENABLE_OPENSSL_ENCRYPTION
-DHAS_PATHCONF
-DHAS_UMASK
- -DS2N_ADX
- -DS2N_BIKE_R3_AVX2
- -DS2N_BIKE_R3_AVX512
- -DS2N_BIKE_R3_PCLMUL
- -DS2N_BIKE_R3_VPCLMUL
+ -DS2N_CLONE_SUPPORTED
-DS2N_CPUID_AVAILABLE
-DS2N_FALL_THROUGH_SUPPORTED
- -DS2N_HAVE_EXECINFO
+ -DS2N_FEATURES_AVAILABLE
-DS2N_KYBER512R3_AVX2_BMI2
- -DS2N_SIKE_P434_R3_ASM
+ -DS2N_LIBCRYPTO_SUPPORTS_EVP_MD5_SHA1_HASH
+ -DS2N_LIBCRYPTO_SUPPORTS_EVP_MD_CTX_SET_PKEY_CTX
+ -DS2N_LIBCRYPTO_SUPPORTS_EVP_RC4
+ -DS2N_MADVISE_SUPPORTED
+ -DS2N_PLATFORM_SUPPORTS_KTLS
+ -DS2N_STACKTRACE
-DS2N___RESTRICT__SUPPORTED
$<IF:$<CXX_COMPILER_ID:MSVC>,,-Wno-everything>
)
@@ -44,15 +56,22 @@ target_include_directories(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE
target_link_libraries(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PUBLIC
contrib-libs-cxxsupp
libs-aws-sdk-cpp-aws-cpp-sdk-core
+ restricted-aws-aws-c-auth
restricted-aws-aws-c-common
restricted-aws-aws-c-event-stream
+ restricted-aws-aws-c-io
+ restricted-aws-aws-c-mqtt
+ restricted-aws-aws-c-sdkutils
+ restricted-aws-aws-crt-cpp
)
target_sources(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE
- ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3ARN.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Client.cpp
- ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Endpoint.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3ClientConfiguration.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3EndpointProvider.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3EndpointRules.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3ErrorMarshaller.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Errors.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Request.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AbortIncompleteMultipartUpload.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AbortMultipartUploadRequest.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AbortMultipartUploadResult.cpp
@@ -78,6 +97,9 @@ target_sources(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CORSRule.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CSVInput.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CSVOutput.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Checksum.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ChecksumAlgorithm.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ChecksumMode.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CloudFunctionConfiguration.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CommonPrefix.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CompleteMultipartUploadRequest.cpp
@@ -128,6 +150,7 @@ target_sources(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Error.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ErrorDocument.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Event.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/EventBridgeConfiguration.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ExistingObjectReplication.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ExistingObjectReplicationStatus.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ExpirationStatus.cpp
@@ -177,6 +200,9 @@ target_sources(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketWebsiteResult.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAclRequest.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAclResult.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAttributesParts.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAttributesRequest.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAttributesResult.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectLegalHoldRequest.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectLegalHoldResult.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectLockConfigurationRequest.cpp
@@ -261,6 +287,7 @@ target_sources(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NotificationConfigurationDeprecated.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NotificationConfigurationFilter.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Object.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectAttributes.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectCannedACL.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectIdentifier.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockConfiguration.cpp
@@ -272,6 +299,7 @@ target_sources(libs-aws-sdk-cpp-aws-cpp-sdk-s3 PRIVATE
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockRetentionMode.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockRule.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectOwnership.cpp
+ ${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectPart.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectStorageClass.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectVersion.cpp
${CMAKE_SOURCE_DIR}/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectVersionStorageClass.cpp
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3ARN.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3ARN.h
deleted file mode 100644
index 546f1582b7..0000000000
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3ARN.h
+++ /dev/null
@@ -1,64 +0,0 @@
-/**
- * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
- * SPDX-License-Identifier: Apache-2.0.
- */
-
-#pragma once
-
-#include <aws/s3/S3_EXPORTS.h>
-
-#include <aws/core/client/AWSError.h>
-#include <aws/core/utils/ARN.h>
-#include <aws/s3/S3Errors.h>
-
-namespace Aws
-{
- namespace Utils
- {
- template<typename R, typename E> class Outcome;
- }
-
- namespace S3
- {
- namespace ARNService
- {
- static const char S3[] = "s3";
- static const char S3_OUTPOSTS[] = "s3-outposts";
- static const char S3_OBJECT_LAMBDA[] = "s3-object-lambda";
- }
-
- namespace ARNResourceType
- {
- static const char ACCESSPOINT[] = "accesspoint";
- static const char OUTPOST[] = "outpost";
- }
-
- typedef Aws::Utils::Outcome<bool, Aws::Client::AWSError<S3Errors>> S3ARNOutcome;
-
- class AWS_S3_API S3ARN : public Aws::Utils::ARN
- {
- public:
- S3ARN(const Aws::String& arn);
-
- const Aws::String& GetResourceType() const { return m_resourceType; }
- const Aws::String& GetResourceId() const { return m_resourceId; }
- const Aws::String& GetSubResourceType() const { return m_subResourceType; }
- const Aws::String& GetSubResourceId() const { return m_subResourceId; }
- const Aws::String& GetResourceQualifier() const { return m_resourceQualifier; }
-
- // Check if S3ARN is valid.
- S3ARNOutcome Validate() const;
- // Check if S3ARN is valid, and especially, ARN region should match the region specified.
- S3ARNOutcome Validate(const char* region) const;
-
- private:
- void ParseARNResource();
-
- Aws::String m_resourceType;
- Aws::String m_resourceId;
- Aws::String m_subResourceType;
- Aws::String m_subResourceId;
- Aws::String m_resourceQualifier;
- };
- }
-}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3Client.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3Client.h
index 5b3d798fcf..6d66c3b6c9 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3Client.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3Client.h
@@ -5,393 +5,25 @@
#pragma once
#include <aws/s3/S3_EXPORTS.h>
-#include <aws/s3/S3Errors.h>
-#include <aws/core/client/AWSError.h>
#include <aws/core/client/ClientConfiguration.h>
#include <aws/core/client/AWSClient.h>
+#include <aws/core/client/AWSClientAsyncCRTP.h>
#include <aws/core/auth/AWSAuthSigner.h>
-#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/xml/XmlSerializer.h>
#include <aws/core/utils/DNS.h>
-#include <aws/s3/model/AbortMultipartUploadResult.h>
-#include <aws/s3/model/CompleteMultipartUploadResult.h>
-#include <aws/s3/model/CopyObjectResult.h>
-#include <aws/s3/model/CreateBucketResult.h>
-#include <aws/s3/model/CreateMultipartUploadResult.h>
-#include <aws/s3/model/DeleteObjectResult.h>
-#include <aws/s3/model/DeleteObjectTaggingResult.h>
-#include <aws/s3/model/DeleteObjectsResult.h>
-#include <aws/s3/model/GetBucketAccelerateConfigurationResult.h>
-#include <aws/s3/model/GetBucketAclResult.h>
-#include <aws/s3/model/GetBucketAnalyticsConfigurationResult.h>
-#include <aws/s3/model/GetBucketCorsResult.h>
-#include <aws/s3/model/GetBucketEncryptionResult.h>
-#include <aws/s3/model/GetBucketIntelligentTieringConfigurationResult.h>
-#include <aws/s3/model/GetBucketInventoryConfigurationResult.h>
-#include <aws/s3/model/GetBucketLifecycleConfigurationResult.h>
-#include <aws/s3/model/GetBucketLocationResult.h>
-#include <aws/s3/model/GetBucketLoggingResult.h>
-#include <aws/s3/model/GetBucketMetricsConfigurationResult.h>
-#include <aws/s3/model/GetBucketNotificationConfigurationResult.h>
-#include <aws/s3/model/GetBucketOwnershipControlsResult.h>
-#include <aws/s3/model/GetBucketPolicyResult.h>
-#include <aws/s3/model/GetBucketPolicyStatusResult.h>
-#include <aws/s3/model/GetBucketReplicationResult.h>
-#include <aws/s3/model/GetBucketRequestPaymentResult.h>
-#include <aws/s3/model/GetBucketTaggingResult.h>
-#include <aws/s3/model/GetBucketVersioningResult.h>
-#include <aws/s3/model/GetBucketWebsiteResult.h>
-#include <aws/s3/model/GetObjectResult.h>
-#include <aws/s3/model/GetObjectAclResult.h>
-#include <aws/s3/model/GetObjectLegalHoldResult.h>
-#include <aws/s3/model/GetObjectLockConfigurationResult.h>
-#include <aws/s3/model/GetObjectRetentionResult.h>
-#include <aws/s3/model/GetObjectTaggingResult.h>
-#include <aws/s3/model/GetObjectTorrentResult.h>
-#include <aws/s3/model/GetPublicAccessBlockResult.h>
-#include <aws/s3/model/HeadObjectResult.h>
-#include <aws/s3/model/ListBucketAnalyticsConfigurationsResult.h>
-#include <aws/s3/model/ListBucketIntelligentTieringConfigurationsResult.h>
-#include <aws/s3/model/ListBucketInventoryConfigurationsResult.h>
-#include <aws/s3/model/ListBucketMetricsConfigurationsResult.h>
-#include <aws/s3/model/ListBucketsResult.h>
-#include <aws/s3/model/ListMultipartUploadsResult.h>
-#include <aws/s3/model/ListObjectVersionsResult.h>
-#include <aws/s3/model/ListObjectsResult.h>
-#include <aws/s3/model/ListObjectsV2Result.h>
-#include <aws/s3/model/ListPartsResult.h>
-#include <aws/s3/model/PutObjectResult.h>
-#include <aws/s3/model/PutObjectAclResult.h>
-#include <aws/s3/model/PutObjectLegalHoldResult.h>
-#include <aws/s3/model/PutObjectLockConfigurationResult.h>
-#include <aws/s3/model/PutObjectRetentionResult.h>
-#include <aws/s3/model/PutObjectTaggingResult.h>
-#include <aws/s3/model/RestoreObjectResult.h>
-#include <aws/s3/model/UploadPartResult.h>
-#include <aws/s3/model/UploadPartCopyResult.h>
-#include <aws/core/NoResult.h>
-#include <aws/core/client/AsyncCallerContext.h>
-#include <aws/core/http/HttpTypes.h>
-#include <future>
-#include <functional>
-namespace Aws
-{
-
- namespace Http
- {
- class HttpClient;
- class HttpClientFactory;
- } // namespace Http
-
- namespace Utils
- {
- template< typename R, typename E> class Outcome;
-
- namespace Threading
- {
- class Executor;
- } // namespace Threading
-
- namespace Xml
- {
- class XmlDocument;
- } // namespace Xml
- } // namespace Utils
+#include <aws/s3/S3ServiceClientModel.h>
- namespace Auth
- {
- class AWSCredentials;
- class AWSCredentialsProvider;
- } // namespace Auth
-
- namespace Client
- {
- class RetryStrategy;
- } // namespace Client
+// TODO: temporary fix for naming conflicts on Windows.
+#ifdef _WIN32
+#ifdef GetObject
+#undef GetObject
+#endif
+#endif
+namespace Aws
+{
namespace S3
{
- namespace Model
- {
- class AbortMultipartUploadRequest;
- class CompleteMultipartUploadRequest;
- class CopyObjectRequest;
- class CreateBucketRequest;
- class CreateMultipartUploadRequest;
- class DeleteBucketRequest;
- class DeleteBucketAnalyticsConfigurationRequest;
- class DeleteBucketCorsRequest;
- class DeleteBucketEncryptionRequest;
- class DeleteBucketIntelligentTieringConfigurationRequest;
- class DeleteBucketInventoryConfigurationRequest;
- class DeleteBucketLifecycleRequest;
- class DeleteBucketMetricsConfigurationRequest;
- class DeleteBucketOwnershipControlsRequest;
- class DeleteBucketPolicyRequest;
- class DeleteBucketReplicationRequest;
- class DeleteBucketTaggingRequest;
- class DeleteBucketWebsiteRequest;
- class DeleteObjectRequest;
- class DeleteObjectTaggingRequest;
- class DeleteObjectsRequest;
- class DeletePublicAccessBlockRequest;
- class GetBucketAccelerateConfigurationRequest;
- class GetBucketAclRequest;
- class GetBucketAnalyticsConfigurationRequest;
- class GetBucketCorsRequest;
- class GetBucketEncryptionRequest;
- class GetBucketIntelligentTieringConfigurationRequest;
- class GetBucketInventoryConfigurationRequest;
- class GetBucketLifecycleConfigurationRequest;
- class GetBucketLocationRequest;
- class GetBucketLoggingRequest;
- class GetBucketMetricsConfigurationRequest;
- class GetBucketNotificationConfigurationRequest;
- class GetBucketOwnershipControlsRequest;
- class GetBucketPolicyRequest;
- class GetBucketPolicyStatusRequest;
- class GetBucketReplicationRequest;
- class GetBucketRequestPaymentRequest;
- class GetBucketTaggingRequest;
- class GetBucketVersioningRequest;
- class GetBucketWebsiteRequest;
- class GetObjectRequest;
- class GetObjectAclRequest;
- class GetObjectLegalHoldRequest;
- class GetObjectLockConfigurationRequest;
- class GetObjectRetentionRequest;
- class GetObjectTaggingRequest;
- class GetObjectTorrentRequest;
- class GetPublicAccessBlockRequest;
- class HeadBucketRequest;
- class HeadObjectRequest;
- class ListBucketAnalyticsConfigurationsRequest;
- class ListBucketIntelligentTieringConfigurationsRequest;
- class ListBucketInventoryConfigurationsRequest;
- class ListBucketMetricsConfigurationsRequest;
- class ListMultipartUploadsRequest;
- class ListObjectVersionsRequest;
- class ListObjectsRequest;
- class ListObjectsV2Request;
- class ListPartsRequest;
- class PutBucketAccelerateConfigurationRequest;
- class PutBucketAclRequest;
- class PutBucketAnalyticsConfigurationRequest;
- class PutBucketCorsRequest;
- class PutBucketEncryptionRequest;
- class PutBucketIntelligentTieringConfigurationRequest;
- class PutBucketInventoryConfigurationRequest;
- class PutBucketLifecycleConfigurationRequest;
- class PutBucketLoggingRequest;
- class PutBucketMetricsConfigurationRequest;
- class PutBucketNotificationConfigurationRequest;
- class PutBucketOwnershipControlsRequest;
- class PutBucketPolicyRequest;
- class PutBucketReplicationRequest;
- class PutBucketRequestPaymentRequest;
- class PutBucketTaggingRequest;
- class PutBucketVersioningRequest;
- class PutBucketWebsiteRequest;
- class PutObjectRequest;
- class PutObjectAclRequest;
- class PutObjectLegalHoldRequest;
- class PutObjectLockConfigurationRequest;
- class PutObjectRetentionRequest;
- class PutObjectTaggingRequest;
- class PutPublicAccessBlockRequest;
- class RestoreObjectRequest;
- class SelectObjectContentRequest;
- class UploadPartRequest;
- class UploadPartCopyRequest;
- class WriteGetObjectResponseRequest;
-
- typedef Aws::Utils::Outcome<AbortMultipartUploadResult, S3Error> AbortMultipartUploadOutcome;
- typedef Aws::Utils::Outcome<CompleteMultipartUploadResult, S3Error> CompleteMultipartUploadOutcome;
- typedef Aws::Utils::Outcome<CopyObjectResult, S3Error> CopyObjectOutcome;
- typedef Aws::Utils::Outcome<CreateBucketResult, S3Error> CreateBucketOutcome;
- typedef Aws::Utils::Outcome<CreateMultipartUploadResult, S3Error> CreateMultipartUploadOutcome;
- typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> DeleteBucketOutcome;
- typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> DeleteBucketAnalyticsConfigurationOutcome;
- typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> DeleteBucketCorsOutcome;
- typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> DeleteBucketEncryptionOutcome;
- typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> DeleteBucketIntelligentTieringConfigurationOutcome;
- typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> DeleteBucketInventoryConfigurationOutcome;
- typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> DeleteBucketLifecycleOutcome;
- typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> DeleteBucketMetricsConfigurationOutcome;
- typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> DeleteBucketOwnershipControlsOutcome;
- typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> DeleteBucketPolicyOutcome;
- typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> DeleteBucketReplicationOutcome;
- typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> DeleteBucketTaggingOutcome;
- typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> DeleteBucketWebsiteOutcome;
- typedef Aws::Utils::Outcome<DeleteObjectResult, S3Error> DeleteObjectOutcome;
- typedef Aws::Utils::Outcome<DeleteObjectTaggingResult, S3Error> DeleteObjectTaggingOutcome;
- typedef Aws::Utils::Outcome<DeleteObjectsResult, S3Error> DeleteObjectsOutcome;
- typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> DeletePublicAccessBlockOutcome;
- typedef Aws::Utils::Outcome<GetBucketAccelerateConfigurationResult, S3Error> GetBucketAccelerateConfigurationOutcome;
- typedef Aws::Utils::Outcome<GetBucketAclResult, S3Error> GetBucketAclOutcome;
- typedef Aws::Utils::Outcome<GetBucketAnalyticsConfigurationResult, S3Error> GetBucketAnalyticsConfigurationOutcome;
- typedef Aws::Utils::Outcome<GetBucketCorsResult, S3Error> GetBucketCorsOutcome;
- typedef Aws::Utils::Outcome<GetBucketEncryptionResult, S3Error> GetBucketEncryptionOutcome;
- typedef Aws::Utils::Outcome<GetBucketIntelligentTieringConfigurationResult, S3Error> GetBucketIntelligentTieringConfigurationOutcome;
- typedef Aws::Utils::Outcome<GetBucketInventoryConfigurationResult, S3Error> GetBucketInventoryConfigurationOutcome;
- typedef Aws::Utils::Outcome<GetBucketLifecycleConfigurationResult, S3Error> GetBucketLifecycleConfigurationOutcome;
- typedef Aws::Utils::Outcome<GetBucketLocationResult, S3Error> GetBucketLocationOutcome;
- typedef Aws::Utils::Outcome<GetBucketLoggingResult, S3Error> GetBucketLoggingOutcome;
- typedef Aws::Utils::Outcome<GetBucketMetricsConfigurationResult, S3Error> GetBucketMetricsConfigurationOutcome;
- typedef Aws::Utils::Outcome<GetBucketNotificationConfigurationResult, S3Error> GetBucketNotificationConfigurationOutcome;
- typedef Aws::Utils::Outcome<GetBucketOwnershipControlsResult, S3Error> GetBucketOwnershipControlsOutcome;
- typedef Aws::Utils::Outcome<GetBucketPolicyResult, S3Error> GetBucketPolicyOutcome;
- typedef Aws::Utils::Outcome<GetBucketPolicyStatusResult, S3Error> GetBucketPolicyStatusOutcome;
- typedef Aws::Utils::Outcome<GetBucketReplicationResult, S3Error> GetBucketReplicationOutcome;
- typedef Aws::Utils::Outcome<GetBucketRequestPaymentResult, S3Error> GetBucketRequestPaymentOutcome;
- typedef Aws::Utils::Outcome<GetBucketTaggingResult, S3Error> GetBucketTaggingOutcome;
- typedef Aws::Utils::Outcome<GetBucketVersioningResult, S3Error> GetBucketVersioningOutcome;
- typedef Aws::Utils::Outcome<GetBucketWebsiteResult, S3Error> GetBucketWebsiteOutcome;
- typedef Aws::Utils::Outcome<GetObjectResult, S3Error> GetObjectOutcome;
- typedef Aws::Utils::Outcome<GetObjectAclResult, S3Error> GetObjectAclOutcome;
- typedef Aws::Utils::Outcome<GetObjectLegalHoldResult, S3Error> GetObjectLegalHoldOutcome;
- typedef Aws::Utils::Outcome<GetObjectLockConfigurationResult, S3Error> GetObjectLockConfigurationOutcome;
- typedef Aws::Utils::Outcome<GetObjectRetentionResult, S3Error> GetObjectRetentionOutcome;
- typedef Aws::Utils::Outcome<GetObjectTaggingResult, S3Error> GetObjectTaggingOutcome;
- typedef Aws::Utils::Outcome<GetObjectTorrentResult, S3Error> GetObjectTorrentOutcome;
- typedef Aws::Utils::Outcome<GetPublicAccessBlockResult, S3Error> GetPublicAccessBlockOutcome;
- typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> HeadBucketOutcome;
- typedef Aws::Utils::Outcome<HeadObjectResult, S3Error> HeadObjectOutcome;
- typedef Aws::Utils::Outcome<ListBucketAnalyticsConfigurationsResult, S3Error> ListBucketAnalyticsConfigurationsOutcome;
- typedef Aws::Utils::Outcome<ListBucketIntelligentTieringConfigurationsResult, S3Error> ListBucketIntelligentTieringConfigurationsOutcome;
- typedef Aws::Utils::Outcome<ListBucketInventoryConfigurationsResult, S3Error> ListBucketInventoryConfigurationsOutcome;
- typedef Aws::Utils::Outcome<ListBucketMetricsConfigurationsResult, S3Error> ListBucketMetricsConfigurationsOutcome;
- typedef Aws::Utils::Outcome<ListBucketsResult, S3Error> ListBucketsOutcome;
- typedef Aws::Utils::Outcome<ListMultipartUploadsResult, S3Error> ListMultipartUploadsOutcome;
- typedef Aws::Utils::Outcome<ListObjectVersionsResult, S3Error> ListObjectVersionsOutcome;
- typedef Aws::Utils::Outcome<ListObjectsResult, S3Error> ListObjectsOutcome;
- typedef Aws::Utils::Outcome<ListObjectsV2Result, S3Error> ListObjectsV2Outcome;
- typedef Aws::Utils::Outcome<ListPartsResult, S3Error> ListPartsOutcome;
- typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> PutBucketAccelerateConfigurationOutcome;
- typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> PutBucketAclOutcome;
- typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> PutBucketAnalyticsConfigurationOutcome;
- typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> PutBucketCorsOutcome;
- typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> PutBucketEncryptionOutcome;
- typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> PutBucketIntelligentTieringConfigurationOutcome;
- typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> PutBucketInventoryConfigurationOutcome;
- typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> PutBucketLifecycleConfigurationOutcome;
- typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> PutBucketLoggingOutcome;
- typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> PutBucketMetricsConfigurationOutcome;
- typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> PutBucketNotificationConfigurationOutcome;
- typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> PutBucketOwnershipControlsOutcome;
- typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> PutBucketPolicyOutcome;
- typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> PutBucketReplicationOutcome;
- typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> PutBucketRequestPaymentOutcome;
- typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> PutBucketTaggingOutcome;
- typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> PutBucketVersioningOutcome;
- typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> PutBucketWebsiteOutcome;
- typedef Aws::Utils::Outcome<PutObjectResult, S3Error> PutObjectOutcome;
- typedef Aws::Utils::Outcome<PutObjectAclResult, S3Error> PutObjectAclOutcome;
- typedef Aws::Utils::Outcome<PutObjectLegalHoldResult, S3Error> PutObjectLegalHoldOutcome;
- typedef Aws::Utils::Outcome<PutObjectLockConfigurationResult, S3Error> PutObjectLockConfigurationOutcome;
- typedef Aws::Utils::Outcome<PutObjectRetentionResult, S3Error> PutObjectRetentionOutcome;
- typedef Aws::Utils::Outcome<PutObjectTaggingResult, S3Error> PutObjectTaggingOutcome;
- typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> PutPublicAccessBlockOutcome;
- typedef Aws::Utils::Outcome<RestoreObjectResult, S3Error> RestoreObjectOutcome;
- typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> SelectObjectContentOutcome;
- typedef Aws::Utils::Outcome<UploadPartResult, S3Error> UploadPartOutcome;
- typedef Aws::Utils::Outcome<UploadPartCopyResult, S3Error> UploadPartCopyOutcome;
- typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> WriteGetObjectResponseOutcome;
-
- typedef std::future<AbortMultipartUploadOutcome> AbortMultipartUploadOutcomeCallable;
- typedef std::future<CompleteMultipartUploadOutcome> CompleteMultipartUploadOutcomeCallable;
- typedef std::future<CopyObjectOutcome> CopyObjectOutcomeCallable;
- typedef std::future<CreateBucketOutcome> CreateBucketOutcomeCallable;
- typedef std::future<CreateMultipartUploadOutcome> CreateMultipartUploadOutcomeCallable;
- typedef std::future<DeleteBucketOutcome> DeleteBucketOutcomeCallable;
- typedef std::future<DeleteBucketAnalyticsConfigurationOutcome> DeleteBucketAnalyticsConfigurationOutcomeCallable;
- typedef std::future<DeleteBucketCorsOutcome> DeleteBucketCorsOutcomeCallable;
- typedef std::future<DeleteBucketEncryptionOutcome> DeleteBucketEncryptionOutcomeCallable;
- typedef std::future<DeleteBucketIntelligentTieringConfigurationOutcome> DeleteBucketIntelligentTieringConfigurationOutcomeCallable;
- typedef std::future<DeleteBucketInventoryConfigurationOutcome> DeleteBucketInventoryConfigurationOutcomeCallable;
- typedef std::future<DeleteBucketLifecycleOutcome> DeleteBucketLifecycleOutcomeCallable;
- typedef std::future<DeleteBucketMetricsConfigurationOutcome> DeleteBucketMetricsConfigurationOutcomeCallable;
- typedef std::future<DeleteBucketOwnershipControlsOutcome> DeleteBucketOwnershipControlsOutcomeCallable;
- typedef std::future<DeleteBucketPolicyOutcome> DeleteBucketPolicyOutcomeCallable;
- typedef std::future<DeleteBucketReplicationOutcome> DeleteBucketReplicationOutcomeCallable;
- typedef std::future<DeleteBucketTaggingOutcome> DeleteBucketTaggingOutcomeCallable;
- typedef std::future<DeleteBucketWebsiteOutcome> DeleteBucketWebsiteOutcomeCallable;
- typedef std::future<DeleteObjectOutcome> DeleteObjectOutcomeCallable;
- typedef std::future<DeleteObjectTaggingOutcome> DeleteObjectTaggingOutcomeCallable;
- typedef std::future<DeleteObjectsOutcome> DeleteObjectsOutcomeCallable;
- typedef std::future<DeletePublicAccessBlockOutcome> DeletePublicAccessBlockOutcomeCallable;
- typedef std::future<GetBucketAccelerateConfigurationOutcome> GetBucketAccelerateConfigurationOutcomeCallable;
- typedef std::future<GetBucketAclOutcome> GetBucketAclOutcomeCallable;
- typedef std::future<GetBucketAnalyticsConfigurationOutcome> GetBucketAnalyticsConfigurationOutcomeCallable;
- typedef std::future<GetBucketCorsOutcome> GetBucketCorsOutcomeCallable;
- typedef std::future<GetBucketEncryptionOutcome> GetBucketEncryptionOutcomeCallable;
- typedef std::future<GetBucketIntelligentTieringConfigurationOutcome> GetBucketIntelligentTieringConfigurationOutcomeCallable;
- typedef std::future<GetBucketInventoryConfigurationOutcome> GetBucketInventoryConfigurationOutcomeCallable;
- typedef std::future<GetBucketLifecycleConfigurationOutcome> GetBucketLifecycleConfigurationOutcomeCallable;
- typedef std::future<GetBucketLocationOutcome> GetBucketLocationOutcomeCallable;
- typedef std::future<GetBucketLoggingOutcome> GetBucketLoggingOutcomeCallable;
- typedef std::future<GetBucketMetricsConfigurationOutcome> GetBucketMetricsConfigurationOutcomeCallable;
- typedef std::future<GetBucketNotificationConfigurationOutcome> GetBucketNotificationConfigurationOutcomeCallable;
- typedef std::future<GetBucketOwnershipControlsOutcome> GetBucketOwnershipControlsOutcomeCallable;
- typedef std::future<GetBucketPolicyOutcome> GetBucketPolicyOutcomeCallable;
- typedef std::future<GetBucketPolicyStatusOutcome> GetBucketPolicyStatusOutcomeCallable;
- typedef std::future<GetBucketReplicationOutcome> GetBucketReplicationOutcomeCallable;
- typedef std::future<GetBucketRequestPaymentOutcome> GetBucketRequestPaymentOutcomeCallable;
- typedef std::future<GetBucketTaggingOutcome> GetBucketTaggingOutcomeCallable;
- typedef std::future<GetBucketVersioningOutcome> GetBucketVersioningOutcomeCallable;
- typedef std::future<GetBucketWebsiteOutcome> GetBucketWebsiteOutcomeCallable;
- typedef std::future<GetObjectOutcome> GetObjectOutcomeCallable;
- typedef std::future<GetObjectAclOutcome> GetObjectAclOutcomeCallable;
- typedef std::future<GetObjectLegalHoldOutcome> GetObjectLegalHoldOutcomeCallable;
- typedef std::future<GetObjectLockConfigurationOutcome> GetObjectLockConfigurationOutcomeCallable;
- typedef std::future<GetObjectRetentionOutcome> GetObjectRetentionOutcomeCallable;
- typedef std::future<GetObjectTaggingOutcome> GetObjectTaggingOutcomeCallable;
- typedef std::future<GetObjectTorrentOutcome> GetObjectTorrentOutcomeCallable;
- typedef std::future<GetPublicAccessBlockOutcome> GetPublicAccessBlockOutcomeCallable;
- typedef std::future<HeadBucketOutcome> HeadBucketOutcomeCallable;
- typedef std::future<HeadObjectOutcome> HeadObjectOutcomeCallable;
- typedef std::future<ListBucketAnalyticsConfigurationsOutcome> ListBucketAnalyticsConfigurationsOutcomeCallable;
- typedef std::future<ListBucketIntelligentTieringConfigurationsOutcome> ListBucketIntelligentTieringConfigurationsOutcomeCallable;
- typedef std::future<ListBucketInventoryConfigurationsOutcome> ListBucketInventoryConfigurationsOutcomeCallable;
- typedef std::future<ListBucketMetricsConfigurationsOutcome> ListBucketMetricsConfigurationsOutcomeCallable;
- typedef std::future<ListBucketsOutcome> ListBucketsOutcomeCallable;
- typedef std::future<ListMultipartUploadsOutcome> ListMultipartUploadsOutcomeCallable;
- typedef std::future<ListObjectVersionsOutcome> ListObjectVersionsOutcomeCallable;
- typedef std::future<ListObjectsOutcome> ListObjectsOutcomeCallable;
- typedef std::future<ListObjectsV2Outcome> ListObjectsV2OutcomeCallable;
- typedef std::future<ListPartsOutcome> ListPartsOutcomeCallable;
- typedef std::future<PutBucketAccelerateConfigurationOutcome> PutBucketAccelerateConfigurationOutcomeCallable;
- typedef std::future<PutBucketAclOutcome> PutBucketAclOutcomeCallable;
- typedef std::future<PutBucketAnalyticsConfigurationOutcome> PutBucketAnalyticsConfigurationOutcomeCallable;
- typedef std::future<PutBucketCorsOutcome> PutBucketCorsOutcomeCallable;
- typedef std::future<PutBucketEncryptionOutcome> PutBucketEncryptionOutcomeCallable;
- typedef std::future<PutBucketIntelligentTieringConfigurationOutcome> PutBucketIntelligentTieringConfigurationOutcomeCallable;
- typedef std::future<PutBucketInventoryConfigurationOutcome> PutBucketInventoryConfigurationOutcomeCallable;
- typedef std::future<PutBucketLifecycleConfigurationOutcome> PutBucketLifecycleConfigurationOutcomeCallable;
- typedef std::future<PutBucketLoggingOutcome> PutBucketLoggingOutcomeCallable;
- typedef std::future<PutBucketMetricsConfigurationOutcome> PutBucketMetricsConfigurationOutcomeCallable;
- typedef std::future<PutBucketNotificationConfigurationOutcome> PutBucketNotificationConfigurationOutcomeCallable;
- typedef std::future<PutBucketOwnershipControlsOutcome> PutBucketOwnershipControlsOutcomeCallable;
- typedef std::future<PutBucketPolicyOutcome> PutBucketPolicyOutcomeCallable;
- typedef std::future<PutBucketReplicationOutcome> PutBucketReplicationOutcomeCallable;
- typedef std::future<PutBucketRequestPaymentOutcome> PutBucketRequestPaymentOutcomeCallable;
- typedef std::future<PutBucketTaggingOutcome> PutBucketTaggingOutcomeCallable;
- typedef std::future<PutBucketVersioningOutcome> PutBucketVersioningOutcomeCallable;
- typedef std::future<PutBucketWebsiteOutcome> PutBucketWebsiteOutcomeCallable;
- typedef std::future<PutObjectOutcome> PutObjectOutcomeCallable;
- typedef std::future<PutObjectAclOutcome> PutObjectAclOutcomeCallable;
- typedef std::future<PutObjectLegalHoldOutcome> PutObjectLegalHoldOutcomeCallable;
- typedef std::future<PutObjectLockConfigurationOutcome> PutObjectLockConfigurationOutcomeCallable;
- typedef std::future<PutObjectRetentionOutcome> PutObjectRetentionOutcomeCallable;
- typedef std::future<PutObjectTaggingOutcome> PutObjectTaggingOutcomeCallable;
- typedef std::future<PutPublicAccessBlockOutcome> PutPublicAccessBlockOutcomeCallable;
- typedef std::future<RestoreObjectOutcome> RestoreObjectOutcomeCallable;
- typedef std::future<SelectObjectContentOutcome> SelectObjectContentOutcomeCallable;
- typedef std::future<UploadPartOutcome> UploadPartOutcomeCallable;
- typedef std::future<UploadPartCopyOutcome> UploadPartCopyOutcomeCallable;
- typedef std::future<WriteGetObjectResponseOutcome> WriteGetObjectResponseOutcomeCallable;
- } // namespace Model
-
namespace SSEHeaders
{
static const char SERVER_SIDE_ENCRYPTION[] = "x-amz-server-side-encryption";
@@ -401,151 +33,75 @@ namespace Aws
static const char SERVER_SIDE_ENCRYPTION_CUSTOMER_KEY_MD5[] = "x-amz-server-side-encryption-customer-key-MD5";
} // SS3Headers
- class S3Client;
-
- typedef std::function<void(const S3Client*, const Model::AbortMultipartUploadRequest&, const Model::AbortMultipartUploadOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > AbortMultipartUploadResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::CompleteMultipartUploadRequest&, const Model::CompleteMultipartUploadOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > CompleteMultipartUploadResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::CopyObjectRequest&, const Model::CopyObjectOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > CopyObjectResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::CreateBucketRequest&, const Model::CreateBucketOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > CreateBucketResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::CreateMultipartUploadRequest&, const Model::CreateMultipartUploadOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > CreateMultipartUploadResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::DeleteBucketRequest&, const Model::DeleteBucketOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteBucketResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::DeleteBucketAnalyticsConfigurationRequest&, const Model::DeleteBucketAnalyticsConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteBucketAnalyticsConfigurationResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::DeleteBucketCorsRequest&, const Model::DeleteBucketCorsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteBucketCorsResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::DeleteBucketEncryptionRequest&, const Model::DeleteBucketEncryptionOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteBucketEncryptionResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::DeleteBucketIntelligentTieringConfigurationRequest&, const Model::DeleteBucketIntelligentTieringConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteBucketIntelligentTieringConfigurationResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::DeleteBucketInventoryConfigurationRequest&, const Model::DeleteBucketInventoryConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteBucketInventoryConfigurationResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::DeleteBucketLifecycleRequest&, const Model::DeleteBucketLifecycleOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteBucketLifecycleResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::DeleteBucketMetricsConfigurationRequest&, const Model::DeleteBucketMetricsConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteBucketMetricsConfigurationResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::DeleteBucketOwnershipControlsRequest&, const Model::DeleteBucketOwnershipControlsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteBucketOwnershipControlsResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::DeleteBucketPolicyRequest&, const Model::DeleteBucketPolicyOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteBucketPolicyResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::DeleteBucketReplicationRequest&, const Model::DeleteBucketReplicationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteBucketReplicationResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::DeleteBucketTaggingRequest&, const Model::DeleteBucketTaggingOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteBucketTaggingResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::DeleteBucketWebsiteRequest&, const Model::DeleteBucketWebsiteOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteBucketWebsiteResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::DeleteObjectRequest&, const Model::DeleteObjectOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteObjectResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::DeleteObjectTaggingRequest&, const Model::DeleteObjectTaggingOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteObjectTaggingResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::DeleteObjectsRequest&, const Model::DeleteObjectsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteObjectsResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::DeletePublicAccessBlockRequest&, const Model::DeletePublicAccessBlockOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeletePublicAccessBlockResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::GetBucketAccelerateConfigurationRequest&, const Model::GetBucketAccelerateConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketAccelerateConfigurationResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::GetBucketAclRequest&, const Model::GetBucketAclOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketAclResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::GetBucketAnalyticsConfigurationRequest&, const Model::GetBucketAnalyticsConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketAnalyticsConfigurationResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::GetBucketCorsRequest&, const Model::GetBucketCorsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketCorsResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::GetBucketEncryptionRequest&, const Model::GetBucketEncryptionOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketEncryptionResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::GetBucketIntelligentTieringConfigurationRequest&, const Model::GetBucketIntelligentTieringConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketIntelligentTieringConfigurationResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::GetBucketInventoryConfigurationRequest&, const Model::GetBucketInventoryConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketInventoryConfigurationResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::GetBucketLifecycleConfigurationRequest&, const Model::GetBucketLifecycleConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketLifecycleConfigurationResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::GetBucketLocationRequest&, const Model::GetBucketLocationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketLocationResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::GetBucketLoggingRequest&, const Model::GetBucketLoggingOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketLoggingResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::GetBucketMetricsConfigurationRequest&, const Model::GetBucketMetricsConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketMetricsConfigurationResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::GetBucketNotificationConfigurationRequest&, const Model::GetBucketNotificationConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketNotificationConfigurationResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::GetBucketOwnershipControlsRequest&, const Model::GetBucketOwnershipControlsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketOwnershipControlsResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::GetBucketPolicyRequest&, Model::GetBucketPolicyOutcome, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketPolicyResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::GetBucketPolicyStatusRequest&, const Model::GetBucketPolicyStatusOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketPolicyStatusResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::GetBucketReplicationRequest&, const Model::GetBucketReplicationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketReplicationResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::GetBucketRequestPaymentRequest&, const Model::GetBucketRequestPaymentOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketRequestPaymentResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::GetBucketTaggingRequest&, const Model::GetBucketTaggingOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketTaggingResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::GetBucketVersioningRequest&, const Model::GetBucketVersioningOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketVersioningResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::GetBucketWebsiteRequest&, const Model::GetBucketWebsiteOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketWebsiteResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::GetObjectRequest&, Model::GetObjectOutcome, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetObjectResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::GetObjectAclRequest&, const Model::GetObjectAclOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetObjectAclResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::GetObjectLegalHoldRequest&, const Model::GetObjectLegalHoldOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetObjectLegalHoldResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::GetObjectLockConfigurationRequest&, const Model::GetObjectLockConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetObjectLockConfigurationResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::GetObjectRetentionRequest&, const Model::GetObjectRetentionOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetObjectRetentionResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::GetObjectTaggingRequest&, const Model::GetObjectTaggingOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetObjectTaggingResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::GetObjectTorrentRequest&, Model::GetObjectTorrentOutcome, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetObjectTorrentResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::GetPublicAccessBlockRequest&, const Model::GetPublicAccessBlockOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetPublicAccessBlockResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::HeadBucketRequest&, const Model::HeadBucketOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > HeadBucketResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::HeadObjectRequest&, const Model::HeadObjectOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > HeadObjectResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::ListBucketAnalyticsConfigurationsRequest&, const Model::ListBucketAnalyticsConfigurationsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListBucketAnalyticsConfigurationsResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::ListBucketIntelligentTieringConfigurationsRequest&, const Model::ListBucketIntelligentTieringConfigurationsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListBucketIntelligentTieringConfigurationsResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::ListBucketInventoryConfigurationsRequest&, const Model::ListBucketInventoryConfigurationsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListBucketInventoryConfigurationsResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::ListBucketMetricsConfigurationsRequest&, const Model::ListBucketMetricsConfigurationsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListBucketMetricsConfigurationsResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::ListBucketsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListBucketsResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::ListMultipartUploadsRequest&, const Model::ListMultipartUploadsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListMultipartUploadsResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::ListObjectVersionsRequest&, const Model::ListObjectVersionsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListObjectVersionsResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::ListObjectsRequest&, const Model::ListObjectsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListObjectsResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::ListObjectsV2Request&, const Model::ListObjectsV2Outcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListObjectsV2ResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::ListPartsRequest&, const Model::ListPartsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListPartsResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::PutBucketAccelerateConfigurationRequest&, const Model::PutBucketAccelerateConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutBucketAccelerateConfigurationResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::PutBucketAclRequest&, const Model::PutBucketAclOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutBucketAclResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::PutBucketAnalyticsConfigurationRequest&, const Model::PutBucketAnalyticsConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutBucketAnalyticsConfigurationResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::PutBucketCorsRequest&, const Model::PutBucketCorsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutBucketCorsResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::PutBucketEncryptionRequest&, const Model::PutBucketEncryptionOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutBucketEncryptionResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::PutBucketIntelligentTieringConfigurationRequest&, const Model::PutBucketIntelligentTieringConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutBucketIntelligentTieringConfigurationResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::PutBucketInventoryConfigurationRequest&, const Model::PutBucketInventoryConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutBucketInventoryConfigurationResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::PutBucketLifecycleConfigurationRequest&, const Model::PutBucketLifecycleConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutBucketLifecycleConfigurationResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::PutBucketLoggingRequest&, const Model::PutBucketLoggingOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutBucketLoggingResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::PutBucketMetricsConfigurationRequest&, const Model::PutBucketMetricsConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutBucketMetricsConfigurationResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::PutBucketNotificationConfigurationRequest&, const Model::PutBucketNotificationConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutBucketNotificationConfigurationResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::PutBucketOwnershipControlsRequest&, const Model::PutBucketOwnershipControlsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutBucketOwnershipControlsResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::PutBucketPolicyRequest&, const Model::PutBucketPolicyOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutBucketPolicyResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::PutBucketReplicationRequest&, const Model::PutBucketReplicationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutBucketReplicationResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::PutBucketRequestPaymentRequest&, const Model::PutBucketRequestPaymentOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutBucketRequestPaymentResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::PutBucketTaggingRequest&, const Model::PutBucketTaggingOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutBucketTaggingResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::PutBucketVersioningRequest&, const Model::PutBucketVersioningOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutBucketVersioningResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::PutBucketWebsiteRequest&, const Model::PutBucketWebsiteOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutBucketWebsiteResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::PutObjectRequest&, const Model::PutObjectOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutObjectResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::PutObjectAclRequest&, const Model::PutObjectAclOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutObjectAclResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::PutObjectLegalHoldRequest&, const Model::PutObjectLegalHoldOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutObjectLegalHoldResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::PutObjectLockConfigurationRequest&, const Model::PutObjectLockConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutObjectLockConfigurationResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::PutObjectRetentionRequest&, const Model::PutObjectRetentionOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutObjectRetentionResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::PutObjectTaggingRequest&, const Model::PutObjectTaggingOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutObjectTaggingResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::PutPublicAccessBlockRequest&, const Model::PutPublicAccessBlockOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutPublicAccessBlockResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::RestoreObjectRequest&, const Model::RestoreObjectOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > RestoreObjectResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::SelectObjectContentRequest&, const Model::SelectObjectContentOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > SelectObjectContentResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::UploadPartRequest&, const Model::UploadPartOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > UploadPartResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::UploadPartCopyRequest&, const Model::UploadPartCopyOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > UploadPartCopyResponseReceivedHandler;
- typedef std::function<void(const S3Client*, const Model::WriteGetObjectResponseRequest&, const Model::WriteGetObjectResponseOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > WriteGetObjectResponseResponseReceivedHandler;
-
- // Get endpoint, signer region and signer service name after computing the endpoint.
- struct ComputeEndpointResult
- {
- ComputeEndpointResult(const Aws::String& endpointName = {}, const Aws::String& region = {}, const Aws::String& serviceName = {}) :
- endpoint(endpointName), signerRegion(region), signerServiceName(serviceName) {}
-
- Aws::String endpoint;
- Aws::String signerRegion;
- Aws::String signerServiceName;
- };
- typedef Aws::Utils::Outcome<ComputeEndpointResult, Aws::Client::AWSError<S3Errors>> ComputeEndpointOutcome;
-
//max expiration for presigned urls in s3 is 7 days.
static const unsigned MAX_EXPIRATION_SECONDS = 7 * 24 * 60 * 60;
/**
* <p/>
*/
- enum class US_EAST_1_REGIONAL_ENDPOINT_OPTION
- {
- NOT_SET,
- LEGACY, //stands for using global endpoint for us-east-1,
- REGIONAL //stands for using regional endpoint for us-east-1
- };
- class AWS_S3_API S3Client : public Aws::Client::AWSXMLClient
+ class AWS_S3_API S3Client : public Aws::Client::AWSXMLClient, public Aws::Client::ClientWithAsyncTemplateMethods<S3Client>
{
public:
typedef Aws::Client::AWSXMLClient BASECLASS;
+ static const char* SERVICE_NAME;
+ static const char* ALLOCATION_TAG;
/**
* Initializes client to use DefaultCredentialProviderChain, with default http client factory, and optional client config. If client config
* is not specified, it will be initialized to default values.
*/
- S3Client(const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration(), Aws::Client::AWSAuthV4Signer::PayloadSigningPolicy signPayloads = Aws::Client::AWSAuthV4Signer::PayloadSigningPolicy::Never, bool useVirtualAddressing = true, Aws::S3::US_EAST_1_REGIONAL_ENDPOINT_OPTION USEast1RegionalEndPointOption = Aws::S3::US_EAST_1_REGIONAL_ENDPOINT_OPTION::NOT_SET);
+ S3Client(const Aws::S3::S3ClientConfiguration& clientConfiguration = Aws::S3::S3ClientConfiguration(),
+ std::shared_ptr<S3EndpointProviderBase> endpointProvider = Aws::MakeShared<S3EndpointProvider>(ALLOCATION_TAG));
/**
* Initializes client to use SimpleAWSCredentialsProvider, with default http client factory, and optional client config. If client config
* is not specified, it will be initialized to default values.
*/
- S3Client(const Aws::Auth::AWSCredentials& credentials, const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration(), Aws::Client::AWSAuthV4Signer::PayloadSigningPolicy signPayloads = Aws::Client::AWSAuthV4Signer::PayloadSigningPolicy::Never, bool useVirtualAddressing = true, Aws::S3::US_EAST_1_REGIONAL_ENDPOINT_OPTION USEast1RegionalEndPointOption = Aws::S3::US_EAST_1_REGIONAL_ENDPOINT_OPTION::NOT_SET);
+ S3Client(const Aws::Auth::AWSCredentials& credentials,
+ std::shared_ptr<S3EndpointProviderBase> endpointProvider = Aws::MakeShared<S3EndpointProvider>(ALLOCATION_TAG),
+ const Aws::S3::S3ClientConfiguration& clientConfiguration = Aws::S3::S3ClientConfiguration());
/**
* Initializes client to use specified credentials provider with specified client config. If http client factory is not supplied,
* the default http client factory will be used
*/
S3Client(const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
- const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration(), Aws::Client::AWSAuthV4Signer::PayloadSigningPolicy signPayloads = Aws::Client::AWSAuthV4Signer::PayloadSigningPolicy::Never, bool useVirtualAddressing = true, Aws::S3::US_EAST_1_REGIONAL_ENDPOINT_OPTION USEast1RegionalEndPointOption = Aws::S3::US_EAST_1_REGIONAL_ENDPOINT_OPTION::NOT_SET);
+ std::shared_ptr<S3EndpointProviderBase> endpointProvider = Aws::MakeShared<S3EndpointProvider>(ALLOCATION_TAG),
+ const Aws::S3::S3ClientConfiguration& clientConfiguration = Aws::S3::S3ClientConfiguration());
- virtual ~S3Client();
+ /* Legacy constructors due deprecation */
+ /**
+ * Initializes client to use DefaultCredentialProviderChain, with default http client factory, and optional client config. If client config
+ * is not specified, it will be initialized to default values.
+ */
+ S3Client(const Aws::Client::ClientConfiguration& clientConfiguration,
+ Aws::Client::AWSAuthV4Signer::PayloadSigningPolicy signPayloads,
+ bool useVirtualAddressing,
+ Aws::S3::US_EAST_1_REGIONAL_ENDPOINT_OPTION USEast1RegionalEndPointOption = Aws::S3::US_EAST_1_REGIONAL_ENDPOINT_OPTION::NOT_SET);
+
+ /**
+ * Initializes client to use SimpleAWSCredentialsProvider, with default http client factory, and optional client config. If client config
+ * is not specified, it will be initialized to default values.
+ */
+ S3Client(const Aws::Auth::AWSCredentials& credentials,
+ const Aws::Client::ClientConfiguration& clientConfiguration,
+ Aws::Client::AWSAuthV4Signer::PayloadSigningPolicy signPayloads,
+ bool useVirtualAddressing,
+ Aws::S3::US_EAST_1_REGIONAL_ENDPOINT_OPTION USEast1RegionalEndPointOption = Aws::S3::US_EAST_1_REGIONAL_ENDPOINT_OPTION::NOT_SET);
+
+ /**
+ * Initializes client to use specified credentials provider with specified client config. If http client factory is not supplied,
+ * the default http client factory will be used
+ */
+ S3Client(const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
+ const Aws::Client::ClientConfiguration& clientConfiguration,
+ Aws::Client::AWSAuthV4Signer::PayloadSigningPolicy signPayloads,
+ bool useVirtualAddressing,
+ Aws::S3::US_EAST_1_REGIONAL_ENDPOINT_OPTION USEast1RegionalEndPointOption = Aws::S3::US_EAST_1_REGIONAL_ENDPOINT_OPTION::NOT_SET);
+
+ /* End of legacy constructors due deprecation */
+ virtual ~S3Client();
/**
* <p>This action aborts a multipart upload. After a multipart upload is aborted,
@@ -578,68 +134,22 @@ namespace Aws
virtual Model::AbortMultipartUploadOutcome AbortMultipartUpload(const Model::AbortMultipartUploadRequest& request) const;
/**
- * <p>This action aborts a multipart upload. After a multipart upload is aborted,
- * no additional parts can be uploaded using that upload ID. The storage consumed
- * by any previously uploaded parts will be freed. However, if any part uploads are
- * currently in progress, those part uploads might or might not succeed. As a
- * result, it might be necessary to abort a given multipart upload multiple times
- * in order to completely free all storage consumed by all parts. </p> <p>To verify
- * that all parts have been removed, so you don't get charged for the part storage,
- * you should call the <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html">ListParts</a>
- * action and ensure that the parts list is empty.</p> <p>For information about
- * permissions required to use the multipart upload, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart
- * Upload and Permissions</a>.</p> <p>The following operations are related to
- * <code>AbortMultipartUpload</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html">CreateMultipartUpload</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html">CompleteMultipartUpload</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html">ListParts</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html">ListMultipartUploads</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/AbortMultipartUpload">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for AbortMultipartUpload that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::AbortMultipartUploadOutcomeCallable AbortMultipartUploadCallable(const Model::AbortMultipartUploadRequest& request) const;
+ template<typename AbortMultipartUploadRequestT = Model::AbortMultipartUploadRequest>
+ Model::AbortMultipartUploadOutcomeCallable AbortMultipartUploadCallable(const AbortMultipartUploadRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::AbortMultipartUpload, request);
+ }
/**
- * <p>This action aborts a multipart upload. After a multipart upload is aborted,
- * no additional parts can be uploaded using that upload ID. The storage consumed
- * by any previously uploaded parts will be freed. However, if any part uploads are
- * currently in progress, those part uploads might or might not succeed. As a
- * result, it might be necessary to abort a given multipart upload multiple times
- * in order to completely free all storage consumed by all parts. </p> <p>To verify
- * that all parts have been removed, so you don't get charged for the part storage,
- * you should call the <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html">ListParts</a>
- * action and ensure that the parts list is empty.</p> <p>For information about
- * permissions required to use the multipart upload, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart
- * Upload and Permissions</a>.</p> <p>The following operations are related to
- * <code>AbortMultipartUpload</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html">CreateMultipartUpload</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html">CompleteMultipartUpload</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html">ListParts</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html">ListMultipartUploads</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/AbortMultipartUpload">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for AbortMultipartUpload that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void AbortMultipartUploadAsync(const Model::AbortMultipartUploadRequest& request, const AbortMultipartUploadResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename AbortMultipartUploadRequestT = Model::AbortMultipartUploadRequest>
+ void AbortMultipartUploadAsync(const AbortMultipartUploadRequestT& request, const AbortMultipartUploadResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::AbortMultipartUpload, request, handler, context);
+ }
/**
* <p>Completes a multipart upload by assembling previously uploaded parts.</p>
@@ -663,7 +173,11 @@ namespace Aws
* if <code>CompleteMultipartUpload</code> fails, applications should be prepared
* to retry the failed requests. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ErrorBestPractices.html">Amazon
- * S3 Error Best Practices</a>.</p> <p>For more information about multipart
+ * S3 Error Best Practices</a>.</p> <p>You cannot use
+ * <code>Content-Type: application/x-www-form-urlencoded</code> with Complete
+ * Multipart Upload requests. Also, if you do not provide a
+ * <code>Content-Type</code> header, <code>CompleteMultipartUpload</code> returns a
+ * 200 OK response.</p> <p>For more information about multipart
* uploads, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html">Uploading
* Objects Using Multipart Upload</a>.</p> <p>For information about permissions
@@ -702,135 +216,29 @@ namespace Aws
virtual Model::CompleteMultipartUploadOutcome CompleteMultipartUpload(const Model::CompleteMultipartUploadRequest& request) const;
/**
- * <p>Completes a multipart upload by assembling previously uploaded parts.</p>
- * <p>You first initiate the multipart upload and then upload all parts using the
- * <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a>
- * operation. After successfully uploading all relevant parts of an upload, you
- * call this action to complete the upload. Upon receiving this request, Amazon S3
- * concatenates all the parts in ascending order by part number to create a new
- * object. In the Complete Multipart Upload request, you must provide the parts
- * list. You must ensure that the parts list is complete. This action concatenates
- * the parts that you provide in the list. For each part in the list, you must
- * provide the part number and the <code>ETag</code> value, returned after that
- * part was uploaded.</p> <p>Processing of a Complete Multipart Upload request
- * could take several minutes to complete. After Amazon S3 begins processing the
- * request, it sends an HTTP response header that specifies a 200 OK response.
- * While processing is in progress, Amazon S3 periodically sends white space
- * characters to keep the connection from timing out. Because a request could fail
- * after the initial 200 OK response has been sent, it is important that you check
- * the response body to determine whether the request succeeded.</p> <p>Note that
- * if <code>CompleteMultipartUpload</code> fails, applications should be prepared
- * to retry the failed requests. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ErrorBestPractices.html">Amazon
- * S3 Error Best Practices</a>.</p> <p>For more information about multipart
- * uploads, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html">Uploading
- * Objects Using Multipart Upload</a>.</p> <p>For information about permissions
- * required to use the multipart upload API, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart
- * Upload and Permissions</a>.</p> <p> <code>CompleteMultipartUpload</code> has the
- * following special errors:</p> <ul> <li> <p>Error code:
- * <code>EntityTooSmall</code> </p> <ul> <li> <p>Description: Your proposed upload
- * is smaller than the minimum allowed object size. Each part must be at least 5 MB
- * in size, except the last part.</p> </li> <li> <p>400 Bad Request</p> </li> </ul>
- * </li> <li> <p>Error code: <code>InvalidPart</code> </p> <ul> <li>
- * <p>Description: One or more of the specified parts could not be found. The part
- * might not have been uploaded, or the specified entity tag might not have matched
- * the part's entity tag.</p> </li> <li> <p>400 Bad Request</p> </li> </ul> </li>
- * <li> <p>Error code: <code>InvalidPartOrder</code> </p> <ul> <li> <p>Description:
- * The list of parts was not in ascending order. The parts list must be specified
- * in order by part number.</p> </li> <li> <p>400 Bad Request</p> </li> </ul> </li>
- * <li> <p>Error code: <code>NoSuchUpload</code> </p> <ul> <li> <p>Description: The
- * specified multipart upload does not exist. The upload ID might be invalid, or
- * the multipart upload might have been aborted or completed.</p> </li> <li> <p>404
- * Not Found</p> </li> </ul> </li> </ul> <p>The following operations are related to
- * <code>CompleteMultipartUpload</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html">CreateMultipartUpload</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html">AbortMultipartUpload</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html">ListParts</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html">ListMultipartUploads</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CompleteMultipartUpload">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for CompleteMultipartUpload that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::CompleteMultipartUploadOutcomeCallable CompleteMultipartUploadCallable(const Model::CompleteMultipartUploadRequest& request) const;
+ template<typename CompleteMultipartUploadRequestT = Model::CompleteMultipartUploadRequest>
+ Model::CompleteMultipartUploadOutcomeCallable CompleteMultipartUploadCallable(const CompleteMultipartUploadRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::CompleteMultipartUpload, request);
+ }
/**
- * <p>Completes a multipart upload by assembling previously uploaded parts.</p>
- * <p>You first initiate the multipart upload and then upload all parts using the
- * <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a>
- * operation. After successfully uploading all relevant parts of an upload, you
- * call this action to complete the upload. Upon receiving this request, Amazon S3
- * concatenates all the parts in ascending order by part number to create a new
- * object. In the Complete Multipart Upload request, you must provide the parts
- * list. You must ensure that the parts list is complete. This action concatenates
- * the parts that you provide in the list. For each part in the list, you must
- * provide the part number and the <code>ETag</code> value, returned after that
- * part was uploaded.</p> <p>Processing of a Complete Multipart Upload request
- * could take several minutes to complete. After Amazon S3 begins processing the
- * request, it sends an HTTP response header that specifies a 200 OK response.
- * While processing is in progress, Amazon S3 periodically sends white space
- * characters to keep the connection from timing out. Because a request could fail
- * after the initial 200 OK response has been sent, it is important that you check
- * the response body to determine whether the request succeeded.</p> <p>Note that
- * if <code>CompleteMultipartUpload</code> fails, applications should be prepared
- * to retry the failed requests. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ErrorBestPractices.html">Amazon
- * S3 Error Best Practices</a>.</p> <p>For more information about multipart
- * uploads, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html">Uploading
- * Objects Using Multipart Upload</a>.</p> <p>For information about permissions
- * required to use the multipart upload API, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart
- * Upload and Permissions</a>.</p> <p> <code>CompleteMultipartUpload</code> has the
- * following special errors:</p> <ul> <li> <p>Error code:
- * <code>EntityTooSmall</code> </p> <ul> <li> <p>Description: Your proposed upload
- * is smaller than the minimum allowed object size. Each part must be at least 5 MB
- * in size, except the last part.</p> </li> <li> <p>400 Bad Request</p> </li> </ul>
- * </li> <li> <p>Error code: <code>InvalidPart</code> </p> <ul> <li>
- * <p>Description: One or more of the specified parts could not be found. The part
- * might not have been uploaded, or the specified entity tag might not have matched
- * the part's entity tag.</p> </li> <li> <p>400 Bad Request</p> </li> </ul> </li>
- * <li> <p>Error code: <code>InvalidPartOrder</code> </p> <ul> <li> <p>Description:
- * The list of parts was not in ascending order. The parts list must be specified
- * in order by part number.</p> </li> <li> <p>400 Bad Request</p> </li> </ul> </li>
- * <li> <p>Error code: <code>NoSuchUpload</code> </p> <ul> <li> <p>Description: The
- * specified multipart upload does not exist. The upload ID might be invalid, or
- * the multipart upload might have been aborted or completed.</p> </li> <li> <p>404
- * Not Found</p> </li> </ul> </li> </ul> <p>The following operations are related to
- * <code>CompleteMultipartUpload</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html">CreateMultipartUpload</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html">AbortMultipartUpload</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html">ListParts</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html">ListMultipartUploads</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CompleteMultipartUpload">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for CompleteMultipartUpload that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void CompleteMultipartUploadAsync(const Model::CompleteMultipartUploadRequest& request, const CompleteMultipartUploadResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename CompleteMultipartUploadRequestT = Model::CompleteMultipartUploadRequest>
+ void CompleteMultipartUploadAsync(const CompleteMultipartUploadRequestT& request, const CompleteMultipartUploadResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::CompleteMultipartUpload, request, handler, context);
+ }
/**
* <p>Creates a copy of an object that is already stored in Amazon S3.</p>
* <p>You can store individual objects of up to 5 TB in Amazon S3. You create a
* copy of your object up to 5 GB in size in a single atomic action using this API.
* However, to copy an object greater than 5 GB, you must use the multipart upload
- * Upload Part - Copy API. For more information, see <a
+ * Upload Part - Copy (UploadPartCopy) API. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/CopyingObjctsUsingRESTMPUapi.html">Copy
* Object Using the REST Multipart Upload API</a>.</p> <p>All copy requests
* must be authenticated. Additionally, you must have <i>read</i> access to the
@@ -870,15 +278,14 @@ namespace Aws
* key to enforce certain metadata behavior when objects are uploaded. For more
* information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/amazon-s3-policy-keys.html">Specifying
- * Conditions in a Policy</a> in the <i>Amazon S3 Developer Guide</i>. For a
- * complete list of Amazon S3-specific condition keys, see <a
+ * Conditions in a Policy</a> in the <i>Amazon S3 User Guide</i>. For a complete
+ * list of Amazon S3-specific condition keys, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/list_amazons3.html">Actions,
- * Resources, and Condition Keys for Amazon S3</a>.</p> <p> <b>
- * <code>x-amz-copy-source-if</code> Headers</b> </p> <p>To only copy an object
- * under certain conditions, such as whether the <code>Etag</code> matches or
- * whether the object was modified before or after a specified date, use the
- * following request parameters:</p> <ul> <li> <p>
- * <code>x-amz-copy-source-if-match</code> </p> </li> <li> <p>
+ * Resources, and Condition Keys for Amazon S3</a>.</p> <p> <b>x-amz-copy-source-if
+ * Headers</b> </p> <p>To only copy an object under certain conditions, such as
+ * whether the <code>Etag</code> matches or whether the object was modified before
+ * or after a specified date, use the following request parameters:</p> <ul> <li>
+ * <p> <code>x-amz-copy-source-if-match</code> </p> </li> <li> <p>
* <code>x-amz-copy-source-if-none-match</code> </p> </li> <li> <p>
* <code>x-amz-copy-source-if-unmodified-since</code> </p> </li> <li> <p>
* <code>x-amz-copy-source-if-modified-since</code> </p> </li> </ul> <p> If both
@@ -899,11 +306,11 @@ namespace Aws
* <code>x-amz-</code> prefix, including <code>x-amz-copy-source</code>, must be
* signed.</p> <p> <b>Server-side encryption</b> </p> <p>When you perform a
* CopyObject operation, you can optionally use the appropriate encryption-related
- * headers to encrypt the object using server-side encryption with AWS managed
- * encryption keys (SSE-S3 or SSE-KMS) or a customer-provided encryption key. With
- * server-side encryption, Amazon S3 encrypts your data as it writes it to disks in
- * its data centers and decrypts the data when you access it. For more information
- * about server-side encryption, see <a
+ * headers to encrypt the object using server-side encryption with Amazon Web
+ * Services managed encryption keys (SSE-S3 or SSE-KMS) or a customer-provided
+ * encryption key. With server-side encryption, Amazon S3 encrypts your data as it
+ * writes it to disks in its data centers and decrypts the data when you access it.
+ * For more information about server-side encryption, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html">Using
* Server-Side Encryption</a>.</p> <p>If a target object uses SSE-KMS, you can
* enable an S3 Bucket Key for the object. For more information, see <a
@@ -912,25 +319,40 @@ namespace Aws
* List (ACL)-Specific Request Headers</b> </p> <p>When copying an object, you can
* optionally use headers to grant ACL-based permissions. By default, all objects
* are private. Only the owner has full access control. When adding a new object,
- * you can grant permissions to individual AWS accounts or to predefined groups
- * defined by Amazon S3. These permissions are then added to the ACL on the object.
- * For more information, see <a
+ * you can grant permissions to individual Amazon Web Services accounts or to
+ * predefined groups defined by Amazon S3. These permissions are then added to the
+ * ACL on the object. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html">Access
* Control List (ACL) Overview</a> and <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-using-rest-api.html">Managing
- * ACLs Using the REST API</a>. </p> <p> <b>Storage Class Options</b> </p> <p>You
- * can use the <code>CopyObject</code> action to change the storage class of an
- * object that is already stored in Amazon S3 using the <code>StorageClass</code>
- * parameter. For more information, see <a
+ * ACLs Using the REST API</a>. </p> <p>If the bucket that you're copying objects
+ * to uses the bucket owner enforced setting for S3 Object Ownership, ACLs are
+ * disabled and no longer affect permissions. Buckets that use this setting only
+ * accept PUT requests that don't specify an ACL or PUT requests that specify
+ * bucket owner full control ACLs, such as the
+ * <code>bucket-owner-full-control</code> canned ACL or an equivalent form of this
+ * ACL expressed in the XML format.</p> <p>For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html">
+ * Controlling ownership of objects and disabling ACLs</a> in the <i>Amazon S3 User
+ * Guide</i>.</p> <p>If your bucket uses the bucket owner enforced setting
+ * for Object Ownership, all objects written to the bucket by any account will be
+ * owned by the bucket owner.</p> <p> <b>Checksums</b> </p> <p>When copying
+ * an object, if it has a checksum, that checksum will be copied to the new object
+ * by default. When you copy the object over, you may optionally specify a
+ * different checksum algorithm to use with the
+ * <code>x-amz-checksum-algorithm</code> header.</p> <p> <b>Storage Class
+ * Options</b> </p> <p>You can use the <code>CopyObject</code> action to change the
+ * storage class of an object that is already stored in Amazon S3 using the
+ * <code>StorageClass</code> parameter. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
- * Classes</a> in the <i>Amazon S3 Service Developer Guide</i>.</p> <p>
- * <b>Versioning</b> </p> <p>By default, <code>x-amz-copy-source</code> identifies
- * the current version of an object to copy. If the current version is a delete
- * marker, Amazon S3 behaves as if the object was deleted. To copy a different
- * version, use the <code>versionId</code> subresource.</p> <p>If you enable
- * versioning on the target bucket, Amazon S3 generates a unique version ID for the
- * object being copied. This version ID is different from the version ID of the
- * source object. Amazon S3 returns the version ID of the copied object in the
+ * Classes</a> in the <i>Amazon S3 User Guide</i>.</p> <p> <b>Versioning</b> </p>
+ * <p>By default, <code>x-amz-copy-source</code> identifies the current version of
+ * an object to copy. If the current version is a delete marker, Amazon S3 behaves
+ * as if the object was deleted. To copy a different version, use the
+ * <code>versionId</code> subresource.</p> <p>If you enable versioning on the
+ * target bucket, Amazon S3 generates a unique version ID for the object being
+ * copied. This version ID is different from the version ID of the source object.
+ * Amazon S3 returns the version ID of the copied object in the
* <code>x-amz-version-id</code> response header in the response.</p> <p>If you do
* not enable versioning or suspend it on the target bucket, the version ID that
* Amazon S3 generates is always null.</p> <p>If the source object's storage class
@@ -951,268 +373,32 @@ namespace Aws
virtual Model::CopyObjectOutcome CopyObject(const Model::CopyObjectRequest& request) const;
/**
- * <p>Creates a copy of an object that is already stored in Amazon S3.</p>
- * <p>You can store individual objects of up to 5 TB in Amazon S3. You create a
- * copy of your object up to 5 GB in size in a single atomic action using this API.
- * However, to copy an object greater than 5 GB, you must use the multipart upload
- * Upload Part - Copy API. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/CopyingObjctsUsingRESTMPUapi.html">Copy
- * Object Using the REST Multipart Upload API</a>.</p> <p>All copy requests
- * must be authenticated. Additionally, you must have <i>read</i> access to the
- * source object and <i>write</i> access to the destination bucket. For more
- * information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html">REST
- * Authentication</a>. Both the Region that you want to copy the object from and
- * the Region that you want to copy the object to must be enabled for your
- * account.</p> <p>A copy request might return an error when Amazon S3 receives the
- * copy request or while Amazon S3 is copying the files. If the error occurs before
- * the copy action starts, you receive a standard Amazon S3 error. If the error
- * occurs during the copy operation, the error response is embedded in the
- * <code>200 OK</code> response. This means that a <code>200 OK</code> response can
- * contain either a success or an error. Design your application to parse the
- * contents of the response and handle it appropriately.</p> <p>If the copy is
- * successful, you receive a response with information about the copied object.</p>
- * <p>If the request is an HTTP 1.1 request, the response is chunk encoded.
- * If it were not, it would not contain the content-length, and you would need to
- * read the entire body.</p> <p>The copy request charge is based on the
- * storage class and Region that you specify for the destination object. For
- * pricing information, see <a href="http://aws.amazon.com/s3/pricing/">Amazon S3
- * pricing</a>.</p> <p>Amazon S3 transfer acceleration does not support
- * cross-Region copies. If you request a cross-Region copy using a transfer
- * acceleration endpoint, you get a 400 <code>Bad Request</code> error. For more
- * information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/transfer-acceleration.html">Transfer
- * Acceleration</a>.</p> <p> <b>Metadata</b> </p> <p>When copying an
- * object, you can preserve all metadata (default) or specify new metadata.
- * However, the ACL is not preserved and is set to private for the user making the
- * request. To override the default ACL setting, specify a new ACL when generating
- * a copy request. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3_ACLs_UsingACLs.html">Using
- * ACLs</a>. </p> <p>To specify whether you want the object metadata copied from
- * the source object or replaced with metadata provided in the request, you can
- * optionally add the <code>x-amz-metadata-directive</code> header. When you grant
- * permissions, you can use the <code>s3:x-amz-metadata-directive</code> condition
- * key to enforce certain metadata behavior when objects are uploaded. For more
- * information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/amazon-s3-policy-keys.html">Specifying
- * Conditions in a Policy</a> in the <i>Amazon S3 Developer Guide</i>. For a
- * complete list of Amazon S3-specific condition keys, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/list_amazons3.html">Actions,
- * Resources, and Condition Keys for Amazon S3</a>.</p> <p> <b>
- * <code>x-amz-copy-source-if</code> Headers</b> </p> <p>To only copy an object
- * under certain conditions, such as whether the <code>Etag</code> matches or
- * whether the object was modified before or after a specified date, use the
- * following request parameters:</p> <ul> <li> <p>
- * <code>x-amz-copy-source-if-match</code> </p> </li> <li> <p>
- * <code>x-amz-copy-source-if-none-match</code> </p> </li> <li> <p>
- * <code>x-amz-copy-source-if-unmodified-since</code> </p> </li> <li> <p>
- * <code>x-amz-copy-source-if-modified-since</code> </p> </li> </ul> <p> If both
- * the <code>x-amz-copy-source-if-match</code> and
- * <code>x-amz-copy-source-if-unmodified-since</code> headers are present in the
- * request and evaluate as follows, Amazon S3 returns <code>200 OK</code> and
- * copies the data:</p> <ul> <li> <p> <code>x-amz-copy-source-if-match</code>
- * condition evaluates to true</p> </li> <li> <p>
- * <code>x-amz-copy-source-if-unmodified-since</code> condition evaluates to
- * false</p> </li> </ul> <p>If both the
- * <code>x-amz-copy-source-if-none-match</code> and
- * <code>x-amz-copy-source-if-modified-since</code> headers are present in the
- * request and evaluate as follows, Amazon S3 returns the <code>412 Precondition
- * Failed</code> response code:</p> <ul> <li> <p>
- * <code>x-amz-copy-source-if-none-match</code> condition evaluates to false</p>
- * </li> <li> <p> <code>x-amz-copy-source-if-modified-since</code> condition
- * evaluates to true</p> </li> </ul> <p>All headers with the
- * <code>x-amz-</code> prefix, including <code>x-amz-copy-source</code>, must be
- * signed.</p> <p> <b>Server-side encryption</b> </p> <p>When you perform a
- * CopyObject operation, you can optionally use the appropriate encryption-related
- * headers to encrypt the object using server-side encryption with AWS managed
- * encryption keys (SSE-S3 or SSE-KMS) or a customer-provided encryption key. With
- * server-side encryption, Amazon S3 encrypts your data as it writes it to disks in
- * its data centers and decrypts the data when you access it. For more information
- * about server-side encryption, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html">Using
- * Server-Side Encryption</a>.</p> <p>If a target object uses SSE-KMS, you can
- * enable an S3 Bucket Key for the object. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html">Amazon S3
- * Bucket Keys</a> in the <i>Amazon S3 User Guide</i>.</p> <p> <b>Access Control
- * List (ACL)-Specific Request Headers</b> </p> <p>When copying an object, you can
- * optionally use headers to grant ACL-based permissions. By default, all objects
- * are private. Only the owner has full access control. When adding a new object,
- * you can grant permissions to individual AWS accounts or to predefined groups
- * defined by Amazon S3. These permissions are then added to the ACL on the object.
- * For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html">Access
- * Control List (ACL) Overview</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-using-rest-api.html">Managing
- * ACLs Using the REST API</a>. </p> <p> <b>Storage Class Options</b> </p> <p>You
- * can use the <code>CopyObject</code> action to change the storage class of an
- * object that is already stored in Amazon S3 using the <code>StorageClass</code>
- * parameter. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
- * Classes</a> in the <i>Amazon S3 Service Developer Guide</i>.</p> <p>
- * <b>Versioning</b> </p> <p>By default, <code>x-amz-copy-source</code> identifies
- * the current version of an object to copy. If the current version is a delete
- * marker, Amazon S3 behaves as if the object was deleted. To copy a different
- * version, use the <code>versionId</code> subresource.</p> <p>If you enable
- * versioning on the target bucket, Amazon S3 generates a unique version ID for the
- * object being copied. This version ID is different from the version ID of the
- * source object. Amazon S3 returns the version ID of the copied object in the
- * <code>x-amz-version-id</code> response header in the response.</p> <p>If you do
- * not enable versioning or suspend it on the target bucket, the version ID that
- * Amazon S3 generates is always null.</p> <p>If the source object's storage class
- * is GLACIER, you must restore a copy of this object before you can use it as a
- * source object for the copy operation. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html">RestoreObject</a>.</p>
- * <p>The following operations are related to <code>CopyObject</code>:</p> <ul>
- * <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html">PutObject</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>
- * </p> </li> </ul> <p>For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/CopyingObjectsExamples.html">Copying
- * Objects</a>.</p><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CopyObject">AWS API
- * Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for CopyObject that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::CopyObjectOutcomeCallable CopyObjectCallable(const Model::CopyObjectRequest& request) const;
+ template<typename CopyObjectRequestT = Model::CopyObjectRequest>
+ Model::CopyObjectOutcomeCallable CopyObjectCallable(const CopyObjectRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::CopyObject, request);
+ }
/**
- * <p>Creates a copy of an object that is already stored in Amazon S3.</p>
- * <p>You can store individual objects of up to 5 TB in Amazon S3. You create a
- * copy of your object up to 5 GB in size in a single atomic action using this API.
- * However, to copy an object greater than 5 GB, you must use the multipart upload
- * Upload Part - Copy API. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/CopyingObjctsUsingRESTMPUapi.html">Copy
- * Object Using the REST Multipart Upload API</a>.</p> <p>All copy requests
- * must be authenticated. Additionally, you must have <i>read</i> access to the
- * source object and <i>write</i> access to the destination bucket. For more
- * information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html">REST
- * Authentication</a>. Both the Region that you want to copy the object from and
- * the Region that you want to copy the object to must be enabled for your
- * account.</p> <p>A copy request might return an error when Amazon S3 receives the
- * copy request or while Amazon S3 is copying the files. If the error occurs before
- * the copy action starts, you receive a standard Amazon S3 error. If the error
- * occurs during the copy operation, the error response is embedded in the
- * <code>200 OK</code> response. This means that a <code>200 OK</code> response can
- * contain either a success or an error. Design your application to parse the
- * contents of the response and handle it appropriately.</p> <p>If the copy is
- * successful, you receive a response with information about the copied object.</p>
- * <p>If the request is an HTTP 1.1 request, the response is chunk encoded.
- * If it were not, it would not contain the content-length, and you would need to
- * read the entire body.</p> <p>The copy request charge is based on the
- * storage class and Region that you specify for the destination object. For
- * pricing information, see <a href="http://aws.amazon.com/s3/pricing/">Amazon S3
- * pricing</a>.</p> <p>Amazon S3 transfer acceleration does not support
- * cross-Region copies. If you request a cross-Region copy using a transfer
- * acceleration endpoint, you get a 400 <code>Bad Request</code> error. For more
- * information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/transfer-acceleration.html">Transfer
- * Acceleration</a>.</p> <p> <b>Metadata</b> </p> <p>When copying an
- * object, you can preserve all metadata (default) or specify new metadata.
- * However, the ACL is not preserved and is set to private for the user making the
- * request. To override the default ACL setting, specify a new ACL when generating
- * a copy request. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3_ACLs_UsingACLs.html">Using
- * ACLs</a>. </p> <p>To specify whether you want the object metadata copied from
- * the source object or replaced with metadata provided in the request, you can
- * optionally add the <code>x-amz-metadata-directive</code> header. When you grant
- * permissions, you can use the <code>s3:x-amz-metadata-directive</code> condition
- * key to enforce certain metadata behavior when objects are uploaded. For more
- * information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/amazon-s3-policy-keys.html">Specifying
- * Conditions in a Policy</a> in the <i>Amazon S3 Developer Guide</i>. For a
- * complete list of Amazon S3-specific condition keys, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/list_amazons3.html">Actions,
- * Resources, and Condition Keys for Amazon S3</a>.</p> <p> <b>
- * <code>x-amz-copy-source-if</code> Headers</b> </p> <p>To only copy an object
- * under certain conditions, such as whether the <code>Etag</code> matches or
- * whether the object was modified before or after a specified date, use the
- * following request parameters:</p> <ul> <li> <p>
- * <code>x-amz-copy-source-if-match</code> </p> </li> <li> <p>
- * <code>x-amz-copy-source-if-none-match</code> </p> </li> <li> <p>
- * <code>x-amz-copy-source-if-unmodified-since</code> </p> </li> <li> <p>
- * <code>x-amz-copy-source-if-modified-since</code> </p> </li> </ul> <p> If both
- * the <code>x-amz-copy-source-if-match</code> and
- * <code>x-amz-copy-source-if-unmodified-since</code> headers are present in the
- * request and evaluate as follows, Amazon S3 returns <code>200 OK</code> and
- * copies the data:</p> <ul> <li> <p> <code>x-amz-copy-source-if-match</code>
- * condition evaluates to true</p> </li> <li> <p>
- * <code>x-amz-copy-source-if-unmodified-since</code> condition evaluates to
- * false</p> </li> </ul> <p>If both the
- * <code>x-amz-copy-source-if-none-match</code> and
- * <code>x-amz-copy-source-if-modified-since</code> headers are present in the
- * request and evaluate as follows, Amazon S3 returns the <code>412 Precondition
- * Failed</code> response code:</p> <ul> <li> <p>
- * <code>x-amz-copy-source-if-none-match</code> condition evaluates to false</p>
- * </li> <li> <p> <code>x-amz-copy-source-if-modified-since</code> condition
- * evaluates to true</p> </li> </ul> <p>All headers with the
- * <code>x-amz-</code> prefix, including <code>x-amz-copy-source</code>, must be
- * signed.</p> <p> <b>Server-side encryption</b> </p> <p>When you perform a
- * CopyObject operation, you can optionally use the appropriate encryption-related
- * headers to encrypt the object using server-side encryption with AWS managed
- * encryption keys (SSE-S3 or SSE-KMS) or a customer-provided encryption key. With
- * server-side encryption, Amazon S3 encrypts your data as it writes it to disks in
- * its data centers and decrypts the data when you access it. For more information
- * about server-side encryption, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html">Using
- * Server-Side Encryption</a>.</p> <p>If a target object uses SSE-KMS, you can
- * enable an S3 Bucket Key for the object. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html">Amazon S3
- * Bucket Keys</a> in the <i>Amazon S3 User Guide</i>.</p> <p> <b>Access Control
- * List (ACL)-Specific Request Headers</b> </p> <p>When copying an object, you can
- * optionally use headers to grant ACL-based permissions. By default, all objects
- * are private. Only the owner has full access control. When adding a new object,
- * you can grant permissions to individual AWS accounts or to predefined groups
- * defined by Amazon S3. These permissions are then added to the ACL on the object.
- * For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html">Access
- * Control List (ACL) Overview</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-using-rest-api.html">Managing
- * ACLs Using the REST API</a>. </p> <p> <b>Storage Class Options</b> </p> <p>You
- * can use the <code>CopyObject</code> action to change the storage class of an
- * object that is already stored in Amazon S3 using the <code>StorageClass</code>
- * parameter. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
- * Classes</a> in the <i>Amazon S3 Service Developer Guide</i>.</p> <p>
- * <b>Versioning</b> </p> <p>By default, <code>x-amz-copy-source</code> identifies
- * the current version of an object to copy. If the current version is a delete
- * marker, Amazon S3 behaves as if the object was deleted. To copy a different
- * version, use the <code>versionId</code> subresource.</p> <p>If you enable
- * versioning on the target bucket, Amazon S3 generates a unique version ID for the
- * object being copied. This version ID is different from the version ID of the
- * source object. Amazon S3 returns the version ID of the copied object in the
- * <code>x-amz-version-id</code> response header in the response.</p> <p>If you do
- * not enable versioning or suspend it on the target bucket, the version ID that
- * Amazon S3 generates is always null.</p> <p>If the source object's storage class
- * is GLACIER, you must restore a copy of this object before you can use it as a
- * source object for the copy operation. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html">RestoreObject</a>.</p>
- * <p>The following operations are related to <code>CopyObject</code>:</p> <ul>
- * <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html">PutObject</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>
- * </p> </li> </ul> <p>For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/CopyingObjectsExamples.html">Copying
- * Objects</a>.</p><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CopyObject">AWS API
- * Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for CopyObject that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void CopyObjectAsync(const Model::CopyObjectRequest& request, const CopyObjectResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename CopyObjectRequestT = Model::CopyObjectRequest>
+ void CopyObjectAsync(const CopyObjectRequestT& request, const CopyObjectResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::CopyObject, request, handler, context);
+ }
/**
* <p>Creates a new S3 bucket. To create a bucket, you must register with Amazon S3
- * and have a valid AWS Access Key ID to authenticate requests. Anonymous requests
- * are never allowed to create buckets. By creating the bucket, you become the
- * bucket owner.</p> <p>Not every string is an acceptable bucket name. For
- * information about bucket naming restrictions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingBucket.html">Working
- * with Amazon S3 buckets</a>. </p> <p>If you want to create an Amazon S3 on
- * Outposts bucket, see <a
+ * and have a valid Amazon Web Services Access Key ID to authenticate requests.
+ * Anonymous requests are never allowed to create buckets. By creating the bucket,
+ * you become the bucket owner.</p> <p>Not every string is an acceptable bucket
+ * name. For information about bucket naming restrictions, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html">Bucket
+ * naming rules</a>.</p> <p>If you want to create an Amazon S3 on Outposts bucket,
+ * see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateBucket.html">Create
* Bucket</a>. </p> <p>By default, the bucket is created in the US East (N.
* Virginia) Region. You can optionally specify a Region in the request body. You
@@ -1229,40 +415,67 @@ namespace Aws
* bucket in a Region other than US East (N. Virginia), your application must be
* able to handle 307 redirect. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/VirtualHosting.html">Virtual
- * hosting of buckets</a>.</p> <p>When creating a bucket using this
- * operation, you can optionally specify the accounts or groups that should be
- * granted specific permissions on the bucket. There are two ways to grant the
- * appropriate permissions using the request headers.</p> <ul> <li> <p>Specify a
- * canned ACL using the <code>x-amz-acl</code> request header. Amazon S3 supports a
- * set of predefined ACLs, known as <i>canned ACLs</i>. Each canned ACL has a
- * predefined set of grantees and permissions. For more information, see <a
+ * hosting of buckets</a>.</p> <p> <b>Access control lists (ACLs)</b> </p>
+ * <p>When creating a bucket using this operation, you can optionally configure the
+ * bucket ACL to specify the accounts or groups that should be granted specific
+ * permissions on the bucket.</p> <p>If your CreateBucket request sets
+ * bucket owner enforced for S3 Object Ownership and specifies a bucket ACL that
+ * provides access to an external Amazon Web Services account, your request fails
+ * with a <code>400</code> error and returns the
+ * <code>InvalidBucketAclWithObjectOwnership</code> error code. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html">Controlling
+ * object ownership</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * <p>There are two ways to grant the appropriate permissions using the request
+ * headers.</p> <ul> <li> <p>Specify a canned ACL using the <code>x-amz-acl</code>
+ * request header. Amazon S3 supports a set of predefined ACLs, known as <i>canned
+ * ACLs</i>. Each canned ACL has a predefined set of grantees and permissions. For
+ * more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL">Canned
* ACL</a>.</p> </li> <li> <p>Specify access permissions explicitly using the
* <code>x-amz-grant-read</code>, <code>x-amz-grant-write</code>,
* <code>x-amz-grant-read-acp</code>, <code>x-amz-grant-write-acp</code>, and
* <code>x-amz-grant-full-control</code> headers. These headers map to the set of
* permissions Amazon S3 supports in an ACL. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html">Access
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html">Access
* control list (ACL) overview</a>.</p> <p>You specify each grantee as a type=value
* pair, where the type is one of the following:</p> <ul> <li> <p> <code>id</code>
- * – if the value specified is the canonical user ID of an AWS account</p> </li>
- * <li> <p> <code>uri</code> – if you are granting permissions to a predefined
- * group</p> </li> <li> <p> <code>emailAddress</code> – if the value specified is
- * the email address of an AWS account</p> <p>Using email addresses to
- * specify a grantee is only supported in the following AWS Regions: </p> <ul> <li>
- * <p>US East (N. Virginia)</p> </li> <li> <p>US West (N. California)</p> </li>
- * <li> <p> US West (Oregon)</p> </li> <li> <p> Asia Pacific (Singapore)</p> </li>
- * <li> <p>Asia Pacific (Sydney)</p> </li> <li> <p>Asia Pacific (Tokyo)</p> </li>
- * <li> <p>Europe (Ireland)</p> </li> <li> <p>South America (São Paulo)</p> </li>
- * </ul> <p>For a list of all the Amazon S3 supported Regions and endpoints, see <a
+ * – if the value specified is the canonical user ID of an Amazon Web Services
+ * account</p> </li> <li> <p> <code>uri</code> – if you are granting permissions to
+ * a predefined group</p> </li> <li> <p> <code>emailAddress</code> – if the value
+ * specified is the email address of an Amazon Web Services account</p>
+ * <p>Using email addresses to specify a grantee is only supported in the following
+ * Amazon Web Services Regions: </p> <ul> <li> <p>US East (N. Virginia)</p> </li>
+ * <li> <p>US West (N. California)</p> </li> <li> <p> US West (Oregon)</p> </li>
+ * <li> <p> Asia Pacific (Singapore)</p> </li> <li> <p>Asia Pacific (Sydney)</p>
+ * </li> <li> <p>Asia Pacific (Tokyo)</p> </li> <li> <p>Europe (Ireland)</p> </li>
+ * <li> <p>South America (São Paulo)</p> </li> </ul> <p>For a list of all the
+ * Amazon S3 supported Regions and endpoints, see <a
* href="https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region">Regions
- * and Endpoints</a> in the AWS General Reference.</p> </li> </ul> <p>For
- * example, the following <code>x-amz-grant-read</code> header grants the AWS
- * accounts identified by account IDs permissions to read object data and its
- * metadata:</p> <p> <code>x-amz-grant-read: id="11112222333", id="444455556666"
- * </code> </p> </li> </ul> <p>You can use either a canned ACL or specify
- * access permissions explicitly. You cannot do both.</p> <p>The following
- * operations are related to <code>CreateBucket</code>:</p> <ul> <li> <p> <a
+ * and Endpoints</a> in the Amazon Web Services General Reference.</p>
+ * </li> </ul> <p>For example, the following <code>x-amz-grant-read</code> header
+ * grants the Amazon Web Services accounts identified by account IDs permissions to
+ * read object data and its metadata:</p> <p> <code>x-amz-grant-read:
+ * id="11112222333", id="444455556666" </code> </p> </li> </ul> <p>You can
+ * use either a canned ACL or specify access permissions explicitly. You cannot do
+ * both.</p> <p> <b>Permissions</b> </p> <p>In addition to
+ * <code>s3:CreateBucket</code>, the following permissions are required when your
+ * CreateBucket includes specific headers:</p> <ul> <li> <p> <b>ACLs</b> - If your
+ * <code>CreateBucket</code> request specifies ACL permissions and the ACL is
+ * public-read, public-read-write, authenticated-read, or if you specify access
+ * permissions explicitly through any other ACL, both <code>s3:CreateBucket</code>
+ * and <code>s3:PutBucketAcl</code> permissions are needed. If the ACL the
+ * <code>CreateBucket</code> request is private or doesn't specify any ACLs, only
+ * <code>s3:CreateBucket</code> permission is needed. </p> </li> <li> <p> <b>Object
+ * Lock</b> - If <code>ObjectLockEnabledForBucket</code> is set to true in your
+ * <code>CreateBucket</code> request,
+ * <code>s3:PutBucketObjectLockConfiguration</code> and
+ * <code>s3:PutBucketVersioning</code> permissions are required.</p> </li> <li> <p>
+ * <b>S3 Object Ownership</b> - If your CreateBucket request includes the the
+ * <code>x-amz-object-ownership</code> header,
+ * <code>s3:PutBucketOwnershipControls</code> permission is required.</p> </li>
+ * </ul> <p>The following operations are related to <code>CreateBucket</code>:</p>
+ * <ul> <li> <p> <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html">PutObject</a>
* </p> </li> <li> <p> <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html">DeleteBucket</a>
@@ -1273,144 +486,22 @@ namespace Aws
virtual Model::CreateBucketOutcome CreateBucket(const Model::CreateBucketRequest& request) const;
/**
- * <p>Creates a new S3 bucket. To create a bucket, you must register with Amazon S3
- * and have a valid AWS Access Key ID to authenticate requests. Anonymous requests
- * are never allowed to create buckets. By creating the bucket, you become the
- * bucket owner.</p> <p>Not every string is an acceptable bucket name. For
- * information about bucket naming restrictions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingBucket.html">Working
- * with Amazon S3 buckets</a>. </p> <p>If you want to create an Amazon S3 on
- * Outposts bucket, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateBucket.html">Create
- * Bucket</a>. </p> <p>By default, the bucket is created in the US East (N.
- * Virginia) Region. You can optionally specify a Region in the request body. You
- * might choose a Region to optimize latency, minimize costs, or address regulatory
- * requirements. For example, if you reside in Europe, you will probably find it
- * advantageous to create buckets in the Europe (Ireland) Region. For more
- * information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingBucket.html#access-bucket-intro">Accessing
- * a bucket</a>.</p> <p>If you send your create bucket request to the
- * <code>s3.amazonaws.com</code> endpoint, the request goes to the us-east-1
- * Region. Accordingly, the signature calculations in Signature Version 4 must use
- * us-east-1 as the Region, even if the location constraint in the request
- * specifies another Region where the bucket is to be created. If you create a
- * bucket in a Region other than US East (N. Virginia), your application must be
- * able to handle 307 redirect. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/VirtualHosting.html">Virtual
- * hosting of buckets</a>.</p> <p>When creating a bucket using this
- * operation, you can optionally specify the accounts or groups that should be
- * granted specific permissions on the bucket. There are two ways to grant the
- * appropriate permissions using the request headers.</p> <ul> <li> <p>Specify a
- * canned ACL using the <code>x-amz-acl</code> request header. Amazon S3 supports a
- * set of predefined ACLs, known as <i>canned ACLs</i>. Each canned ACL has a
- * predefined set of grantees and permissions. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL">Canned
- * ACL</a>.</p> </li> <li> <p>Specify access permissions explicitly using the
- * <code>x-amz-grant-read</code>, <code>x-amz-grant-write</code>,
- * <code>x-amz-grant-read-acp</code>, <code>x-amz-grant-write-acp</code>, and
- * <code>x-amz-grant-full-control</code> headers. These headers map to the set of
- * permissions Amazon S3 supports in an ACL. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html">Access
- * control list (ACL) overview</a>.</p> <p>You specify each grantee as a type=value
- * pair, where the type is one of the following:</p> <ul> <li> <p> <code>id</code>
- * – if the value specified is the canonical user ID of an AWS account</p> </li>
- * <li> <p> <code>uri</code> – if you are granting permissions to a predefined
- * group</p> </li> <li> <p> <code>emailAddress</code> – if the value specified is
- * the email address of an AWS account</p> <p>Using email addresses to
- * specify a grantee is only supported in the following AWS Regions: </p> <ul> <li>
- * <p>US East (N. Virginia)</p> </li> <li> <p>US West (N. California)</p> </li>
- * <li> <p> US West (Oregon)</p> </li> <li> <p> Asia Pacific (Singapore)</p> </li>
- * <li> <p>Asia Pacific (Sydney)</p> </li> <li> <p>Asia Pacific (Tokyo)</p> </li>
- * <li> <p>Europe (Ireland)</p> </li> <li> <p>South America (São Paulo)</p> </li>
- * </ul> <p>For a list of all the Amazon S3 supported Regions and endpoints, see <a
- * href="https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region">Regions
- * and Endpoints</a> in the AWS General Reference.</p> </li> </ul> <p>For
- * example, the following <code>x-amz-grant-read</code> header grants the AWS
- * accounts identified by account IDs permissions to read object data and its
- * metadata:</p> <p> <code>x-amz-grant-read: id="11112222333", id="444455556666"
- * </code> </p> </li> </ul> <p>You can use either a canned ACL or specify
- * access permissions explicitly. You cannot do both.</p> <p>The following
- * operations are related to <code>CreateBucket</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html">PutObject</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html">DeleteBucket</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CreateBucket">AWS API
- * Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for CreateBucket that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::CreateBucketOutcomeCallable CreateBucketCallable(const Model::CreateBucketRequest& request) const;
+ template<typename CreateBucketRequestT = Model::CreateBucketRequest>
+ Model::CreateBucketOutcomeCallable CreateBucketCallable(const CreateBucketRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::CreateBucket, request);
+ }
/**
- * <p>Creates a new S3 bucket. To create a bucket, you must register with Amazon S3
- * and have a valid AWS Access Key ID to authenticate requests. Anonymous requests
- * are never allowed to create buckets. By creating the bucket, you become the
- * bucket owner.</p> <p>Not every string is an acceptable bucket name. For
- * information about bucket naming restrictions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingBucket.html">Working
- * with Amazon S3 buckets</a>. </p> <p>If you want to create an Amazon S3 on
- * Outposts bucket, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateBucket.html">Create
- * Bucket</a>. </p> <p>By default, the bucket is created in the US East (N.
- * Virginia) Region. You can optionally specify a Region in the request body. You
- * might choose a Region to optimize latency, minimize costs, or address regulatory
- * requirements. For example, if you reside in Europe, you will probably find it
- * advantageous to create buckets in the Europe (Ireland) Region. For more
- * information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingBucket.html#access-bucket-intro">Accessing
- * a bucket</a>.</p> <p>If you send your create bucket request to the
- * <code>s3.amazonaws.com</code> endpoint, the request goes to the us-east-1
- * Region. Accordingly, the signature calculations in Signature Version 4 must use
- * us-east-1 as the Region, even if the location constraint in the request
- * specifies another Region where the bucket is to be created. If you create a
- * bucket in a Region other than US East (N. Virginia), your application must be
- * able to handle 307 redirect. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/VirtualHosting.html">Virtual
- * hosting of buckets</a>.</p> <p>When creating a bucket using this
- * operation, you can optionally specify the accounts or groups that should be
- * granted specific permissions on the bucket. There are two ways to grant the
- * appropriate permissions using the request headers.</p> <ul> <li> <p>Specify a
- * canned ACL using the <code>x-amz-acl</code> request header. Amazon S3 supports a
- * set of predefined ACLs, known as <i>canned ACLs</i>. Each canned ACL has a
- * predefined set of grantees and permissions. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL">Canned
- * ACL</a>.</p> </li> <li> <p>Specify access permissions explicitly using the
- * <code>x-amz-grant-read</code>, <code>x-amz-grant-write</code>,
- * <code>x-amz-grant-read-acp</code>, <code>x-amz-grant-write-acp</code>, and
- * <code>x-amz-grant-full-control</code> headers. These headers map to the set of
- * permissions Amazon S3 supports in an ACL. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html">Access
- * control list (ACL) overview</a>.</p> <p>You specify each grantee as a type=value
- * pair, where the type is one of the following:</p> <ul> <li> <p> <code>id</code>
- * – if the value specified is the canonical user ID of an AWS account</p> </li>
- * <li> <p> <code>uri</code> – if you are granting permissions to a predefined
- * group</p> </li> <li> <p> <code>emailAddress</code> – if the value specified is
- * the email address of an AWS account</p> <p>Using email addresses to
- * specify a grantee is only supported in the following AWS Regions: </p> <ul> <li>
- * <p>US East (N. Virginia)</p> </li> <li> <p>US West (N. California)</p> </li>
- * <li> <p> US West (Oregon)</p> </li> <li> <p> Asia Pacific (Singapore)</p> </li>
- * <li> <p>Asia Pacific (Sydney)</p> </li> <li> <p>Asia Pacific (Tokyo)</p> </li>
- * <li> <p>Europe (Ireland)</p> </li> <li> <p>South America (São Paulo)</p> </li>
- * </ul> <p>For a list of all the Amazon S3 supported Regions and endpoints, see <a
- * href="https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region">Regions
- * and Endpoints</a> in the AWS General Reference.</p> </li> </ul> <p>For
- * example, the following <code>x-amz-grant-read</code> header grants the AWS
- * accounts identified by account IDs permissions to read object data and its
- * metadata:</p> <p> <code>x-amz-grant-read: id="11112222333", id="444455556666"
- * </code> </p> </li> </ul> <p>You can use either a canned ACL or specify
- * access permissions explicitly. You cannot do both.</p> <p>The following
- * operations are related to <code>CreateBucket</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html">PutObject</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html">DeleteBucket</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CreateBucket">AWS API
- * Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for CreateBucket that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void CreateBucketAsync(const Model::CreateBucketRequest& request, const CreateBucketResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename CreateBucketRequestT = Model::CreateBucketRequest>
+ void CreateBucketAsync(const CreateBucketRequestT& request, const CreateBucketResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::CreateBucket, request, handler, context);
+ }
/**
* <p>This action initiates a multipart upload and returns an upload ID. This
@@ -1438,33 +529,34 @@ namespace Aws
* sign each request individually. There is nothing special about signing multipart
* upload requests. For more information about signing, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/sig-v4-authenticating-requests.html">Authenticating
- * Requests (AWS Signature Version 4)</a>.</p> <p> After you initiate a
- * multipart upload and upload one or more parts, to stop being charged for storing
- * the uploaded parts, you must either complete or abort the multipart upload.
- * Amazon S3 frees up the space used to store the parts and stop charging you for
- * storing them only after you either complete or abort a multipart upload. </p>
- * <p>You can optionally request server-side encryption. For server-side
- * encryption, Amazon S3 encrypts your data as it writes it to disks in its data
- * centers and decrypts it when you access it. You can provide your own encryption
- * key, or use AWS Key Management Service (AWS KMS) customer master keys (CMKs) or
- * Amazon S3-managed encryption keys. If you choose to provide your own encryption
- * key, the request headers you provide in <a
+ * Requests (Amazon Web Services Signature Version 4)</a>.</p> <p> After you
+ * initiate a multipart upload and upload one or more parts, to stop being charged
+ * for storing the uploaded parts, you must either complete or abort the multipart
+ * upload. Amazon S3 frees up the space used to store the parts and stop charging
+ * you for storing them only after you either complete or abort a multipart upload.
+ * </p> <p>You can optionally request server-side encryption. For
+ * server-side encryption, Amazon S3 encrypts your data as it writes it to disks in
+ * its data centers and decrypts it when you access it. You can provide your own
+ * encryption key, or use Amazon Web Services KMS keys or Amazon S3-managed
+ * encryption keys. If you choose to provide your own encryption key, the request
+ * headers you provide in <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a>
* and <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html">UploadPartCopy</a>
* requests must match the headers you used in the request to initiate the upload
* by using <code>CreateMultipartUpload</code>. </p> <p>To perform a multipart
- * upload with encryption using an AWS KMS CMK, the requester must have permission
- * to the <code>kms:Encrypt</code>, <code>kms:Decrypt</code>,
- * <code>kms:ReEncrypt*</code>, <code>kms:GenerateDataKey*</code>, and
- * <code>kms:DescribeKey</code> actions on the key. These permissions are required
- * because Amazon S3 must decrypt and read data from the encrypted file parts
- * before it completes the multipart upload.</p> <p>If your AWS Identity and Access
- * Management (IAM) user or role is in the same AWS account as the AWS KMS CMK,
- * then you must have these permissions on the key policy. If your IAM user or role
- * belongs to a different account than the key, then you must have the permissions
- * on both the key policy and your IAM user or role.</p> <p> For more information,
- * see <a
+ * upload with encryption using an Amazon Web Services KMS key, the requester must
+ * have permission to the <code>kms:Decrypt</code> and
+ * <code>kms:GenerateDataKey*</code> actions on the key. These permissions are
+ * required because Amazon S3 must decrypt and read data from the encrypted file
+ * parts before it completes the multipart upload. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/mpuoverview.html#mpuAndPermissions">Multipart
+ * upload API and permissions</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If
+ * your Identity and Access Management (IAM) user or role is in the same Amazon Web
+ * Services account as the KMS key, then you must have these permissions on the key
+ * policy. If your IAM user or role belongs to a different account than the key,
+ * then you must have the permissions on both the key policy and your IAM user or
+ * role.</p> <p> For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html">Protecting
* Data Using Server-Side Encryption</a>.</p> <dl> <dt>Access Permissions</dt> <dd>
* <p>When copying an object, you can optionally specify the accounts or groups
@@ -1485,35 +577,37 @@ namespace Aws
* optionally tell Amazon S3 to encrypt data at rest using server-side encryption.
* Server-side encryption is for data encryption at rest. Amazon S3 encrypts your
* data as it writes it to disks in its data centers and decrypts it when you
- * access it. The option you use depends on whether you want to use AWS managed
- * encryption keys or provide your own encryption key. </p> <ul> <li> <p>Use
- * encryption keys managed by Amazon S3 or customer master keys (CMKs) stored in
- * AWS Key Management Service (AWS KMS) – If you want AWS to manage the keys used
- * to encrypt data, specify the following headers in the request.</p> <ul> <li>
- * <p>x-amz-server-side-encryption</p> </li> <li>
- * <p>x-amz-server-side-encryption-aws-kms-key-id</p> </li> <li>
- * <p>x-amz-server-side-encryption-context</p> </li> </ul> <p>If you specify
- * <code>x-amz-server-side-encryption:aws:kms</code>, but don't provide
- * <code>x-amz-server-side-encryption-aws-kms-key-id</code>, Amazon S3 uses the AWS
- * managed CMK in AWS KMS to protect the data.</p> <p>All GET
- * and PUT requests for an object protected by AWS KMS fail if you don't make them
- * with SSL or by using SigV4.</p> <p>For more information about
- * server-side encryption with CMKs stored in AWS KMS (SSE-KMS), see <a
+ * access it. The option you use depends on whether you want to use Amazon Web
+ * Services managed encryption keys or provide your own encryption key. </p> <ul>
+ * <li> <p>Use encryption keys managed by Amazon S3 or customer managed key stored
+ * in Amazon Web Services Key Management Service (Amazon Web Services KMS) – If you
+ * want Amazon Web Services to manage the keys used to encrypt data, specify the
+ * following headers in the request.</p> <ul> <li> <p>
+ * <code>x-amz-server-side-encryption</code> </p> </li> <li> <p>
+ * <code>x-amz-server-side-encryption-aws-kms-key-id</code> </p> </li> <li> <p>
+ * <code>x-amz-server-side-encryption-context</code> </p> </li> </ul> <p>If
+ * you specify <code>x-amz-server-side-encryption:aws:kms</code>, but don't provide
+ * <code>x-amz-server-side-encryption-aws-kms-key-id</code>, Amazon S3 uses the
+ * Amazon Web Services managed key in Amazon Web Services KMS to protect the
+ * data.</p> <p>All GET and PUT requests for an object
+ * protected by Amazon Web Services KMS fail if you don't make them with SSL or by
+ * using SigV4.</p> <p>For more information about server-side
+ * encryption with KMS key (SSE-KMS), see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingKMSEncryption.html">Protecting
- * Data Using Server-Side Encryption with CMKs stored in AWS KMS</a>.</p> </li>
- * <li> <p>Use customer-provided encryption keys – If you want to manage your own
- * encryption keys, provide all the following headers in the request.</p> <ul> <li>
- * <p>x-amz-server-side-encryption-customer-algorithm</p> </li> <li>
- * <p>x-amz-server-side-encryption-customer-key</p> </li> <li>
- * <p>x-amz-server-side-encryption-customer-key-MD5</p> </li> </ul> <p>For more
- * information about server-side encryption with CMKs stored in AWS KMS (SSE-KMS),
+ * Data Using Server-Side Encryption with KMS keys</a>.</p> </li> <li> <p>Use
+ * customer-provided encryption keys – If you want to manage your own encryption
+ * keys, provide all the following headers in the request.</p> <ul> <li> <p>
+ * <code>x-amz-server-side-encryption-customer-algorithm</code> </p> </li> <li> <p>
+ * <code>x-amz-server-side-encryption-customer-key</code> </p> </li> <li> <p>
+ * <code>x-amz-server-side-encryption-customer-key-MD5</code> </p> </li> </ul>
+ * <p>For more information about server-side encryption with KMS keys (SSE-KMS),
* see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingKMSEncryption.html">Protecting
- * Data Using Server-Side Encryption with CMKs stored in AWS KMS</a>.</p> </li>
- * </ul> </dd> <dt>Access-Control-List (ACL)-Specific Request Headers</dt> <dd>
- * <p>You also can use the following access control–related headers with this
- * operation. By default, all objects are private. Only the owner has full access
- * control. When adding a new object, you can grant permissions to individual AWS
+ * Data Using Server-Side Encryption with KMS keys</a>.</p> </li> </ul> </dd>
+ * <dt>Access-Control-List (ACL)-Specific Request Headers</dt> <dd> <p>You also can
+ * use the following access control–related headers with this operation. By
+ * default, all objects are private. Only the owner has full access control. When
+ * adding a new object, you can grant permissions to individual Amazon Web Services
* accounts or to predefined groups defined by Amazon S3. These permissions are
* then added to the access control list (ACL) on the object. For more information,
* see <a
@@ -1525,34 +619,38 @@ namespace Aws
* permissions. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL">Canned
* ACL</a>.</p> </li> <li> <p>Specify access permissions explicitly — To explicitly
- * grant access permissions to specific AWS accounts or groups, use the following
- * headers. Each header maps to specific permissions that Amazon S3 supports in an
- * ACL. For more information, see <a
+ * grant access permissions to specific Amazon Web Services accounts or groups, use
+ * the following headers. Each header maps to specific permissions that Amazon S3
+ * supports in an ACL. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html">Access
* Control List (ACL) Overview</a>. In the header, you specify a list of grantees
* who get the specific permission. To grant permissions explicitly, use:</p> <ul>
- * <li> <p>x-amz-grant-read</p> </li> <li> <p>x-amz-grant-write</p> </li> <li>
- * <p>x-amz-grant-read-acp</p> </li> <li> <p>x-amz-grant-write-acp</p> </li> <li>
- * <p>x-amz-grant-full-control</p> </li> </ul> <p>You specify each grantee as a
- * type=value pair, where the type is one of the following:</p> <ul> <li> <p>
- * <code>id</code> – if the value specified is the canonical user ID of an AWS
- * account</p> </li> <li> <p> <code>uri</code> – if you are granting permissions to
- * a predefined group</p> </li> <li> <p> <code>emailAddress</code> – if the value
- * specified is the email address of an AWS account</p> <p>Using email
- * addresses to specify a grantee is only supported in the following AWS Regions:
- * </p> <ul> <li> <p>US East (N. Virginia)</p> </li> <li> <p>US West (N.
- * California)</p> </li> <li> <p> US West (Oregon)</p> </li> <li> <p> Asia Pacific
- * (Singapore)</p> </li> <li> <p>Asia Pacific (Sydney)</p> </li> <li> <p>Asia
- * Pacific (Tokyo)</p> </li> <li> <p>Europe (Ireland)</p> </li> <li> <p>South
- * America (São Paulo)</p> </li> </ul> <p>For a list of all the Amazon S3 supported
- * Regions and endpoints, see <a
+ * <li> <p> <code>x-amz-grant-read</code> </p> </li> <li> <p>
+ * <code>x-amz-grant-write</code> </p> </li> <li> <p>
+ * <code>x-amz-grant-read-acp</code> </p> </li> <li> <p>
+ * <code>x-amz-grant-write-acp</code> </p> </li> <li> <p>
+ * <code>x-amz-grant-full-control</code> </p> </li> </ul> <p>You specify each
+ * grantee as a type=value pair, where the type is one of the following:</p> <ul>
+ * <li> <p> <code>id</code> – if the value specified is the canonical user ID of an
+ * Amazon Web Services account</p> </li> <li> <p> <code>uri</code> – if you are
+ * granting permissions to a predefined group</p> </li> <li> <p>
+ * <code>emailAddress</code> – if the value specified is the email address of an
+ * Amazon Web Services account</p> <p>Using email addresses to specify a
+ * grantee is only supported in the following Amazon Web Services Regions: </p>
+ * <ul> <li> <p>US East (N. Virginia)</p> </li> <li> <p>US West (N. California)</p>
+ * </li> <li> <p> US West (Oregon)</p> </li> <li> <p> Asia Pacific (Singapore)</p>
+ * </li> <li> <p>Asia Pacific (Sydney)</p> </li> <li> <p>Asia Pacific (Tokyo)</p>
+ * </li> <li> <p>Europe (Ireland)</p> </li> <li> <p>South America (São Paulo)</p>
+ * </li> </ul> <p>For a list of all the Amazon S3 supported Regions and endpoints,
+ * see <a
* href="https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region">Regions
- * and Endpoints</a> in the AWS General Reference.</p> </li> </ul> <p>For
- * example, the following <code>x-amz-grant-read</code> header grants the AWS
- * accounts identified by account IDs permissions to read object data and its
- * metadata:</p> <p> <code>x-amz-grant-read: id="11112222333", id="444455556666"
- * </code> </p> </li> </ul> </dd> </dl> <p>The following operations are related to
- * <code>CreateMultipartUpload</code>:</p> <ul> <li> <p> <a
+ * and Endpoints</a> in the Amazon Web Services General Reference.</p>
+ * </li> </ul> <p>For example, the following <code>x-amz-grant-read</code> header
+ * grants the Amazon Web Services accounts identified by account IDs permissions to
+ * read object data and its metadata:</p> <p> <code>x-amz-grant-read:
+ * id="11112222333", id="444455556666" </code> </p> </li> </ul> </dd> </dl> <p>The
+ * following operations are related to <code>CreateMultipartUpload</code>:</p> <ul>
+ * <li> <p> <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a>
* </p> </li> <li> <p> <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html">CompleteMultipartUpload</a>
@@ -1569,320 +667,22 @@ namespace Aws
virtual Model::CreateMultipartUploadOutcome CreateMultipartUpload(const Model::CreateMultipartUploadRequest& request) const;
/**
- * <p>This action initiates a multipart upload and returns an upload ID. This
- * upload ID is used to associate all of the parts in the specific multipart
- * upload. You specify this upload ID in each of your subsequent upload part
- * requests (see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a>).
- * You also include this upload ID in the final request to either complete or abort
- * the multipart upload request.</p> <p>For more information about multipart
- * uploads, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html">Multipart
- * Upload Overview</a>.</p> <p>If you have configured a lifecycle rule to abort
- * incomplete multipart uploads, the upload must complete within the number of days
- * specified in the bucket lifecycle configuration. Otherwise, the incomplete
- * multipart upload becomes eligible for an abort action and Amazon S3 aborts the
- * multipart upload. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html#mpu-abort-incomplete-mpu-lifecycle-config">Aborting
- * Incomplete Multipart Uploads Using a Bucket Lifecycle Policy</a>.</p> <p>For
- * information about the permissions required to use the multipart upload API, see
- * <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart
- * Upload and Permissions</a>.</p> <p>For request signing, multipart upload is just
- * a series of regular requests. You initiate a multipart upload, send one or more
- * requests to upload parts, and then complete the multipart upload process. You
- * sign each request individually. There is nothing special about signing multipart
- * upload requests. For more information about signing, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/sig-v4-authenticating-requests.html">Authenticating
- * Requests (AWS Signature Version 4)</a>.</p> <p> After you initiate a
- * multipart upload and upload one or more parts, to stop being charged for storing
- * the uploaded parts, you must either complete or abort the multipart upload.
- * Amazon S3 frees up the space used to store the parts and stop charging you for
- * storing them only after you either complete or abort a multipart upload. </p>
- * <p>You can optionally request server-side encryption. For server-side
- * encryption, Amazon S3 encrypts your data as it writes it to disks in its data
- * centers and decrypts it when you access it. You can provide your own encryption
- * key, or use AWS Key Management Service (AWS KMS) customer master keys (CMKs) or
- * Amazon S3-managed encryption keys. If you choose to provide your own encryption
- * key, the request headers you provide in <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a>
- * and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html">UploadPartCopy</a>
- * requests must match the headers you used in the request to initiate the upload
- * by using <code>CreateMultipartUpload</code>. </p> <p>To perform a multipart
- * upload with encryption using an AWS KMS CMK, the requester must have permission
- * to the <code>kms:Encrypt</code>, <code>kms:Decrypt</code>,
- * <code>kms:ReEncrypt*</code>, <code>kms:GenerateDataKey*</code>, and
- * <code>kms:DescribeKey</code> actions on the key. These permissions are required
- * because Amazon S3 must decrypt and read data from the encrypted file parts
- * before it completes the multipart upload.</p> <p>If your AWS Identity and Access
- * Management (IAM) user or role is in the same AWS account as the AWS KMS CMK,
- * then you must have these permissions on the key policy. If your IAM user or role
- * belongs to a different account than the key, then you must have the permissions
- * on both the key policy and your IAM user or role.</p> <p> For more information,
- * see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html">Protecting
- * Data Using Server-Side Encryption</a>.</p> <dl> <dt>Access Permissions</dt> <dd>
- * <p>When copying an object, you can optionally specify the accounts or groups
- * that should be granted specific permissions on the new object. There are two
- * ways to grant the permissions using the request headers:</p> <ul> <li>
- * <p>Specify a canned ACL with the <code>x-amz-acl</code> request header. For more
- * information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL">Canned
- * ACL</a>.</p> </li> <li> <p>Specify access permissions explicitly with the
- * <code>x-amz-grant-read</code>, <code>x-amz-grant-read-acp</code>,
- * <code>x-amz-grant-write-acp</code>, and <code>x-amz-grant-full-control</code>
- * headers. These parameters map to the set of permissions that Amazon S3 supports
- * in an ACL. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html">Access
- * Control List (ACL) Overview</a>.</p> </li> </ul> <p>You can use either a canned
- * ACL or specify access permissions explicitly. You cannot do both.</p> </dd>
- * <dt>Server-Side- Encryption-Specific Request Headers</dt> <dd> <p>You can
- * optionally tell Amazon S3 to encrypt data at rest using server-side encryption.
- * Server-side encryption is for data encryption at rest. Amazon S3 encrypts your
- * data as it writes it to disks in its data centers and decrypts it when you
- * access it. The option you use depends on whether you want to use AWS managed
- * encryption keys or provide your own encryption key. </p> <ul> <li> <p>Use
- * encryption keys managed by Amazon S3 or customer master keys (CMKs) stored in
- * AWS Key Management Service (AWS KMS) – If you want AWS to manage the keys used
- * to encrypt data, specify the following headers in the request.</p> <ul> <li>
- * <p>x-amz-server-side-encryption</p> </li> <li>
- * <p>x-amz-server-side-encryption-aws-kms-key-id</p> </li> <li>
- * <p>x-amz-server-side-encryption-context</p> </li> </ul> <p>If you specify
- * <code>x-amz-server-side-encryption:aws:kms</code>, but don't provide
- * <code>x-amz-server-side-encryption-aws-kms-key-id</code>, Amazon S3 uses the AWS
- * managed CMK in AWS KMS to protect the data.</p> <p>All GET
- * and PUT requests for an object protected by AWS KMS fail if you don't make them
- * with SSL or by using SigV4.</p> <p>For more information about
- * server-side encryption with CMKs stored in AWS KMS (SSE-KMS), see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingKMSEncryption.html">Protecting
- * Data Using Server-Side Encryption with CMKs stored in AWS KMS</a>.</p> </li>
- * <li> <p>Use customer-provided encryption keys – If you want to manage your own
- * encryption keys, provide all the following headers in the request.</p> <ul> <li>
- * <p>x-amz-server-side-encryption-customer-algorithm</p> </li> <li>
- * <p>x-amz-server-side-encryption-customer-key</p> </li> <li>
- * <p>x-amz-server-side-encryption-customer-key-MD5</p> </li> </ul> <p>For more
- * information about server-side encryption with CMKs stored in AWS KMS (SSE-KMS),
- * see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingKMSEncryption.html">Protecting
- * Data Using Server-Side Encryption with CMKs stored in AWS KMS</a>.</p> </li>
- * </ul> </dd> <dt>Access-Control-List (ACL)-Specific Request Headers</dt> <dd>
- * <p>You also can use the following access control–related headers with this
- * operation. By default, all objects are private. Only the owner has full access
- * control. When adding a new object, you can grant permissions to individual AWS
- * accounts or to predefined groups defined by Amazon S3. These permissions are
- * then added to the access control list (ACL) on the object. For more information,
- * see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3_ACLs_UsingACLs.html">Using
- * ACLs</a>. With this operation, you can grant access permissions using one of the
- * following two methods:</p> <ul> <li> <p>Specify a canned ACL
- * (<code>x-amz-acl</code>) — Amazon S3 supports a set of predefined ACLs, known as
- * <i>canned ACLs</i>. Each canned ACL has a predefined set of grantees and
- * permissions. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL">Canned
- * ACL</a>.</p> </li> <li> <p>Specify access permissions explicitly — To explicitly
- * grant access permissions to specific AWS accounts or groups, use the following
- * headers. Each header maps to specific permissions that Amazon S3 supports in an
- * ACL. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html">Access
- * Control List (ACL) Overview</a>. In the header, you specify a list of grantees
- * who get the specific permission. To grant permissions explicitly, use:</p> <ul>
- * <li> <p>x-amz-grant-read</p> </li> <li> <p>x-amz-grant-write</p> </li> <li>
- * <p>x-amz-grant-read-acp</p> </li> <li> <p>x-amz-grant-write-acp</p> </li> <li>
- * <p>x-amz-grant-full-control</p> </li> </ul> <p>You specify each grantee as a
- * type=value pair, where the type is one of the following:</p> <ul> <li> <p>
- * <code>id</code> – if the value specified is the canonical user ID of an AWS
- * account</p> </li> <li> <p> <code>uri</code> – if you are granting permissions to
- * a predefined group</p> </li> <li> <p> <code>emailAddress</code> – if the value
- * specified is the email address of an AWS account</p> <p>Using email
- * addresses to specify a grantee is only supported in the following AWS Regions:
- * </p> <ul> <li> <p>US East (N. Virginia)</p> </li> <li> <p>US West (N.
- * California)</p> </li> <li> <p> US West (Oregon)</p> </li> <li> <p> Asia Pacific
- * (Singapore)</p> </li> <li> <p>Asia Pacific (Sydney)</p> </li> <li> <p>Asia
- * Pacific (Tokyo)</p> </li> <li> <p>Europe (Ireland)</p> </li> <li> <p>South
- * America (São Paulo)</p> </li> </ul> <p>For a list of all the Amazon S3 supported
- * Regions and endpoints, see <a
- * href="https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region">Regions
- * and Endpoints</a> in the AWS General Reference.</p> </li> </ul> <p>For
- * example, the following <code>x-amz-grant-read</code> header grants the AWS
- * accounts identified by account IDs permissions to read object data and its
- * metadata:</p> <p> <code>x-amz-grant-read: id="11112222333", id="444455556666"
- * </code> </p> </li> </ul> </dd> </dl> <p>The following operations are related to
- * <code>CreateMultipartUpload</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html">CompleteMultipartUpload</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html">AbortMultipartUpload</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html">ListParts</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html">ListMultipartUploads</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CreateMultipartUpload">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for CreateMultipartUpload that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::CreateMultipartUploadOutcomeCallable CreateMultipartUploadCallable(const Model::CreateMultipartUploadRequest& request) const;
+ template<typename CreateMultipartUploadRequestT = Model::CreateMultipartUploadRequest>
+ Model::CreateMultipartUploadOutcomeCallable CreateMultipartUploadCallable(const CreateMultipartUploadRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::CreateMultipartUpload, request);
+ }
/**
- * <p>This action initiates a multipart upload and returns an upload ID. This
- * upload ID is used to associate all of the parts in the specific multipart
- * upload. You specify this upload ID in each of your subsequent upload part
- * requests (see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a>).
- * You also include this upload ID in the final request to either complete or abort
- * the multipart upload request.</p> <p>For more information about multipart
- * uploads, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html">Multipart
- * Upload Overview</a>.</p> <p>If you have configured a lifecycle rule to abort
- * incomplete multipart uploads, the upload must complete within the number of days
- * specified in the bucket lifecycle configuration. Otherwise, the incomplete
- * multipart upload becomes eligible for an abort action and Amazon S3 aborts the
- * multipart upload. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html#mpu-abort-incomplete-mpu-lifecycle-config">Aborting
- * Incomplete Multipart Uploads Using a Bucket Lifecycle Policy</a>.</p> <p>For
- * information about the permissions required to use the multipart upload API, see
- * <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart
- * Upload and Permissions</a>.</p> <p>For request signing, multipart upload is just
- * a series of regular requests. You initiate a multipart upload, send one or more
- * requests to upload parts, and then complete the multipart upload process. You
- * sign each request individually. There is nothing special about signing multipart
- * upload requests. For more information about signing, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/sig-v4-authenticating-requests.html">Authenticating
- * Requests (AWS Signature Version 4)</a>.</p> <p> After you initiate a
- * multipart upload and upload one or more parts, to stop being charged for storing
- * the uploaded parts, you must either complete or abort the multipart upload.
- * Amazon S3 frees up the space used to store the parts and stop charging you for
- * storing them only after you either complete or abort a multipart upload. </p>
- * <p>You can optionally request server-side encryption. For server-side
- * encryption, Amazon S3 encrypts your data as it writes it to disks in its data
- * centers and decrypts it when you access it. You can provide your own encryption
- * key, or use AWS Key Management Service (AWS KMS) customer master keys (CMKs) or
- * Amazon S3-managed encryption keys. If you choose to provide your own encryption
- * key, the request headers you provide in <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a>
- * and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html">UploadPartCopy</a>
- * requests must match the headers you used in the request to initiate the upload
- * by using <code>CreateMultipartUpload</code>. </p> <p>To perform a multipart
- * upload with encryption using an AWS KMS CMK, the requester must have permission
- * to the <code>kms:Encrypt</code>, <code>kms:Decrypt</code>,
- * <code>kms:ReEncrypt*</code>, <code>kms:GenerateDataKey*</code>, and
- * <code>kms:DescribeKey</code> actions on the key. These permissions are required
- * because Amazon S3 must decrypt and read data from the encrypted file parts
- * before it completes the multipart upload.</p> <p>If your AWS Identity and Access
- * Management (IAM) user or role is in the same AWS account as the AWS KMS CMK,
- * then you must have these permissions on the key policy. If your IAM user or role
- * belongs to a different account than the key, then you must have the permissions
- * on both the key policy and your IAM user or role.</p> <p> For more information,
- * see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html">Protecting
- * Data Using Server-Side Encryption</a>.</p> <dl> <dt>Access Permissions</dt> <dd>
- * <p>When copying an object, you can optionally specify the accounts or groups
- * that should be granted specific permissions on the new object. There are two
- * ways to grant the permissions using the request headers:</p> <ul> <li>
- * <p>Specify a canned ACL with the <code>x-amz-acl</code> request header. For more
- * information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL">Canned
- * ACL</a>.</p> </li> <li> <p>Specify access permissions explicitly with the
- * <code>x-amz-grant-read</code>, <code>x-amz-grant-read-acp</code>,
- * <code>x-amz-grant-write-acp</code>, and <code>x-amz-grant-full-control</code>
- * headers. These parameters map to the set of permissions that Amazon S3 supports
- * in an ACL. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html">Access
- * Control List (ACL) Overview</a>.</p> </li> </ul> <p>You can use either a canned
- * ACL or specify access permissions explicitly. You cannot do both.</p> </dd>
- * <dt>Server-Side- Encryption-Specific Request Headers</dt> <dd> <p>You can
- * optionally tell Amazon S3 to encrypt data at rest using server-side encryption.
- * Server-side encryption is for data encryption at rest. Amazon S3 encrypts your
- * data as it writes it to disks in its data centers and decrypts it when you
- * access it. The option you use depends on whether you want to use AWS managed
- * encryption keys or provide your own encryption key. </p> <ul> <li> <p>Use
- * encryption keys managed by Amazon S3 or customer master keys (CMKs) stored in
- * AWS Key Management Service (AWS KMS) – If you want AWS to manage the keys used
- * to encrypt data, specify the following headers in the request.</p> <ul> <li>
- * <p>x-amz-server-side-encryption</p> </li> <li>
- * <p>x-amz-server-side-encryption-aws-kms-key-id</p> </li> <li>
- * <p>x-amz-server-side-encryption-context</p> </li> </ul> <p>If you specify
- * <code>x-amz-server-side-encryption:aws:kms</code>, but don't provide
- * <code>x-amz-server-side-encryption-aws-kms-key-id</code>, Amazon S3 uses the AWS
- * managed CMK in AWS KMS to protect the data.</p> <p>All GET
- * and PUT requests for an object protected by AWS KMS fail if you don't make them
- * with SSL or by using SigV4.</p> <p>For more information about
- * server-side encryption with CMKs stored in AWS KMS (SSE-KMS), see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingKMSEncryption.html">Protecting
- * Data Using Server-Side Encryption with CMKs stored in AWS KMS</a>.</p> </li>
- * <li> <p>Use customer-provided encryption keys – If you want to manage your own
- * encryption keys, provide all the following headers in the request.</p> <ul> <li>
- * <p>x-amz-server-side-encryption-customer-algorithm</p> </li> <li>
- * <p>x-amz-server-side-encryption-customer-key</p> </li> <li>
- * <p>x-amz-server-side-encryption-customer-key-MD5</p> </li> </ul> <p>For more
- * information about server-side encryption with CMKs stored in AWS KMS (SSE-KMS),
- * see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingKMSEncryption.html">Protecting
- * Data Using Server-Side Encryption with CMKs stored in AWS KMS</a>.</p> </li>
- * </ul> </dd> <dt>Access-Control-List (ACL)-Specific Request Headers</dt> <dd>
- * <p>You also can use the following access control–related headers with this
- * operation. By default, all objects are private. Only the owner has full access
- * control. When adding a new object, you can grant permissions to individual AWS
- * accounts or to predefined groups defined by Amazon S3. These permissions are
- * then added to the access control list (ACL) on the object. For more information,
- * see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3_ACLs_UsingACLs.html">Using
- * ACLs</a>. With this operation, you can grant access permissions using one of the
- * following two methods:</p> <ul> <li> <p>Specify a canned ACL
- * (<code>x-amz-acl</code>) — Amazon S3 supports a set of predefined ACLs, known as
- * <i>canned ACLs</i>. Each canned ACL has a predefined set of grantees and
- * permissions. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL">Canned
- * ACL</a>.</p> </li> <li> <p>Specify access permissions explicitly — To explicitly
- * grant access permissions to specific AWS accounts or groups, use the following
- * headers. Each header maps to specific permissions that Amazon S3 supports in an
- * ACL. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html">Access
- * Control List (ACL) Overview</a>. In the header, you specify a list of grantees
- * who get the specific permission. To grant permissions explicitly, use:</p> <ul>
- * <li> <p>x-amz-grant-read</p> </li> <li> <p>x-amz-grant-write</p> </li> <li>
- * <p>x-amz-grant-read-acp</p> </li> <li> <p>x-amz-grant-write-acp</p> </li> <li>
- * <p>x-amz-grant-full-control</p> </li> </ul> <p>You specify each grantee as a
- * type=value pair, where the type is one of the following:</p> <ul> <li> <p>
- * <code>id</code> – if the value specified is the canonical user ID of an AWS
- * account</p> </li> <li> <p> <code>uri</code> – if you are granting permissions to
- * a predefined group</p> </li> <li> <p> <code>emailAddress</code> – if the value
- * specified is the email address of an AWS account</p> <p>Using email
- * addresses to specify a grantee is only supported in the following AWS Regions:
- * </p> <ul> <li> <p>US East (N. Virginia)</p> </li> <li> <p>US West (N.
- * California)</p> </li> <li> <p> US West (Oregon)</p> </li> <li> <p> Asia Pacific
- * (Singapore)</p> </li> <li> <p>Asia Pacific (Sydney)</p> </li> <li> <p>Asia
- * Pacific (Tokyo)</p> </li> <li> <p>Europe (Ireland)</p> </li> <li> <p>South
- * America (São Paulo)</p> </li> </ul> <p>For a list of all the Amazon S3 supported
- * Regions and endpoints, see <a
- * href="https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region">Regions
- * and Endpoints</a> in the AWS General Reference.</p> </li> </ul> <p>For
- * example, the following <code>x-amz-grant-read</code> header grants the AWS
- * accounts identified by account IDs permissions to read object data and its
- * metadata:</p> <p> <code>x-amz-grant-read: id="11112222333", id="444455556666"
- * </code> </p> </li> </ul> </dd> </dl> <p>The following operations are related to
- * <code>CreateMultipartUpload</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html">CompleteMultipartUpload</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html">AbortMultipartUpload</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html">ListParts</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html">ListMultipartUploads</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CreateMultipartUpload">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for CreateMultipartUpload that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void CreateMultipartUploadAsync(const Model::CreateMultipartUploadRequest& request, const CreateMultipartUploadResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename CreateMultipartUploadRequestT = Model::CreateMultipartUploadRequest>
+ void CreateMultipartUploadAsync(const CreateMultipartUploadRequestT& request, const CreateMultipartUploadResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::CreateMultipartUpload, request, handler, context);
+ }
/**
* <p>Deletes the S3 bucket. All objects (including all object versions and delete
@@ -1898,34 +698,22 @@ namespace Aws
virtual Model::DeleteBucketOutcome DeleteBucket(const Model::DeleteBucketRequest& request) const;
/**
- * <p>Deletes the S3 bucket. All objects (including all object versions and delete
- * markers) in the bucket must be deleted before the bucket itself can be
- * deleted.</p> <p class="title"> <b>Related Resources</b> </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html">DeleteObject</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucket">AWS API
- * Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for DeleteBucket that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::DeleteBucketOutcomeCallable DeleteBucketCallable(const Model::DeleteBucketRequest& request) const;
+ template<typename DeleteBucketRequestT = Model::DeleteBucketRequest>
+ Model::DeleteBucketOutcomeCallable DeleteBucketCallable(const DeleteBucketRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::DeleteBucket, request);
+ }
/**
- * <p>Deletes the S3 bucket. All objects (including all object versions and delete
- * markers) in the bucket must be deleted before the bucket itself can be
- * deleted.</p> <p class="title"> <b>Related Resources</b> </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html">DeleteObject</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucket">AWS API
- * Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for DeleteBucket that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void DeleteBucketAsync(const Model::DeleteBucketRequest& request, const DeleteBucketResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename DeleteBucketRequestT = Model::DeleteBucketRequest>
+ void DeleteBucketAsync(const DeleteBucketRequestT& request, const DeleteBucketResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::DeleteBucket, request, handler, context);
+ }
/**
* <p>Deletes an analytics configuration for the bucket (specified by the analytics
@@ -1953,58 +741,22 @@ namespace Aws
virtual Model::DeleteBucketAnalyticsConfigurationOutcome DeleteBucketAnalyticsConfiguration(const Model::DeleteBucketAnalyticsConfigurationRequest& request) const;
/**
- * <p>Deletes an analytics configuration for the bucket (specified by the analytics
- * configuration ID).</p> <p>To use this operation, you must have permissions to
- * perform the <code>s3:PutAnalyticsConfiguration</code> action. The bucket owner
- * has this permission by default. The bucket owner can grant this permission to
- * others. For more information about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For information about
- * the Amazon S3 analytics feature, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/analytics-storage-class.html">Amazon
- * S3 Analytics – Storage Class Analysis</a>. </p> <p>The following operations are
- * related to <code>DeleteBucketAnalyticsConfiguration</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketAnalyticsConfiguration.html">GetBucketAnalyticsConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketAnalyticsConfigurations.html">ListBucketAnalyticsConfigurations</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketAnalyticsConfiguration.html">PutBucketAnalyticsConfiguration</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketAnalyticsConfiguration">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for DeleteBucketAnalyticsConfiguration that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::DeleteBucketAnalyticsConfigurationOutcomeCallable DeleteBucketAnalyticsConfigurationCallable(const Model::DeleteBucketAnalyticsConfigurationRequest& request) const;
+ template<typename DeleteBucketAnalyticsConfigurationRequestT = Model::DeleteBucketAnalyticsConfigurationRequest>
+ Model::DeleteBucketAnalyticsConfigurationOutcomeCallable DeleteBucketAnalyticsConfigurationCallable(const DeleteBucketAnalyticsConfigurationRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::DeleteBucketAnalyticsConfiguration, request);
+ }
/**
- * <p>Deletes an analytics configuration for the bucket (specified by the analytics
- * configuration ID).</p> <p>To use this operation, you must have permissions to
- * perform the <code>s3:PutAnalyticsConfiguration</code> action. The bucket owner
- * has this permission by default. The bucket owner can grant this permission to
- * others. For more information about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For information about
- * the Amazon S3 analytics feature, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/analytics-storage-class.html">Amazon
- * S3 Analytics – Storage Class Analysis</a>. </p> <p>The following operations are
- * related to <code>DeleteBucketAnalyticsConfiguration</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketAnalyticsConfiguration.html">GetBucketAnalyticsConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketAnalyticsConfigurations.html">ListBucketAnalyticsConfigurations</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketAnalyticsConfiguration.html">PutBucketAnalyticsConfiguration</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketAnalyticsConfiguration">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for DeleteBucketAnalyticsConfiguration that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void DeleteBucketAnalyticsConfigurationAsync(const Model::DeleteBucketAnalyticsConfigurationRequest& request, const DeleteBucketAnalyticsConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename DeleteBucketAnalyticsConfigurationRequestT = Model::DeleteBucketAnalyticsConfigurationRequest>
+ void DeleteBucketAnalyticsConfigurationAsync(const DeleteBucketAnalyticsConfigurationRequestT& request, const DeleteBucketAnalyticsConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::DeleteBucketAnalyticsConfiguration, request, handler, context);
+ }
/**
* <p>Deletes the <code>cors</code> configuration information set for the
@@ -2025,44 +777,22 @@ namespace Aws
virtual Model::DeleteBucketCorsOutcome DeleteBucketCors(const Model::DeleteBucketCorsRequest& request) const;
/**
- * <p>Deletes the <code>cors</code> configuration information set for the
- * bucket.</p> <p>To use this operation, you must have permission to perform the
- * <code>s3:PutBucketCORS</code> action. The bucket owner has this permission by
- * default and can grant this permission to others. </p> <p>For information about
- * <code>cors</code>, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html">Enabling
- * Cross-Origin Resource Sharing</a> in the <i>Amazon S3 User Guide</i>.</p> <p
- * class="title"> <b>Related Resources:</b> </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketCors.html">PutBucketCors</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTOPTIONSobject.html">RESTOPTIONSobject</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketCors">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for DeleteBucketCors that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::DeleteBucketCorsOutcomeCallable DeleteBucketCorsCallable(const Model::DeleteBucketCorsRequest& request) const;
+ template<typename DeleteBucketCorsRequestT = Model::DeleteBucketCorsRequest>
+ Model::DeleteBucketCorsOutcomeCallable DeleteBucketCorsCallable(const DeleteBucketCorsRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::DeleteBucketCors, request);
+ }
/**
- * <p>Deletes the <code>cors</code> configuration information set for the
- * bucket.</p> <p>To use this operation, you must have permission to perform the
- * <code>s3:PutBucketCORS</code> action. The bucket owner has this permission by
- * default and can grant this permission to others. </p> <p>For information about
- * <code>cors</code>, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html">Enabling
- * Cross-Origin Resource Sharing</a> in the <i>Amazon S3 User Guide</i>.</p> <p
- * class="title"> <b>Related Resources:</b> </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketCors.html">PutBucketCors</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTOPTIONSobject.html">RESTOPTIONSobject</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketCors">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for DeleteBucketCors that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void DeleteBucketCorsAsync(const Model::DeleteBucketCorsRequest& request, const DeleteBucketCorsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename DeleteBucketCorsRequestT = Model::DeleteBucketCorsRequest>
+ void DeleteBucketCorsAsync(const DeleteBucketCorsRequestT& request, const DeleteBucketCorsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::DeleteBucketCors, request, handler, context);
+ }
/**
* <p>This implementation of the DELETE action removes default encryption from the
@@ -2088,68 +818,38 @@ namespace Aws
virtual Model::DeleteBucketEncryptionOutcome DeleteBucketEncryption(const Model::DeleteBucketEncryptionRequest& request) const;
/**
- * <p>This implementation of the DELETE action removes default encryption from the
- * bucket. For information about the Amazon S3 default encryption feature, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html">Amazon
- * S3 Default Bucket Encryption</a> in the <i>Amazon S3 User Guide</i>.</p> <p>To
- * use this operation, you must have permissions to perform the
- * <code>s3:PutEncryptionConfiguration</code> action. The bucket owner has this
- * permission by default. The bucket owner can grant this permission to others. For
- * more information about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to your Amazon S3 Resources</a> in the <i>Amazon S3 User
- * Guide</i>.</p> <p class="title"> <b>Related Resources</b> </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketEncryption.html">PutBucketEncryption</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketEncryption.html">GetBucketEncryption</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketEncryption">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for DeleteBucketEncryption that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::DeleteBucketEncryptionOutcomeCallable DeleteBucketEncryptionCallable(const Model::DeleteBucketEncryptionRequest& request) const;
+ template<typename DeleteBucketEncryptionRequestT = Model::DeleteBucketEncryptionRequest>
+ Model::DeleteBucketEncryptionOutcomeCallable DeleteBucketEncryptionCallable(const DeleteBucketEncryptionRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::DeleteBucketEncryption, request);
+ }
/**
- * <p>This implementation of the DELETE action removes default encryption from the
- * bucket. For information about the Amazon S3 default encryption feature, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html">Amazon
- * S3 Default Bucket Encryption</a> in the <i>Amazon S3 User Guide</i>.</p> <p>To
- * use this operation, you must have permissions to perform the
- * <code>s3:PutEncryptionConfiguration</code> action. The bucket owner has this
- * permission by default. The bucket owner can grant this permission to others. For
- * more information about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to your Amazon S3 Resources</a> in the <i>Amazon S3 User
- * Guide</i>.</p> <p class="title"> <b>Related Resources</b> </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketEncryption.html">PutBucketEncryption</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketEncryption.html">GetBucketEncryption</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketEncryption">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for DeleteBucketEncryption that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void DeleteBucketEncryptionAsync(const Model::DeleteBucketEncryptionRequest& request, const DeleteBucketEncryptionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename DeleteBucketEncryptionRequestT = Model::DeleteBucketEncryptionRequest>
+ void DeleteBucketEncryptionAsync(const DeleteBucketEncryptionRequestT& request, const DeleteBucketEncryptionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::DeleteBucketEncryption, request, handler, context);
+ }
/**
* <p>Deletes the S3 Intelligent-Tiering configuration from the specified
* bucket.</p> <p>The S3 Intelligent-Tiering storage class is designed to optimize
* storage costs by automatically moving data to the most cost-effective storage
- * access tier, without additional operational overhead. S3 Intelligent-Tiering
- * delivers automatic cost savings by moving data between access tiers, when access
- * patterns change.</p> <p>The S3 Intelligent-Tiering storage class is suitable for
- * objects larger than 128 KB that you plan to store for at least 30 days. If the
- * size of an object is less than 128 KB, it is not eligible for auto-tiering.
- * Smaller objects can be stored, but they are always charged at the frequent
- * access tier rates in the S3 Intelligent-Tiering storage class. </p> <p>If you
- * delete an object before the end of the 30-day minimum storage duration period,
- * you are charged for 30 days. For more information, see <a
+ * access tier, without performance impact or operational overhead. S3
+ * Intelligent-Tiering delivers automatic cost savings in three low latency and
+ * high throughput access tiers. To get the lowest storage cost on data that can be
+ * accessed in minutes to hours, you can choose to activate additional archiving
+ * capabilities.</p> <p>The S3 Intelligent-Tiering storage class is the ideal
+ * storage class for data with unknown, changing, or unpredictable access patterns,
+ * independent of object size or retention period. If the size of an object is less
+ * than 128 KB, it is not monitored and not eligible for auto-tiering. Smaller
+ * objects can be stored, but they are always charged at the Frequent Access tier
+ * rates in the S3 Intelligent-Tiering storage class.</p> <p>For more information,
+ * see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html#sc-dynamic-data-access">Storage
* class for automatically optimizing frequently and infrequently accessed
* objects</a>.</p> <p>Operations related to
@@ -2167,66 +867,22 @@ namespace Aws
virtual Model::DeleteBucketIntelligentTieringConfigurationOutcome DeleteBucketIntelligentTieringConfiguration(const Model::DeleteBucketIntelligentTieringConfigurationRequest& request) const;
/**
- * <p>Deletes the S3 Intelligent-Tiering configuration from the specified
- * bucket.</p> <p>The S3 Intelligent-Tiering storage class is designed to optimize
- * storage costs by automatically moving data to the most cost-effective storage
- * access tier, without additional operational overhead. S3 Intelligent-Tiering
- * delivers automatic cost savings by moving data between access tiers, when access
- * patterns change.</p> <p>The S3 Intelligent-Tiering storage class is suitable for
- * objects larger than 128 KB that you plan to store for at least 30 days. If the
- * size of an object is less than 128 KB, it is not eligible for auto-tiering.
- * Smaller objects can be stored, but they are always charged at the frequent
- * access tier rates in the S3 Intelligent-Tiering storage class. </p> <p>If you
- * delete an object before the end of the 30-day minimum storage duration period,
- * you are charged for 30 days. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html#sc-dynamic-data-access">Storage
- * class for automatically optimizing frequently and infrequently accessed
- * objects</a>.</p> <p>Operations related to
- * <code>DeleteBucketIntelligentTieringConfiguration</code> include: </p> <ul> <li>
- * <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketIntelligentTieringConfiguration.html">GetBucketIntelligentTieringConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketIntelligentTieringConfiguration.html">PutBucketIntelligentTieringConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketIntelligentTieringConfigurations.html">ListBucketIntelligentTieringConfigurations</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketIntelligentTieringConfiguration">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for DeleteBucketIntelligentTieringConfiguration that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::DeleteBucketIntelligentTieringConfigurationOutcomeCallable DeleteBucketIntelligentTieringConfigurationCallable(const Model::DeleteBucketIntelligentTieringConfigurationRequest& request) const;
+ template<typename DeleteBucketIntelligentTieringConfigurationRequestT = Model::DeleteBucketIntelligentTieringConfigurationRequest>
+ Model::DeleteBucketIntelligentTieringConfigurationOutcomeCallable DeleteBucketIntelligentTieringConfigurationCallable(const DeleteBucketIntelligentTieringConfigurationRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::DeleteBucketIntelligentTieringConfiguration, request);
+ }
/**
- * <p>Deletes the S3 Intelligent-Tiering configuration from the specified
- * bucket.</p> <p>The S3 Intelligent-Tiering storage class is designed to optimize
- * storage costs by automatically moving data to the most cost-effective storage
- * access tier, without additional operational overhead. S3 Intelligent-Tiering
- * delivers automatic cost savings by moving data between access tiers, when access
- * patterns change.</p> <p>The S3 Intelligent-Tiering storage class is suitable for
- * objects larger than 128 KB that you plan to store for at least 30 days. If the
- * size of an object is less than 128 KB, it is not eligible for auto-tiering.
- * Smaller objects can be stored, but they are always charged at the frequent
- * access tier rates in the S3 Intelligent-Tiering storage class. </p> <p>If you
- * delete an object before the end of the 30-day minimum storage duration period,
- * you are charged for 30 days. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html#sc-dynamic-data-access">Storage
- * class for automatically optimizing frequently and infrequently accessed
- * objects</a>.</p> <p>Operations related to
- * <code>DeleteBucketIntelligentTieringConfiguration</code> include: </p> <ul> <li>
- * <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketIntelligentTieringConfiguration.html">GetBucketIntelligentTieringConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketIntelligentTieringConfiguration.html">PutBucketIntelligentTieringConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketIntelligentTieringConfigurations.html">ListBucketIntelligentTieringConfigurations</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketIntelligentTieringConfiguration">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for DeleteBucketIntelligentTieringConfiguration that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void DeleteBucketIntelligentTieringConfigurationAsync(const Model::DeleteBucketIntelligentTieringConfigurationRequest& request, const DeleteBucketIntelligentTieringConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename DeleteBucketIntelligentTieringConfigurationRequestT = Model::DeleteBucketIntelligentTieringConfigurationRequest>
+ void DeleteBucketIntelligentTieringConfigurationAsync(const DeleteBucketIntelligentTieringConfigurationRequestT& request, const DeleteBucketIntelligentTieringConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::DeleteBucketIntelligentTieringConfiguration, request, handler, context);
+ }
/**
* <p>Deletes an inventory configuration (identified by the inventory ID) from the
@@ -2254,58 +910,22 @@ namespace Aws
virtual Model::DeleteBucketInventoryConfigurationOutcome DeleteBucketInventoryConfiguration(const Model::DeleteBucketInventoryConfigurationRequest& request) const;
/**
- * <p>Deletes an inventory configuration (identified by the inventory ID) from the
- * bucket.</p> <p>To use this operation, you must have permissions to perform the
- * <code>s3:PutInventoryConfiguration</code> action. The bucket owner has this
- * permission by default. The bucket owner can grant this permission to others. For
- * more information about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For information about
- * the Amazon S3 inventory feature, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html">Amazon
- * S3 Inventory</a>.</p> <p>Operations related to
- * <code>DeleteBucketInventoryConfiguration</code> include: </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketInventoryConfiguration.html">GetBucketInventoryConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketInventoryConfiguration.html">PutBucketInventoryConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketInventoryConfigurations.html">ListBucketInventoryConfigurations</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketInventoryConfiguration">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for DeleteBucketInventoryConfiguration that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::DeleteBucketInventoryConfigurationOutcomeCallable DeleteBucketInventoryConfigurationCallable(const Model::DeleteBucketInventoryConfigurationRequest& request) const;
+ template<typename DeleteBucketInventoryConfigurationRequestT = Model::DeleteBucketInventoryConfigurationRequest>
+ Model::DeleteBucketInventoryConfigurationOutcomeCallable DeleteBucketInventoryConfigurationCallable(const DeleteBucketInventoryConfigurationRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::DeleteBucketInventoryConfiguration, request);
+ }
/**
- * <p>Deletes an inventory configuration (identified by the inventory ID) from the
- * bucket.</p> <p>To use this operation, you must have permissions to perform the
- * <code>s3:PutInventoryConfiguration</code> action. The bucket owner has this
- * permission by default. The bucket owner can grant this permission to others. For
- * more information about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For information about
- * the Amazon S3 inventory feature, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html">Amazon
- * S3 Inventory</a>.</p> <p>Operations related to
- * <code>DeleteBucketInventoryConfiguration</code> include: </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketInventoryConfiguration.html">GetBucketInventoryConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketInventoryConfiguration.html">PutBucketInventoryConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketInventoryConfigurations.html">ListBucketInventoryConfigurations</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketInventoryConfiguration">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for DeleteBucketInventoryConfiguration that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void DeleteBucketInventoryConfigurationAsync(const Model::DeleteBucketInventoryConfigurationRequest& request, const DeleteBucketInventoryConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename DeleteBucketInventoryConfigurationRequestT = Model::DeleteBucketInventoryConfigurationRequest>
+ void DeleteBucketInventoryConfigurationAsync(const DeleteBucketInventoryConfigurationRequestT& request, const DeleteBucketInventoryConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::DeleteBucketInventoryConfiguration, request, handler, context);
+ }
/**
* <p>Deletes the lifecycle configuration from the specified bucket. Amazon S3
@@ -2331,54 +951,22 @@ namespace Aws
virtual Model::DeleteBucketLifecycleOutcome DeleteBucketLifecycle(const Model::DeleteBucketLifecycleRequest& request) const;
/**
- * <p>Deletes the lifecycle configuration from the specified bucket. Amazon S3
- * removes all the lifecycle configuration rules in the lifecycle subresource
- * associated with the bucket. Your objects never expire, and Amazon S3 no longer
- * automatically deletes any objects on the basis of rules contained in the deleted
- * lifecycle configuration.</p> <p>To use this operation, you must have permission
- * to perform the <code>s3:PutLifecycleConfiguration</code> action. By default, the
- * bucket owner has this permission and the bucket owner can grant this permission
- * to others.</p> <p>There is usually some time lag before lifecycle configuration
- * deletion is fully propagated to all the Amazon S3 systems.</p> <p>For more
- * information about the object expiration, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/intro-lifecycle-rules.html#intro-lifecycle-rules-actions">Elements
- * to Describe Lifecycle Actions</a>.</p> <p>Related actions include:</p> <ul> <li>
- * <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html">PutBucketLifecycleConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycleConfiguration.html">GetBucketLifecycleConfiguration</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketLifecycle">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for DeleteBucketLifecycle that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::DeleteBucketLifecycleOutcomeCallable DeleteBucketLifecycleCallable(const Model::DeleteBucketLifecycleRequest& request) const;
+ template<typename DeleteBucketLifecycleRequestT = Model::DeleteBucketLifecycleRequest>
+ Model::DeleteBucketLifecycleOutcomeCallable DeleteBucketLifecycleCallable(const DeleteBucketLifecycleRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::DeleteBucketLifecycle, request);
+ }
/**
- * <p>Deletes the lifecycle configuration from the specified bucket. Amazon S3
- * removes all the lifecycle configuration rules in the lifecycle subresource
- * associated with the bucket. Your objects never expire, and Amazon S3 no longer
- * automatically deletes any objects on the basis of rules contained in the deleted
- * lifecycle configuration.</p> <p>To use this operation, you must have permission
- * to perform the <code>s3:PutLifecycleConfiguration</code> action. By default, the
- * bucket owner has this permission and the bucket owner can grant this permission
- * to others.</p> <p>There is usually some time lag before lifecycle configuration
- * deletion is fully propagated to all the Amazon S3 systems.</p> <p>For more
- * information about the object expiration, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/intro-lifecycle-rules.html#intro-lifecycle-rules-actions">Elements
- * to Describe Lifecycle Actions</a>.</p> <p>Related actions include:</p> <ul> <li>
- * <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html">PutBucketLifecycleConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycleConfiguration.html">GetBucketLifecycleConfiguration</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketLifecycle">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for DeleteBucketLifecycle that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void DeleteBucketLifecycleAsync(const Model::DeleteBucketLifecycleRequest& request, const DeleteBucketLifecycleResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename DeleteBucketLifecycleRequestT = Model::DeleteBucketLifecycleRequest>
+ void DeleteBucketLifecycleAsync(const DeleteBucketLifecycleRequestT& request, const DeleteBucketLifecycleResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::DeleteBucketLifecycle, request, handler, context);
+ }
/**
* <p>Deletes a metrics configuration for the Amazon CloudWatch request metrics
@@ -2409,64 +997,22 @@ namespace Aws
virtual Model::DeleteBucketMetricsConfigurationOutcome DeleteBucketMetricsConfiguration(const Model::DeleteBucketMetricsConfigurationRequest& request) const;
/**
- * <p>Deletes a metrics configuration for the Amazon CloudWatch request metrics
- * (specified by the metrics configuration ID) from the bucket. Note that this
- * doesn't include the daily storage metrics.</p> <p> To use this operation, you
- * must have permissions to perform the <code>s3:PutMetricsConfiguration</code>
- * action. The bucket owner has this permission by default. The bucket owner can
- * grant this permission to others. For more information about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For information about
- * CloudWatch request metrics for Amazon S3, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html">Monitoring
- * Metrics with Amazon CloudWatch</a>. </p> <p>The following operations are related
- * to <code>DeleteBucketMetricsConfiguration</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketMetricsConfiguration.html">GetBucketMetricsConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketMetricsConfiguration.html">PutBucketMetricsConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketMetricsConfigurations.html">ListBucketMetricsConfigurations</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html">Monitoring
- * Metrics with Amazon CloudWatch</a> </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketMetricsConfiguration">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for DeleteBucketMetricsConfiguration that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::DeleteBucketMetricsConfigurationOutcomeCallable DeleteBucketMetricsConfigurationCallable(const Model::DeleteBucketMetricsConfigurationRequest& request) const;
+ template<typename DeleteBucketMetricsConfigurationRequestT = Model::DeleteBucketMetricsConfigurationRequest>
+ Model::DeleteBucketMetricsConfigurationOutcomeCallable DeleteBucketMetricsConfigurationCallable(const DeleteBucketMetricsConfigurationRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::DeleteBucketMetricsConfiguration, request);
+ }
/**
- * <p>Deletes a metrics configuration for the Amazon CloudWatch request metrics
- * (specified by the metrics configuration ID) from the bucket. Note that this
- * doesn't include the daily storage metrics.</p> <p> To use this operation, you
- * must have permissions to perform the <code>s3:PutMetricsConfiguration</code>
- * action. The bucket owner has this permission by default. The bucket owner can
- * grant this permission to others. For more information about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For information about
- * CloudWatch request metrics for Amazon S3, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html">Monitoring
- * Metrics with Amazon CloudWatch</a>. </p> <p>The following operations are related
- * to <code>DeleteBucketMetricsConfiguration</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketMetricsConfiguration.html">GetBucketMetricsConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketMetricsConfiguration.html">PutBucketMetricsConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketMetricsConfigurations.html">ListBucketMetricsConfigurations</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html">Monitoring
- * Metrics with Amazon CloudWatch</a> </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketMetricsConfiguration">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for DeleteBucketMetricsConfiguration that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void DeleteBucketMetricsConfigurationAsync(const Model::DeleteBucketMetricsConfigurationRequest& request, const DeleteBucketMetricsConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename DeleteBucketMetricsConfigurationRequestT = Model::DeleteBucketMetricsConfigurationRequest>
+ void DeleteBucketMetricsConfigurationAsync(const DeleteBucketMetricsConfigurationRequestT& request, const DeleteBucketMetricsConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::DeleteBucketMetricsConfiguration, request, handler, context);
+ }
/**
* <p>Removes <code>OwnershipControls</code> for an Amazon S3 bucket. To use this
@@ -2486,56 +1032,37 @@ namespace Aws
virtual Model::DeleteBucketOwnershipControlsOutcome DeleteBucketOwnershipControls(const Model::DeleteBucketOwnershipControlsRequest& request) const;
/**
- * <p>Removes <code>OwnershipControls</code> for an Amazon S3 bucket. To use this
- * operation, you must have the <code>s3:PutBucketOwnershipControls</code>
- * permission. For more information about Amazon S3 permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying
- * Permissions in a Policy</a>.</p> <p>For information about Amazon S3 Object
- * Ownership, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/about-object-ownership.html">Using
- * Object Ownership</a>. </p> <p>The following operations are related to
- * <code>DeleteBucketOwnershipControls</code>:</p> <ul> <li> <p>
- * <a>GetBucketOwnershipControls</a> </p> </li> <li> <p>
- * <a>PutBucketOwnershipControls</a> </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketOwnershipControls">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for DeleteBucketOwnershipControls that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::DeleteBucketOwnershipControlsOutcomeCallable DeleteBucketOwnershipControlsCallable(const Model::DeleteBucketOwnershipControlsRequest& request) const;
+ template<typename DeleteBucketOwnershipControlsRequestT = Model::DeleteBucketOwnershipControlsRequest>
+ Model::DeleteBucketOwnershipControlsOutcomeCallable DeleteBucketOwnershipControlsCallable(const DeleteBucketOwnershipControlsRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::DeleteBucketOwnershipControls, request);
+ }
/**
- * <p>Removes <code>OwnershipControls</code> for an Amazon S3 bucket. To use this
- * operation, you must have the <code>s3:PutBucketOwnershipControls</code>
- * permission. For more information about Amazon S3 permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying
- * Permissions in a Policy</a>.</p> <p>For information about Amazon S3 Object
- * Ownership, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/about-object-ownership.html">Using
- * Object Ownership</a>. </p> <p>The following operations are related to
- * <code>DeleteBucketOwnershipControls</code>:</p> <ul> <li> <p>
- * <a>GetBucketOwnershipControls</a> </p> </li> <li> <p>
- * <a>PutBucketOwnershipControls</a> </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketOwnershipControls">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for DeleteBucketOwnershipControls that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void DeleteBucketOwnershipControlsAsync(const Model::DeleteBucketOwnershipControlsRequest& request, const DeleteBucketOwnershipControlsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename DeleteBucketOwnershipControlsRequestT = Model::DeleteBucketOwnershipControlsRequest>
+ void DeleteBucketOwnershipControlsAsync(const DeleteBucketOwnershipControlsRequestT& request, const DeleteBucketOwnershipControlsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::DeleteBucketOwnershipControls, request, handler, context);
+ }
/**
* <p>This implementation of the DELETE action uses the policy subresource to
* delete the policy of a specified bucket. If you are using an identity other than
- * the root user of the AWS account that owns the bucket, the calling identity must
- * have the <code>DeleteBucketPolicy</code> permissions on the specified bucket and
- * belong to the bucket owner's account to use this operation. </p> <p>If you don't
- * have <code>DeleteBucketPolicy</code> permissions, Amazon S3 returns a <code>403
- * Access Denied</code> error. If you have the correct permissions, but you're not
- * using an identity that belongs to the bucket owner's account, Amazon S3 returns
- * a <code>405 Method Not Allowed</code> error. </p> <p>As a security
- * precaution, the root user of the AWS account that owns a bucket can always use
- * this operation, even if the policy explicitly denies the root user the ability
- * to perform this action.</p> <p>For more information about bucket
+ * the root user of the Amazon Web Services account that owns the bucket, the
+ * calling identity must have the <code>DeleteBucketPolicy</code> permissions on
+ * the specified bucket and belong to the bucket owner's account to use this
+ * operation. </p> <p>If you don't have <code>DeleteBucketPolicy</code>
+ * permissions, Amazon S3 returns a <code>403 Access Denied</code> error. If you
+ * have the correct permissions, but you're not using an identity that belongs to
+ * the bucket owner's account, Amazon S3 returns a <code>405 Method Not
+ * Allowed</code> error. </p> <p>As a security precaution, the root
+ * user of the Amazon Web Services account that owns a bucket can always use this
+ * operation, even if the policy explicitly denies the root user the ability to
+ * perform this action.</p> <p>For more information about bucket
* policies, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html">Using
* Bucket Policies and UserPolicies</a>. </p> <p>The following operations are
@@ -2550,60 +1077,22 @@ namespace Aws
virtual Model::DeleteBucketPolicyOutcome DeleteBucketPolicy(const Model::DeleteBucketPolicyRequest& request) const;
/**
- * <p>This implementation of the DELETE action uses the policy subresource to
- * delete the policy of a specified bucket. If you are using an identity other than
- * the root user of the AWS account that owns the bucket, the calling identity must
- * have the <code>DeleteBucketPolicy</code> permissions on the specified bucket and
- * belong to the bucket owner's account to use this operation. </p> <p>If you don't
- * have <code>DeleteBucketPolicy</code> permissions, Amazon S3 returns a <code>403
- * Access Denied</code> error. If you have the correct permissions, but you're not
- * using an identity that belongs to the bucket owner's account, Amazon S3 returns
- * a <code>405 Method Not Allowed</code> error. </p> <p>As a security
- * precaution, the root user of the AWS account that owns a bucket can always use
- * this operation, even if the policy explicitly denies the root user the ability
- * to perform this action.</p> <p>For more information about bucket
- * policies, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html">Using
- * Bucket Policies and UserPolicies</a>. </p> <p>The following operations are
- * related to <code>DeleteBucketPolicy</code> </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html">DeleteObject</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketPolicy">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for DeleteBucketPolicy that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::DeleteBucketPolicyOutcomeCallable DeleteBucketPolicyCallable(const Model::DeleteBucketPolicyRequest& request) const;
+ template<typename DeleteBucketPolicyRequestT = Model::DeleteBucketPolicyRequest>
+ Model::DeleteBucketPolicyOutcomeCallable DeleteBucketPolicyCallable(const DeleteBucketPolicyRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::DeleteBucketPolicy, request);
+ }
/**
- * <p>This implementation of the DELETE action uses the policy subresource to
- * delete the policy of a specified bucket. If you are using an identity other than
- * the root user of the AWS account that owns the bucket, the calling identity must
- * have the <code>DeleteBucketPolicy</code> permissions on the specified bucket and
- * belong to the bucket owner's account to use this operation. </p> <p>If you don't
- * have <code>DeleteBucketPolicy</code> permissions, Amazon S3 returns a <code>403
- * Access Denied</code> error. If you have the correct permissions, but you're not
- * using an identity that belongs to the bucket owner's account, Amazon S3 returns
- * a <code>405 Method Not Allowed</code> error. </p> <p>As a security
- * precaution, the root user of the AWS account that owns a bucket can always use
- * this operation, even if the policy explicitly denies the root user the ability
- * to perform this action.</p> <p>For more information about bucket
- * policies, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html">Using
- * Bucket Policies and UserPolicies</a>. </p> <p>The following operations are
- * related to <code>DeleteBucketPolicy</code> </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html">DeleteObject</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketPolicy">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for DeleteBucketPolicy that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void DeleteBucketPolicyAsync(const Model::DeleteBucketPolicyRequest& request, const DeleteBucketPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename DeleteBucketPolicyRequestT = Model::DeleteBucketPolicyRequest>
+ void DeleteBucketPolicyAsync(const DeleteBucketPolicyRequestT& request, const DeleteBucketPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::DeleteBucketPolicy, request, handler, context);
+ }
/**
* <p> Deletes the replication configuration from the bucket.</p> <p>To use this
@@ -2618,8 +1107,8 @@ namespace Aws
* while for the deletion of a replication configuration to fully propagate.</p>
* <p> For information about replication configuration, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html">Replication</a>
- * in the <i>Amazon S3 Developer Guide</i>. </p> <p>The following operations are
- * related to <code>DeleteBucketReplication</code>:</p> <ul> <li> <p> <a
+ * in the <i>Amazon S3 User Guide</i>.</p> <p>The following operations are related
+ * to <code>DeleteBucketReplication</code>:</p> <ul> <li> <p> <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketReplication.html">PutBucketReplication</a>
* </p> </li> <li> <p> <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketReplication.html">GetBucketReplication</a>
@@ -2630,56 +1119,22 @@ namespace Aws
virtual Model::DeleteBucketReplicationOutcome DeleteBucketReplication(const Model::DeleteBucketReplicationRequest& request) const;
/**
- * <p> Deletes the replication configuration from the bucket.</p> <p>To use this
- * operation, you must have permissions to perform the
- * <code>s3:PutReplicationConfiguration</code> action. The bucket owner has these
- * permissions by default and can grant it to others. For more information about
- * permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>. </p> <p>It can take a
- * while for the deletion of a replication configuration to fully propagate.</p>
- * <p> For information about replication configuration, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html">Replication</a>
- * in the <i>Amazon S3 Developer Guide</i>. </p> <p>The following operations are
- * related to <code>DeleteBucketReplication</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketReplication.html">PutBucketReplication</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketReplication.html">GetBucketReplication</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketReplication">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for DeleteBucketReplication that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::DeleteBucketReplicationOutcomeCallable DeleteBucketReplicationCallable(const Model::DeleteBucketReplicationRequest& request) const;
+ template<typename DeleteBucketReplicationRequestT = Model::DeleteBucketReplicationRequest>
+ Model::DeleteBucketReplicationOutcomeCallable DeleteBucketReplicationCallable(const DeleteBucketReplicationRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::DeleteBucketReplication, request);
+ }
/**
- * <p> Deletes the replication configuration from the bucket.</p> <p>To use this
- * operation, you must have permissions to perform the
- * <code>s3:PutReplicationConfiguration</code> action. The bucket owner has these
- * permissions by default and can grant it to others. For more information about
- * permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>. </p> <p>It can take a
- * while for the deletion of a replication configuration to fully propagate.</p>
- * <p> For information about replication configuration, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html">Replication</a>
- * in the <i>Amazon S3 Developer Guide</i>. </p> <p>The following operations are
- * related to <code>DeleteBucketReplication</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketReplication.html">PutBucketReplication</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketReplication.html">GetBucketReplication</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketReplication">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for DeleteBucketReplication that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void DeleteBucketReplicationAsync(const Model::DeleteBucketReplicationRequest& request, const DeleteBucketReplicationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename DeleteBucketReplicationRequestT = Model::DeleteBucketReplicationRequest>
+ void DeleteBucketReplicationAsync(const DeleteBucketReplicationRequestT& request, const DeleteBucketReplicationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::DeleteBucketReplication, request, handler, context);
+ }
/**
* <p>Deletes the tags from the bucket.</p> <p>To use this operation, you must have
@@ -2697,38 +1152,22 @@ namespace Aws
virtual Model::DeleteBucketTaggingOutcome DeleteBucketTagging(const Model::DeleteBucketTaggingRequest& request) const;
/**
- * <p>Deletes the tags from the bucket.</p> <p>To use this operation, you must have
- * permission to perform the <code>s3:PutBucketTagging</code> action. By default,
- * the bucket owner has this permission and can grant this permission to others.
- * </p> <p>The following operations are related to
- * <code>DeleteBucketTagging</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketTagging.html">GetBucketTagging</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketTagging.html">PutBucketTagging</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketTagging">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for DeleteBucketTagging that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::DeleteBucketTaggingOutcomeCallable DeleteBucketTaggingCallable(const Model::DeleteBucketTaggingRequest& request) const;
+ template<typename DeleteBucketTaggingRequestT = Model::DeleteBucketTaggingRequest>
+ Model::DeleteBucketTaggingOutcomeCallable DeleteBucketTaggingCallable(const DeleteBucketTaggingRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::DeleteBucketTagging, request);
+ }
/**
- * <p>Deletes the tags from the bucket.</p> <p>To use this operation, you must have
- * permission to perform the <code>s3:PutBucketTagging</code> action. By default,
- * the bucket owner has this permission and can grant this permission to others.
- * </p> <p>The following operations are related to
- * <code>DeleteBucketTagging</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketTagging.html">GetBucketTagging</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketTagging.html">PutBucketTagging</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketTagging">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for DeleteBucketTagging that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void DeleteBucketTaggingAsync(const Model::DeleteBucketTaggingRequest& request, const DeleteBucketTaggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename DeleteBucketTaggingRequestT = Model::DeleteBucketTaggingRequest>
+ void DeleteBucketTaggingAsync(const DeleteBucketTaggingRequestT& request, const DeleteBucketTaggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::DeleteBucketTagging, request, handler, context);
+ }
/**
* <p>This action removes the website configuration for a bucket. Amazon S3 returns
@@ -2755,56 +1194,22 @@ namespace Aws
virtual Model::DeleteBucketWebsiteOutcome DeleteBucketWebsite(const Model::DeleteBucketWebsiteRequest& request) const;
/**
- * <p>This action removes the website configuration for a bucket. Amazon S3 returns
- * a <code>200 OK</code> response upon successfully deleting a website
- * configuration on the specified bucket. You will get a <code>200 OK</code>
- * response if the website configuration you are trying to delete does not exist on
- * the bucket. Amazon S3 returns a <code>404</code> response if the bucket
- * specified in the request does not exist.</p> <p>This DELETE action requires the
- * <code>S3:DeleteBucketWebsite</code> permission. By default, only the bucket
- * owner can delete the website configuration attached to a bucket. However, bucket
- * owners can grant other users permission to delete the website configuration by
- * writing a bucket policy granting them the <code>S3:DeleteBucketWebsite</code>
- * permission. </p> <p>For more information about hosting websites, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html">Hosting
- * Websites on Amazon S3</a>. </p> <p>The following operations are related to
- * <code>DeleteBucketWebsite</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketWebsite.html">GetBucketWebsite</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketWebsite.html">PutBucketWebsite</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketWebsite">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for DeleteBucketWebsite that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::DeleteBucketWebsiteOutcomeCallable DeleteBucketWebsiteCallable(const Model::DeleteBucketWebsiteRequest& request) const;
+ template<typename DeleteBucketWebsiteRequestT = Model::DeleteBucketWebsiteRequest>
+ Model::DeleteBucketWebsiteOutcomeCallable DeleteBucketWebsiteCallable(const DeleteBucketWebsiteRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::DeleteBucketWebsite, request);
+ }
/**
- * <p>This action removes the website configuration for a bucket. Amazon S3 returns
- * a <code>200 OK</code> response upon successfully deleting a website
- * configuration on the specified bucket. You will get a <code>200 OK</code>
- * response if the website configuration you are trying to delete does not exist on
- * the bucket. Amazon S3 returns a <code>404</code> response if the bucket
- * specified in the request does not exist.</p> <p>This DELETE action requires the
- * <code>S3:DeleteBucketWebsite</code> permission. By default, only the bucket
- * owner can delete the website configuration attached to a bucket. However, bucket
- * owners can grant other users permission to delete the website configuration by
- * writing a bucket policy granting them the <code>S3:DeleteBucketWebsite</code>
- * permission. </p> <p>For more information about hosting websites, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html">Hosting
- * Websites on Amazon S3</a>. </p> <p>The following operations are related to
- * <code>DeleteBucketWebsite</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketWebsite.html">GetBucketWebsite</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketWebsite.html">PutBucketWebsite</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteBucketWebsite">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for DeleteBucketWebsite that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void DeleteBucketWebsiteAsync(const Model::DeleteBucketWebsiteRequest& request, const DeleteBucketWebsiteResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename DeleteBucketWebsiteRequestT = Model::DeleteBucketWebsiteRequest>
+ void DeleteBucketWebsiteAsync(const DeleteBucketWebsiteRequestT& request, const DeleteBucketWebsiteResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::DeleteBucketWebsite, request, handler, context);
+ }
/**
* <p>Removes the null version (if there is one) of an object and inserts a delete
@@ -2838,70 +1243,22 @@ namespace Aws
virtual Model::DeleteObjectOutcome DeleteObject(const Model::DeleteObjectRequest& request) const;
/**
- * <p>Removes the null version (if there is one) of an object and inserts a delete
- * marker, which becomes the latest version of the object. If there isn't a null
- * version, Amazon S3 does not remove any objects but will still respond that the
- * command was successful.</p> <p>To remove a specific version, you must be the
- * bucket owner and you must use the version Id subresource. Using this subresource
- * permanently deletes the version. If the object deleted is a delete marker,
- * Amazon S3 sets the response header, <code>x-amz-delete-marker</code>, to true.
- * </p> <p>If the object you want to delete is in a bucket where the bucket
- * versioning configuration is MFA Delete enabled, you must include the
- * <code>x-amz-mfa</code> request header in the DELETE <code>versionId</code>
- * request. Requests that include <code>x-amz-mfa</code> must use HTTPS. </p> <p>
- * For more information about MFA Delete, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMFADelete.html">Using
- * MFA Delete</a>. To see sample requests that use versioning, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectDELETE.html#ExampleVersionObjectDelete">Sample
- * Request</a>. </p> <p>You can delete objects by explicitly calling DELETE Object
- * or configure its lifecycle (<a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycle.html">PutBucketLifecycle</a>)
- * to enable Amazon S3 to remove them for you. If you want to block users or
- * accounts from removing or deleting objects from your bucket, you must deny them
- * the <code>s3:DeleteObject</code>, <code>s3:DeleteObjectVersion</code>, and
- * <code>s3:PutLifeCycleConfiguration</code> actions. </p> <p>The following action
- * is related to <code>DeleteObject</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html">PutObject</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteObject">AWS API
- * Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for DeleteObject that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::DeleteObjectOutcomeCallable DeleteObjectCallable(const Model::DeleteObjectRequest& request) const;
+ template<typename DeleteObjectRequestT = Model::DeleteObjectRequest>
+ Model::DeleteObjectOutcomeCallable DeleteObjectCallable(const DeleteObjectRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::DeleteObject, request);
+ }
/**
- * <p>Removes the null version (if there is one) of an object and inserts a delete
- * marker, which becomes the latest version of the object. If there isn't a null
- * version, Amazon S3 does not remove any objects but will still respond that the
- * command was successful.</p> <p>To remove a specific version, you must be the
- * bucket owner and you must use the version Id subresource. Using this subresource
- * permanently deletes the version. If the object deleted is a delete marker,
- * Amazon S3 sets the response header, <code>x-amz-delete-marker</code>, to true.
- * </p> <p>If the object you want to delete is in a bucket where the bucket
- * versioning configuration is MFA Delete enabled, you must include the
- * <code>x-amz-mfa</code> request header in the DELETE <code>versionId</code>
- * request. Requests that include <code>x-amz-mfa</code> must use HTTPS. </p> <p>
- * For more information about MFA Delete, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMFADelete.html">Using
- * MFA Delete</a>. To see sample requests that use versioning, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectDELETE.html#ExampleVersionObjectDelete">Sample
- * Request</a>. </p> <p>You can delete objects by explicitly calling DELETE Object
- * or configure its lifecycle (<a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycle.html">PutBucketLifecycle</a>)
- * to enable Amazon S3 to remove them for you. If you want to block users or
- * accounts from removing or deleting objects from your bucket, you must deny them
- * the <code>s3:DeleteObject</code>, <code>s3:DeleteObjectVersion</code>, and
- * <code>s3:PutLifeCycleConfiguration</code> actions. </p> <p>The following action
- * is related to <code>DeleteObject</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html">PutObject</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteObject">AWS API
- * Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for DeleteObject that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void DeleteObjectAsync(const Model::DeleteObjectRequest& request, const DeleteObjectResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename DeleteObjectRequestT = Model::DeleteObjectRequest>
+ void DeleteObjectAsync(const DeleteObjectRequestT& request, const DeleteObjectResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::DeleteObject, request, handler, context);
+ }
/**
* <p>Removes the entire tag set from the specified object. For more information
@@ -2924,48 +1281,22 @@ namespace Aws
virtual Model::DeleteObjectTaggingOutcome DeleteObjectTagging(const Model::DeleteObjectTaggingRequest& request) const;
/**
- * <p>Removes the entire tag set from the specified object. For more information
- * about managing object tags, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-tagging.html">
- * Object Tagging</a>.</p> <p>To use this operation, you must have permission to
- * perform the <code>s3:DeleteObjectTagging</code> action.</p> <p>To delete tags of
- * a specific object version, add the <code>versionId</code> query parameter in the
- * request. You will need permission for the
- * <code>s3:DeleteObjectVersionTagging</code> action.</p> <p>The following
- * operations are related to <code>DeleteBucketMetricsConfiguration</code>:</p>
- * <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObjectTagging.html">PutObjectTagging</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectTagging.html">GetObjectTagging</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteObjectTagging">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for DeleteObjectTagging that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::DeleteObjectTaggingOutcomeCallable DeleteObjectTaggingCallable(const Model::DeleteObjectTaggingRequest& request) const;
+ template<typename DeleteObjectTaggingRequestT = Model::DeleteObjectTaggingRequest>
+ Model::DeleteObjectTaggingOutcomeCallable DeleteObjectTaggingCallable(const DeleteObjectTaggingRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::DeleteObjectTagging, request);
+ }
/**
- * <p>Removes the entire tag set from the specified object. For more information
- * about managing object tags, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-tagging.html">
- * Object Tagging</a>.</p> <p>To use this operation, you must have permission to
- * perform the <code>s3:DeleteObjectTagging</code> action.</p> <p>To delete tags of
- * a specific object version, add the <code>versionId</code> query parameter in the
- * request. You will need permission for the
- * <code>s3:DeleteObjectVersionTagging</code> action.</p> <p>The following
- * operations are related to <code>DeleteBucketMetricsConfiguration</code>:</p>
- * <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObjectTagging.html">PutObjectTagging</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectTagging.html">GetObjectTagging</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteObjectTagging">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for DeleteObjectTagging that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void DeleteObjectTaggingAsync(const Model::DeleteObjectTaggingRequest& request, const DeleteObjectTaggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename DeleteObjectTaggingRequestT = Model::DeleteObjectTaggingRequest>
+ void DeleteObjectTaggingAsync(const DeleteObjectTaggingRequestT& request, const DeleteObjectTaggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::DeleteObjectTagging, request, handler, context);
+ }
/**
* <p>This action enables you to delete multiple objects from a bucket using a
@@ -3010,92 +1341,22 @@ namespace Aws
virtual Model::DeleteObjectsOutcome DeleteObjects(const Model::DeleteObjectsRequest& request) const;
/**
- * <p>This action enables you to delete multiple objects from a bucket using a
- * single HTTP request. If you know the object keys that you want to delete, then
- * this action provides a suitable alternative to sending individual delete
- * requests, reducing per-request overhead.</p> <p>The request contains a list of
- * up to 1000 keys that you want to delete. In the XML, you provide the object key
- * names, and optionally, version IDs if you want to delete a specific version of
- * the object from a versioning-enabled bucket. For each key, Amazon S3 performs a
- * delete action and returns the result of that delete, success, or failure, in the
- * response. Note that if the object specified in the request is not found, Amazon
- * S3 returns the result as deleted.</p> <p> The action supports two modes for the
- * response: verbose and quiet. By default, the action uses verbose mode in which
- * the response includes the result of deletion of each key in your request. In
- * quiet mode the response includes only keys where the delete action encountered
- * an error. For a successful deletion, the action does not return any information
- * about the delete in the response body.</p> <p>When performing this action on an
- * MFA Delete enabled bucket, that attempts to delete any versioned objects, you
- * must include an MFA token. If you do not provide one, the entire request will
- * fail, even if there are non-versioned objects you are trying to delete. If you
- * provide an invalid token, whether there are versioned keys in the request or
- * not, the entire Multi-Object Delete request will fail. For information about MFA
- * Delete, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/Versioning.html#MultiFactorAuthenticationDelete">
- * MFA Delete</a>.</p> <p>Finally, the Content-MD5 header is required for all
- * Multi-Object Delete requests. Amazon S3 uses the header value to ensure that
- * your request body has not been altered in transit.</p> <p>The following
- * operations are related to <code>DeleteObjects</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html">CreateMultipartUpload</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html">CompleteMultipartUpload</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html">ListParts</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html">AbortMultipartUpload</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteObjects">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for DeleteObjects that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::DeleteObjectsOutcomeCallable DeleteObjectsCallable(const Model::DeleteObjectsRequest& request) const;
+ template<typename DeleteObjectsRequestT = Model::DeleteObjectsRequest>
+ Model::DeleteObjectsOutcomeCallable DeleteObjectsCallable(const DeleteObjectsRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::DeleteObjects, request);
+ }
/**
- * <p>This action enables you to delete multiple objects from a bucket using a
- * single HTTP request. If you know the object keys that you want to delete, then
- * this action provides a suitable alternative to sending individual delete
- * requests, reducing per-request overhead.</p> <p>The request contains a list of
- * up to 1000 keys that you want to delete. In the XML, you provide the object key
- * names, and optionally, version IDs if you want to delete a specific version of
- * the object from a versioning-enabled bucket. For each key, Amazon S3 performs a
- * delete action and returns the result of that delete, success, or failure, in the
- * response. Note that if the object specified in the request is not found, Amazon
- * S3 returns the result as deleted.</p> <p> The action supports two modes for the
- * response: verbose and quiet. By default, the action uses verbose mode in which
- * the response includes the result of deletion of each key in your request. In
- * quiet mode the response includes only keys where the delete action encountered
- * an error. For a successful deletion, the action does not return any information
- * about the delete in the response body.</p> <p>When performing this action on an
- * MFA Delete enabled bucket, that attempts to delete any versioned objects, you
- * must include an MFA token. If you do not provide one, the entire request will
- * fail, even if there are non-versioned objects you are trying to delete. If you
- * provide an invalid token, whether there are versioned keys in the request or
- * not, the entire Multi-Object Delete request will fail. For information about MFA
- * Delete, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/Versioning.html#MultiFactorAuthenticationDelete">
- * MFA Delete</a>.</p> <p>Finally, the Content-MD5 header is required for all
- * Multi-Object Delete requests. Amazon S3 uses the header value to ensure that
- * your request body has not been altered in transit.</p> <p>The following
- * operations are related to <code>DeleteObjects</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html">CreateMultipartUpload</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html">CompleteMultipartUpload</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html">ListParts</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html">AbortMultipartUpload</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteObjects">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for DeleteObjects that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void DeleteObjectsAsync(const Model::DeleteObjectsRequest& request, const DeleteObjectsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename DeleteObjectsRequestT = Model::DeleteObjectsRequest>
+ void DeleteObjectsAsync(const DeleteObjectsRequestT& request, const DeleteObjectsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::DeleteObjects, request, handler, context);
+ }
/**
* <p>Removes the <code>PublicAccessBlock</code> configuration for an Amazon S3
@@ -3122,56 +1383,22 @@ namespace Aws
virtual Model::DeletePublicAccessBlockOutcome DeletePublicAccessBlock(const Model::DeletePublicAccessBlockRequest& request) const;
/**
- * <p>Removes the <code>PublicAccessBlock</code> configuration for an Amazon S3
- * bucket. To use this operation, you must have the
- * <code>s3:PutBucketPublicAccessBlock</code> permission. For more information
- * about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>The following
- * operations are related to <code>DeletePublicAccessBlock</code>:</p> <ul> <li>
- * <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html">Using
- * Amazon S3 Block Public Access</a> </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetPublicAccessBlock.html">GetPublicAccessBlock</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutPublicAccessBlock.html">PutPublicAccessBlock</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketPolicyStatus.html">GetBucketPolicyStatus</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeletePublicAccessBlock">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for DeletePublicAccessBlock that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::DeletePublicAccessBlockOutcomeCallable DeletePublicAccessBlockCallable(const Model::DeletePublicAccessBlockRequest& request) const;
+ template<typename DeletePublicAccessBlockRequestT = Model::DeletePublicAccessBlockRequest>
+ Model::DeletePublicAccessBlockOutcomeCallable DeletePublicAccessBlockCallable(const DeletePublicAccessBlockRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::DeletePublicAccessBlock, request);
+ }
/**
- * <p>Removes the <code>PublicAccessBlock</code> configuration for an Amazon S3
- * bucket. To use this operation, you must have the
- * <code>s3:PutBucketPublicAccessBlock</code> permission. For more information
- * about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>The following
- * operations are related to <code>DeletePublicAccessBlock</code>:</p> <ul> <li>
- * <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html">Using
- * Amazon S3 Block Public Access</a> </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetPublicAccessBlock.html">GetPublicAccessBlock</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutPublicAccessBlock.html">PutPublicAccessBlock</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketPolicyStatus.html">GetBucketPolicyStatus</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeletePublicAccessBlock">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for DeletePublicAccessBlock that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void DeletePublicAccessBlockAsync(const Model::DeletePublicAccessBlockRequest& request, const DeletePublicAccessBlockResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename DeletePublicAccessBlockRequestT = Model::DeletePublicAccessBlockRequest>
+ void DeletePublicAccessBlockAsync(const DeletePublicAccessBlockRequestT& request, const DeletePublicAccessBlockResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::DeletePublicAccessBlock, request, handler, context);
+ }
/**
* <p>This implementation of the GET action uses the <code>accelerate</code>
@@ -3204,68 +1431,22 @@ namespace Aws
virtual Model::GetBucketAccelerateConfigurationOutcome GetBucketAccelerateConfiguration(const Model::GetBucketAccelerateConfigurationRequest& request) const;
/**
- * <p>This implementation of the GET action uses the <code>accelerate</code>
- * subresource to return the Transfer Acceleration state of a bucket, which is
- * either <code>Enabled</code> or <code>Suspended</code>. Amazon S3 Transfer
- * Acceleration is a bucket-level feature that enables you to perform faster data
- * transfers to and from Amazon S3.</p> <p>To use this operation, you must have
- * permission to perform the <code>s3:GetAccelerateConfiguration</code> action. The
- * bucket owner has this permission by default. The bucket owner can grant this
- * permission to others. For more information about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to your Amazon S3 Resources</a> in the <i>Amazon S3 User
- * Guide</i>.</p> <p>You set the Transfer Acceleration state of an existing bucket
- * to <code>Enabled</code> or <code>Suspended</code> by using the <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketAccelerateConfiguration.html">PutBucketAccelerateConfiguration</a>
- * operation. </p> <p>A GET <code>accelerate</code> request does not return a state
- * value for a bucket that has no transfer acceleration state. A bucket has no
- * Transfer Acceleration state if a state has never been set on the bucket. </p>
- * <p>For more information about transfer acceleration, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/transfer-acceleration.html">Transfer
- * Acceleration</a> in the Amazon S3 User Guide.</p> <p class="title"> <b>Related
- * Resources</b> </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketAccelerateConfiguration.html">PutBucketAccelerateConfiguration</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketAccelerateConfiguration">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for GetBucketAccelerateConfiguration that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::GetBucketAccelerateConfigurationOutcomeCallable GetBucketAccelerateConfigurationCallable(const Model::GetBucketAccelerateConfigurationRequest& request) const;
+ template<typename GetBucketAccelerateConfigurationRequestT = Model::GetBucketAccelerateConfigurationRequest>
+ Model::GetBucketAccelerateConfigurationOutcomeCallable GetBucketAccelerateConfigurationCallable(const GetBucketAccelerateConfigurationRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::GetBucketAccelerateConfiguration, request);
+ }
/**
- * <p>This implementation of the GET action uses the <code>accelerate</code>
- * subresource to return the Transfer Acceleration state of a bucket, which is
- * either <code>Enabled</code> or <code>Suspended</code>. Amazon S3 Transfer
- * Acceleration is a bucket-level feature that enables you to perform faster data
- * transfers to and from Amazon S3.</p> <p>To use this operation, you must have
- * permission to perform the <code>s3:GetAccelerateConfiguration</code> action. The
- * bucket owner has this permission by default. The bucket owner can grant this
- * permission to others. For more information about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to your Amazon S3 Resources</a> in the <i>Amazon S3 User
- * Guide</i>.</p> <p>You set the Transfer Acceleration state of an existing bucket
- * to <code>Enabled</code> or <code>Suspended</code> by using the <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketAccelerateConfiguration.html">PutBucketAccelerateConfiguration</a>
- * operation. </p> <p>A GET <code>accelerate</code> request does not return a state
- * value for a bucket that has no transfer acceleration state. A bucket has no
- * Transfer Acceleration state if a state has never been set on the bucket. </p>
- * <p>For more information about transfer acceleration, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/transfer-acceleration.html">Transfer
- * Acceleration</a> in the Amazon S3 User Guide.</p> <p class="title"> <b>Related
- * Resources</b> </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketAccelerateConfiguration.html">PutBucketAccelerateConfiguration</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketAccelerateConfiguration">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for GetBucketAccelerateConfiguration that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void GetBucketAccelerateConfigurationAsync(const Model::GetBucketAccelerateConfigurationRequest& request, const GetBucketAccelerateConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename GetBucketAccelerateConfigurationRequestT = Model::GetBucketAccelerateConfigurationRequest>
+ void GetBucketAccelerateConfigurationAsync(const GetBucketAccelerateConfigurationRequestT& request, const GetBucketAccelerateConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::GetBucketAccelerateConfiguration, request, handler, context);
+ }
/**
* <p>This implementation of the <code>GET</code> action uses the <code>acl</code>
@@ -3273,8 +1454,14 @@ namespace Aws
* <code>GET</code> to return the ACL of the bucket, you must have
* <code>READ_ACP</code> access to the bucket. If <code>READ_ACP</code> permission
* is granted to the anonymous user, you can return the ACL of the bucket without
- * using an authorization header.</p> <p class="title"> <b>Related Resources</b>
- * </p> <ul> <li> <p> <a
+ * using an authorization header.</p> <p>If your bucket uses the bucket
+ * owner enforced setting for S3 Object Ownership, requests to read ACLs are still
+ * supported and return the <code>bucket-owner-full-control</code> ACL with the
+ * owner being the account that created the bucket. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html">
+ * Controlling object ownership and disabling ACLs</a> in the <i>Amazon S3 User
+ * Guide</i>.</p> <p class="title"> <b>Related Resources</b> </p> <ul> <li>
+ * <p> <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjects.html">ListObjects</a>
* </p> </li> </ul><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketAcl">AWS API
@@ -3283,38 +1470,22 @@ namespace Aws
virtual Model::GetBucketAclOutcome GetBucketAcl(const Model::GetBucketAclRequest& request) const;
/**
- * <p>This implementation of the <code>GET</code> action uses the <code>acl</code>
- * subresource to return the access control list (ACL) of a bucket. To use
- * <code>GET</code> to return the ACL of the bucket, you must have
- * <code>READ_ACP</code> access to the bucket. If <code>READ_ACP</code> permission
- * is granted to the anonymous user, you can return the ACL of the bucket without
- * using an authorization header.</p> <p class="title"> <b>Related Resources</b>
- * </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjects.html">ListObjects</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketAcl">AWS API
- * Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for GetBucketAcl that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::GetBucketAclOutcomeCallable GetBucketAclCallable(const Model::GetBucketAclRequest& request) const;
+ template<typename GetBucketAclRequestT = Model::GetBucketAclRequest>
+ Model::GetBucketAclOutcomeCallable GetBucketAclCallable(const GetBucketAclRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::GetBucketAcl, request);
+ }
/**
- * <p>This implementation of the <code>GET</code> action uses the <code>acl</code>
- * subresource to return the access control list (ACL) of a bucket. To use
- * <code>GET</code> to return the ACL of the bucket, you must have
- * <code>READ_ACP</code> access to the bucket. If <code>READ_ACP</code> permission
- * is granted to the anonymous user, you can return the ACL of the bucket without
- * using an authorization header.</p> <p class="title"> <b>Related Resources</b>
- * </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjects.html">ListObjects</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketAcl">AWS API
- * Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for GetBucketAcl that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void GetBucketAclAsync(const Model::GetBucketAclRequest& request, const GetBucketAclResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename GetBucketAclRequestT = Model::GetBucketAclRequest>
+ void GetBucketAclAsync(const GetBucketAclRequestT& request, const GetBucketAclResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::GetBucketAcl, request, handler, context);
+ }
/**
* <p>This implementation of the GET action returns an analytics configuration
@@ -3343,66 +1514,29 @@ namespace Aws
virtual Model::GetBucketAnalyticsConfigurationOutcome GetBucketAnalyticsConfiguration(const Model::GetBucketAnalyticsConfigurationRequest& request) const;
/**
- * <p>This implementation of the GET action returns an analytics configuration
- * (identified by the analytics configuration ID) from the bucket.</p> <p>To use
- * this operation, you must have permissions to perform the
- * <code>s3:GetAnalyticsConfiguration</code> action. The bucket owner has this
- * permission by default. The bucket owner can grant this permission to others. For
- * more information about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">
- * Permissions Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a> in the <i>Amazon S3 User
- * Guide</i>. </p> <p>For information about Amazon S3 analytics feature, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/analytics-storage-class.html">Amazon
- * S3 Analytics – Storage Class Analysis</a> in the <i>Amazon S3 User
- * Guide</i>.</p> <p class="title"> <b>Related Resources</b> </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketAnalyticsConfiguration.html">DeleteBucketAnalyticsConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketAnalyticsConfigurations.html">ListBucketAnalyticsConfigurations</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketAnalyticsConfiguration.html">PutBucketAnalyticsConfiguration</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketAnalyticsConfiguration">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for GetBucketAnalyticsConfiguration that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::GetBucketAnalyticsConfigurationOutcomeCallable GetBucketAnalyticsConfigurationCallable(const Model::GetBucketAnalyticsConfigurationRequest& request) const;
+ template<typename GetBucketAnalyticsConfigurationRequestT = Model::GetBucketAnalyticsConfigurationRequest>
+ Model::GetBucketAnalyticsConfigurationOutcomeCallable GetBucketAnalyticsConfigurationCallable(const GetBucketAnalyticsConfigurationRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::GetBucketAnalyticsConfiguration, request);
+ }
/**
- * <p>This implementation of the GET action returns an analytics configuration
- * (identified by the analytics configuration ID) from the bucket.</p> <p>To use
- * this operation, you must have permissions to perform the
- * <code>s3:GetAnalyticsConfiguration</code> action. The bucket owner has this
- * permission by default. The bucket owner can grant this permission to others. For
- * more information about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">
- * Permissions Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a> in the <i>Amazon S3 User
- * Guide</i>. </p> <p>For information about Amazon S3 analytics feature, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/analytics-storage-class.html">Amazon
- * S3 Analytics – Storage Class Analysis</a> in the <i>Amazon S3 User
- * Guide</i>.</p> <p class="title"> <b>Related Resources</b> </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketAnalyticsConfiguration.html">DeleteBucketAnalyticsConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketAnalyticsConfigurations.html">ListBucketAnalyticsConfigurations</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketAnalyticsConfiguration.html">PutBucketAnalyticsConfiguration</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketAnalyticsConfiguration">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for GetBucketAnalyticsConfiguration that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void GetBucketAnalyticsConfigurationAsync(const Model::GetBucketAnalyticsConfigurationRequest& request, const GetBucketAnalyticsConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename GetBucketAnalyticsConfigurationRequestT = Model::GetBucketAnalyticsConfigurationRequest>
+ void GetBucketAnalyticsConfigurationAsync(const GetBucketAnalyticsConfigurationRequestT& request, const GetBucketAnalyticsConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::GetBucketAnalyticsConfiguration, request, handler, context);
+ }
/**
- * <p>Returns the cors configuration information set for the bucket.</p> <p> To use
- * this operation, you must have permission to perform the s3:GetBucketCORS action.
- * By default, the bucket owner has this permission and can grant it to others.</p>
- * <p> For more information about cors, see <a
+ * <p>Returns the Cross-Origin Resource Sharing (CORS) configuration information
+ * set for the bucket.</p> <p> To use this operation, you must have permission to
+ * perform the <code>s3:GetBucketCORS</code> action. By default, the bucket owner
+ * has this permission and can grant it to others.</p> <p> For more information
+ * about CORS, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html"> Enabling
* Cross-Origin Resource Sharing</a>.</p> <p>The following operations are related
* to <code>GetBucketCors</code>:</p> <ul> <li> <p> <a
@@ -3416,42 +1550,22 @@ namespace Aws
virtual Model::GetBucketCorsOutcome GetBucketCors(const Model::GetBucketCorsRequest& request) const;
/**
- * <p>Returns the cors configuration information set for the bucket.</p> <p> To use
- * this operation, you must have permission to perform the s3:GetBucketCORS action.
- * By default, the bucket owner has this permission and can grant it to others.</p>
- * <p> For more information about cors, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html"> Enabling
- * Cross-Origin Resource Sharing</a>.</p> <p>The following operations are related
- * to <code>GetBucketCors</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketCors.html">PutBucketCors</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketCors.html">DeleteBucketCors</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketCors">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for GetBucketCors that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::GetBucketCorsOutcomeCallable GetBucketCorsCallable(const Model::GetBucketCorsRequest& request) const;
+ template<typename GetBucketCorsRequestT = Model::GetBucketCorsRequest>
+ Model::GetBucketCorsOutcomeCallable GetBucketCorsCallable(const GetBucketCorsRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::GetBucketCors, request);
+ }
/**
- * <p>Returns the cors configuration information set for the bucket.</p> <p> To use
- * this operation, you must have permission to perform the s3:GetBucketCORS action.
- * By default, the bucket owner has this permission and can grant it to others.</p>
- * <p> For more information about cors, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html"> Enabling
- * Cross-Origin Resource Sharing</a>.</p> <p>The following operations are related
- * to <code>GetBucketCors</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketCors.html">PutBucketCors</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketCors.html">DeleteBucketCors</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketCors">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for GetBucketCors that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void GetBucketCorsAsync(const Model::GetBucketCorsRequest& request, const GetBucketCorsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename GetBucketCorsRequestT = Model::GetBucketCorsRequest>
+ void GetBucketCorsAsync(const GetBucketCorsRequestT& request, const GetBucketCorsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::GetBucketCors, request, handler, context);
+ }
/**
* <p>Returns the default encryption configuration for an Amazon S3 bucket. If the
@@ -3478,70 +1592,37 @@ namespace Aws
virtual Model::GetBucketEncryptionOutcome GetBucketEncryption(const Model::GetBucketEncryptionRequest& request) const;
/**
- * <p>Returns the default encryption configuration for an Amazon S3 bucket. If the
- * bucket does not have a default encryption configuration, GetBucketEncryption
- * returns <code>ServerSideEncryptionConfigurationNotFoundError</code>. </p> <p>For
- * information about the Amazon S3 default encryption feature, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html">Amazon
- * S3 Default Bucket Encryption</a>.</p> <p> To use this operation, you must have
- * permission to perform the <code>s3:GetEncryptionConfiguration</code> action. The
- * bucket owner has this permission by default. The bucket owner can grant this
- * permission to others. For more information about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>The following
- * operations are related to <code>GetBucketEncryption</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketEncryption.html">PutBucketEncryption</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketEncryption.html">DeleteBucketEncryption</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketEncryption">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for GetBucketEncryption that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::GetBucketEncryptionOutcomeCallable GetBucketEncryptionCallable(const Model::GetBucketEncryptionRequest& request) const;
+ template<typename GetBucketEncryptionRequestT = Model::GetBucketEncryptionRequest>
+ Model::GetBucketEncryptionOutcomeCallable GetBucketEncryptionCallable(const GetBucketEncryptionRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::GetBucketEncryption, request);
+ }
/**
- * <p>Returns the default encryption configuration for an Amazon S3 bucket. If the
- * bucket does not have a default encryption configuration, GetBucketEncryption
- * returns <code>ServerSideEncryptionConfigurationNotFoundError</code>. </p> <p>For
- * information about the Amazon S3 default encryption feature, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html">Amazon
- * S3 Default Bucket Encryption</a>.</p> <p> To use this operation, you must have
- * permission to perform the <code>s3:GetEncryptionConfiguration</code> action. The
- * bucket owner has this permission by default. The bucket owner can grant this
- * permission to others. For more information about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>The following
- * operations are related to <code>GetBucketEncryption</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketEncryption.html">PutBucketEncryption</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketEncryption.html">DeleteBucketEncryption</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketEncryption">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for GetBucketEncryption that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void GetBucketEncryptionAsync(const Model::GetBucketEncryptionRequest& request, const GetBucketEncryptionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename GetBucketEncryptionRequestT = Model::GetBucketEncryptionRequest>
+ void GetBucketEncryptionAsync(const GetBucketEncryptionRequestT& request, const GetBucketEncryptionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::GetBucketEncryption, request, handler, context);
+ }
/**
* <p>Gets the S3 Intelligent-Tiering configuration from the specified bucket.</p>
* <p>The S3 Intelligent-Tiering storage class is designed to optimize storage
* costs by automatically moving data to the most cost-effective storage access
- * tier, without additional operational overhead. S3 Intelligent-Tiering delivers
- * automatic cost savings by moving data between access tiers, when access patterns
- * change.</p> <p>The S3 Intelligent-Tiering storage class is suitable for objects
- * larger than 128 KB that you plan to store for at least 30 days. If the size of
- * an object is less than 128 KB, it is not eligible for auto-tiering. Smaller
- * objects can be stored, but they are always charged at the frequent access tier
- * rates in the S3 Intelligent-Tiering storage class. </p> <p>If you delete an
- * object before the end of the 30-day minimum storage duration period, you are
- * charged for 30 days. For more information, see <a
+ * tier, without performance impact or operational overhead. S3 Intelligent-Tiering
+ * delivers automatic cost savings in three low latency and high throughput access
+ * tiers. To get the lowest storage cost on data that can be accessed in minutes to
+ * hours, you can choose to activate additional archiving capabilities.</p> <p>The
+ * S3 Intelligent-Tiering storage class is the ideal storage class for data with
+ * unknown, changing, or unpredictable access patterns, independent of object size
+ * or retention period. If the size of an object is less than 128 KB, it is not
+ * monitored and not eligible for auto-tiering. Smaller objects can be stored, but
+ * they are always charged at the Frequent Access tier rates in the S3
+ * Intelligent-Tiering storage class.</p> <p>For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html#sc-dynamic-data-access">Storage
* class for automatically optimizing frequently and infrequently accessed
* objects</a>.</p> <p>Operations related to
@@ -3559,66 +1640,22 @@ namespace Aws
virtual Model::GetBucketIntelligentTieringConfigurationOutcome GetBucketIntelligentTieringConfiguration(const Model::GetBucketIntelligentTieringConfigurationRequest& request) const;
/**
- * <p>Gets the S3 Intelligent-Tiering configuration from the specified bucket.</p>
- * <p>The S3 Intelligent-Tiering storage class is designed to optimize storage
- * costs by automatically moving data to the most cost-effective storage access
- * tier, without additional operational overhead. S3 Intelligent-Tiering delivers
- * automatic cost savings by moving data between access tiers, when access patterns
- * change.</p> <p>The S3 Intelligent-Tiering storage class is suitable for objects
- * larger than 128 KB that you plan to store for at least 30 days. If the size of
- * an object is less than 128 KB, it is not eligible for auto-tiering. Smaller
- * objects can be stored, but they are always charged at the frequent access tier
- * rates in the S3 Intelligent-Tiering storage class. </p> <p>If you delete an
- * object before the end of the 30-day minimum storage duration period, you are
- * charged for 30 days. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html#sc-dynamic-data-access">Storage
- * class for automatically optimizing frequently and infrequently accessed
- * objects</a>.</p> <p>Operations related to
- * <code>GetBucketIntelligentTieringConfiguration</code> include: </p> <ul> <li>
- * <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketIntelligentTieringConfiguration.html">DeleteBucketIntelligentTieringConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketIntelligentTieringConfiguration.html">PutBucketIntelligentTieringConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketIntelligentTieringConfigurations.html">ListBucketIntelligentTieringConfigurations</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketIntelligentTieringConfiguration">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for GetBucketIntelligentTieringConfiguration that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::GetBucketIntelligentTieringConfigurationOutcomeCallable GetBucketIntelligentTieringConfigurationCallable(const Model::GetBucketIntelligentTieringConfigurationRequest& request) const;
+ template<typename GetBucketIntelligentTieringConfigurationRequestT = Model::GetBucketIntelligentTieringConfigurationRequest>
+ Model::GetBucketIntelligentTieringConfigurationOutcomeCallable GetBucketIntelligentTieringConfigurationCallable(const GetBucketIntelligentTieringConfigurationRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::GetBucketIntelligentTieringConfiguration, request);
+ }
/**
- * <p>Gets the S3 Intelligent-Tiering configuration from the specified bucket.</p>
- * <p>The S3 Intelligent-Tiering storage class is designed to optimize storage
- * costs by automatically moving data to the most cost-effective storage access
- * tier, without additional operational overhead. S3 Intelligent-Tiering delivers
- * automatic cost savings by moving data between access tiers, when access patterns
- * change.</p> <p>The S3 Intelligent-Tiering storage class is suitable for objects
- * larger than 128 KB that you plan to store for at least 30 days. If the size of
- * an object is less than 128 KB, it is not eligible for auto-tiering. Smaller
- * objects can be stored, but they are always charged at the frequent access tier
- * rates in the S3 Intelligent-Tiering storage class. </p> <p>If you delete an
- * object before the end of the 30-day minimum storage duration period, you are
- * charged for 30 days. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html#sc-dynamic-data-access">Storage
- * class for automatically optimizing frequently and infrequently accessed
- * objects</a>.</p> <p>Operations related to
- * <code>GetBucketIntelligentTieringConfiguration</code> include: </p> <ul> <li>
- * <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketIntelligentTieringConfiguration.html">DeleteBucketIntelligentTieringConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketIntelligentTieringConfiguration.html">PutBucketIntelligentTieringConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketIntelligentTieringConfigurations.html">ListBucketIntelligentTieringConfigurations</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketIntelligentTieringConfiguration">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for GetBucketIntelligentTieringConfiguration that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void GetBucketIntelligentTieringConfigurationAsync(const Model::GetBucketIntelligentTieringConfigurationRequest& request, const GetBucketIntelligentTieringConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename GetBucketIntelligentTieringConfigurationRequestT = Model::GetBucketIntelligentTieringConfigurationRequest>
+ void GetBucketIntelligentTieringConfigurationAsync(const GetBucketIntelligentTieringConfigurationRequestT& request, const GetBucketIntelligentTieringConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::GetBucketIntelligentTieringConfiguration, request, handler, context);
+ }
/**
* <p>Returns an inventory configuration (identified by the inventory configuration
@@ -3646,58 +1683,22 @@ namespace Aws
virtual Model::GetBucketInventoryConfigurationOutcome GetBucketInventoryConfiguration(const Model::GetBucketInventoryConfigurationRequest& request) const;
/**
- * <p>Returns an inventory configuration (identified by the inventory configuration
- * ID) from the bucket.</p> <p>To use this operation, you must have permissions to
- * perform the <code>s3:GetInventoryConfiguration</code> action. The bucket owner
- * has this permission by default and can grant this permission to others. For more
- * information about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For information about
- * the Amazon S3 inventory feature, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html">Amazon
- * S3 Inventory</a>.</p> <p>The following operations are related to
- * <code>GetBucketInventoryConfiguration</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketInventoryConfiguration.html">DeleteBucketInventoryConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketInventoryConfigurations.html">ListBucketInventoryConfigurations</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketInventoryConfiguration.html">PutBucketInventoryConfiguration</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketInventoryConfiguration">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for GetBucketInventoryConfiguration that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::GetBucketInventoryConfigurationOutcomeCallable GetBucketInventoryConfigurationCallable(const Model::GetBucketInventoryConfigurationRequest& request) const;
+ template<typename GetBucketInventoryConfigurationRequestT = Model::GetBucketInventoryConfigurationRequest>
+ Model::GetBucketInventoryConfigurationOutcomeCallable GetBucketInventoryConfigurationCallable(const GetBucketInventoryConfigurationRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::GetBucketInventoryConfiguration, request);
+ }
/**
- * <p>Returns an inventory configuration (identified by the inventory configuration
- * ID) from the bucket.</p> <p>To use this operation, you must have permissions to
- * perform the <code>s3:GetInventoryConfiguration</code> action. The bucket owner
- * has this permission by default and can grant this permission to others. For more
- * information about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For information about
- * the Amazon S3 inventory feature, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html">Amazon
- * S3 Inventory</a>.</p> <p>The following operations are related to
- * <code>GetBucketInventoryConfiguration</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketInventoryConfiguration.html">DeleteBucketInventoryConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketInventoryConfigurations.html">ListBucketInventoryConfigurations</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketInventoryConfiguration.html">PutBucketInventoryConfiguration</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketInventoryConfiguration">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for GetBucketInventoryConfiguration that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void GetBucketInventoryConfigurationAsync(const Model::GetBucketInventoryConfigurationRequest& request, const GetBucketInventoryConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename GetBucketInventoryConfigurationRequestT = Model::GetBucketInventoryConfigurationRequest>
+ void GetBucketInventoryConfigurationAsync(const GetBucketInventoryConfigurationRequestT& request, const GetBucketInventoryConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::GetBucketInventoryConfiguration, request, handler, context);
+ }
/**
* <p>Bucket lifecycle configuration now supports specifying a lifecycle
@@ -3737,91 +1738,32 @@ namespace Aws
virtual Model::GetBucketLifecycleConfigurationOutcome GetBucketLifecycleConfiguration(const Model::GetBucketLifecycleConfigurationRequest& request) const;
/**
- * <p>Bucket lifecycle configuration now supports specifying a lifecycle
- * rule using an object key name prefix, one or more object tags, or a combination
- * of both. Accordingly, this section describes the latest API. The response
- * describes the new filter element that you can use to specify a filter to select
- * a subset of objects to which the rule applies. If you are using a previous
- * version of the lifecycle configuration, it still works. For the earlier action,
- * see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycle.html">GetBucketLifecycle</a>.</p>
- * <p>Returns the lifecycle configuration information set on the bucket.
- * For information about lifecycle configuration, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html">Object
- * Lifecycle Management</a>.</p> <p>To use this operation, you must have permission
- * to perform the <code>s3:GetLifecycleConfiguration</code> action. The bucket
- * owner has this permission, by default. The bucket owner can grant this
- * permission to others. For more information about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>
- * <code>GetBucketLifecycleConfiguration</code> has the following special
- * error:</p> <ul> <li> <p>Error code: <code>NoSuchLifecycleConfiguration</code>
- * </p> <ul> <li> <p>Description: The lifecycle configuration does not exist.</p>
- * </li> <li> <p>HTTP Status Code: 404 Not Found</p> </li> <li> <p>SOAP Fault Code
- * Prefix: Client</p> </li> </ul> </li> </ul> <p>The following operations are
- * related to <code>GetBucketLifecycleConfiguration</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycle.html">GetBucketLifecycle</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycle.html">PutBucketLifecycle</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketLifecycle.html">DeleteBucketLifecycle</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketLifecycleConfiguration">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for GetBucketLifecycleConfiguration that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::GetBucketLifecycleConfigurationOutcomeCallable GetBucketLifecycleConfigurationCallable(const Model::GetBucketLifecycleConfigurationRequest& request) const;
+ template<typename GetBucketLifecycleConfigurationRequestT = Model::GetBucketLifecycleConfigurationRequest>
+ Model::GetBucketLifecycleConfigurationOutcomeCallable GetBucketLifecycleConfigurationCallable(const GetBucketLifecycleConfigurationRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::GetBucketLifecycleConfiguration, request);
+ }
/**
- * <p>Bucket lifecycle configuration now supports specifying a lifecycle
- * rule using an object key name prefix, one or more object tags, or a combination
- * of both. Accordingly, this section describes the latest API. The response
- * describes the new filter element that you can use to specify a filter to select
- * a subset of objects to which the rule applies. If you are using a previous
- * version of the lifecycle configuration, it still works. For the earlier action,
- * see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycle.html">GetBucketLifecycle</a>.</p>
- * <p>Returns the lifecycle configuration information set on the bucket.
- * For information about lifecycle configuration, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html">Object
- * Lifecycle Management</a>.</p> <p>To use this operation, you must have permission
- * to perform the <code>s3:GetLifecycleConfiguration</code> action. The bucket
- * owner has this permission, by default. The bucket owner can grant this
- * permission to others. For more information about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>
- * <code>GetBucketLifecycleConfiguration</code> has the following special
- * error:</p> <ul> <li> <p>Error code: <code>NoSuchLifecycleConfiguration</code>
- * </p> <ul> <li> <p>Description: The lifecycle configuration does not exist.</p>
- * </li> <li> <p>HTTP Status Code: 404 Not Found</p> </li> <li> <p>SOAP Fault Code
- * Prefix: Client</p> </li> </ul> </li> </ul> <p>The following operations are
- * related to <code>GetBucketLifecycleConfiguration</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycle.html">GetBucketLifecycle</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycle.html">PutBucketLifecycle</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketLifecycle.html">DeleteBucketLifecycle</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketLifecycleConfiguration">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for GetBucketLifecycleConfiguration that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void GetBucketLifecycleConfigurationAsync(const Model::GetBucketLifecycleConfigurationRequest& request, const GetBucketLifecycleConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename GetBucketLifecycleConfigurationRequestT = Model::GetBucketLifecycleConfigurationRequest>
+ void GetBucketLifecycleConfigurationAsync(const GetBucketLifecycleConfigurationRequestT& request, const GetBucketLifecycleConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::GetBucketLifecycleConfiguration, request, handler, context);
+ }
/**
* <p>Returns the Region the bucket resides in. You set the bucket's Region using
* the <code>LocationConstraint</code> request parameter in a
* <code>CreateBucket</code> request. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a>.</p>
- * <p> To use this implementation of the operation, you must be the bucket
- * owner.</p> <p>The following operations are related to
- * <code>GetBucketLocation</code>:</p> <ul> <li> <p> <a
+ * <p>To use this implementation of the operation, you must be the bucket
+ * owner.</p> <p>To use this API against an access point, provide the alias of the
+ * access point in place of the bucket name.</p> <p>The following operations are
+ * related to <code>GetBucketLocation</code>:</p> <ul> <li> <p> <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>
* </p> </li> <li> <p> <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a>
@@ -3832,42 +1774,22 @@ namespace Aws
virtual Model::GetBucketLocationOutcome GetBucketLocation(const Model::GetBucketLocationRequest& request) const;
/**
- * <p>Returns the Region the bucket resides in. You set the bucket's Region using
- * the <code>LocationConstraint</code> request parameter in a
- * <code>CreateBucket</code> request. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a>.</p>
- * <p> To use this implementation of the operation, you must be the bucket
- * owner.</p> <p>The following operations are related to
- * <code>GetBucketLocation</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketLocation">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for GetBucketLocation that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::GetBucketLocationOutcomeCallable GetBucketLocationCallable(const Model::GetBucketLocationRequest& request) const;
+ template<typename GetBucketLocationRequestT = Model::GetBucketLocationRequest>
+ Model::GetBucketLocationOutcomeCallable GetBucketLocationCallable(const GetBucketLocationRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::GetBucketLocation, request);
+ }
/**
- * <p>Returns the Region the bucket resides in. You set the bucket's Region using
- * the <code>LocationConstraint</code> request parameter in a
- * <code>CreateBucket</code> request. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a>.</p>
- * <p> To use this implementation of the operation, you must be the bucket
- * owner.</p> <p>The following operations are related to
- * <code>GetBucketLocation</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketLocation">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for GetBucketLocation that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void GetBucketLocationAsync(const Model::GetBucketLocationRequest& request, const GetBucketLocationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename GetBucketLocationRequestT = Model::GetBucketLocationRequest>
+ void GetBucketLocationAsync(const GetBucketLocationRequestT& request, const GetBucketLocationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::GetBucketLocation, request, handler, context);
+ }
/**
* <p>Returns the logging status of a bucket and the permissions users have to view
@@ -3884,36 +1806,22 @@ namespace Aws
virtual Model::GetBucketLoggingOutcome GetBucketLogging(const Model::GetBucketLoggingRequest& request) const;
/**
- * <p>Returns the logging status of a bucket and the permissions users have to view
- * and modify that status. To use GET, you must be the bucket owner.</p> <p>The
- * following operations are related to <code>GetBucketLogging</code>:</p> <ul> <li>
- * <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLogging.html">PutBucketLogging</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketLogging">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for GetBucketLogging that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::GetBucketLoggingOutcomeCallable GetBucketLoggingCallable(const Model::GetBucketLoggingRequest& request) const;
+ template<typename GetBucketLoggingRequestT = Model::GetBucketLoggingRequest>
+ Model::GetBucketLoggingOutcomeCallable GetBucketLoggingCallable(const GetBucketLoggingRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::GetBucketLogging, request);
+ }
/**
- * <p>Returns the logging status of a bucket and the permissions users have to view
- * and modify that status. To use GET, you must be the bucket owner.</p> <p>The
- * following operations are related to <code>GetBucketLogging</code>:</p> <ul> <li>
- * <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLogging.html">PutBucketLogging</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketLogging">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for GetBucketLogging that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void GetBucketLoggingAsync(const Model::GetBucketLoggingRequest& request, const GetBucketLoggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename GetBucketLoggingRequestT = Model::GetBucketLoggingRequest>
+ void GetBucketLoggingAsync(const GetBucketLoggingRequestT& request, const GetBucketLoggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::GetBucketLogging, request, handler, context);
+ }
/**
* <p>Gets a metrics configuration (specified by the metrics configuration ID) from
@@ -3944,64 +1852,22 @@ namespace Aws
virtual Model::GetBucketMetricsConfigurationOutcome GetBucketMetricsConfiguration(const Model::GetBucketMetricsConfigurationRequest& request) const;
/**
- * <p>Gets a metrics configuration (specified by the metrics configuration ID) from
- * the bucket. Note that this doesn't include the daily storage metrics.</p> <p> To
- * use this operation, you must have permissions to perform the
- * <code>s3:GetMetricsConfiguration</code> action. The bucket owner has this
- * permission by default. The bucket owner can grant this permission to others. For
- * more information about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p> For information
- * about CloudWatch request metrics for Amazon S3, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html">Monitoring
- * Metrics with Amazon CloudWatch</a>.</p> <p>The following operations are related
- * to <code>GetBucketMetricsConfiguration</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketMetricsConfiguration.html">PutBucketMetricsConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketMetricsConfiguration.html">DeleteBucketMetricsConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketMetricsConfigurations.html">ListBucketMetricsConfigurations</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html">Monitoring
- * Metrics with Amazon CloudWatch</a> </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketMetricsConfiguration">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for GetBucketMetricsConfiguration that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::GetBucketMetricsConfigurationOutcomeCallable GetBucketMetricsConfigurationCallable(const Model::GetBucketMetricsConfigurationRequest& request) const;
+ template<typename GetBucketMetricsConfigurationRequestT = Model::GetBucketMetricsConfigurationRequest>
+ Model::GetBucketMetricsConfigurationOutcomeCallable GetBucketMetricsConfigurationCallable(const GetBucketMetricsConfigurationRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::GetBucketMetricsConfiguration, request);
+ }
/**
- * <p>Gets a metrics configuration (specified by the metrics configuration ID) from
- * the bucket. Note that this doesn't include the daily storage metrics.</p> <p> To
- * use this operation, you must have permissions to perform the
- * <code>s3:GetMetricsConfiguration</code> action. The bucket owner has this
- * permission by default. The bucket owner can grant this permission to others. For
- * more information about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p> For information
- * about CloudWatch request metrics for Amazon S3, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html">Monitoring
- * Metrics with Amazon CloudWatch</a>.</p> <p>The following operations are related
- * to <code>GetBucketMetricsConfiguration</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketMetricsConfiguration.html">PutBucketMetricsConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketMetricsConfiguration.html">DeleteBucketMetricsConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketMetricsConfigurations.html">ListBucketMetricsConfigurations</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html">Monitoring
- * Metrics with Amazon CloudWatch</a> </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketMetricsConfiguration">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for GetBucketMetricsConfiguration that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void GetBucketMetricsConfigurationAsync(const Model::GetBucketMetricsConfigurationRequest& request, const GetBucketMetricsConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename GetBucketMetricsConfigurationRequestT = Model::GetBucketMetricsConfigurationRequest>
+ void GetBucketMetricsConfigurationAsync(const GetBucketMetricsConfigurationRequestT& request, const GetBucketMetricsConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::GetBucketMetricsConfiguration, request, handler, context);
+ }
/**
* <p>Returns the notification configuration of a bucket.</p> <p>If notifications
@@ -4026,61 +1892,31 @@ namespace Aws
virtual Model::GetBucketNotificationConfigurationOutcome GetBucketNotificationConfiguration(const Model::GetBucketNotificationConfigurationRequest& request) const;
/**
- * <p>Returns the notification configuration of a bucket.</p> <p>If notifications
- * are not enabled on the bucket, the action returns an empty
- * <code>NotificationConfiguration</code> element.</p> <p>By default, you must be
- * the bucket owner to read the notification configuration of a bucket. However,
- * the bucket owner can use a bucket policy to grant permission to other users to
- * read this configuration with the <code>s3:GetBucketNotification</code>
- * permission.</p> <p>For more information about setting and reading the
- * notification configuration on a bucket, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Setting
- * Up Notification of Bucket Events</a>. For more information about bucket
- * policies, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html">Using
- * Bucket Policies</a>.</p> <p>The following action is related to
- * <code>GetBucketNotification</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketNotification.html">PutBucketNotification</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketNotificationConfiguration">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for GetBucketNotificationConfiguration that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::GetBucketNotificationConfigurationOutcomeCallable GetBucketNotificationConfigurationCallable(const Model::GetBucketNotificationConfigurationRequest& request) const;
+ template<typename GetBucketNotificationConfigurationRequestT = Model::GetBucketNotificationConfigurationRequest>
+ Model::GetBucketNotificationConfigurationOutcomeCallable GetBucketNotificationConfigurationCallable(const GetBucketNotificationConfigurationRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::GetBucketNotificationConfiguration, request);
+ }
/**
- * <p>Returns the notification configuration of a bucket.</p> <p>If notifications
- * are not enabled on the bucket, the action returns an empty
- * <code>NotificationConfiguration</code> element.</p> <p>By default, you must be
- * the bucket owner to read the notification configuration of a bucket. However,
- * the bucket owner can use a bucket policy to grant permission to other users to
- * read this configuration with the <code>s3:GetBucketNotification</code>
- * permission.</p> <p>For more information about setting and reading the
- * notification configuration on a bucket, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Setting
- * Up Notification of Bucket Events</a>. For more information about bucket
- * policies, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html">Using
- * Bucket Policies</a>.</p> <p>The following action is related to
- * <code>GetBucketNotification</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketNotification.html">PutBucketNotification</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketNotificationConfiguration">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for GetBucketNotificationConfiguration that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void GetBucketNotificationConfigurationAsync(const Model::GetBucketNotificationConfigurationRequest& request, const GetBucketNotificationConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename GetBucketNotificationConfigurationRequestT = Model::GetBucketNotificationConfigurationRequest>
+ void GetBucketNotificationConfigurationAsync(const GetBucketNotificationConfigurationRequestT& request, const GetBucketNotificationConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::GetBucketNotificationConfiguration, request, handler, context);
+ }
/**
* <p>Retrieves <code>OwnershipControls</code> for an Amazon S3 bucket. To use this
* operation, you must have the <code>s3:GetBucketOwnershipControls</code>
* permission. For more information about Amazon S3 permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying
- * Permissions in a Policy</a>. </p> <p>For information about Amazon S3 Object
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html">Specifying
+ * permissions in a policy</a>. </p> <p>For information about Amazon S3 Object
* Ownership, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/about-object-ownership.html">Using
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html">Using
* Object Ownership</a>. </p> <p>The following operations are related to
* <code>GetBucketOwnershipControls</code>:</p> <ul> <li> <p>
* <a>PutBucketOwnershipControls</a> </p> </li> <li> <p>
@@ -4091,56 +1927,36 @@ namespace Aws
virtual Model::GetBucketOwnershipControlsOutcome GetBucketOwnershipControls(const Model::GetBucketOwnershipControlsRequest& request) const;
/**
- * <p>Retrieves <code>OwnershipControls</code> for an Amazon S3 bucket. To use this
- * operation, you must have the <code>s3:GetBucketOwnershipControls</code>
- * permission. For more information about Amazon S3 permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying
- * Permissions in a Policy</a>. </p> <p>For information about Amazon S3 Object
- * Ownership, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/about-object-ownership.html">Using
- * Object Ownership</a>. </p> <p>The following operations are related to
- * <code>GetBucketOwnershipControls</code>:</p> <ul> <li> <p>
- * <a>PutBucketOwnershipControls</a> </p> </li> <li> <p>
- * <a>DeleteBucketOwnershipControls</a> </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketOwnershipControls">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for GetBucketOwnershipControls that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::GetBucketOwnershipControlsOutcomeCallable GetBucketOwnershipControlsCallable(const Model::GetBucketOwnershipControlsRequest& request) const;
+ template<typename GetBucketOwnershipControlsRequestT = Model::GetBucketOwnershipControlsRequest>
+ Model::GetBucketOwnershipControlsOutcomeCallable GetBucketOwnershipControlsCallable(const GetBucketOwnershipControlsRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::GetBucketOwnershipControls, request);
+ }
/**
- * <p>Retrieves <code>OwnershipControls</code> for an Amazon S3 bucket. To use this
- * operation, you must have the <code>s3:GetBucketOwnershipControls</code>
- * permission. For more information about Amazon S3 permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying
- * Permissions in a Policy</a>. </p> <p>For information about Amazon S3 Object
- * Ownership, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/about-object-ownership.html">Using
- * Object Ownership</a>. </p> <p>The following operations are related to
- * <code>GetBucketOwnershipControls</code>:</p> <ul> <li> <p>
- * <a>PutBucketOwnershipControls</a> </p> </li> <li> <p>
- * <a>DeleteBucketOwnershipControls</a> </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketOwnershipControls">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for GetBucketOwnershipControls that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void GetBucketOwnershipControlsAsync(const Model::GetBucketOwnershipControlsRequest& request, const GetBucketOwnershipControlsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename GetBucketOwnershipControlsRequestT = Model::GetBucketOwnershipControlsRequest>
+ void GetBucketOwnershipControlsAsync(const GetBucketOwnershipControlsRequestT& request, const GetBucketOwnershipControlsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::GetBucketOwnershipControls, request, handler, context);
+ }
/**
* <p>Returns the policy of a specified bucket. If you are using an identity other
- * than the root user of the AWS account that owns the bucket, the calling identity
- * must have the <code>GetBucketPolicy</code> permissions on the specified bucket
- * and belong to the bucket owner's account in order to use this operation.</p>
- * <p>If you don't have <code>GetBucketPolicy</code> permissions, Amazon S3 returns
- * a <code>403 Access Denied</code> error. If you have the correct permissions, but
- * you're not using an identity that belongs to the bucket owner's account, Amazon
- * S3 returns a <code>405 Method Not Allowed</code> error.</p> <p>As a
- * security precaution, the root user of the AWS account that owns a bucket can
- * always use this operation, even if the policy explicitly denies the root user
- * the ability to perform this action.</p> <p>For more information
- * about bucket policies, see <a
+ * than the root user of the Amazon Web Services account that owns the bucket, the
+ * calling identity must have the <code>GetBucketPolicy</code> permissions on the
+ * specified bucket and belong to the bucket owner's account in order to use this
+ * operation.</p> <p>If you don't have <code>GetBucketPolicy</code> permissions,
+ * Amazon S3 returns a <code>403 Access Denied</code> error. If you have the
+ * correct permissions, but you're not using an identity that belongs to the bucket
+ * owner's account, Amazon S3 returns a <code>405 Method Not Allowed</code>
+ * error.</p> <p>As a security precaution, the root user of the Amazon
+ * Web Services account that owns a bucket can always use this operation, even if
+ * the policy explicitly denies the root user the ability to perform this
+ * action.</p> <p>For more information about bucket policies, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html">Using
* Bucket Policies and User Policies</a>.</p> <p>The following action is related to
* <code>GetBucketPolicy</code>:</p> <ul> <li> <p> <a
@@ -4152,54 +1968,22 @@ namespace Aws
virtual Model::GetBucketPolicyOutcome GetBucketPolicy(const Model::GetBucketPolicyRequest& request) const;
/**
- * <p>Returns the policy of a specified bucket. If you are using an identity other
- * than the root user of the AWS account that owns the bucket, the calling identity
- * must have the <code>GetBucketPolicy</code> permissions on the specified bucket
- * and belong to the bucket owner's account in order to use this operation.</p>
- * <p>If you don't have <code>GetBucketPolicy</code> permissions, Amazon S3 returns
- * a <code>403 Access Denied</code> error. If you have the correct permissions, but
- * you're not using an identity that belongs to the bucket owner's account, Amazon
- * S3 returns a <code>405 Method Not Allowed</code> error.</p> <p>As a
- * security precaution, the root user of the AWS account that owns a bucket can
- * always use this operation, even if the policy explicitly denies the root user
- * the ability to perform this action.</p> <p>For more information
- * about bucket policies, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html">Using
- * Bucket Policies and User Policies</a>.</p> <p>The following action is related to
- * <code>GetBucketPolicy</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketPolicy">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for GetBucketPolicy that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::GetBucketPolicyOutcomeCallable GetBucketPolicyCallable(const Model::GetBucketPolicyRequest& request) const;
+ template<typename GetBucketPolicyRequestT = Model::GetBucketPolicyRequest>
+ Model::GetBucketPolicyOutcomeCallable GetBucketPolicyCallable(const GetBucketPolicyRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::GetBucketPolicy, request);
+ }
/**
- * <p>Returns the policy of a specified bucket. If you are using an identity other
- * than the root user of the AWS account that owns the bucket, the calling identity
- * must have the <code>GetBucketPolicy</code> permissions on the specified bucket
- * and belong to the bucket owner's account in order to use this operation.</p>
- * <p>If you don't have <code>GetBucketPolicy</code> permissions, Amazon S3 returns
- * a <code>403 Access Denied</code> error. If you have the correct permissions, but
- * you're not using an identity that belongs to the bucket owner's account, Amazon
- * S3 returns a <code>405 Method Not Allowed</code> error.</p> <p>As a
- * security precaution, the root user of the AWS account that owns a bucket can
- * always use this operation, even if the policy explicitly denies the root user
- * the ability to perform this action.</p> <p>For more information
- * about bucket policies, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html">Using
- * Bucket Policies and User Policies</a>.</p> <p>The following action is related to
- * <code>GetBucketPolicy</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketPolicy">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for GetBucketPolicy that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void GetBucketPolicyAsync(const Model::GetBucketPolicyRequest& request, const GetBucketPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename GetBucketPolicyRequestT = Model::GetBucketPolicyRequest>
+ void GetBucketPolicyAsync(const GetBucketPolicyRequestT& request, const GetBucketPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::GetBucketPolicy, request, handler, context);
+ }
/**
* <p>Retrieves the policy status for an Amazon S3 bucket, indicating whether the
@@ -4226,56 +2010,22 @@ namespace Aws
virtual Model::GetBucketPolicyStatusOutcome GetBucketPolicyStatus(const Model::GetBucketPolicyStatusRequest& request) const;
/**
- * <p>Retrieves the policy status for an Amazon S3 bucket, indicating whether the
- * bucket is public. In order to use this operation, you must have the
- * <code>s3:GetBucketPolicyStatus</code> permission. For more information about
- * Amazon S3 permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying
- * Permissions in a Policy</a>.</p> <p> For more information about when Amazon S3
- * considers a bucket public, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status">The
- * Meaning of "Public"</a>. </p> <p>The following operations are related to
- * <code>GetBucketPolicyStatus</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html">Using
- * Amazon S3 Block Public Access</a> </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetPublicAccessBlock.html">GetPublicAccessBlock</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutPublicAccessBlock.html">PutPublicAccessBlock</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeletePublicAccessBlock.html">DeletePublicAccessBlock</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketPolicyStatus">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for GetBucketPolicyStatus that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::GetBucketPolicyStatusOutcomeCallable GetBucketPolicyStatusCallable(const Model::GetBucketPolicyStatusRequest& request) const;
+ template<typename GetBucketPolicyStatusRequestT = Model::GetBucketPolicyStatusRequest>
+ Model::GetBucketPolicyStatusOutcomeCallable GetBucketPolicyStatusCallable(const GetBucketPolicyStatusRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::GetBucketPolicyStatus, request);
+ }
/**
- * <p>Retrieves the policy status for an Amazon S3 bucket, indicating whether the
- * bucket is public. In order to use this operation, you must have the
- * <code>s3:GetBucketPolicyStatus</code> permission. For more information about
- * Amazon S3 permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying
- * Permissions in a Policy</a>.</p> <p> For more information about when Amazon S3
- * considers a bucket public, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status">The
- * Meaning of "Public"</a>. </p> <p>The following operations are related to
- * <code>GetBucketPolicyStatus</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html">Using
- * Amazon S3 Block Public Access</a> </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetPublicAccessBlock.html">GetPublicAccessBlock</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutPublicAccessBlock.html">PutPublicAccessBlock</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeletePublicAccessBlock.html">DeletePublicAccessBlock</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketPolicyStatus">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for GetBucketPolicyStatus that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void GetBucketPolicyStatusAsync(const Model::GetBucketPolicyStatusRequest& request, const GetBucketPolicyStatusResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename GetBucketPolicyStatusRequestT = Model::GetBucketPolicyStatusRequest>
+ void GetBucketPolicyStatusAsync(const GetBucketPolicyStatusRequestT& request, const GetBucketPolicyStatusResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::GetBucketPolicyStatus, request, handler, context);
+ }
/**
* <p>Returns the replication configuration of a bucket.</p> <p> It can take
@@ -4305,62 +2055,22 @@ namespace Aws
virtual Model::GetBucketReplicationOutcome GetBucketReplication(const Model::GetBucketReplicationRequest& request) const;
/**
- * <p>Returns the replication configuration of a bucket.</p> <p> It can take
- * a while to propagate the put or delete a replication configuration to all Amazon
- * S3 systems. Therefore, a get request soon after put or delete can return a wrong
- * result. </p> <p> For information about replication configuration, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html">Replication</a>
- * in the <i>Amazon S3 User Guide</i>.</p> <p>This action requires permissions for
- * the <code>s3:GetReplicationConfiguration</code> action. For more information
- * about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html">Using
- * Bucket Policies and User Policies</a>.</p> <p>If you include the
- * <code>Filter</code> element in a replication configuration, you must also
- * include the <code>DeleteMarkerReplication</code> and <code>Priority</code>
- * elements. The response also returns those elements.</p> <p>For information about
- * <code>GetBucketReplication</code> errors, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ReplicationErrorCodeList">List
- * of replication-related error codes</a> </p> <p>The following operations are
- * related to <code>GetBucketReplication</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketReplication.html">PutBucketReplication</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketReplication.html">DeleteBucketReplication</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketReplication">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for GetBucketReplication that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::GetBucketReplicationOutcomeCallable GetBucketReplicationCallable(const Model::GetBucketReplicationRequest& request) const;
+ template<typename GetBucketReplicationRequestT = Model::GetBucketReplicationRequest>
+ Model::GetBucketReplicationOutcomeCallable GetBucketReplicationCallable(const GetBucketReplicationRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::GetBucketReplication, request);
+ }
/**
- * <p>Returns the replication configuration of a bucket.</p> <p> It can take
- * a while to propagate the put or delete a replication configuration to all Amazon
- * S3 systems. Therefore, a get request soon after put or delete can return a wrong
- * result. </p> <p> For information about replication configuration, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html">Replication</a>
- * in the <i>Amazon S3 User Guide</i>.</p> <p>This action requires permissions for
- * the <code>s3:GetReplicationConfiguration</code> action. For more information
- * about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html">Using
- * Bucket Policies and User Policies</a>.</p> <p>If you include the
- * <code>Filter</code> element in a replication configuration, you must also
- * include the <code>DeleteMarkerReplication</code> and <code>Priority</code>
- * elements. The response also returns those elements.</p> <p>For information about
- * <code>GetBucketReplication</code> errors, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ReplicationErrorCodeList">List
- * of replication-related error codes</a> </p> <p>The following operations are
- * related to <code>GetBucketReplication</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketReplication.html">PutBucketReplication</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketReplication.html">DeleteBucketReplication</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketReplication">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for GetBucketReplication that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void GetBucketReplicationAsync(const Model::GetBucketReplicationRequest& request, const GetBucketReplicationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename GetBucketReplicationRequestT = Model::GetBucketReplicationRequest>
+ void GetBucketReplicationAsync(const GetBucketReplicationRequestT& request, const GetBucketReplicationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::GetBucketReplication, request, handler, context);
+ }
/**
* <p>Returns the request payment configuration of a bucket. To use this version of
@@ -4376,43 +2086,31 @@ namespace Aws
virtual Model::GetBucketRequestPaymentOutcome GetBucketRequestPayment(const Model::GetBucketRequestPaymentRequest& request) const;
/**
- * <p>Returns the request payment configuration of a bucket. To use this version of
- * the operation, you must be the bucket owner. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/RequesterPaysBuckets.html">Requester
- * Pays Buckets</a>.</p> <p>The following operations are related to
- * <code>GetBucketRequestPayment</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjects.html">ListObjects</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketRequestPayment">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for GetBucketRequestPayment that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::GetBucketRequestPaymentOutcomeCallable GetBucketRequestPaymentCallable(const Model::GetBucketRequestPaymentRequest& request) const;
+ template<typename GetBucketRequestPaymentRequestT = Model::GetBucketRequestPaymentRequest>
+ Model::GetBucketRequestPaymentOutcomeCallable GetBucketRequestPaymentCallable(const GetBucketRequestPaymentRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::GetBucketRequestPayment, request);
+ }
/**
- * <p>Returns the request payment configuration of a bucket. To use this version of
- * the operation, you must be the bucket owner. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/RequesterPaysBuckets.html">Requester
- * Pays Buckets</a>.</p> <p>The following operations are related to
- * <code>GetBucketRequestPayment</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjects.html">ListObjects</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketRequestPayment">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for GetBucketRequestPayment that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void GetBucketRequestPaymentAsync(const Model::GetBucketRequestPaymentRequest& request, const GetBucketRequestPaymentResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename GetBucketRequestPaymentRequestT = Model::GetBucketRequestPaymentRequest>
+ void GetBucketRequestPaymentAsync(const GetBucketRequestPaymentRequestT& request, const GetBucketRequestPaymentResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::GetBucketRequestPayment, request, handler, context);
+ }
/**
* <p>Returns the tag set associated with the bucket.</p> <p>To use this operation,
* you must have permission to perform the <code>s3:GetBucketTagging</code> action.
* By default, the bucket owner has this permission and can grant this permission
* to others.</p> <p> <code>GetBucketTagging</code> has the following special
- * error:</p> <ul> <li> <p>Error code: <code>NoSuchTagSetError</code> </p> <ul>
- * <li> <p>Description: There is no tag set associated with the bucket.</p> </li>
- * </ul> </li> </ul> <p>The following operations are related to
+ * error:</p> <ul> <li> <p>Error code: <code>NoSuchTagSet</code> </p> <ul> <li>
+ * <p>Description: There is no tag set associated with the bucket.</p> </li> </ul>
+ * </li> </ul> <p>The following operations are related to
* <code>GetBucketTagging</code>:</p> <ul> <li> <p> <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketTagging.html">PutBucketTagging</a>
* </p> </li> <li> <p> <a
@@ -4424,44 +2122,22 @@ namespace Aws
virtual Model::GetBucketTaggingOutcome GetBucketTagging(const Model::GetBucketTaggingRequest& request) const;
/**
- * <p>Returns the tag set associated with the bucket.</p> <p>To use this operation,
- * you must have permission to perform the <code>s3:GetBucketTagging</code> action.
- * By default, the bucket owner has this permission and can grant this permission
- * to others.</p> <p> <code>GetBucketTagging</code> has the following special
- * error:</p> <ul> <li> <p>Error code: <code>NoSuchTagSetError</code> </p> <ul>
- * <li> <p>Description: There is no tag set associated with the bucket.</p> </li>
- * </ul> </li> </ul> <p>The following operations are related to
- * <code>GetBucketTagging</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketTagging.html">PutBucketTagging</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketTagging.html">DeleteBucketTagging</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketTagging">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for GetBucketTagging that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::GetBucketTaggingOutcomeCallable GetBucketTaggingCallable(const Model::GetBucketTaggingRequest& request) const;
+ template<typename GetBucketTaggingRequestT = Model::GetBucketTaggingRequest>
+ Model::GetBucketTaggingOutcomeCallable GetBucketTaggingCallable(const GetBucketTaggingRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::GetBucketTagging, request);
+ }
/**
- * <p>Returns the tag set associated with the bucket.</p> <p>To use this operation,
- * you must have permission to perform the <code>s3:GetBucketTagging</code> action.
- * By default, the bucket owner has this permission and can grant this permission
- * to others.</p> <p> <code>GetBucketTagging</code> has the following special
- * error:</p> <ul> <li> <p>Error code: <code>NoSuchTagSetError</code> </p> <ul>
- * <li> <p>Description: There is no tag set associated with the bucket.</p> </li>
- * </ul> </li> </ul> <p>The following operations are related to
- * <code>GetBucketTagging</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketTagging.html">PutBucketTagging</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketTagging.html">DeleteBucketTagging</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketTagging">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for GetBucketTagging that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void GetBucketTaggingAsync(const Model::GetBucketTaggingRequest& request, const GetBucketTaggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename GetBucketTaggingRequestT = Model::GetBucketTaggingRequest>
+ void GetBucketTaggingAsync(const GetBucketTaggingRequestT& request, const GetBucketTaggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::GetBucketTagging, request, handler, context);
+ }
/**
* <p>Returns the versioning state of a bucket.</p> <p>To retrieve the versioning
@@ -4482,44 +2158,22 @@ namespace Aws
virtual Model::GetBucketVersioningOutcome GetBucketVersioning(const Model::GetBucketVersioningRequest& request) const;
/**
- * <p>Returns the versioning state of a bucket.</p> <p>To retrieve the versioning
- * state of a bucket, you must be the bucket owner.</p> <p>This implementation also
- * returns the MFA Delete status of the versioning state. If the MFA Delete status
- * is <code>enabled</code>, the bucket owner must use an authentication device to
- * change the versioning state of the bucket.</p> <p>The following operations are
- * related to <code>GetBucketVersioning</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html">PutObject</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html">DeleteObject</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketVersioning">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for GetBucketVersioning that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::GetBucketVersioningOutcomeCallable GetBucketVersioningCallable(const Model::GetBucketVersioningRequest& request) const;
+ template<typename GetBucketVersioningRequestT = Model::GetBucketVersioningRequest>
+ Model::GetBucketVersioningOutcomeCallable GetBucketVersioningCallable(const GetBucketVersioningRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::GetBucketVersioning, request);
+ }
/**
- * <p>Returns the versioning state of a bucket.</p> <p>To retrieve the versioning
- * state of a bucket, you must be the bucket owner.</p> <p>This implementation also
- * returns the MFA Delete status of the versioning state. If the MFA Delete status
- * is <code>enabled</code>, the bucket owner must use an authentication device to
- * change the versioning state of the bucket.</p> <p>The following operations are
- * related to <code>GetBucketVersioning</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html">PutObject</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html">DeleteObject</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketVersioning">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for GetBucketVersioning that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void GetBucketVersioningAsync(const Model::GetBucketVersioningRequest& request, const GetBucketVersioningResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename GetBucketVersioningRequestT = Model::GetBucketVersioningRequest>
+ void GetBucketVersioningAsync(const GetBucketVersioningRequestT& request, const GetBucketVersioningResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::GetBucketVersioning, request, handler, context);
+ }
/**
* <p>Returns the website configuration for a bucket. To host website on Amazon S3,
@@ -4543,50 +2197,22 @@ namespace Aws
virtual Model::GetBucketWebsiteOutcome GetBucketWebsite(const Model::GetBucketWebsiteRequest& request) const;
/**
- * <p>Returns the website configuration for a bucket. To host website on Amazon S3,
- * you can configure a bucket as website by adding a website configuration. For
- * more information about hosting websites, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html">Hosting
- * Websites on Amazon S3</a>. </p> <p>This GET action requires the
- * <code>S3:GetBucketWebsite</code> permission. By default, only the bucket owner
- * can read the bucket website configuration. However, bucket owners can allow
- * other users to read the website configuration by writing a bucket policy
- * granting them the <code>S3:GetBucketWebsite</code> permission.</p> <p>The
- * following operations are related to <code>DeleteBucketWebsite</code>:</p> <ul>
- * <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketWebsite.html">DeleteBucketWebsite</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketWebsite.html">PutBucketWebsite</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketWebsite">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for GetBucketWebsite that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::GetBucketWebsiteOutcomeCallable GetBucketWebsiteCallable(const Model::GetBucketWebsiteRequest& request) const;
+ template<typename GetBucketWebsiteRequestT = Model::GetBucketWebsiteRequest>
+ Model::GetBucketWebsiteOutcomeCallable GetBucketWebsiteCallable(const GetBucketWebsiteRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::GetBucketWebsite, request);
+ }
/**
- * <p>Returns the website configuration for a bucket. To host website on Amazon S3,
- * you can configure a bucket as website by adding a website configuration. For
- * more information about hosting websites, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html">Hosting
- * Websites on Amazon S3</a>. </p> <p>This GET action requires the
- * <code>S3:GetBucketWebsite</code> permission. By default, only the bucket owner
- * can read the bucket website configuration. However, bucket owners can allow
- * other users to read the website configuration by writing a bucket policy
- * granting them the <code>S3:GetBucketWebsite</code> permission.</p> <p>The
- * following operations are related to <code>DeleteBucketWebsite</code>:</p> <ul>
- * <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketWebsite.html">DeleteBucketWebsite</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketWebsite.html">PutBucketWebsite</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetBucketWebsite">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for GetBucketWebsite that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void GetBucketWebsiteAsync(const Model::GetBucketWebsiteRequest& request, const GetBucketWebsiteResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename GetBucketWebsiteRequestT = Model::GetBucketWebsiteRequest>
+ void GetBucketWebsiteAsync(const GetBucketWebsiteRequestT& request, const GetBucketWebsiteResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::GetBucketWebsite, request, handler, context);
+ }
/**
* <p>Retrieves objects from Amazon S3. To use <code>GET</code>, you must have
@@ -4607,11 +2233,8 @@ namespace Aws
* <code>/examplebucket/photos/2006/February/sample.jpg</code>. For more
* information about request types, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/VirtualHosting.html#VirtualHostingSpecifyBucket">HTTP
- * Host Header Bucket Specification</a>.</p> <p>To distribute large files to many
- * people, you can save bandwidth costs by using BitTorrent. For more information,
- * see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3Torrent.html">Amazon S3
- * Torrent</a>. For more information about returning the ACL of an object, see <a
+ * Host Header Bucket Specification</a>.</p> <p>For more information about
+ * returning the ACL of an object, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAcl.html">GetObjectAcl</a>.</p>
* <p>If the object you are retrieving is stored in the S3 Glacier or S3 Glacier
* Deep Archive storage class, or S3 Intelligent-Tiering Archive or S3
@@ -4623,9 +2246,9 @@ namespace Aws
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html">Restoring
* Archived Objects</a>.</p> <p>Encryption request headers, like
* <code>x-amz-server-side-encryption</code>, should not be sent for GET requests
- * if your object uses server-side encryption with CMKs stored in AWS KMS (SSE-KMS)
- * or server-side encryption with Amazon S3–managed encryption keys (SSE-S3). If
- * your object does use these types of keys, you’ll get an HTTP 400 BadRequest
+ * if your object uses server-side encryption with KMS keys (SSE-KMS) or
+ * server-side encryption with Amazon S3–managed encryption keys (SSE-S3). If your
+ * object does use these types of keys, you’ll get an HTTP 400 BadRequest
* error.</p> <p>If you encrypt an object by using server-side encryption with
* customer-provided encryption keys (SSE-C) when you store the object in Amazon
* S3, then when you GET the object, you must use the following headers:</p> <ul>
@@ -4635,14 +2258,13 @@ namespace Aws
* information about SSE-C, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side
* Encryption (Using Customer-Provided Encryption Keys)</a>.</p> <p>Assuming you
- * have permission to read object tags (permission for the
- * <code>s3:GetObjectVersionTagging</code> action), the response also returns the
+ * have the relevant permission to read object tags, the response also returns the
* <code>x-amz-tagging-count</code> header that provides the count of number of
* tags associated with the object. You can use <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectTagging.html">GetObjectTagging</a>
* to retrieve the tag set associated with an object.</p> <p> <b>Permissions</b>
- * </p> <p>You need the <code>s3:GetObject</code> permission for this operation.
- * For more information, see <a
+ * </p> <p>You need the relevant read object (or version) permission for this
+ * operation. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying
* Permissions in a Policy</a>. If the object you request does not exist, the error
* Amazon S3 returns depends on whether you also have the
@@ -4653,20 +2275,23 @@ namespace Aws
* code 403 ("access denied") error.</p> </li> </ul> <p> <b>Versioning</b> </p>
* <p>By default, the GET action returns the current version of an object. To
* return a different version, use the <code>versionId</code> subresource.</p>
- * <p>If the current version of the object is a delete marker, Amazon S3
- * behaves as if the object was deleted and includes <code>x-amz-delete-marker:
- * true</code> in the response.</p> <p>For more information about
- * versioning, see <a
+ * <ul> <li> <p> If you supply a <code>versionId</code>, you need the
+ * <code>s3:GetObjectVersion</code> permission to access a specific version of an
+ * object. If you request a specific version, you do not need to have the
+ * <code>s3:GetObject</code> permission. </p> </li> <li> <p>If the current version
+ * of the object is a delete marker, Amazon S3 behaves as if the object was deleted
+ * and includes <code>x-amz-delete-marker: true</code> in the response.</p> </li>
+ * </ul> <p>For more information about versioning, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketVersioning.html">PutBucketVersioning</a>.
* </p> <p> <b>Overriding Response Header Values</b> </p> <p>There are times when
* you want to override certain response header values in a GET response. For
- * example, you might override the Content-Disposition response header value in
- * your GET request.</p> <p>You can override values for a set of response headers
- * using the following query parameters. These response header values are sent only
- * on a successful request, that is, when status code 200 OK is returned. The set
- * of headers you can override using these parameters is a subset of the headers
- * that Amazon S3 accepts when you create an object. The response headers that you
- * can override for the GET response are <code>Content-Type</code>,
+ * example, you might override the <code>Content-Disposition</code> response header
+ * value in your GET request.</p> <p>You can override values for a set of response
+ * headers using the following query parameters. These response header values are
+ * sent only on a successful request, that is, when status code 200 OK is returned.
+ * The set of headers you can override using these parameters is a subset of the
+ * headers that Amazon S3 accepts when you create an object. The response headers
+ * that you can override for the GET response are <code>Content-Type</code>,
* <code>Content-Language</code>, <code>Expires</code>, <code>Cache-Control</code>,
* <code>Content-Disposition</code>, and <code>Content-Encoding</code>. To override
* these header values in the GET response, you use the following request
@@ -4701,243 +2326,37 @@ namespace Aws
virtual Model::GetObjectOutcome GetObject(const Model::GetObjectRequest& request) const;
/**
- * <p>Retrieves objects from Amazon S3. To use <code>GET</code>, you must have
- * <code>READ</code> access to the object. If you grant <code>READ</code> access to
- * the anonymous user, you can return the object without using an authorization
- * header.</p> <p>An Amazon S3 bucket has no directory hierarchy such as you would
- * find in a typical computer file system. You can, however, create a logical
- * hierarchy by using object key names that imply a folder structure. For example,
- * instead of naming an object <code>sample.jpg</code>, you can name it
- * <code>photos/2006/February/sample.jpg</code>.</p> <p>To get an object from such
- * a logical hierarchy, specify the full key name for the object in the
- * <code>GET</code> operation. For a virtual hosted-style request example, if you
- * have the object <code>photos/2006/February/sample.jpg</code>, specify the
- * resource as <code>/photos/2006/February/sample.jpg</code>. For a path-style
- * request example, if you have the object
- * <code>photos/2006/February/sample.jpg</code> in the bucket named
- * <code>examplebucket</code>, specify the resource as
- * <code>/examplebucket/photos/2006/February/sample.jpg</code>. For more
- * information about request types, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/VirtualHosting.html#VirtualHostingSpecifyBucket">HTTP
- * Host Header Bucket Specification</a>.</p> <p>To distribute large files to many
- * people, you can save bandwidth costs by using BitTorrent. For more information,
- * see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3Torrent.html">Amazon S3
- * Torrent</a>. For more information about returning the ACL of an object, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAcl.html">GetObjectAcl</a>.</p>
- * <p>If the object you are retrieving is stored in the S3 Glacier or S3 Glacier
- * Deep Archive storage class, or S3 Intelligent-Tiering Archive or S3
- * Intelligent-Tiering Deep Archive tiers, before you can retrieve the object you
- * must first restore a copy using <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html">RestoreObject</a>.
- * Otherwise, this action returns an <code>InvalidObjectStateError</code> error.
- * For information about restoring archived objects, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html">Restoring
- * Archived Objects</a>.</p> <p>Encryption request headers, like
- * <code>x-amz-server-side-encryption</code>, should not be sent for GET requests
- * if your object uses server-side encryption with CMKs stored in AWS KMS (SSE-KMS)
- * or server-side encryption with Amazon S3–managed encryption keys (SSE-S3). If
- * your object does use these types of keys, you’ll get an HTTP 400 BadRequest
- * error.</p> <p>If you encrypt an object by using server-side encryption with
- * customer-provided encryption keys (SSE-C) when you store the object in Amazon
- * S3, then when you GET the object, you must use the following headers:</p> <ul>
- * <li> <p>x-amz-server-side-encryption-customer-algorithm</p> </li> <li>
- * <p>x-amz-server-side-encryption-customer-key</p> </li> <li>
- * <p>x-amz-server-side-encryption-customer-key-MD5</p> </li> </ul> <p>For more
- * information about SSE-C, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side
- * Encryption (Using Customer-Provided Encryption Keys)</a>.</p> <p>Assuming you
- * have permission to read object tags (permission for the
- * <code>s3:GetObjectVersionTagging</code> action), the response also returns the
- * <code>x-amz-tagging-count</code> header that provides the count of number of
- * tags associated with the object. You can use <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectTagging.html">GetObjectTagging</a>
- * to retrieve the tag set associated with an object.</p> <p> <b>Permissions</b>
- * </p> <p>You need the <code>s3:GetObject</code> permission for this operation.
- * For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying
- * Permissions in a Policy</a>. If the object you request does not exist, the error
- * Amazon S3 returns depends on whether you also have the
- * <code>s3:ListBucket</code> permission.</p> <ul> <li> <p>If you have the
- * <code>s3:ListBucket</code> permission on the bucket, Amazon S3 will return an
- * HTTP status code 404 ("no such key") error.</p> </li> <li> <p>If you don’t have
- * the <code>s3:ListBucket</code> permission, Amazon S3 will return an HTTP status
- * code 403 ("access denied") error.</p> </li> </ul> <p> <b>Versioning</b> </p>
- * <p>By default, the GET action returns the current version of an object. To
- * return a different version, use the <code>versionId</code> subresource.</p>
- * <p>If the current version of the object is a delete marker, Amazon S3
- * behaves as if the object was deleted and includes <code>x-amz-delete-marker:
- * true</code> in the response.</p> <p>For more information about
- * versioning, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketVersioning.html">PutBucketVersioning</a>.
- * </p> <p> <b>Overriding Response Header Values</b> </p> <p>There are times when
- * you want to override certain response header values in a GET response. For
- * example, you might override the Content-Disposition response header value in
- * your GET request.</p> <p>You can override values for a set of response headers
- * using the following query parameters. These response header values are sent only
- * on a successful request, that is, when status code 200 OK is returned. The set
- * of headers you can override using these parameters is a subset of the headers
- * that Amazon S3 accepts when you create an object. The response headers that you
- * can override for the GET response are <code>Content-Type</code>,
- * <code>Content-Language</code>, <code>Expires</code>, <code>Cache-Control</code>,
- * <code>Content-Disposition</code>, and <code>Content-Encoding</code>. To override
- * these header values in the GET response, you use the following request
- * parameters.</p> <p>You must sign the request, either using an
- * Authorization header or a presigned URL, when using these parameters. They
- * cannot be used with an unsigned (anonymous) request.</p> <ul> <li> <p>
- * <code>response-content-type</code> </p> </li> <li> <p>
- * <code>response-content-language</code> </p> </li> <li> <p>
- * <code>response-expires</code> </p> </li> <li> <p>
- * <code>response-cache-control</code> </p> </li> <li> <p>
- * <code>response-content-disposition</code> </p> </li> <li> <p>
- * <code>response-content-encoding</code> </p> </li> </ul> <p> <b>Additional
- * Considerations about Request Headers</b> </p> <p>If both of the
- * <code>If-Match</code> and <code>If-Unmodified-Since</code> headers are present
- * in the request as follows: <code>If-Match</code> condition evaluates to
- * <code>true</code>, and; <code>If-Unmodified-Since</code> condition evaluates to
- * <code>false</code>; then, S3 returns 200 OK and the data requested. </p> <p>If
- * both of the <code>If-None-Match</code> and <code>If-Modified-Since</code>
- * headers are present in the request as follows:<code> If-None-Match</code>
- * condition evaluates to <code>false</code>, and; <code>If-Modified-Since</code>
- * condition evaluates to <code>true</code>; then, S3 returns 304 Not Modified
- * response code.</p> <p>For more information about conditional requests, see <a
- * href="https://tools.ietf.org/html/rfc7232">RFC 7232</a>.</p> <p>The following
- * operations are related to <code>GetObject</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBuckets.html">ListBuckets</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAcl.html">GetObjectAcl</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObject">AWS API
- * Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for GetObject that returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::GetObjectOutcomeCallable GetObjectCallable(const Model::GetObjectRequest& request) const;
/**
- * <p>Retrieves objects from Amazon S3. To use <code>GET</code>, you must have
- * <code>READ</code> access to the object. If you grant <code>READ</code> access to
- * the anonymous user, you can return the object without using an authorization
- * header.</p> <p>An Amazon S3 bucket has no directory hierarchy such as you would
- * find in a typical computer file system. You can, however, create a logical
- * hierarchy by using object key names that imply a folder structure. For example,
- * instead of naming an object <code>sample.jpg</code>, you can name it
- * <code>photos/2006/February/sample.jpg</code>.</p> <p>To get an object from such
- * a logical hierarchy, specify the full key name for the object in the
- * <code>GET</code> operation. For a virtual hosted-style request example, if you
- * have the object <code>photos/2006/February/sample.jpg</code>, specify the
- * resource as <code>/photos/2006/February/sample.jpg</code>. For a path-style
- * request example, if you have the object
- * <code>photos/2006/February/sample.jpg</code> in the bucket named
- * <code>examplebucket</code>, specify the resource as
- * <code>/examplebucket/photos/2006/February/sample.jpg</code>. For more
- * information about request types, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/VirtualHosting.html#VirtualHostingSpecifyBucket">HTTP
- * Host Header Bucket Specification</a>.</p> <p>To distribute large files to many
- * people, you can save bandwidth costs by using BitTorrent. For more information,
- * see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3Torrent.html">Amazon S3
- * Torrent</a>. For more information about returning the ACL of an object, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAcl.html">GetObjectAcl</a>.</p>
- * <p>If the object you are retrieving is stored in the S3 Glacier or S3 Glacier
- * Deep Archive storage class, or S3 Intelligent-Tiering Archive or S3
- * Intelligent-Tiering Deep Archive tiers, before you can retrieve the object you
- * must first restore a copy using <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html">RestoreObject</a>.
- * Otherwise, this action returns an <code>InvalidObjectStateError</code> error.
- * For information about restoring archived objects, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html">Restoring
- * Archived Objects</a>.</p> <p>Encryption request headers, like
- * <code>x-amz-server-side-encryption</code>, should not be sent for GET requests
- * if your object uses server-side encryption with CMKs stored in AWS KMS (SSE-KMS)
- * or server-side encryption with Amazon S3–managed encryption keys (SSE-S3). If
- * your object does use these types of keys, you’ll get an HTTP 400 BadRequest
- * error.</p> <p>If you encrypt an object by using server-side encryption with
- * customer-provided encryption keys (SSE-C) when you store the object in Amazon
- * S3, then when you GET the object, you must use the following headers:</p> <ul>
- * <li> <p>x-amz-server-side-encryption-customer-algorithm</p> </li> <li>
- * <p>x-amz-server-side-encryption-customer-key</p> </li> <li>
- * <p>x-amz-server-side-encryption-customer-key-MD5</p> </li> </ul> <p>For more
- * information about SSE-C, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side
- * Encryption (Using Customer-Provided Encryption Keys)</a>.</p> <p>Assuming you
- * have permission to read object tags (permission for the
- * <code>s3:GetObjectVersionTagging</code> action), the response also returns the
- * <code>x-amz-tagging-count</code> header that provides the count of number of
- * tags associated with the object. You can use <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectTagging.html">GetObjectTagging</a>
- * to retrieve the tag set associated with an object.</p> <p> <b>Permissions</b>
- * </p> <p>You need the <code>s3:GetObject</code> permission for this operation.
- * For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying
- * Permissions in a Policy</a>. If the object you request does not exist, the error
- * Amazon S3 returns depends on whether you also have the
- * <code>s3:ListBucket</code> permission.</p> <ul> <li> <p>If you have the
- * <code>s3:ListBucket</code> permission on the bucket, Amazon S3 will return an
- * HTTP status code 404 ("no such key") error.</p> </li> <li> <p>If you don’t have
- * the <code>s3:ListBucket</code> permission, Amazon S3 will return an HTTP status
- * code 403 ("access denied") error.</p> </li> </ul> <p> <b>Versioning</b> </p>
- * <p>By default, the GET action returns the current version of an object. To
- * return a different version, use the <code>versionId</code> subresource.</p>
- * <p>If the current version of the object is a delete marker, Amazon S3
- * behaves as if the object was deleted and includes <code>x-amz-delete-marker:
- * true</code> in the response.</p> <p>For more information about
- * versioning, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketVersioning.html">PutBucketVersioning</a>.
- * </p> <p> <b>Overriding Response Header Values</b> </p> <p>There are times when
- * you want to override certain response header values in a GET response. For
- * example, you might override the Content-Disposition response header value in
- * your GET request.</p> <p>You can override values for a set of response headers
- * using the following query parameters. These response header values are sent only
- * on a successful request, that is, when status code 200 OK is returned. The set
- * of headers you can override using these parameters is a subset of the headers
- * that Amazon S3 accepts when you create an object. The response headers that you
- * can override for the GET response are <code>Content-Type</code>,
- * <code>Content-Language</code>, <code>Expires</code>, <code>Cache-Control</code>,
- * <code>Content-Disposition</code>, and <code>Content-Encoding</code>. To override
- * these header values in the GET response, you use the following request
- * parameters.</p> <p>You must sign the request, either using an
- * Authorization header or a presigned URL, when using these parameters. They
- * cannot be used with an unsigned (anonymous) request.</p> <ul> <li> <p>
- * <code>response-content-type</code> </p> </li> <li> <p>
- * <code>response-content-language</code> </p> </li> <li> <p>
- * <code>response-expires</code> </p> </li> <li> <p>
- * <code>response-cache-control</code> </p> </li> <li> <p>
- * <code>response-content-disposition</code> </p> </li> <li> <p>
- * <code>response-content-encoding</code> </p> </li> </ul> <p> <b>Additional
- * Considerations about Request Headers</b> </p> <p>If both of the
- * <code>If-Match</code> and <code>If-Unmodified-Since</code> headers are present
- * in the request as follows: <code>If-Match</code> condition evaluates to
- * <code>true</code>, and; <code>If-Unmodified-Since</code> condition evaluates to
- * <code>false</code>; then, S3 returns 200 OK and the data requested. </p> <p>If
- * both of the <code>If-None-Match</code> and <code>If-Modified-Since</code>
- * headers are present in the request as follows:<code> If-None-Match</code>
- * condition evaluates to <code>false</code>, and; <code>If-Modified-Since</code>
- * condition evaluates to <code>true</code>; then, S3 returns 304 Not Modified
- * response code.</p> <p>For more information about conditional requests, see <a
- * href="https://tools.ietf.org/html/rfc7232">RFC 7232</a>.</p> <p>The following
- * operations are related to <code>GetObject</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBuckets.html">ListBuckets</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAcl.html">GetObjectAcl</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObject">AWS API
- * Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for GetObject that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void GetObjectAsync(const Model::GetObjectRequest& request, const GetObjectResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>Returns the access control list (ACL) of an object. To use this operation,
- * you must have <code>READ_ACP</code> access to the object.</p> <p>This action is
- * not supported by Amazon S3 on Outposts.</p> <p> <b>Versioning</b> </p> <p>By
- * default, GET returns ACL information about the current version of an object. To
- * return ACL information about a different version, use the versionId
- * subresource.</p> <p>The following operations are related to
+ * you must have <code>s3:GetObjectAcl</code> permissions or <code>READ_ACP</code>
+ * access to the object. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html#acl-access-policy-permission-mapping">Mapping
+ * of ACL permissions and access policy permissions</a> in the <i>Amazon S3 User
+ * Guide</i> </p> <p>This action is not supported by Amazon S3 on Outposts.</p> <p>
+ * <b>Versioning</b> </p> <p>By default, GET returns ACL information about the
+ * current version of an object. To return ACL information about a different
+ * version, use the versionId subresource.</p> <p>If your bucket uses the
+ * bucket owner enforced setting for S3 Object Ownership, requests to read ACLs are
+ * still supported and return the <code>bucket-owner-full-control</code> ACL with
+ * the owner being the account that created the bucket. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html">
+ * Controlling object ownership and disabling ACLs</a> in the <i>Amazon S3 User
+ * Guide</i>.</p> <p>The following operations are related to
* <code>GetObjectAcl</code>:</p> <ul> <li> <p> <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>
* </p> </li> <li> <p> <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAttributes.html">GetObjectAttributes</a>
+ * </p> </li> <li> <p> <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html">DeleteObject</a>
* </p> </li> <li> <p> <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html">PutObject</a>
@@ -4948,151 +2367,213 @@ namespace Aws
virtual Model::GetObjectAclOutcome GetObjectAcl(const Model::GetObjectAclRequest& request) const;
/**
- * <p>Returns the access control list (ACL) of an object. To use this operation,
- * you must have <code>READ_ACP</code> access to the object.</p> <p>This action is
- * not supported by Amazon S3 on Outposts.</p> <p> <b>Versioning</b> </p> <p>By
- * default, GET returns ACL information about the current version of an object. To
- * return ACL information about a different version, use the versionId
- * subresource.</p> <p>The following operations are related to
- * <code>GetObjectAcl</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html">DeleteObject</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html">PutObject</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectAcl">AWS API
- * Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for GetObjectAcl that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::GetObjectAclOutcomeCallable GetObjectAclCallable(const Model::GetObjectAclRequest& request) const;
+ template<typename GetObjectAclRequestT = Model::GetObjectAclRequest>
+ Model::GetObjectAclOutcomeCallable GetObjectAclCallable(const GetObjectAclRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::GetObjectAcl, request);
+ }
/**
- * <p>Returns the access control list (ACL) of an object. To use this operation,
- * you must have <code>READ_ACP</code> access to the object.</p> <p>This action is
- * not supported by Amazon S3 on Outposts.</p> <p> <b>Versioning</b> </p> <p>By
- * default, GET returns ACL information about the current version of an object. To
- * return ACL information about a different version, use the versionId
- * subresource.</p> <p>The following operations are related to
- * <code>GetObjectAcl</code>:</p> <ul> <li> <p> <a
+ * An Async wrapper for GetObjectAcl that queues the request into a thread executor and triggers associated callback when operation has finished.
+ */
+ template<typename GetObjectAclRequestT = Model::GetObjectAclRequest>
+ void GetObjectAclAsync(const GetObjectAclRequestT& request, const GetObjectAclResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::GetObjectAcl, request, handler, context);
+ }
+
+ /**
+ * <p>Retrieves all the metadata from an object without returning the object
+ * itself. This action is useful if you're interested only in an object's metadata.
+ * To use <code>GetObjectAttributes</code>, you must have READ access to the
+ * object.</p> <p> <code>GetObjectAttributes</code> combines the functionality of
+ * <code>GetObjectAcl</code>, <code>GetObjectLegalHold</code>,
+ * <code>GetObjectLockConfiguration</code>, <code>GetObjectRetention</code>,
+ * <code>GetObjectTagging</code>, <code>HeadObject</code>, and
+ * <code>ListParts</code>. All of the data returned with each of those individual
+ * calls can be returned with a single call to
+ * <code>GetObjectAttributes</code>.</p> <p>If you encrypt an object by using
+ * server-side encryption with customer-provided encryption keys (SSE-C) when you
+ * store the object in Amazon S3, then when you retrieve the metadata from the
+ * object, you must use the following headers:</p> <ul> <li> <p>
+ * <code>x-amz-server-side-encryption-customer-algorithm</code> </p> </li> <li> <p>
+ * <code>x-amz-server-side-encryption-customer-key</code> </p> </li> <li> <p>
+ * <code>x-amz-server-side-encryption-customer-key-MD5</code> </p> </li> </ul>
+ * <p>For more information about SSE-C, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side
+ * Encryption (Using Customer-Provided Encryption Keys)</a> in the <i>Amazon S3
+ * User Guide</i>.</p> <ul> <li> <p>Encryption request headers, such as
+ * <code>x-amz-server-side-encryption</code>, should not be sent for GET requests
+ * if your object uses server-side encryption with Amazon Web Services KMS keys
+ * stored in Amazon Web Services Key Management Service (SSE-KMS) or server-side
+ * encryption with Amazon S3 managed encryption keys (SSE-S3). If your object does
+ * use these types of keys, you'll get an HTTP <code>400 Bad Request</code>
+ * error.</p> </li> <li> <p> The last modified property in this case is the
+ * creation date of the object.</p> </li> </ul> <p>Consider the following
+ * when using request headers:</p> <ul> <li> <p> If both of the
+ * <code>If-Match</code> and <code>If-Unmodified-Since</code> headers are present
+ * in the request as follows, then Amazon S3 returns the HTTP status code <code>200
+ * OK</code> and the data requested:</p> <ul> <li> <p> <code>If-Match</code>
+ * condition evaluates to <code>true</code>.</p> </li> <li> <p>
+ * <code>If-Unmodified-Since</code> condition evaluates to <code>false</code>.</p>
+ * </li> </ul> </li> <li> <p>If both of the <code>If-None-Match</code> and
+ * <code>If-Modified-Since</code> headers are present in the request as follows,
+ * then Amazon S3 returns the HTTP status code <code>304 Not Modified</code>:</p>
+ * <ul> <li> <p> <code>If-None-Match</code> condition evaluates to
+ * <code>false</code>.</p> </li> <li> <p> <code>If-Modified-Since</code> condition
+ * evaluates to <code>true</code>.</p> </li> </ul> </li> </ul> <p>For more
+ * information about conditional requests, see <a
+ * href="https://tools.ietf.org/html/rfc7232">RFC 7232</a>.</p> <p>
+ * <b>Permissions</b> </p> <p>The permissions that you need to use this operation
+ * depend on whether the bucket is versioned. If the bucket is versioned, you need
+ * both the <code>s3:GetObjectVersion</code> and
+ * <code>s3:GetObjectVersionAttributes</code> permissions for this operation. If
+ * the bucket is not versioned, you need the <code>s3:GetObject</code> and
+ * <code>s3:GetObjectAttributes</code> permissions. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying
+ * Permissions in a Policy</a> in the <i>Amazon S3 User Guide</i>. If the object
+ * that you request does not exist, the error Amazon S3 returns depends on whether
+ * you also have the <code>s3:ListBucket</code> permission.</p> <ul> <li> <p>If you
+ * have the <code>s3:ListBucket</code> permission on the bucket, Amazon S3 returns
+ * an HTTP status code <code>404 Not Found</code> ("no such key") error.</p> </li>
+ * <li> <p>If you don't have the <code>s3:ListBucket</code> permission, Amazon S3
+ * returns an HTTP status code <code>403 Forbidden</code> ("access denied")
+ * error.</p> </li> </ul> <p>The following actions are related to
+ * <code>GetObjectAttributes</code>:</p> <ul> <li> <p> <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>
* </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html">DeleteObject</a>
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAcl.html">GetObjectAcl</a>
* </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html">PutObject</a>
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectLegalHold.html">GetObjectLegalHold</a>
+ * </p> </li> <li> <p> <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectLockConfiguration.html">GetObjectLockConfiguration</a>
+ * </p> </li> <li> <p> <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectRetention.html">GetObjectRetention</a>
+ * </p> </li> <li> <p> <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectTagging.html">GetObjectTagging</a>
+ * </p> </li> <li> <p> <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_HeadObject.html">HeadObject</a>
+ * </p> </li> <li> <p> <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html">ListParts</a>
* </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectAcl">AWS API
- * Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectAttributes">AWS
+ * API Reference</a></p>
*/
- virtual void GetObjectAclAsync(const Model::GetObjectAclRequest& request, const GetObjectAclResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ virtual Model::GetObjectAttributesOutcome GetObjectAttributes(const Model::GetObjectAttributesRequest& request) const;
/**
- * <p>Gets an object's current Legal Hold status. For more information, see <a
+ * A Callable wrapper for GetObjectAttributes that returns a future to the operation so that it can be executed in parallel to other requests.
+ */
+ template<typename GetObjectAttributesRequestT = Model::GetObjectAttributesRequest>
+ Model::GetObjectAttributesOutcomeCallable GetObjectAttributesCallable(const GetObjectAttributesRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::GetObjectAttributes, request);
+ }
+
+ /**
+ * An Async wrapper for GetObjectAttributes that queues the request into a thread executor and triggers associated callback when operation has finished.
+ */
+ template<typename GetObjectAttributesRequestT = Model::GetObjectAttributesRequest>
+ void GetObjectAttributesAsync(const GetObjectAttributesRequestT& request, const GetObjectAttributesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::GetObjectAttributes, request, handler, context);
+ }
+
+ /**
+ * <p>Gets an object's current legal hold status. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Locking
- * Objects</a>.</p> <p>This action is not supported by Amazon S3 on
- * Outposts.</p><p><h3>See Also:</h3> <a
+ * Objects</a>.</p> <p>This action is not supported by Amazon S3 on Outposts.</p>
+ * <p>The following action is related to <code>GetObjectLegalHold</code>:</p> <ul>
+ * <li> <p> <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAttributes.html">GetObjectAttributes</a>
+ * </p> </li> </ul><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectLegalHold">AWS
* API Reference</a></p>
*/
virtual Model::GetObjectLegalHoldOutcome GetObjectLegalHold(const Model::GetObjectLegalHoldRequest& request) const;
/**
- * <p>Gets an object's current Legal Hold status. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Locking
- * Objects</a>.</p> <p>This action is not supported by Amazon S3 on
- * Outposts.</p><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectLegalHold">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for GetObjectLegalHold that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::GetObjectLegalHoldOutcomeCallable GetObjectLegalHoldCallable(const Model::GetObjectLegalHoldRequest& request) const;
+ template<typename GetObjectLegalHoldRequestT = Model::GetObjectLegalHoldRequest>
+ Model::GetObjectLegalHoldOutcomeCallable GetObjectLegalHoldCallable(const GetObjectLegalHoldRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::GetObjectLegalHold, request);
+ }
/**
- * <p>Gets an object's current Legal Hold status. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Locking
- * Objects</a>.</p> <p>This action is not supported by Amazon S3 on
- * Outposts.</p><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectLegalHold">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for GetObjectLegalHold that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void GetObjectLegalHoldAsync(const Model::GetObjectLegalHoldRequest& request, const GetObjectLegalHoldResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename GetObjectLegalHoldRequestT = Model::GetObjectLegalHoldRequest>
+ void GetObjectLegalHoldAsync(const GetObjectLegalHoldRequestT& request, const GetObjectLegalHoldResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::GetObjectLegalHold, request, handler, context);
+ }
/**
* <p>Gets the Object Lock configuration for a bucket. The rule specified in the
* Object Lock configuration will be applied by default to every new object placed
* in the specified bucket. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Locking
- * Objects</a>.</p><p><h3>See Also:</h3> <a
+ * Objects</a>.</p> <p>The following action is related to
+ * <code>GetObjectLockConfiguration</code>:</p> <ul> <li> <p> <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAttributes.html">GetObjectAttributes</a>
+ * </p> </li> </ul><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectLockConfiguration">AWS
* API Reference</a></p>
*/
virtual Model::GetObjectLockConfigurationOutcome GetObjectLockConfiguration(const Model::GetObjectLockConfigurationRequest& request) const;
/**
- * <p>Gets the Object Lock configuration for a bucket. The rule specified in the
- * Object Lock configuration will be applied by default to every new object placed
- * in the specified bucket. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Locking
- * Objects</a>.</p><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectLockConfiguration">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for GetObjectLockConfiguration that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::GetObjectLockConfigurationOutcomeCallable GetObjectLockConfigurationCallable(const Model::GetObjectLockConfigurationRequest& request) const;
+ template<typename GetObjectLockConfigurationRequestT = Model::GetObjectLockConfigurationRequest>
+ Model::GetObjectLockConfigurationOutcomeCallable GetObjectLockConfigurationCallable(const GetObjectLockConfigurationRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::GetObjectLockConfiguration, request);
+ }
/**
- * <p>Gets the Object Lock configuration for a bucket. The rule specified in the
- * Object Lock configuration will be applied by default to every new object placed
- * in the specified bucket. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Locking
- * Objects</a>.</p><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectLockConfiguration">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for GetObjectLockConfiguration that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void GetObjectLockConfigurationAsync(const Model::GetObjectLockConfigurationRequest& request, const GetObjectLockConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename GetObjectLockConfigurationRequestT = Model::GetObjectLockConfigurationRequest>
+ void GetObjectLockConfigurationAsync(const GetObjectLockConfigurationRequestT& request, const GetObjectLockConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::GetObjectLockConfiguration, request, handler, context);
+ }
/**
* <p>Retrieves an object's retention settings. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Locking
- * Objects</a>.</p> <p>This action is not supported by Amazon S3 on
- * Outposts.</p><p><h3>See Also:</h3> <a
+ * Objects</a>.</p> <p>This action is not supported by Amazon S3 on Outposts.</p>
+ * <p>The following action is related to <code>GetObjectRetention</code>:</p> <ul>
+ * <li> <p> <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAttributes.html">GetObjectAttributes</a>
+ * </p> </li> </ul><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectRetention">AWS
* API Reference</a></p>
*/
virtual Model::GetObjectRetentionOutcome GetObjectRetention(const Model::GetObjectRetentionRequest& request) const;
/**
- * <p>Retrieves an object's retention settings. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Locking
- * Objects</a>.</p> <p>This action is not supported by Amazon S3 on
- * Outposts.</p><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectRetention">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for GetObjectRetention that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::GetObjectRetentionOutcomeCallable GetObjectRetentionCallable(const Model::GetObjectRetentionRequest& request) const;
+ template<typename GetObjectRetentionRequestT = Model::GetObjectRetentionRequest>
+ Model::GetObjectRetentionOutcomeCallable GetObjectRetentionCallable(const GetObjectRetentionRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::GetObjectRetention, request);
+ }
/**
- * <p>Retrieves an object's retention settings. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Locking
- * Objects</a>.</p> <p>This action is not supported by Amazon S3 on
- * Outposts.</p><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectRetention">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for GetObjectRetention that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void GetObjectRetentionAsync(const Model::GetObjectRetentionRequest& request, const GetObjectRetentionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename GetObjectRetentionRequestT = Model::GetObjectRetentionRequest>
+ void GetObjectRetentionAsync(const GetObjectRetentionRequestT& request, const GetObjectRetentionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::GetObjectRetention, request, handler, context);
+ }
/**
* <p>Returns the tag-set of an object. You send the GET request against the
@@ -5106,11 +2587,13 @@ namespace Aws
* owner has this permission and can grant this permission to others.</p> <p> For
* information about the Amazon S3 object tagging feature, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-tagging.html">Object
- * Tagging</a>.</p> <p>The following action is related to
+ * Tagging</a>.</p> <p>The following actions are related to
* <code>GetObjectTagging</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObjectTagging.html">PutObjectTagging</a>
- * </p> </li> <li> <p> <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObjectTagging.html">DeleteObjectTagging</a>
+ * </p> </li> <li> <p> <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAttributes.html">GetObjectAttributes</a>
+ * </p> </li> <li> <p> <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObjectTagging.html">PutObjectTagging</a>
* </p> </li> </ul><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectTagging">AWS
* API Reference</a></p>
@@ -5118,54 +2601,22 @@ namespace Aws
virtual Model::GetObjectTaggingOutcome GetObjectTagging(const Model::GetObjectTaggingRequest& request) const;
/**
- * <p>Returns the tag-set of an object. You send the GET request against the
- * tagging subresource associated with the object.</p> <p>To use this operation,
- * you must have permission to perform the <code>s3:GetObjectTagging</code> action.
- * By default, the GET action returns information about current version of an
- * object. For a versioned bucket, you can have multiple versions of an object in
- * your bucket. To retrieve tags of any other version, use the versionId query
- * parameter. You also need permission for the
- * <code>s3:GetObjectVersionTagging</code> action.</p> <p> By default, the bucket
- * owner has this permission and can grant this permission to others.</p> <p> For
- * information about the Amazon S3 object tagging feature, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-tagging.html">Object
- * Tagging</a>.</p> <p>The following action is related to
- * <code>GetObjectTagging</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObjectTagging.html">PutObjectTagging</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObjectTagging.html">DeleteObjectTagging</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectTagging">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for GetObjectTagging that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::GetObjectTaggingOutcomeCallable GetObjectTaggingCallable(const Model::GetObjectTaggingRequest& request) const;
+ template<typename GetObjectTaggingRequestT = Model::GetObjectTaggingRequest>
+ Model::GetObjectTaggingOutcomeCallable GetObjectTaggingCallable(const GetObjectTaggingRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::GetObjectTagging, request);
+ }
/**
- * <p>Returns the tag-set of an object. You send the GET request against the
- * tagging subresource associated with the object.</p> <p>To use this operation,
- * you must have permission to perform the <code>s3:GetObjectTagging</code> action.
- * By default, the GET action returns information about current version of an
- * object. For a versioned bucket, you can have multiple versions of an object in
- * your bucket. To retrieve tags of any other version, use the versionId query
- * parameter. You also need permission for the
- * <code>s3:GetObjectVersionTagging</code> action.</p> <p> By default, the bucket
- * owner has this permission and can grant this permission to others.</p> <p> For
- * information about the Amazon S3 object tagging feature, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-tagging.html">Object
- * Tagging</a>.</p> <p>The following action is related to
- * <code>GetObjectTagging</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObjectTagging.html">PutObjectTagging</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObjectTagging.html">DeleteObjectTagging</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectTagging">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for GetObjectTagging that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void GetObjectTaggingAsync(const Model::GetObjectTaggingRequest& request, const GetObjectTaggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename GetObjectTaggingRequestT = Model::GetObjectTaggingRequest>
+ void GetObjectTaggingAsync(const GetObjectTaggingRequestT& request, const GetObjectTaggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::GetObjectTagging, request, handler, context);
+ }
/**
* <p>Returns torrent files from a bucket. BitTorrent can save you bandwidth when
@@ -5185,42 +2636,22 @@ namespace Aws
virtual Model::GetObjectTorrentOutcome GetObjectTorrent(const Model::GetObjectTorrentRequest& request) const;
/**
- * <p>Returns torrent files from a bucket. BitTorrent can save you bandwidth when
- * you're distributing large files. For more information about BitTorrent, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3Torrent.html">Using
- * BitTorrent with Amazon S3</a>.</p> <p>You can get torrent only for
- * objects that are less than 5 GB in size, and that are not encrypted using
- * server-side encryption with a customer-provided encryption key.</p>
- * <p>To use GET, you must have READ access to the object.</p> <p>This action is
- * not supported by Amazon S3 on Outposts.</p> <p>The following action is related
- * to <code>GetObjectTorrent</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectTorrent">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for GetObjectTorrent that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::GetObjectTorrentOutcomeCallable GetObjectTorrentCallable(const Model::GetObjectTorrentRequest& request) const;
+ template<typename GetObjectTorrentRequestT = Model::GetObjectTorrentRequest>
+ Model::GetObjectTorrentOutcomeCallable GetObjectTorrentCallable(const GetObjectTorrentRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::GetObjectTorrent, request);
+ }
/**
- * <p>Returns torrent files from a bucket. BitTorrent can save you bandwidth when
- * you're distributing large files. For more information about BitTorrent, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3Torrent.html">Using
- * BitTorrent with Amazon S3</a>.</p> <p>You can get torrent only for
- * objects that are less than 5 GB in size, and that are not encrypted using
- * server-side encryption with a customer-provided encryption key.</p>
- * <p>To use GET, you must have READ access to the object.</p> <p>This action is
- * not supported by Amazon S3 on Outposts.</p> <p>The following action is related
- * to <code>GetObjectTorrent</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectTorrent">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for GetObjectTorrent that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void GetObjectTorrentAsync(const Model::GetObjectTorrentRequest& request, const GetObjectTorrentResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename GetObjectTorrentRequestT = Model::GetObjectTorrentRequest>
+ void GetObjectTorrentAsync(const GetObjectTorrentRequestT& request, const GetObjectTorrentResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::GetObjectTorrent, request, handler, context);
+ }
/**
* <p>Retrieves the <code>PublicAccessBlock</code> configuration for an Amazon S3
@@ -5253,68 +2684,22 @@ namespace Aws
virtual Model::GetPublicAccessBlockOutcome GetPublicAccessBlock(const Model::GetPublicAccessBlockRequest& request) const;
/**
- * <p>Retrieves the <code>PublicAccessBlock</code> configuration for an Amazon S3
- * bucket. To use this operation, you must have the
- * <code>s3:GetBucketPublicAccessBlock</code> permission. For more information
- * about Amazon S3 permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying
- * Permissions in a Policy</a>.</p> <p>When Amazon S3 evaluates the
- * <code>PublicAccessBlock</code> configuration for a bucket or an object, it
- * checks the <code>PublicAccessBlock</code> configuration for both the bucket (or
- * the bucket that contains the object) and the bucket owner's account. If the
- * <code>PublicAccessBlock</code> settings are different between the bucket and the
- * account, Amazon S3 uses the most restrictive combination of the bucket-level and
- * account-level settings.</p> <p>For more information about when
- * Amazon S3 considers a bucket or an object public, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status">The
- * Meaning of "Public"</a>.</p> <p>The following operations are related to
- * <code>GetPublicAccessBlock</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html">Using
- * Amazon S3 Block Public Access</a> </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutPublicAccessBlock.html">PutPublicAccessBlock</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetPublicAccessBlock.html">GetPublicAccessBlock</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeletePublicAccessBlock.html">DeletePublicAccessBlock</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetPublicAccessBlock">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for GetPublicAccessBlock that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::GetPublicAccessBlockOutcomeCallable GetPublicAccessBlockCallable(const Model::GetPublicAccessBlockRequest& request) const;
+ template<typename GetPublicAccessBlockRequestT = Model::GetPublicAccessBlockRequest>
+ Model::GetPublicAccessBlockOutcomeCallable GetPublicAccessBlockCallable(const GetPublicAccessBlockRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::GetPublicAccessBlock, request);
+ }
/**
- * <p>Retrieves the <code>PublicAccessBlock</code> configuration for an Amazon S3
- * bucket. To use this operation, you must have the
- * <code>s3:GetBucketPublicAccessBlock</code> permission. For more information
- * about Amazon S3 permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying
- * Permissions in a Policy</a>.</p> <p>When Amazon S3 evaluates the
- * <code>PublicAccessBlock</code> configuration for a bucket or an object, it
- * checks the <code>PublicAccessBlock</code> configuration for both the bucket (or
- * the bucket that contains the object) and the bucket owner's account. If the
- * <code>PublicAccessBlock</code> settings are different between the bucket and the
- * account, Amazon S3 uses the most restrictive combination of the bucket-level and
- * account-level settings.</p> <p>For more information about when
- * Amazon S3 considers a bucket or an object public, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status">The
- * Meaning of "Public"</a>.</p> <p>The following operations are related to
- * <code>GetPublicAccessBlock</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html">Using
- * Amazon S3 Block Public Access</a> </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutPublicAccessBlock.html">PutPublicAccessBlock</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetPublicAccessBlock.html">GetPublicAccessBlock</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeletePublicAccessBlock.html">DeletePublicAccessBlock</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetPublicAccessBlock">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for GetPublicAccessBlock that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void GetPublicAccessBlockAsync(const Model::GetPublicAccessBlockRequest& request, const GetPublicAccessBlockResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename GetPublicAccessBlockRequestT = Model::GetPublicAccessBlockRequest>
+ void GetPublicAccessBlockAsync(const GetPublicAccessBlockRequestT& request, const GetPublicAccessBlockResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::GetPublicAccessBlock, request, handler, context);
+ }
/**
* <p>This action is useful to determine if a bucket exists and you have permission
@@ -5330,55 +2715,38 @@ namespace Aws
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
* Related to Bucket Subresource Operations</a> and <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p><p><h3>See Also:</h3>
- * <a href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/HeadBucket">AWS
- * API Reference</a></p>
+ * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>To use this API
+ * against an access point, you must provide the alias of the access point in place
+ * of the bucket name or specify the access point ARN. When using the access point
+ * ARN, you must direct requests to the access point hostname. The access point
+ * hostname takes the form
+ * AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using the
+ * Amazon Web Services SDKs, you provide the ARN in place of the bucket name. For
+ * more information see, <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
+ * access points</a>.</p><p><h3>See Also:</h3> <a
+ * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/HeadBucket">AWS API
+ * Reference</a></p>
*/
virtual Model::HeadBucketOutcome HeadBucket(const Model::HeadBucketRequest& request) const;
/**
- * <p>This action is useful to determine if a bucket exists and you have permission
- * to access it. The action returns a <code>200 OK</code> if the bucket exists and
- * you have permission to access it.</p> <p>If the bucket does not exist or you do
- * not have permission to access it, the <code>HEAD</code> request returns a
- * generic <code>404 Not Found</code> or <code>403 Forbidden</code> code. A message
- * body is not included, so you cannot determine the exception beyond these error
- * codes.</p> <p>To use this operation, you must have permissions to perform the
- * <code>s3:ListBucket</code> action. The bucket owner has this permission by
- * default and can grant this permission to others. For more information about
- * permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p><p><h3>See Also:</h3>
- * <a href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/HeadBucket">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for HeadBucket that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::HeadBucketOutcomeCallable HeadBucketCallable(const Model::HeadBucketRequest& request) const;
+ template<typename HeadBucketRequestT = Model::HeadBucketRequest>
+ Model::HeadBucketOutcomeCallable HeadBucketCallable(const HeadBucketRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::HeadBucket, request);
+ }
/**
- * <p>This action is useful to determine if a bucket exists and you have permission
- * to access it. The action returns a <code>200 OK</code> if the bucket exists and
- * you have permission to access it.</p> <p>If the bucket does not exist or you do
- * not have permission to access it, the <code>HEAD</code> request returns a
- * generic <code>404 Not Found</code> or <code>403 Forbidden</code> code. A message
- * body is not included, so you cannot determine the exception beyond these error
- * codes.</p> <p>To use this operation, you must have permissions to perform the
- * <code>s3:ListBucket</code> action. The bucket owner has this permission by
- * default and can grant this permission to others. For more information about
- * permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p><p><h3>See Also:</h3>
- * <a href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/HeadBucket">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for HeadBucket that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void HeadBucketAsync(const Model::HeadBucketRequest& request, const HeadBucketResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename HeadBucketRequestT = Model::HeadBucketRequest>
+ void HeadBucketAsync(const HeadBucketRequestT& request, const HeadBucketResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::HeadBucket, request, handler, context);
+ }
/**
* <p>The HEAD action retrieves metadata from an object without returning the
@@ -5401,12 +2769,11 @@ namespace Aws
* Encryption (Using Customer-Provided Encryption Keys)</a>.</p> <ul> <li>
* <p>Encryption request headers, like <code>x-amz-server-side-encryption</code>,
* should not be sent for GET requests if your object uses server-side encryption
- * with CMKs stored in AWS KMS (SSE-KMS) or server-side encryption with Amazon
- * S3–managed encryption keys (SSE-S3). If your object does use these types of
- * keys, you’ll get an HTTP 400 BadRequest error.</p> </li> <li> <p> The last
- * modified property in this case is the creation date of the object.</p> </li>
- * </ul> <p>Request headers are limited to 8 KB in size. For more
- * information, see <a
+ * with KMS keys (SSE-KMS) or server-side encryption with Amazon S3–managed
+ * encryption keys (SSE-S3). If your object does use these types of keys, you’ll
+ * get an HTTP 400 BadRequest error.</p> </li> <li> <p> The last modified property
+ * in this case is the creation date of the object.</p> </li> </ul>
+ * <p>Request headers are limited to 8 KB in size. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTCommonRequestHeaders.html">Common
* Request Headers</a>.</p> <p>Consider the following when using request
* headers:</p> <ul> <li> <p> Consideration 1 – If both of the
@@ -5423,8 +2790,8 @@ namespace Aws
* </li> </ul> <p>Then Amazon S3 returns the <code>304 Not Modified</code> response
* code.</p> </li> </ul> <p>For more information about conditional requests, see <a
* href="https://tools.ietf.org/html/rfc7232">RFC 7232</a>.</p> <p>
- * <b>Permissions</b> </p> <p>You need the <code>s3:GetObject</code> permission for
- * this operation. For more information, see <a
+ * <b>Permissions</b> </p> <p>You need the relevant read object (or version)
+ * permission for this operation. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying
* Permissions in a Policy</a>. If the object you request does not exist, the error
* Amazon S3 returns depends on whether you also have the s3:ListBucket
@@ -5432,9 +2799,11 @@ namespace Aws
* permission on the bucket, Amazon S3 returns an HTTP status code 404 ("no such
* key") error.</p> </li> <li> <p>If you don’t have the <code>s3:ListBucket</code>
* permission, Amazon S3 returns an HTTP status code 403 ("access denied")
- * error.</p> </li> </ul> <p>The following action is related to
+ * error.</p> </li> </ul> <p>The following actions are related to
* <code>HeadObject</code>:</p> <ul> <li> <p> <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>
+ * </p> </li> <li> <p> <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAttributes.html">GetObjectAttributes</a>
* </p> </li> </ul><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/HeadObject">AWS API
* Reference</a></p>
@@ -5442,130 +2811,22 @@ namespace Aws
virtual Model::HeadObjectOutcome HeadObject(const Model::HeadObjectRequest& request) const;
/**
- * <p>The HEAD action retrieves metadata from an object without returning the
- * object itself. This action is useful if you're only interested in an object's
- * metadata. To use HEAD, you must have READ access to the object.</p> <p>A
- * <code>HEAD</code> request has the same options as a <code>GET</code> action on
- * an object. The response is identical to the <code>GET</code> response except
- * that there is no response body. Because of this, if the <code>HEAD</code>
- * request generates an error, it returns a generic <code>404 Not Found</code> or
- * <code>403 Forbidden</code> code. It is not possible to retrieve the exact
- * exception beyond these error codes.</p> <p>If you encrypt an object by using
- * server-side encryption with customer-provided encryption keys (SSE-C) when you
- * store the object in Amazon S3, then when you retrieve the metadata from the
- * object, you must use the following headers:</p> <ul> <li>
- * <p>x-amz-server-side-encryption-customer-algorithm</p> </li> <li>
- * <p>x-amz-server-side-encryption-customer-key</p> </li> <li>
- * <p>x-amz-server-side-encryption-customer-key-MD5</p> </li> </ul> <p>For more
- * information about SSE-C, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side
- * Encryption (Using Customer-Provided Encryption Keys)</a>.</p> <ul> <li>
- * <p>Encryption request headers, like <code>x-amz-server-side-encryption</code>,
- * should not be sent for GET requests if your object uses server-side encryption
- * with CMKs stored in AWS KMS (SSE-KMS) or server-side encryption with Amazon
- * S3–managed encryption keys (SSE-S3). If your object does use these types of
- * keys, you’ll get an HTTP 400 BadRequest error.</p> </li> <li> <p> The last
- * modified property in this case is the creation date of the object.</p> </li>
- * </ul> <p>Request headers are limited to 8 KB in size. For more
- * information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTCommonRequestHeaders.html">Common
- * Request Headers</a>.</p> <p>Consider the following when using request
- * headers:</p> <ul> <li> <p> Consideration 1 – If both of the
- * <code>If-Match</code> and <code>If-Unmodified-Since</code> headers are present
- * in the request as follows:</p> <ul> <li> <p> <code>If-Match</code> condition
- * evaluates to <code>true</code>, and;</p> </li> <li> <p>
- * <code>If-Unmodified-Since</code> condition evaluates to <code>false</code>;</p>
- * </li> </ul> <p>Then Amazon S3 returns <code>200 OK</code> and the data
- * requested.</p> </li> <li> <p> Consideration 2 – If both of the
- * <code>If-None-Match</code> and <code>If-Modified-Since</code> headers are
- * present in the request as follows:</p> <ul> <li> <p> <code>If-None-Match</code>
- * condition evaluates to <code>false</code>, and;</p> </li> <li> <p>
- * <code>If-Modified-Since</code> condition evaluates to <code>true</code>;</p>
- * </li> </ul> <p>Then Amazon S3 returns the <code>304 Not Modified</code> response
- * code.</p> </li> </ul> <p>For more information about conditional requests, see <a
- * href="https://tools.ietf.org/html/rfc7232">RFC 7232</a>.</p> <p>
- * <b>Permissions</b> </p> <p>You need the <code>s3:GetObject</code> permission for
- * this operation. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying
- * Permissions in a Policy</a>. If the object you request does not exist, the error
- * Amazon S3 returns depends on whether you also have the s3:ListBucket
- * permission.</p> <ul> <li> <p>If you have the <code>s3:ListBucket</code>
- * permission on the bucket, Amazon S3 returns an HTTP status code 404 ("no such
- * key") error.</p> </li> <li> <p>If you don’t have the <code>s3:ListBucket</code>
- * permission, Amazon S3 returns an HTTP status code 403 ("access denied")
- * error.</p> </li> </ul> <p>The following action is related to
- * <code>HeadObject</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/HeadObject">AWS API
- * Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for HeadObject that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::HeadObjectOutcomeCallable HeadObjectCallable(const Model::HeadObjectRequest& request) const;
+ template<typename HeadObjectRequestT = Model::HeadObjectRequest>
+ Model::HeadObjectOutcomeCallable HeadObjectCallable(const HeadObjectRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::HeadObject, request);
+ }
/**
- * <p>The HEAD action retrieves metadata from an object without returning the
- * object itself. This action is useful if you're only interested in an object's
- * metadata. To use HEAD, you must have READ access to the object.</p> <p>A
- * <code>HEAD</code> request has the same options as a <code>GET</code> action on
- * an object. The response is identical to the <code>GET</code> response except
- * that there is no response body. Because of this, if the <code>HEAD</code>
- * request generates an error, it returns a generic <code>404 Not Found</code> or
- * <code>403 Forbidden</code> code. It is not possible to retrieve the exact
- * exception beyond these error codes.</p> <p>If you encrypt an object by using
- * server-side encryption with customer-provided encryption keys (SSE-C) when you
- * store the object in Amazon S3, then when you retrieve the metadata from the
- * object, you must use the following headers:</p> <ul> <li>
- * <p>x-amz-server-side-encryption-customer-algorithm</p> </li> <li>
- * <p>x-amz-server-side-encryption-customer-key</p> </li> <li>
- * <p>x-amz-server-side-encryption-customer-key-MD5</p> </li> </ul> <p>For more
- * information about SSE-C, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side
- * Encryption (Using Customer-Provided Encryption Keys)</a>.</p> <ul> <li>
- * <p>Encryption request headers, like <code>x-amz-server-side-encryption</code>,
- * should not be sent for GET requests if your object uses server-side encryption
- * with CMKs stored in AWS KMS (SSE-KMS) or server-side encryption with Amazon
- * S3–managed encryption keys (SSE-S3). If your object does use these types of
- * keys, you’ll get an HTTP 400 BadRequest error.</p> </li> <li> <p> The last
- * modified property in this case is the creation date of the object.</p> </li>
- * </ul> <p>Request headers are limited to 8 KB in size. For more
- * information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTCommonRequestHeaders.html">Common
- * Request Headers</a>.</p> <p>Consider the following when using request
- * headers:</p> <ul> <li> <p> Consideration 1 – If both of the
- * <code>If-Match</code> and <code>If-Unmodified-Since</code> headers are present
- * in the request as follows:</p> <ul> <li> <p> <code>If-Match</code> condition
- * evaluates to <code>true</code>, and;</p> </li> <li> <p>
- * <code>If-Unmodified-Since</code> condition evaluates to <code>false</code>;</p>
- * </li> </ul> <p>Then Amazon S3 returns <code>200 OK</code> and the data
- * requested.</p> </li> <li> <p> Consideration 2 – If both of the
- * <code>If-None-Match</code> and <code>If-Modified-Since</code> headers are
- * present in the request as follows:</p> <ul> <li> <p> <code>If-None-Match</code>
- * condition evaluates to <code>false</code>, and;</p> </li> <li> <p>
- * <code>If-Modified-Since</code> condition evaluates to <code>true</code>;</p>
- * </li> </ul> <p>Then Amazon S3 returns the <code>304 Not Modified</code> response
- * code.</p> </li> </ul> <p>For more information about conditional requests, see <a
- * href="https://tools.ietf.org/html/rfc7232">RFC 7232</a>.</p> <p>
- * <b>Permissions</b> </p> <p>You need the <code>s3:GetObject</code> permission for
- * this operation. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying
- * Permissions in a Policy</a>. If the object you request does not exist, the error
- * Amazon S3 returns depends on whether you also have the s3:ListBucket
- * permission.</p> <ul> <li> <p>If you have the <code>s3:ListBucket</code>
- * permission on the bucket, Amazon S3 returns an HTTP status code 404 ("no such
- * key") error.</p> </li> <li> <p>If you don’t have the <code>s3:ListBucket</code>
- * permission, Amazon S3 returns an HTTP status code 403 ("access denied")
- * error.</p> </li> </ul> <p>The following action is related to
- * <code>HeadObject</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/HeadObject">AWS API
- * Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for HeadObject that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void HeadObjectAsync(const Model::HeadObjectRequest& request, const HeadObjectResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename HeadObjectRequestT = Model::HeadObjectRequest>
+ void HeadObjectAsync(const HeadObjectRequestT& request, const HeadObjectResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::HeadObject, request, handler, context);
+ }
/**
* <p>Lists the analytics configurations for the bucket. You can have up to 1,000
@@ -5601,88 +2862,37 @@ namespace Aws
virtual Model::ListBucketAnalyticsConfigurationsOutcome ListBucketAnalyticsConfigurations(const Model::ListBucketAnalyticsConfigurationsRequest& request) const;
/**
- * <p>Lists the analytics configurations for the bucket. You can have up to 1,000
- * analytics configurations per bucket.</p> <p>This action supports list pagination
- * and does not return more than 100 configurations at a time. You should always
- * check the <code>IsTruncated</code> element in the response. If there are no more
- * configurations to list, <code>IsTruncated</code> is set to false. If there are
- * more configurations to list, <code>IsTruncated</code> is set to true, and there
- * will be a value in <code>NextContinuationToken</code>. You use the
- * <code>NextContinuationToken</code> value to continue the pagination of the list
- * by passing the value in continuation-token in the request to <code>GET</code>
- * the next page.</p> <p>To use this operation, you must have permissions to
- * perform the <code>s3:GetAnalyticsConfiguration</code> action. The bucket owner
- * has this permission by default. The bucket owner can grant this permission to
- * others. For more information about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For information about
- * Amazon S3 analytics feature, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/analytics-storage-class.html">Amazon
- * S3 Analytics – Storage Class Analysis</a>. </p> <p>The following operations are
- * related to <code>ListBucketAnalyticsConfigurations</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketAnalyticsConfiguration.html">GetBucketAnalyticsConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketAnalyticsConfiguration.html">DeleteBucketAnalyticsConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketAnalyticsConfiguration.html">PutBucketAnalyticsConfiguration</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListBucketAnalyticsConfigurations">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for ListBucketAnalyticsConfigurations that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::ListBucketAnalyticsConfigurationsOutcomeCallable ListBucketAnalyticsConfigurationsCallable(const Model::ListBucketAnalyticsConfigurationsRequest& request) const;
+ template<typename ListBucketAnalyticsConfigurationsRequestT = Model::ListBucketAnalyticsConfigurationsRequest>
+ Model::ListBucketAnalyticsConfigurationsOutcomeCallable ListBucketAnalyticsConfigurationsCallable(const ListBucketAnalyticsConfigurationsRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::ListBucketAnalyticsConfigurations, request);
+ }
/**
- * <p>Lists the analytics configurations for the bucket. You can have up to 1,000
- * analytics configurations per bucket.</p> <p>This action supports list pagination
- * and does not return more than 100 configurations at a time. You should always
- * check the <code>IsTruncated</code> element in the response. If there are no more
- * configurations to list, <code>IsTruncated</code> is set to false. If there are
- * more configurations to list, <code>IsTruncated</code> is set to true, and there
- * will be a value in <code>NextContinuationToken</code>. You use the
- * <code>NextContinuationToken</code> value to continue the pagination of the list
- * by passing the value in continuation-token in the request to <code>GET</code>
- * the next page.</p> <p>To use this operation, you must have permissions to
- * perform the <code>s3:GetAnalyticsConfiguration</code> action. The bucket owner
- * has this permission by default. The bucket owner can grant this permission to
- * others. For more information about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For information about
- * Amazon S3 analytics feature, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/analytics-storage-class.html">Amazon
- * S3 Analytics – Storage Class Analysis</a>. </p> <p>The following operations are
- * related to <code>ListBucketAnalyticsConfigurations</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketAnalyticsConfiguration.html">GetBucketAnalyticsConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketAnalyticsConfiguration.html">DeleteBucketAnalyticsConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketAnalyticsConfiguration.html">PutBucketAnalyticsConfiguration</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListBucketAnalyticsConfigurations">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for ListBucketAnalyticsConfigurations that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void ListBucketAnalyticsConfigurationsAsync(const Model::ListBucketAnalyticsConfigurationsRequest& request, const ListBucketAnalyticsConfigurationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename ListBucketAnalyticsConfigurationsRequestT = Model::ListBucketAnalyticsConfigurationsRequest>
+ void ListBucketAnalyticsConfigurationsAsync(const ListBucketAnalyticsConfigurationsRequestT& request, const ListBucketAnalyticsConfigurationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::ListBucketAnalyticsConfigurations, request, handler, context);
+ }
/**
* <p>Lists the S3 Intelligent-Tiering configuration from the specified bucket.</p>
* <p>The S3 Intelligent-Tiering storage class is designed to optimize storage
* costs by automatically moving data to the most cost-effective storage access
- * tier, without additional operational overhead. S3 Intelligent-Tiering delivers
- * automatic cost savings by moving data between access tiers, when access patterns
- * change.</p> <p>The S3 Intelligent-Tiering storage class is suitable for objects
- * larger than 128 KB that you plan to store for at least 30 days. If the size of
- * an object is less than 128 KB, it is not eligible for auto-tiering. Smaller
- * objects can be stored, but they are always charged at the frequent access tier
- * rates in the S3 Intelligent-Tiering storage class. </p> <p>If you delete an
- * object before the end of the 30-day minimum storage duration period, you are
- * charged for 30 days. For more information, see <a
+ * tier, without performance impact or operational overhead. S3 Intelligent-Tiering
+ * delivers automatic cost savings in three low latency and high throughput access
+ * tiers. To get the lowest storage cost on data that can be accessed in minutes to
+ * hours, you can choose to activate additional archiving capabilities.</p> <p>The
+ * S3 Intelligent-Tiering storage class is the ideal storage class for data with
+ * unknown, changing, or unpredictable access patterns, independent of object size
+ * or retention period. If the size of an object is less than 128 KB, it is not
+ * monitored and not eligible for auto-tiering. Smaller objects can be stored, but
+ * they are always charged at the Frequent Access tier rates in the S3
+ * Intelligent-Tiering storage class.</p> <p>For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html#sc-dynamic-data-access">Storage
* class for automatically optimizing frequently and infrequently accessed
* objects</a>.</p> <p>Operations related to
@@ -5700,66 +2910,22 @@ namespace Aws
virtual Model::ListBucketIntelligentTieringConfigurationsOutcome ListBucketIntelligentTieringConfigurations(const Model::ListBucketIntelligentTieringConfigurationsRequest& request) const;
/**
- * <p>Lists the S3 Intelligent-Tiering configuration from the specified bucket.</p>
- * <p>The S3 Intelligent-Tiering storage class is designed to optimize storage
- * costs by automatically moving data to the most cost-effective storage access
- * tier, without additional operational overhead. S3 Intelligent-Tiering delivers
- * automatic cost savings by moving data between access tiers, when access patterns
- * change.</p> <p>The S3 Intelligent-Tiering storage class is suitable for objects
- * larger than 128 KB that you plan to store for at least 30 days. If the size of
- * an object is less than 128 KB, it is not eligible for auto-tiering. Smaller
- * objects can be stored, but they are always charged at the frequent access tier
- * rates in the S3 Intelligent-Tiering storage class. </p> <p>If you delete an
- * object before the end of the 30-day minimum storage duration period, you are
- * charged for 30 days. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html#sc-dynamic-data-access">Storage
- * class for automatically optimizing frequently and infrequently accessed
- * objects</a>.</p> <p>Operations related to
- * <code>ListBucketIntelligentTieringConfigurations</code> include: </p> <ul> <li>
- * <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketIntelligentTieringConfiguration.html">DeleteBucketIntelligentTieringConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketIntelligentTieringConfiguration.html">PutBucketIntelligentTieringConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketIntelligentTieringConfiguration.html">GetBucketIntelligentTieringConfiguration</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListBucketIntelligentTieringConfigurations">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for ListBucketIntelligentTieringConfigurations that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::ListBucketIntelligentTieringConfigurationsOutcomeCallable ListBucketIntelligentTieringConfigurationsCallable(const Model::ListBucketIntelligentTieringConfigurationsRequest& request) const;
+ template<typename ListBucketIntelligentTieringConfigurationsRequestT = Model::ListBucketIntelligentTieringConfigurationsRequest>
+ Model::ListBucketIntelligentTieringConfigurationsOutcomeCallable ListBucketIntelligentTieringConfigurationsCallable(const ListBucketIntelligentTieringConfigurationsRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::ListBucketIntelligentTieringConfigurations, request);
+ }
/**
- * <p>Lists the S3 Intelligent-Tiering configuration from the specified bucket.</p>
- * <p>The S3 Intelligent-Tiering storage class is designed to optimize storage
- * costs by automatically moving data to the most cost-effective storage access
- * tier, without additional operational overhead. S3 Intelligent-Tiering delivers
- * automatic cost savings by moving data between access tiers, when access patterns
- * change.</p> <p>The S3 Intelligent-Tiering storage class is suitable for objects
- * larger than 128 KB that you plan to store for at least 30 days. If the size of
- * an object is less than 128 KB, it is not eligible for auto-tiering. Smaller
- * objects can be stored, but they are always charged at the frequent access tier
- * rates in the S3 Intelligent-Tiering storage class. </p> <p>If you delete an
- * object before the end of the 30-day minimum storage duration period, you are
- * charged for 30 days. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html#sc-dynamic-data-access">Storage
- * class for automatically optimizing frequently and infrequently accessed
- * objects</a>.</p> <p>Operations related to
- * <code>ListBucketIntelligentTieringConfigurations</code> include: </p> <ul> <li>
- * <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketIntelligentTieringConfiguration.html">DeleteBucketIntelligentTieringConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketIntelligentTieringConfiguration.html">PutBucketIntelligentTieringConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketIntelligentTieringConfiguration.html">GetBucketIntelligentTieringConfiguration</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListBucketIntelligentTieringConfigurations">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for ListBucketIntelligentTieringConfigurations that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void ListBucketIntelligentTieringConfigurationsAsync(const Model::ListBucketIntelligentTieringConfigurationsRequest& request, const ListBucketIntelligentTieringConfigurationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename ListBucketIntelligentTieringConfigurationsRequestT = Model::ListBucketIntelligentTieringConfigurationsRequest>
+ void ListBucketIntelligentTieringConfigurationsAsync(const ListBucketIntelligentTieringConfigurationsRequestT& request, const ListBucketIntelligentTieringConfigurationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::ListBucketIntelligentTieringConfigurations, request, handler, context);
+ }
/**
* <p>Returns a list of inventory configurations for the bucket. You can have up to
@@ -5795,74 +2961,22 @@ namespace Aws
virtual Model::ListBucketInventoryConfigurationsOutcome ListBucketInventoryConfigurations(const Model::ListBucketInventoryConfigurationsRequest& request) const;
/**
- * <p>Returns a list of inventory configurations for the bucket. You can have up to
- * 1,000 analytics configurations per bucket.</p> <p>This action supports list
- * pagination and does not return more than 100 configurations at a time. Always
- * check the <code>IsTruncated</code> element in the response. If there are no more
- * configurations to list, <code>IsTruncated</code> is set to false. If there are
- * more configurations to list, <code>IsTruncated</code> is set to true, and there
- * is a value in <code>NextContinuationToken</code>. You use the
- * <code>NextContinuationToken</code> value to continue the pagination of the list
- * by passing the value in continuation-token in the request to <code>GET</code>
- * the next page.</p> <p> To use this operation, you must have permissions to
- * perform the <code>s3:GetInventoryConfiguration</code> action. The bucket owner
- * has this permission by default. The bucket owner can grant this permission to
- * others. For more information about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For information about
- * the Amazon S3 inventory feature, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html">Amazon
- * S3 Inventory</a> </p> <p>The following operations are related to
- * <code>ListBucketInventoryConfigurations</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketInventoryConfiguration.html">GetBucketInventoryConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketInventoryConfiguration.html">DeleteBucketInventoryConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketInventoryConfiguration.html">PutBucketInventoryConfiguration</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListBucketInventoryConfigurations">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for ListBucketInventoryConfigurations that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::ListBucketInventoryConfigurationsOutcomeCallable ListBucketInventoryConfigurationsCallable(const Model::ListBucketInventoryConfigurationsRequest& request) const;
+ template<typename ListBucketInventoryConfigurationsRequestT = Model::ListBucketInventoryConfigurationsRequest>
+ Model::ListBucketInventoryConfigurationsOutcomeCallable ListBucketInventoryConfigurationsCallable(const ListBucketInventoryConfigurationsRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::ListBucketInventoryConfigurations, request);
+ }
/**
- * <p>Returns a list of inventory configurations for the bucket. You can have up to
- * 1,000 analytics configurations per bucket.</p> <p>This action supports list
- * pagination and does not return more than 100 configurations at a time. Always
- * check the <code>IsTruncated</code> element in the response. If there are no more
- * configurations to list, <code>IsTruncated</code> is set to false. If there are
- * more configurations to list, <code>IsTruncated</code> is set to true, and there
- * is a value in <code>NextContinuationToken</code>. You use the
- * <code>NextContinuationToken</code> value to continue the pagination of the list
- * by passing the value in continuation-token in the request to <code>GET</code>
- * the next page.</p> <p> To use this operation, you must have permissions to
- * perform the <code>s3:GetInventoryConfiguration</code> action. The bucket owner
- * has this permission by default. The bucket owner can grant this permission to
- * others. For more information about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For information about
- * the Amazon S3 inventory feature, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html">Amazon
- * S3 Inventory</a> </p> <p>The following operations are related to
- * <code>ListBucketInventoryConfigurations</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketInventoryConfiguration.html">GetBucketInventoryConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketInventoryConfiguration.html">DeleteBucketInventoryConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketInventoryConfiguration.html">PutBucketInventoryConfiguration</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListBucketInventoryConfigurations">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for ListBucketInventoryConfigurations that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void ListBucketInventoryConfigurationsAsync(const Model::ListBucketInventoryConfigurationsRequest& request, const ListBucketInventoryConfigurationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename ListBucketInventoryConfigurationsRequestT = Model::ListBucketInventoryConfigurationsRequest>
+ void ListBucketInventoryConfigurationsAsync(const ListBucketInventoryConfigurationsRequestT& request, const ListBucketInventoryConfigurationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::ListBucketInventoryConfigurations, request, handler, context);
+ }
/**
* <p>Lists the metrics configurations for the bucket. The metrics configurations
@@ -5900,106 +3014,49 @@ namespace Aws
virtual Model::ListBucketMetricsConfigurationsOutcome ListBucketMetricsConfigurations(const Model::ListBucketMetricsConfigurationsRequest& request) const;
/**
- * <p>Lists the metrics configurations for the bucket. The metrics configurations
- * are only for the request metrics of the bucket and do not provide information on
- * daily storage metrics. You can have up to 1,000 configurations per bucket.</p>
- * <p>This action supports list pagination and does not return more than 100
- * configurations at a time. Always check the <code>IsTruncated</code> element in
- * the response. If there are no more configurations to list,
- * <code>IsTruncated</code> is set to false. If there are more configurations to
- * list, <code>IsTruncated</code> is set to true, and there is a value in
- * <code>NextContinuationToken</code>. You use the
- * <code>NextContinuationToken</code> value to continue the pagination of the list
- * by passing the value in <code>continuation-token</code> in the request to
- * <code>GET</code> the next page.</p> <p>To use this operation, you must have
- * permissions to perform the <code>s3:GetMetricsConfiguration</code> action. The
- * bucket owner has this permission by default. The bucket owner can grant this
- * permission to others. For more information about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For more information
- * about metrics configurations and CloudWatch request metrics, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html">Monitoring
- * Metrics with Amazon CloudWatch</a>.</p> <p>The following operations are related
- * to <code>ListBucketMetricsConfigurations</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketMetricsConfiguration.html">PutBucketMetricsConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketMetricsConfiguration.html">GetBucketMetricsConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketMetricsConfiguration.html">DeleteBucketMetricsConfiguration</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListBucketMetricsConfigurations">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for ListBucketMetricsConfigurations that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::ListBucketMetricsConfigurationsOutcomeCallable ListBucketMetricsConfigurationsCallable(const Model::ListBucketMetricsConfigurationsRequest& request) const;
+ template<typename ListBucketMetricsConfigurationsRequestT = Model::ListBucketMetricsConfigurationsRequest>
+ Model::ListBucketMetricsConfigurationsOutcomeCallable ListBucketMetricsConfigurationsCallable(const ListBucketMetricsConfigurationsRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::ListBucketMetricsConfigurations, request);
+ }
/**
- * <p>Lists the metrics configurations for the bucket. The metrics configurations
- * are only for the request metrics of the bucket and do not provide information on
- * daily storage metrics. You can have up to 1,000 configurations per bucket.</p>
- * <p>This action supports list pagination and does not return more than 100
- * configurations at a time. Always check the <code>IsTruncated</code> element in
- * the response. If there are no more configurations to list,
- * <code>IsTruncated</code> is set to false. If there are more configurations to
- * list, <code>IsTruncated</code> is set to true, and there is a value in
- * <code>NextContinuationToken</code>. You use the
- * <code>NextContinuationToken</code> value to continue the pagination of the list
- * by passing the value in <code>continuation-token</code> in the request to
- * <code>GET</code> the next page.</p> <p>To use this operation, you must have
- * permissions to perform the <code>s3:GetMetricsConfiguration</code> action. The
- * bucket owner has this permission by default. The bucket owner can grant this
- * permission to others. For more information about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For more information
- * about metrics configurations and CloudWatch request metrics, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html">Monitoring
- * Metrics with Amazon CloudWatch</a>.</p> <p>The following operations are related
- * to <code>ListBucketMetricsConfigurations</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketMetricsConfiguration.html">PutBucketMetricsConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketMetricsConfiguration.html">GetBucketMetricsConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketMetricsConfiguration.html">DeleteBucketMetricsConfiguration</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListBucketMetricsConfigurations">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for ListBucketMetricsConfigurations that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void ListBucketMetricsConfigurationsAsync(const Model::ListBucketMetricsConfigurationsRequest& request, const ListBucketMetricsConfigurationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename ListBucketMetricsConfigurationsRequestT = Model::ListBucketMetricsConfigurationsRequest>
+ void ListBucketMetricsConfigurationsAsync(const ListBucketMetricsConfigurationsRequestT& request, const ListBucketMetricsConfigurationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::ListBucketMetricsConfigurations, request, handler, context);
+ }
/**
* <p>Returns a list of all buckets owned by the authenticated sender of the
- * request.</p><p><h3>See Also:</h3> <a
+ * request. To use this operation, you must have the
+ * <code>s3:ListAllMyBuckets</code> permission.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListBuckets">AWS API
* Reference</a></p>
*/
virtual Model::ListBucketsOutcome ListBuckets() const;
/**
- * <p>Returns a list of all buckets owned by the authenticated sender of the
- * request.</p><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListBuckets">AWS API
- * Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for ListBuckets that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::ListBucketsOutcomeCallable ListBucketsCallable() const;
+ template<typename = void>
+ Model::ListBucketsOutcomeCallable ListBucketsCallable() const
+ {
+ return SubmitCallable(&S3Client::ListBuckets);
+ }
/**
- * <p>Returns a list of all buckets owned by the authenticated sender of the
- * request.</p><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListBuckets">AWS API
- * Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for ListBuckets that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void ListBucketsAsync(const ListBucketsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename = void>
+ void ListBucketsAsync(const ListBucketsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::ListBuckets, handler, context);
+ }
/**
* <p>This action lists in-progress multipart uploads. An in-progress multipart
* upload is a multipart upload that has been initiated using the Initiate
@@ -6039,84 +3096,22 @@ namespace Aws
virtual Model::ListMultipartUploadsOutcome ListMultipartUploads(const Model::ListMultipartUploadsRequest& request) const;
/**
- * <p>This action lists in-progress multipart uploads. An in-progress multipart
- * upload is a multipart upload that has been initiated using the Initiate
- * Multipart Upload request, but has not yet been completed or aborted.</p> <p>This
- * action returns at most 1,000 multipart uploads in the response. 1,000 multipart
- * uploads is the maximum number of uploads a response can include, which is also
- * the default value. You can further limit the number of uploads in a response by
- * specifying the <code>max-uploads</code> parameter in the response. If additional
- * multipart uploads satisfy the list criteria, the response will contain an
- * <code>IsTruncated</code> element with the value true. To list the additional
- * multipart uploads, use the <code>key-marker</code> and
- * <code>upload-id-marker</code> request parameters.</p> <p>In the response, the
- * uploads are sorted by key. If your application has initiated more than one
- * multipart upload using the same object key, then uploads in the response are
- * first sorted by key. Additionally, uploads are sorted in ascending order within
- * each key by the upload initiation time.</p> <p>For more information on multipart
- * uploads, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html">Uploading
- * Objects Using Multipart Upload</a>.</p> <p>For information on permissions
- * required to use the multipart upload API, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart
- * Upload and Permissions</a>.</p> <p>The following operations are related to
- * <code>ListMultipartUploads</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html">CreateMultipartUpload</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html">CompleteMultipartUpload</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html">ListParts</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html">AbortMultipartUpload</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListMultipartUploads">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for ListMultipartUploads that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::ListMultipartUploadsOutcomeCallable ListMultipartUploadsCallable(const Model::ListMultipartUploadsRequest& request) const;
+ template<typename ListMultipartUploadsRequestT = Model::ListMultipartUploadsRequest>
+ Model::ListMultipartUploadsOutcomeCallable ListMultipartUploadsCallable(const ListMultipartUploadsRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::ListMultipartUploads, request);
+ }
/**
- * <p>This action lists in-progress multipart uploads. An in-progress multipart
- * upload is a multipart upload that has been initiated using the Initiate
- * Multipart Upload request, but has not yet been completed or aborted.</p> <p>This
- * action returns at most 1,000 multipart uploads in the response. 1,000 multipart
- * uploads is the maximum number of uploads a response can include, which is also
- * the default value. You can further limit the number of uploads in a response by
- * specifying the <code>max-uploads</code> parameter in the response. If additional
- * multipart uploads satisfy the list criteria, the response will contain an
- * <code>IsTruncated</code> element with the value true. To list the additional
- * multipart uploads, use the <code>key-marker</code> and
- * <code>upload-id-marker</code> request parameters.</p> <p>In the response, the
- * uploads are sorted by key. If your application has initiated more than one
- * multipart upload using the same object key, then uploads in the response are
- * first sorted by key. Additionally, uploads are sorted in ascending order within
- * each key by the upload initiation time.</p> <p>For more information on multipart
- * uploads, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html">Uploading
- * Objects Using Multipart Upload</a>.</p> <p>For information on permissions
- * required to use the multipart upload API, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart
- * Upload and Permissions</a>.</p> <p>The following operations are related to
- * <code>ListMultipartUploads</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html">CreateMultipartUpload</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html">CompleteMultipartUpload</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html">ListParts</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html">AbortMultipartUpload</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListMultipartUploads">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for ListMultipartUploads that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void ListMultipartUploadsAsync(const Model::ListMultipartUploadsRequest& request, const ListMultipartUploadsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename ListMultipartUploadsRequestT = Model::ListMultipartUploadsRequest>
+ void ListMultipartUploadsAsync(const ListMultipartUploadsRequestT& request, const ListMultipartUploadsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::ListMultipartUploads, request, handler, context);
+ }
/**
* <p>Returns metadata about all versions of the objects in a bucket. You can also
@@ -6143,56 +3138,22 @@ namespace Aws
virtual Model::ListObjectVersionsOutcome ListObjectVersions(const Model::ListObjectVersionsRequest& request) const;
/**
- * <p>Returns metadata about all versions of the objects in a bucket. You can also
- * use request parameters as selection criteria to return metadata about a subset
- * of all the object versions.</p> <p> To use this operation, you must
- * have permissions to perform the <code>s3:ListBucketVersions</code> action. Be
- * aware of the name difference. </p> <p> A 200 OK response can
- * contain valid or invalid XML. Make sure to design your application to parse the
- * contents of the response and handle it appropriately.</p> <p>To use this
- * operation, you must have READ access to the bucket.</p> <p>This action is not
- * supported by Amazon S3 on Outposts.</p> <p>The following operations are related
- * to <code>ListObjectVersions</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectsV2.html">ListObjectsV2</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html">PutObject</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html">DeleteObject</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListObjectVersions">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for ListObjectVersions that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::ListObjectVersionsOutcomeCallable ListObjectVersionsCallable(const Model::ListObjectVersionsRequest& request) const;
+ template<typename ListObjectVersionsRequestT = Model::ListObjectVersionsRequest>
+ Model::ListObjectVersionsOutcomeCallable ListObjectVersionsCallable(const ListObjectVersionsRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::ListObjectVersions, request);
+ }
/**
- * <p>Returns metadata about all versions of the objects in a bucket. You can also
- * use request parameters as selection criteria to return metadata about a subset
- * of all the object versions.</p> <p> To use this operation, you must
- * have permissions to perform the <code>s3:ListBucketVersions</code> action. Be
- * aware of the name difference. </p> <p> A 200 OK response can
- * contain valid or invalid XML. Make sure to design your application to parse the
- * contents of the response and handle it appropriately.</p> <p>To use this
- * operation, you must have READ access to the bucket.</p> <p>This action is not
- * supported by Amazon S3 on Outposts.</p> <p>The following operations are related
- * to <code>ListObjectVersions</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectsV2.html">ListObjectsV2</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html">PutObject</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html">DeleteObject</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListObjectVersions">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for ListObjectVersions that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void ListObjectVersionsAsync(const Model::ListObjectVersionsRequest& request, const ListObjectVersionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename ListObjectVersionsRequestT = Model::ListObjectVersionsRequest>
+ void ListObjectVersionsAsync(const ListObjectVersionsRequestT& request, const ListObjectVersionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::ListObjectVersions, request, handler, context);
+ }
/**
* <p>Returns some or all (up to 1,000) of the objects in a bucket. You can use the
@@ -6221,70 +3182,35 @@ namespace Aws
virtual Model::ListObjectsOutcome ListObjects(const Model::ListObjectsRequest& request) const;
/**
- * <p>Returns some or all (up to 1,000) of the objects in a bucket. You can use the
- * request parameters as selection criteria to return a subset of the objects in a
- * bucket. A 200 OK response can contain valid or invalid XML. Be sure to design
- * your application to parse the contents of the response and handle it
- * appropriately.</p> <p>This action has been revised. We recommend
- * that you use the newer version, <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectsV2.html">ListObjectsV2</a>,
- * when developing applications. For backward compatibility, Amazon S3 continues to
- * support <code>ListObjects</code>.</p> <p>The following operations
- * are related to <code>ListObjects</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectsV2.html">ListObjectsV2</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html">PutObject</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBuckets.html">ListBuckets</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListObjects">AWS API
- * Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for ListObjects that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::ListObjectsOutcomeCallable ListObjectsCallable(const Model::ListObjectsRequest& request) const;
+ template<typename ListObjectsRequestT = Model::ListObjectsRequest>
+ Model::ListObjectsOutcomeCallable ListObjectsCallable(const ListObjectsRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::ListObjects, request);
+ }
/**
- * <p>Returns some or all (up to 1,000) of the objects in a bucket. You can use the
- * request parameters as selection criteria to return a subset of the objects in a
- * bucket. A 200 OK response can contain valid or invalid XML. Be sure to design
- * your application to parse the contents of the response and handle it
- * appropriately.</p> <p>This action has been revised. We recommend
- * that you use the newer version, <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectsV2.html">ListObjectsV2</a>,
- * when developing applications. For backward compatibility, Amazon S3 continues to
- * support <code>ListObjects</code>.</p> <p>The following operations
- * are related to <code>ListObjects</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectsV2.html">ListObjectsV2</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html">PutObject</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBuckets.html">ListBuckets</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListObjects">AWS API
- * Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for ListObjects that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void ListObjectsAsync(const Model::ListObjectsRequest& request, const ListObjectsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename ListObjectsRequestT = Model::ListObjectsRequest>
+ void ListObjectsAsync(const ListObjectsRequestT& request, const ListObjectsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::ListObjects, request, handler, context);
+ }
/**
- * <p>Returns some or all (up to 1,000) of the objects in a bucket. You can use the
- * request parameters as selection criteria to return a subset of the objects in a
- * bucket. A <code>200 OK</code> response can contain valid or invalid XML. Make
- * sure to design your application to parse the contents of the response and handle
- * it appropriately. Objects are returned sorted in an ascending order of the
- * respective key names in the list.</p> <p>To use this operation, you must have
- * READ access to the bucket.</p> <p>To use this action in an AWS Identity and
- * Access Management (IAM) policy, you must have permissions to perform the
+ * <p>Returns some or all (up to 1,000) of the objects in a bucket with each
+ * request. You can use the request parameters as selection criteria to return a
+ * subset of the objects in a bucket. A <code>200 OK</code> response can contain
+ * valid or invalid XML. Make sure to design your application to parse the contents
+ * of the response and handle it appropriately. Objects are returned sorted in an
+ * ascending order of the respective key names in the list. For more information
+ * about listing objects, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/ListingKeysUsingAPIs.html">Listing
+ * object keys programmatically</a> </p> <p>To use this operation, you must have
+ * READ access to the bucket.</p> <p>To use this action in an Identity and Access
+ * Management (IAM) policy, you must have permissions to perform the
* <code>s3:ListBucket</code> action. The bucket owner has this permission by
* default and can grant this permission to others. For more information about
* permissions, see <a
@@ -6312,78 +3238,22 @@ namespace Aws
virtual Model::ListObjectsV2Outcome ListObjectsV2(const Model::ListObjectsV2Request& request) const;
/**
- * <p>Returns some or all (up to 1,000) of the objects in a bucket. You can use the
- * request parameters as selection criteria to return a subset of the objects in a
- * bucket. A <code>200 OK</code> response can contain valid or invalid XML. Make
- * sure to design your application to parse the contents of the response and handle
- * it appropriately. Objects are returned sorted in an ascending order of the
- * respective key names in the list.</p> <p>To use this operation, you must have
- * READ access to the bucket.</p> <p>To use this action in an AWS Identity and
- * Access Management (IAM) policy, you must have permissions to perform the
- * <code>s3:ListBucket</code> action. The bucket owner has this permission by
- * default and can grant this permission to others. For more information about
- * permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>This
- * section describes the latest revision of this action. We recommend that you use
- * this revised API for application development. For backward compatibility, Amazon
- * S3 continues to support the prior version of this API, <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjects.html">ListObjects</a>.</p>
- * <p>To get a list of your buckets, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBuckets.html">ListBuckets</a>.</p>
- * <p>The following operations are related to <code>ListObjectsV2</code>:</p> <ul>
- * <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html">PutObject</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListObjectsV2">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for ListObjectsV2 that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::ListObjectsV2OutcomeCallable ListObjectsV2Callable(const Model::ListObjectsV2Request& request) const;
+ template<typename ListObjectsV2RequestT = Model::ListObjectsV2Request>
+ Model::ListObjectsV2OutcomeCallable ListObjectsV2Callable(const ListObjectsV2RequestT& request) const
+ {
+ return SubmitCallable(&S3Client::ListObjectsV2, request);
+ }
/**
- * <p>Returns some or all (up to 1,000) of the objects in a bucket. You can use the
- * request parameters as selection criteria to return a subset of the objects in a
- * bucket. A <code>200 OK</code> response can contain valid or invalid XML. Make
- * sure to design your application to parse the contents of the response and handle
- * it appropriately. Objects are returned sorted in an ascending order of the
- * respective key names in the list.</p> <p>To use this operation, you must have
- * READ access to the bucket.</p> <p>To use this action in an AWS Identity and
- * Access Management (IAM) policy, you must have permissions to perform the
- * <code>s3:ListBucket</code> action. The bucket owner has this permission by
- * default and can grant this permission to others. For more information about
- * permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>This
- * section describes the latest revision of this action. We recommend that you use
- * this revised API for application development. For backward compatibility, Amazon
- * S3 continues to support the prior version of this API, <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjects.html">ListObjects</a>.</p>
- * <p>To get a list of your buckets, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBuckets.html">ListBuckets</a>.</p>
- * <p>The following operations are related to <code>ListObjectsV2</code>:</p> <ul>
- * <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html">PutObject</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListObjectsV2">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for ListObjectsV2 that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void ListObjectsV2Async(const Model::ListObjectsV2Request& request, const ListObjectsV2ResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename ListObjectsV2RequestT = Model::ListObjectsV2Request>
+ void ListObjectsV2Async(const ListObjectsV2RequestT& request, const ListObjectsV2ResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::ListObjectsV2, request, handler, context);
+ }
/**
* <p>Lists the parts that have been uploaded for a specific multipart upload. This
@@ -6398,7 +3268,9 @@ namespace Aws
* <code>NextPartNumberMarker</code> element. In subsequent <code>ListParts</code>
* requests you can include the part-number-marker query string parameter and set
* its value to the <code>NextPartNumberMarker</code> field value from the previous
- * response.</p> <p>For more information on multipart uploads, see <a
+ * response.</p> <p>If the upload was created using a checksum algorithm, you will
+ * need to have permission to the <code>kms:Decrypt</code> action for the request
+ * to succeed. </p> <p>For more information on multipart uploads, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html">Uploading
* Objects Using Multipart Upload</a>.</p> <p>For information on permissions
* required to use the multipart upload API, see <a
@@ -6413,6 +3285,8 @@ namespace Aws
* </p> </li> <li> <p> <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html">AbortMultipartUpload</a>
* </p> </li> <li> <p> <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAttributes.html">GetObjectAttributes</a>
+ * </p> </li> <li> <p> <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html">ListMultipartUploads</a>
* </p> </li> </ul><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListParts">AWS API
@@ -6421,86 +3295,30 @@ namespace Aws
virtual Model::ListPartsOutcome ListParts(const Model::ListPartsRequest& request) const;
/**
- * <p>Lists the parts that have been uploaded for a specific multipart upload. This
- * operation must include the upload ID, which you obtain by sending the initiate
- * multipart upload request (see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html">CreateMultipartUpload</a>).
- * This request returns a maximum of 1,000 uploaded parts. The default number of
- * parts returned is 1,000 parts. You can restrict the number of parts returned by
- * specifying the <code>max-parts</code> request parameter. If your multipart
- * upload consists of more than 1,000 parts, the response returns an
- * <code>IsTruncated</code> field with the value of true, and a
- * <code>NextPartNumberMarker</code> element. In subsequent <code>ListParts</code>
- * requests you can include the part-number-marker query string parameter and set
- * its value to the <code>NextPartNumberMarker</code> field value from the previous
- * response.</p> <p>For more information on multipart uploads, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html">Uploading
- * Objects Using Multipart Upload</a>.</p> <p>For information on permissions
- * required to use the multipart upload API, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart
- * Upload and Permissions</a>.</p> <p>The following operations are related to
- * <code>ListParts</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html">CreateMultipartUpload</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html">CompleteMultipartUpload</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html">AbortMultipartUpload</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html">ListMultipartUploads</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListParts">AWS API
- * Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for ListParts that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::ListPartsOutcomeCallable ListPartsCallable(const Model::ListPartsRequest& request) const;
+ template<typename ListPartsRequestT = Model::ListPartsRequest>
+ Model::ListPartsOutcomeCallable ListPartsCallable(const ListPartsRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::ListParts, request);
+ }
/**
- * <p>Lists the parts that have been uploaded for a specific multipart upload. This
- * operation must include the upload ID, which you obtain by sending the initiate
- * multipart upload request (see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html">CreateMultipartUpload</a>).
- * This request returns a maximum of 1,000 uploaded parts. The default number of
- * parts returned is 1,000 parts. You can restrict the number of parts returned by
- * specifying the <code>max-parts</code> request parameter. If your multipart
- * upload consists of more than 1,000 parts, the response returns an
- * <code>IsTruncated</code> field with the value of true, and a
- * <code>NextPartNumberMarker</code> element. In subsequent <code>ListParts</code>
- * requests you can include the part-number-marker query string parameter and set
- * its value to the <code>NextPartNumberMarker</code> field value from the previous
- * response.</p> <p>For more information on multipart uploads, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html">Uploading
- * Objects Using Multipart Upload</a>.</p> <p>For information on permissions
- * required to use the multipart upload API, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart
- * Upload and Permissions</a>.</p> <p>The following operations are related to
- * <code>ListParts</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html">CreateMultipartUpload</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html">CompleteMultipartUpload</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html">AbortMultipartUpload</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html">ListMultipartUploads</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ListParts">AWS API
- * Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for ListParts that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void ListPartsAsync(const Model::ListPartsRequest& request, const ListPartsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename ListPartsRequestT = Model::ListPartsRequest>
+ void ListPartsAsync(const ListPartsRequestT& request, const ListPartsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::ListParts, request, handler, context);
+ }
/**
* <p>Sets the accelerate configuration of an existing bucket. Amazon S3 Transfer
* Acceleration is a bucket-level feature that enables you to perform faster data
* transfers to Amazon S3.</p> <p> To use this operation, you must have permission
- * to perform the s3:PutAccelerateConfiguration action. The bucket owner has this
- * permission by default. The bucket owner can grant this permission to others. For
- * more information about permissions, see <a
+ * to perform the <code>s3:PutAccelerateConfiguration</code> action. The bucket
+ * owner has this permission by default. The bucket owner can grant this permission
+ * to others. For more information about permissions, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
* Related to Bucket Subresource Operations</a> and <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
@@ -6529,76 +3347,22 @@ namespace Aws
virtual Model::PutBucketAccelerateConfigurationOutcome PutBucketAccelerateConfiguration(const Model::PutBucketAccelerateConfigurationRequest& request) const;
/**
- * <p>Sets the accelerate configuration of an existing bucket. Amazon S3 Transfer
- * Acceleration is a bucket-level feature that enables you to perform faster data
- * transfers to Amazon S3.</p> <p> To use this operation, you must have permission
- * to perform the s3:PutAccelerateConfiguration action. The bucket owner has this
- * permission by default. The bucket owner can grant this permission to others. For
- * more information about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p> The Transfer
- * Acceleration state of a bucket can be set to one of the following two
- * values:</p> <ul> <li> <p> Enabled – Enables accelerated data transfers to the
- * bucket.</p> </li> <li> <p> Suspended – Disables accelerated data transfers to
- * the bucket.</p> </li> </ul> <p>The <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketAccelerateConfiguration.html">GetBucketAccelerateConfiguration</a>
- * action returns the transfer acceleration state of a bucket.</p> <p>After setting
- * the Transfer Acceleration state of a bucket to Enabled, it might take up to
- * thirty minutes before the data transfer rates to the bucket increase.</p> <p>
- * The name of the bucket used for Transfer Acceleration must be DNS-compliant and
- * must not contain periods (".").</p> <p> For more information about transfer
- * acceleration, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/transfer-acceleration.html">Transfer
- * Acceleration</a>.</p> <p>The following operations are related to
- * <code>PutBucketAccelerateConfiguration</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketAccelerateConfiguration.html">GetBucketAccelerateConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketAccelerateConfiguration">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for PutBucketAccelerateConfiguration that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::PutBucketAccelerateConfigurationOutcomeCallable PutBucketAccelerateConfigurationCallable(const Model::PutBucketAccelerateConfigurationRequest& request) const;
+ template<typename PutBucketAccelerateConfigurationRequestT = Model::PutBucketAccelerateConfigurationRequest>
+ Model::PutBucketAccelerateConfigurationOutcomeCallable PutBucketAccelerateConfigurationCallable(const PutBucketAccelerateConfigurationRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::PutBucketAccelerateConfiguration, request);
+ }
/**
- * <p>Sets the accelerate configuration of an existing bucket. Amazon S3 Transfer
- * Acceleration is a bucket-level feature that enables you to perform faster data
- * transfers to Amazon S3.</p> <p> To use this operation, you must have permission
- * to perform the s3:PutAccelerateConfiguration action. The bucket owner has this
- * permission by default. The bucket owner can grant this permission to others. For
- * more information about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p> The Transfer
- * Acceleration state of a bucket can be set to one of the following two
- * values:</p> <ul> <li> <p> Enabled – Enables accelerated data transfers to the
- * bucket.</p> </li> <li> <p> Suspended – Disables accelerated data transfers to
- * the bucket.</p> </li> </ul> <p>The <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketAccelerateConfiguration.html">GetBucketAccelerateConfiguration</a>
- * action returns the transfer acceleration state of a bucket.</p> <p>After setting
- * the Transfer Acceleration state of a bucket to Enabled, it might take up to
- * thirty minutes before the data transfer rates to the bucket increase.</p> <p>
- * The name of the bucket used for Transfer Acceleration must be DNS-compliant and
- * must not contain periods (".").</p> <p> For more information about transfer
- * acceleration, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/transfer-acceleration.html">Transfer
- * Acceleration</a>.</p> <p>The following operations are related to
- * <code>PutBucketAccelerateConfiguration</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketAccelerateConfiguration.html">GetBucketAccelerateConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketAccelerateConfiguration">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for PutBucketAccelerateConfiguration that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void PutBucketAccelerateConfigurationAsync(const Model::PutBucketAccelerateConfigurationRequest& request, const PutBucketAccelerateConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename PutBucketAccelerateConfigurationRequestT = Model::PutBucketAccelerateConfigurationRequest>
+ void PutBucketAccelerateConfigurationAsync(const PutBucketAccelerateConfigurationRequestT& request, const PutBucketAccelerateConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::PutBucketAccelerateConfiguration, request, handler, context);
+ }
/**
* <p>Sets the permissions on an existing bucket using access control lists (ACL).
@@ -6612,9 +3376,16 @@ namespace Aws
* headers.</p> <p>Depending on your application needs, you may choose to
* set the ACL on a bucket using either the request body or the headers. For
* example, if you have an existing application that updates a bucket ACL using the
- * request body, then you can continue to use that approach.</p> <p> <b>Access
- * Permissions</b> </p> <p>You can set access permissions using one of the
- * following methods:</p> <ul> <li> <p>Specify a canned ACL with the
+ * request body, then you can continue to use that approach.</p> <p>If
+ * your bucket uses the bucket owner enforced setting for S3 Object Ownership, ACLs
+ * are disabled and no longer affect permissions. You must use policies to grant
+ * access to your bucket and the objects in it. Requests to set ACLs or update ACLs
+ * fail and return the <code>AccessControlListNotSupported</code> error code.
+ * Requests to read ACLs are still supported. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html">Controlling
+ * object ownership</a> in the <i>Amazon S3 User Guide</i>.</p> <p>
+ * <b>Access Permissions</b> </p> <p>You can set access permissions using one of
+ * the following methods:</p> <ul> <li> <p>Specify a canned ACL with the
* <code>x-amz-acl</code> request header. Amazon S3 supports a set of predefined
* ACLs, known as <i>canned ACLs</i>. Each canned ACL has a predefined set of
* grantees and permissions. Specify the canned ACL name as the value of
@@ -6625,34 +3396,37 @@ namespace Aws
* <code>x-amz-grant-read</code>, <code>x-amz-grant-read-acp</code>,
* <code>x-amz-grant-write-acp</code>, and <code>x-amz-grant-full-control</code>
* headers. When using these headers, you specify explicit access permissions and
- * grantees (AWS accounts or Amazon S3 groups) who will receive the permission. If
- * you use these ACL-specific headers, you cannot use the <code>x-amz-acl</code>
- * header to set a canned ACL. These parameters map to the set of permissions that
- * Amazon S3 supports in an ACL. For more information, see <a
+ * grantees (Amazon Web Services accounts or Amazon S3 groups) who will receive the
+ * permission. If you use these ACL-specific headers, you cannot use the
+ * <code>x-amz-acl</code> header to set a canned ACL. These parameters map to the
+ * set of permissions that Amazon S3 supports in an ACL. For more information, see
+ * <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html">Access
* Control List (ACL) Overview</a>.</p> <p>You specify each grantee as a type=value
* pair, where the type is one of the following:</p> <ul> <li> <p> <code>id</code>
- * – if the value specified is the canonical user ID of an AWS account</p> </li>
- * <li> <p> <code>uri</code> – if you are granting permissions to a predefined
- * group</p> </li> <li> <p> <code>emailAddress</code> – if the value specified is
- * the email address of an AWS account</p> <p>Using email addresses to
- * specify a grantee is only supported in the following AWS Regions: </p> <ul> <li>
- * <p>US East (N. Virginia)</p> </li> <li> <p>US West (N. California)</p> </li>
- * <li> <p> US West (Oregon)</p> </li> <li> <p> Asia Pacific (Singapore)</p> </li>
- * <li> <p>Asia Pacific (Sydney)</p> </li> <li> <p>Asia Pacific (Tokyo)</p> </li>
- * <li> <p>Europe (Ireland)</p> </li> <li> <p>South America (São Paulo)</p> </li>
- * </ul> <p>For a list of all the Amazon S3 supported Regions and endpoints, see <a
+ * – if the value specified is the canonical user ID of an Amazon Web Services
+ * account</p> </li> <li> <p> <code>uri</code> – if you are granting permissions to
+ * a predefined group</p> </li> <li> <p> <code>emailAddress</code> – if the value
+ * specified is the email address of an Amazon Web Services account</p>
+ * <p>Using email addresses to specify a grantee is only supported in the following
+ * Amazon Web Services Regions: </p> <ul> <li> <p>US East (N. Virginia)</p> </li>
+ * <li> <p>US West (N. California)</p> </li> <li> <p> US West (Oregon)</p> </li>
+ * <li> <p> Asia Pacific (Singapore)</p> </li> <li> <p>Asia Pacific (Sydney)</p>
+ * </li> <li> <p>Asia Pacific (Tokyo)</p> </li> <li> <p>Europe (Ireland)</p> </li>
+ * <li> <p>South America (São Paulo)</p> </li> </ul> <p>For a list of all the
+ * Amazon S3 supported Regions and endpoints, see <a
* href="https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region">Regions
- * and Endpoints</a> in the AWS General Reference.</p> </li> </ul> <p>For
- * example, the following <code>x-amz-grant-write</code> header grants create,
- * overwrite, and delete objects permission to LogDelivery group predefined by
- * Amazon S3 and two AWS accounts identified by their email addresses.</p> <p>
- * <code>x-amz-grant-write: uri="http://acs.amazonaws.com/groups/s3/LogDelivery",
- * id="111122223333", id="555566667777" </code> </p> </li> </ul> <p>You can use
- * either a canned ACL or specify access permissions explicitly. You cannot do
- * both.</p> <p> <b>Grantee Values</b> </p> <p>You can specify the person (grantee)
- * to whom you're assigning access rights (using request elements) in the following
- * ways:</p> <ul> <li> <p>By the person's ID:</p> <p> <code>&lt;Grantee
+ * and Endpoints</a> in the Amazon Web Services General Reference.</p>
+ * </li> </ul> <p>For example, the following <code>x-amz-grant-write</code> header
+ * grants create, overwrite, and delete objects permission to LogDelivery group
+ * predefined by Amazon S3 and two Amazon Web Services accounts identified by their
+ * email addresses.</p> <p> <code>x-amz-grant-write:
+ * uri="http://acs.amazonaws.com/groups/s3/LogDelivery", id="111122223333",
+ * id="555566667777" </code> </p> </li> </ul> <p>You can use either a canned ACL or
+ * specify access permissions explicitly. You cannot do both.</p> <p> <b>Grantee
+ * Values</b> </p> <p>You can specify the person (grantee) to whom you're assigning
+ * access rights (using request elements) in the following ways:</p> <ul> <li>
+ * <p>By the person's ID:</p> <p> <code>&lt;Grantee
* xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
* xsi:type="CanonicalUser"&gt;&lt;ID&gt;&lt;&gt;ID&lt;&gt;&lt;/ID&gt;&lt;DisplayName&gt;&lt;&gt;GranteesEmail&lt;&gt;&lt;/DisplayName&gt;
* &lt;/Grantee&gt;</code> </p> <p>DisplayName is optional and ignored in the
@@ -6664,16 +3438,16 @@ namespace Aws
* xsi:type="AmazonCustomerByEmail"&gt;&lt;EmailAddress&gt;&lt;&gt;Grantees@email.com&lt;&gt;&lt;/EmailAddress&gt;lt;/Grantee&gt;</code>
* </p> <p>The grantee is resolved to the CanonicalUser and, in a response to a GET
* Object acl request, appears as the CanonicalUser. </p> <p>Using email
- * addresses to specify a grantee is only supported in the following AWS Regions:
- * </p> <ul> <li> <p>US East (N. Virginia)</p> </li> <li> <p>US West (N.
- * California)</p> </li> <li> <p> US West (Oregon)</p> </li> <li> <p> Asia Pacific
- * (Singapore)</p> </li> <li> <p>Asia Pacific (Sydney)</p> </li> <li> <p>Asia
- * Pacific (Tokyo)</p> </li> <li> <p>Europe (Ireland)</p> </li> <li> <p>South
- * America (São Paulo)</p> </li> </ul> <p>For a list of all the Amazon S3 supported
- * Regions and endpoints, see <a
+ * addresses to specify a grantee is only supported in the following Amazon Web
+ * Services Regions: </p> <ul> <li> <p>US East (N. Virginia)</p> </li> <li> <p>US
+ * West (N. California)</p> </li> <li> <p> US West (Oregon)</p> </li> <li> <p> Asia
+ * Pacific (Singapore)</p> </li> <li> <p>Asia Pacific (Sydney)</p> </li> <li>
+ * <p>Asia Pacific (Tokyo)</p> </li> <li> <p>Europe (Ireland)</p> </li> <li>
+ * <p>South America (São Paulo)</p> </li> </ul> <p>For a list of all the Amazon S3
+ * supported Regions and endpoints, see <a
* href="https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region">Regions
- * and Endpoints</a> in the AWS General Reference.</p> </li> </ul> <p
- * class="title"> <b>Related Resources</b> </p> <ul> <li> <p> <a
+ * and Endpoints</a> in the Amazon Web Services General Reference.</p>
+ * </li> </ul> <p class="title"> <b>Related Resources</b> </p> <ul> <li> <p> <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a>
* </p> </li> <li> <p> <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html">DeleteBucket</a>
@@ -6686,178 +3460,22 @@ namespace Aws
virtual Model::PutBucketAclOutcome PutBucketAcl(const Model::PutBucketAclRequest& request) const;
/**
- * <p>Sets the permissions on an existing bucket using access control lists (ACL).
- * For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3_ACLs_UsingACLs.html">Using
- * ACLs</a>. To set the ACL of a bucket, you must have <code>WRITE_ACP</code>
- * permission.</p> <p>You can use one of the following two ways to set a bucket's
- * permissions:</p> <ul> <li> <p>Specify the ACL in the request body</p> </li> <li>
- * <p>Specify permissions using request headers</p> </li> </ul> <p>You
- * cannot specify access permission using both the body and the request
- * headers.</p> <p>Depending on your application needs, you may choose to
- * set the ACL on a bucket using either the request body or the headers. For
- * example, if you have an existing application that updates a bucket ACL using the
- * request body, then you can continue to use that approach.</p> <p> <b>Access
- * Permissions</b> </p> <p>You can set access permissions using one of the
- * following methods:</p> <ul> <li> <p>Specify a canned ACL with the
- * <code>x-amz-acl</code> request header. Amazon S3 supports a set of predefined
- * ACLs, known as <i>canned ACLs</i>. Each canned ACL has a predefined set of
- * grantees and permissions. Specify the canned ACL name as the value of
- * <code>x-amz-acl</code>. If you use this header, you cannot use other access
- * control-specific headers in your request. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL">Canned
- * ACL</a>.</p> </li> <li> <p>Specify access permissions explicitly with the
- * <code>x-amz-grant-read</code>, <code>x-amz-grant-read-acp</code>,
- * <code>x-amz-grant-write-acp</code>, and <code>x-amz-grant-full-control</code>
- * headers. When using these headers, you specify explicit access permissions and
- * grantees (AWS accounts or Amazon S3 groups) who will receive the permission. If
- * you use these ACL-specific headers, you cannot use the <code>x-amz-acl</code>
- * header to set a canned ACL. These parameters map to the set of permissions that
- * Amazon S3 supports in an ACL. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html">Access
- * Control List (ACL) Overview</a>.</p> <p>You specify each grantee as a type=value
- * pair, where the type is one of the following:</p> <ul> <li> <p> <code>id</code>
- * – if the value specified is the canonical user ID of an AWS account</p> </li>
- * <li> <p> <code>uri</code> – if you are granting permissions to a predefined
- * group</p> </li> <li> <p> <code>emailAddress</code> – if the value specified is
- * the email address of an AWS account</p> <p>Using email addresses to
- * specify a grantee is only supported in the following AWS Regions: </p> <ul> <li>
- * <p>US East (N. Virginia)</p> </li> <li> <p>US West (N. California)</p> </li>
- * <li> <p> US West (Oregon)</p> </li> <li> <p> Asia Pacific (Singapore)</p> </li>
- * <li> <p>Asia Pacific (Sydney)</p> </li> <li> <p>Asia Pacific (Tokyo)</p> </li>
- * <li> <p>Europe (Ireland)</p> </li> <li> <p>South America (São Paulo)</p> </li>
- * </ul> <p>For a list of all the Amazon S3 supported Regions and endpoints, see <a
- * href="https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region">Regions
- * and Endpoints</a> in the AWS General Reference.</p> </li> </ul> <p>For
- * example, the following <code>x-amz-grant-write</code> header grants create,
- * overwrite, and delete objects permission to LogDelivery group predefined by
- * Amazon S3 and two AWS accounts identified by their email addresses.</p> <p>
- * <code>x-amz-grant-write: uri="http://acs.amazonaws.com/groups/s3/LogDelivery",
- * id="111122223333", id="555566667777" </code> </p> </li> </ul> <p>You can use
- * either a canned ACL or specify access permissions explicitly. You cannot do
- * both.</p> <p> <b>Grantee Values</b> </p> <p>You can specify the person (grantee)
- * to whom you're assigning access rights (using request elements) in the following
- * ways:</p> <ul> <li> <p>By the person's ID:</p> <p> <code>&lt;Grantee
- * xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- * xsi:type="CanonicalUser"&gt;&lt;ID&gt;&lt;&gt;ID&lt;&gt;&lt;/ID&gt;&lt;DisplayName&gt;&lt;&gt;GranteesEmail&lt;&gt;&lt;/DisplayName&gt;
- * &lt;/Grantee&gt;</code> </p> <p>DisplayName is optional and ignored in the
- * request</p> </li> <li> <p>By URI:</p> <p> <code>&lt;Grantee
- * xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- * xsi:type="Group"&gt;&lt;URI&gt;&lt;&gt;http://acs.amazonaws.com/groups/global/AuthenticatedUsers&lt;&gt;&lt;/URI&gt;&lt;/Grantee&gt;</code>
- * </p> </li> <li> <p>By Email address:</p> <p> <code>&lt;Grantee
- * xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- * xsi:type="AmazonCustomerByEmail"&gt;&lt;EmailAddress&gt;&lt;&gt;Grantees@email.com&lt;&gt;&lt;/EmailAddress&gt;lt;/Grantee&gt;</code>
- * </p> <p>The grantee is resolved to the CanonicalUser and, in a response to a GET
- * Object acl request, appears as the CanonicalUser. </p> <p>Using email
- * addresses to specify a grantee is only supported in the following AWS Regions:
- * </p> <ul> <li> <p>US East (N. Virginia)</p> </li> <li> <p>US West (N.
- * California)</p> </li> <li> <p> US West (Oregon)</p> </li> <li> <p> Asia Pacific
- * (Singapore)</p> </li> <li> <p>Asia Pacific (Sydney)</p> </li> <li> <p>Asia
- * Pacific (Tokyo)</p> </li> <li> <p>Europe (Ireland)</p> </li> <li> <p>South
- * America (São Paulo)</p> </li> </ul> <p>For a list of all the Amazon S3 supported
- * Regions and endpoints, see <a
- * href="https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region">Regions
- * and Endpoints</a> in the AWS General Reference.</p> </li> </ul> <p
- * class="title"> <b>Related Resources</b> </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html">DeleteBucket</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAcl.html">GetObjectAcl</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketAcl">AWS API
- * Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for PutBucketAcl that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::PutBucketAclOutcomeCallable PutBucketAclCallable(const Model::PutBucketAclRequest& request) const;
+ template<typename PutBucketAclRequestT = Model::PutBucketAclRequest>
+ Model::PutBucketAclOutcomeCallable PutBucketAclCallable(const PutBucketAclRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::PutBucketAcl, request);
+ }
/**
- * <p>Sets the permissions on an existing bucket using access control lists (ACL).
- * For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3_ACLs_UsingACLs.html">Using
- * ACLs</a>. To set the ACL of a bucket, you must have <code>WRITE_ACP</code>
- * permission.</p> <p>You can use one of the following two ways to set a bucket's
- * permissions:</p> <ul> <li> <p>Specify the ACL in the request body</p> </li> <li>
- * <p>Specify permissions using request headers</p> </li> </ul> <p>You
- * cannot specify access permission using both the body and the request
- * headers.</p> <p>Depending on your application needs, you may choose to
- * set the ACL on a bucket using either the request body or the headers. For
- * example, if you have an existing application that updates a bucket ACL using the
- * request body, then you can continue to use that approach.</p> <p> <b>Access
- * Permissions</b> </p> <p>You can set access permissions using one of the
- * following methods:</p> <ul> <li> <p>Specify a canned ACL with the
- * <code>x-amz-acl</code> request header. Amazon S3 supports a set of predefined
- * ACLs, known as <i>canned ACLs</i>. Each canned ACL has a predefined set of
- * grantees and permissions. Specify the canned ACL name as the value of
- * <code>x-amz-acl</code>. If you use this header, you cannot use other access
- * control-specific headers in your request. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL">Canned
- * ACL</a>.</p> </li> <li> <p>Specify access permissions explicitly with the
- * <code>x-amz-grant-read</code>, <code>x-amz-grant-read-acp</code>,
- * <code>x-amz-grant-write-acp</code>, and <code>x-amz-grant-full-control</code>
- * headers. When using these headers, you specify explicit access permissions and
- * grantees (AWS accounts or Amazon S3 groups) who will receive the permission. If
- * you use these ACL-specific headers, you cannot use the <code>x-amz-acl</code>
- * header to set a canned ACL. These parameters map to the set of permissions that
- * Amazon S3 supports in an ACL. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html">Access
- * Control List (ACL) Overview</a>.</p> <p>You specify each grantee as a type=value
- * pair, where the type is one of the following:</p> <ul> <li> <p> <code>id</code>
- * – if the value specified is the canonical user ID of an AWS account</p> </li>
- * <li> <p> <code>uri</code> – if you are granting permissions to a predefined
- * group</p> </li> <li> <p> <code>emailAddress</code> – if the value specified is
- * the email address of an AWS account</p> <p>Using email addresses to
- * specify a grantee is only supported in the following AWS Regions: </p> <ul> <li>
- * <p>US East (N. Virginia)</p> </li> <li> <p>US West (N. California)</p> </li>
- * <li> <p> US West (Oregon)</p> </li> <li> <p> Asia Pacific (Singapore)</p> </li>
- * <li> <p>Asia Pacific (Sydney)</p> </li> <li> <p>Asia Pacific (Tokyo)</p> </li>
- * <li> <p>Europe (Ireland)</p> </li> <li> <p>South America (São Paulo)</p> </li>
- * </ul> <p>For a list of all the Amazon S3 supported Regions and endpoints, see <a
- * href="https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region">Regions
- * and Endpoints</a> in the AWS General Reference.</p> </li> </ul> <p>For
- * example, the following <code>x-amz-grant-write</code> header grants create,
- * overwrite, and delete objects permission to LogDelivery group predefined by
- * Amazon S3 and two AWS accounts identified by their email addresses.</p> <p>
- * <code>x-amz-grant-write: uri="http://acs.amazonaws.com/groups/s3/LogDelivery",
- * id="111122223333", id="555566667777" </code> </p> </li> </ul> <p>You can use
- * either a canned ACL or specify access permissions explicitly. You cannot do
- * both.</p> <p> <b>Grantee Values</b> </p> <p>You can specify the person (grantee)
- * to whom you're assigning access rights (using request elements) in the following
- * ways:</p> <ul> <li> <p>By the person's ID:</p> <p> <code>&lt;Grantee
- * xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- * xsi:type="CanonicalUser"&gt;&lt;ID&gt;&lt;&gt;ID&lt;&gt;&lt;/ID&gt;&lt;DisplayName&gt;&lt;&gt;GranteesEmail&lt;&gt;&lt;/DisplayName&gt;
- * &lt;/Grantee&gt;</code> </p> <p>DisplayName is optional and ignored in the
- * request</p> </li> <li> <p>By URI:</p> <p> <code>&lt;Grantee
- * xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- * xsi:type="Group"&gt;&lt;URI&gt;&lt;&gt;http://acs.amazonaws.com/groups/global/AuthenticatedUsers&lt;&gt;&lt;/URI&gt;&lt;/Grantee&gt;</code>
- * </p> </li> <li> <p>By Email address:</p> <p> <code>&lt;Grantee
- * xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- * xsi:type="AmazonCustomerByEmail"&gt;&lt;EmailAddress&gt;&lt;&gt;Grantees@email.com&lt;&gt;&lt;/EmailAddress&gt;lt;/Grantee&gt;</code>
- * </p> <p>The grantee is resolved to the CanonicalUser and, in a response to a GET
- * Object acl request, appears as the CanonicalUser. </p> <p>Using email
- * addresses to specify a grantee is only supported in the following AWS Regions:
- * </p> <ul> <li> <p>US East (N. Virginia)</p> </li> <li> <p>US West (N.
- * California)</p> </li> <li> <p> US West (Oregon)</p> </li> <li> <p> Asia Pacific
- * (Singapore)</p> </li> <li> <p>Asia Pacific (Sydney)</p> </li> <li> <p>Asia
- * Pacific (Tokyo)</p> </li> <li> <p>Europe (Ireland)</p> </li> <li> <p>South
- * America (São Paulo)</p> </li> </ul> <p>For a list of all the Amazon S3 supported
- * Regions and endpoints, see <a
- * href="https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region">Regions
- * and Endpoints</a> in the AWS General Reference.</p> </li> </ul> <p
- * class="title"> <b>Related Resources</b> </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html">DeleteBucket</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAcl.html">GetObjectAcl</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketAcl">AWS API
- * Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for PutBucketAcl that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void PutBucketAclAsync(const Model::PutBucketAclRequest& request, const PutBucketAclResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename PutBucketAclRequestT = Model::PutBucketAclRequest>
+ void PutBucketAclAsync(const PutBucketAclRequestT& request, const PutBucketAclResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::PutBucketAcl, request, handler, context);
+ }
/**
* <p>Sets an analytics configuration for the bucket (specified by the analytics
@@ -6910,108 +3528,22 @@ namespace Aws
virtual Model::PutBucketAnalyticsConfigurationOutcome PutBucketAnalyticsConfiguration(const Model::PutBucketAnalyticsConfigurationRequest& request) const;
/**
- * <p>Sets an analytics configuration for the bucket (specified by the analytics
- * configuration ID). You can have up to 1,000 analytics configurations per
- * bucket.</p> <p>You can choose to have storage class analysis export analysis
- * reports sent to a comma-separated values (CSV) flat file. See the
- * <code>DataExport</code> request element. Reports are updated daily and are based
- * on the object filters that you configure. When selecting data export, you
- * specify a destination bucket and an optional destination prefix where the file
- * is written. You can export the data to a destination bucket in a different
- * account. However, the destination bucket must be in the same Region as the
- * bucket that you are making the PUT analytics configuration to. For more
- * information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/analytics-storage-class.html">Amazon
- * S3 Analytics – Storage Class Analysis</a>. </p> <p>You must create a
- * bucket policy on the destination bucket where the exported file is written to
- * grant permissions to Amazon S3 to write objects to the bucket. For an example
- * policy, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/example-bucket-policies.html#example-bucket-policies-use-case-9">Granting
- * Permissions for Amazon S3 Inventory and Storage Class Analysis</a>.</p>
- * <p>To use this operation, you must have permissions to perform the
- * <code>s3:PutAnalyticsConfiguration</code> action. The bucket owner has this
- * permission by default. The bucket owner can grant this permission to others. For
- * more information about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p class="title">
- * <b>Special Errors</b> </p> <ul> <li> <ul> <li> <p> <i>HTTP Error: HTTP 400 Bad
- * Request</i> </p> </li> <li> <p> <i>Code: InvalidArgument</i> </p> </li> <li> <p>
- * <i>Cause: Invalid argument.</i> </p> </li> </ul> </li> <li> <ul> <li> <p>
- * <i>HTTP Error: HTTP 400 Bad Request</i> </p> </li> <li> <p> <i>Code:
- * TooManyConfigurations</i> </p> </li> <li> <p> <i>Cause: You are attempting to
- * create a new configuration but have already reached the 1,000-configuration
- * limit.</i> </p> </li> </ul> </li> <li> <ul> <li> <p> <i>HTTP Error: HTTP 403
- * Forbidden</i> </p> </li> <li> <p> <i>Code: AccessDenied</i> </p> </li> <li> <p>
- * <i>Cause: You are not the owner of the specified bucket, or you do not have the
- * s3:PutAnalyticsConfiguration bucket permission to set the configuration on the
- * bucket.</i> </p> </li> </ul> </li> </ul> <p class="title"> <b>Related
- * Resources</b> </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketAnalyticsConfiguration.html">GetBucketAnalyticsConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketAnalyticsConfiguration.html">DeleteBucketAnalyticsConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketAnalyticsConfigurations.html">ListBucketAnalyticsConfigurations</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketAnalyticsConfiguration">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for PutBucketAnalyticsConfiguration that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::PutBucketAnalyticsConfigurationOutcomeCallable PutBucketAnalyticsConfigurationCallable(const Model::PutBucketAnalyticsConfigurationRequest& request) const;
+ template<typename PutBucketAnalyticsConfigurationRequestT = Model::PutBucketAnalyticsConfigurationRequest>
+ Model::PutBucketAnalyticsConfigurationOutcomeCallable PutBucketAnalyticsConfigurationCallable(const PutBucketAnalyticsConfigurationRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::PutBucketAnalyticsConfiguration, request);
+ }
/**
- * <p>Sets an analytics configuration for the bucket (specified by the analytics
- * configuration ID). You can have up to 1,000 analytics configurations per
- * bucket.</p> <p>You can choose to have storage class analysis export analysis
- * reports sent to a comma-separated values (CSV) flat file. See the
- * <code>DataExport</code> request element. Reports are updated daily and are based
- * on the object filters that you configure. When selecting data export, you
- * specify a destination bucket and an optional destination prefix where the file
- * is written. You can export the data to a destination bucket in a different
- * account. However, the destination bucket must be in the same Region as the
- * bucket that you are making the PUT analytics configuration to. For more
- * information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/analytics-storage-class.html">Amazon
- * S3 Analytics – Storage Class Analysis</a>. </p> <p>You must create a
- * bucket policy on the destination bucket where the exported file is written to
- * grant permissions to Amazon S3 to write objects to the bucket. For an example
- * policy, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/example-bucket-policies.html#example-bucket-policies-use-case-9">Granting
- * Permissions for Amazon S3 Inventory and Storage Class Analysis</a>.</p>
- * <p>To use this operation, you must have permissions to perform the
- * <code>s3:PutAnalyticsConfiguration</code> action. The bucket owner has this
- * permission by default. The bucket owner can grant this permission to others. For
- * more information about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p class="title">
- * <b>Special Errors</b> </p> <ul> <li> <ul> <li> <p> <i>HTTP Error: HTTP 400 Bad
- * Request</i> </p> </li> <li> <p> <i>Code: InvalidArgument</i> </p> </li> <li> <p>
- * <i>Cause: Invalid argument.</i> </p> </li> </ul> </li> <li> <ul> <li> <p>
- * <i>HTTP Error: HTTP 400 Bad Request</i> </p> </li> <li> <p> <i>Code:
- * TooManyConfigurations</i> </p> </li> <li> <p> <i>Cause: You are attempting to
- * create a new configuration but have already reached the 1,000-configuration
- * limit.</i> </p> </li> </ul> </li> <li> <ul> <li> <p> <i>HTTP Error: HTTP 403
- * Forbidden</i> </p> </li> <li> <p> <i>Code: AccessDenied</i> </p> </li> <li> <p>
- * <i>Cause: You are not the owner of the specified bucket, or you do not have the
- * s3:PutAnalyticsConfiguration bucket permission to set the configuration on the
- * bucket.</i> </p> </li> </ul> </li> </ul> <p class="title"> <b>Related
- * Resources</b> </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketAnalyticsConfiguration.html">GetBucketAnalyticsConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketAnalyticsConfiguration.html">DeleteBucketAnalyticsConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketAnalyticsConfigurations.html">ListBucketAnalyticsConfigurations</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketAnalyticsConfiguration">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for PutBucketAnalyticsConfiguration that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void PutBucketAnalyticsConfigurationAsync(const Model::PutBucketAnalyticsConfigurationRequest& request, const PutBucketAnalyticsConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename PutBucketAnalyticsConfigurationRequestT = Model::PutBucketAnalyticsConfigurationRequest>
+ void PutBucketAnalyticsConfigurationAsync(const PutBucketAnalyticsConfigurationRequestT& request, const PutBucketAnalyticsConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::PutBucketAnalyticsConfiguration, request, handler, context);
+ }
/**
* <p>Sets the <code>cors</code> configuration for your bucket. If the
@@ -7055,107 +3587,43 @@ namespace Aws
virtual Model::PutBucketCorsOutcome PutBucketCors(const Model::PutBucketCorsRequest& request) const;
/**
- * <p>Sets the <code>cors</code> configuration for your bucket. If the
- * configuration exists, Amazon S3 replaces it.</p> <p>To use this operation, you
- * must be allowed to perform the <code>s3:PutBucketCORS</code> action. By default,
- * the bucket owner has this permission and can grant it to others.</p> <p>You set
- * this configuration on a bucket so that the bucket can service cross-origin
- * requests. For example, you might want to enable a request whose origin is
- * <code>http://www.example.com</code> to access your Amazon S3 bucket at
- * <code>my.example.bucket.com</code> by using the browser's
- * <code>XMLHttpRequest</code> capability.</p> <p>To enable cross-origin resource
- * sharing (CORS) on a bucket, you add the <code>cors</code> subresource to the
- * bucket. The <code>cors</code> subresource is an XML document in which you
- * configure rules that identify origins and the HTTP methods that can be executed
- * on your bucket. The document is limited to 64 KB in size. </p> <p>When Amazon S3
- * receives a cross-origin request (or a pre-flight OPTIONS request) against a
- * bucket, it evaluates the <code>cors</code> configuration on the bucket and uses
- * the first <code>CORSRule</code> rule that matches the incoming browser request
- * to enable a cross-origin request. For a rule to match, the following conditions
- * must be met:</p> <ul> <li> <p>The request's <code>Origin</code> header must
- * match <code>AllowedOrigin</code> elements.</p> </li> <li> <p>The request method
- * (for example, GET, PUT, HEAD, and so on) or the
- * <code>Access-Control-Request-Method</code> header in case of a pre-flight
- * <code>OPTIONS</code> request must be one of the <code>AllowedMethod</code>
- * elements. </p> </li> <li> <p>Every header specified in the
- * <code>Access-Control-Request-Headers</code> request header of a pre-flight
- * request must match an <code>AllowedHeader</code> element. </p> </li> </ul> <p>
- * For more information about CORS, go to <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html">Enabling
- * Cross-Origin Resource Sharing</a> in the <i>Amazon S3 User Guide</i>.</p> <p
- * class="title"> <b>Related Resources</b> </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketCors.html">GetBucketCors</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketCors.html">DeleteBucketCors</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTOPTIONSobject.html">RESTOPTIONSobject</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketCors">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for PutBucketCors that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::PutBucketCorsOutcomeCallable PutBucketCorsCallable(const Model::PutBucketCorsRequest& request) const;
+ template<typename PutBucketCorsRequestT = Model::PutBucketCorsRequest>
+ Model::PutBucketCorsOutcomeCallable PutBucketCorsCallable(const PutBucketCorsRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::PutBucketCors, request);
+ }
/**
- * <p>Sets the <code>cors</code> configuration for your bucket. If the
- * configuration exists, Amazon S3 replaces it.</p> <p>To use this operation, you
- * must be allowed to perform the <code>s3:PutBucketCORS</code> action. By default,
- * the bucket owner has this permission and can grant it to others.</p> <p>You set
- * this configuration on a bucket so that the bucket can service cross-origin
- * requests. For example, you might want to enable a request whose origin is
- * <code>http://www.example.com</code> to access your Amazon S3 bucket at
- * <code>my.example.bucket.com</code> by using the browser's
- * <code>XMLHttpRequest</code> capability.</p> <p>To enable cross-origin resource
- * sharing (CORS) on a bucket, you add the <code>cors</code> subresource to the
- * bucket. The <code>cors</code> subresource is an XML document in which you
- * configure rules that identify origins and the HTTP methods that can be executed
- * on your bucket. The document is limited to 64 KB in size. </p> <p>When Amazon S3
- * receives a cross-origin request (or a pre-flight OPTIONS request) against a
- * bucket, it evaluates the <code>cors</code> configuration on the bucket and uses
- * the first <code>CORSRule</code> rule that matches the incoming browser request
- * to enable a cross-origin request. For a rule to match, the following conditions
- * must be met:</p> <ul> <li> <p>The request's <code>Origin</code> header must
- * match <code>AllowedOrigin</code> elements.</p> </li> <li> <p>The request method
- * (for example, GET, PUT, HEAD, and so on) or the
- * <code>Access-Control-Request-Method</code> header in case of a pre-flight
- * <code>OPTIONS</code> request must be one of the <code>AllowedMethod</code>
- * elements. </p> </li> <li> <p>Every header specified in the
- * <code>Access-Control-Request-Headers</code> request header of a pre-flight
- * request must match an <code>AllowedHeader</code> element. </p> </li> </ul> <p>
- * For more information about CORS, go to <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html">Enabling
- * Cross-Origin Resource Sharing</a> in the <i>Amazon S3 User Guide</i>.</p> <p
- * class="title"> <b>Related Resources</b> </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketCors.html">GetBucketCors</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketCors.html">DeleteBucketCors</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTOPTIONSobject.html">RESTOPTIONSobject</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketCors">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for PutBucketCors that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void PutBucketCorsAsync(const Model::PutBucketCorsRequest& request, const PutBucketCorsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename PutBucketCorsRequestT = Model::PutBucketCorsRequest>
+ void PutBucketCorsAsync(const PutBucketCorsRequestT& request, const PutBucketCorsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::PutBucketCors, request, handler, context);
+ }
/**
* <p>This action uses the <code>encryption</code> subresource to configure default
* encryption and Amazon S3 Bucket Key for an existing bucket.</p> <p>Default
* encryption for a bucket can use server-side encryption with Amazon S3-managed
- * keys (SSE-S3) or AWS KMS customer master keys (SSE-KMS). If you specify default
- * encryption using SSE-KMS, you can also configure Amazon S3 Bucket Key. For
- * information about default encryption, see <a
+ * keys (SSE-S3) or customer managed keys (SSE-KMS). If you specify default
+ * encryption using SSE-KMS, you can also configure Amazon S3 Bucket Key. When the
+ * default encryption is SSE-KMS, if you upload an object to the bucket and do not
+ * specify the KMS key to use for encryption, Amazon S3 uses the default Amazon Web
+ * Services managed KMS key for your account. For information about default
+ * encryption, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html">Amazon
* S3 default bucket encryption</a> in the <i>Amazon S3 User Guide</i>. For more
* information about S3 Bucket Keys, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html">Amazon S3
* Bucket Keys</a> in the <i>Amazon S3 User Guide</i>.</p> <p>This
- * action requires AWS Signature Version 4. For more information, see <a
+ * action requires Amazon Web Services Signature Version 4. For more information,
+ * see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/sig-v4-authenticating-requests.html">
- * Authenticating Requests (AWS Signature Version 4)</a>. </p> <p>To
- * use this operation, you must have permissions to perform the
+ * Authenticating Requests (Amazon Web Services Signature Version 4)</a>. </p>
+ * <p>To use this operation, you must have permissions to perform the
* <code>s3:PutEncryptionConfiguration</code> action. The bucket owner has this
* permission by default. The bucket owner can grant this permission to others. For
* more information about permissions, see <a
@@ -7174,89 +3642,38 @@ namespace Aws
virtual Model::PutBucketEncryptionOutcome PutBucketEncryption(const Model::PutBucketEncryptionRequest& request) const;
/**
- * <p>This action uses the <code>encryption</code> subresource to configure default
- * encryption and Amazon S3 Bucket Key for an existing bucket.</p> <p>Default
- * encryption for a bucket can use server-side encryption with Amazon S3-managed
- * keys (SSE-S3) or AWS KMS customer master keys (SSE-KMS). If you specify default
- * encryption using SSE-KMS, you can also configure Amazon S3 Bucket Key. For
- * information about default encryption, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html">Amazon
- * S3 default bucket encryption</a> in the <i>Amazon S3 User Guide</i>. For more
- * information about S3 Bucket Keys, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html">Amazon S3
- * Bucket Keys</a> in the <i>Amazon S3 User Guide</i>.</p> <p>This
- * action requires AWS Signature Version 4. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/sig-v4-authenticating-requests.html">
- * Authenticating Requests (AWS Signature Version 4)</a>. </p> <p>To
- * use this operation, you must have permissions to perform the
- * <code>s3:PutEncryptionConfiguration</code> action. The bucket owner has this
- * permission by default. The bucket owner can grant this permission to others. For
- * more information about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a> in the Amazon S3 User Guide.
- * </p> <p class="title"> <b>Related Resources</b> </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketEncryption.html">GetBucketEncryption</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketEncryption.html">DeleteBucketEncryption</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketEncryption">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for PutBucketEncryption that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::PutBucketEncryptionOutcomeCallable PutBucketEncryptionCallable(const Model::PutBucketEncryptionRequest& request) const;
+ template<typename PutBucketEncryptionRequestT = Model::PutBucketEncryptionRequest>
+ Model::PutBucketEncryptionOutcomeCallable PutBucketEncryptionCallable(const PutBucketEncryptionRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::PutBucketEncryption, request);
+ }
/**
- * <p>This action uses the <code>encryption</code> subresource to configure default
- * encryption and Amazon S3 Bucket Key for an existing bucket.</p> <p>Default
- * encryption for a bucket can use server-side encryption with Amazon S3-managed
- * keys (SSE-S3) or AWS KMS customer master keys (SSE-KMS). If you specify default
- * encryption using SSE-KMS, you can also configure Amazon S3 Bucket Key. For
- * information about default encryption, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html">Amazon
- * S3 default bucket encryption</a> in the <i>Amazon S3 User Guide</i>. For more
- * information about S3 Bucket Keys, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html">Amazon S3
- * Bucket Keys</a> in the <i>Amazon S3 User Guide</i>.</p> <p>This
- * action requires AWS Signature Version 4. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/sig-v4-authenticating-requests.html">
- * Authenticating Requests (AWS Signature Version 4)</a>. </p> <p>To
- * use this operation, you must have permissions to perform the
- * <code>s3:PutEncryptionConfiguration</code> action. The bucket owner has this
- * permission by default. The bucket owner can grant this permission to others. For
- * more information about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a> in the Amazon S3 User Guide.
- * </p> <p class="title"> <b>Related Resources</b> </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketEncryption.html">GetBucketEncryption</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketEncryption.html">DeleteBucketEncryption</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketEncryption">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for PutBucketEncryption that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void PutBucketEncryptionAsync(const Model::PutBucketEncryptionRequest& request, const PutBucketEncryptionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename PutBucketEncryptionRequestT = Model::PutBucketEncryptionRequest>
+ void PutBucketEncryptionAsync(const PutBucketEncryptionRequestT& request, const PutBucketEncryptionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::PutBucketEncryption, request, handler, context);
+ }
/**
* <p>Puts a S3 Intelligent-Tiering configuration to the specified bucket. You can
* have up to 1,000 S3 Intelligent-Tiering configurations per bucket.</p> <p>The S3
* Intelligent-Tiering storage class is designed to optimize storage costs by
* automatically moving data to the most cost-effective storage access tier,
- * without additional operational overhead. S3 Intelligent-Tiering delivers
- * automatic cost savings by moving data between access tiers, when access patterns
- * change.</p> <p>The S3 Intelligent-Tiering storage class is suitable for objects
- * larger than 128 KB that you plan to store for at least 30 days. If the size of
- * an object is less than 128 KB, it is not eligible for auto-tiering. Smaller
- * objects can be stored, but they are always charged at the frequent access tier
- * rates in the S3 Intelligent-Tiering storage class. </p> <p>If you delete an
- * object before the end of the 30-day minimum storage duration period, you are
- * charged for 30 days. For more information, see <a
+ * without performance impact or operational overhead. S3 Intelligent-Tiering
+ * delivers automatic cost savings in three low latency and high throughput access
+ * tiers. To get the lowest storage cost on data that can be accessed in minutes to
+ * hours, you can choose to activate additional archiving capabilities.</p> <p>The
+ * S3 Intelligent-Tiering storage class is the ideal storage class for data with
+ * unknown, changing, or unpredictable access patterns, independent of object size
+ * or retention period. If the size of an object is less than 128 KB, it is not
+ * monitored and not eligible for auto-tiering. Smaller objects can be stored, but
+ * they are always charged at the Frequent Access tier rates in the S3
+ * Intelligent-Tiering storage class.</p> <p>For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html#sc-dynamic-data-access">Storage
* class for automatically optimizing frequently and infrequently accessed
* objects</a>.</p> <p>Operations related to
@@ -7288,96 +3705,22 @@ namespace Aws
virtual Model::PutBucketIntelligentTieringConfigurationOutcome PutBucketIntelligentTieringConfiguration(const Model::PutBucketIntelligentTieringConfigurationRequest& request) const;
/**
- * <p>Puts a S3 Intelligent-Tiering configuration to the specified bucket. You can
- * have up to 1,000 S3 Intelligent-Tiering configurations per bucket.</p> <p>The S3
- * Intelligent-Tiering storage class is designed to optimize storage costs by
- * automatically moving data to the most cost-effective storage access tier,
- * without additional operational overhead. S3 Intelligent-Tiering delivers
- * automatic cost savings by moving data between access tiers, when access patterns
- * change.</p> <p>The S3 Intelligent-Tiering storage class is suitable for objects
- * larger than 128 KB that you plan to store for at least 30 days. If the size of
- * an object is less than 128 KB, it is not eligible for auto-tiering. Smaller
- * objects can be stored, but they are always charged at the frequent access tier
- * rates in the S3 Intelligent-Tiering storage class. </p> <p>If you delete an
- * object before the end of the 30-day minimum storage duration period, you are
- * charged for 30 days. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html#sc-dynamic-data-access">Storage
- * class for automatically optimizing frequently and infrequently accessed
- * objects</a>.</p> <p>Operations related to
- * <code>PutBucketIntelligentTieringConfiguration</code> include: </p> <ul> <li>
- * <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketIntelligentTieringConfiguration.html">DeleteBucketIntelligentTieringConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketIntelligentTieringConfiguration.html">GetBucketIntelligentTieringConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketIntelligentTieringConfigurations.html">ListBucketIntelligentTieringConfigurations</a>
- * </p> </li> </ul> <p>You only need S3 Intelligent-Tiering enabled on a
- * bucket if you want to automatically move objects stored in the S3
- * Intelligent-Tiering storage class to the Archive Access or Deep Archive Access
- * tier.</p> <p class="title"> <b>Special Errors</b> </p> <ul> <li> <p
- * class="title"> <b>HTTP 400 Bad Request Error</b> </p> <ul> <li> <p> <i>Code:</i>
- * InvalidArgument</p> </li> <li> <p> <i>Cause:</i> Invalid Argument</p> </li>
- * </ul> </li> <li> <p class="title"> <b>HTTP 400 Bad Request Error</b> </p> <ul>
- * <li> <p> <i>Code:</i> TooManyConfigurations</p> </li> <li> <p> <i>Cause:</i> You
- * are attempting to create a new configuration but have already reached the
- * 1,000-configuration limit. </p> </li> </ul> </li> <li> <p class="title"> <b>HTTP
- * 403 Forbidden Error</b> </p> <ul> <li> <p> <i>Code:</i> AccessDenied</p> </li>
- * <li> <p> <i>Cause:</i> You are not the owner of the specified bucket, or you do
- * not have the <code>s3:PutIntelligentTieringConfiguration</code> bucket
- * permission to set the configuration on the bucket. </p> </li> </ul> </li>
- * </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketIntelligentTieringConfiguration">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for PutBucketIntelligentTieringConfiguration that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::PutBucketIntelligentTieringConfigurationOutcomeCallable PutBucketIntelligentTieringConfigurationCallable(const Model::PutBucketIntelligentTieringConfigurationRequest& request) const;
+ template<typename PutBucketIntelligentTieringConfigurationRequestT = Model::PutBucketIntelligentTieringConfigurationRequest>
+ Model::PutBucketIntelligentTieringConfigurationOutcomeCallable PutBucketIntelligentTieringConfigurationCallable(const PutBucketIntelligentTieringConfigurationRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::PutBucketIntelligentTieringConfiguration, request);
+ }
/**
- * <p>Puts a S3 Intelligent-Tiering configuration to the specified bucket. You can
- * have up to 1,000 S3 Intelligent-Tiering configurations per bucket.</p> <p>The S3
- * Intelligent-Tiering storage class is designed to optimize storage costs by
- * automatically moving data to the most cost-effective storage access tier,
- * without additional operational overhead. S3 Intelligent-Tiering delivers
- * automatic cost savings by moving data between access tiers, when access patterns
- * change.</p> <p>The S3 Intelligent-Tiering storage class is suitable for objects
- * larger than 128 KB that you plan to store for at least 30 days. If the size of
- * an object is less than 128 KB, it is not eligible for auto-tiering. Smaller
- * objects can be stored, but they are always charged at the frequent access tier
- * rates in the S3 Intelligent-Tiering storage class. </p> <p>If you delete an
- * object before the end of the 30-day minimum storage duration period, you are
- * charged for 30 days. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html#sc-dynamic-data-access">Storage
- * class for automatically optimizing frequently and infrequently accessed
- * objects</a>.</p> <p>Operations related to
- * <code>PutBucketIntelligentTieringConfiguration</code> include: </p> <ul> <li>
- * <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketIntelligentTieringConfiguration.html">DeleteBucketIntelligentTieringConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketIntelligentTieringConfiguration.html">GetBucketIntelligentTieringConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketIntelligentTieringConfigurations.html">ListBucketIntelligentTieringConfigurations</a>
- * </p> </li> </ul> <p>You only need S3 Intelligent-Tiering enabled on a
- * bucket if you want to automatically move objects stored in the S3
- * Intelligent-Tiering storage class to the Archive Access or Deep Archive Access
- * tier.</p> <p class="title"> <b>Special Errors</b> </p> <ul> <li> <p
- * class="title"> <b>HTTP 400 Bad Request Error</b> </p> <ul> <li> <p> <i>Code:</i>
- * InvalidArgument</p> </li> <li> <p> <i>Cause:</i> Invalid Argument</p> </li>
- * </ul> </li> <li> <p class="title"> <b>HTTP 400 Bad Request Error</b> </p> <ul>
- * <li> <p> <i>Code:</i> TooManyConfigurations</p> </li> <li> <p> <i>Cause:</i> You
- * are attempting to create a new configuration but have already reached the
- * 1,000-configuration limit. </p> </li> </ul> </li> <li> <p class="title"> <b>HTTP
- * 403 Forbidden Error</b> </p> <ul> <li> <p> <i>Code:</i> AccessDenied</p> </li>
- * <li> <p> <i>Cause:</i> You are not the owner of the specified bucket, or you do
- * not have the <code>s3:PutIntelligentTieringConfiguration</code> bucket
- * permission to set the configuration on the bucket. </p> </li> </ul> </li>
- * </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketIntelligentTieringConfiguration">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for PutBucketIntelligentTieringConfiguration that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void PutBucketIntelligentTieringConfigurationAsync(const Model::PutBucketIntelligentTieringConfigurationRequest& request, const PutBucketIntelligentTieringConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename PutBucketIntelligentTieringConfigurationRequestT = Model::PutBucketIntelligentTieringConfigurationRequest>
+ void PutBucketIntelligentTieringConfigurationAsync(const PutBucketIntelligentTieringConfigurationRequestT& request, const PutBucketIntelligentTieringConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::PutBucketIntelligentTieringConfiguration, request, handler, context);
+ }
/**
* <p>This implementation of the <code>PUT</code> action adds an inventory
@@ -7387,12 +3730,12 @@ namespace Aws
* results are published to a flat file. The bucket that is inventoried is called
* the <i>source</i> bucket, and the bucket where the inventory flat file is stored
* is called the <i>destination</i> bucket. The <i>destination</i> bucket must be
- * in the same AWS Region as the <i>source</i> bucket. </p> <p>When you configure
- * an inventory for a <i>source</i> bucket, you specify the <i>destination</i>
- * bucket where you want the inventory to be stored, and whether to generate the
- * inventory daily or weekly. You can also configure what object metadata to
- * include and whether to inventory all object versions or only current versions.
- * For more information, see <a
+ * in the same Amazon Web Services Region as the <i>source</i> bucket. </p> <p>When
+ * you configure an inventory for a <i>source</i> bucket, you specify the
+ * <i>destination</i> bucket where you want the inventory to be stored, and whether
+ * to generate the inventory daily or weekly. You can also configure what object
+ * metadata to include and whether to inventory all object versions or only current
+ * versions. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html">Amazon
* S3 Inventory</a> in the Amazon S3 User Guide.</p> <p>You must create
* a bucket policy on the <i>destination</i> bucket to grant permissions to Amazon
@@ -7432,132 +3775,46 @@ namespace Aws
virtual Model::PutBucketInventoryConfigurationOutcome PutBucketInventoryConfiguration(const Model::PutBucketInventoryConfigurationRequest& request) const;
/**
- * <p>This implementation of the <code>PUT</code> action adds an inventory
- * configuration (identified by the inventory ID) to the bucket. You can have up to
- * 1,000 inventory configurations per bucket. </p> <p>Amazon S3 inventory generates
- * inventories of the objects in the bucket on a daily or weekly basis, and the
- * results are published to a flat file. The bucket that is inventoried is called
- * the <i>source</i> bucket, and the bucket where the inventory flat file is stored
- * is called the <i>destination</i> bucket. The <i>destination</i> bucket must be
- * in the same AWS Region as the <i>source</i> bucket. </p> <p>When you configure
- * an inventory for a <i>source</i> bucket, you specify the <i>destination</i>
- * bucket where you want the inventory to be stored, and whether to generate the
- * inventory daily or weekly. You can also configure what object metadata to
- * include and whether to inventory all object versions or only current versions.
- * For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html">Amazon
- * S3 Inventory</a> in the Amazon S3 User Guide.</p> <p>You must create
- * a bucket policy on the <i>destination</i> bucket to grant permissions to Amazon
- * S3 to write objects to the bucket in the defined location. For an example
- * policy, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/example-bucket-policies.html#example-bucket-policies-use-case-9">
- * Granting Permissions for Amazon S3 Inventory and Storage Class Analysis</a>.</p>
- * <p>To use this operation, you must have permissions to perform the
- * <code>s3:PutInventoryConfiguration</code> action. The bucket owner has this
- * permission by default and can grant this permission to others. For more
- * information about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a> in the Amazon S3 User
- * Guide.</p> <p class="title"> <b>Special Errors</b> </p> <ul> <li> <p
- * class="title"> <b>HTTP 400 Bad Request Error</b> </p> <ul> <li> <p> <i>Code:</i>
- * InvalidArgument</p> </li> <li> <p> <i>Cause:</i> Invalid Argument</p> </li>
- * </ul> </li> <li> <p class="title"> <b>HTTP 400 Bad Request Error</b> </p> <ul>
- * <li> <p> <i>Code:</i> TooManyConfigurations</p> </li> <li> <p> <i>Cause:</i> You
- * are attempting to create a new configuration but have already reached the
- * 1,000-configuration limit. </p> </li> </ul> </li> <li> <p class="title"> <b>HTTP
- * 403 Forbidden Error</b> </p> <ul> <li> <p> <i>Code:</i> AccessDenied</p> </li>
- * <li> <p> <i>Cause:</i> You are not the owner of the specified bucket, or you do
- * not have the <code>s3:PutInventoryConfiguration</code> bucket permission to set
- * the configuration on the bucket. </p> </li> </ul> </li> </ul> <p class="title">
- * <b>Related Resources</b> </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketInventoryConfiguration.html">GetBucketInventoryConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketInventoryConfiguration.html">DeleteBucketInventoryConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketInventoryConfigurations.html">ListBucketInventoryConfigurations</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketInventoryConfiguration">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for PutBucketInventoryConfiguration that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::PutBucketInventoryConfigurationOutcomeCallable PutBucketInventoryConfigurationCallable(const Model::PutBucketInventoryConfigurationRequest& request) const;
+ template<typename PutBucketInventoryConfigurationRequestT = Model::PutBucketInventoryConfigurationRequest>
+ Model::PutBucketInventoryConfigurationOutcomeCallable PutBucketInventoryConfigurationCallable(const PutBucketInventoryConfigurationRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::PutBucketInventoryConfiguration, request);
+ }
/**
- * <p>This implementation of the <code>PUT</code> action adds an inventory
- * configuration (identified by the inventory ID) to the bucket. You can have up to
- * 1,000 inventory configurations per bucket. </p> <p>Amazon S3 inventory generates
- * inventories of the objects in the bucket on a daily or weekly basis, and the
- * results are published to a flat file. The bucket that is inventoried is called
- * the <i>source</i> bucket, and the bucket where the inventory flat file is stored
- * is called the <i>destination</i> bucket. The <i>destination</i> bucket must be
- * in the same AWS Region as the <i>source</i> bucket. </p> <p>When you configure
- * an inventory for a <i>source</i> bucket, you specify the <i>destination</i>
- * bucket where you want the inventory to be stored, and whether to generate the
- * inventory daily or weekly. You can also configure what object metadata to
- * include and whether to inventory all object versions or only current versions.
- * For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html">Amazon
- * S3 Inventory</a> in the Amazon S3 User Guide.</p> <p>You must create
- * a bucket policy on the <i>destination</i> bucket to grant permissions to Amazon
- * S3 to write objects to the bucket in the defined location. For an example
- * policy, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/example-bucket-policies.html#example-bucket-policies-use-case-9">
- * Granting Permissions for Amazon S3 Inventory and Storage Class Analysis</a>.</p>
- * <p>To use this operation, you must have permissions to perform the
- * <code>s3:PutInventoryConfiguration</code> action. The bucket owner has this
- * permission by default and can grant this permission to others. For more
- * information about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a> in the Amazon S3 User
- * Guide.</p> <p class="title"> <b>Special Errors</b> </p> <ul> <li> <p
- * class="title"> <b>HTTP 400 Bad Request Error</b> </p> <ul> <li> <p> <i>Code:</i>
- * InvalidArgument</p> </li> <li> <p> <i>Cause:</i> Invalid Argument</p> </li>
- * </ul> </li> <li> <p class="title"> <b>HTTP 400 Bad Request Error</b> </p> <ul>
- * <li> <p> <i>Code:</i> TooManyConfigurations</p> </li> <li> <p> <i>Cause:</i> You
- * are attempting to create a new configuration but have already reached the
- * 1,000-configuration limit. </p> </li> </ul> </li> <li> <p class="title"> <b>HTTP
- * 403 Forbidden Error</b> </p> <ul> <li> <p> <i>Code:</i> AccessDenied</p> </li>
- * <li> <p> <i>Cause:</i> You are not the owner of the specified bucket, or you do
- * not have the <code>s3:PutInventoryConfiguration</code> bucket permission to set
- * the configuration on the bucket. </p> </li> </ul> </li> </ul> <p class="title">
- * <b>Related Resources</b> </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketInventoryConfiguration.html">GetBucketInventoryConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketInventoryConfiguration.html">DeleteBucketInventoryConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketInventoryConfigurations.html">ListBucketInventoryConfigurations</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketInventoryConfiguration">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for PutBucketInventoryConfiguration that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void PutBucketInventoryConfigurationAsync(const Model::PutBucketInventoryConfigurationRequest& request, const PutBucketInventoryConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename PutBucketInventoryConfigurationRequestT = Model::PutBucketInventoryConfigurationRequest>
+ void PutBucketInventoryConfigurationAsync(const PutBucketInventoryConfigurationRequestT& request, const PutBucketInventoryConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::PutBucketInventoryConfiguration, request, handler, context);
+ }
/**
* <p>Creates a new lifecycle configuration for the bucket or replaces an existing
- * lifecycle configuration. For information about lifecycle configuration, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>Bucket
- * lifecycle configuration now supports specifying a lifecycle rule using an object
- * key name prefix, one or more object tags, or a combination of both. Accordingly,
- * this section describes the latest API. The previous version of the API supported
- * filtering based only on an object key name prefix, which is supported for
- * backward compatibility. For the related API description, see <a
+ * lifecycle configuration. Keep in mind that this will overwrite an existing
+ * lifecycle configuration, so if you want to retain any configuration details,
+ * they must be included in the new lifecycle configuration. For information about
+ * lifecycle configuration, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lifecycle-mgmt.html">Managing
+ * your storage lifecycle</a>.</p> <p>Bucket lifecycle configuration now
+ * supports specifying a lifecycle rule using an object key name prefix, one or
+ * more object tags, or a combination of both. Accordingly, this section describes
+ * the latest API. The previous version of the API supported filtering based only
+ * on an object key name prefix, which is supported for backward compatibility. For
+ * the related API description, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycle.html">PutBucketLifecycle</a>.</p>
* <p> <b>Rules</b> </p> <p>You specify the lifecycle configuration in your
* request body. The lifecycle configuration is specified as XML consisting of one
- * or more rules. Each rule consists of the following:</p> <ul> <li> <p>Filter
- * identifying a subset of objects to which the rule applies. The filter can be
- * based on a key name prefix, object tags, or a combination of both.</p> </li>
- * <li> <p>Status whether the rule is in effect.</p> </li> <li> <p>One or more
- * lifecycle transition and expiration actions that you want Amazon S3 to perform
- * on the objects identified by the filter. If the state of your bucket is
+ * or more rules. An Amazon S3 Lifecycle configuration can have up to 1,000 rules.
+ * This limit is not adjustable. Each rule consists of the following:</p> <ul> <li>
+ * <p>Filter identifying a subset of objects to which the rule applies. The filter
+ * can be based on a key name prefix, object tags, or a combination of both.</p>
+ * </li> <li> <p>Status whether the rule is in effect.</p> </li> <li> <p>One or
+ * more lifecycle transition and expiration actions that you want Amazon S3 to
+ * perform on the objects identified by the filter. If the state of your bucket is
* versioning-enabled or versioning-suspended, you can have many versions of the
* same object (one current version and zero or more noncurrent versions). Amazon
* S3 provides predefined actions that you can specify for current and noncurrent
@@ -7568,16 +3825,17 @@ namespace Aws
* Configuration Elements</a>.</p> <p> <b>Permissions</b> </p> <p>By default, all
* Amazon S3 resources are private, including buckets, objects, and related
* subresources (for example, lifecycle configuration and website configuration).
- * Only the resource owner (that is, the AWS account that created it) can access
- * the resource. The resource owner can optionally grant access permissions to
- * others by writing an access policy. For this operation, a user must get the
- * s3:PutLifecycleConfiguration permission.</p> <p>You can also explicitly deny
- * permissions. Explicit deny also supersedes any other permissions. If you want to
- * block users or accounts from removing or deleting objects from your bucket, you
- * must deny them permissions for the following actions:</p> <ul> <li>
- * <p>s3:DeleteObject</p> </li> <li> <p>s3:DeleteObjectVersion</p> </li> <li>
- * <p>s3:PutLifecycleConfiguration</p> </li> </ul> <p>For more information about
- * permissions, see <a
+ * Only the resource owner (that is, the Amazon Web Services account that created
+ * it) can access the resource. The resource owner can optionally grant access
+ * permissions to others by writing an access policy. For this operation, a user
+ * must get the <code>s3:PutLifecycleConfiguration</code> permission.</p> <p>You
+ * can also explicitly deny permissions. Explicit deny also supersedes any other
+ * permissions. If you want to block users or accounts from removing or deleting
+ * objects from your bucket, you must deny them permissions for the following
+ * actions:</p> <ul> <li> <p> <code>s3:DeleteObject</code> </p> </li> <li> <p>
+ * <code>s3:DeleteObjectVersion</code> </p> </li> <li> <p>
+ * <code>s3:PutLifecycleConfiguration</code> </p> </li> </ul> <p>For more
+ * information about permissions, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
* Access Permissions to Your Amazon S3 Resources</a>.</p> <p>The following are
* related to <code>PutBucketLifecycleConfiguration</code>:</p> <ul> <li> <p> <a
@@ -7593,126 +3851,40 @@ namespace Aws
virtual Model::PutBucketLifecycleConfigurationOutcome PutBucketLifecycleConfiguration(const Model::PutBucketLifecycleConfigurationRequest& request) const;
/**
- * <p>Creates a new lifecycle configuration for the bucket or replaces an existing
- * lifecycle configuration. For information about lifecycle configuration, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>Bucket
- * lifecycle configuration now supports specifying a lifecycle rule using an object
- * key name prefix, one or more object tags, or a combination of both. Accordingly,
- * this section describes the latest API. The previous version of the API supported
- * filtering based only on an object key name prefix, which is supported for
- * backward compatibility. For the related API description, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycle.html">PutBucketLifecycle</a>.</p>
- * <p> <b>Rules</b> </p> <p>You specify the lifecycle configuration in your
- * request body. The lifecycle configuration is specified as XML consisting of one
- * or more rules. Each rule consists of the following:</p> <ul> <li> <p>Filter
- * identifying a subset of objects to which the rule applies. The filter can be
- * based on a key name prefix, object tags, or a combination of both.</p> </li>
- * <li> <p>Status whether the rule is in effect.</p> </li> <li> <p>One or more
- * lifecycle transition and expiration actions that you want Amazon S3 to perform
- * on the objects identified by the filter. If the state of your bucket is
- * versioning-enabled or versioning-suspended, you can have many versions of the
- * same object (one current version and zero or more noncurrent versions). Amazon
- * S3 provides predefined actions that you can specify for current and noncurrent
- * object versions.</p> </li> </ul> <p>For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html">Object
- * Lifecycle Management</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/intro-lifecycle-rules.html">Lifecycle
- * Configuration Elements</a>.</p> <p> <b>Permissions</b> </p> <p>By default, all
- * Amazon S3 resources are private, including buckets, objects, and related
- * subresources (for example, lifecycle configuration and website configuration).
- * Only the resource owner (that is, the AWS account that created it) can access
- * the resource. The resource owner can optionally grant access permissions to
- * others by writing an access policy. For this operation, a user must get the
- * s3:PutLifecycleConfiguration permission.</p> <p>You can also explicitly deny
- * permissions. Explicit deny also supersedes any other permissions. If you want to
- * block users or accounts from removing or deleting objects from your bucket, you
- * must deny them permissions for the following actions:</p> <ul> <li>
- * <p>s3:DeleteObject</p> </li> <li> <p>s3:DeleteObjectVersion</p> </li> <li>
- * <p>s3:PutLifecycleConfiguration</p> </li> </ul> <p>For more information about
- * permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>The following are
- * related to <code>PutBucketLifecycleConfiguration</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/lifecycle-configuration-examples.html">Examples
- * of Lifecycle Configuration</a> </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycleConfiguration.html">GetBucketLifecycleConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketLifecycle.html">DeleteBucketLifecycle</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketLifecycleConfiguration">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for PutBucketLifecycleConfiguration that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::PutBucketLifecycleConfigurationOutcomeCallable PutBucketLifecycleConfigurationCallable(const Model::PutBucketLifecycleConfigurationRequest& request) const;
+ template<typename PutBucketLifecycleConfigurationRequestT = Model::PutBucketLifecycleConfigurationRequest>
+ Model::PutBucketLifecycleConfigurationOutcomeCallable PutBucketLifecycleConfigurationCallable(const PutBucketLifecycleConfigurationRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::PutBucketLifecycleConfiguration, request);
+ }
/**
- * <p>Creates a new lifecycle configuration for the bucket or replaces an existing
- * lifecycle configuration. For information about lifecycle configuration, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>Bucket
- * lifecycle configuration now supports specifying a lifecycle rule using an object
- * key name prefix, one or more object tags, or a combination of both. Accordingly,
- * this section describes the latest API. The previous version of the API supported
- * filtering based only on an object key name prefix, which is supported for
- * backward compatibility. For the related API description, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycle.html">PutBucketLifecycle</a>.</p>
- * <p> <b>Rules</b> </p> <p>You specify the lifecycle configuration in your
- * request body. The lifecycle configuration is specified as XML consisting of one
- * or more rules. Each rule consists of the following:</p> <ul> <li> <p>Filter
- * identifying a subset of objects to which the rule applies. The filter can be
- * based on a key name prefix, object tags, or a combination of both.</p> </li>
- * <li> <p>Status whether the rule is in effect.</p> </li> <li> <p>One or more
- * lifecycle transition and expiration actions that you want Amazon S3 to perform
- * on the objects identified by the filter. If the state of your bucket is
- * versioning-enabled or versioning-suspended, you can have many versions of the
- * same object (one current version and zero or more noncurrent versions). Amazon
- * S3 provides predefined actions that you can specify for current and noncurrent
- * object versions.</p> </li> </ul> <p>For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html">Object
- * Lifecycle Management</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/intro-lifecycle-rules.html">Lifecycle
- * Configuration Elements</a>.</p> <p> <b>Permissions</b> </p> <p>By default, all
- * Amazon S3 resources are private, including buckets, objects, and related
- * subresources (for example, lifecycle configuration and website configuration).
- * Only the resource owner (that is, the AWS account that created it) can access
- * the resource. The resource owner can optionally grant access permissions to
- * others by writing an access policy. For this operation, a user must get the
- * s3:PutLifecycleConfiguration permission.</p> <p>You can also explicitly deny
- * permissions. Explicit deny also supersedes any other permissions. If you want to
- * block users or accounts from removing or deleting objects from your bucket, you
- * must deny them permissions for the following actions:</p> <ul> <li>
- * <p>s3:DeleteObject</p> </li> <li> <p>s3:DeleteObjectVersion</p> </li> <li>
- * <p>s3:PutLifecycleConfiguration</p> </li> </ul> <p>For more information about
- * permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>The following are
- * related to <code>PutBucketLifecycleConfiguration</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/lifecycle-configuration-examples.html">Examples
- * of Lifecycle Configuration</a> </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycleConfiguration.html">GetBucketLifecycleConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketLifecycle.html">DeleteBucketLifecycle</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketLifecycleConfiguration">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for PutBucketLifecycleConfiguration that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void PutBucketLifecycleConfigurationAsync(const Model::PutBucketLifecycleConfigurationRequest& request, const PutBucketLifecycleConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename PutBucketLifecycleConfigurationRequestT = Model::PutBucketLifecycleConfigurationRequest>
+ void PutBucketLifecycleConfigurationAsync(const PutBucketLifecycleConfigurationRequestT& request, const PutBucketLifecycleConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::PutBucketLifecycleConfiguration, request, handler, context);
+ }
/**
* <p>Set the logging parameters for a bucket and to specify permissions for who
* can view and modify the logging parameters. All logs are saved to buckets in the
- * same AWS Region as the source bucket. To set the logging status of a bucket, you
- * must be the bucket owner.</p> <p>The bucket owner is automatically granted
- * FULL_CONTROL to all logs. You use the <code>Grantee</code> request element to
- * grant access to other people. The <code>Permissions</code> request element
- * specifies the kind of access the grantee has to the logs.</p> <p> <b>Grantee
- * Values</b> </p> <p>You can specify the person (grantee) to whom you're assigning
- * access rights (using request elements) in the following ways:</p> <ul> <li>
- * <p>By the person's ID:</p> <p> <code>&lt;Grantee
+ * same Amazon Web Services Region as the source bucket. To set the logging status
+ * of a bucket, you must be the bucket owner.</p> <p>The bucket owner is
+ * automatically granted FULL_CONTROL to all logs. You use the <code>Grantee</code>
+ * request element to grant access to other people. The <code>Permissions</code>
+ * request element specifies the kind of access the grantee has to the logs.</p>
+ * <p>If the target bucket for log delivery uses the bucket owner
+ * enforced setting for S3 Object Ownership, you can't use the <code>Grantee</code>
+ * request element to grant access to others. Permissions can only be granted using
+ * policies. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/enable-server-access-logging.html#grant-log-delivery-permissions-general">Permissions
+ * for server access log delivery</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * <p> <b>Grantee Values</b> </p> <p>You can specify the person
+ * (grantee) to whom you're assigning access rights (using request elements) in the
+ * following ways:</p> <ul> <li> <p>By the person's ID:</p> <p> <code>&lt;Grantee
* xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
* xsi:type="CanonicalUser"&gt;&lt;ID&gt;&lt;&gt;ID&lt;&gt;&lt;/ID&gt;&lt;DisplayName&gt;&lt;&gt;GranteesEmail&lt;&gt;&lt;/DisplayName&gt;
* &lt;/Grantee&gt;</code> </p> <p>DisplayName is optional and ignored in the
@@ -7728,8 +3900,9 @@ namespace Aws
* request element:</p> <p> <code>&lt;BucketLoggingStatus
* xmlns="http://doc.s3.amazonaws.com/2006-03-01" /&gt;</code> </p> <p>For more
* information about server access logging, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerLogs.html">Server
- * Access Logging</a>. </p> <p>For more information about creating a bucket, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/ServerLogs.html">Server
+ * Access Logging</a> in the <i>Amazon S3 User Guide</i>. </p> <p>For more
+ * information about creating a bucket, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a>.
* For more information about returning the logging status of a bucket, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLogging.html">GetBucketLogging</a>.</p>
@@ -7749,100 +3922,22 @@ namespace Aws
virtual Model::PutBucketLoggingOutcome PutBucketLogging(const Model::PutBucketLoggingRequest& request) const;
/**
- * <p>Set the logging parameters for a bucket and to specify permissions for who
- * can view and modify the logging parameters. All logs are saved to buckets in the
- * same AWS Region as the source bucket. To set the logging status of a bucket, you
- * must be the bucket owner.</p> <p>The bucket owner is automatically granted
- * FULL_CONTROL to all logs. You use the <code>Grantee</code> request element to
- * grant access to other people. The <code>Permissions</code> request element
- * specifies the kind of access the grantee has to the logs.</p> <p> <b>Grantee
- * Values</b> </p> <p>You can specify the person (grantee) to whom you're assigning
- * access rights (using request elements) in the following ways:</p> <ul> <li>
- * <p>By the person's ID:</p> <p> <code>&lt;Grantee
- * xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- * xsi:type="CanonicalUser"&gt;&lt;ID&gt;&lt;&gt;ID&lt;&gt;&lt;/ID&gt;&lt;DisplayName&gt;&lt;&gt;GranteesEmail&lt;&gt;&lt;/DisplayName&gt;
- * &lt;/Grantee&gt;</code> </p> <p>DisplayName is optional and ignored in the
- * request.</p> </li> <li> <p>By Email address:</p> <p> <code> &lt;Grantee
- * xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- * xsi:type="AmazonCustomerByEmail"&gt;&lt;EmailAddress&gt;&lt;&gt;Grantees@email.com&lt;&gt;&lt;/EmailAddress&gt;&lt;/Grantee&gt;</code>
- * </p> <p>The grantee is resolved to the CanonicalUser and, in a response to a GET
- * Object acl request, appears as the CanonicalUser.</p> </li> <li> <p>By URI:</p>
- * <p> <code>&lt;Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- * xsi:type="Group"&gt;&lt;URI&gt;&lt;&gt;http://acs.amazonaws.com/groups/global/AuthenticatedUsers&lt;&gt;&lt;/URI&gt;&lt;/Grantee&gt;</code>
- * </p> </li> </ul> <p>To enable logging, you use LoggingEnabled and its children
- * request elements. To disable logging, you use an empty BucketLoggingStatus
- * request element:</p> <p> <code>&lt;BucketLoggingStatus
- * xmlns="http://doc.s3.amazonaws.com/2006-03-01" /&gt;</code> </p> <p>For more
- * information about server access logging, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerLogs.html">Server
- * Access Logging</a>. </p> <p>For more information about creating a bucket, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a>.
- * For more information about returning the logging status of a bucket, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLogging.html">GetBucketLogging</a>.</p>
- * <p>The following operations are related to <code>PutBucketLogging</code>:</p>
- * <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html">PutObject</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html">DeleteBucket</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLogging.html">GetBucketLogging</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketLogging">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for PutBucketLogging that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::PutBucketLoggingOutcomeCallable PutBucketLoggingCallable(const Model::PutBucketLoggingRequest& request) const;
+ template<typename PutBucketLoggingRequestT = Model::PutBucketLoggingRequest>
+ Model::PutBucketLoggingOutcomeCallable PutBucketLoggingCallable(const PutBucketLoggingRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::PutBucketLogging, request);
+ }
/**
- * <p>Set the logging parameters for a bucket and to specify permissions for who
- * can view and modify the logging parameters. All logs are saved to buckets in the
- * same AWS Region as the source bucket. To set the logging status of a bucket, you
- * must be the bucket owner.</p> <p>The bucket owner is automatically granted
- * FULL_CONTROL to all logs. You use the <code>Grantee</code> request element to
- * grant access to other people. The <code>Permissions</code> request element
- * specifies the kind of access the grantee has to the logs.</p> <p> <b>Grantee
- * Values</b> </p> <p>You can specify the person (grantee) to whom you're assigning
- * access rights (using request elements) in the following ways:</p> <ul> <li>
- * <p>By the person's ID:</p> <p> <code>&lt;Grantee
- * xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- * xsi:type="CanonicalUser"&gt;&lt;ID&gt;&lt;&gt;ID&lt;&gt;&lt;/ID&gt;&lt;DisplayName&gt;&lt;&gt;GranteesEmail&lt;&gt;&lt;/DisplayName&gt;
- * &lt;/Grantee&gt;</code> </p> <p>DisplayName is optional and ignored in the
- * request.</p> </li> <li> <p>By Email address:</p> <p> <code> &lt;Grantee
- * xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- * xsi:type="AmazonCustomerByEmail"&gt;&lt;EmailAddress&gt;&lt;&gt;Grantees@email.com&lt;&gt;&lt;/EmailAddress&gt;&lt;/Grantee&gt;</code>
- * </p> <p>The grantee is resolved to the CanonicalUser and, in a response to a GET
- * Object acl request, appears as the CanonicalUser.</p> </li> <li> <p>By URI:</p>
- * <p> <code>&lt;Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- * xsi:type="Group"&gt;&lt;URI&gt;&lt;&gt;http://acs.amazonaws.com/groups/global/AuthenticatedUsers&lt;&gt;&lt;/URI&gt;&lt;/Grantee&gt;</code>
- * </p> </li> </ul> <p>To enable logging, you use LoggingEnabled and its children
- * request elements. To disable logging, you use an empty BucketLoggingStatus
- * request element:</p> <p> <code>&lt;BucketLoggingStatus
- * xmlns="http://doc.s3.amazonaws.com/2006-03-01" /&gt;</code> </p> <p>For more
- * information about server access logging, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerLogs.html">Server
- * Access Logging</a>. </p> <p>For more information about creating a bucket, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a>.
- * For more information about returning the logging status of a bucket, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLogging.html">GetBucketLogging</a>.</p>
- * <p>The following operations are related to <code>PutBucketLogging</code>:</p>
- * <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html">PutObject</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html">DeleteBucket</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLogging.html">GetBucketLogging</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketLogging">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for PutBucketLogging that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void PutBucketLoggingAsync(const Model::PutBucketLoggingRequest& request, const PutBucketLoggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename PutBucketLoggingRequestT = Model::PutBucketLoggingRequest>
+ void PutBucketLoggingAsync(const PutBucketLoggingRequestT& request, const PutBucketLoggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::PutBucketLogging, request, handler, context);
+ }
/**
* <p>Sets a metrics configuration (specified by the metrics configuration ID) for
@@ -7863,7 +3958,7 @@ namespace Aws
* to <code>PutBucketMetricsConfiguration</code>:</p> <ul> <li> <p> <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketMetricsConfiguration.html">DeleteBucketMetricsConfiguration</a>
* </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketMetricsConfiguration.html">PutBucketMetricsConfiguration</a>
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketMetricsConfiguration.html">GetBucketMetricsConfiguration</a>
* </p> </li> <li> <p> <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketMetricsConfigurations.html">ListBucketMetricsConfigurations</a>
* </p> </li> </ul> <p> <code>GetBucketLifecycle</code> has the following special
@@ -7877,72 +3972,22 @@ namespace Aws
virtual Model::PutBucketMetricsConfigurationOutcome PutBucketMetricsConfiguration(const Model::PutBucketMetricsConfigurationRequest& request) const;
/**
- * <p>Sets a metrics configuration (specified by the metrics configuration ID) for
- * the bucket. You can have up to 1,000 metrics configurations per bucket. If
- * you're updating an existing metrics configuration, note that this is a full
- * replacement of the existing metrics configuration. If you don't include the
- * elements you want to keep, they are erased.</p> <p>To use this operation, you
- * must have permissions to perform the <code>s3:PutMetricsConfiguration</code>
- * action. The bucket owner has this permission by default. The bucket owner can
- * grant this permission to others. For more information about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For information about
- * CloudWatch request metrics for Amazon S3, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html">Monitoring
- * Metrics with Amazon CloudWatch</a>.</p> <p>The following operations are related
- * to <code>PutBucketMetricsConfiguration</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketMetricsConfiguration.html">DeleteBucketMetricsConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketMetricsConfiguration.html">PutBucketMetricsConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketMetricsConfigurations.html">ListBucketMetricsConfigurations</a>
- * </p> </li> </ul> <p> <code>GetBucketLifecycle</code> has the following special
- * error:</p> <ul> <li> <p>Error code: <code>TooManyConfigurations</code> </p> <ul>
- * <li> <p>Description: You are attempting to create a new configuration but have
- * already reached the 1,000-configuration limit.</p> </li> <li> <p>HTTP Status
- * Code: HTTP 400 Bad Request</p> </li> </ul> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketMetricsConfiguration">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for PutBucketMetricsConfiguration that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::PutBucketMetricsConfigurationOutcomeCallable PutBucketMetricsConfigurationCallable(const Model::PutBucketMetricsConfigurationRequest& request) const;
+ template<typename PutBucketMetricsConfigurationRequestT = Model::PutBucketMetricsConfigurationRequest>
+ Model::PutBucketMetricsConfigurationOutcomeCallable PutBucketMetricsConfigurationCallable(const PutBucketMetricsConfigurationRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::PutBucketMetricsConfiguration, request);
+ }
/**
- * <p>Sets a metrics configuration (specified by the metrics configuration ID) for
- * the bucket. You can have up to 1,000 metrics configurations per bucket. If
- * you're updating an existing metrics configuration, note that this is a full
- * replacement of the existing metrics configuration. If you don't include the
- * elements you want to keep, they are erased.</p> <p>To use this operation, you
- * must have permissions to perform the <code>s3:PutMetricsConfiguration</code>
- * action. The bucket owner has this permission by default. The bucket owner can
- * grant this permission to others. For more information about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>For information about
- * CloudWatch request metrics for Amazon S3, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/cloudwatch-monitoring.html">Monitoring
- * Metrics with Amazon CloudWatch</a>.</p> <p>The following operations are related
- * to <code>PutBucketMetricsConfiguration</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketMetricsConfiguration.html">DeleteBucketMetricsConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketMetricsConfiguration.html">PutBucketMetricsConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBucketMetricsConfigurations.html">ListBucketMetricsConfigurations</a>
- * </p> </li> </ul> <p> <code>GetBucketLifecycle</code> has the following special
- * error:</p> <ul> <li> <p>Error code: <code>TooManyConfigurations</code> </p> <ul>
- * <li> <p>Description: You are attempting to create a new configuration but have
- * already reached the 1,000-configuration limit.</p> </li> <li> <p>HTTP Status
- * Code: HTTP 400 Bad Request</p> </li> </ul> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketMetricsConfiguration">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for PutBucketMetricsConfiguration that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void PutBucketMetricsConfigurationAsync(const Model::PutBucketMetricsConfigurationRequest& request, const PutBucketMetricsConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename PutBucketMetricsConfigurationRequestT = Model::PutBucketMetricsConfigurationRequest>
+ void PutBucketMetricsConfigurationAsync(const PutBucketMetricsConfigurationRequestT& request, const PutBucketMetricsConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::PutBucketMetricsConfiguration, request, handler, context);
+ }
/**
* <p>Enables notifications of specified events for a bucket. For more information
@@ -7961,27 +4006,32 @@ namespace Aws
* request body.</p> <p>After Amazon S3 receives this request, it first verifies
* that any Amazon Simple Notification Service (Amazon SNS) or Amazon Simple Queue
* Service (Amazon SQS) destination exists, and that the bucket owner has
- * permission to publish to it by sending a test notification. In the case of AWS
+ * permission to publish to it by sending a test notification. In the case of
* Lambda destinations, Amazon S3 verifies that the Lambda function permissions
* grant Amazon S3 permission to invoke the function from the Amazon S3 bucket. For
* more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Configuring
* Notifications for Amazon S3 Events</a>.</p> <p>You can disable notifications by
- * adding the empty NotificationConfiguration element.</p> <p>By default, only the
- * bucket owner can configure notifications on a bucket. However, bucket owners can
- * use a bucket policy to grant permission to other users to set this configuration
- * with <code>s3:PutBucketNotification</code> permission.</p> <p>The PUT
- * notification is an atomic operation. For example, suppose your notification
- * configuration includes SNS topic, SQS queue, and Lambda function configurations.
- * When you send a PUT request with this configuration, Amazon S3 sends test
- * messages to your SNS topic. If the message fails, the entire PUT action will
- * fail, and Amazon S3 will not add the configuration to your bucket.</p>
- * <p> <b>Responses</b> </p> <p>If the configuration in the request body includes
- * only one <code>TopicConfiguration</code> specifying only the
- * <code>s3:ReducedRedundancyLostObject</code> event type, the response will also
- * include the <code>x-amz-sns-test-message-id</code> header containing the message
- * ID of the test notification sent to the topic.</p> <p>The following action is
- * related to <code>PutBucketNotificationConfiguration</code>:</p> <ul> <li> <p> <a
+ * adding the empty NotificationConfiguration element.</p> <p>For more information
+ * about the number of event notification configurations that you can create per
+ * bucket, see <a
+ * href="https://docs.aws.amazon.com/general/latest/gr/s3.html#limits_s3">Amazon S3
+ * service quotas</a> in <i>Amazon Web Services General Reference</i>.</p> <p>By
+ * default, only the bucket owner can configure notifications on a bucket. However,
+ * bucket owners can use a bucket policy to grant permission to other users to set
+ * this configuration with <code>s3:PutBucketNotification</code> permission.</p>
+ * <p>The PUT notification is an atomic operation. For example, suppose your
+ * notification configuration includes SNS topic, SQS queue, and Lambda function
+ * configurations. When you send a PUT request with this configuration, Amazon S3
+ * sends test messages to your SNS topic. If the message fails, the entire PUT
+ * action will fail, and Amazon S3 will not add the configuration to your
+ * bucket.</p> <p> <b>Responses</b> </p> <p>If the configuration in the
+ * request body includes only one <code>TopicConfiguration</code> specifying only
+ * the <code>s3:ReducedRedundancyLostObject</code> event type, the response will
+ * also include the <code>x-amz-sns-test-message-id</code> header containing the
+ * message ID of the test notification sent to the topic.</p> <p>The following
+ * action is related to <code>PutBucketNotificationConfiguration</code>:</p> <ul>
+ * <li> <p> <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketNotificationConfiguration.html">GetBucketNotificationConfiguration</a>
* </p> </li> </ul><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketNotificationConfiguration">AWS
@@ -7990,109 +4040,33 @@ namespace Aws
virtual Model::PutBucketNotificationConfigurationOutcome PutBucketNotificationConfiguration(const Model::PutBucketNotificationConfigurationRequest& request) const;
/**
- * <p>Enables notifications of specified events for a bucket. For more information
- * about event notifications, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Configuring
- * Event Notifications</a>.</p> <p>Using this API, you can replace an existing
- * notification configuration. The configuration is an XML file that defines the
- * event types that you want Amazon S3 to publish and the destination where you
- * want Amazon S3 to publish an event notification when it detects an event of the
- * specified type.</p> <p>By default, your bucket has no event notifications
- * configured. That is, the notification configuration will be an empty
- * <code>NotificationConfiguration</code>.</p> <p>
- * <code>&lt;NotificationConfiguration&gt;</code> </p> <p>
- * <code>&lt;/NotificationConfiguration&gt;</code> </p> <p>This action replaces the
- * existing notification configuration with the configuration you include in the
- * request body.</p> <p>After Amazon S3 receives this request, it first verifies
- * that any Amazon Simple Notification Service (Amazon SNS) or Amazon Simple Queue
- * Service (Amazon SQS) destination exists, and that the bucket owner has
- * permission to publish to it by sending a test notification. In the case of AWS
- * Lambda destinations, Amazon S3 verifies that the Lambda function permissions
- * grant Amazon S3 permission to invoke the function from the Amazon S3 bucket. For
- * more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Configuring
- * Notifications for Amazon S3 Events</a>.</p> <p>You can disable notifications by
- * adding the empty NotificationConfiguration element.</p> <p>By default, only the
- * bucket owner can configure notifications on a bucket. However, bucket owners can
- * use a bucket policy to grant permission to other users to set this configuration
- * with <code>s3:PutBucketNotification</code> permission.</p> <p>The PUT
- * notification is an atomic operation. For example, suppose your notification
- * configuration includes SNS topic, SQS queue, and Lambda function configurations.
- * When you send a PUT request with this configuration, Amazon S3 sends test
- * messages to your SNS topic. If the message fails, the entire PUT action will
- * fail, and Amazon S3 will not add the configuration to your bucket.</p>
- * <p> <b>Responses</b> </p> <p>If the configuration in the request body includes
- * only one <code>TopicConfiguration</code> specifying only the
- * <code>s3:ReducedRedundancyLostObject</code> event type, the response will also
- * include the <code>x-amz-sns-test-message-id</code> header containing the message
- * ID of the test notification sent to the topic.</p> <p>The following action is
- * related to <code>PutBucketNotificationConfiguration</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketNotificationConfiguration.html">GetBucketNotificationConfiguration</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketNotificationConfiguration">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for PutBucketNotificationConfiguration that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::PutBucketNotificationConfigurationOutcomeCallable PutBucketNotificationConfigurationCallable(const Model::PutBucketNotificationConfigurationRequest& request) const;
+ template<typename PutBucketNotificationConfigurationRequestT = Model::PutBucketNotificationConfigurationRequest>
+ Model::PutBucketNotificationConfigurationOutcomeCallable PutBucketNotificationConfigurationCallable(const PutBucketNotificationConfigurationRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::PutBucketNotificationConfiguration, request);
+ }
/**
- * <p>Enables notifications of specified events for a bucket. For more information
- * about event notifications, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Configuring
- * Event Notifications</a>.</p> <p>Using this API, you can replace an existing
- * notification configuration. The configuration is an XML file that defines the
- * event types that you want Amazon S3 to publish and the destination where you
- * want Amazon S3 to publish an event notification when it detects an event of the
- * specified type.</p> <p>By default, your bucket has no event notifications
- * configured. That is, the notification configuration will be an empty
- * <code>NotificationConfiguration</code>.</p> <p>
- * <code>&lt;NotificationConfiguration&gt;</code> </p> <p>
- * <code>&lt;/NotificationConfiguration&gt;</code> </p> <p>This action replaces the
- * existing notification configuration with the configuration you include in the
- * request body.</p> <p>After Amazon S3 receives this request, it first verifies
- * that any Amazon Simple Notification Service (Amazon SNS) or Amazon Simple Queue
- * Service (Amazon SQS) destination exists, and that the bucket owner has
- * permission to publish to it by sending a test notification. In the case of AWS
- * Lambda destinations, Amazon S3 verifies that the Lambda function permissions
- * grant Amazon S3 permission to invoke the function from the Amazon S3 bucket. For
- * more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Configuring
- * Notifications for Amazon S3 Events</a>.</p> <p>You can disable notifications by
- * adding the empty NotificationConfiguration element.</p> <p>By default, only the
- * bucket owner can configure notifications on a bucket. However, bucket owners can
- * use a bucket policy to grant permission to other users to set this configuration
- * with <code>s3:PutBucketNotification</code> permission.</p> <p>The PUT
- * notification is an atomic operation. For example, suppose your notification
- * configuration includes SNS topic, SQS queue, and Lambda function configurations.
- * When you send a PUT request with this configuration, Amazon S3 sends test
- * messages to your SNS topic. If the message fails, the entire PUT action will
- * fail, and Amazon S3 will not add the configuration to your bucket.</p>
- * <p> <b>Responses</b> </p> <p>If the configuration in the request body includes
- * only one <code>TopicConfiguration</code> specifying only the
- * <code>s3:ReducedRedundancyLostObject</code> event type, the response will also
- * include the <code>x-amz-sns-test-message-id</code> header containing the message
- * ID of the test notification sent to the topic.</p> <p>The following action is
- * related to <code>PutBucketNotificationConfiguration</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketNotificationConfiguration.html">GetBucketNotificationConfiguration</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketNotificationConfiguration">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for PutBucketNotificationConfiguration that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void PutBucketNotificationConfigurationAsync(const Model::PutBucketNotificationConfigurationRequest& request, const PutBucketNotificationConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename PutBucketNotificationConfigurationRequestT = Model::PutBucketNotificationConfigurationRequest>
+ void PutBucketNotificationConfigurationAsync(const PutBucketNotificationConfigurationRequestT& request, const PutBucketNotificationConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::PutBucketNotificationConfiguration, request, handler, context);
+ }
/**
* <p>Creates or modifies <code>OwnershipControls</code> for an Amazon S3 bucket.
* To use this operation, you must have the
* <code>s3:PutBucketOwnershipControls</code> permission. For more information
* about Amazon S3 permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying
- * Permissions in a Policy</a>. </p> <p>For information about Amazon S3 Object
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/user-guide/using-with-s3-actions.html">Specifying
+ * permissions in a policy</a>. </p> <p>For information about Amazon S3 Object
* Ownership, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/about-object-ownership.html">Using
- * Object Ownership</a>. </p> <p>The following operations are related to
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/user-guide/about-object-ownership.html">Using
+ * object ownership</a>. </p> <p>The following operations are related to
* <code>PutBucketOwnershipControls</code>:</p> <ul> <li> <p>
* <a>GetBucketOwnershipControls</a> </p> </li> <li> <p>
* <a>DeleteBucketOwnershipControls</a> </p> </li> </ul><p><h3>See Also:</h3> <a
@@ -8102,61 +4076,40 @@ namespace Aws
virtual Model::PutBucketOwnershipControlsOutcome PutBucketOwnershipControls(const Model::PutBucketOwnershipControlsRequest& request) const;
/**
- * <p>Creates or modifies <code>OwnershipControls</code> for an Amazon S3 bucket.
- * To use this operation, you must have the
- * <code>s3:PutBucketOwnershipControls</code> permission. For more information
- * about Amazon S3 permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying
- * Permissions in a Policy</a>. </p> <p>For information about Amazon S3 Object
- * Ownership, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/about-object-ownership.html">Using
- * Object Ownership</a>. </p> <p>The following operations are related to
- * <code>PutBucketOwnershipControls</code>:</p> <ul> <li> <p>
- * <a>GetBucketOwnershipControls</a> </p> </li> <li> <p>
- * <a>DeleteBucketOwnershipControls</a> </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketOwnershipControls">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for PutBucketOwnershipControls that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::PutBucketOwnershipControlsOutcomeCallable PutBucketOwnershipControlsCallable(const Model::PutBucketOwnershipControlsRequest& request) const;
+ template<typename PutBucketOwnershipControlsRequestT = Model::PutBucketOwnershipControlsRequest>
+ Model::PutBucketOwnershipControlsOutcomeCallable PutBucketOwnershipControlsCallable(const PutBucketOwnershipControlsRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::PutBucketOwnershipControls, request);
+ }
/**
- * <p>Creates or modifies <code>OwnershipControls</code> for an Amazon S3 bucket.
- * To use this operation, you must have the
- * <code>s3:PutBucketOwnershipControls</code> permission. For more information
- * about Amazon S3 permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying
- * Permissions in a Policy</a>. </p> <p>For information about Amazon S3 Object
- * Ownership, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/about-object-ownership.html">Using
- * Object Ownership</a>. </p> <p>The following operations are related to
- * <code>PutBucketOwnershipControls</code>:</p> <ul> <li> <p>
- * <a>GetBucketOwnershipControls</a> </p> </li> <li> <p>
- * <a>DeleteBucketOwnershipControls</a> </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketOwnershipControls">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for PutBucketOwnershipControls that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void PutBucketOwnershipControlsAsync(const Model::PutBucketOwnershipControlsRequest& request, const PutBucketOwnershipControlsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename PutBucketOwnershipControlsRequestT = Model::PutBucketOwnershipControlsRequest>
+ void PutBucketOwnershipControlsAsync(const PutBucketOwnershipControlsRequestT& request, const PutBucketOwnershipControlsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::PutBucketOwnershipControls, request, handler, context);
+ }
/**
* <p>Applies an Amazon S3 bucket policy to an Amazon S3 bucket. If you are using
- * an identity other than the root user of the AWS account that owns the bucket,
- * the calling identity must have the <code>PutBucketPolicy</code> permissions on
- * the specified bucket and belong to the bucket owner's account in order to use
- * this operation.</p> <p>If you don't have <code>PutBucketPolicy</code>
- * permissions, Amazon S3 returns a <code>403 Access Denied</code> error. If you
- * have the correct permissions, but you're not using an identity that belongs to
- * the bucket owner's account, Amazon S3 returns a <code>405 Method Not
- * Allowed</code> error.</p> <p> As a security precaution, the root
- * user of the AWS account that owns a bucket can always use this operation, even
- * if the policy explicitly denies the root user the ability to perform this
- * action. </p> <p>For more information about bucket policies, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html">Using
- * Bucket Policies and User Policies</a>.</p> <p>The following operations are
- * related to <code>PutBucketPolicy</code>:</p> <ul> <li> <p> <a
+ * an identity other than the root user of the Amazon Web Services account that
+ * owns the bucket, the calling identity must have the <code>PutBucketPolicy</code>
+ * permissions on the specified bucket and belong to the bucket owner's account in
+ * order to use this operation.</p> <p>If you don't have
+ * <code>PutBucketPolicy</code> permissions, Amazon S3 returns a <code>403 Access
+ * Denied</code> error. If you have the correct permissions, but you're not using
+ * an identity that belongs to the bucket owner's account, Amazon S3 returns a
+ * <code>405 Method Not Allowed</code> error.</p> <p> As a security
+ * precaution, the root user of the Amazon Web Services account that owns a bucket
+ * can always use this operation, even if the policy explicitly denies the root
+ * user the ability to perform this action. </p> <p>For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/example-bucket-policies.html">Bucket
+ * policy examples</a>.</p> <p>The following operations are related to
+ * <code>PutBucketPolicy</code>:</p> <ul> <li> <p> <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a>
* </p> </li> <li> <p> <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html">DeleteBucket</a>
@@ -8167,107 +4120,74 @@ namespace Aws
virtual Model::PutBucketPolicyOutcome PutBucketPolicy(const Model::PutBucketPolicyRequest& request) const;
/**
- * <p>Applies an Amazon S3 bucket policy to an Amazon S3 bucket. If you are using
- * an identity other than the root user of the AWS account that owns the bucket,
- * the calling identity must have the <code>PutBucketPolicy</code> permissions on
- * the specified bucket and belong to the bucket owner's account in order to use
- * this operation.</p> <p>If you don't have <code>PutBucketPolicy</code>
- * permissions, Amazon S3 returns a <code>403 Access Denied</code> error. If you
- * have the correct permissions, but you're not using an identity that belongs to
- * the bucket owner's account, Amazon S3 returns a <code>405 Method Not
- * Allowed</code> error.</p> <p> As a security precaution, the root
- * user of the AWS account that owns a bucket can always use this operation, even
- * if the policy explicitly denies the root user the ability to perform this
- * action. </p> <p>For more information about bucket policies, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html">Using
- * Bucket Policies and User Policies</a>.</p> <p>The following operations are
- * related to <code>PutBucketPolicy</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html">DeleteBucket</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketPolicy">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for PutBucketPolicy that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::PutBucketPolicyOutcomeCallable PutBucketPolicyCallable(const Model::PutBucketPolicyRequest& request) const;
+ template<typename PutBucketPolicyRequestT = Model::PutBucketPolicyRequest>
+ Model::PutBucketPolicyOutcomeCallable PutBucketPolicyCallable(const PutBucketPolicyRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::PutBucketPolicy, request);
+ }
/**
- * <p>Applies an Amazon S3 bucket policy to an Amazon S3 bucket. If you are using
- * an identity other than the root user of the AWS account that owns the bucket,
- * the calling identity must have the <code>PutBucketPolicy</code> permissions on
- * the specified bucket and belong to the bucket owner's account in order to use
- * this operation.</p> <p>If you don't have <code>PutBucketPolicy</code>
- * permissions, Amazon S3 returns a <code>403 Access Denied</code> error. If you
- * have the correct permissions, but you're not using an identity that belongs to
- * the bucket owner's account, Amazon S3 returns a <code>405 Method Not
- * Allowed</code> error.</p> <p> As a security precaution, the root
- * user of the AWS account that owns a bucket can always use this operation, even
- * if the policy explicitly denies the root user the ability to perform this
- * action. </p> <p>For more information about bucket policies, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html">Using
- * Bucket Policies and User Policies</a>.</p> <p>The following operations are
- * related to <code>PutBucketPolicy</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html">DeleteBucket</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketPolicy">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for PutBucketPolicy that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void PutBucketPolicyAsync(const Model::PutBucketPolicyRequest& request, const PutBucketPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename PutBucketPolicyRequestT = Model::PutBucketPolicyRequest>
+ void PutBucketPolicyAsync(const PutBucketPolicyRequestT& request, const PutBucketPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::PutBucketPolicy, request, handler, context);
+ }
/**
* <p> Creates a replication configuration or replaces an existing one. For more
* information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html">Replication</a>
- * in the <i>Amazon S3 Developer Guide</i>. </p> <p>To perform this
- * operation, the user or role performing the action must have the <a
- * href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html">iam:PassRole</a>
- * permission.</p> <p>Specify the replication configuration in the request
- * body. In the replication configuration, you provide the name of the destination
- * bucket or buckets where you want Amazon S3 to replicate objects, the IAM role
- * that Amazon S3 can assume to replicate objects on your behalf, and other
- * relevant information.</p> <p>A replication configuration must include at least
- * one rule, and can contain a maximum of 1,000. Each rule identifies a subset of
- * objects to replicate by filtering the objects in the source bucket. To choose
- * additional subsets of objects to replicate, add a rule for each subset.</p>
- * <p>To specify a subset of the objects in the source bucket to apply a
- * replication rule to, add the Filter element as a child of the Rule element. You
- * can filter objects based on an object key prefix, one or more object tags, or
- * both. When you add the Filter element in the configuration, you must also add
- * the following elements: <code>DeleteMarkerReplication</code>,
- * <code>Status</code>, and <code>Priority</code>.</p> <p>If you are using
- * an earlier version of the replication configuration, Amazon S3 handles
- * replication of delete markers differently. For more information, see <a
+ * in the <i>Amazon S3 User Guide</i>. </p> <p>Specify the replication
+ * configuration in the request body. In the replication configuration, you provide
+ * the name of the destination bucket or buckets where you want Amazon S3 to
+ * replicate objects, the IAM role that Amazon S3 can assume to replicate objects
+ * on your behalf, and other relevant information.</p> <p>A replication
+ * configuration must include at least one rule, and can contain a maximum of
+ * 1,000. Each rule identifies a subset of objects to replicate by filtering the
+ * objects in the source bucket. To choose additional subsets of objects to
+ * replicate, add a rule for each subset.</p> <p>To specify a subset of the objects
+ * in the source bucket to apply a replication rule to, add the Filter element as a
+ * child of the Rule element. You can filter objects based on an object key prefix,
+ * one or more object tags, or both. When you add the Filter element in the
+ * configuration, you must also add the following elements:
+ * <code>DeleteMarkerReplication</code>, <code>Status</code>, and
+ * <code>Priority</code>.</p> <p>If you are using an earlier version of the
+ * replication configuration, Amazon S3 handles replication of delete markers
+ * differently. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-add-config.html#replication-backward-compat-considerations">Backward
* Compatibility</a>.</p> <p>For information about enabling versioning on a
* bucket, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/Versioning.html">Using
- * Versioning</a>.</p> <p>By default, a resource owner, in this case the AWS
- * account that created the bucket, can perform this operation. The resource owner
- * can also grant others permissions to perform the operation. For more information
- * about permissions, see <a
+ * Versioning</a>.</p> <p> <b>Handling Replication of Encrypted Objects</b> </p>
+ * <p>By default, Amazon S3 doesn't replicate objects that are stored at rest using
+ * server-side encryption with KMS keys. To replicate Amazon Web Services
+ * KMS-encrypted objects, add the following: <code>SourceSelectionCriteria</code>,
+ * <code>SseKmsEncryptedObjects</code>, <code>Status</code>,
+ * <code>EncryptionConfiguration</code>, and <code>ReplicaKmsKeyID</code>. For
+ * information about replication configuration, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-config-for-kms-objects.html">Replicating
+ * Objects Created with SSE Using KMS keys</a>.</p> <p>For information on
+ * <code>PutBucketReplication</code> errors, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ReplicationErrorCodeList">List
+ * of replication-related error codes</a> </p> <p> <b>Permissions</b> </p> <p>To
+ * create a <code>PutBucketReplication</code> request, you must have
+ * <code>s3:PutReplicationConfiguration</code> permissions for the bucket. </p>
+ * <p>By default, a resource owner, in this case the Amazon Web Services account
+ * that created the bucket, can perform this operation. The resource owner can also
+ * grant others permissions to perform the operation. For more information about
+ * permissions, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying
* Permissions in a Policy</a> and <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p> <b>Handling
- * Replication of Encrypted Objects</b> </p> <p>By default, Amazon S3 doesn't
- * replicate objects that are stored at rest using server-side encryption with CMKs
- * stored in AWS KMS. To replicate AWS KMS-encrypted objects, add the following:
- * <code>SourceSelectionCriteria</code>, <code>SseKmsEncryptedObjects</code>,
- * <code>Status</code>, <code>EncryptionConfiguration</code>, and
- * <code>ReplicaKmsKeyID</code>. For information about replication configuration,
- * see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-config-for-kms-objects.html">Replicating
- * Objects Created with SSE Using CMKs stored in AWS KMS</a>.</p> <p>For
- * information on <code>PutBucketReplication</code> errors, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ReplicationErrorCodeList">List
- * of replication-related error codes</a> </p> <p>The following operations are
- * related to <code>PutBucketReplication</code>:</p> <ul> <li> <p> <a
+ * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>To perform
+ * this operation, the user or role performing the action must have the <a
+ * href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html">iam:PassRole</a>
+ * permission.</p> <p>The following operations are related to
+ * <code>PutBucketReplication</code>:</p> <ul> <li> <p> <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketReplication.html">GetBucketReplication</a>
* </p> </li> <li> <p> <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketReplication.html">DeleteBucketReplication</a>
@@ -8278,122 +4198,22 @@ namespace Aws
virtual Model::PutBucketReplicationOutcome PutBucketReplication(const Model::PutBucketReplicationRequest& request) const;
/**
- * <p> Creates a replication configuration or replaces an existing one. For more
- * information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html">Replication</a>
- * in the <i>Amazon S3 Developer Guide</i>. </p> <p>To perform this
- * operation, the user or role performing the action must have the <a
- * href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html">iam:PassRole</a>
- * permission.</p> <p>Specify the replication configuration in the request
- * body. In the replication configuration, you provide the name of the destination
- * bucket or buckets where you want Amazon S3 to replicate objects, the IAM role
- * that Amazon S3 can assume to replicate objects on your behalf, and other
- * relevant information.</p> <p>A replication configuration must include at least
- * one rule, and can contain a maximum of 1,000. Each rule identifies a subset of
- * objects to replicate by filtering the objects in the source bucket. To choose
- * additional subsets of objects to replicate, add a rule for each subset.</p>
- * <p>To specify a subset of the objects in the source bucket to apply a
- * replication rule to, add the Filter element as a child of the Rule element. You
- * can filter objects based on an object key prefix, one or more object tags, or
- * both. When you add the Filter element in the configuration, you must also add
- * the following elements: <code>DeleteMarkerReplication</code>,
- * <code>Status</code>, and <code>Priority</code>.</p> <p>If you are using
- * an earlier version of the replication configuration, Amazon S3 handles
- * replication of delete markers differently. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-add-config.html#replication-backward-compat-considerations">Backward
- * Compatibility</a>.</p> <p>For information about enabling versioning on a
- * bucket, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/Versioning.html">Using
- * Versioning</a>.</p> <p>By default, a resource owner, in this case the AWS
- * account that created the bucket, can perform this operation. The resource owner
- * can also grant others permissions to perform the operation. For more information
- * about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying
- * Permissions in a Policy</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p> <b>Handling
- * Replication of Encrypted Objects</b> </p> <p>By default, Amazon S3 doesn't
- * replicate objects that are stored at rest using server-side encryption with CMKs
- * stored in AWS KMS. To replicate AWS KMS-encrypted objects, add the following:
- * <code>SourceSelectionCriteria</code>, <code>SseKmsEncryptedObjects</code>,
- * <code>Status</code>, <code>EncryptionConfiguration</code>, and
- * <code>ReplicaKmsKeyID</code>. For information about replication configuration,
- * see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-config-for-kms-objects.html">Replicating
- * Objects Created with SSE Using CMKs stored in AWS KMS</a>.</p> <p>For
- * information on <code>PutBucketReplication</code> errors, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ReplicationErrorCodeList">List
- * of replication-related error codes</a> </p> <p>The following operations are
- * related to <code>PutBucketReplication</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketReplication.html">GetBucketReplication</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketReplication.html">DeleteBucketReplication</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketReplication">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for PutBucketReplication that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::PutBucketReplicationOutcomeCallable PutBucketReplicationCallable(const Model::PutBucketReplicationRequest& request) const;
+ template<typename PutBucketReplicationRequestT = Model::PutBucketReplicationRequest>
+ Model::PutBucketReplicationOutcomeCallable PutBucketReplicationCallable(const PutBucketReplicationRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::PutBucketReplication, request);
+ }
/**
- * <p> Creates a replication configuration or replaces an existing one. For more
- * information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html">Replication</a>
- * in the <i>Amazon S3 Developer Guide</i>. </p> <p>To perform this
- * operation, the user or role performing the action must have the <a
- * href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_passrole.html">iam:PassRole</a>
- * permission.</p> <p>Specify the replication configuration in the request
- * body. In the replication configuration, you provide the name of the destination
- * bucket or buckets where you want Amazon S3 to replicate objects, the IAM role
- * that Amazon S3 can assume to replicate objects on your behalf, and other
- * relevant information.</p> <p>A replication configuration must include at least
- * one rule, and can contain a maximum of 1,000. Each rule identifies a subset of
- * objects to replicate by filtering the objects in the source bucket. To choose
- * additional subsets of objects to replicate, add a rule for each subset.</p>
- * <p>To specify a subset of the objects in the source bucket to apply a
- * replication rule to, add the Filter element as a child of the Rule element. You
- * can filter objects based on an object key prefix, one or more object tags, or
- * both. When you add the Filter element in the configuration, you must also add
- * the following elements: <code>DeleteMarkerReplication</code>,
- * <code>Status</code>, and <code>Priority</code>.</p> <p>If you are using
- * an earlier version of the replication configuration, Amazon S3 handles
- * replication of delete markers differently. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-add-config.html#replication-backward-compat-considerations">Backward
- * Compatibility</a>.</p> <p>For information about enabling versioning on a
- * bucket, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/Versioning.html">Using
- * Versioning</a>.</p> <p>By default, a resource owner, in this case the AWS
- * account that created the bucket, can perform this operation. The resource owner
- * can also grant others permissions to perform the operation. For more information
- * about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying
- * Permissions in a Policy</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p> <b>Handling
- * Replication of Encrypted Objects</b> </p> <p>By default, Amazon S3 doesn't
- * replicate objects that are stored at rest using server-side encryption with CMKs
- * stored in AWS KMS. To replicate AWS KMS-encrypted objects, add the following:
- * <code>SourceSelectionCriteria</code>, <code>SseKmsEncryptedObjects</code>,
- * <code>Status</code>, <code>EncryptionConfiguration</code>, and
- * <code>ReplicaKmsKeyID</code>. For information about replication configuration,
- * see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-config-for-kms-objects.html">Replicating
- * Objects Created with SSE Using CMKs stored in AWS KMS</a>.</p> <p>For
- * information on <code>PutBucketReplication</code> errors, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ReplicationErrorCodeList">List
- * of replication-related error codes</a> </p> <p>The following operations are
- * related to <code>PutBucketReplication</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketReplication.html">GetBucketReplication</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketReplication.html">DeleteBucketReplication</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketReplication">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for PutBucketReplication that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void PutBucketReplicationAsync(const Model::PutBucketReplicationRequest& request, const PutBucketReplicationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename PutBucketReplicationRequestT = Model::PutBucketReplicationRequest>
+ void PutBucketReplicationAsync(const PutBucketReplicationRequestT& request, const PutBucketReplicationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::PutBucketReplication, request, handler, context);
+ }
/**
* <p>Sets the request payment configuration for a bucket. By default, the bucket
@@ -8413,61 +4233,42 @@ namespace Aws
virtual Model::PutBucketRequestPaymentOutcome PutBucketRequestPayment(const Model::PutBucketRequestPaymentRequest& request) const;
/**
- * <p>Sets the request payment configuration for a bucket. By default, the bucket
- * owner pays for downloads from the bucket. This configuration parameter enables
- * the bucket owner (only) to specify that the person requesting the download will
- * be charged for the download. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/RequesterPaysBuckets.html">Requester
- * Pays Buckets</a>.</p> <p>The following operations are related to
- * <code>PutBucketRequestPayment</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketRequestPayment.html">GetBucketRequestPayment</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketRequestPayment">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for PutBucketRequestPayment that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::PutBucketRequestPaymentOutcomeCallable PutBucketRequestPaymentCallable(const Model::PutBucketRequestPaymentRequest& request) const;
+ template<typename PutBucketRequestPaymentRequestT = Model::PutBucketRequestPaymentRequest>
+ Model::PutBucketRequestPaymentOutcomeCallable PutBucketRequestPaymentCallable(const PutBucketRequestPaymentRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::PutBucketRequestPayment, request);
+ }
/**
- * <p>Sets the request payment configuration for a bucket. By default, the bucket
- * owner pays for downloads from the bucket. This configuration parameter enables
- * the bucket owner (only) to specify that the person requesting the download will
- * be charged for the download. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/RequesterPaysBuckets.html">Requester
- * Pays Buckets</a>.</p> <p>The following operations are related to
- * <code>PutBucketRequestPayment</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketRequestPayment.html">GetBucketRequestPayment</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketRequestPayment">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for PutBucketRequestPayment that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void PutBucketRequestPaymentAsync(const Model::PutBucketRequestPaymentRequest& request, const PutBucketRequestPaymentResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename PutBucketRequestPaymentRequestT = Model::PutBucketRequestPaymentRequest>
+ void PutBucketRequestPaymentAsync(const PutBucketRequestPaymentRequestT& request, const PutBucketRequestPaymentResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::PutBucketRequestPayment, request, handler, context);
+ }
/**
- * <p>Sets the tags for a bucket.</p> <p>Use tags to organize your AWS bill to
- * reflect your own cost structure. To do this, sign up to get your AWS account
- * bill with tag key values included. Then, to see the cost of combined resources,
- * organize your billing information according to resources with the same tag key
- * values. For example, you can tag several resources with a specific application
- * name, and then organize your billing information to see the total cost of that
- * application across several services. For more information, see <a
+ * <p>Sets the tags for a bucket.</p> <p>Use tags to organize your Amazon Web
+ * Services bill to reflect your own cost structure. To do this, sign up to get
+ * your Amazon Web Services account bill with tag key values included. Then, to see
+ * the cost of combined resources, organize your billing information according to
+ * resources with the same tag key values. For example, you can tag several
+ * resources with a specific application name, and then organize your billing
+ * information to see the total cost of that application across several services.
+ * For more information, see <a
* href="https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html">Cost
- * Allocation and Tagging</a>.</p> <p>Within a bucket, if you add a tag that
- * has the same key as an existing tag, the new value overwrites the old value. For
- * more information, see <a
+ * Allocation and Tagging</a> and <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/CostAllocTagging.html">Using
- * Cost Allocation in Amazon S3 Bucket Tags</a>.</p> <p>To use this
- * operation, you must have permissions to perform the
- * <code>s3:PutBucketTagging</code> action. The bucket owner has this permission by
- * default and can grant this permission to others. For more information about
- * permissions, see <a
+ * Cost Allocation in Amazon S3 Bucket Tags</a>.</p> <p> When this operation
+ * sets the tags for a bucket, it will overwrite any current tags the bucket
+ * already has. You cannot use this operation to add tags to an existing list of
+ * tags.</p> <p>To use this operation, you must have permissions to perform
+ * the <code>s3:PutBucketTagging</code> action. The bucket owner has this
+ * permission by default and can grant this permission to others. For more
+ * information about permissions, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
* Related to Bucket Subresource Operations</a> and <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
@@ -8478,16 +4279,17 @@ namespace Aws
* input validation. For information about tag restrictions, see <a
* href="https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/allocation-tag-restrictions.html">User-Defined
* Tag Restrictions</a> and <a
- * href="https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/aws-tag-restrictions.html">AWS-Generated
- * Cost Allocation Tag Restrictions</a>.</p> </li> </ul> </li> <li> <p>Error code:
- * <code>MalformedXMLError</code> </p> <ul> <li> <p>Description: The XML provided
- * does not match the schema.</p> </li> </ul> </li> <li> <p>Error code:
- * <code>OperationAbortedError </code> </p> <ul> <li> <p>Description: A conflicting
- * conditional action is currently in progress against this resource. Please try
- * again.</p> </li> </ul> </li> <li> <p>Error code: <code>InternalError</code> </p>
- * <ul> <li> <p>Description: The service was unable to apply the provided tag to
- * the bucket.</p> </li> </ul> </li> </ul> <p>The following operations are related
- * to <code>PutBucketTagging</code>:</p> <ul> <li> <p> <a
+ * href="https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/aws-tag-restrictions.html">Amazon
+ * Web Services-Generated Cost Allocation Tag Restrictions</a>.</p> </li> </ul>
+ * </li> <li> <p>Error code: <code>MalformedXMLError</code> </p> <ul> <li>
+ * <p>Description: The XML provided does not match the schema.</p> </li> </ul>
+ * </li> <li> <p>Error code: <code>OperationAbortedError </code> </p> <ul> <li>
+ * <p>Description: A conflicting conditional action is currently in progress
+ * against this resource. Please try again.</p> </li> </ul> </li> <li> <p>Error
+ * code: <code>InternalError</code> </p> <ul> <li> <p>Description: The service was
+ * unable to apply the provided tag to the bucket.</p> </li> </ul> </li> </ul>
+ * <p>The following operations are related to <code>PutBucketTagging</code>:</p>
+ * <ul> <li> <p> <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketTagging.html">GetBucketTagging</a>
* </p> </li> <li> <p> <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketTagging.html">DeleteBucketTagging</a>
@@ -8498,124 +4300,44 @@ namespace Aws
virtual Model::PutBucketTaggingOutcome PutBucketTagging(const Model::PutBucketTaggingRequest& request) const;
/**
- * <p>Sets the tags for a bucket.</p> <p>Use tags to organize your AWS bill to
- * reflect your own cost structure. To do this, sign up to get your AWS account
- * bill with tag key values included. Then, to see the cost of combined resources,
- * organize your billing information according to resources with the same tag key
- * values. For example, you can tag several resources with a specific application
- * name, and then organize your billing information to see the total cost of that
- * application across several services. For more information, see <a
- * href="https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html">Cost
- * Allocation and Tagging</a>.</p> <p>Within a bucket, if you add a tag that
- * has the same key as an existing tag, the new value overwrites the old value. For
- * more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/CostAllocTagging.html">Using
- * Cost Allocation in Amazon S3 Bucket Tags</a>.</p> <p>To use this
- * operation, you must have permissions to perform the
- * <code>s3:PutBucketTagging</code> action. The bucket owner has this permission by
- * default and can grant this permission to others. For more information about
- * permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>
- * <code>PutBucketTagging</code> has the following special errors:</p> <ul> <li>
- * <p>Error code: <code>InvalidTagError</code> </p> <ul> <li> <p>Description: The
- * tag provided was not a valid tag. This error can occur if the tag did not pass
- * input validation. For information about tag restrictions, see <a
- * href="https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/allocation-tag-restrictions.html">User-Defined
- * Tag Restrictions</a> and <a
- * href="https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/aws-tag-restrictions.html">AWS-Generated
- * Cost Allocation Tag Restrictions</a>.</p> </li> </ul> </li> <li> <p>Error code:
- * <code>MalformedXMLError</code> </p> <ul> <li> <p>Description: The XML provided
- * does not match the schema.</p> </li> </ul> </li> <li> <p>Error code:
- * <code>OperationAbortedError </code> </p> <ul> <li> <p>Description: A conflicting
- * conditional action is currently in progress against this resource. Please try
- * again.</p> </li> </ul> </li> <li> <p>Error code: <code>InternalError</code> </p>
- * <ul> <li> <p>Description: The service was unable to apply the provided tag to
- * the bucket.</p> </li> </ul> </li> </ul> <p>The following operations are related
- * to <code>PutBucketTagging</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketTagging.html">GetBucketTagging</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketTagging.html">DeleteBucketTagging</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketTagging">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for PutBucketTagging that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::PutBucketTaggingOutcomeCallable PutBucketTaggingCallable(const Model::PutBucketTaggingRequest& request) const;
+ template<typename PutBucketTaggingRequestT = Model::PutBucketTaggingRequest>
+ Model::PutBucketTaggingOutcomeCallable PutBucketTaggingCallable(const PutBucketTaggingRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::PutBucketTagging, request);
+ }
/**
- * <p>Sets the tags for a bucket.</p> <p>Use tags to organize your AWS bill to
- * reflect your own cost structure. To do this, sign up to get your AWS account
- * bill with tag key values included. Then, to see the cost of combined resources,
- * organize your billing information according to resources with the same tag key
- * values. For example, you can tag several resources with a specific application
- * name, and then organize your billing information to see the total cost of that
- * application across several services. For more information, see <a
- * href="https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html">Cost
- * Allocation and Tagging</a>.</p> <p>Within a bucket, if you add a tag that
- * has the same key as an existing tag, the new value overwrites the old value. For
- * more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/CostAllocTagging.html">Using
- * Cost Allocation in Amazon S3 Bucket Tags</a>.</p> <p>To use this
- * operation, you must have permissions to perform the
- * <code>s3:PutBucketTagging</code> action. The bucket owner has this permission by
- * default and can grant this permission to others. For more information about
- * permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a>.</p> <p>
- * <code>PutBucketTagging</code> has the following special errors:</p> <ul> <li>
- * <p>Error code: <code>InvalidTagError</code> </p> <ul> <li> <p>Description: The
- * tag provided was not a valid tag. This error can occur if the tag did not pass
- * input validation. For information about tag restrictions, see <a
- * href="https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/allocation-tag-restrictions.html">User-Defined
- * Tag Restrictions</a> and <a
- * href="https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/aws-tag-restrictions.html">AWS-Generated
- * Cost Allocation Tag Restrictions</a>.</p> </li> </ul> </li> <li> <p>Error code:
- * <code>MalformedXMLError</code> </p> <ul> <li> <p>Description: The XML provided
- * does not match the schema.</p> </li> </ul> </li> <li> <p>Error code:
- * <code>OperationAbortedError </code> </p> <ul> <li> <p>Description: A conflicting
- * conditional action is currently in progress against this resource. Please try
- * again.</p> </li> </ul> </li> <li> <p>Error code: <code>InternalError</code> </p>
- * <ul> <li> <p>Description: The service was unable to apply the provided tag to
- * the bucket.</p> </li> </ul> </li> </ul> <p>The following operations are related
- * to <code>PutBucketTagging</code>:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketTagging.html">GetBucketTagging</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketTagging.html">DeleteBucketTagging</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketTagging">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for PutBucketTagging that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void PutBucketTaggingAsync(const Model::PutBucketTaggingRequest& request, const PutBucketTaggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename PutBucketTaggingRequestT = Model::PutBucketTaggingRequest>
+ void PutBucketTaggingAsync(const PutBucketTaggingRequestT& request, const PutBucketTaggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::PutBucketTagging, request, handler, context);
+ }
/**
- * <p>Sets the versioning state of an existing bucket. To set the versioning state,
- * you must be the bucket owner.</p> <p>You can set the versioning state with one
- * of the following values:</p> <p> <b>Enabled</b>—Enables versioning for the
- * objects in the bucket. All objects added to the bucket receive a unique version
- * ID.</p> <p> <b>Suspended</b>—Disables versioning for the objects in the bucket.
- * All objects added to the bucket receive the version ID null.</p> <p>If the
- * versioning state has never been set on a bucket, it has no versioning state; a
- * <a
+ * <p>Sets the versioning state of an existing bucket.</p> <p>You can set the
+ * versioning state with one of the following values:</p> <p>
+ * <b>Enabled</b>—Enables versioning for the objects in the bucket. All objects
+ * added to the bucket receive a unique version ID.</p> <p>
+ * <b>Suspended</b>—Disables versioning for the objects in the bucket. All objects
+ * added to the bucket receive the version ID null.</p> <p>If the versioning state
+ * has never been set on a bucket, it has no versioning state; a <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketVersioning.html">GetBucketVersioning</a>
- * request does not return a versioning state value.</p> <p>If the bucket owner
- * enables MFA Delete in the bucket versioning configuration, the bucket owner must
- * include the <code>x-amz-mfa request</code> header and the <code>Status</code>
- * and the <code>MfaDelete</code> request elements in a request to set the
- * versioning state of the bucket.</p> <p>If you have an object
- * expiration lifecycle policy in your non-versioned bucket and you want to
- * maintain the same permanent delete behavior when you enable versioning, you must
- * add a noncurrent expiration policy. The noncurrent expiration lifecycle policy
- * will manage the deletes of the noncurrent object versions in the version-enabled
- * bucket. (A version-enabled bucket maintains one current and zero or more
- * noncurrent object versions.) For more information, see <a
+ * request does not return a versioning state value.</p> <p>In order to enable MFA
+ * Delete, you must be the bucket owner. If you are the bucket owner and want to
+ * enable MFA Delete in the bucket versioning configuration, you must include the
+ * <code>x-amz-mfa request</code> header and the <code>Status</code> and the
+ * <code>MfaDelete</code> request elements in a request to set the versioning state
+ * of the bucket.</p> <p>If you have an object expiration lifecycle
+ * policy in your non-versioned bucket and you want to maintain the same permanent
+ * delete behavior when you enable versioning, you must add a noncurrent expiration
+ * policy. The noncurrent expiration lifecycle policy will manage the deletes of
+ * the noncurrent object versions in the version-enabled bucket. (A version-enabled
+ * bucket maintains one current and zero or more noncurrent object versions.) For
+ * more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html#lifecycle-and-other-bucket-config">Lifecycle
* and Versioning</a>.</p> <p class="title"> <b>Related Resources</b>
* </p> <ul> <li> <p> <a
@@ -8631,78 +4353,22 @@ namespace Aws
virtual Model::PutBucketVersioningOutcome PutBucketVersioning(const Model::PutBucketVersioningRequest& request) const;
/**
- * <p>Sets the versioning state of an existing bucket. To set the versioning state,
- * you must be the bucket owner.</p> <p>You can set the versioning state with one
- * of the following values:</p> <p> <b>Enabled</b>—Enables versioning for the
- * objects in the bucket. All objects added to the bucket receive a unique version
- * ID.</p> <p> <b>Suspended</b>—Disables versioning for the objects in the bucket.
- * All objects added to the bucket receive the version ID null.</p> <p>If the
- * versioning state has never been set on a bucket, it has no versioning state; a
- * <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketVersioning.html">GetBucketVersioning</a>
- * request does not return a versioning state value.</p> <p>If the bucket owner
- * enables MFA Delete in the bucket versioning configuration, the bucket owner must
- * include the <code>x-amz-mfa request</code> header and the <code>Status</code>
- * and the <code>MfaDelete</code> request elements in a request to set the
- * versioning state of the bucket.</p> <p>If you have an object
- * expiration lifecycle policy in your non-versioned bucket and you want to
- * maintain the same permanent delete behavior when you enable versioning, you must
- * add a noncurrent expiration policy. The noncurrent expiration lifecycle policy
- * will manage the deletes of the noncurrent object versions in the version-enabled
- * bucket. (A version-enabled bucket maintains one current and zero or more
- * noncurrent object versions.) For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html#lifecycle-and-other-bucket-config">Lifecycle
- * and Versioning</a>.</p> <p class="title"> <b>Related Resources</b>
- * </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html">DeleteBucket</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketVersioning.html">GetBucketVersioning</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketVersioning">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for PutBucketVersioning that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::PutBucketVersioningOutcomeCallable PutBucketVersioningCallable(const Model::PutBucketVersioningRequest& request) const;
+ template<typename PutBucketVersioningRequestT = Model::PutBucketVersioningRequest>
+ Model::PutBucketVersioningOutcomeCallable PutBucketVersioningCallable(const PutBucketVersioningRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::PutBucketVersioning, request);
+ }
/**
- * <p>Sets the versioning state of an existing bucket. To set the versioning state,
- * you must be the bucket owner.</p> <p>You can set the versioning state with one
- * of the following values:</p> <p> <b>Enabled</b>—Enables versioning for the
- * objects in the bucket. All objects added to the bucket receive a unique version
- * ID.</p> <p> <b>Suspended</b>—Disables versioning for the objects in the bucket.
- * All objects added to the bucket receive the version ID null.</p> <p>If the
- * versioning state has never been set on a bucket, it has no versioning state; a
- * <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketVersioning.html">GetBucketVersioning</a>
- * request does not return a versioning state value.</p> <p>If the bucket owner
- * enables MFA Delete in the bucket versioning configuration, the bucket owner must
- * include the <code>x-amz-mfa request</code> header and the <code>Status</code>
- * and the <code>MfaDelete</code> request elements in a request to set the
- * versioning state of the bucket.</p> <p>If you have an object
- * expiration lifecycle policy in your non-versioned bucket and you want to
- * maintain the same permanent delete behavior when you enable versioning, you must
- * add a noncurrent expiration policy. The noncurrent expiration lifecycle policy
- * will manage the deletes of the noncurrent object versions in the version-enabled
- * bucket. (A version-enabled bucket maintains one current and zero or more
- * noncurrent object versions.) For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html#lifecycle-and-other-bucket-config">Lifecycle
- * and Versioning</a>.</p> <p class="title"> <b>Related Resources</b>
- * </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html">DeleteBucket</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketVersioning.html">GetBucketVersioning</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketVersioning">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for PutBucketVersioning that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void PutBucketVersioningAsync(const Model::PutBucketVersioningRequest& request, const PutBucketVersioningResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename PutBucketVersioningRequestT = Model::PutBucketVersioningRequest>
+ void PutBucketVersioningAsync(const PutBucketVersioningRequestT& request, const PutBucketVersioningResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::PutBucketVersioning, request, handler, context);
+ }
/**
* <p>Sets the configuration of the website that is specified in the
@@ -8748,94 +4414,22 @@ namespace Aws
virtual Model::PutBucketWebsiteOutcome PutBucketWebsite(const Model::PutBucketWebsiteRequest& request) const;
/**
- * <p>Sets the configuration of the website that is specified in the
- * <code>website</code> subresource. To configure a bucket as a website, you can
- * add this subresource on the bucket with website configuration information such
- * as the file name of the index document and any redirect rules. For more
- * information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html">Hosting
- * Websites on Amazon S3</a>.</p> <p>This PUT action requires the
- * <code>S3:PutBucketWebsite</code> permission. By default, only the bucket owner
- * can configure the website attached to a bucket; however, bucket owners can allow
- * other users to set the website configuration by writing a bucket policy that
- * grants them the <code>S3:PutBucketWebsite</code> permission.</p> <p>To redirect
- * all website requests sent to the bucket's website endpoint, you add a website
- * configuration with the following elements. Because all requests are sent to
- * another website, you don't need to provide index document name for the
- * bucket.</p> <ul> <li> <p> <code>WebsiteConfiguration</code> </p> </li> <li> <p>
- * <code>RedirectAllRequestsTo</code> </p> </li> <li> <p> <code>HostName</code>
- * </p> </li> <li> <p> <code>Protocol</code> </p> </li> </ul> <p>If you want
- * granular control over redirects, you can use the following elements to add
- * routing rules that describe conditions for redirecting requests and information
- * about the redirect destination. In this case, the website configuration must
- * provide an index document for the bucket, because some requests might not be
- * redirected. </p> <ul> <li> <p> <code>WebsiteConfiguration</code> </p> </li> <li>
- * <p> <code>IndexDocument</code> </p> </li> <li> <p> <code>Suffix</code> </p>
- * </li> <li> <p> <code>ErrorDocument</code> </p> </li> <li> <p> <code>Key</code>
- * </p> </li> <li> <p> <code>RoutingRules</code> </p> </li> <li> <p>
- * <code>RoutingRule</code> </p> </li> <li> <p> <code>Condition</code> </p> </li>
- * <li> <p> <code>HttpErrorCodeReturnedEquals</code> </p> </li> <li> <p>
- * <code>KeyPrefixEquals</code> </p> </li> <li> <p> <code>Redirect</code> </p>
- * </li> <li> <p> <code>Protocol</code> </p> </li> <li> <p> <code>HostName</code>
- * </p> </li> <li> <p> <code>ReplaceKeyPrefixWith</code> </p> </li> <li> <p>
- * <code>ReplaceKeyWith</code> </p> </li> <li> <p> <code>HttpRedirectCode</code>
- * </p> </li> </ul> <p>Amazon S3 has a limitation of 50 routing rules per website
- * configuration. If you require more than 50 routing rules, you can use object
- * redirect. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/how-to-page-redirect.html">Configuring
- * an Object Redirect</a> in the <i>Amazon S3 User Guide</i>.</p><p><h3>See
- * Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketWebsite">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for PutBucketWebsite that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::PutBucketWebsiteOutcomeCallable PutBucketWebsiteCallable(const Model::PutBucketWebsiteRequest& request) const;
+ template<typename PutBucketWebsiteRequestT = Model::PutBucketWebsiteRequest>
+ Model::PutBucketWebsiteOutcomeCallable PutBucketWebsiteCallable(const PutBucketWebsiteRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::PutBucketWebsite, request);
+ }
/**
- * <p>Sets the configuration of the website that is specified in the
- * <code>website</code> subresource. To configure a bucket as a website, you can
- * add this subresource on the bucket with website configuration information such
- * as the file name of the index document and any redirect rules. For more
- * information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html">Hosting
- * Websites on Amazon S3</a>.</p> <p>This PUT action requires the
- * <code>S3:PutBucketWebsite</code> permission. By default, only the bucket owner
- * can configure the website attached to a bucket; however, bucket owners can allow
- * other users to set the website configuration by writing a bucket policy that
- * grants them the <code>S3:PutBucketWebsite</code> permission.</p> <p>To redirect
- * all website requests sent to the bucket's website endpoint, you add a website
- * configuration with the following elements. Because all requests are sent to
- * another website, you don't need to provide index document name for the
- * bucket.</p> <ul> <li> <p> <code>WebsiteConfiguration</code> </p> </li> <li> <p>
- * <code>RedirectAllRequestsTo</code> </p> </li> <li> <p> <code>HostName</code>
- * </p> </li> <li> <p> <code>Protocol</code> </p> </li> </ul> <p>If you want
- * granular control over redirects, you can use the following elements to add
- * routing rules that describe conditions for redirecting requests and information
- * about the redirect destination. In this case, the website configuration must
- * provide an index document for the bucket, because some requests might not be
- * redirected. </p> <ul> <li> <p> <code>WebsiteConfiguration</code> </p> </li> <li>
- * <p> <code>IndexDocument</code> </p> </li> <li> <p> <code>Suffix</code> </p>
- * </li> <li> <p> <code>ErrorDocument</code> </p> </li> <li> <p> <code>Key</code>
- * </p> </li> <li> <p> <code>RoutingRules</code> </p> </li> <li> <p>
- * <code>RoutingRule</code> </p> </li> <li> <p> <code>Condition</code> </p> </li>
- * <li> <p> <code>HttpErrorCodeReturnedEquals</code> </p> </li> <li> <p>
- * <code>KeyPrefixEquals</code> </p> </li> <li> <p> <code>Redirect</code> </p>
- * </li> <li> <p> <code>Protocol</code> </p> </li> <li> <p> <code>HostName</code>
- * </p> </li> <li> <p> <code>ReplaceKeyPrefixWith</code> </p> </li> <li> <p>
- * <code>ReplaceKeyWith</code> </p> </li> <li> <p> <code>HttpRedirectCode</code>
- * </p> </li> </ul> <p>Amazon S3 has a limitation of 50 routing rules per website
- * configuration. If you require more than 50 routing rules, you can use object
- * redirect. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/how-to-page-redirect.html">Configuring
- * an Object Redirect</a> in the <i>Amazon S3 User Guide</i>.</p><p><h3>See
- * Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutBucketWebsite">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for PutBucketWebsite that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void PutBucketWebsiteAsync(const Model::PutBucketWebsiteRequest& request, const PutBucketWebsiteResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename PutBucketWebsiteRequestT = Model::PutBucketWebsiteRequest>
+ void PutBucketWebsiteAsync(const PutBucketWebsiteRequestT& request, const PutBucketWebsiteResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::PutBucketWebsite, request, handler, context);
+ }
/**
* <p>Adds an object to a bucket. You must have WRITE permissions on a bucket to
@@ -8849,46 +4443,64 @@ namespace Aws
* header. When you use this header, Amazon S3 checks the object against the
* provided MD5 value and, if they do not match, returns an error. Additionally,
* you can calculate the MD5 while putting an object to Amazon S3 and compare the
- * returned ETag to the calculated MD5 value.</p> <p> The
- * <code>Content-MD5</code> header is required for any request to upload an object
- * with a retention period configured using Amazon S3 Object Lock. For more
- * information about Amazon S3 Object Lock, see <a
+ * returned ETag to the calculated MD5 value.</p> <ul> <li> <p>To
+ * successfully complete the <code>PutObject</code> request, you must have the
+ * <code>s3:PutObject</code> in your IAM permissions.</p> </li> <li> <p>To
+ * successfully change the objects acl of your <code>PutObject</code> request, you
+ * must have the <code>s3:PutObjectAcl</code> in your IAM permissions.</p> </li>
+ * <li> <p> The <code>Content-MD5</code> header is required for any request to
+ * upload an object with a retention period configured using Amazon S3 Object Lock.
+ * For more information about Amazon S3 Object Lock, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock-overview.html">Amazon
- * S3 Object Lock Overview</a> in the <i>Amazon S3 User Guide</i>. </p> <p>
- * <b>Server-side Encryption</b> </p> <p>You can optionally request server-side
- * encryption. With server-side encryption, Amazon S3 encrypts your data as it
- * writes it to disks in its data centers and decrypts the data when you access it.
- * You have the option to provide your own encryption key or use AWS managed
- * encryption keys (SSE-S3 or SSE-KMS). For more information, see <a
+ * S3 Object Lock Overview</a> in the <i>Amazon S3 User Guide</i>. </p> </li> </ul>
+ * <p> <b>Server-side Encryption</b> </p> <p>You can optionally request
+ * server-side encryption. With server-side encryption, Amazon S3 encrypts your
+ * data as it writes it to disks in its data centers and decrypts the data when you
+ * access it. You have the option to provide your own encryption key or use Amazon
+ * Web Services managed encryption keys (SSE-S3 or SSE-KMS). For more information,
+ * see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html">Using
* Server-Side Encryption</a>.</p> <p>If you request server-side encryption using
- * AWS Key Management Service (SSE-KMS), you can enable an S3 Bucket Key at the
- * object-level. For more information, see <a
+ * Amazon Web Services Key Management Service (SSE-KMS), you can enable an S3
+ * Bucket Key at the object-level. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html">Amazon S3
* Bucket Keys</a> in the <i>Amazon S3 User Guide</i>.</p> <p> <b>Access Control
* List (ACL)-Specific Request Headers</b> </p> <p>You can use headers to grant
* ACL- based permissions. By default, all objects are private. Only the owner has
* full access control. When adding a new object, you can grant permissions to
- * individual AWS accounts or to predefined groups defined by Amazon S3. These
- * permissions are then added to the ACL on the object. For more information, see
- * <a
+ * individual Amazon Web Services accounts or to predefined groups defined by
+ * Amazon S3. These permissions are then added to the ACL on the object. For more
+ * information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html">Access
* Control List (ACL) Overview</a> and <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-using-rest-api.html">Managing
- * ACLs Using the REST API</a>. </p> <p> <b>Storage Class Options</b> </p> <p>By
- * default, Amazon S3 uses the STANDARD Storage Class to store newly created
+ * ACLs Using the REST API</a>. </p> <p>If the bucket that you're uploading objects
+ * to uses the bucket owner enforced setting for S3 Object Ownership, ACLs are
+ * disabled and no longer affect permissions. Buckets that use this setting only
+ * accept PUT requests that don't specify an ACL or PUT requests that specify
+ * bucket owner full control ACLs, such as the
+ * <code>bucket-owner-full-control</code> canned ACL or an equivalent form of this
+ * ACL expressed in the XML format. PUT requests that contain other ACLs (for
+ * example, custom grants to certain Amazon Web Services accounts) fail and return
+ * a <code>400</code> error with the error code
+ * <code>AccessControlListNotSupported</code>.</p> <p>For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html">
+ * Controlling ownership of objects and disabling ACLs</a> in the <i>Amazon S3 User
+ * Guide</i>.</p> <p>If your bucket uses the bucket owner enforced setting
+ * for Object Ownership, all objects written to the bucket by any account will be
+ * owned by the bucket owner.</p> <p> <b>Storage Class Options</b> </p>
+ * <p>By default, Amazon S3 uses the STANDARD Storage Class to store newly created
* objects. The STANDARD storage class provides high durability and high
* availability. Depending on performance needs, you can specify a different
* Storage Class. Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. For
* more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
- * Classes</a> in the <i>Amazon S3 Service Developer Guide</i>.</p> <p>
- * <b>Versioning</b> </p> <p>If you enable versioning for a bucket, Amazon S3
- * automatically generates a unique version ID for the object being stored. Amazon
- * S3 returns this ID in the response. When you enable versioning for a bucket, if
- * Amazon S3 receives multiple write requests for the same object simultaneously,
- * it stores all of the objects.</p> <p>For more information about versioning, see
- * <a
+ * Classes</a> in the <i>Amazon S3 User Guide</i>.</p> <p> <b>Versioning</b> </p>
+ * <p>If you enable versioning for a bucket, Amazon S3 automatically generates a
+ * unique version ID for the object being stored. Amazon S3 returns this ID in the
+ * response. When you enable versioning for a bucket, if Amazon S3 receives
+ * multiple write requests for the same object simultaneously, it stores all of the
+ * objects.</p> <p>For more information about versioning, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/AddingObjectstoVersioningEnabledBuckets.html">Adding
* Objects to Versioning Enabled Buckets</a>. For information about returning the
* versioning state of a bucket, see <a
@@ -8904,138 +4516,12 @@ namespace Aws
virtual Model::PutObjectOutcome PutObject(const Model::PutObjectRequest& request) const;
/**
- * <p>Adds an object to a bucket. You must have WRITE permissions on a bucket to
- * add an object to it.</p> <p>Amazon S3 never adds partial objects; if you receive
- * a success response, Amazon S3 added the entire object to the bucket.</p>
- * <p>Amazon S3 is a distributed system. If it receives multiple write requests for
- * the same object simultaneously, it overwrites all but the last object written.
- * Amazon S3 does not provide object locking; if you need this, make sure to build
- * it into your application layer or use versioning instead.</p> <p>To ensure that
- * data is not corrupted traversing the network, use the <code>Content-MD5</code>
- * header. When you use this header, Amazon S3 checks the object against the
- * provided MD5 value and, if they do not match, returns an error. Additionally,
- * you can calculate the MD5 while putting an object to Amazon S3 and compare the
- * returned ETag to the calculated MD5 value.</p> <p> The
- * <code>Content-MD5</code> header is required for any request to upload an object
- * with a retention period configured using Amazon S3 Object Lock. For more
- * information about Amazon S3 Object Lock, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock-overview.html">Amazon
- * S3 Object Lock Overview</a> in the <i>Amazon S3 User Guide</i>. </p> <p>
- * <b>Server-side Encryption</b> </p> <p>You can optionally request server-side
- * encryption. With server-side encryption, Amazon S3 encrypts your data as it
- * writes it to disks in its data centers and decrypts the data when you access it.
- * You have the option to provide your own encryption key or use AWS managed
- * encryption keys (SSE-S3 or SSE-KMS). For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html">Using
- * Server-Side Encryption</a>.</p> <p>If you request server-side encryption using
- * AWS Key Management Service (SSE-KMS), you can enable an S3 Bucket Key at the
- * object-level. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html">Amazon S3
- * Bucket Keys</a> in the <i>Amazon S3 User Guide</i>.</p> <p> <b>Access Control
- * List (ACL)-Specific Request Headers</b> </p> <p>You can use headers to grant
- * ACL- based permissions. By default, all objects are private. Only the owner has
- * full access control. When adding a new object, you can grant permissions to
- * individual AWS accounts or to predefined groups defined by Amazon S3. These
- * permissions are then added to the ACL on the object. For more information, see
- * <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html">Access
- * Control List (ACL) Overview</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-using-rest-api.html">Managing
- * ACLs Using the REST API</a>. </p> <p> <b>Storage Class Options</b> </p> <p>By
- * default, Amazon S3 uses the STANDARD Storage Class to store newly created
- * objects. The STANDARD storage class provides high durability and high
- * availability. Depending on performance needs, you can specify a different
- * Storage Class. Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. For
- * more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
- * Classes</a> in the <i>Amazon S3 Service Developer Guide</i>.</p> <p>
- * <b>Versioning</b> </p> <p>If you enable versioning for a bucket, Amazon S3
- * automatically generates a unique version ID for the object being stored. Amazon
- * S3 returns this ID in the response. When you enable versioning for a bucket, if
- * Amazon S3 receives multiple write requests for the same object simultaneously,
- * it stores all of the objects.</p> <p>For more information about versioning, see
- * <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/AddingObjectstoVersioningEnabledBuckets.html">Adding
- * Objects to Versioning Enabled Buckets</a>. For information about returning the
- * versioning state of a bucket, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketVersioning.html">GetBucketVersioning</a>.
- * </p> <p class="title"> <b>Related Resources</b> </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html">CopyObject</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html">DeleteObject</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObject">AWS API
- * Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for PutObject that returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::PutObjectOutcomeCallable PutObjectCallable(const Model::PutObjectRequest& request) const;
/**
- * <p>Adds an object to a bucket. You must have WRITE permissions on a bucket to
- * add an object to it.</p> <p>Amazon S3 never adds partial objects; if you receive
- * a success response, Amazon S3 added the entire object to the bucket.</p>
- * <p>Amazon S3 is a distributed system. If it receives multiple write requests for
- * the same object simultaneously, it overwrites all but the last object written.
- * Amazon S3 does not provide object locking; if you need this, make sure to build
- * it into your application layer or use versioning instead.</p> <p>To ensure that
- * data is not corrupted traversing the network, use the <code>Content-MD5</code>
- * header. When you use this header, Amazon S3 checks the object against the
- * provided MD5 value and, if they do not match, returns an error. Additionally,
- * you can calculate the MD5 while putting an object to Amazon S3 and compare the
- * returned ETag to the calculated MD5 value.</p> <p> The
- * <code>Content-MD5</code> header is required for any request to upload an object
- * with a retention period configured using Amazon S3 Object Lock. For more
- * information about Amazon S3 Object Lock, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock-overview.html">Amazon
- * S3 Object Lock Overview</a> in the <i>Amazon S3 User Guide</i>. </p> <p>
- * <b>Server-side Encryption</b> </p> <p>You can optionally request server-side
- * encryption. With server-side encryption, Amazon S3 encrypts your data as it
- * writes it to disks in its data centers and decrypts the data when you access it.
- * You have the option to provide your own encryption key or use AWS managed
- * encryption keys (SSE-S3 or SSE-KMS). For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html">Using
- * Server-Side Encryption</a>.</p> <p>If you request server-side encryption using
- * AWS Key Management Service (SSE-KMS), you can enable an S3 Bucket Key at the
- * object-level. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html">Amazon S3
- * Bucket Keys</a> in the <i>Amazon S3 User Guide</i>.</p> <p> <b>Access Control
- * List (ACL)-Specific Request Headers</b> </p> <p>You can use headers to grant
- * ACL- based permissions. By default, all objects are private. Only the owner has
- * full access control. When adding a new object, you can grant permissions to
- * individual AWS accounts or to predefined groups defined by Amazon S3. These
- * permissions are then added to the ACL on the object. For more information, see
- * <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html">Access
- * Control List (ACL) Overview</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-using-rest-api.html">Managing
- * ACLs Using the REST API</a>. </p> <p> <b>Storage Class Options</b> </p> <p>By
- * default, Amazon S3 uses the STANDARD Storage Class to store newly created
- * objects. The STANDARD storage class provides high durability and high
- * availability. Depending on performance needs, you can specify a different
- * Storage Class. Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. For
- * more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
- * Classes</a> in the <i>Amazon S3 Service Developer Guide</i>.</p> <p>
- * <b>Versioning</b> </p> <p>If you enable versioning for a bucket, Amazon S3
- * automatically generates a unique version ID for the object being stored. Amazon
- * S3 returns this ID in the response. When you enable versioning for a bucket, if
- * Amazon S3 receives multiple write requests for the same object simultaneously,
- * it stores all of the objects.</p> <p>For more information about versioning, see
- * <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/AddingObjectstoVersioningEnabledBuckets.html">Adding
- * Objects to Versioning Enabled Buckets</a>. For information about returning the
- * versioning state of a bucket, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketVersioning.html">GetBucketVersioning</a>.
- * </p> <p class="title"> <b>Related Resources</b> </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html">CopyObject</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html">DeleteObject</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObject">AWS API
- * Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for PutObject that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void PutObjectAsync(const Model::PutObjectRequest& request, const PutObjectResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
@@ -9052,7 +4538,15 @@ namespace Aws
* that updates a bucket ACL using the request body, you can continue to use that
* approach. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html">Access
- * Control List (ACL) Overview</a> in the <i>Amazon S3 Developer Guide</i>.</p> <p>
+ * Control List (ACL) Overview</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * <p>If your bucket uses the bucket owner enforced setting for S3
+ * Object Ownership, ACLs are disabled and no longer affect permissions. You must
+ * use policies to grant access to your bucket and the objects in it. Requests to
+ * set ACLs or update ACLs fail and return the
+ * <code>AccessControlListNotSupported</code> error code. Requests to read ACLs are
+ * still supported. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html">Controlling
+ * object ownership</a> in the <i>Amazon S3 User Guide</i>.</p> <p>
* <b>Access Permissions</b> </p> <p>You can set access permissions using one of
* the following methods:</p> <ul> <li> <p>Specify a canned ACL with the
* <code>x-amz-acl</code> request header. Amazon S3 supports a set of predefined
@@ -9065,33 +4559,36 @@ namespace Aws
* <code>x-amz-grant-read</code>, <code>x-amz-grant-read-acp</code>,
* <code>x-amz-grant-write-acp</code>, and <code>x-amz-grant-full-control</code>
* headers. When using these headers, you specify explicit access permissions and
- * grantees (AWS accounts or Amazon S3 groups) who will receive the permission. If
- * you use these ACL-specific headers, you cannot use <code>x-amz-acl</code> header
- * to set a canned ACL. These parameters map to the set of permissions that Amazon
- * S3 supports in an ACL. For more information, see <a
+ * grantees (Amazon Web Services accounts or Amazon S3 groups) who will receive the
+ * permission. If you use these ACL-specific headers, you cannot use
+ * <code>x-amz-acl</code> header to set a canned ACL. These parameters map to the
+ * set of permissions that Amazon S3 supports in an ACL. For more information, see
+ * <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html">Access
* Control List (ACL) Overview</a>.</p> <p>You specify each grantee as a type=value
* pair, where the type is one of the following:</p> <ul> <li> <p> <code>id</code>
- * – if the value specified is the canonical user ID of an AWS account</p> </li>
- * <li> <p> <code>uri</code> – if you are granting permissions to a predefined
- * group</p> </li> <li> <p> <code>emailAddress</code> – if the value specified is
- * the email address of an AWS account</p> <p>Using email addresses to
- * specify a grantee is only supported in the following AWS Regions: </p> <ul> <li>
- * <p>US East (N. Virginia)</p> </li> <li> <p>US West (N. California)</p> </li>
- * <li> <p> US West (Oregon)</p> </li> <li> <p> Asia Pacific (Singapore)</p> </li>
- * <li> <p>Asia Pacific (Sydney)</p> </li> <li> <p>Asia Pacific (Tokyo)</p> </li>
- * <li> <p>Europe (Ireland)</p> </li> <li> <p>South America (São Paulo)</p> </li>
- * </ul> <p>For a list of all the Amazon S3 supported Regions and endpoints, see <a
+ * – if the value specified is the canonical user ID of an Amazon Web Services
+ * account</p> </li> <li> <p> <code>uri</code> – if you are granting permissions to
+ * a predefined group</p> </li> <li> <p> <code>emailAddress</code> – if the value
+ * specified is the email address of an Amazon Web Services account</p>
+ * <p>Using email addresses to specify a grantee is only supported in the following
+ * Amazon Web Services Regions: </p> <ul> <li> <p>US East (N. Virginia)</p> </li>
+ * <li> <p>US West (N. California)</p> </li> <li> <p> US West (Oregon)</p> </li>
+ * <li> <p> Asia Pacific (Singapore)</p> </li> <li> <p>Asia Pacific (Sydney)</p>
+ * </li> <li> <p>Asia Pacific (Tokyo)</p> </li> <li> <p>Europe (Ireland)</p> </li>
+ * <li> <p>South America (São Paulo)</p> </li> </ul> <p>For a list of all the
+ * Amazon S3 supported Regions and endpoints, see <a
* href="https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region">Regions
- * and Endpoints</a> in the AWS General Reference.</p> </li> </ul> <p>For
- * example, the following <code>x-amz-grant-read</code> header grants list objects
- * permission to the two AWS accounts identified by their email addresses.</p> <p>
- * <code>x-amz-grant-read: emailAddress="xyz@amazon.com",
- * emailAddress="abc@amazon.com" </code> </p> </li> </ul> <p>You can use either a
- * canned ACL or specify access permissions explicitly. You cannot do both.</p> <p>
- * <b>Grantee Values</b> </p> <p>You can specify the person (grantee) to whom
- * you're assigning access rights (using request elements) in the following
- * ways:</p> <ul> <li> <p>By the person's ID:</p> <p> <code>&lt;Grantee
+ * and Endpoints</a> in the Amazon Web Services General Reference.</p>
+ * </li> </ul> <p>For example, the following <code>x-amz-grant-read</code> header
+ * grants list objects permission to the two Amazon Web Services accounts
+ * identified by their email addresses.</p> <p> <code>x-amz-grant-read:
+ * emailAddress="xyz@amazon.com", emailAddress="abc@amazon.com" </code> </p> </li>
+ * </ul> <p>You can use either a canned ACL or specify access permissions
+ * explicitly. You cannot do both.</p> <p> <b>Grantee Values</b> </p> <p>You can
+ * specify the person (grantee) to whom you're assigning access rights (using
+ * request elements) in the following ways:</p> <ul> <li> <p>By the person's
+ * ID:</p> <p> <code>&lt;Grantee
* xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
* xsi:type="CanonicalUser"&gt;&lt;ID&gt;&lt;&gt;ID&lt;&gt;&lt;/ID&gt;&lt;DisplayName&gt;&lt;&gt;GranteesEmail&lt;&gt;&lt;/DisplayName&gt;
* &lt;/Grantee&gt;</code> </p> <p>DisplayName is optional and ignored in the
@@ -9103,19 +4600,20 @@ namespace Aws
* xsi:type="AmazonCustomerByEmail"&gt;&lt;EmailAddress&gt;&lt;&gt;Grantees@email.com&lt;&gt;&lt;/EmailAddress&gt;lt;/Grantee&gt;</code>
* </p> <p>The grantee is resolved to the CanonicalUser and, in a response to a GET
* Object acl request, appears as the CanonicalUser.</p> <p>Using email
- * addresses to specify a grantee is only supported in the following AWS Regions:
- * </p> <ul> <li> <p>US East (N. Virginia)</p> </li> <li> <p>US West (N.
- * California)</p> </li> <li> <p> US West (Oregon)</p> </li> <li> <p> Asia Pacific
- * (Singapore)</p> </li> <li> <p>Asia Pacific (Sydney)</p> </li> <li> <p>Asia
- * Pacific (Tokyo)</p> </li> <li> <p>Europe (Ireland)</p> </li> <li> <p>South
- * America (São Paulo)</p> </li> </ul> <p>For a list of all the Amazon S3 supported
- * Regions and endpoints, see <a
+ * addresses to specify a grantee is only supported in the following Amazon Web
+ * Services Regions: </p> <ul> <li> <p>US East (N. Virginia)</p> </li> <li> <p>US
+ * West (N. California)</p> </li> <li> <p> US West (Oregon)</p> </li> <li> <p> Asia
+ * Pacific (Singapore)</p> </li> <li> <p>Asia Pacific (Sydney)</p> </li> <li>
+ * <p>Asia Pacific (Tokyo)</p> </li> <li> <p>Europe (Ireland)</p> </li> <li>
+ * <p>South America (São Paulo)</p> </li> </ul> <p>For a list of all the Amazon S3
+ * supported Regions and endpoints, see <a
* href="https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region">Regions
- * and Endpoints</a> in the AWS General Reference.</p> </li> </ul> <p>
- * <b>Versioning</b> </p> <p>The ACL of an object is set at the object version
- * level. By default, PUT sets the ACL of the current version of an object. To set
- * the ACL of a different version, use the <code>versionId</code> subresource.</p>
- * <p class="title"> <b>Related Resources</b> </p> <ul> <li> <p> <a
+ * and Endpoints</a> in the Amazon Web Services General Reference.</p>
+ * </li> </ul> <p> <b>Versioning</b> </p> <p>The ACL of an object is set at the
+ * object version level. By default, PUT sets the ACL of the current version of an
+ * object. To set the ACL of a different version, use the <code>versionId</code>
+ * subresource.</p> <p class="title"> <b>Related Resources</b> </p> <ul> <li> <p>
+ * <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html">CopyObject</a>
* </p> </li> <li> <p> <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>
@@ -9126,183 +4624,25 @@ namespace Aws
virtual Model::PutObjectAclOutcome PutObjectAcl(const Model::PutObjectAclRequest& request) const;
/**
- * <p>Uses the <code>acl</code> subresource to set the access control list (ACL)
- * permissions for a new or existing object in an S3 bucket. You must have
- * <code>WRITE_ACP</code> permission to set the ACL of an object. For more
- * information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#permissions">What
- * permissions can I grant?</a> in the <i>Amazon S3 User Guide</i>.</p> <p>This
- * action is not supported by Amazon S3 on Outposts.</p> <p>Depending on your
- * application needs, you can choose to set the ACL on an object using either the
- * request body or the headers. For example, if you have an existing application
- * that updates a bucket ACL using the request body, you can continue to use that
- * approach. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html">Access
- * Control List (ACL) Overview</a> in the <i>Amazon S3 Developer Guide</i>.</p> <p>
- * <b>Access Permissions</b> </p> <p>You can set access permissions using one of
- * the following methods:</p> <ul> <li> <p>Specify a canned ACL with the
- * <code>x-amz-acl</code> request header. Amazon S3 supports a set of predefined
- * ACLs, known as canned ACLs. Each canned ACL has a predefined set of grantees and
- * permissions. Specify the canned ACL name as the value of <code>x-amz-ac</code>l.
- * If you use this header, you cannot use other access control-specific headers in
- * your request. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL">Canned
- * ACL</a>.</p> </li> <li> <p>Specify access permissions explicitly with the
- * <code>x-amz-grant-read</code>, <code>x-amz-grant-read-acp</code>,
- * <code>x-amz-grant-write-acp</code>, and <code>x-amz-grant-full-control</code>
- * headers. When using these headers, you specify explicit access permissions and
- * grantees (AWS accounts or Amazon S3 groups) who will receive the permission. If
- * you use these ACL-specific headers, you cannot use <code>x-amz-acl</code> header
- * to set a canned ACL. These parameters map to the set of permissions that Amazon
- * S3 supports in an ACL. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html">Access
- * Control List (ACL) Overview</a>.</p> <p>You specify each grantee as a type=value
- * pair, where the type is one of the following:</p> <ul> <li> <p> <code>id</code>
- * – if the value specified is the canonical user ID of an AWS account</p> </li>
- * <li> <p> <code>uri</code> – if you are granting permissions to a predefined
- * group</p> </li> <li> <p> <code>emailAddress</code> – if the value specified is
- * the email address of an AWS account</p> <p>Using email addresses to
- * specify a grantee is only supported in the following AWS Regions: </p> <ul> <li>
- * <p>US East (N. Virginia)</p> </li> <li> <p>US West (N. California)</p> </li>
- * <li> <p> US West (Oregon)</p> </li> <li> <p> Asia Pacific (Singapore)</p> </li>
- * <li> <p>Asia Pacific (Sydney)</p> </li> <li> <p>Asia Pacific (Tokyo)</p> </li>
- * <li> <p>Europe (Ireland)</p> </li> <li> <p>South America (São Paulo)</p> </li>
- * </ul> <p>For a list of all the Amazon S3 supported Regions and endpoints, see <a
- * href="https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region">Regions
- * and Endpoints</a> in the AWS General Reference.</p> </li> </ul> <p>For
- * example, the following <code>x-amz-grant-read</code> header grants list objects
- * permission to the two AWS accounts identified by their email addresses.</p> <p>
- * <code>x-amz-grant-read: emailAddress="xyz@amazon.com",
- * emailAddress="abc@amazon.com" </code> </p> </li> </ul> <p>You can use either a
- * canned ACL or specify access permissions explicitly. You cannot do both.</p> <p>
- * <b>Grantee Values</b> </p> <p>You can specify the person (grantee) to whom
- * you're assigning access rights (using request elements) in the following
- * ways:</p> <ul> <li> <p>By the person's ID:</p> <p> <code>&lt;Grantee
- * xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- * xsi:type="CanonicalUser"&gt;&lt;ID&gt;&lt;&gt;ID&lt;&gt;&lt;/ID&gt;&lt;DisplayName&gt;&lt;&gt;GranteesEmail&lt;&gt;&lt;/DisplayName&gt;
- * &lt;/Grantee&gt;</code> </p> <p>DisplayName is optional and ignored in the
- * request.</p> </li> <li> <p>By URI:</p> <p> <code>&lt;Grantee
- * xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- * xsi:type="Group"&gt;&lt;URI&gt;&lt;&gt;http://acs.amazonaws.com/groups/global/AuthenticatedUsers&lt;&gt;&lt;/URI&gt;&lt;/Grantee&gt;</code>
- * </p> </li> <li> <p>By Email address:</p> <p> <code>&lt;Grantee
- * xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- * xsi:type="AmazonCustomerByEmail"&gt;&lt;EmailAddress&gt;&lt;&gt;Grantees@email.com&lt;&gt;&lt;/EmailAddress&gt;lt;/Grantee&gt;</code>
- * </p> <p>The grantee is resolved to the CanonicalUser and, in a response to a GET
- * Object acl request, appears as the CanonicalUser.</p> <p>Using email
- * addresses to specify a grantee is only supported in the following AWS Regions:
- * </p> <ul> <li> <p>US East (N. Virginia)</p> </li> <li> <p>US West (N.
- * California)</p> </li> <li> <p> US West (Oregon)</p> </li> <li> <p> Asia Pacific
- * (Singapore)</p> </li> <li> <p>Asia Pacific (Sydney)</p> </li> <li> <p>Asia
- * Pacific (Tokyo)</p> </li> <li> <p>Europe (Ireland)</p> </li> <li> <p>South
- * America (São Paulo)</p> </li> </ul> <p>For a list of all the Amazon S3 supported
- * Regions and endpoints, see <a
- * href="https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region">Regions
- * and Endpoints</a> in the AWS General Reference.</p> </li> </ul> <p>
- * <b>Versioning</b> </p> <p>The ACL of an object is set at the object version
- * level. By default, PUT sets the ACL of the current version of an object. To set
- * the ACL of a different version, use the <code>versionId</code> subresource.</p>
- * <p class="title"> <b>Related Resources</b> </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html">CopyObject</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectAcl">AWS API
- * Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for PutObjectAcl that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::PutObjectAclOutcomeCallable PutObjectAclCallable(const Model::PutObjectAclRequest& request) const;
+ template<typename PutObjectAclRequestT = Model::PutObjectAclRequest>
+ Model::PutObjectAclOutcomeCallable PutObjectAclCallable(const PutObjectAclRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::PutObjectAcl, request);
+ }
/**
- * <p>Uses the <code>acl</code> subresource to set the access control list (ACL)
- * permissions for a new or existing object in an S3 bucket. You must have
- * <code>WRITE_ACP</code> permission to set the ACL of an object. For more
- * information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#permissions">What
- * permissions can I grant?</a> in the <i>Amazon S3 User Guide</i>.</p> <p>This
- * action is not supported by Amazon S3 on Outposts.</p> <p>Depending on your
- * application needs, you can choose to set the ACL on an object using either the
- * request body or the headers. For example, if you have an existing application
- * that updates a bucket ACL using the request body, you can continue to use that
- * approach. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html">Access
- * Control List (ACL) Overview</a> in the <i>Amazon S3 Developer Guide</i>.</p> <p>
- * <b>Access Permissions</b> </p> <p>You can set access permissions using one of
- * the following methods:</p> <ul> <li> <p>Specify a canned ACL with the
- * <code>x-amz-acl</code> request header. Amazon S3 supports a set of predefined
- * ACLs, known as canned ACLs. Each canned ACL has a predefined set of grantees and
- * permissions. Specify the canned ACL name as the value of <code>x-amz-ac</code>l.
- * If you use this header, you cannot use other access control-specific headers in
- * your request. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL">Canned
- * ACL</a>.</p> </li> <li> <p>Specify access permissions explicitly with the
- * <code>x-amz-grant-read</code>, <code>x-amz-grant-read-acp</code>,
- * <code>x-amz-grant-write-acp</code>, and <code>x-amz-grant-full-control</code>
- * headers. When using these headers, you specify explicit access permissions and
- * grantees (AWS accounts or Amazon S3 groups) who will receive the permission. If
- * you use these ACL-specific headers, you cannot use <code>x-amz-acl</code> header
- * to set a canned ACL. These parameters map to the set of permissions that Amazon
- * S3 supports in an ACL. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html">Access
- * Control List (ACL) Overview</a>.</p> <p>You specify each grantee as a type=value
- * pair, where the type is one of the following:</p> <ul> <li> <p> <code>id</code>
- * – if the value specified is the canonical user ID of an AWS account</p> </li>
- * <li> <p> <code>uri</code> – if you are granting permissions to a predefined
- * group</p> </li> <li> <p> <code>emailAddress</code> – if the value specified is
- * the email address of an AWS account</p> <p>Using email addresses to
- * specify a grantee is only supported in the following AWS Regions: </p> <ul> <li>
- * <p>US East (N. Virginia)</p> </li> <li> <p>US West (N. California)</p> </li>
- * <li> <p> US West (Oregon)</p> </li> <li> <p> Asia Pacific (Singapore)</p> </li>
- * <li> <p>Asia Pacific (Sydney)</p> </li> <li> <p>Asia Pacific (Tokyo)</p> </li>
- * <li> <p>Europe (Ireland)</p> </li> <li> <p>South America (São Paulo)</p> </li>
- * </ul> <p>For a list of all the Amazon S3 supported Regions and endpoints, see <a
- * href="https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region">Regions
- * and Endpoints</a> in the AWS General Reference.</p> </li> </ul> <p>For
- * example, the following <code>x-amz-grant-read</code> header grants list objects
- * permission to the two AWS accounts identified by their email addresses.</p> <p>
- * <code>x-amz-grant-read: emailAddress="xyz@amazon.com",
- * emailAddress="abc@amazon.com" </code> </p> </li> </ul> <p>You can use either a
- * canned ACL or specify access permissions explicitly. You cannot do both.</p> <p>
- * <b>Grantee Values</b> </p> <p>You can specify the person (grantee) to whom
- * you're assigning access rights (using request elements) in the following
- * ways:</p> <ul> <li> <p>By the person's ID:</p> <p> <code>&lt;Grantee
- * xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- * xsi:type="CanonicalUser"&gt;&lt;ID&gt;&lt;&gt;ID&lt;&gt;&lt;/ID&gt;&lt;DisplayName&gt;&lt;&gt;GranteesEmail&lt;&gt;&lt;/DisplayName&gt;
- * &lt;/Grantee&gt;</code> </p> <p>DisplayName is optional and ignored in the
- * request.</p> </li> <li> <p>By URI:</p> <p> <code>&lt;Grantee
- * xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- * xsi:type="Group"&gt;&lt;URI&gt;&lt;&gt;http://acs.amazonaws.com/groups/global/AuthenticatedUsers&lt;&gt;&lt;/URI&gt;&lt;/Grantee&gt;</code>
- * </p> </li> <li> <p>By Email address:</p> <p> <code>&lt;Grantee
- * xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- * xsi:type="AmazonCustomerByEmail"&gt;&lt;EmailAddress&gt;&lt;&gt;Grantees@email.com&lt;&gt;&lt;/EmailAddress&gt;lt;/Grantee&gt;</code>
- * </p> <p>The grantee is resolved to the CanonicalUser and, in a response to a GET
- * Object acl request, appears as the CanonicalUser.</p> <p>Using email
- * addresses to specify a grantee is only supported in the following AWS Regions:
- * </p> <ul> <li> <p>US East (N. Virginia)</p> </li> <li> <p>US West (N.
- * California)</p> </li> <li> <p> US West (Oregon)</p> </li> <li> <p> Asia Pacific
- * (Singapore)</p> </li> <li> <p>Asia Pacific (Sydney)</p> </li> <li> <p>Asia
- * Pacific (Tokyo)</p> </li> <li> <p>Europe (Ireland)</p> </li> <li> <p>South
- * America (São Paulo)</p> </li> </ul> <p>For a list of all the Amazon S3 supported
- * Regions and endpoints, see <a
- * href="https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region">Regions
- * and Endpoints</a> in the AWS General Reference.</p> </li> </ul> <p>
- * <b>Versioning</b> </p> <p>The ACL of an object is set at the object version
- * level. By default, PUT sets the ACL of the current version of an object. To set
- * the ACL of a different version, use the <code>versionId</code> subresource.</p>
- * <p class="title"> <b>Related Resources</b> </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html">CopyObject</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectAcl">AWS API
- * Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for PutObjectAcl that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void PutObjectAclAsync(const Model::PutObjectAclRequest& request, const PutObjectAclResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename PutObjectAclRequestT = Model::PutObjectAclRequest>
+ void PutObjectAclAsync(const PutObjectAclRequestT& request, const PutObjectAclResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::PutObjectAcl, request, handler, context);
+ }
/**
- * <p>Applies a Legal Hold configuration to the specified object. For more
+ * <p>Applies a legal hold configuration to the specified object. For more
* information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Locking
* Objects</a>.</p> <p>This action is not supported by Amazon S3 on
@@ -9313,30 +4653,22 @@ namespace Aws
virtual Model::PutObjectLegalHoldOutcome PutObjectLegalHold(const Model::PutObjectLegalHoldRequest& request) const;
/**
- * <p>Applies a Legal Hold configuration to the specified object. For more
- * information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Locking
- * Objects</a>.</p> <p>This action is not supported by Amazon S3 on
- * Outposts.</p><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectLegalHold">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for PutObjectLegalHold that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::PutObjectLegalHoldOutcomeCallable PutObjectLegalHoldCallable(const Model::PutObjectLegalHoldRequest& request) const;
+ template<typename PutObjectLegalHoldRequestT = Model::PutObjectLegalHoldRequest>
+ Model::PutObjectLegalHoldOutcomeCallable PutObjectLegalHoldCallable(const PutObjectLegalHoldRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::PutObjectLegalHold, request);
+ }
/**
- * <p>Applies a Legal Hold configuration to the specified object. For more
- * information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Locking
- * Objects</a>.</p> <p>This action is not supported by Amazon S3 on
- * Outposts.</p><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectLegalHold">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for PutObjectLegalHold that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void PutObjectLegalHoldAsync(const Model::PutObjectLegalHoldRequest& request, const PutObjectLegalHoldResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename PutObjectLegalHoldRequestT = Model::PutObjectLegalHoldRequest>
+ void PutObjectLegalHoldAsync(const PutObjectLegalHoldRequestT& request, const PutObjectLegalHoldResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::PutObjectLegalHold, request, handler, context);
+ }
/**
* <p>Places an Object Lock configuration on the specified bucket. The rule
@@ -9349,86 +4681,62 @@ namespace Aws
* <code>Years</code> but you must select one. You cannot specify <code>Days</code>
* and <code>Years</code> at the same time.</p> </li> <li> <p>You can only enable
* Object Lock for new buckets. If you want to turn on Object Lock for an existing
- * bucket, contact AWS Support.</p> </li> </ul> <p><h3>See Also:</h3> <a
+ * bucket, contact Amazon Web Services Support.</p> </li> </ul> <p><h3>See
+ * Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectLockConfiguration">AWS
* API Reference</a></p>
*/
virtual Model::PutObjectLockConfigurationOutcome PutObjectLockConfiguration(const Model::PutObjectLockConfigurationRequest& request) const;
/**
- * <p>Places an Object Lock configuration on the specified bucket. The rule
- * specified in the Object Lock configuration will be applied by default to every
- * new object placed in the specified bucket. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Locking
- * Objects</a>. </p> <ul> <li> <p>The <code>DefaultRetention</code> settings
- * require both a mode and a period.</p> </li> <li> <p>The
- * <code>DefaultRetention</code> period can be either <code>Days</code> or
- * <code>Years</code> but you must select one. You cannot specify <code>Days</code>
- * and <code>Years</code> at the same time.</p> </li> <li> <p>You can only enable
- * Object Lock for new buckets. If you want to turn on Object Lock for an existing
- * bucket, contact AWS Support.</p> </li> </ul> <p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectLockConfiguration">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for PutObjectLockConfiguration that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::PutObjectLockConfigurationOutcomeCallable PutObjectLockConfigurationCallable(const Model::PutObjectLockConfigurationRequest& request) const;
+ template<typename PutObjectLockConfigurationRequestT = Model::PutObjectLockConfigurationRequest>
+ Model::PutObjectLockConfigurationOutcomeCallable PutObjectLockConfigurationCallable(const PutObjectLockConfigurationRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::PutObjectLockConfiguration, request);
+ }
/**
- * <p>Places an Object Lock configuration on the specified bucket. The rule
- * specified in the Object Lock configuration will be applied by default to every
- * new object placed in the specified bucket. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Locking
- * Objects</a>. </p> <ul> <li> <p>The <code>DefaultRetention</code> settings
- * require both a mode and a period.</p> </li> <li> <p>The
- * <code>DefaultRetention</code> period can be either <code>Days</code> or
- * <code>Years</code> but you must select one. You cannot specify <code>Days</code>
- * and <code>Years</code> at the same time.</p> </li> <li> <p>You can only enable
- * Object Lock for new buckets. If you want to turn on Object Lock for an existing
- * bucket, contact AWS Support.</p> </li> </ul> <p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectLockConfiguration">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for PutObjectLockConfiguration that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void PutObjectLockConfigurationAsync(const Model::PutObjectLockConfigurationRequest& request, const PutObjectLockConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename PutObjectLockConfigurationRequestT = Model::PutObjectLockConfigurationRequest>
+ void PutObjectLockConfigurationAsync(const PutObjectLockConfigurationRequestT& request, const PutObjectLockConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::PutObjectLockConfiguration, request, handler, context);
+ }
/**
* <p>Places an Object Retention configuration on an object. For more information,
* see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Locking
- * Objects</a>. </p> <p>This action is not supported by Amazon S3 on
- * Outposts.</p><p><h3>See Also:</h3> <a
+ * Objects</a>. Users or accounts require the <code>s3:PutObjectRetention</code>
+ * permission in order to place an Object Retention configuration on objects.
+ * Bypassing a Governance Retention configuration requires the
+ * <code>s3:BypassGovernanceRetention</code> permission. </p> <p>This action is not
+ * supported by Amazon S3 on Outposts.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectRetention">AWS
* API Reference</a></p>
*/
virtual Model::PutObjectRetentionOutcome PutObjectRetention(const Model::PutObjectRetentionRequest& request) const;
/**
- * <p>Places an Object Retention configuration on an object. For more information,
- * see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Locking
- * Objects</a>. </p> <p>This action is not supported by Amazon S3 on
- * Outposts.</p><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectRetention">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for PutObjectRetention that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::PutObjectRetentionOutcomeCallable PutObjectRetentionCallable(const Model::PutObjectRetentionRequest& request) const;
+ template<typename PutObjectRetentionRequestT = Model::PutObjectRetentionRequest>
+ Model::PutObjectRetentionOutcomeCallable PutObjectRetentionCallable(const PutObjectRetentionRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::PutObjectRetention, request);
+ }
/**
- * <p>Places an Object Retention configuration on an object. For more information,
- * see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html">Locking
- * Objects</a>. </p> <p>This action is not supported by Amazon S3 on
- * Outposts.</p><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectRetention">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for PutObjectRetention that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void PutObjectRetentionAsync(const Model::PutObjectRetentionRequest& request, const PutObjectRetentionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename PutObjectRetentionRequestT = Model::PutObjectRetentionRequest>
+ void PutObjectRetentionAsync(const PutObjectRetentionRequestT& request, const PutObjectRetentionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::PutObjectRetention, request, handler, context);
+ }
/**
* <p>Sets the supplied tag-set to an object that already exists in a bucket.</p>
@@ -9470,86 +4778,22 @@ namespace Aws
virtual Model::PutObjectTaggingOutcome PutObjectTagging(const Model::PutObjectTaggingRequest& request) const;
/**
- * <p>Sets the supplied tag-set to an object that already exists in a bucket.</p>
- * <p>A tag is a key-value pair. You can associate tags with an object by sending a
- * PUT request against the tagging subresource that is associated with the object.
- * You can retrieve tags by sending a GET request. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectTagging.html">GetObjectTagging</a>.</p>
- * <p>For tagging-related restrictions related to characters and encodings, see <a
- * href="https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/allocation-tag-restrictions.html">Tag
- * Restrictions</a>. Note that Amazon S3 limits the maximum number of tags to 10
- * tags per object.</p> <p>To use this operation, you must have permission to
- * perform the <code>s3:PutObjectTagging</code> action. By default, the bucket
- * owner has this permission and can grant this permission to others.</p> <p>To put
- * tags of any other version, use the <code>versionId</code> query parameter. You
- * also need permission for the <code>s3:PutObjectVersionTagging</code> action.</p>
- * <p>For information about the Amazon S3 object tagging feature, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-tagging.html">Object
- * Tagging</a>.</p> <p class="title"> <b>Special Errors</b> </p> <ul> <li> <ul>
- * <li> <p> <i>Code: InvalidTagError </i> </p> </li> <li> <p> <i>Cause: The tag
- * provided was not a valid tag. This error can occur if the tag did not pass input
- * validation. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-tagging.html">Object
- * Tagging</a>.</i> </p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:
- * MalformedXMLError </i> </p> </li> <li> <p> <i>Cause: The XML provided does not
- * match the schema.</i> </p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:
- * OperationAbortedError </i> </p> </li> <li> <p> <i>Cause: A conflicting
- * conditional action is currently in progress against this resource. Please try
- * again.</i> </p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code: InternalError</i>
- * </p> </li> <li> <p> <i>Cause: The service was unable to apply the provided tag
- * to the object.</i> </p> </li> </ul> </li> </ul> <p class="title"> <b>Related
- * Resources</b> </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectTagging.html">GetObjectTagging</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObjectTagging.html">DeleteObjectTagging</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectTagging">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for PutObjectTagging that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::PutObjectTaggingOutcomeCallable PutObjectTaggingCallable(const Model::PutObjectTaggingRequest& request) const;
+ template<typename PutObjectTaggingRequestT = Model::PutObjectTaggingRequest>
+ Model::PutObjectTaggingOutcomeCallable PutObjectTaggingCallable(const PutObjectTaggingRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::PutObjectTagging, request);
+ }
/**
- * <p>Sets the supplied tag-set to an object that already exists in a bucket.</p>
- * <p>A tag is a key-value pair. You can associate tags with an object by sending a
- * PUT request against the tagging subresource that is associated with the object.
- * You can retrieve tags by sending a GET request. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectTagging.html">GetObjectTagging</a>.</p>
- * <p>For tagging-related restrictions related to characters and encodings, see <a
- * href="https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/allocation-tag-restrictions.html">Tag
- * Restrictions</a>. Note that Amazon S3 limits the maximum number of tags to 10
- * tags per object.</p> <p>To use this operation, you must have permission to
- * perform the <code>s3:PutObjectTagging</code> action. By default, the bucket
- * owner has this permission and can grant this permission to others.</p> <p>To put
- * tags of any other version, use the <code>versionId</code> query parameter. You
- * also need permission for the <code>s3:PutObjectVersionTagging</code> action.</p>
- * <p>For information about the Amazon S3 object tagging feature, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-tagging.html">Object
- * Tagging</a>.</p> <p class="title"> <b>Special Errors</b> </p> <ul> <li> <ul>
- * <li> <p> <i>Code: InvalidTagError </i> </p> </li> <li> <p> <i>Cause: The tag
- * provided was not a valid tag. This error can occur if the tag did not pass input
- * validation. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-tagging.html">Object
- * Tagging</a>.</i> </p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:
- * MalformedXMLError </i> </p> </li> <li> <p> <i>Cause: The XML provided does not
- * match the schema.</i> </p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:
- * OperationAbortedError </i> </p> </li> <li> <p> <i>Cause: A conflicting
- * conditional action is currently in progress against this resource. Please try
- * again.</i> </p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code: InternalError</i>
- * </p> </li> <li> <p> <i>Cause: The service was unable to apply the provided tag
- * to the object.</i> </p> </li> </ul> </li> </ul> <p class="title"> <b>Related
- * Resources</b> </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectTagging.html">GetObjectTagging</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObjectTagging.html">DeleteObjectTagging</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObjectTagging">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for PutObjectTagging that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void PutObjectTaggingAsync(const Model::PutObjectTaggingRequest& request, const PutObjectTaggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename PutObjectTaggingRequestT = Model::PutObjectTaggingRequest>
+ void PutObjectTaggingAsync(const PutObjectTaggingRequestT& request, const PutObjectTaggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::PutObjectTagging, request, handler, context);
+ }
/**
* <p>Creates or modifies the <code>PublicAccessBlock</code> configuration for an
@@ -9582,68 +4826,22 @@ namespace Aws
virtual Model::PutPublicAccessBlockOutcome PutPublicAccessBlock(const Model::PutPublicAccessBlockRequest& request) const;
/**
- * <p>Creates or modifies the <code>PublicAccessBlock</code> configuration for an
- * Amazon S3 bucket. To use this operation, you must have the
- * <code>s3:PutBucketPublicAccessBlock</code> permission. For more information
- * about Amazon S3 permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying
- * Permissions in a Policy</a>.</p> <p>When Amazon S3 evaluates the
- * <code>PublicAccessBlock</code> configuration for a bucket or an object, it
- * checks the <code>PublicAccessBlock</code> configuration for both the bucket (or
- * the bucket that contains the object) and the bucket owner's account. If the
- * <code>PublicAccessBlock</code> configurations are different between the bucket
- * and the account, Amazon S3 uses the most restrictive combination of the
- * bucket-level and account-level settings.</p> <p>For more
- * information about when Amazon S3 considers a bucket or an object public, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status">The
- * Meaning of "Public"</a>.</p> <p class="title"> <b>Related Resources</b> </p>
- * <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetPublicAccessBlock.html">GetPublicAccessBlock</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeletePublicAccessBlock.html">DeletePublicAccessBlock</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketPolicyStatus.html">GetBucketPolicyStatus</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html">Using
- * Amazon S3 Block Public Access</a> </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutPublicAccessBlock">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for PutPublicAccessBlock that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::PutPublicAccessBlockOutcomeCallable PutPublicAccessBlockCallable(const Model::PutPublicAccessBlockRequest& request) const;
+ template<typename PutPublicAccessBlockRequestT = Model::PutPublicAccessBlockRequest>
+ Model::PutPublicAccessBlockOutcomeCallable PutPublicAccessBlockCallable(const PutPublicAccessBlockRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::PutPublicAccessBlock, request);
+ }
/**
- * <p>Creates or modifies the <code>PublicAccessBlock</code> configuration for an
- * Amazon S3 bucket. To use this operation, you must have the
- * <code>s3:PutBucketPublicAccessBlock</code> permission. For more information
- * about Amazon S3 permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying
- * Permissions in a Policy</a>.</p> <p>When Amazon S3 evaluates the
- * <code>PublicAccessBlock</code> configuration for a bucket or an object, it
- * checks the <code>PublicAccessBlock</code> configuration for both the bucket (or
- * the bucket that contains the object) and the bucket owner's account. If the
- * <code>PublicAccessBlock</code> configurations are different between the bucket
- * and the account, Amazon S3 uses the most restrictive combination of the
- * bucket-level and account-level settings.</p> <p>For more
- * information about when Amazon S3 considers a bucket or an object public, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status">The
- * Meaning of "Public"</a>.</p> <p class="title"> <b>Related Resources</b> </p>
- * <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetPublicAccessBlock.html">GetPublicAccessBlock</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeletePublicAccessBlock.html">DeletePublicAccessBlock</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketPolicyStatus.html">GetBucketPolicyStatus</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html">Using
- * Amazon S3 Block Public Access</a> </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutPublicAccessBlock">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for PutPublicAccessBlock that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void PutPublicAccessBlockAsync(const Model::PutPublicAccessBlockRequest& request, const PutPublicAccessBlockResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename PutPublicAccessBlockRequestT = Model::PutPublicAccessBlockRequest>
+ void PutPublicAccessBlockAsync(const PutPublicAccessBlockRequestT& request, const PutPublicAccessBlockResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::PutPublicAccessBlock, request, handler, context);
+ }
/**
* <p>Restores an archived copy of an object back into Amazon S3</p> <p>This action
@@ -9668,11 +4866,12 @@ namespace Aws
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/querying-glacier-archives.html">Querying
* Archived Objects</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When making a
* select request, do the following:</p> <ul> <li> <p>Define an output location for
- * the select query's output. This must be an Amazon S3 bucket in the same AWS
- * Region as the bucket that contains the archive object that is being queried. The
- * AWS account that initiates the job must have permissions to write to the S3
- * bucket. You can specify the storage class and encryption for the output objects
- * stored in the bucket. For more information about output, see <a
+ * the select query's output. This must be an Amazon S3 bucket in the same Amazon
+ * Web Services Region as the bucket that contains the archive object that is being
+ * queried. The Amazon Web Services account that initiates the job must have
+ * permissions to write to the S3 bucket. You can specify the storage class and
+ * encryption for the output objects stored in the bucket. For more information
+ * about output, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/querying-glacier-archives.html">Querying
* Archived Objects</a> in the <i>Amazon S3 User Guide</i>.</p> <p>For more
* information about the <code>S3</code> structure in the request body, see the
@@ -9726,33 +4925,33 @@ namespace Aws
* version ID. If you don't provide a version ID, Amazon S3 restores the current
* version.</p> <p>When restoring an archived object (or using a select request),
* you can specify one of the following data access tier options in the
- * <code>Tier</code> element of the request body: </p> <ul> <li> <p> <b>
- * <code>Expedited</code> </b> - Expedited retrievals allow you to quickly access
- * your data stored in the S3 Glacier storage class or S3 Intelligent-Tiering
- * Archive tier when occasional urgent requests for a subset of archives are
- * required. For all but the largest archived objects (250 MB+), data accessed
- * using Expedited retrievals is typically made available within 1–5 minutes.
- * Provisioned capacity ensures that retrieval capacity for Expedited retrievals is
- * available when you need it. Expedited retrievals and provisioned capacity are
- * not available for objects stored in the S3 Glacier Deep Archive storage class or
- * S3 Intelligent-Tiering Deep Archive tier.</p> </li> <li> <p> <b>
- * <code>Standard</code> </b> - Standard retrievals allow you to access any of your
- * archived objects within several hours. This is the default option for retrieval
- * requests that do not specify the retrieval option. Standard retrievals typically
- * finish within 3–5 hours for objects stored in the S3 Glacier storage class or S3
+ * <code>Tier</code> element of the request body: </p> <ul> <li> <p>
+ * <code>Expedited</code> - Expedited retrievals allow you to quickly access your
+ * data stored in the S3 Glacier storage class or S3 Intelligent-Tiering Archive
+ * tier when occasional urgent requests for a subset of archives are required. For
+ * all but the largest archived objects (250 MB+), data accessed using Expedited
+ * retrievals is typically made available within 1–5 minutes. Provisioned capacity
+ * ensures that retrieval capacity for Expedited retrievals is available when you
+ * need it. Expedited retrievals and provisioned capacity are not available for
+ * objects stored in the S3 Glacier Deep Archive storage class or S3
+ * Intelligent-Tiering Deep Archive tier.</p> </li> <li> <p> <code>Standard</code>
+ * - Standard retrievals allow you to access any of your archived objects within
+ * several hours. This is the default option for retrieval requests that do not
+ * specify the retrieval option. Standard retrievals typically finish within 3–5
+ * hours for objects stored in the S3 Glacier storage class or S3
* Intelligent-Tiering Archive tier. They typically finish within 12 hours for
* objects stored in the S3 Glacier Deep Archive storage class or S3
* Intelligent-Tiering Deep Archive tier. Standard retrievals are free for objects
- * stored in S3 Intelligent-Tiering.</p> </li> <li> <p> <b> <code>Bulk</code> </b>
- * - Bulk retrievals are the lowest-cost retrieval option in S3 Glacier, enabling
- * you to retrieve large amounts, even petabytes, of data inexpensively. Bulk
- * retrievals typically finish within 5–12 hours for objects stored in the S3
- * Glacier storage class or S3 Intelligent-Tiering Archive tier. They typically
- * finish within 48 hours for objects stored in the S3 Glacier Deep Archive storage
- * class or S3 Intelligent-Tiering Deep Archive tier. Bulk retrievals are free for
- * objects stored in S3 Intelligent-Tiering.</p> </li> </ul> <p>For more
- * information about archive retrieval options and provisioned capacity for
- * <code>Expedited</code> data access, see <a
+ * stored in S3 Intelligent-Tiering.</p> </li> <li> <p> <code>Bulk</code> - Bulk
+ * retrievals are the lowest-cost retrieval option in S3 Glacier, enabling you to
+ * retrieve large amounts, even petabytes, of data inexpensively. Bulk retrievals
+ * typically finish within 5–12 hours for objects stored in the S3 Glacier storage
+ * class or S3 Intelligent-Tiering Archive tier. They typically finish within 48
+ * hours for objects stored in the S3 Glacier Deep Archive storage class or S3
+ * Intelligent-Tiering Deep Archive tier. Bulk retrievals are free for objects
+ * stored in S3 Intelligent-Tiering.</p> </li> </ul> <p>For more information about
+ * archive retrieval options and provisioned capacity for <code>Expedited</code>
+ * data access, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html">Restoring
* Archived Objects</a> in the <i>Amazon S3 User Guide</i>. </p> <p>You can use
* Amazon S3 restore speed upgrade to change the restore speed to a faster speed
@@ -9810,336 +5009,22 @@ namespace Aws
virtual Model::RestoreObjectOutcome RestoreObject(const Model::RestoreObjectRequest& request) const;
/**
- * <p>Restores an archived copy of an object back into Amazon S3</p> <p>This action
- * is not supported by Amazon S3 on Outposts.</p> <p>This action performs the
- * following types of requests: </p> <ul> <li> <p> <code>select</code> - Perform a
- * select query on an archived object</p> </li> <li> <p> <code>restore an
- * archive</code> - Restore an archived object</p> </li> </ul> <p>To use this
- * operation, you must have permissions to perform the
- * <code>s3:RestoreObject</code> action. The bucket owner has this permission by
- * default and can grant this permission to others. For more information about
- * permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a> in the <i>Amazon S3 User
- * Guide</i>.</p> <p> <b>Querying Archives with Select Requests</b> </p> <p>You use
- * a select type of request to perform SQL queries on archived objects. The
- * archived objects that are being queried by the select request must be formatted
- * as uncompressed comma-separated values (CSV) files. You can run queries and
- * custom analytics on your archived data without having to restore your data to a
- * hotter Amazon S3 tier. For an overview about select requests, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/querying-glacier-archives.html">Querying
- * Archived Objects</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When making a
- * select request, do the following:</p> <ul> <li> <p>Define an output location for
- * the select query's output. This must be an Amazon S3 bucket in the same AWS
- * Region as the bucket that contains the archive object that is being queried. The
- * AWS account that initiates the job must have permissions to write to the S3
- * bucket. You can specify the storage class and encryption for the output objects
- * stored in the bucket. For more information about output, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/querying-glacier-archives.html">Querying
- * Archived Objects</a> in the <i>Amazon S3 User Guide</i>.</p> <p>For more
- * information about the <code>S3</code> structure in the request body, see the
- * following:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html">PutObject</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3_ACLs_UsingACLs.html">Managing
- * Access with ACLs</a> in the <i>Amazon S3 User Guide</i> </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html">Protecting
- * Data Using Server-Side Encryption</a> in the <i>Amazon S3 User Guide</i> </p>
- * </li> </ul> </li> <li> <p>Define the SQL expression for the <code>SELECT</code>
- * type of restoration for your query in the request body's
- * <code>SelectParameters</code> structure. You can use expressions like the
- * following examples.</p> <ul> <li> <p>The following expression returns all
- * records from the specified object.</p> <p> <code>SELECT * FROM Object</code>
- * </p> </li> <li> <p>Assuming that you are not using any headers for data stored
- * in the object, you can specify columns with positional headers.</p> <p>
- * <code>SELECT s._1, s._2 FROM Object s WHERE s._3 &gt; 100</code> </p> </li> <li>
- * <p>If you have headers and you set the <code>fileHeaderInfo</code> in the
- * <code>CSV</code> structure in the request body to <code>USE</code>, you can
- * specify headers in the query. (If you set the <code>fileHeaderInfo</code> field
- * to <code>IGNORE</code>, the first row is skipped for the query.) You cannot mix
- * ordinal positions with header column names. </p> <p> <code>SELECT s.Id,
- * s.FirstName, s.SSN FROM S3Object s</code> </p> </li> </ul> </li> </ul> <p>For
- * more information about using SQL with S3 Glacier Select restore, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-glacier-select-sql-reference.html">SQL
- * Reference for Amazon S3 Select and S3 Glacier Select</a> in the <i>Amazon S3
- * User Guide</i>. </p> <p>When making a select request, you can also do the
- * following:</p> <ul> <li> <p>To expedite your queries, specify the
- * <code>Expedited</code> tier. For more information about tiers, see "Restoring
- * Archives," later in this topic.</p> </li> <li> <p>Specify details about the data
- * serialization format of both the input object that is being queried and the
- * serialization of the CSV-encoded query results.</p> </li> </ul> <p>The following
- * are additional important facts about the select feature:</p> <ul> <li> <p>The
- * output results are new Amazon S3 objects. Unlike archive retrievals, they are
- * stored until explicitly deleted-manually or through a lifecycle policy.</p>
- * </li> <li> <p>You can issue more than one select request on the same Amazon S3
- * object. Amazon S3 doesn't deduplicate requests, so avoid issuing duplicate
- * requests.</p> </li> <li> <p> Amazon S3 accepts a select request even if the
- * object has already been restored. A select request doesn’t return error response
- * <code>409</code>.</p> </li> </ul> <p> <b>Restoring objects</b> </p> <p>Objects
- * that you archive to the S3 Glacier or S3 Glacier Deep Archive storage class, and
- * S3 Intelligent-Tiering Archive or S3 Intelligent-Tiering Deep Archive tiers are
- * not accessible in real time. For objects in Archive Access or Deep Archive
- * Access tiers you must first initiate a restore request, and then wait until the
- * object is moved into the Frequent Access tier. For objects in S3 Glacier or S3
- * Glacier Deep Archive storage classes you must first initiate a restore request,
- * and then wait until a temporary copy of the object is available. To access an
- * archived object, you must restore the object for the duration (number of days)
- * that you specify.</p> <p>To restore a specific object version, you can provide a
- * version ID. If you don't provide a version ID, Amazon S3 restores the current
- * version.</p> <p>When restoring an archived object (or using a select request),
- * you can specify one of the following data access tier options in the
- * <code>Tier</code> element of the request body: </p> <ul> <li> <p> <b>
- * <code>Expedited</code> </b> - Expedited retrievals allow you to quickly access
- * your data stored in the S3 Glacier storage class or S3 Intelligent-Tiering
- * Archive tier when occasional urgent requests for a subset of archives are
- * required. For all but the largest archived objects (250 MB+), data accessed
- * using Expedited retrievals is typically made available within 1–5 minutes.
- * Provisioned capacity ensures that retrieval capacity for Expedited retrievals is
- * available when you need it. Expedited retrievals and provisioned capacity are
- * not available for objects stored in the S3 Glacier Deep Archive storage class or
- * S3 Intelligent-Tiering Deep Archive tier.</p> </li> <li> <p> <b>
- * <code>Standard</code> </b> - Standard retrievals allow you to access any of your
- * archived objects within several hours. This is the default option for retrieval
- * requests that do not specify the retrieval option. Standard retrievals typically
- * finish within 3–5 hours for objects stored in the S3 Glacier storage class or S3
- * Intelligent-Tiering Archive tier. They typically finish within 12 hours for
- * objects stored in the S3 Glacier Deep Archive storage class or S3
- * Intelligent-Tiering Deep Archive tier. Standard retrievals are free for objects
- * stored in S3 Intelligent-Tiering.</p> </li> <li> <p> <b> <code>Bulk</code> </b>
- * - Bulk retrievals are the lowest-cost retrieval option in S3 Glacier, enabling
- * you to retrieve large amounts, even petabytes, of data inexpensively. Bulk
- * retrievals typically finish within 5–12 hours for objects stored in the S3
- * Glacier storage class or S3 Intelligent-Tiering Archive tier. They typically
- * finish within 48 hours for objects stored in the S3 Glacier Deep Archive storage
- * class or S3 Intelligent-Tiering Deep Archive tier. Bulk retrievals are free for
- * objects stored in S3 Intelligent-Tiering.</p> </li> </ul> <p>For more
- * information about archive retrieval options and provisioned capacity for
- * <code>Expedited</code> data access, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html">Restoring
- * Archived Objects</a> in the <i>Amazon S3 User Guide</i>. </p> <p>You can use
- * Amazon S3 restore speed upgrade to change the restore speed to a faster speed
- * while it is in progress. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html#restoring-objects-upgrade-tier.title.html">
- * Upgrading the speed of an in-progress restore</a> in the <i>Amazon S3 User
- * Guide</i>. </p> <p>To get the status of object restoration, you can send a
- * <code>HEAD</code> request. Operations return the <code>x-amz-restore</code>
- * header, which provides information about the restoration status, in the
- * response. You can use Amazon S3 event notifications to notify you when a restore
- * is initiated or completed. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Configuring
- * Amazon S3 Event Notifications</a> in the <i>Amazon S3 User Guide</i>.</p>
- * <p>After restoring an archived object, you can update the restoration period by
- * reissuing the request with a new period. Amazon S3 updates the restoration
- * period relative to the current time and charges only for the request-there are
- * no data transfer charges. You cannot update the restoration period when Amazon
- * S3 is actively processing your current restore request for the object.</p> <p>If
- * your bucket has a lifecycle configuration with a rule that includes an
- * expiration action, the object expiration overrides the life span that you
- * specify in a restore request. For example, if you restore an object copy for 10
- * days, but the object is scheduled to expire in 3 days, Amazon S3 deletes the
- * object in 3 days. For more information about lifecycle configuration, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html">PutBucketLifecycleConfiguration</a>
- * and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html">Object
- * Lifecycle Management</a> in <i>Amazon S3 User Guide</i>.</p> <p>
- * <b>Responses</b> </p> <p>A successful action returns either the <code>200
- * OK</code> or <code>202 Accepted</code> status code. </p> <ul> <li> <p>If the
- * object is not previously restored, then Amazon S3 returns <code>202
- * Accepted</code> in the response. </p> </li> <li> <p>If the object is previously
- * restored, Amazon S3 returns <code>200 OK</code> in the response. </p> </li>
- * </ul> <p class="title"> <b>Special Errors</b> </p> <ul> <li> <ul> <li> <p>
- * <i>Code: RestoreAlreadyInProgress</i> </p> </li> <li> <p> <i>Cause: Object
- * restore is already in progress. (This error does not apply to SELECT type
- * requests.)</i> </p> </li> <li> <p> <i>HTTP Status Code: 409 Conflict</i> </p>
- * </li> <li> <p> <i>SOAP Fault Code Prefix: Client</i> </p> </li> </ul> </li> <li>
- * <ul> <li> <p> <i>Code: GlacierExpeditedRetrievalNotAvailable</i> </p> </li> <li>
- * <p> <i>Cause: expedited retrievals are currently not available. Try again later.
- * (Returned if there is insufficient capacity to process the Expedited request.
- * This error applies only to Expedited retrievals and not to S3 Standard or Bulk
- * retrievals.)</i> </p> </li> <li> <p> <i>HTTP Status Code: 503</i> </p> </li>
- * <li> <p> <i>SOAP Fault Code Prefix: N/A</i> </p> </li> </ul> </li> </ul> <p
- * class="title"> <b>Related Resources</b> </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html">PutBucketLifecycleConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketNotificationConfiguration.html">GetBucketNotificationConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-glacier-select-sql-reference.html">SQL
- * Reference for Amazon S3 Select and S3 Glacier Select </a> in the <i>Amazon S3
- * User Guide</i> </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/RestoreObject">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for RestoreObject that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::RestoreObjectOutcomeCallable RestoreObjectCallable(const Model::RestoreObjectRequest& request) const;
+ template<typename RestoreObjectRequestT = Model::RestoreObjectRequest>
+ Model::RestoreObjectOutcomeCallable RestoreObjectCallable(const RestoreObjectRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::RestoreObject, request);
+ }
/**
- * <p>Restores an archived copy of an object back into Amazon S3</p> <p>This action
- * is not supported by Amazon S3 on Outposts.</p> <p>This action performs the
- * following types of requests: </p> <ul> <li> <p> <code>select</code> - Perform a
- * select query on an archived object</p> </li> <li> <p> <code>restore an
- * archive</code> - Restore an archived object</p> </li> </ul> <p>To use this
- * operation, you must have permissions to perform the
- * <code>s3:RestoreObject</code> action. The bucket owner has this permission by
- * default and can grant this permission to others. For more information about
- * permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-bucket-subresources">Permissions
- * Related to Bucket Subresource Operations</a> and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html">Managing
- * Access Permissions to Your Amazon S3 Resources</a> in the <i>Amazon S3 User
- * Guide</i>.</p> <p> <b>Querying Archives with Select Requests</b> </p> <p>You use
- * a select type of request to perform SQL queries on archived objects. The
- * archived objects that are being queried by the select request must be formatted
- * as uncompressed comma-separated values (CSV) files. You can run queries and
- * custom analytics on your archived data without having to restore your data to a
- * hotter Amazon S3 tier. For an overview about select requests, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/querying-glacier-archives.html">Querying
- * Archived Objects</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When making a
- * select request, do the following:</p> <ul> <li> <p>Define an output location for
- * the select query's output. This must be an Amazon S3 bucket in the same AWS
- * Region as the bucket that contains the archive object that is being queried. The
- * AWS account that initiates the job must have permissions to write to the S3
- * bucket. You can specify the storage class and encryption for the output objects
- * stored in the bucket. For more information about output, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/querying-glacier-archives.html">Querying
- * Archived Objects</a> in the <i>Amazon S3 User Guide</i>.</p> <p>For more
- * information about the <code>S3</code> structure in the request body, see the
- * following:</p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html">PutObject</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/S3_ACLs_UsingACLs.html">Managing
- * Access with ACLs</a> in the <i>Amazon S3 User Guide</i> </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html">Protecting
- * Data Using Server-Side Encryption</a> in the <i>Amazon S3 User Guide</i> </p>
- * </li> </ul> </li> <li> <p>Define the SQL expression for the <code>SELECT</code>
- * type of restoration for your query in the request body's
- * <code>SelectParameters</code> structure. You can use expressions like the
- * following examples.</p> <ul> <li> <p>The following expression returns all
- * records from the specified object.</p> <p> <code>SELECT * FROM Object</code>
- * </p> </li> <li> <p>Assuming that you are not using any headers for data stored
- * in the object, you can specify columns with positional headers.</p> <p>
- * <code>SELECT s._1, s._2 FROM Object s WHERE s._3 &gt; 100</code> </p> </li> <li>
- * <p>If you have headers and you set the <code>fileHeaderInfo</code> in the
- * <code>CSV</code> structure in the request body to <code>USE</code>, you can
- * specify headers in the query. (If you set the <code>fileHeaderInfo</code> field
- * to <code>IGNORE</code>, the first row is skipped for the query.) You cannot mix
- * ordinal positions with header column names. </p> <p> <code>SELECT s.Id,
- * s.FirstName, s.SSN FROM S3Object s</code> </p> </li> </ul> </li> </ul> <p>For
- * more information about using SQL with S3 Glacier Select restore, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-glacier-select-sql-reference.html">SQL
- * Reference for Amazon S3 Select and S3 Glacier Select</a> in the <i>Amazon S3
- * User Guide</i>. </p> <p>When making a select request, you can also do the
- * following:</p> <ul> <li> <p>To expedite your queries, specify the
- * <code>Expedited</code> tier. For more information about tiers, see "Restoring
- * Archives," later in this topic.</p> </li> <li> <p>Specify details about the data
- * serialization format of both the input object that is being queried and the
- * serialization of the CSV-encoded query results.</p> </li> </ul> <p>The following
- * are additional important facts about the select feature:</p> <ul> <li> <p>The
- * output results are new Amazon S3 objects. Unlike archive retrievals, they are
- * stored until explicitly deleted-manually or through a lifecycle policy.</p>
- * </li> <li> <p>You can issue more than one select request on the same Amazon S3
- * object. Amazon S3 doesn't deduplicate requests, so avoid issuing duplicate
- * requests.</p> </li> <li> <p> Amazon S3 accepts a select request even if the
- * object has already been restored. A select request doesn’t return error response
- * <code>409</code>.</p> </li> </ul> <p> <b>Restoring objects</b> </p> <p>Objects
- * that you archive to the S3 Glacier or S3 Glacier Deep Archive storage class, and
- * S3 Intelligent-Tiering Archive or S3 Intelligent-Tiering Deep Archive tiers are
- * not accessible in real time. For objects in Archive Access or Deep Archive
- * Access tiers you must first initiate a restore request, and then wait until the
- * object is moved into the Frequent Access tier. For objects in S3 Glacier or S3
- * Glacier Deep Archive storage classes you must first initiate a restore request,
- * and then wait until a temporary copy of the object is available. To access an
- * archived object, you must restore the object for the duration (number of days)
- * that you specify.</p> <p>To restore a specific object version, you can provide a
- * version ID. If you don't provide a version ID, Amazon S3 restores the current
- * version.</p> <p>When restoring an archived object (or using a select request),
- * you can specify one of the following data access tier options in the
- * <code>Tier</code> element of the request body: </p> <ul> <li> <p> <b>
- * <code>Expedited</code> </b> - Expedited retrievals allow you to quickly access
- * your data stored in the S3 Glacier storage class or S3 Intelligent-Tiering
- * Archive tier when occasional urgent requests for a subset of archives are
- * required. For all but the largest archived objects (250 MB+), data accessed
- * using Expedited retrievals is typically made available within 1–5 minutes.
- * Provisioned capacity ensures that retrieval capacity for Expedited retrievals is
- * available when you need it. Expedited retrievals and provisioned capacity are
- * not available for objects stored in the S3 Glacier Deep Archive storage class or
- * S3 Intelligent-Tiering Deep Archive tier.</p> </li> <li> <p> <b>
- * <code>Standard</code> </b> - Standard retrievals allow you to access any of your
- * archived objects within several hours. This is the default option for retrieval
- * requests that do not specify the retrieval option. Standard retrievals typically
- * finish within 3–5 hours for objects stored in the S3 Glacier storage class or S3
- * Intelligent-Tiering Archive tier. They typically finish within 12 hours for
- * objects stored in the S3 Glacier Deep Archive storage class or S3
- * Intelligent-Tiering Deep Archive tier. Standard retrievals are free for objects
- * stored in S3 Intelligent-Tiering.</p> </li> <li> <p> <b> <code>Bulk</code> </b>
- * - Bulk retrievals are the lowest-cost retrieval option in S3 Glacier, enabling
- * you to retrieve large amounts, even petabytes, of data inexpensively. Bulk
- * retrievals typically finish within 5–12 hours for objects stored in the S3
- * Glacier storage class or S3 Intelligent-Tiering Archive tier. They typically
- * finish within 48 hours for objects stored in the S3 Glacier Deep Archive storage
- * class or S3 Intelligent-Tiering Deep Archive tier. Bulk retrievals are free for
- * objects stored in S3 Intelligent-Tiering.</p> </li> </ul> <p>For more
- * information about archive retrieval options and provisioned capacity for
- * <code>Expedited</code> data access, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html">Restoring
- * Archived Objects</a> in the <i>Amazon S3 User Guide</i>. </p> <p>You can use
- * Amazon S3 restore speed upgrade to change the restore speed to a faster speed
- * while it is in progress. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html#restoring-objects-upgrade-tier.title.html">
- * Upgrading the speed of an in-progress restore</a> in the <i>Amazon S3 User
- * Guide</i>. </p> <p>To get the status of object restoration, you can send a
- * <code>HEAD</code> request. Operations return the <code>x-amz-restore</code>
- * header, which provides information about the restoration status, in the
- * response. You can use Amazon S3 event notifications to notify you when a restore
- * is initiated or completed. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Configuring
- * Amazon S3 Event Notifications</a> in the <i>Amazon S3 User Guide</i>.</p>
- * <p>After restoring an archived object, you can update the restoration period by
- * reissuing the request with a new period. Amazon S3 updates the restoration
- * period relative to the current time and charges only for the request-there are
- * no data transfer charges. You cannot update the restoration period when Amazon
- * S3 is actively processing your current restore request for the object.</p> <p>If
- * your bucket has a lifecycle configuration with a rule that includes an
- * expiration action, the object expiration overrides the life span that you
- * specify in a restore request. For example, if you restore an object copy for 10
- * days, but the object is scheduled to expire in 3 days, Amazon S3 deletes the
- * object in 3 days. For more information about lifecycle configuration, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html">PutBucketLifecycleConfiguration</a>
- * and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html">Object
- * Lifecycle Management</a> in <i>Amazon S3 User Guide</i>.</p> <p>
- * <b>Responses</b> </p> <p>A successful action returns either the <code>200
- * OK</code> or <code>202 Accepted</code> status code. </p> <ul> <li> <p>If the
- * object is not previously restored, then Amazon S3 returns <code>202
- * Accepted</code> in the response. </p> </li> <li> <p>If the object is previously
- * restored, Amazon S3 returns <code>200 OK</code> in the response. </p> </li>
- * </ul> <p class="title"> <b>Special Errors</b> </p> <ul> <li> <ul> <li> <p>
- * <i>Code: RestoreAlreadyInProgress</i> </p> </li> <li> <p> <i>Cause: Object
- * restore is already in progress. (This error does not apply to SELECT type
- * requests.)</i> </p> </li> <li> <p> <i>HTTP Status Code: 409 Conflict</i> </p>
- * </li> <li> <p> <i>SOAP Fault Code Prefix: Client</i> </p> </li> </ul> </li> <li>
- * <ul> <li> <p> <i>Code: GlacierExpeditedRetrievalNotAvailable</i> </p> </li> <li>
- * <p> <i>Cause: expedited retrievals are currently not available. Try again later.
- * (Returned if there is insufficient capacity to process the Expedited request.
- * This error applies only to Expedited retrievals and not to S3 Standard or Bulk
- * retrievals.)</i> </p> </li> <li> <p> <i>HTTP Status Code: 503</i> </p> </li>
- * <li> <p> <i>SOAP Fault Code Prefix: N/A</i> </p> </li> </ul> </li> </ul> <p
- * class="title"> <b>Related Resources</b> </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html">PutBucketLifecycleConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketNotificationConfiguration.html">GetBucketNotificationConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-glacier-select-sql-reference.html">SQL
- * Reference for Amazon S3 Select and S3 Glacier Select </a> in the <i>Amazon S3
- * User Guide</i> </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/RestoreObject">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for RestoreObject that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void RestoreObjectAsync(const Model::RestoreObjectRequest& request, const RestoreObjectResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename RestoreObjectRequestT = Model::RestoreObjectRequest>
+ void RestoreObjectAsync(const RestoreObjectRequestT& request, const RestoreObjectResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::RestoreObject, request, handler, context);
+ }
/**
* <p>This action filters the contents of an Amazon S3 object based on a simple
@@ -10151,8 +5036,10 @@ namespace Aws
* <p>This action is not supported by Amazon S3 on Outposts.</p> <p>For more
* information about Amazon S3 Select, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/selecting-content-from-objects.html">Selecting
- * Content from Objects</a> in the <i>Amazon S3 User Guide</i>.</p> <p>For more
- * information about using SQL with Amazon S3 Select, see <a
+ * Content from Objects</a> and <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-glacier-select-sql-reference-select.html">SELECT
+ * Command</a> in the <i>Amazon S3 User Guide</i>.</p> <p>For more information
+ * about using SQL with Amazon S3 Select, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-glacier-select-sql-reference.html">
* SQL Reference for Amazon S3 Select and S3 Glacier Select</a> in the <i>Amazon S3
* User Guide</i>.</p> <p/> <p> <b>Permissions</b> </p> <p>You must have
@@ -10178,10 +5065,10 @@ namespace Aws
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side
* Encryption (Using Customer-Provided Encryption Keys)</a> in the <i>Amazon S3
* User Guide</i>.</p> <p>For objects that are encrypted with Amazon S3 managed
- * encryption keys (SSE-S3) and customer master keys (CMKs) stored in AWS Key
- * Management Service (SSE-KMS), server-side encryption is handled transparently,
- * so you don't need to specify anything. For more information about server-side
- * encryption, including SSE-S3 and SSE-KMS, see <a
+ * encryption keys (SSE-S3) and Amazon Web Services KMS keys (SSE-KMS), server-side
+ * encryption is handled transparently, so you don't need to specify anything. For
+ * more information about server-side encryption, including SSE-S3 and SSE-KMS, see
+ * <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html">Protecting
* Data Using Server-Side Encryption</a> in the <i>Amazon S3 User Guide</i>.</p>
* </li> </ul> <p> <b>Working with the Response Body</b> </p> <p>Given the response
@@ -10189,7 +5076,7 @@ namespace Aws
* and includes a <code>Transfer-Encoding</code> header with <code>chunked</code>
* as its value in the response. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTSelectObjectAppendix.html">Appendix:
- * SelectObjectContent Response</a> .</p> <p/> <p> <b>GetObject Support</b> </p>
+ * SelectObjectContent Response</a>.</p> <p/> <p> <b>GetObject Support</b> </p>
* <p>The <code>SelectObjectContent</code> action does not support the following
* <code>GetObject</code> functionality. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>.</p>
@@ -10220,164 +5107,22 @@ namespace Aws
virtual Model::SelectObjectContentOutcome SelectObjectContent(Model::SelectObjectContentRequest& request) const;
/**
- * <p>This action filters the contents of an Amazon S3 object based on a simple
- * structured query language (SQL) statement. In the request, along with the SQL
- * expression, you must also specify a data serialization format (JSON, CSV, or
- * Apache Parquet) of the object. Amazon S3 uses this format to parse object data
- * into records, and returns only records that match the specified SQL expression.
- * You must also specify the data serialization format for the response.</p>
- * <p>This action is not supported by Amazon S3 on Outposts.</p> <p>For more
- * information about Amazon S3 Select, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/selecting-content-from-objects.html">Selecting
- * Content from Objects</a> in the <i>Amazon S3 User Guide</i>.</p> <p>For more
- * information about using SQL with Amazon S3 Select, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-glacier-select-sql-reference.html">
- * SQL Reference for Amazon S3 Select and S3 Glacier Select</a> in the <i>Amazon S3
- * User Guide</i>.</p> <p/> <p> <b>Permissions</b> </p> <p>You must have
- * <code>s3:GetObject</code> permission for this operation. Amazon S3 Select does
- * not support anonymous access. For more information about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying
- * Permissions in a Policy</a> in the <i>Amazon S3 User Guide</i>.</p> <p/> <p>
- * <i>Object Data Formats</i> </p> <p>You can use Amazon S3 Select to query objects
- * that have the following format properties:</p> <ul> <li> <p> <i>CSV, JSON, and
- * Parquet</i> - Objects must be in CSV, JSON, or Parquet format.</p> </li> <li>
- * <p> <i>UTF-8</i> - UTF-8 is the only encoding type Amazon S3 Select
- * supports.</p> </li> <li> <p> <i>GZIP or BZIP2</i> - CSV and JSON files can be
- * compressed using GZIP or BZIP2. GZIP and BZIP2 are the only compression formats
- * that Amazon S3 Select supports for CSV and JSON files. Amazon S3 Select supports
- * columnar compression for Parquet using GZIP or Snappy. Amazon S3 Select does not
- * support whole-object compression for Parquet objects.</p> </li> <li> <p>
- * <i>Server-side encryption</i> - Amazon S3 Select supports querying objects that
- * are protected with server-side encryption.</p> <p>For objects that are encrypted
- * with customer-provided encryption keys (SSE-C), you must use HTTPS, and you must
- * use the headers that are documented in the <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>.
- * For more information about SSE-C, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side
- * Encryption (Using Customer-Provided Encryption Keys)</a> in the <i>Amazon S3
- * User Guide</i>.</p> <p>For objects that are encrypted with Amazon S3 managed
- * encryption keys (SSE-S3) and customer master keys (CMKs) stored in AWS Key
- * Management Service (SSE-KMS), server-side encryption is handled transparently,
- * so you don't need to specify anything. For more information about server-side
- * encryption, including SSE-S3 and SSE-KMS, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html">Protecting
- * Data Using Server-Side Encryption</a> in the <i>Amazon S3 User Guide</i>.</p>
- * </li> </ul> <p> <b>Working with the Response Body</b> </p> <p>Given the response
- * size is unknown, Amazon S3 Select streams the response as a series of messages
- * and includes a <code>Transfer-Encoding</code> header with <code>chunked</code>
- * as its value in the response. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTSelectObjectAppendix.html">Appendix:
- * SelectObjectContent Response</a> .</p> <p/> <p> <b>GetObject Support</b> </p>
- * <p>The <code>SelectObjectContent</code> action does not support the following
- * <code>GetObject</code> functionality. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>.</p>
- * <ul> <li> <p> <code>Range</code>: Although you can specify a scan range for an
- * Amazon S3 Select request (see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_SelectObjectContent.html#AmazonS3-SelectObjectContent-request-ScanRange">SelectObjectContentRequest
- * - ScanRange</a> in the request parameters), you cannot specify the range of
- * bytes of an object to return. </p> </li> <li> <p>GLACIER, DEEP_ARCHIVE and
- * REDUCED_REDUNDANCY storage classes: You cannot specify the GLACIER,
- * DEEP_ARCHIVE, or <code>REDUCED_REDUNDANCY</code> storage classes. For more
- * information, about storage classes see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#storage-class-intro">Storage
- * Classes</a> in the <i>Amazon S3 User Guide</i>.</p> </li> </ul> <p/> <p>
- * <b>Special Errors</b> </p> <p>For a list of special errors for this operation,
- * see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#SelectObjectContentErrorCodeList">List
- * of SELECT Object Content Error Codes</a> </p> <p class="title"> <b>Related
- * Resources</b> </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycleConfiguration.html">GetBucketLifecycleConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html">PutBucketLifecycleConfiguration</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/SelectObjectContent">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for SelectObjectContent that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::SelectObjectContentOutcomeCallable SelectObjectContentCallable(Model::SelectObjectContentRequest& request) const;
+ template<typename SelectObjectContentRequestT = Model::SelectObjectContentRequest>
+ Model::SelectObjectContentOutcomeCallable SelectObjectContentCallable(SelectObjectContentRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::SelectObjectContent, request);
+ }
/**
- * <p>This action filters the contents of an Amazon S3 object based on a simple
- * structured query language (SQL) statement. In the request, along with the SQL
- * expression, you must also specify a data serialization format (JSON, CSV, or
- * Apache Parquet) of the object. Amazon S3 uses this format to parse object data
- * into records, and returns only records that match the specified SQL expression.
- * You must also specify the data serialization format for the response.</p>
- * <p>This action is not supported by Amazon S3 on Outposts.</p> <p>For more
- * information about Amazon S3 Select, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/selecting-content-from-objects.html">Selecting
- * Content from Objects</a> in the <i>Amazon S3 User Guide</i>.</p> <p>For more
- * information about using SQL with Amazon S3 Select, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-glacier-select-sql-reference.html">
- * SQL Reference for Amazon S3 Select and S3 Glacier Select</a> in the <i>Amazon S3
- * User Guide</i>.</p> <p/> <p> <b>Permissions</b> </p> <p>You must have
- * <code>s3:GetObject</code> permission for this operation. Amazon S3 Select does
- * not support anonymous access. For more information about permissions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying
- * Permissions in a Policy</a> in the <i>Amazon S3 User Guide</i>.</p> <p/> <p>
- * <i>Object Data Formats</i> </p> <p>You can use Amazon S3 Select to query objects
- * that have the following format properties:</p> <ul> <li> <p> <i>CSV, JSON, and
- * Parquet</i> - Objects must be in CSV, JSON, or Parquet format.</p> </li> <li>
- * <p> <i>UTF-8</i> - UTF-8 is the only encoding type Amazon S3 Select
- * supports.</p> </li> <li> <p> <i>GZIP or BZIP2</i> - CSV and JSON files can be
- * compressed using GZIP or BZIP2. GZIP and BZIP2 are the only compression formats
- * that Amazon S3 Select supports for CSV and JSON files. Amazon S3 Select supports
- * columnar compression for Parquet using GZIP or Snappy. Amazon S3 Select does not
- * support whole-object compression for Parquet objects.</p> </li> <li> <p>
- * <i>Server-side encryption</i> - Amazon S3 Select supports querying objects that
- * are protected with server-side encryption.</p> <p>For objects that are encrypted
- * with customer-provided encryption keys (SSE-C), you must use HTTPS, and you must
- * use the headers that are documented in the <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>.
- * For more information about SSE-C, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side
- * Encryption (Using Customer-Provided Encryption Keys)</a> in the <i>Amazon S3
- * User Guide</i>.</p> <p>For objects that are encrypted with Amazon S3 managed
- * encryption keys (SSE-S3) and customer master keys (CMKs) stored in AWS Key
- * Management Service (SSE-KMS), server-side encryption is handled transparently,
- * so you don't need to specify anything. For more information about server-side
- * encryption, including SSE-S3 and SSE-KMS, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html">Protecting
- * Data Using Server-Side Encryption</a> in the <i>Amazon S3 User Guide</i>.</p>
- * </li> </ul> <p> <b>Working with the Response Body</b> </p> <p>Given the response
- * size is unknown, Amazon S3 Select streams the response as a series of messages
- * and includes a <code>Transfer-Encoding</code> header with <code>chunked</code>
- * as its value in the response. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTSelectObjectAppendix.html">Appendix:
- * SelectObjectContent Response</a> .</p> <p/> <p> <b>GetObject Support</b> </p>
- * <p>The <code>SelectObjectContent</code> action does not support the following
- * <code>GetObject</code> functionality. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>.</p>
- * <ul> <li> <p> <code>Range</code>: Although you can specify a scan range for an
- * Amazon S3 Select request (see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_SelectObjectContent.html#AmazonS3-SelectObjectContent-request-ScanRange">SelectObjectContentRequest
- * - ScanRange</a> in the request parameters), you cannot specify the range of
- * bytes of an object to return. </p> </li> <li> <p>GLACIER, DEEP_ARCHIVE and
- * REDUCED_REDUNDANCY storage classes: You cannot specify the GLACIER,
- * DEEP_ARCHIVE, or <code>REDUCED_REDUNDANCY</code> storage classes. For more
- * information, about storage classes see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#storage-class-intro">Storage
- * Classes</a> in the <i>Amazon S3 User Guide</i>.</p> </li> </ul> <p/> <p>
- * <b>Special Errors</b> </p> <p>For a list of special errors for this operation,
- * see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#SelectObjectContentErrorCodeList">List
- * of SELECT Object Content Error Codes</a> </p> <p class="title"> <b>Related
- * Resources</b> </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycleConfiguration.html">GetBucketLifecycleConfiguration</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html">PutBucketLifecycleConfiguration</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/SelectObjectContent">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for SelectObjectContent that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void SelectObjectContentAsync(Model::SelectObjectContentRequest& request, const SelectObjectContentResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename SelectObjectContentRequestT = Model::SelectObjectContentRequest>
+ void SelectObjectContentAsync(SelectObjectContentRequestT& request, const SelectObjectContentResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::SelectObjectContent, request, handler, context);
+ }
/**
* <p>Uploads a part in a multipart upload.</p> <p>In this operation, you
@@ -10392,23 +5137,25 @@ namespace Aws
* part request.</p> <p>Part numbers can be any number from 1 to 10,000, inclusive.
* A part number uniquely identifies a part and also defines its position within
* the object being created. If you upload a new part using the same part number
- * that was used with a previous part, the previously uploaded part is overwritten.
- * Each part must be at least 5 MB in size, except the last part. There is no size
- * limit on the last part of your multipart upload.</p> <p>To ensure that data is
- * not corrupted when traversing the network, specify the <code>Content-MD5</code>
- * header in the upload part request. Amazon S3 checks the part data against the
- * provided MD5 value. If they do not match, Amazon S3 returns an error. </p> <p>If
- * the upload request is signed with Signature Version 4, then AWS S3 uses the
- * <code>x-amz-content-sha256</code> header as a checksum instead of
- * <code>Content-MD5</code>. For more information see <a
+ * that was used with a previous part, the previously uploaded part is
+ * overwritten.</p> <p>For information about maximum and minimum part sizes and
+ * other multipart upload specifications, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/qfacts.html">Multipart
+ * upload limits</a> in the <i>Amazon S3 User Guide</i>.</p> <p>To ensure that data
+ * is not corrupted when traversing the network, specify the
+ * <code>Content-MD5</code> header in the upload part request. Amazon S3 checks the
+ * part data against the provided MD5 value. If they do not match, Amazon S3
+ * returns an error. </p> <p>If the upload request is signed with Signature Version
+ * 4, then Amazon Web Services S3 uses the <code>x-amz-content-sha256</code> header
+ * as a checksum instead of <code>Content-MD5</code>. For more information see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-auth-using-authorization-header.html">Authenticating
- * Requests: Using the Authorization Header (AWS Signature Version 4)</a>. </p> <p>
- * <b>Note:</b> After you initiate multipart upload and upload one or more parts,
- * you must either complete or abort multipart upload in order to stop getting
- * charged for storage of the uploaded parts. Only after you either complete or
- * abort multipart upload, Amazon S3 frees up the parts storage and stops charging
- * you for the parts storage.</p> <p>For more information on multipart uploads, go
- * to <a
+ * Requests: Using the Authorization Header (Amazon Web Services Signature Version
+ * 4)</a>. </p> <p> <b>Note:</b> After you initiate multipart upload and upload one
+ * or more parts, you must either complete or abort multipart upload in order to
+ * stop getting charged for storage of the uploaded parts. Only after you either
+ * complete or abort multipart upload, Amazon S3 frees up the parts storage and
+ * stops charging you for the parts storage.</p> <p>For more information on
+ * multipart uploads, go to <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html">Multipart
* Upload Overview</a> in the <i>Amazon S3 User Guide </i>.</p> <p>For information
* on the permissions required to use the multipart upload API, go to <a
@@ -10417,9 +5164,9 @@ namespace Aws
* optionally request server-side encryption where Amazon S3 encrypts your data as
* it writes it to disks in its data centers and decrypts it for you when you
* access it. You have the option of providing your own encryption key, or you can
- * use the AWS managed encryption keys. If you choose to provide your own
- * encryption key, the request headers you provide in the request must match the
- * headers you used in the request to initiate the upload by using <a
+ * use the Amazon Web Services managed encryption keys. If you choose to provide
+ * your own encryption key, the request headers you provide in the request must
+ * match the headers you used in the request to initiate the upload by using <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html">CreateMultipartUpload</a>.
* For more information, go to <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html">Using
@@ -10459,177 +5206,33 @@ namespace Aws
virtual Model::UploadPartOutcome UploadPart(const Model::UploadPartRequest& request) const;
/**
- * <p>Uploads a part in a multipart upload.</p> <p>In this operation, you
- * provide part data in your request. However, you have an option to specify your
- * existing Amazon S3 object as a data source for the part you are uploading. To
- * upload a part from an existing object, you use the <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html">UploadPartCopy</a>
- * operation. </p> <p>You must initiate a multipart upload (see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html">CreateMultipartUpload</a>)
- * before you can upload any part. In response to your initiate request, Amazon S3
- * returns an upload ID, a unique identifier, that you must include in your upload
- * part request.</p> <p>Part numbers can be any number from 1 to 10,000, inclusive.
- * A part number uniquely identifies a part and also defines its position within
- * the object being created. If you upload a new part using the same part number
- * that was used with a previous part, the previously uploaded part is overwritten.
- * Each part must be at least 5 MB in size, except the last part. There is no size
- * limit on the last part of your multipart upload.</p> <p>To ensure that data is
- * not corrupted when traversing the network, specify the <code>Content-MD5</code>
- * header in the upload part request. Amazon S3 checks the part data against the
- * provided MD5 value. If they do not match, Amazon S3 returns an error. </p> <p>If
- * the upload request is signed with Signature Version 4, then AWS S3 uses the
- * <code>x-amz-content-sha256</code> header as a checksum instead of
- * <code>Content-MD5</code>. For more information see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-auth-using-authorization-header.html">Authenticating
- * Requests: Using the Authorization Header (AWS Signature Version 4)</a>. </p> <p>
- * <b>Note:</b> After you initiate multipart upload and upload one or more parts,
- * you must either complete or abort multipart upload in order to stop getting
- * charged for storage of the uploaded parts. Only after you either complete or
- * abort multipart upload, Amazon S3 frees up the parts storage and stops charging
- * you for the parts storage.</p> <p>For more information on multipart uploads, go
- * to <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html">Multipart
- * Upload Overview</a> in the <i>Amazon S3 User Guide </i>.</p> <p>For information
- * on the permissions required to use the multipart upload API, go to <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart
- * Upload and Permissions</a> in the <i>Amazon S3 User Guide</i>.</p> <p>You can
- * optionally request server-side encryption where Amazon S3 encrypts your data as
- * it writes it to disks in its data centers and decrypts it for you when you
- * access it. You have the option of providing your own encryption key, or you can
- * use the AWS managed encryption keys. If you choose to provide your own
- * encryption key, the request headers you provide in the request must match the
- * headers you used in the request to initiate the upload by using <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html">CreateMultipartUpload</a>.
- * For more information, go to <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html">Using
- * Server-Side Encryption</a> in the <i>Amazon S3 User Guide</i>.</p>
- * <p>Server-side encryption is supported by the S3 Multipart Upload actions.
- * Unless you are using a customer-provided encryption key, you don't need to
- * specify the encryption parameters in each UploadPart request. Instead, you only
- * need to specify the server-side encryption parameters in the initial Initiate
- * Multipart request. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html">CreateMultipartUpload</a>.</p>
- * <p>If you requested server-side encryption using a customer-provided encryption
- * key in your initiate multipart upload request, you must provide identical
- * encryption information in each part upload using the following headers.</p> <ul>
- * <li> <p>x-amz-server-side-encryption-customer-algorithm</p> </li> <li>
- * <p>x-amz-server-side-encryption-customer-key</p> </li> <li>
- * <p>x-amz-server-side-encryption-customer-key-MD5</p> </li> </ul> <p
- * class="title"> <b>Special Errors</b> </p> <ul> <li> <ul> <li> <p> <i>Code:
- * NoSuchUpload</i> </p> </li> <li> <p> <i>Cause: The specified multipart upload
- * does not exist. The upload ID might be invalid, or the multipart upload might
- * have been aborted or completed.</i> </p> </li> <li> <p> <i> HTTP Status Code:
- * 404 Not Found </i> </p> </li> <li> <p> <i>SOAP Fault Code Prefix: Client</i>
- * </p> </li> </ul> </li> </ul> <p class="title"> <b>Related Resources</b> </p>
- * <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html">CreateMultipartUpload</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html">CompleteMultipartUpload</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html">AbortMultipartUpload</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html">ListParts</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html">ListMultipartUploads</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/UploadPart">AWS API
- * Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for UploadPart that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::UploadPartOutcomeCallable UploadPartCallable(const Model::UploadPartRequest& request) const;
+ template<typename UploadPartRequestT = Model::UploadPartRequest>
+ Model::UploadPartOutcomeCallable UploadPartCallable(const UploadPartRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::UploadPart, request);
+ }
/**
- * <p>Uploads a part in a multipart upload.</p> <p>In this operation, you
- * provide part data in your request. However, you have an option to specify your
- * existing Amazon S3 object as a data source for the part you are uploading. To
- * upload a part from an existing object, you use the <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html">UploadPartCopy</a>
- * operation. </p> <p>You must initiate a multipart upload (see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html">CreateMultipartUpload</a>)
- * before you can upload any part. In response to your initiate request, Amazon S3
- * returns an upload ID, a unique identifier, that you must include in your upload
- * part request.</p> <p>Part numbers can be any number from 1 to 10,000, inclusive.
- * A part number uniquely identifies a part and also defines its position within
- * the object being created. If you upload a new part using the same part number
- * that was used with a previous part, the previously uploaded part is overwritten.
- * Each part must be at least 5 MB in size, except the last part. There is no size
- * limit on the last part of your multipart upload.</p> <p>To ensure that data is
- * not corrupted when traversing the network, specify the <code>Content-MD5</code>
- * header in the upload part request. Amazon S3 checks the part data against the
- * provided MD5 value. If they do not match, Amazon S3 returns an error. </p> <p>If
- * the upload request is signed with Signature Version 4, then AWS S3 uses the
- * <code>x-amz-content-sha256</code> header as a checksum instead of
- * <code>Content-MD5</code>. For more information see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-auth-using-authorization-header.html">Authenticating
- * Requests: Using the Authorization Header (AWS Signature Version 4)</a>. </p> <p>
- * <b>Note:</b> After you initiate multipart upload and upload one or more parts,
- * you must either complete or abort multipart upload in order to stop getting
- * charged for storage of the uploaded parts. Only after you either complete or
- * abort multipart upload, Amazon S3 frees up the parts storage and stops charging
- * you for the parts storage.</p> <p>For more information on multipart uploads, go
- * to <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html">Multipart
- * Upload Overview</a> in the <i>Amazon S3 User Guide </i>.</p> <p>For information
- * on the permissions required to use the multipart upload API, go to <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart
- * Upload and Permissions</a> in the <i>Amazon S3 User Guide</i>.</p> <p>You can
- * optionally request server-side encryption where Amazon S3 encrypts your data as
- * it writes it to disks in its data centers and decrypts it for you when you
- * access it. You have the option of providing your own encryption key, or you can
- * use the AWS managed encryption keys. If you choose to provide your own
- * encryption key, the request headers you provide in the request must match the
- * headers you used in the request to initiate the upload by using <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html">CreateMultipartUpload</a>.
- * For more information, go to <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html">Using
- * Server-Side Encryption</a> in the <i>Amazon S3 User Guide</i>.</p>
- * <p>Server-side encryption is supported by the S3 Multipart Upload actions.
- * Unless you are using a customer-provided encryption key, you don't need to
- * specify the encryption parameters in each UploadPart request. Instead, you only
- * need to specify the server-side encryption parameters in the initial Initiate
- * Multipart request. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html">CreateMultipartUpload</a>.</p>
- * <p>If you requested server-side encryption using a customer-provided encryption
- * key in your initiate multipart upload request, you must provide identical
- * encryption information in each part upload using the following headers.</p> <ul>
- * <li> <p>x-amz-server-side-encryption-customer-algorithm</p> </li> <li>
- * <p>x-amz-server-side-encryption-customer-key</p> </li> <li>
- * <p>x-amz-server-side-encryption-customer-key-MD5</p> </li> </ul> <p
- * class="title"> <b>Special Errors</b> </p> <ul> <li> <ul> <li> <p> <i>Code:
- * NoSuchUpload</i> </p> </li> <li> <p> <i>Cause: The specified multipart upload
- * does not exist. The upload ID might be invalid, or the multipart upload might
- * have been aborted or completed.</i> </p> </li> <li> <p> <i> HTTP Status Code:
- * 404 Not Found </i> </p> </li> <li> <p> <i>SOAP Fault Code Prefix: Client</i>
- * </p> </li> </ul> </li> </ul> <p class="title"> <b>Related Resources</b> </p>
- * <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html">CreateMultipartUpload</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html">CompleteMultipartUpload</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html">AbortMultipartUpload</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html">ListParts</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html">ListMultipartUploads</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/UploadPart">AWS API
- * Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for UploadPart that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void UploadPartAsync(const Model::UploadPartRequest& request, const UploadPartResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename UploadPartRequestT = Model::UploadPartRequest>
+ void UploadPartAsync(const UploadPartRequestT& request, const UploadPartResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::UploadPart, request, handler, context);
+ }
/**
* <p>Uploads a part by copying data from an existing object as data source. You
* specify the data source by adding the request header
* <code>x-amz-copy-source</code> in your request and a byte range by adding the
- * request header <code>x-amz-copy-source-range</code> in your request. </p> <p>The
- * minimum allowable part size for a multipart upload is 5 MB. For more information
- * about multipart upload limits, go to <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/qfacts.html">Quick
- * Facts</a> in the <i>Amazon S3 User Guide</i>. </p> <p>Instead of using an
- * existing object as part data, you might use the <a
+ * request header <code>x-amz-copy-source-range</code> in your request. </p> <p>For
+ * information about maximum and minimum part sizes and other multipart upload
+ * specifications, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/qfacts.html">Multipart
+ * upload limits</a> in the <i>Amazon S3 User Guide</i>. </p> <p>Instead of
+ * using an existing object as part data, you might use the <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a>
* action and provide data in your request.</p> <p>You must initiate a
* multipart upload before you can upload any part. In response to your initiate
@@ -10643,12 +5246,12 @@ namespace Aws
* API, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart
* Upload and Permissions</a> in the <i>Amazon S3 User Guide</i>.</p> </li> <li>
- * <p>For information about copying objects using a single atomic action vs. the
+ * <p>For information about copying objects using a single atomic action vs. a
* multipart upload, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectOperations.html">Operations
* on Objects</a> in the <i>Amazon S3 User Guide</i>.</p> </li> <li> <p>For
* information about using server-side encryption with customer-provided encryption
- * keys with the UploadPartCopy operation, see <a
+ * keys with the <code>UploadPartCopy</code> operation, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html">CopyObject</a>
* and <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a>.</p>
@@ -10709,322 +5312,100 @@ namespace Aws
virtual Model::UploadPartCopyOutcome UploadPartCopy(const Model::UploadPartCopyRequest& request) const;
/**
- * <p>Uploads a part by copying data from an existing object as data source. You
- * specify the data source by adding the request header
- * <code>x-amz-copy-source</code> in your request and a byte range by adding the
- * request header <code>x-amz-copy-source-range</code> in your request. </p> <p>The
- * minimum allowable part size for a multipart upload is 5 MB. For more information
- * about multipart upload limits, go to <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/qfacts.html">Quick
- * Facts</a> in the <i>Amazon S3 User Guide</i>. </p> <p>Instead of using an
- * existing object as part data, you might use the <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a>
- * action and provide data in your request.</p> <p>You must initiate a
- * multipart upload before you can upload any part. In response to your initiate
- * request. Amazon S3 returns a unique identifier, the upload ID, that you must
- * include in your upload part request.</p> <p>For more information about using the
- * <code>UploadPartCopy</code> operation, see the following:</p> <ul> <li> <p>For
- * conceptual information about multipart uploads, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html">Uploading
- * Objects Using Multipart Upload</a> in the <i>Amazon S3 User Guide</i>.</p> </li>
- * <li> <p>For information about permissions required to use the multipart upload
- * API, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart
- * Upload and Permissions</a> in the <i>Amazon S3 User Guide</i>.</p> </li> <li>
- * <p>For information about copying objects using a single atomic action vs. the
- * multipart upload, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectOperations.html">Operations
- * on Objects</a> in the <i>Amazon S3 User Guide</i>.</p> </li> <li> <p>For
- * information about using server-side encryption with customer-provided encryption
- * keys with the UploadPartCopy operation, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html">CopyObject</a>
- * and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a>.</p>
- * </li> </ul> <p>Note the following additional considerations about the request
- * headers <code>x-amz-copy-source-if-match</code>,
- * <code>x-amz-copy-source-if-none-match</code>,
- * <code>x-amz-copy-source-if-unmodified-since</code>, and
- * <code>x-amz-copy-source-if-modified-since</code>:</p> <p> </p> <ul> <li> <p>
- * <b>Consideration 1</b> - If both of the <code>x-amz-copy-source-if-match</code>
- * and <code>x-amz-copy-source-if-unmodified-since</code> headers are present in
- * the request as follows:</p> <p> <code>x-amz-copy-source-if-match</code>
- * condition evaluates to <code>true</code>, and;</p> <p>
- * <code>x-amz-copy-source-if-unmodified-since</code> condition evaluates to
- * <code>false</code>;</p> <p>Amazon S3 returns <code>200 OK</code> and copies the
- * data. </p> </li> <li> <p> <b>Consideration 2</b> - If both of the
- * <code>x-amz-copy-source-if-none-match</code> and
- * <code>x-amz-copy-source-if-modified-since</code> headers are present in the
- * request as follows:</p> <p> <code>x-amz-copy-source-if-none-match</code>
- * condition evaluates to <code>false</code>, and;</p> <p>
- * <code>x-amz-copy-source-if-modified-since</code> condition evaluates to
- * <code>true</code>;</p> <p>Amazon S3 returns <code>412 Precondition Failed</code>
- * response code. </p> </li> </ul> <p> <b>Versioning</b> </p> <p>If your bucket has
- * versioning enabled, you could have multiple versions of the same object. By
- * default, <code>x-amz-copy-source</code> identifies the current version of the
- * object to copy. If the current version is a delete marker and you don't specify
- * a versionId in the <code>x-amz-copy-source</code>, Amazon S3 returns a 404
- * error, because the object does not exist. If you specify versionId in the
- * <code>x-amz-copy-source</code> and the versionId is a delete marker, Amazon S3
- * returns an HTTP 400 error, because you are not allowed to specify a delete
- * marker as a version for the <code>x-amz-copy-source</code>. </p> <p>You can
- * optionally specify a specific version of the source object to copy by adding the
- * <code>versionId</code> subresource as shown in the following example:</p> <p>
- * <code>x-amz-copy-source: /bucket/object?versionId=version id</code> </p> <p
- * class="title"> <b>Special Errors</b> </p> <ul> <li> <ul> <li> <p> <i>Code:
- * NoSuchUpload</i> </p> </li> <li> <p> <i>Cause: The specified multipart upload
- * does not exist. The upload ID might be invalid, or the multipart upload might
- * have been aborted or completed.</i> </p> </li> <li> <p> <i>HTTP Status Code: 404
- * Not Found</i> </p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:
- * InvalidRequest</i> </p> </li> <li> <p> <i>Cause: The specified copy source is
- * not supported as a byte-range copy source.</i> </p> </li> <li> <p> <i>HTTP
- * Status Code: 400 Bad Request</i> </p> </li> </ul> </li> </ul> <p class="title">
- * <b>Related Resources</b> </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html">CreateMultipartUpload</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html">CompleteMultipartUpload</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html">AbortMultipartUpload</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html">ListParts</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html">ListMultipartUploads</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/UploadPartCopy">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for UploadPartCopy that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::UploadPartCopyOutcomeCallable UploadPartCopyCallable(const Model::UploadPartCopyRequest& request) const;
+ template<typename UploadPartCopyRequestT = Model::UploadPartCopyRequest>
+ Model::UploadPartCopyOutcomeCallable UploadPartCopyCallable(const UploadPartCopyRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::UploadPartCopy, request);
+ }
/**
- * <p>Uploads a part by copying data from an existing object as data source. You
- * specify the data source by adding the request header
- * <code>x-amz-copy-source</code> in your request and a byte range by adding the
- * request header <code>x-amz-copy-source-range</code> in your request. </p> <p>The
- * minimum allowable part size for a multipart upload is 5 MB. For more information
- * about multipart upload limits, go to <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/qfacts.html">Quick
- * Facts</a> in the <i>Amazon S3 User Guide</i>. </p> <p>Instead of using an
- * existing object as part data, you might use the <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a>
- * action and provide data in your request.</p> <p>You must initiate a
- * multipart upload before you can upload any part. In response to your initiate
- * request. Amazon S3 returns a unique identifier, the upload ID, that you must
- * include in your upload part request.</p> <p>For more information about using the
- * <code>UploadPartCopy</code> operation, see the following:</p> <ul> <li> <p>For
- * conceptual information about multipart uploads, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html">Uploading
- * Objects Using Multipart Upload</a> in the <i>Amazon S3 User Guide</i>.</p> </li>
- * <li> <p>For information about permissions required to use the multipart upload
- * API, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart
- * Upload and Permissions</a> in the <i>Amazon S3 User Guide</i>.</p> </li> <li>
- * <p>For information about copying objects using a single atomic action vs. the
- * multipart upload, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectOperations.html">Operations
- * on Objects</a> in the <i>Amazon S3 User Guide</i>.</p> </li> <li> <p>For
- * information about using server-side encryption with customer-provided encryption
- * keys with the UploadPartCopy operation, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html">CopyObject</a>
- * and <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a>.</p>
- * </li> </ul> <p>Note the following additional considerations about the request
- * headers <code>x-amz-copy-source-if-match</code>,
- * <code>x-amz-copy-source-if-none-match</code>,
- * <code>x-amz-copy-source-if-unmodified-since</code>, and
- * <code>x-amz-copy-source-if-modified-since</code>:</p> <p> </p> <ul> <li> <p>
- * <b>Consideration 1</b> - If both of the <code>x-amz-copy-source-if-match</code>
- * and <code>x-amz-copy-source-if-unmodified-since</code> headers are present in
- * the request as follows:</p> <p> <code>x-amz-copy-source-if-match</code>
- * condition evaluates to <code>true</code>, and;</p> <p>
- * <code>x-amz-copy-source-if-unmodified-since</code> condition evaluates to
- * <code>false</code>;</p> <p>Amazon S3 returns <code>200 OK</code> and copies the
- * data. </p> </li> <li> <p> <b>Consideration 2</b> - If both of the
- * <code>x-amz-copy-source-if-none-match</code> and
- * <code>x-amz-copy-source-if-modified-since</code> headers are present in the
- * request as follows:</p> <p> <code>x-amz-copy-source-if-none-match</code>
- * condition evaluates to <code>false</code>, and;</p> <p>
- * <code>x-amz-copy-source-if-modified-since</code> condition evaluates to
- * <code>true</code>;</p> <p>Amazon S3 returns <code>412 Precondition Failed</code>
- * response code. </p> </li> </ul> <p> <b>Versioning</b> </p> <p>If your bucket has
- * versioning enabled, you could have multiple versions of the same object. By
- * default, <code>x-amz-copy-source</code> identifies the current version of the
- * object to copy. If the current version is a delete marker and you don't specify
- * a versionId in the <code>x-amz-copy-source</code>, Amazon S3 returns a 404
- * error, because the object does not exist. If you specify versionId in the
- * <code>x-amz-copy-source</code> and the versionId is a delete marker, Amazon S3
- * returns an HTTP 400 error, because you are not allowed to specify a delete
- * marker as a version for the <code>x-amz-copy-source</code>. </p> <p>You can
- * optionally specify a specific version of the source object to copy by adding the
- * <code>versionId</code> subresource as shown in the following example:</p> <p>
- * <code>x-amz-copy-source: /bucket/object?versionId=version id</code> </p> <p
- * class="title"> <b>Special Errors</b> </p> <ul> <li> <ul> <li> <p> <i>Code:
- * NoSuchUpload</i> </p> </li> <li> <p> <i>Cause: The specified multipart upload
- * does not exist. The upload ID might be invalid, or the multipart upload might
- * have been aborted or completed.</i> </p> </li> <li> <p> <i>HTTP Status Code: 404
- * Not Found</i> </p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:
- * InvalidRequest</i> </p> </li> <li> <p> <i>Cause: The specified copy source is
- * not supported as a byte-range copy source.</i> </p> </li> <li> <p> <i>HTTP
- * Status Code: 400 Bad Request</i> </p> </li> </ul> </li> </ul> <p class="title">
- * <b>Related Resources</b> </p> <ul> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html">CreateMultipartUpload</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html">UploadPart</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html">CompleteMultipartUpload</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html">AbortMultipartUpload</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html">ListParts</a>
- * </p> </li> <li> <p> <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html">ListMultipartUploads</a>
- * </p> </li> </ul><p><h3>See Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/UploadPartCopy">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for UploadPartCopy that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void UploadPartCopyAsync(const Model::UploadPartCopyRequest& request, const UploadPartCopyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename UploadPartCopyRequestT = Model::UploadPartCopyRequest>
+ void UploadPartCopyAsync(const UploadPartCopyRequestT& request, const UploadPartCopyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::UploadPartCopy, request, handler, context);
+ }
/**
* <p>Passes transformed objects to a <code>GetObject</code> operation when using
- * Object Lambda Access Points. For information about Object Lambda Access Points,
+ * Object Lambda access points. For information about Object Lambda access points,
* see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/transforming-objects.html">Transforming
- * objects with Object Lambda Access Points</a> in the <i>Amazon S3 User
+ * objects with Object Lambda access points</a> in the <i>Amazon S3 User
* Guide</i>.</p> <p>This operation supports metadata that can be returned by <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>,
* in addition to <code>RequestRoute</code>, <code>RequestToken</code>,
* <code>StatusCode</code>, <code>ErrorCode</code>, and <code>ErrorMessage</code>.
* The <code>GetObject</code> response metadata is supported so that the
- * <code>WriteGetObjectResponse</code> caller, typically an AWS Lambda function,
- * can provide the same metadata when it internally invokes <code>GetObject</code>.
+ * <code>WriteGetObjectResponse</code> caller, typically an Lambda function, can
+ * provide the same metadata when it internally invokes <code>GetObject</code>.
* When <code>WriteGetObjectResponse</code> is called by a customer-owned Lambda
* function, the metadata returned to the end user <code>GetObject</code> call
- * might differ from what Amazon S3 would normally return.</p> <p>AWS provides some
- * prebuilt Lambda functions that you can use with S3 Object Lambda to detect and
- * redact personally identifiable information (PII) and decompress S3 objects.
- * These Lambda functions are available in the AWS Serverless Application
- * Repository, and can be selected through the AWS Management Console when you
- * create your Object Lambda Access Point.</p> <p>Example 1: PII Access Control -
- * This Lambda function uses Amazon Comprehend, a natural language processing (NLP)
- * service using machine learning to find insights and relationships in text. It
- * automatically detects personally identifiable information (PII) such as names,
- * addresses, dates, credit card numbers, and social security numbers from
- * documents in your Amazon S3 bucket. </p> <p>Example 2: PII Redaction - This
- * Lambda function uses Amazon Comprehend, a natural language processing (NLP)
- * service using machine learning to find insights and relationships in text. It
- * automatically redacts personally identifiable information (PII) such as names,
- * addresses, dates, credit card numbers, and social security numbers from
- * documents in your Amazon S3 bucket. </p> <p>Example 3: Decompression - The
- * Lambda function S3ObjectLambdaDecompression, is equipped to decompress objects
- * stored in S3 in one of six compressed file formats including bzip2, gzip,
- * snappy, zlib, zstandard and ZIP. </p> <p>For information on how to view and use
- * these functions, see <a
+ * might differ from what Amazon S3 would normally return.</p> <p>You can include
+ * any number of metadata headers. When including a metadata header, it should be
+ * prefaced with <code>x-amz-meta</code>. For example,
+ * <code>x-amz-meta-my-custom-header: MyCustomValue</code>. The primary use case
+ * for this is to forward <code>GetObject</code> metadata.</p> <p>Amazon Web
+ * Services provides some prebuilt Lambda functions that you can use with S3 Object
+ * Lambda to detect and redact personally identifiable information (PII) and
+ * decompress S3 objects. These Lambda functions are available in the Amazon Web
+ * Services Serverless Application Repository, and can be selected through the
+ * Amazon Web Services Management Console when you create your Object Lambda access
+ * point.</p> <p>Example 1: PII Access Control - This Lambda function uses Amazon
+ * Comprehend, a natural language processing (NLP) service using machine learning
+ * to find insights and relationships in text. It automatically detects personally
+ * identifiable information (PII) such as names, addresses, dates, credit card
+ * numbers, and social security numbers from documents in your Amazon S3 bucket.
+ * </p> <p>Example 2: PII Redaction - This Lambda function uses Amazon Comprehend,
+ * a natural language processing (NLP) service using machine learning to find
+ * insights and relationships in text. It automatically redacts personally
+ * identifiable information (PII) such as names, addresses, dates, credit card
+ * numbers, and social security numbers from documents in your Amazon S3 bucket.
+ * </p> <p>Example 3: Decompression - The Lambda function
+ * S3ObjectLambdaDecompression, is equipped to decompress objects stored in S3 in
+ * one of six compressed file formats including bzip2, gzip, snappy, zlib,
+ * zstandard and ZIP. </p> <p>For information on how to view and use these
+ * functions, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/olap-examples.html">Using
- * AWS built Lambda functions</a> in the <i>Amazon S3 User Guide</i>.</p><p><h3>See
- * Also:</h3> <a
+ * Amazon Web Services built Lambda functions</a> in the <i>Amazon S3 User
+ * Guide</i>.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/WriteGetObjectResponse">AWS
* API Reference</a></p>
*/
virtual Model::WriteGetObjectResponseOutcome WriteGetObjectResponse(const Model::WriteGetObjectResponseRequest& request) const;
/**
- * <p>Passes transformed objects to a <code>GetObject</code> operation when using
- * Object Lambda Access Points. For information about Object Lambda Access Points,
- * see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/transforming-objects.html">Transforming
- * objects with Object Lambda Access Points</a> in the <i>Amazon S3 User
- * Guide</i>.</p> <p>This operation supports metadata that can be returned by <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>,
- * in addition to <code>RequestRoute</code>, <code>RequestToken</code>,
- * <code>StatusCode</code>, <code>ErrorCode</code>, and <code>ErrorMessage</code>.
- * The <code>GetObject</code> response metadata is supported so that the
- * <code>WriteGetObjectResponse</code> caller, typically an AWS Lambda function,
- * can provide the same metadata when it internally invokes <code>GetObject</code>.
- * When <code>WriteGetObjectResponse</code> is called by a customer-owned Lambda
- * function, the metadata returned to the end user <code>GetObject</code> call
- * might differ from what Amazon S3 would normally return.</p> <p>AWS provides some
- * prebuilt Lambda functions that you can use with S3 Object Lambda to detect and
- * redact personally identifiable information (PII) and decompress S3 objects.
- * These Lambda functions are available in the AWS Serverless Application
- * Repository, and can be selected through the AWS Management Console when you
- * create your Object Lambda Access Point.</p> <p>Example 1: PII Access Control -
- * This Lambda function uses Amazon Comprehend, a natural language processing (NLP)
- * service using machine learning to find insights and relationships in text. It
- * automatically detects personally identifiable information (PII) such as names,
- * addresses, dates, credit card numbers, and social security numbers from
- * documents in your Amazon S3 bucket. </p> <p>Example 2: PII Redaction - This
- * Lambda function uses Amazon Comprehend, a natural language processing (NLP)
- * service using machine learning to find insights and relationships in text. It
- * automatically redacts personally identifiable information (PII) such as names,
- * addresses, dates, credit card numbers, and social security numbers from
- * documents in your Amazon S3 bucket. </p> <p>Example 3: Decompression - The
- * Lambda function S3ObjectLambdaDecompression, is equipped to decompress objects
- * stored in S3 in one of six compressed file formats including bzip2, gzip,
- * snappy, zlib, zstandard and ZIP. </p> <p>For information on how to view and use
- * these functions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/olap-examples.html">Using
- * AWS built Lambda functions</a> in the <i>Amazon S3 User Guide</i>.</p><p><h3>See
- * Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/WriteGetObjectResponse">AWS
- * API Reference</a></p>
- *
- * returns a future to the operation so that it can be executed in parallel to other requests.
+ * A Callable wrapper for WriteGetObjectResponse that returns a future to the operation so that it can be executed in parallel to other requests.
*/
- virtual Model::WriteGetObjectResponseOutcomeCallable WriteGetObjectResponseCallable(const Model::WriteGetObjectResponseRequest& request) const;
+ template<typename WriteGetObjectResponseRequestT = Model::WriteGetObjectResponseRequest>
+ Model::WriteGetObjectResponseOutcomeCallable WriteGetObjectResponseCallable(const WriteGetObjectResponseRequestT& request) const
+ {
+ return SubmitCallable(&S3Client::WriteGetObjectResponse, request);
+ }
/**
- * <p>Passes transformed objects to a <code>GetObject</code> operation when using
- * Object Lambda Access Points. For information about Object Lambda Access Points,
- * see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/transforming-objects.html">Transforming
- * objects with Object Lambda Access Points</a> in the <i>Amazon S3 User
- * Guide</i>.</p> <p>This operation supports metadata that can be returned by <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>,
- * in addition to <code>RequestRoute</code>, <code>RequestToken</code>,
- * <code>StatusCode</code>, <code>ErrorCode</code>, and <code>ErrorMessage</code>.
- * The <code>GetObject</code> response metadata is supported so that the
- * <code>WriteGetObjectResponse</code> caller, typically an AWS Lambda function,
- * can provide the same metadata when it internally invokes <code>GetObject</code>.
- * When <code>WriteGetObjectResponse</code> is called by a customer-owned Lambda
- * function, the metadata returned to the end user <code>GetObject</code> call
- * might differ from what Amazon S3 would normally return.</p> <p>AWS provides some
- * prebuilt Lambda functions that you can use with S3 Object Lambda to detect and
- * redact personally identifiable information (PII) and decompress S3 objects.
- * These Lambda functions are available in the AWS Serverless Application
- * Repository, and can be selected through the AWS Management Console when you
- * create your Object Lambda Access Point.</p> <p>Example 1: PII Access Control -
- * This Lambda function uses Amazon Comprehend, a natural language processing (NLP)
- * service using machine learning to find insights and relationships in text. It
- * automatically detects personally identifiable information (PII) such as names,
- * addresses, dates, credit card numbers, and social security numbers from
- * documents in your Amazon S3 bucket. </p> <p>Example 2: PII Redaction - This
- * Lambda function uses Amazon Comprehend, a natural language processing (NLP)
- * service using machine learning to find insights and relationships in text. It
- * automatically redacts personally identifiable information (PII) such as names,
- * addresses, dates, credit card numbers, and social security numbers from
- * documents in your Amazon S3 bucket. </p> <p>Example 3: Decompression - The
- * Lambda function S3ObjectLambdaDecompression, is equipped to decompress objects
- * stored in S3 in one of six compressed file formats including bzip2, gzip,
- * snappy, zlib, zstandard and ZIP. </p> <p>For information on how to view and use
- * these functions, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/olap-examples.html">Using
- * AWS built Lambda functions</a> in the <i>Amazon S3 User Guide</i>.</p><p><h3>See
- * Also:</h3> <a
- * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/WriteGetObjectResponse">AWS
- * API Reference</a></p>
- *
- * Queues the request into a thread executor and triggers associated callback when operation has finished.
+ * An Async wrapper for WriteGetObjectResponse that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
- virtual void WriteGetObjectResponseAsync(const Model::WriteGetObjectResponseRequest& request, const WriteGetObjectResponseResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
+ template<typename WriteGetObjectResponseRequestT = Model::WriteGetObjectResponseRequest>
+ void WriteGetObjectResponseAsync(const WriteGetObjectResponseRequestT& request, const WriteGetObjectResponseResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
+ {
+ return SubmitAsync(&S3Client::WriteGetObjectResponse, request, handler, context);
+ }
- Aws::String GeneratePresignedUrl(const Aws::String& bucket, const Aws::String& key, Aws::Http::HttpMethod method, long long expirationInSeconds = MAX_EXPIRATION_SECONDS);
+ Aws::String GeneratePresignedUrl(const Aws::String& bucket,
+ const Aws::String& key,
+ Aws::Http::HttpMethod method,
+ uint64_t expirationInSeconds = MAX_EXPIRATION_SECONDS);
- Aws::String GeneratePresignedUrl(const Aws::String& bucket, const Aws::String& key, Aws::Http::HttpMethod method, const Http::HeaderValueCollection& customizedHeaders, long long expirationInSeconds = MAX_EXPIRATION_SECONDS);
+ Aws::String GeneratePresignedUrl(const Aws::String& bucket,
+ const Aws::String& key,
+ Aws::Http::HttpMethod method,
+ const Http::HeaderValueCollection& customizedHeaders,
+ uint64_t expirationInSeconds = MAX_EXPIRATION_SECONDS);
/**
* Server Side Encryption Headers and Algorithm
@@ -11037,155 +5418,77 @@ namespace Aws
* Generate presigned URL with Sever Side Encryption(SSE) and with S3 managed keys.
* https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html (algo: AES256)
*/
- Aws::String GeneratePresignedUrlWithSSES3(const Aws::String& bucket, const Aws::String& key, Aws::Http::HttpMethod method, long long expirationInSeconds = MAX_EXPIRATION_SECONDS);
+ Aws::String GeneratePresignedUrlWithSSES3(const Aws::String& bucket,
+ const Aws::String& key,
+ Aws::Http::HttpMethod method,
+ uint64_t expirationInSeconds = MAX_EXPIRATION_SECONDS);
/**
* Generate presigned URL with Sever Side Encryption(SSE) and with S3 managed keys.
* https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html (algo: AES256)
* Header: "x-amz-server-side-encryption" will be added internally, don't customize it.
*/
- Aws::String GeneratePresignedUrlWithSSES3(const Aws::String& bucket, const Aws::String& key, Aws::Http::HttpMethod method, Http::HeaderValueCollection customizedHeaders, long long expirationInSeconds = MAX_EXPIRATION_SECONDS);
+ Aws::String GeneratePresignedUrlWithSSES3(const Aws::String& bucket,
+ const Aws::String& key,
+ Aws::Http::HttpMethod method,
+ Http::HeaderValueCollection customizedHeaders,
+ uint64_t expirationInSeconds = MAX_EXPIRATION_SECONDS);
/**
* Generate presigned URL with Server Side Encryption(SSE) and with KMS master key id.
* if kmsMasterKeyId is empty, we will end up use the default one generated by KMS for you. You can find it via AWS IAM console, it's the one aliased as "aws/s3".
* https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html (algo: aws:kms)
*/
- Aws::String GeneratePresignedUrlWithSSEKMS(const Aws::String& bucket, const Aws::String& key, Aws::Http::HttpMethod method, const Aws::String& kmsMasterKeyId = "", long long expirationInSeconds = MAX_EXPIRATION_SECONDS);
+ Aws::String GeneratePresignedUrlWithSSEKMS(const Aws::String& bucket,
+ const Aws::String& key,
+ Aws::Http::HttpMethod method,
+ const Aws::String& kmsMasterKeyId = "",
+ uint64_t expirationInSeconds = MAX_EXPIRATION_SECONDS);
/**
* Generate presigned URL with Server Side Encryption(SSE) and with KMS master key id.
* if kmsMasterKeyId is empty, we will end up use the default one generated by KMS for you. You can find it via AWS IAM console, it's the one aliased as "aws/s3".
* https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html (algo: aws:kms)
* Headers: "x-amz-server-side-encryption" and "x-amz-server-side-encryption-aws-kms-key-id" will be added internally, don't customize them.
*/
- Aws::String GeneratePresignedUrlWithSSEKMS(const Aws::String& bucket, const Aws::String& key, Aws::Http::HttpMethod method, Http::HeaderValueCollection customizedHeaders, const Aws::String& kmsMasterKeyId = "", long long expirationInSeconds = MAX_EXPIRATION_SECONDS);
+ Aws::String GeneratePresignedUrlWithSSEKMS(const Aws::String& bucket,
+ const Aws::String& key,
+ Aws::Http::HttpMethod method,
+ Http::HeaderValueCollection customizedHeaders,
+ const Aws::String& kmsMasterKeyId = "",
+ uint64_t expirationInSeconds = MAX_EXPIRATION_SECONDS);
/**
* Generate presigned URL with Sever Side Encryption(SSE) and with customer supplied Key.
* https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html (algo: AES256)
*/
- Aws::String GeneratePresignedUrlWithSSEC(const Aws::String& bucket, const Aws::String& key, Aws::Http::HttpMethod method, const Aws::String& base64EncodedAES256Key, long long expirationInSeconds = MAX_EXPIRATION_SECONDS);
+ Aws::String GeneratePresignedUrlWithSSEC(const Aws::String& bucket,
+ const Aws::String& key,
+ Aws::Http::HttpMethod method,
+ const Aws::String& base64EncodedAES256Key,
+ uint64_t expirationInSeconds = MAX_EXPIRATION_SECONDS);
/**
* Generate presigned URL with Sever Side Encryption(SSE) and with customer supplied Key.
* https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html (algo: AES256)
* Headers: "x-amz-server-side-encryption-customer-algorithm","x-amz-server-side-encryption-customer-key" and "x-amz-server-side-encryption-customer-key-MD5" will be added internally, don't customize them.
*/
- Aws::String GeneratePresignedUrlWithSSEC(const Aws::String& bucket, const Aws::String& key, Aws::Http::HttpMethod method, Http::HeaderValueCollection customizedHeaders, const Aws::String& base64EncodedAES256Key, long long expirationInSeconds = MAX_EXPIRATION_SECONDS);
+ Aws::String GeneratePresignedUrlWithSSEC(const Aws::String& bucket,
+ const Aws::String& key,
+ Aws::Http::HttpMethod method,
+ Http::HeaderValueCollection customizedHeaders,
+ const Aws::String& base64EncodedAES256Key,
+ uint64_t expirationInSeconds = MAX_EXPIRATION_SECONDS);
virtual bool MultipartUploadSupported() const;
void OverrideEndpoint(const Aws::String& endpoint);
+ std::shared_ptr<S3EndpointProviderBase>& accessEndpointProvider();
private:
- void init(const Client::ClientConfiguration& clientConfiguration);
- void LoadS3SpecificConfig(const Aws::String& profile);
- ComputeEndpointOutcome ComputeEndpointString(const Aws::String& bucket) const;
- ComputeEndpointOutcome ComputeEndpointString() const;
- ComputeEndpointOutcome ComputeEndpointStringWithServiceName(const Aws::String& serviceNameOverride = "") const;
-
- void AbortMultipartUploadAsyncHelper(const Model::AbortMultipartUploadRequest& request, const AbortMultipartUploadResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void CompleteMultipartUploadAsyncHelper(const Model::CompleteMultipartUploadRequest& request, const CompleteMultipartUploadResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void CopyObjectAsyncHelper(const Model::CopyObjectRequest& request, const CopyObjectResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void CreateBucketAsyncHelper(const Model::CreateBucketRequest& request, const CreateBucketResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void CreateMultipartUploadAsyncHelper(const Model::CreateMultipartUploadRequest& request, const CreateMultipartUploadResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void DeleteBucketAsyncHelper(const Model::DeleteBucketRequest& request, const DeleteBucketResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void DeleteBucketAnalyticsConfigurationAsyncHelper(const Model::DeleteBucketAnalyticsConfigurationRequest& request, const DeleteBucketAnalyticsConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void DeleteBucketCorsAsyncHelper(const Model::DeleteBucketCorsRequest& request, const DeleteBucketCorsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void DeleteBucketEncryptionAsyncHelper(const Model::DeleteBucketEncryptionRequest& request, const DeleteBucketEncryptionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void DeleteBucketIntelligentTieringConfigurationAsyncHelper(const Model::DeleteBucketIntelligentTieringConfigurationRequest& request, const DeleteBucketIntelligentTieringConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void DeleteBucketInventoryConfigurationAsyncHelper(const Model::DeleteBucketInventoryConfigurationRequest& request, const DeleteBucketInventoryConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void DeleteBucketLifecycleAsyncHelper(const Model::DeleteBucketLifecycleRequest& request, const DeleteBucketLifecycleResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void DeleteBucketMetricsConfigurationAsyncHelper(const Model::DeleteBucketMetricsConfigurationRequest& request, const DeleteBucketMetricsConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void DeleteBucketOwnershipControlsAsyncHelper(const Model::DeleteBucketOwnershipControlsRequest& request, const DeleteBucketOwnershipControlsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void DeleteBucketPolicyAsyncHelper(const Model::DeleteBucketPolicyRequest& request, const DeleteBucketPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void DeleteBucketReplicationAsyncHelper(const Model::DeleteBucketReplicationRequest& request, const DeleteBucketReplicationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void DeleteBucketTaggingAsyncHelper(const Model::DeleteBucketTaggingRequest& request, const DeleteBucketTaggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void DeleteBucketWebsiteAsyncHelper(const Model::DeleteBucketWebsiteRequest& request, const DeleteBucketWebsiteResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void DeleteObjectAsyncHelper(const Model::DeleteObjectRequest& request, const DeleteObjectResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void DeleteObjectTaggingAsyncHelper(const Model::DeleteObjectTaggingRequest& request, const DeleteObjectTaggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void DeleteObjectsAsyncHelper(const Model::DeleteObjectsRequest& request, const DeleteObjectsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void DeletePublicAccessBlockAsyncHelper(const Model::DeletePublicAccessBlockRequest& request, const DeletePublicAccessBlockResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void GetBucketAccelerateConfigurationAsyncHelper(const Model::GetBucketAccelerateConfigurationRequest& request, const GetBucketAccelerateConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void GetBucketAclAsyncHelper(const Model::GetBucketAclRequest& request, const GetBucketAclResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void GetBucketAnalyticsConfigurationAsyncHelper(const Model::GetBucketAnalyticsConfigurationRequest& request, const GetBucketAnalyticsConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void GetBucketCorsAsyncHelper(const Model::GetBucketCorsRequest& request, const GetBucketCorsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void GetBucketEncryptionAsyncHelper(const Model::GetBucketEncryptionRequest& request, const GetBucketEncryptionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void GetBucketIntelligentTieringConfigurationAsyncHelper(const Model::GetBucketIntelligentTieringConfigurationRequest& request, const GetBucketIntelligentTieringConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void GetBucketInventoryConfigurationAsyncHelper(const Model::GetBucketInventoryConfigurationRequest& request, const GetBucketInventoryConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void GetBucketLifecycleConfigurationAsyncHelper(const Model::GetBucketLifecycleConfigurationRequest& request, const GetBucketLifecycleConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void GetBucketLocationAsyncHelper(const Model::GetBucketLocationRequest& request, const GetBucketLocationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void GetBucketLoggingAsyncHelper(const Model::GetBucketLoggingRequest& request, const GetBucketLoggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void GetBucketMetricsConfigurationAsyncHelper(const Model::GetBucketMetricsConfigurationRequest& request, const GetBucketMetricsConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void GetBucketNotificationConfigurationAsyncHelper(const Model::GetBucketNotificationConfigurationRequest& request, const GetBucketNotificationConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void GetBucketOwnershipControlsAsyncHelper(const Model::GetBucketOwnershipControlsRequest& request, const GetBucketOwnershipControlsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void GetBucketPolicyAsyncHelper(const Model::GetBucketPolicyRequest& request, const GetBucketPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void GetBucketPolicyStatusAsyncHelper(const Model::GetBucketPolicyStatusRequest& request, const GetBucketPolicyStatusResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void GetBucketReplicationAsyncHelper(const Model::GetBucketReplicationRequest& request, const GetBucketReplicationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void GetBucketRequestPaymentAsyncHelper(const Model::GetBucketRequestPaymentRequest& request, const GetBucketRequestPaymentResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void GetBucketTaggingAsyncHelper(const Model::GetBucketTaggingRequest& request, const GetBucketTaggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void GetBucketVersioningAsyncHelper(const Model::GetBucketVersioningRequest& request, const GetBucketVersioningResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void GetBucketWebsiteAsyncHelper(const Model::GetBucketWebsiteRequest& request, const GetBucketWebsiteResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void GetObjectAsyncHelper(const Model::GetObjectRequest& request, const GetObjectResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void GetObjectAclAsyncHelper(const Model::GetObjectAclRequest& request, const GetObjectAclResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void GetObjectLegalHoldAsyncHelper(const Model::GetObjectLegalHoldRequest& request, const GetObjectLegalHoldResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void GetObjectLockConfigurationAsyncHelper(const Model::GetObjectLockConfigurationRequest& request, const GetObjectLockConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void GetObjectRetentionAsyncHelper(const Model::GetObjectRetentionRequest& request, const GetObjectRetentionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void GetObjectTaggingAsyncHelper(const Model::GetObjectTaggingRequest& request, const GetObjectTaggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void GetObjectTorrentAsyncHelper(const Model::GetObjectTorrentRequest& request, const GetObjectTorrentResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void GetPublicAccessBlockAsyncHelper(const Model::GetPublicAccessBlockRequest& request, const GetPublicAccessBlockResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void HeadBucketAsyncHelper(const Model::HeadBucketRequest& request, const HeadBucketResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void HeadObjectAsyncHelper(const Model::HeadObjectRequest& request, const HeadObjectResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void ListBucketAnalyticsConfigurationsAsyncHelper(const Model::ListBucketAnalyticsConfigurationsRequest& request, const ListBucketAnalyticsConfigurationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void ListBucketIntelligentTieringConfigurationsAsyncHelper(const Model::ListBucketIntelligentTieringConfigurationsRequest& request, const ListBucketIntelligentTieringConfigurationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void ListBucketInventoryConfigurationsAsyncHelper(const Model::ListBucketInventoryConfigurationsRequest& request, const ListBucketInventoryConfigurationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void ListBucketMetricsConfigurationsAsyncHelper(const Model::ListBucketMetricsConfigurationsRequest& request, const ListBucketMetricsConfigurationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void ListBucketsAsyncHelper(const ListBucketsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void ListMultipartUploadsAsyncHelper(const Model::ListMultipartUploadsRequest& request, const ListMultipartUploadsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void ListObjectVersionsAsyncHelper(const Model::ListObjectVersionsRequest& request, const ListObjectVersionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void ListObjectsAsyncHelper(const Model::ListObjectsRequest& request, const ListObjectsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void ListObjectsV2AsyncHelper(const Model::ListObjectsV2Request& request, const ListObjectsV2ResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void ListPartsAsyncHelper(const Model::ListPartsRequest& request, const ListPartsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void PutBucketAccelerateConfigurationAsyncHelper(const Model::PutBucketAccelerateConfigurationRequest& request, const PutBucketAccelerateConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void PutBucketAclAsyncHelper(const Model::PutBucketAclRequest& request, const PutBucketAclResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void PutBucketAnalyticsConfigurationAsyncHelper(const Model::PutBucketAnalyticsConfigurationRequest& request, const PutBucketAnalyticsConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void PutBucketCorsAsyncHelper(const Model::PutBucketCorsRequest& request, const PutBucketCorsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void PutBucketEncryptionAsyncHelper(const Model::PutBucketEncryptionRequest& request, const PutBucketEncryptionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void PutBucketIntelligentTieringConfigurationAsyncHelper(const Model::PutBucketIntelligentTieringConfigurationRequest& request, const PutBucketIntelligentTieringConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void PutBucketInventoryConfigurationAsyncHelper(const Model::PutBucketInventoryConfigurationRequest& request, const PutBucketInventoryConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void PutBucketLifecycleConfigurationAsyncHelper(const Model::PutBucketLifecycleConfigurationRequest& request, const PutBucketLifecycleConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void PutBucketLoggingAsyncHelper(const Model::PutBucketLoggingRequest& request, const PutBucketLoggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void PutBucketMetricsConfigurationAsyncHelper(const Model::PutBucketMetricsConfigurationRequest& request, const PutBucketMetricsConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void PutBucketNotificationConfigurationAsyncHelper(const Model::PutBucketNotificationConfigurationRequest& request, const PutBucketNotificationConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void PutBucketOwnershipControlsAsyncHelper(const Model::PutBucketOwnershipControlsRequest& request, const PutBucketOwnershipControlsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void PutBucketPolicyAsyncHelper(const Model::PutBucketPolicyRequest& request, const PutBucketPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void PutBucketReplicationAsyncHelper(const Model::PutBucketReplicationRequest& request, const PutBucketReplicationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void PutBucketRequestPaymentAsyncHelper(const Model::PutBucketRequestPaymentRequest& request, const PutBucketRequestPaymentResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void PutBucketTaggingAsyncHelper(const Model::PutBucketTaggingRequest& request, const PutBucketTaggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void PutBucketVersioningAsyncHelper(const Model::PutBucketVersioningRequest& request, const PutBucketVersioningResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void PutBucketWebsiteAsyncHelper(const Model::PutBucketWebsiteRequest& request, const PutBucketWebsiteResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void PutObjectAsyncHelper(const Model::PutObjectRequest& request, const PutObjectResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void PutObjectAclAsyncHelper(const Model::PutObjectAclRequest& request, const PutObjectAclResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void PutObjectLegalHoldAsyncHelper(const Model::PutObjectLegalHoldRequest& request, const PutObjectLegalHoldResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void PutObjectLockConfigurationAsyncHelper(const Model::PutObjectLockConfigurationRequest& request, const PutObjectLockConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void PutObjectRetentionAsyncHelper(const Model::PutObjectRetentionRequest& request, const PutObjectRetentionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void PutObjectTaggingAsyncHelper(const Model::PutObjectTaggingRequest& request, const PutObjectTaggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void PutPublicAccessBlockAsyncHelper(const Model::PutPublicAccessBlockRequest& request, const PutPublicAccessBlockResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void RestoreObjectAsyncHelper(const Model::RestoreObjectRequest& request, const RestoreObjectResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void SelectObjectContentAsyncHelper(Model::SelectObjectContentRequest& request, const SelectObjectContentResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void UploadPartAsyncHelper(const Model::UploadPartRequest& request, const UploadPartResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void UploadPartCopyAsyncHelper(const Model::UploadPartCopyRequest& request, const UploadPartCopyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
- void WriteGetObjectResponseAsyncHelper(const Model::WriteGetObjectResponseRequest& request, const WriteGetObjectResponseResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
-
- Aws::String m_baseUri;
- Aws::String m_scheme;
- bool m_enableHostPrefixInjection;
- Aws::String m_configScheme;
+ friend class Aws::Client::ClientWithAsyncTemplateMethods<S3Client>;
+ void init(const S3ClientConfiguration& clientConfiguration);
+ S3ClientConfiguration m_clientConfiguration;
std::shared_ptr<Utils::Threading::Executor> m_executor;
- bool m_useVirtualAddressing;
- bool m_useDualStack;
- bool m_useArnRegion;
- bool m_useCustomEndpoint;
- Aws::S3::US_EAST_1_REGIONAL_ENDPOINT_OPTION m_USEast1RegionalEndpointOption;
+ std::shared_ptr<S3EndpointProviderBase> m_endpointProvider;
};
} // namespace S3
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3ClientConfiguration.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3ClientConfiguration.h
new file mode 100644
index 0000000000..771bd85a39
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3ClientConfiguration.h
@@ -0,0 +1,63 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#pragma once
+
+#include <aws/s3/S3_EXPORTS.h>
+#include <aws/core/client/GenericClientConfiguration.h>
+#include <aws/core/auth/signer/AWSAuthV4Signer.h>
+
+
+namespace Aws
+{
+ namespace S3
+ {
+ enum class US_EAST_1_REGIONAL_ENDPOINT_OPTION
+ {
+ NOT_SET,
+ LEGACY, //stands for using global endpoint for us-east-1,
+ REGIONAL //stands for using regional endpoint for us-east-1
+ };
+
+ struct AWS_S3_API S3ClientConfiguration : public Aws::Client::GenericClientConfiguration</*EndpointDiscoverySupported*/true>
+ {
+ using BaseClientConfigClass = Aws::Client::GenericClientConfiguration</*EndpointDiscoverySupported*/true>;
+
+ S3ClientConfiguration();
+
+ /**
+ * Create a configuration based on settings in the aws configuration file for the given profile name.
+ * The configuration file location can be set via the environment variable AWS_CONFIG_FILE
+ * @param profileName the aws profile name.
+ * @param shouldDisableIMDS whether or not to disable IMDS calls.
+ */
+ S3ClientConfiguration(const char* profileName, bool shouldDisableIMDS = false);
+
+ /**
+ * Create a configuration with a predefined smart defaults
+ * @param useSmartDefaults, required to differentiate c-tors
+ * @param defaultMode, default mode to use
+ * @param shouldDisableIMDS whether or not to disable IMDS calls.
+ */
+ S3ClientConfiguration(bool useSmartDefaults, const char* defaultMode = "legacy", bool shouldDisableIMDS = false);
+
+ /**
+ * Converting constructors for compatibility with a legacy code
+ */
+ S3ClientConfiguration(const Client::ClientConfiguration& config,
+ Client::AWSAuthV4Signer::PayloadSigningPolicy iPayloadSigningPolicy = Client::AWSAuthV4Signer::PayloadSigningPolicy::Never,
+ bool iUseVirtualAddressing = true,
+ US_EAST_1_REGIONAL_ENDPOINT_OPTION iUseUSEast1RegionalEndPointOption = US_EAST_1_REGIONAL_ENDPOINT_OPTION::NOT_SET);
+
+ bool useVirtualAddressing = true;
+ US_EAST_1_REGIONAL_ENDPOINT_OPTION useUSEast1RegionalEndPointOption = US_EAST_1_REGIONAL_ENDPOINT_OPTION::NOT_SET;
+ bool disableMultiRegionAccessPoints = false;
+ bool useArnRegion = false;
+ Client::AWSAuthV4Signer::PayloadSigningPolicy payloadSigningPolicy = Client::AWSAuthV4Signer::PayloadSigningPolicy::RequestDependent;
+ private:
+ void LoadS3SpecificConfig(const Aws::String& profileName);
+ };
+ }
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3Endpoint.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3Endpoint.h
deleted file mode 100644
index 64c2fc2c44..0000000000
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3Endpoint.h
+++ /dev/null
@@ -1,55 +0,0 @@
-/**
- * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
- * SPDX-License-Identifier: Apache-2.0.
- */
-
-#pragma once
-#include <aws/s3/S3_EXPORTS.h>
-#include <aws/core/Region.h>
-#include <aws/core/utils/memory/stl/AWSString.h>
-#include <aws/s3/S3ARN.h>
-
-namespace Aws
-{
-
-namespace S3
-{
-namespace S3Endpoint
-{
- /**
- * Compute endpoint based on region.
- * @param regionName The AWS region used in the endpoint
- * @param useDualStack Using dual-stack endpoint if true
- * @param USEast1UseRegionalEndpoint Using global endpoint for us-east-1 if the value is LEGACY, or using regional endpoint if it's REGIONAL
- */
- AWS_S3_API Aws::String ForRegion(const Aws::String& regionName, bool useDualStack = false, bool USEast1UseRegionalEndpoint = false, const Aws::String& serviceName = "");
-
- /**
- * Compute endpoint based on Access Point ARN.
- * @param arn The S3 Access Point ARN
- * @param regionNameOverride Override region name in ARN if it's not empty
- * @param useDualStack Using dual-stack endpoint if true
- * @param endpointOverride Override endpoint if it's not empty
- */
- AWS_S3_API Aws::String ForAccessPointArn(const S3ARN& arn, const Aws::String& regionNameOverride = "", bool useDualStack = false, const Aws::String& endpointOverride = "");
-
- /**
- * Compute endpoint based on Outposts ARN.
- * @param arn The S3 Outposts ARN
- * @param regionNameOverride Override region name in ARN if it's not empty
- * @param useDualStack Using dual-stack endpoint if true
- * @param endpointOverride Override endpoint if it's not empty
- */
- AWS_S3_API Aws::String ForOutpostsArn(const S3ARN& arn, const Aws::String& regionNameOverride = "", bool useDualStack = false, const Aws::String& endpointOverride = "");
-
- /**
- * Compute endpoint based on Object Lambda Access Point ARN.
- * @param arn The S3 Object Lambda Access Point ARN
- * @param regionNameOverride Override region name in ARN if it's not empty
- * @param useDualStack Using dual-stack endpoint if true
- * @param endpointOverride Override endpoint if it's not empty
- */
- AWS_S3_API Aws::String ForObjectLambdaAccessPointArn(const S3ARN& arn, const Aws::String& regionNameOverride = "", bool useDualStack = false, const Aws::String& endpointOverride = "");
-} // namespace S3Endpoint
-} // namespace S3
-} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3EndpointProvider.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3EndpointProvider.h
new file mode 100644
index 0000000000..d62a5c0582
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3EndpointProvider.h
@@ -0,0 +1,114 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#pragma once
+#include <aws/s3/S3_EXPORTS.h>
+#include <aws/s3/S3ClientConfiguration.h>
+#include <aws/core/endpoint/DefaultEndpointProvider.h>
+#include <aws/core/endpoint/EndpointParameter.h>
+#include <aws/core/utils/memory/stl/AWSString.h>
+#include <aws/core/utils/memory/stl/AWSVector.h>
+
+#include <aws/s3/S3EndpointRules.h>
+
+
+namespace Aws
+{
+namespace S3
+{
+namespace Endpoint
+{
+using S3ClientConfiguration = Aws::S3::S3ClientConfiguration;
+using EndpointParameters = Aws::Endpoint::EndpointParameters;
+using Aws::Endpoint::EndpointProviderBase;
+using Aws::Endpoint::DefaultEndpointProvider;
+
+class AWS_S3_API S3ClientContextParameters : public Aws::Endpoint::ClientContextParameters
+{
+public:
+ virtual ~S3ClientContextParameters(){};
+
+ /**
+ * Forces this client to use path-style addressing for buckets.
+ */
+ void SetForcePathStyle(bool value);
+ const ClientContextParameters::EndpointParameter& GetForcePathStyle() const;
+
+ /**
+ * Disables this client's usage of Multi-Region Access Points.
+ */
+ void SetDisableMultiRegionAccessPoints(bool value);
+ const ClientContextParameters::EndpointParameter& GetDisableMultiRegionAccessPoints() const;
+
+ /**
+ * Enables this client to use an ARN's region when constructing an endpoint instead of the client's configured region.
+ */
+ void SetUseArnRegion(bool value);
+ const ClientContextParameters::EndpointParameter& GetUseArnRegion() const;
+
+ /**
+ * Enables this client to use S3 Transfer Acceleration endpoints.
+ */
+ void SetAccelerate(bool value);
+ const ClientContextParameters::EndpointParameter& GetAccelerate() const;
+};
+
+class AWS_S3_API S3BuiltInParameters : public Aws::Endpoint::BuiltInParameters
+{
+public:
+ virtual ~S3BuiltInParameters(){};
+ using Aws::Endpoint::BuiltInParameters::SetFromClientConfiguration;
+ virtual void SetFromClientConfiguration(const S3ClientConfiguration& config);
+};
+
+/**
+ * The type for the S3 Client Endpoint Provider.
+ * Inherit from this Base class / "Interface" should you want to provide a custom endpoint provider.
+ * The SDK must use service-specific type for each service per specification.
+ */
+using S3EndpointProviderBase =
+ EndpointProviderBase<S3ClientConfiguration, S3BuiltInParameters, S3ClientContextParameters>;
+
+using S3DefaultEpProviderBase =
+ DefaultEndpointProvider<S3ClientConfiguration, S3BuiltInParameters, S3ClientContextParameters>;
+
+} // namespace Endpoint
+} // namespace S3
+
+namespace Endpoint
+{
+/**
+ * Export endpoint provider symbols from DLL
+ */
+template class AWS_S3_API
+ Aws::Endpoint::EndpointProviderBase<S3::Endpoint::S3ClientConfiguration, S3::Endpoint::S3BuiltInParameters, S3::Endpoint::S3ClientContextParameters>;
+
+template class AWS_S3_API
+ Aws::Endpoint::DefaultEndpointProvider<S3::Endpoint::S3ClientConfiguration, S3::Endpoint::S3BuiltInParameters, S3::Endpoint::S3ClientContextParameters>;
+} // namespace Endpoint
+
+namespace S3
+{
+namespace Endpoint
+{
+/**
+ * Default endpoint provider used for this service
+ */
+class AWS_S3_API S3EndpointProvider : public S3DefaultEpProviderBase
+{
+public:
+ using S3ResolveEndpointOutcome = Aws::Endpoint::ResolveEndpointOutcome;
+
+ S3EndpointProvider()
+ : S3DefaultEpProviderBase(Aws::S3::S3EndpointRules::GetRulesBlob(), Aws::S3::S3EndpointRules::RulesBlobSize)
+ {}
+
+ ~S3EndpointProvider()
+ {
+ }
+};
+} // namespace Endpoint
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3EndpointRules.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3EndpointRules.h
new file mode 100644
index 0000000000..6185d3ed78
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3EndpointRules.h
@@ -0,0 +1,23 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#pragma once
+#include <cstddef>
+#include <aws/s3/S3_EXPORTS.h>
+
+namespace Aws
+{
+namespace S3
+{
+class S3EndpointRules
+{
+public:
+ static const size_t RulesBlobStrLen;
+ static const size_t RulesBlobSize;
+
+ static const char* GetRulesBlob();
+};
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3Request.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3Request.h
index 3747292c2f..b4f966919e 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3Request.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3Request.h
@@ -5,6 +5,7 @@
#pragma once
#include <aws/s3/S3_EXPORTS.h>
+#include <aws/core/endpoint/AWSEndpoint.h>
#include <aws/core/AmazonSerializableWebServiceRequest.h>
#include <aws/core/utils/UnreferencedParam.h>
#include <aws/core/http/HttpRequest.h>
@@ -17,6 +18,9 @@ namespace S3
class AWS_S3_API S3Request : public Aws::AmazonSerializableWebServiceRequest
{
public:
+ using EndpointParameter = Aws::Endpoint::EndpointParameter;
+ using EndpointParameters = Aws::Endpoint::EndpointParameters;
+
virtual ~S3Request () {}
void AddParametersToRequest(Aws::Http::HttpRequest& httpRequest) const { AWS_UNREFERENCED_PARAM(httpRequest); }
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3ServiceClientModel.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3ServiceClientModel.h
new file mode 100644
index 0000000000..73df2297e1
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/S3ServiceClientModel.h
@@ -0,0 +1,503 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#pragma once
+
+/* Generic header includes */
+#include <aws/s3/S3Errors.h>
+#include <aws/s3/S3ClientConfiguration.h>
+#include <aws/core/client/AWSError.h>
+#include <aws/core/utils/memory/stl/AWSString.h>
+#include <aws/core/client/AsyncCallerContext.h>
+#include <aws/core/http/HttpTypes.h>
+#include <aws/s3/S3EndpointProvider.h>
+#include <future>
+#include <functional>
+/* End of generic header includes */
+
+/* Service model headers required in S3Client header */
+#include <aws/s3/model/AbortMultipartUploadResult.h>
+#include <aws/s3/model/CompleteMultipartUploadResult.h>
+#include <aws/s3/model/CopyObjectResult.h>
+#include <aws/s3/model/CreateBucketResult.h>
+#include <aws/s3/model/CreateMultipartUploadResult.h>
+#include <aws/s3/model/DeleteObjectResult.h>
+#include <aws/s3/model/DeleteObjectTaggingResult.h>
+#include <aws/s3/model/DeleteObjectsResult.h>
+#include <aws/s3/model/GetBucketAccelerateConfigurationResult.h>
+#include <aws/s3/model/GetBucketAclResult.h>
+#include <aws/s3/model/GetBucketAnalyticsConfigurationResult.h>
+#include <aws/s3/model/GetBucketCorsResult.h>
+#include <aws/s3/model/GetBucketEncryptionResult.h>
+#include <aws/s3/model/GetBucketIntelligentTieringConfigurationResult.h>
+#include <aws/s3/model/GetBucketInventoryConfigurationResult.h>
+#include <aws/s3/model/GetBucketLifecycleConfigurationResult.h>
+#include <aws/s3/model/GetBucketLocationResult.h>
+#include <aws/s3/model/GetBucketLoggingResult.h>
+#include <aws/s3/model/GetBucketMetricsConfigurationResult.h>
+#include <aws/s3/model/GetBucketNotificationConfigurationResult.h>
+#include <aws/s3/model/GetBucketOwnershipControlsResult.h>
+#include <aws/s3/model/GetBucketPolicyResult.h>
+#include <aws/s3/model/GetBucketPolicyStatusResult.h>
+#include <aws/s3/model/GetBucketReplicationResult.h>
+#include <aws/s3/model/GetBucketRequestPaymentResult.h>
+#include <aws/s3/model/GetBucketTaggingResult.h>
+#include <aws/s3/model/GetBucketVersioningResult.h>
+#include <aws/s3/model/GetBucketWebsiteResult.h>
+#include <aws/s3/model/GetObjectResult.h>
+#include <aws/s3/model/GetObjectAclResult.h>
+#include <aws/s3/model/GetObjectAttributesResult.h>
+#include <aws/s3/model/GetObjectLegalHoldResult.h>
+#include <aws/s3/model/GetObjectLockConfigurationResult.h>
+#include <aws/s3/model/GetObjectRetentionResult.h>
+#include <aws/s3/model/GetObjectTaggingResult.h>
+#include <aws/s3/model/GetObjectTorrentResult.h>
+#include <aws/s3/model/GetPublicAccessBlockResult.h>
+#include <aws/s3/model/HeadObjectResult.h>
+#include <aws/s3/model/ListBucketAnalyticsConfigurationsResult.h>
+#include <aws/s3/model/ListBucketIntelligentTieringConfigurationsResult.h>
+#include <aws/s3/model/ListBucketInventoryConfigurationsResult.h>
+#include <aws/s3/model/ListBucketMetricsConfigurationsResult.h>
+#include <aws/s3/model/ListBucketsResult.h>
+#include <aws/s3/model/ListMultipartUploadsResult.h>
+#include <aws/s3/model/ListObjectVersionsResult.h>
+#include <aws/s3/model/ListObjectsResult.h>
+#include <aws/s3/model/ListObjectsV2Result.h>
+#include <aws/s3/model/ListPartsResult.h>
+#include <aws/s3/model/PutObjectResult.h>
+#include <aws/s3/model/PutObjectAclResult.h>
+#include <aws/s3/model/PutObjectLegalHoldResult.h>
+#include <aws/s3/model/PutObjectLockConfigurationResult.h>
+#include <aws/s3/model/PutObjectRetentionResult.h>
+#include <aws/s3/model/PutObjectTaggingResult.h>
+#include <aws/s3/model/RestoreObjectResult.h>
+#include <aws/s3/model/UploadPartResult.h>
+#include <aws/s3/model/UploadPartCopyResult.h>
+#include <aws/core/NoResult.h>
+/* End of service model headers required in S3Client header */
+
+namespace Aws
+{
+ namespace Http
+ {
+ class HttpClient;
+ class HttpClientFactory;
+ } // namespace Http
+
+ namespace Utils
+ {
+ template< typename R, typename E> class Outcome;
+
+ namespace Threading
+ {
+ class Executor;
+ } // namespace Threading
+ } // namespace Utils
+
+ namespace Auth
+ {
+ class AWSCredentials;
+ class AWSCredentialsProvider;
+ } // namespace Auth
+
+ namespace Client
+ {
+ class RetryStrategy;
+ } // namespace Client
+
+ namespace S3
+ {
+ using S3EndpointProviderBase = Aws::S3::Endpoint::S3EndpointProviderBase;
+ using S3EndpointProvider = Aws::S3::Endpoint::S3EndpointProvider;
+
+ namespace Model
+ {
+ /* Service model forward declarations required in S3Client header */
+ class AbortMultipartUploadRequest;
+ class CompleteMultipartUploadRequest;
+ class CopyObjectRequest;
+ class CreateBucketRequest;
+ class CreateMultipartUploadRequest;
+ class DeleteBucketRequest;
+ class DeleteBucketAnalyticsConfigurationRequest;
+ class DeleteBucketCorsRequest;
+ class DeleteBucketEncryptionRequest;
+ class DeleteBucketIntelligentTieringConfigurationRequest;
+ class DeleteBucketInventoryConfigurationRequest;
+ class DeleteBucketLifecycleRequest;
+ class DeleteBucketMetricsConfigurationRequest;
+ class DeleteBucketOwnershipControlsRequest;
+ class DeleteBucketPolicyRequest;
+ class DeleteBucketReplicationRequest;
+ class DeleteBucketTaggingRequest;
+ class DeleteBucketWebsiteRequest;
+ class DeleteObjectRequest;
+ class DeleteObjectTaggingRequest;
+ class DeleteObjectsRequest;
+ class DeletePublicAccessBlockRequest;
+ class GetBucketAccelerateConfigurationRequest;
+ class GetBucketAclRequest;
+ class GetBucketAnalyticsConfigurationRequest;
+ class GetBucketCorsRequest;
+ class GetBucketEncryptionRequest;
+ class GetBucketIntelligentTieringConfigurationRequest;
+ class GetBucketInventoryConfigurationRequest;
+ class GetBucketLifecycleConfigurationRequest;
+ class GetBucketLocationRequest;
+ class GetBucketLoggingRequest;
+ class GetBucketMetricsConfigurationRequest;
+ class GetBucketNotificationConfigurationRequest;
+ class GetBucketOwnershipControlsRequest;
+ class GetBucketPolicyRequest;
+ class GetBucketPolicyStatusRequest;
+ class GetBucketReplicationRequest;
+ class GetBucketRequestPaymentRequest;
+ class GetBucketTaggingRequest;
+ class GetBucketVersioningRequest;
+ class GetBucketWebsiteRequest;
+ class GetObjectRequest;
+ class GetObjectAclRequest;
+ class GetObjectAttributesRequest;
+ class GetObjectLegalHoldRequest;
+ class GetObjectLockConfigurationRequest;
+ class GetObjectRetentionRequest;
+ class GetObjectTaggingRequest;
+ class GetObjectTorrentRequest;
+ class GetPublicAccessBlockRequest;
+ class HeadBucketRequest;
+ class HeadObjectRequest;
+ class ListBucketAnalyticsConfigurationsRequest;
+ class ListBucketIntelligentTieringConfigurationsRequest;
+ class ListBucketInventoryConfigurationsRequest;
+ class ListBucketMetricsConfigurationsRequest;
+ class ListMultipartUploadsRequest;
+ class ListObjectVersionsRequest;
+ class ListObjectsRequest;
+ class ListObjectsV2Request;
+ class ListPartsRequest;
+ class PutBucketAccelerateConfigurationRequest;
+ class PutBucketAclRequest;
+ class PutBucketAnalyticsConfigurationRequest;
+ class PutBucketCorsRequest;
+ class PutBucketEncryptionRequest;
+ class PutBucketIntelligentTieringConfigurationRequest;
+ class PutBucketInventoryConfigurationRequest;
+ class PutBucketLifecycleConfigurationRequest;
+ class PutBucketLoggingRequest;
+ class PutBucketMetricsConfigurationRequest;
+ class PutBucketNotificationConfigurationRequest;
+ class PutBucketOwnershipControlsRequest;
+ class PutBucketPolicyRequest;
+ class PutBucketReplicationRequest;
+ class PutBucketRequestPaymentRequest;
+ class PutBucketTaggingRequest;
+ class PutBucketVersioningRequest;
+ class PutBucketWebsiteRequest;
+ class PutObjectRequest;
+ class PutObjectAclRequest;
+ class PutObjectLegalHoldRequest;
+ class PutObjectLockConfigurationRequest;
+ class PutObjectRetentionRequest;
+ class PutObjectTaggingRequest;
+ class PutPublicAccessBlockRequest;
+ class RestoreObjectRequest;
+ class SelectObjectContentRequest;
+ class UploadPartRequest;
+ class UploadPartCopyRequest;
+ class WriteGetObjectResponseRequest;
+ /* End of service model forward declarations required in S3Client header */
+
+ /* Service model Outcome class definitions */
+ typedef Aws::Utils::Outcome<AbortMultipartUploadResult, S3Error> AbortMultipartUploadOutcome;
+ typedef Aws::Utils::Outcome<CompleteMultipartUploadResult, S3Error> CompleteMultipartUploadOutcome;
+ typedef Aws::Utils::Outcome<CopyObjectResult, S3Error> CopyObjectOutcome;
+ typedef Aws::Utils::Outcome<CreateBucketResult, S3Error> CreateBucketOutcome;
+ typedef Aws::Utils::Outcome<CreateMultipartUploadResult, S3Error> CreateMultipartUploadOutcome;
+ typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> DeleteBucketOutcome;
+ typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> DeleteBucketAnalyticsConfigurationOutcome;
+ typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> DeleteBucketCorsOutcome;
+ typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> DeleteBucketEncryptionOutcome;
+ typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> DeleteBucketIntelligentTieringConfigurationOutcome;
+ typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> DeleteBucketInventoryConfigurationOutcome;
+ typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> DeleteBucketLifecycleOutcome;
+ typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> DeleteBucketMetricsConfigurationOutcome;
+ typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> DeleteBucketOwnershipControlsOutcome;
+ typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> DeleteBucketPolicyOutcome;
+ typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> DeleteBucketReplicationOutcome;
+ typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> DeleteBucketTaggingOutcome;
+ typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> DeleteBucketWebsiteOutcome;
+ typedef Aws::Utils::Outcome<DeleteObjectResult, S3Error> DeleteObjectOutcome;
+ typedef Aws::Utils::Outcome<DeleteObjectTaggingResult, S3Error> DeleteObjectTaggingOutcome;
+ typedef Aws::Utils::Outcome<DeleteObjectsResult, S3Error> DeleteObjectsOutcome;
+ typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> DeletePublicAccessBlockOutcome;
+ typedef Aws::Utils::Outcome<GetBucketAccelerateConfigurationResult, S3Error> GetBucketAccelerateConfigurationOutcome;
+ typedef Aws::Utils::Outcome<GetBucketAclResult, S3Error> GetBucketAclOutcome;
+ typedef Aws::Utils::Outcome<GetBucketAnalyticsConfigurationResult, S3Error> GetBucketAnalyticsConfigurationOutcome;
+ typedef Aws::Utils::Outcome<GetBucketCorsResult, S3Error> GetBucketCorsOutcome;
+ typedef Aws::Utils::Outcome<GetBucketEncryptionResult, S3Error> GetBucketEncryptionOutcome;
+ typedef Aws::Utils::Outcome<GetBucketIntelligentTieringConfigurationResult, S3Error> GetBucketIntelligentTieringConfigurationOutcome;
+ typedef Aws::Utils::Outcome<GetBucketInventoryConfigurationResult, S3Error> GetBucketInventoryConfigurationOutcome;
+ typedef Aws::Utils::Outcome<GetBucketLifecycleConfigurationResult, S3Error> GetBucketLifecycleConfigurationOutcome;
+ typedef Aws::Utils::Outcome<GetBucketLocationResult, S3Error> GetBucketLocationOutcome;
+ typedef Aws::Utils::Outcome<GetBucketLoggingResult, S3Error> GetBucketLoggingOutcome;
+ typedef Aws::Utils::Outcome<GetBucketMetricsConfigurationResult, S3Error> GetBucketMetricsConfigurationOutcome;
+ typedef Aws::Utils::Outcome<GetBucketNotificationConfigurationResult, S3Error> GetBucketNotificationConfigurationOutcome;
+ typedef Aws::Utils::Outcome<GetBucketOwnershipControlsResult, S3Error> GetBucketOwnershipControlsOutcome;
+ typedef Aws::Utils::Outcome<GetBucketPolicyResult, S3Error> GetBucketPolicyOutcome;
+ typedef Aws::Utils::Outcome<GetBucketPolicyStatusResult, S3Error> GetBucketPolicyStatusOutcome;
+ typedef Aws::Utils::Outcome<GetBucketReplicationResult, S3Error> GetBucketReplicationOutcome;
+ typedef Aws::Utils::Outcome<GetBucketRequestPaymentResult, S3Error> GetBucketRequestPaymentOutcome;
+ typedef Aws::Utils::Outcome<GetBucketTaggingResult, S3Error> GetBucketTaggingOutcome;
+ typedef Aws::Utils::Outcome<GetBucketVersioningResult, S3Error> GetBucketVersioningOutcome;
+ typedef Aws::Utils::Outcome<GetBucketWebsiteResult, S3Error> GetBucketWebsiteOutcome;
+ typedef Aws::Utils::Outcome<GetObjectResult, S3Error> GetObjectOutcome;
+ typedef Aws::Utils::Outcome<GetObjectAclResult, S3Error> GetObjectAclOutcome;
+ typedef Aws::Utils::Outcome<GetObjectAttributesResult, S3Error> GetObjectAttributesOutcome;
+ typedef Aws::Utils::Outcome<GetObjectLegalHoldResult, S3Error> GetObjectLegalHoldOutcome;
+ typedef Aws::Utils::Outcome<GetObjectLockConfigurationResult, S3Error> GetObjectLockConfigurationOutcome;
+ typedef Aws::Utils::Outcome<GetObjectRetentionResult, S3Error> GetObjectRetentionOutcome;
+ typedef Aws::Utils::Outcome<GetObjectTaggingResult, S3Error> GetObjectTaggingOutcome;
+ typedef Aws::Utils::Outcome<GetObjectTorrentResult, S3Error> GetObjectTorrentOutcome;
+ typedef Aws::Utils::Outcome<GetPublicAccessBlockResult, S3Error> GetPublicAccessBlockOutcome;
+ typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> HeadBucketOutcome;
+ typedef Aws::Utils::Outcome<HeadObjectResult, S3Error> HeadObjectOutcome;
+ typedef Aws::Utils::Outcome<ListBucketAnalyticsConfigurationsResult, S3Error> ListBucketAnalyticsConfigurationsOutcome;
+ typedef Aws::Utils::Outcome<ListBucketIntelligentTieringConfigurationsResult, S3Error> ListBucketIntelligentTieringConfigurationsOutcome;
+ typedef Aws::Utils::Outcome<ListBucketInventoryConfigurationsResult, S3Error> ListBucketInventoryConfigurationsOutcome;
+ typedef Aws::Utils::Outcome<ListBucketMetricsConfigurationsResult, S3Error> ListBucketMetricsConfigurationsOutcome;
+ typedef Aws::Utils::Outcome<ListBucketsResult, S3Error> ListBucketsOutcome;
+ typedef Aws::Utils::Outcome<ListMultipartUploadsResult, S3Error> ListMultipartUploadsOutcome;
+ typedef Aws::Utils::Outcome<ListObjectVersionsResult, S3Error> ListObjectVersionsOutcome;
+ typedef Aws::Utils::Outcome<ListObjectsResult, S3Error> ListObjectsOutcome;
+ typedef Aws::Utils::Outcome<ListObjectsV2Result, S3Error> ListObjectsV2Outcome;
+ typedef Aws::Utils::Outcome<ListPartsResult, S3Error> ListPartsOutcome;
+ typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> PutBucketAccelerateConfigurationOutcome;
+ typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> PutBucketAclOutcome;
+ typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> PutBucketAnalyticsConfigurationOutcome;
+ typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> PutBucketCorsOutcome;
+ typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> PutBucketEncryptionOutcome;
+ typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> PutBucketIntelligentTieringConfigurationOutcome;
+ typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> PutBucketInventoryConfigurationOutcome;
+ typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> PutBucketLifecycleConfigurationOutcome;
+ typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> PutBucketLoggingOutcome;
+ typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> PutBucketMetricsConfigurationOutcome;
+ typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> PutBucketNotificationConfigurationOutcome;
+ typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> PutBucketOwnershipControlsOutcome;
+ typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> PutBucketPolicyOutcome;
+ typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> PutBucketReplicationOutcome;
+ typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> PutBucketRequestPaymentOutcome;
+ typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> PutBucketTaggingOutcome;
+ typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> PutBucketVersioningOutcome;
+ typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> PutBucketWebsiteOutcome;
+ typedef Aws::Utils::Outcome<PutObjectResult, S3Error> PutObjectOutcome;
+ typedef Aws::Utils::Outcome<PutObjectAclResult, S3Error> PutObjectAclOutcome;
+ typedef Aws::Utils::Outcome<PutObjectLegalHoldResult, S3Error> PutObjectLegalHoldOutcome;
+ typedef Aws::Utils::Outcome<PutObjectLockConfigurationResult, S3Error> PutObjectLockConfigurationOutcome;
+ typedef Aws::Utils::Outcome<PutObjectRetentionResult, S3Error> PutObjectRetentionOutcome;
+ typedef Aws::Utils::Outcome<PutObjectTaggingResult, S3Error> PutObjectTaggingOutcome;
+ typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> PutPublicAccessBlockOutcome;
+ typedef Aws::Utils::Outcome<RestoreObjectResult, S3Error> RestoreObjectOutcome;
+ typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> SelectObjectContentOutcome;
+ typedef Aws::Utils::Outcome<UploadPartResult, S3Error> UploadPartOutcome;
+ typedef Aws::Utils::Outcome<UploadPartCopyResult, S3Error> UploadPartCopyOutcome;
+ typedef Aws::Utils::Outcome<Aws::NoResult, S3Error> WriteGetObjectResponseOutcome;
+ /* End of service model Outcome class definitions */
+
+ /* Service model Outcome callable definitions */
+ typedef std::future<AbortMultipartUploadOutcome> AbortMultipartUploadOutcomeCallable;
+ typedef std::future<CompleteMultipartUploadOutcome> CompleteMultipartUploadOutcomeCallable;
+ typedef std::future<CopyObjectOutcome> CopyObjectOutcomeCallable;
+ typedef std::future<CreateBucketOutcome> CreateBucketOutcomeCallable;
+ typedef std::future<CreateMultipartUploadOutcome> CreateMultipartUploadOutcomeCallable;
+ typedef std::future<DeleteBucketOutcome> DeleteBucketOutcomeCallable;
+ typedef std::future<DeleteBucketAnalyticsConfigurationOutcome> DeleteBucketAnalyticsConfigurationOutcomeCallable;
+ typedef std::future<DeleteBucketCorsOutcome> DeleteBucketCorsOutcomeCallable;
+ typedef std::future<DeleteBucketEncryptionOutcome> DeleteBucketEncryptionOutcomeCallable;
+ typedef std::future<DeleteBucketIntelligentTieringConfigurationOutcome> DeleteBucketIntelligentTieringConfigurationOutcomeCallable;
+ typedef std::future<DeleteBucketInventoryConfigurationOutcome> DeleteBucketInventoryConfigurationOutcomeCallable;
+ typedef std::future<DeleteBucketLifecycleOutcome> DeleteBucketLifecycleOutcomeCallable;
+ typedef std::future<DeleteBucketMetricsConfigurationOutcome> DeleteBucketMetricsConfigurationOutcomeCallable;
+ typedef std::future<DeleteBucketOwnershipControlsOutcome> DeleteBucketOwnershipControlsOutcomeCallable;
+ typedef std::future<DeleteBucketPolicyOutcome> DeleteBucketPolicyOutcomeCallable;
+ typedef std::future<DeleteBucketReplicationOutcome> DeleteBucketReplicationOutcomeCallable;
+ typedef std::future<DeleteBucketTaggingOutcome> DeleteBucketTaggingOutcomeCallable;
+ typedef std::future<DeleteBucketWebsiteOutcome> DeleteBucketWebsiteOutcomeCallable;
+ typedef std::future<DeleteObjectOutcome> DeleteObjectOutcomeCallable;
+ typedef std::future<DeleteObjectTaggingOutcome> DeleteObjectTaggingOutcomeCallable;
+ typedef std::future<DeleteObjectsOutcome> DeleteObjectsOutcomeCallable;
+ typedef std::future<DeletePublicAccessBlockOutcome> DeletePublicAccessBlockOutcomeCallable;
+ typedef std::future<GetBucketAccelerateConfigurationOutcome> GetBucketAccelerateConfigurationOutcomeCallable;
+ typedef std::future<GetBucketAclOutcome> GetBucketAclOutcomeCallable;
+ typedef std::future<GetBucketAnalyticsConfigurationOutcome> GetBucketAnalyticsConfigurationOutcomeCallable;
+ typedef std::future<GetBucketCorsOutcome> GetBucketCorsOutcomeCallable;
+ typedef std::future<GetBucketEncryptionOutcome> GetBucketEncryptionOutcomeCallable;
+ typedef std::future<GetBucketIntelligentTieringConfigurationOutcome> GetBucketIntelligentTieringConfigurationOutcomeCallable;
+ typedef std::future<GetBucketInventoryConfigurationOutcome> GetBucketInventoryConfigurationOutcomeCallable;
+ typedef std::future<GetBucketLifecycleConfigurationOutcome> GetBucketLifecycleConfigurationOutcomeCallable;
+ typedef std::future<GetBucketLocationOutcome> GetBucketLocationOutcomeCallable;
+ typedef std::future<GetBucketLoggingOutcome> GetBucketLoggingOutcomeCallable;
+ typedef std::future<GetBucketMetricsConfigurationOutcome> GetBucketMetricsConfigurationOutcomeCallable;
+ typedef std::future<GetBucketNotificationConfigurationOutcome> GetBucketNotificationConfigurationOutcomeCallable;
+ typedef std::future<GetBucketOwnershipControlsOutcome> GetBucketOwnershipControlsOutcomeCallable;
+ typedef std::future<GetBucketPolicyOutcome> GetBucketPolicyOutcomeCallable;
+ typedef std::future<GetBucketPolicyStatusOutcome> GetBucketPolicyStatusOutcomeCallable;
+ typedef std::future<GetBucketReplicationOutcome> GetBucketReplicationOutcomeCallable;
+ typedef std::future<GetBucketRequestPaymentOutcome> GetBucketRequestPaymentOutcomeCallable;
+ typedef std::future<GetBucketTaggingOutcome> GetBucketTaggingOutcomeCallable;
+ typedef std::future<GetBucketVersioningOutcome> GetBucketVersioningOutcomeCallable;
+ typedef std::future<GetBucketWebsiteOutcome> GetBucketWebsiteOutcomeCallable;
+ typedef std::future<GetObjectOutcome> GetObjectOutcomeCallable;
+ typedef std::future<GetObjectAclOutcome> GetObjectAclOutcomeCallable;
+ typedef std::future<GetObjectAttributesOutcome> GetObjectAttributesOutcomeCallable;
+ typedef std::future<GetObjectLegalHoldOutcome> GetObjectLegalHoldOutcomeCallable;
+ typedef std::future<GetObjectLockConfigurationOutcome> GetObjectLockConfigurationOutcomeCallable;
+ typedef std::future<GetObjectRetentionOutcome> GetObjectRetentionOutcomeCallable;
+ typedef std::future<GetObjectTaggingOutcome> GetObjectTaggingOutcomeCallable;
+ typedef std::future<GetObjectTorrentOutcome> GetObjectTorrentOutcomeCallable;
+ typedef std::future<GetPublicAccessBlockOutcome> GetPublicAccessBlockOutcomeCallable;
+ typedef std::future<HeadBucketOutcome> HeadBucketOutcomeCallable;
+ typedef std::future<HeadObjectOutcome> HeadObjectOutcomeCallable;
+ typedef std::future<ListBucketAnalyticsConfigurationsOutcome> ListBucketAnalyticsConfigurationsOutcomeCallable;
+ typedef std::future<ListBucketIntelligentTieringConfigurationsOutcome> ListBucketIntelligentTieringConfigurationsOutcomeCallable;
+ typedef std::future<ListBucketInventoryConfigurationsOutcome> ListBucketInventoryConfigurationsOutcomeCallable;
+ typedef std::future<ListBucketMetricsConfigurationsOutcome> ListBucketMetricsConfigurationsOutcomeCallable;
+ typedef std::future<ListBucketsOutcome> ListBucketsOutcomeCallable;
+ typedef std::future<ListMultipartUploadsOutcome> ListMultipartUploadsOutcomeCallable;
+ typedef std::future<ListObjectVersionsOutcome> ListObjectVersionsOutcomeCallable;
+ typedef std::future<ListObjectsOutcome> ListObjectsOutcomeCallable;
+ typedef std::future<ListObjectsV2Outcome> ListObjectsV2OutcomeCallable;
+ typedef std::future<ListPartsOutcome> ListPartsOutcomeCallable;
+ typedef std::future<PutBucketAccelerateConfigurationOutcome> PutBucketAccelerateConfigurationOutcomeCallable;
+ typedef std::future<PutBucketAclOutcome> PutBucketAclOutcomeCallable;
+ typedef std::future<PutBucketAnalyticsConfigurationOutcome> PutBucketAnalyticsConfigurationOutcomeCallable;
+ typedef std::future<PutBucketCorsOutcome> PutBucketCorsOutcomeCallable;
+ typedef std::future<PutBucketEncryptionOutcome> PutBucketEncryptionOutcomeCallable;
+ typedef std::future<PutBucketIntelligentTieringConfigurationOutcome> PutBucketIntelligentTieringConfigurationOutcomeCallable;
+ typedef std::future<PutBucketInventoryConfigurationOutcome> PutBucketInventoryConfigurationOutcomeCallable;
+ typedef std::future<PutBucketLifecycleConfigurationOutcome> PutBucketLifecycleConfigurationOutcomeCallable;
+ typedef std::future<PutBucketLoggingOutcome> PutBucketLoggingOutcomeCallable;
+ typedef std::future<PutBucketMetricsConfigurationOutcome> PutBucketMetricsConfigurationOutcomeCallable;
+ typedef std::future<PutBucketNotificationConfigurationOutcome> PutBucketNotificationConfigurationOutcomeCallable;
+ typedef std::future<PutBucketOwnershipControlsOutcome> PutBucketOwnershipControlsOutcomeCallable;
+ typedef std::future<PutBucketPolicyOutcome> PutBucketPolicyOutcomeCallable;
+ typedef std::future<PutBucketReplicationOutcome> PutBucketReplicationOutcomeCallable;
+ typedef std::future<PutBucketRequestPaymentOutcome> PutBucketRequestPaymentOutcomeCallable;
+ typedef std::future<PutBucketTaggingOutcome> PutBucketTaggingOutcomeCallable;
+ typedef std::future<PutBucketVersioningOutcome> PutBucketVersioningOutcomeCallable;
+ typedef std::future<PutBucketWebsiteOutcome> PutBucketWebsiteOutcomeCallable;
+ typedef std::future<PutObjectOutcome> PutObjectOutcomeCallable;
+ typedef std::future<PutObjectAclOutcome> PutObjectAclOutcomeCallable;
+ typedef std::future<PutObjectLegalHoldOutcome> PutObjectLegalHoldOutcomeCallable;
+ typedef std::future<PutObjectLockConfigurationOutcome> PutObjectLockConfigurationOutcomeCallable;
+ typedef std::future<PutObjectRetentionOutcome> PutObjectRetentionOutcomeCallable;
+ typedef std::future<PutObjectTaggingOutcome> PutObjectTaggingOutcomeCallable;
+ typedef std::future<PutPublicAccessBlockOutcome> PutPublicAccessBlockOutcomeCallable;
+ typedef std::future<RestoreObjectOutcome> RestoreObjectOutcomeCallable;
+ typedef std::future<SelectObjectContentOutcome> SelectObjectContentOutcomeCallable;
+ typedef std::future<UploadPartOutcome> UploadPartOutcomeCallable;
+ typedef std::future<UploadPartCopyOutcome> UploadPartCopyOutcomeCallable;
+ typedef std::future<WriteGetObjectResponseOutcome> WriteGetObjectResponseOutcomeCallable;
+ /* End of service model Outcome callable definitions */
+ } // namespace Model
+
+ class S3Client;
+
+ /* Service model async handlers definitions */
+ typedef std::function<void(const S3Client*, const Model::AbortMultipartUploadRequest&, const Model::AbortMultipartUploadOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > AbortMultipartUploadResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::CompleteMultipartUploadRequest&, const Model::CompleteMultipartUploadOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > CompleteMultipartUploadResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::CopyObjectRequest&, const Model::CopyObjectOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > CopyObjectResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::CreateBucketRequest&, const Model::CreateBucketOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > CreateBucketResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::CreateMultipartUploadRequest&, const Model::CreateMultipartUploadOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > CreateMultipartUploadResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::DeleteBucketRequest&, const Model::DeleteBucketOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteBucketResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::DeleteBucketAnalyticsConfigurationRequest&, const Model::DeleteBucketAnalyticsConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteBucketAnalyticsConfigurationResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::DeleteBucketCorsRequest&, const Model::DeleteBucketCorsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteBucketCorsResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::DeleteBucketEncryptionRequest&, const Model::DeleteBucketEncryptionOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteBucketEncryptionResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::DeleteBucketIntelligentTieringConfigurationRequest&, const Model::DeleteBucketIntelligentTieringConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteBucketIntelligentTieringConfigurationResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::DeleteBucketInventoryConfigurationRequest&, const Model::DeleteBucketInventoryConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteBucketInventoryConfigurationResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::DeleteBucketLifecycleRequest&, const Model::DeleteBucketLifecycleOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteBucketLifecycleResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::DeleteBucketMetricsConfigurationRequest&, const Model::DeleteBucketMetricsConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteBucketMetricsConfigurationResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::DeleteBucketOwnershipControlsRequest&, const Model::DeleteBucketOwnershipControlsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteBucketOwnershipControlsResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::DeleteBucketPolicyRequest&, const Model::DeleteBucketPolicyOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteBucketPolicyResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::DeleteBucketReplicationRequest&, const Model::DeleteBucketReplicationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteBucketReplicationResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::DeleteBucketTaggingRequest&, const Model::DeleteBucketTaggingOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteBucketTaggingResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::DeleteBucketWebsiteRequest&, const Model::DeleteBucketWebsiteOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteBucketWebsiteResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::DeleteObjectRequest&, const Model::DeleteObjectOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteObjectResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::DeleteObjectTaggingRequest&, const Model::DeleteObjectTaggingOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteObjectTaggingResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::DeleteObjectsRequest&, const Model::DeleteObjectsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteObjectsResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::DeletePublicAccessBlockRequest&, const Model::DeletePublicAccessBlockOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeletePublicAccessBlockResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::GetBucketAccelerateConfigurationRequest&, const Model::GetBucketAccelerateConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketAccelerateConfigurationResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::GetBucketAclRequest&, const Model::GetBucketAclOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketAclResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::GetBucketAnalyticsConfigurationRequest&, const Model::GetBucketAnalyticsConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketAnalyticsConfigurationResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::GetBucketCorsRequest&, const Model::GetBucketCorsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketCorsResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::GetBucketEncryptionRequest&, const Model::GetBucketEncryptionOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketEncryptionResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::GetBucketIntelligentTieringConfigurationRequest&, const Model::GetBucketIntelligentTieringConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketIntelligentTieringConfigurationResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::GetBucketInventoryConfigurationRequest&, const Model::GetBucketInventoryConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketInventoryConfigurationResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::GetBucketLifecycleConfigurationRequest&, const Model::GetBucketLifecycleConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketLifecycleConfigurationResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::GetBucketLocationRequest&, const Model::GetBucketLocationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketLocationResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::GetBucketLoggingRequest&, const Model::GetBucketLoggingOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketLoggingResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::GetBucketMetricsConfigurationRequest&, const Model::GetBucketMetricsConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketMetricsConfigurationResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::GetBucketNotificationConfigurationRequest&, const Model::GetBucketNotificationConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketNotificationConfigurationResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::GetBucketOwnershipControlsRequest&, const Model::GetBucketOwnershipControlsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketOwnershipControlsResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::GetBucketPolicyRequest&, Model::GetBucketPolicyOutcome, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketPolicyResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::GetBucketPolicyStatusRequest&, const Model::GetBucketPolicyStatusOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketPolicyStatusResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::GetBucketReplicationRequest&, const Model::GetBucketReplicationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketReplicationResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::GetBucketRequestPaymentRequest&, const Model::GetBucketRequestPaymentOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketRequestPaymentResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::GetBucketTaggingRequest&, const Model::GetBucketTaggingOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketTaggingResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::GetBucketVersioningRequest&, const Model::GetBucketVersioningOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketVersioningResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::GetBucketWebsiteRequest&, const Model::GetBucketWebsiteOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetBucketWebsiteResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::GetObjectRequest&, Model::GetObjectOutcome, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetObjectResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::GetObjectAclRequest&, const Model::GetObjectAclOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetObjectAclResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::GetObjectAttributesRequest&, const Model::GetObjectAttributesOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetObjectAttributesResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::GetObjectLegalHoldRequest&, const Model::GetObjectLegalHoldOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetObjectLegalHoldResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::GetObjectLockConfigurationRequest&, const Model::GetObjectLockConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetObjectLockConfigurationResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::GetObjectRetentionRequest&, const Model::GetObjectRetentionOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetObjectRetentionResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::GetObjectTaggingRequest&, const Model::GetObjectTaggingOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetObjectTaggingResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::GetObjectTorrentRequest&, Model::GetObjectTorrentOutcome, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetObjectTorrentResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::GetPublicAccessBlockRequest&, const Model::GetPublicAccessBlockOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetPublicAccessBlockResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::HeadBucketRequest&, const Model::HeadBucketOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > HeadBucketResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::HeadObjectRequest&, const Model::HeadObjectOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > HeadObjectResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::ListBucketAnalyticsConfigurationsRequest&, const Model::ListBucketAnalyticsConfigurationsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListBucketAnalyticsConfigurationsResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::ListBucketIntelligentTieringConfigurationsRequest&, const Model::ListBucketIntelligentTieringConfigurationsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListBucketIntelligentTieringConfigurationsResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::ListBucketInventoryConfigurationsRequest&, const Model::ListBucketInventoryConfigurationsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListBucketInventoryConfigurationsResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::ListBucketMetricsConfigurationsRequest&, const Model::ListBucketMetricsConfigurationsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListBucketMetricsConfigurationsResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::ListBucketsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListBucketsResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::ListMultipartUploadsRequest&, const Model::ListMultipartUploadsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListMultipartUploadsResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::ListObjectVersionsRequest&, const Model::ListObjectVersionsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListObjectVersionsResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::ListObjectsRequest&, const Model::ListObjectsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListObjectsResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::ListObjectsV2Request&, const Model::ListObjectsV2Outcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListObjectsV2ResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::ListPartsRequest&, const Model::ListPartsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListPartsResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::PutBucketAccelerateConfigurationRequest&, const Model::PutBucketAccelerateConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutBucketAccelerateConfigurationResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::PutBucketAclRequest&, const Model::PutBucketAclOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutBucketAclResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::PutBucketAnalyticsConfigurationRequest&, const Model::PutBucketAnalyticsConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutBucketAnalyticsConfigurationResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::PutBucketCorsRequest&, const Model::PutBucketCorsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutBucketCorsResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::PutBucketEncryptionRequest&, const Model::PutBucketEncryptionOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutBucketEncryptionResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::PutBucketIntelligentTieringConfigurationRequest&, const Model::PutBucketIntelligentTieringConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutBucketIntelligentTieringConfigurationResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::PutBucketInventoryConfigurationRequest&, const Model::PutBucketInventoryConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutBucketInventoryConfigurationResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::PutBucketLifecycleConfigurationRequest&, const Model::PutBucketLifecycleConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutBucketLifecycleConfigurationResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::PutBucketLoggingRequest&, const Model::PutBucketLoggingOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutBucketLoggingResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::PutBucketMetricsConfigurationRequest&, const Model::PutBucketMetricsConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutBucketMetricsConfigurationResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::PutBucketNotificationConfigurationRequest&, const Model::PutBucketNotificationConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutBucketNotificationConfigurationResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::PutBucketOwnershipControlsRequest&, const Model::PutBucketOwnershipControlsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutBucketOwnershipControlsResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::PutBucketPolicyRequest&, const Model::PutBucketPolicyOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutBucketPolicyResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::PutBucketReplicationRequest&, const Model::PutBucketReplicationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutBucketReplicationResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::PutBucketRequestPaymentRequest&, const Model::PutBucketRequestPaymentOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutBucketRequestPaymentResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::PutBucketTaggingRequest&, const Model::PutBucketTaggingOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutBucketTaggingResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::PutBucketVersioningRequest&, const Model::PutBucketVersioningOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutBucketVersioningResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::PutBucketWebsiteRequest&, const Model::PutBucketWebsiteOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutBucketWebsiteResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::PutObjectRequest&, const Model::PutObjectOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutObjectResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::PutObjectAclRequest&, const Model::PutObjectAclOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutObjectAclResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::PutObjectLegalHoldRequest&, const Model::PutObjectLegalHoldOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutObjectLegalHoldResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::PutObjectLockConfigurationRequest&, const Model::PutObjectLockConfigurationOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutObjectLockConfigurationResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::PutObjectRetentionRequest&, const Model::PutObjectRetentionOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutObjectRetentionResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::PutObjectTaggingRequest&, const Model::PutObjectTaggingOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutObjectTaggingResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::PutPublicAccessBlockRequest&, const Model::PutPublicAccessBlockOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutPublicAccessBlockResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::RestoreObjectRequest&, const Model::RestoreObjectOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > RestoreObjectResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::SelectObjectContentRequest&, const Model::SelectObjectContentOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > SelectObjectContentResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::UploadPartRequest&, const Model::UploadPartOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > UploadPartResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::UploadPartCopyRequest&, const Model::UploadPartCopyOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > UploadPartCopyResponseReceivedHandler;
+ typedef std::function<void(const S3Client*, const Model::WriteGetObjectResponseRequest&, const Model::WriteGetObjectResponseOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > WriteGetObjectResponseResponseReceivedHandler;
+ /* End of service model async handlers definitions */
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AbortIncompleteMultipartUpload.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AbortIncompleteMultipartUpload.h
index fb84bdcf68..518b2277a9 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AbortIncompleteMultipartUpload.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AbortIncompleteMultipartUpload.h
@@ -30,14 +30,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/AbortIncompleteMultipartUpload">AWS
* API Reference</a></p>
*/
- class AWS_S3_API AbortIncompleteMultipartUpload
+ class AbortIncompleteMultipartUpload
{
public:
- AbortIncompleteMultipartUpload();
- AbortIncompleteMultipartUpload(const Aws::Utils::Xml::XmlNode& xmlNode);
- AbortIncompleteMultipartUpload& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API AbortIncompleteMultipartUpload();
+ AWS_S3_API AbortIncompleteMultipartUpload(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API AbortIncompleteMultipartUpload& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -67,7 +67,7 @@ namespace Model
private:
int m_daysAfterInitiation;
- bool m_daysAfterInitiationHasBeenSet;
+ bool m_daysAfterInitiationHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AbortMultipartUploadRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AbortMultipartUploadRequest.h
index 92e6d27ca6..5f7cccecd7 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AbortMultipartUploadRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AbortMultipartUploadRequest.h
@@ -24,10 +24,10 @@ namespace Model
/**
*/
- class AWS_S3_API AbortMultipartUploadRequest : public S3Request
+ class AbortMultipartUploadRequest : public S3Request
{
public:
- AbortMultipartUploadRequest();
+ AWS_S3_API AbortMultipartUploadRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -35,31 +35,35 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "AbortMultipartUpload"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The bucket name to which the upload was taking place. </p> <p>When using this
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const Aws::String& GetBucket() const{ return m_bucket; }
@@ -68,19 +72,19 @@ namespace Model
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; }
@@ -89,19 +93,19 @@ namespace Model
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; }
@@ -110,19 +114,19 @@ namespace Model
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); }
@@ -131,19 +135,19 @@ namespace Model
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); }
@@ -152,19 +156,19 @@ namespace Model
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline AbortMultipartUploadRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;}
@@ -173,19 +177,19 @@ namespace Model
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline AbortMultipartUploadRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;}
@@ -194,19 +198,19 @@ namespace Model
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline AbortMultipartUploadRequest& WithBucket(const char* value) { SetBucket(value); return *this;}
@@ -314,57 +318,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline AbortMultipartUploadRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline AbortMultipartUploadRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline AbortMultipartUploadRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -411,22 +415,22 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_key;
- bool m_keyHasBeenSet;
+ bool m_keyHasBeenSet = false;
Aws::String m_uploadId;
- bool m_uploadIdHasBeenSet;
+ bool m_uploadIdHasBeenSet = false;
RequestPayer m_requestPayer;
- bool m_requestPayerHasBeenSet;
+ bool m_requestPayerHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AbortMultipartUploadResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AbortMultipartUploadResult.h
index 003df773b5..9867ef140a 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AbortMultipartUploadResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AbortMultipartUploadResult.h
@@ -24,12 +24,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API AbortMultipartUploadResult
+ class AbortMultipartUploadResult
{
public:
- AbortMultipartUploadResult();
- AbortMultipartUploadResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- AbortMultipartUploadResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API AbortMultipartUploadResult();
+ AWS_S3_API AbortMultipartUploadResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API AbortMultipartUploadResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AccelerateConfiguration.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AccelerateConfiguration.h
index 111ac83475..7bc73a1ca1 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AccelerateConfiguration.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AccelerateConfiguration.h
@@ -31,14 +31,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/AccelerateConfiguration">AWS
* API Reference</a></p>
*/
- class AWS_S3_API AccelerateConfiguration
+ class AccelerateConfiguration
{
public:
- AccelerateConfiguration();
- AccelerateConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
- AccelerateConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API AccelerateConfiguration();
+ AWS_S3_API AccelerateConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API AccelerateConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -74,7 +74,7 @@ namespace Model
private:
BucketAccelerateStatus m_status;
- bool m_statusHasBeenSet;
+ bool m_statusHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AccessControlPolicy.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AccessControlPolicy.h
index 1effa4bf55..1e8bfe7c8e 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AccessControlPolicy.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AccessControlPolicy.h
@@ -30,14 +30,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/AccessControlPolicy">AWS
* API Reference</a></p>
*/
- class AWS_S3_API AccessControlPolicy
+ class AccessControlPolicy
{
public:
- AccessControlPolicy();
- AccessControlPolicy(const Aws::Utils::Xml::XmlNode& xmlNode);
- AccessControlPolicy& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API AccessControlPolicy();
+ AWS_S3_API AccessControlPolicy(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API AccessControlPolicy& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -114,10 +114,10 @@ namespace Model
private:
Aws::Vector<Grant> m_grants;
- bool m_grantsHasBeenSet;
+ bool m_grantsHasBeenSet = false;
Owner m_owner;
- bool m_ownerHasBeenSet;
+ bool m_ownerHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AccessControlTranslation.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AccessControlTranslation.h
index e8f4845c2e..201a0a7ebd 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AccessControlTranslation.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AccessControlTranslation.h
@@ -28,68 +28,62 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/AccessControlTranslation">AWS
* API Reference</a></p>
*/
- class AWS_S3_API AccessControlTranslation
+ class AccessControlTranslation
{
public:
- AccessControlTranslation();
- AccessControlTranslation(const Aws::Utils::Xml::XmlNode& xmlNode);
- AccessControlTranslation& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API AccessControlTranslation();
+ AWS_S3_API AccessControlTranslation(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API AccessControlTranslation& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
* <p>Specifies the replica ownership. For default and valid values, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTreplication.html">PUT
- * bucket replication</a> in the <i>Amazon Simple Storage Service API
- * Reference</i>.</p>
+ * bucket replication</a> in the <i>Amazon S3 API Reference</i>.</p>
*/
inline const OwnerOverride& GetOwner() const{ return m_owner; }
/**
* <p>Specifies the replica ownership. For default and valid values, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTreplication.html">PUT
- * bucket replication</a> in the <i>Amazon Simple Storage Service API
- * Reference</i>.</p>
+ * bucket replication</a> in the <i>Amazon S3 API Reference</i>.</p>
*/
inline bool OwnerHasBeenSet() const { return m_ownerHasBeenSet; }
/**
* <p>Specifies the replica ownership. For default and valid values, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTreplication.html">PUT
- * bucket replication</a> in the <i>Amazon Simple Storage Service API
- * Reference</i>.</p>
+ * bucket replication</a> in the <i>Amazon S3 API Reference</i>.</p>
*/
inline void SetOwner(const OwnerOverride& value) { m_ownerHasBeenSet = true; m_owner = value; }
/**
* <p>Specifies the replica ownership. For default and valid values, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTreplication.html">PUT
- * bucket replication</a> in the <i>Amazon Simple Storage Service API
- * Reference</i>.</p>
+ * bucket replication</a> in the <i>Amazon S3 API Reference</i>.</p>
*/
inline void SetOwner(OwnerOverride&& value) { m_ownerHasBeenSet = true; m_owner = std::move(value); }
/**
* <p>Specifies the replica ownership. For default and valid values, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTreplication.html">PUT
- * bucket replication</a> in the <i>Amazon Simple Storage Service API
- * Reference</i>.</p>
+ * bucket replication</a> in the <i>Amazon S3 API Reference</i>.</p>
*/
inline AccessControlTranslation& WithOwner(const OwnerOverride& value) { SetOwner(value); return *this;}
/**
* <p>Specifies the replica ownership. For default and valid values, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTreplication.html">PUT
- * bucket replication</a> in the <i>Amazon Simple Storage Service API
- * Reference</i>.</p>
+ * bucket replication</a> in the <i>Amazon S3 API Reference</i>.</p>
*/
inline AccessControlTranslation& WithOwner(OwnerOverride&& value) { SetOwner(std::move(value)); return *this;}
private:
OwnerOverride m_owner;
- bool m_ownerHasBeenSet;
+ bool m_ownerHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AnalyticsAndOperator.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AnalyticsAndOperator.h
index 760b911104..4859717c2c 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AnalyticsAndOperator.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AnalyticsAndOperator.h
@@ -32,14 +32,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/AnalyticsAndOperator">AWS
* API Reference</a></p>
*/
- class AWS_S3_API AnalyticsAndOperator
+ class AnalyticsAndOperator
{
public:
- AnalyticsAndOperator();
- AnalyticsAndOperator(const Aws::Utils::Xml::XmlNode& xmlNode);
- AnalyticsAndOperator& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API AnalyticsAndOperator();
+ AWS_S3_API AnalyticsAndOperator(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API AnalyticsAndOperator& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -134,10 +134,10 @@ namespace Model
private:
Aws::String m_prefix;
- bool m_prefixHasBeenSet;
+ bool m_prefixHasBeenSet = false;
Aws::Vector<Tag> m_tags;
- bool m_tagsHasBeenSet;
+ bool m_tagsHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AnalyticsConfiguration.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AnalyticsConfiguration.h
index b3b70834bd..f735dc7644 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AnalyticsConfiguration.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AnalyticsConfiguration.h
@@ -25,19 +25,19 @@ namespace Model
{
/**
- * <p> Specifies the configuration and any analyses for the analytics filter of an
+ * <p>Specifies the configuration and any analyses for the analytics filter of an
* Amazon S3 bucket.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/AnalyticsConfiguration">AWS
* API Reference</a></p>
*/
- class AWS_S3_API AnalyticsConfiguration
+ class AnalyticsConfiguration
{
public:
- AnalyticsConfiguration();
- AnalyticsConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
- AnalyticsConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API AnalyticsConfiguration();
+ AWS_S3_API AnalyticsConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API AnalyticsConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -163,13 +163,13 @@ namespace Model
private:
Aws::String m_id;
- bool m_idHasBeenSet;
+ bool m_idHasBeenSet = false;
AnalyticsFilter m_filter;
- bool m_filterHasBeenSet;
+ bool m_filterHasBeenSet = false;
StorageClassAnalysis m_storageClassAnalysis;
- bool m_storageClassAnalysisHasBeenSet;
+ bool m_storageClassAnalysisHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AnalyticsExportDestination.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AnalyticsExportDestination.h
index 9b7dfb72f0..33652244e4 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AnalyticsExportDestination.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AnalyticsExportDestination.h
@@ -27,14 +27,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/AnalyticsExportDestination">AWS
* API Reference</a></p>
*/
- class AWS_S3_API AnalyticsExportDestination
+ class AnalyticsExportDestination
{
public:
- AnalyticsExportDestination();
- AnalyticsExportDestination(const Aws::Utils::Xml::XmlNode& xmlNode);
- AnalyticsExportDestination& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API AnalyticsExportDestination();
+ AWS_S3_API AnalyticsExportDestination(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API AnalyticsExportDestination& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -70,7 +70,7 @@ namespace Model
private:
AnalyticsS3BucketDestination m_s3BucketDestination;
- bool m_s3BucketDestinationHasBeenSet;
+ bool m_s3BucketDestinationHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AnalyticsFilter.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AnalyticsFilter.h
index 1567043a4a..c655675838 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AnalyticsFilter.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AnalyticsFilter.h
@@ -32,14 +32,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/AnalyticsFilter">AWS
* API Reference</a></p>
*/
- class AWS_S3_API AnalyticsFilter
+ class AnalyticsFilter
{
public:
- AnalyticsFilter();
- AnalyticsFilter(const Aws::Utils::Xml::XmlNode& xmlNode);
- AnalyticsFilter& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API AnalyticsFilter();
+ AWS_S3_API AnalyticsFilter(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API AnalyticsFilter& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -153,13 +153,13 @@ namespace Model
private:
Aws::String m_prefix;
- bool m_prefixHasBeenSet;
+ bool m_prefixHasBeenSet = false;
Tag m_tag;
- bool m_tagHasBeenSet;
+ bool m_tagHasBeenSet = false;
AnalyticsAndOperator m_and;
- bool m_andHasBeenSet;
+ bool m_andHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AnalyticsS3BucketDestination.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AnalyticsS3BucketDestination.h
index 69c40eb86d..2175b74df6 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AnalyticsS3BucketDestination.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/AnalyticsS3BucketDestination.h
@@ -29,14 +29,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/AnalyticsS3BucketDestination">AWS
* API Reference</a></p>
*/
- class AWS_S3_API AnalyticsS3BucketDestination
+ class AnalyticsS3BucketDestination
{
public:
- AnalyticsS3BucketDestination();
- AnalyticsS3BucketDestination(const Aws::Utils::Xml::XmlNode& xmlNode);
- AnalyticsS3BucketDestination& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API AnalyticsS3BucketDestination();
+ AWS_S3_API AnalyticsS3BucketDestination(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API AnalyticsS3BucketDestination& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -227,16 +227,16 @@ namespace Model
private:
AnalyticsS3ExportFileFormat m_format;
- bool m_formatHasBeenSet;
+ bool m_formatHasBeenSet = false;
Aws::String m_bucketAccountId;
- bool m_bucketAccountIdHasBeenSet;
+ bool m_bucketAccountIdHasBeenSet = false;
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_prefix;
- bool m_prefixHasBeenSet;
+ bool m_prefixHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Bucket.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Bucket.h
index ffe7104842..ad5c7d6d25 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Bucket.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Bucket.h
@@ -25,19 +25,19 @@ namespace Model
/**
* <p> In terms of implementation, a Bucket is a resource. An Amazon S3 bucket name
- * is globally unique, and the namespace is shared by all AWS accounts.
- * </p><p><h3>See Also:</h3> <a
+ * is globally unique, and the namespace is shared by all Amazon Web Services
+ * accounts. </p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/Bucket">AWS API
* Reference</a></p>
*/
- class AWS_S3_API Bucket
+ class Bucket
{
public:
- Bucket();
- Bucket(const Aws::Utils::Xml::XmlNode& xmlNode);
- Bucket& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Bucket();
+ AWS_S3_API Bucket(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Bucket& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -120,10 +120,10 @@ namespace Model
private:
Aws::String m_name;
- bool m_nameHasBeenSet;
+ bool m_nameHasBeenSet = false;
Aws::Utils::DateTime m_creationDate;
- bool m_creationDateHasBeenSet;
+ bool m_creationDateHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/BucketLifecycleConfiguration.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/BucketLifecycleConfiguration.h
index ee35f3fd9a..745fe58263 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/BucketLifecycleConfiguration.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/BucketLifecycleConfiguration.h
@@ -32,14 +32,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/BucketLifecycleConfiguration">AWS
* API Reference</a></p>
*/
- class AWS_S3_API BucketLifecycleConfiguration
+ class BucketLifecycleConfiguration
{
public:
- BucketLifecycleConfiguration();
- BucketLifecycleConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
- BucketLifecycleConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API BucketLifecycleConfiguration();
+ AWS_S3_API BucketLifecycleConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API BucketLifecycleConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -85,7 +85,7 @@ namespace Model
private:
Aws::Vector<LifecycleRule> m_rules;
- bool m_rulesHasBeenSet;
+ bool m_rulesHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/BucketLocationConstraint.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/BucketLocationConstraint.h
index 86490ce1fa..b4f177fba6 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/BucketLocationConstraint.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/BucketLocationConstraint.h
@@ -24,6 +24,7 @@ namespace Model
ap_south_1,
ap_southeast_1,
ap_southeast_2,
+ ap_southeast_3,
ca_central_1,
cn_north_1,
cn_northwest_1,
@@ -41,6 +42,7 @@ namespace Model
us_gov_west_1,
us_west_1,
us_west_2,
+ us_iso_west_1,
us_east_1
};
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/BucketLoggingStatus.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/BucketLoggingStatus.h
index 36273be848..1848d8f9b9 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/BucketLoggingStatus.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/BucketLoggingStatus.h
@@ -27,14 +27,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/BucketLoggingStatus">AWS
* API Reference</a></p>
*/
- class AWS_S3_API BucketLoggingStatus
+ class BucketLoggingStatus
{
public:
- BucketLoggingStatus();
- BucketLoggingStatus(const Aws::Utils::Xml::XmlNode& xmlNode);
- BucketLoggingStatus& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API BucketLoggingStatus();
+ AWS_S3_API BucketLoggingStatus(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API BucketLoggingStatus& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
@@ -58,7 +58,7 @@ namespace Model
private:
LoggingEnabled m_loggingEnabled;
- bool m_loggingEnabledHasBeenSet;
+ bool m_loggingEnabledHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CORSConfiguration.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CORSConfiguration.h
index 5280876ab3..9fe46f05ad 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CORSConfiguration.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CORSConfiguration.h
@@ -32,14 +32,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CORSConfiguration">AWS
* API Reference</a></p>
*/
- class AWS_S3_API CORSConfiguration
+ class CORSConfiguration
{
public:
- CORSConfiguration();
- CORSConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
- CORSConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API CORSConfiguration();
+ AWS_S3_API CORSConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API CORSConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -93,7 +93,7 @@ namespace Model
private:
Aws::Vector<CORSRule> m_cORSRules;
- bool m_cORSRulesHasBeenSet;
+ bool m_cORSRulesHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CORSRule.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CORSRule.h
index fd1808aa0a..1fd4da5df1 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CORSRule.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CORSRule.h
@@ -29,14 +29,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CORSRule">AWS API
* Reference</a></p>
*/
- class AWS_S3_API CORSRule
+ class CORSRule
{
public:
- CORSRule();
- CORSRule(const Aws::Utils::Xml::XmlNode& xmlNode);
- CORSRule& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API CORSRule();
+ AWS_S3_API CORSRule(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API CORSRule& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -371,22 +371,22 @@ namespace Model
private:
Aws::String m_iD;
- bool m_iDHasBeenSet;
+ bool m_iDHasBeenSet = false;
Aws::Vector<Aws::String> m_allowedHeaders;
- bool m_allowedHeadersHasBeenSet;
+ bool m_allowedHeadersHasBeenSet = false;
Aws::Vector<Aws::String> m_allowedMethods;
- bool m_allowedMethodsHasBeenSet;
+ bool m_allowedMethodsHasBeenSet = false;
Aws::Vector<Aws::String> m_allowedOrigins;
- bool m_allowedOriginsHasBeenSet;
+ bool m_allowedOriginsHasBeenSet = false;
Aws::Vector<Aws::String> m_exposeHeaders;
- bool m_exposeHeadersHasBeenSet;
+ bool m_exposeHeadersHasBeenSet = false;
int m_maxAgeSeconds;
- bool m_maxAgeSecondsHasBeenSet;
+ bool m_maxAgeSecondsHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CSVInput.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CSVInput.h
index ca40bb8ef9..3b591448db 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CSVInput.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CSVInput.h
@@ -29,14 +29,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CSVInput">AWS API
* Reference</a></p>
*/
- class AWS_S3_API CSVInput
+ class CSVInput
{
public:
- CSVInput();
- CSVInput(const Aws::Utils::Xml::XmlNode& xmlNode);
- CSVInput& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API CSVInput();
+ AWS_S3_API CSVInput(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API CSVInput& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -171,57 +171,57 @@ namespace Model
/**
* <p>A single character used for escaping the quotation mark character inside an
- * already escaped value. For example, the value """ a , b """ is parsed as " a , b
- * ".</p>
+ * already escaped value. For example, the value <code>""" a , b """</code> is
+ * parsed as <code>" a , b "</code>.</p>
*/
inline const Aws::String& GetQuoteEscapeCharacter() const{ return m_quoteEscapeCharacter; }
/**
* <p>A single character used for escaping the quotation mark character inside an
- * already escaped value. For example, the value """ a , b """ is parsed as " a , b
- * ".</p>
+ * already escaped value. For example, the value <code>""" a , b """</code> is
+ * parsed as <code>" a , b "</code>.</p>
*/
inline bool QuoteEscapeCharacterHasBeenSet() const { return m_quoteEscapeCharacterHasBeenSet; }
/**
* <p>A single character used for escaping the quotation mark character inside an
- * already escaped value. For example, the value """ a , b """ is parsed as " a , b
- * ".</p>
+ * already escaped value. For example, the value <code>""" a , b """</code> is
+ * parsed as <code>" a , b "</code>.</p>
*/
inline void SetQuoteEscapeCharacter(const Aws::String& value) { m_quoteEscapeCharacterHasBeenSet = true; m_quoteEscapeCharacter = value; }
/**
* <p>A single character used for escaping the quotation mark character inside an
- * already escaped value. For example, the value """ a , b """ is parsed as " a , b
- * ".</p>
+ * already escaped value. For example, the value <code>""" a , b """</code> is
+ * parsed as <code>" a , b "</code>.</p>
*/
inline void SetQuoteEscapeCharacter(Aws::String&& value) { m_quoteEscapeCharacterHasBeenSet = true; m_quoteEscapeCharacter = std::move(value); }
/**
* <p>A single character used for escaping the quotation mark character inside an
- * already escaped value. For example, the value """ a , b """ is parsed as " a , b
- * ".</p>
+ * already escaped value. For example, the value <code>""" a , b """</code> is
+ * parsed as <code>" a , b "</code>.</p>
*/
inline void SetQuoteEscapeCharacter(const char* value) { m_quoteEscapeCharacterHasBeenSet = true; m_quoteEscapeCharacter.assign(value); }
/**
* <p>A single character used for escaping the quotation mark character inside an
- * already escaped value. For example, the value """ a , b """ is parsed as " a , b
- * ".</p>
+ * already escaped value. For example, the value <code>""" a , b """</code> is
+ * parsed as <code>" a , b "</code>.</p>
*/
inline CSVInput& WithQuoteEscapeCharacter(const Aws::String& value) { SetQuoteEscapeCharacter(value); return *this;}
/**
* <p>A single character used for escaping the quotation mark character inside an
- * already escaped value. For example, the value """ a , b """ is parsed as " a , b
- * ".</p>
+ * already escaped value. For example, the value <code>""" a , b """</code> is
+ * parsed as <code>" a , b "</code>.</p>
*/
inline CSVInput& WithQuoteEscapeCharacter(Aws::String&& value) { SetQuoteEscapeCharacter(std::move(value)); return *this;}
/**
* <p>A single character used for escaping the quotation mark character inside an
- * already escaped value. For example, the value """ a , b """ is parsed as " a , b
- * ".</p>
+ * already escaped value. For example, the value <code>""" a , b """</code> is
+ * parsed as <code>" a , b "</code>.</p>
*/
inline CSVInput& WithQuoteEscapeCharacter(const char* value) { SetQuoteEscapeCharacter(value); return *this;}
@@ -420,25 +420,25 @@ namespace Model
private:
FileHeaderInfo m_fileHeaderInfo;
- bool m_fileHeaderInfoHasBeenSet;
+ bool m_fileHeaderInfoHasBeenSet = false;
Aws::String m_comments;
- bool m_commentsHasBeenSet;
+ bool m_commentsHasBeenSet = false;
Aws::String m_quoteEscapeCharacter;
- bool m_quoteEscapeCharacterHasBeenSet;
+ bool m_quoteEscapeCharacterHasBeenSet = false;
Aws::String m_recordDelimiter;
- bool m_recordDelimiterHasBeenSet;
+ bool m_recordDelimiterHasBeenSet = false;
Aws::String m_fieldDelimiter;
- bool m_fieldDelimiterHasBeenSet;
+ bool m_fieldDelimiterHasBeenSet = false;
Aws::String m_quoteCharacter;
- bool m_quoteCharacterHasBeenSet;
+ bool m_quoteCharacterHasBeenSet = false;
bool m_allowQuotedRecordDelimiter;
- bool m_allowQuotedRecordDelimiterHasBeenSet;
+ bool m_allowQuotedRecordDelimiterHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CSVOutput.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CSVOutput.h
index d507716d7f..dc0a67f469 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CSVOutput.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CSVOutput.h
@@ -29,14 +29,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CSVOutput">AWS API
* Reference</a></p>
*/
- class AWS_S3_API CSVOutput
+ class CSVOutput
{
public:
- CSVOutput();
- CSVOutput(const Aws::Utils::Xml::XmlNode& xmlNode);
- CSVOutput& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API CSVOutput();
+ AWS_S3_API CSVOutput(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API CSVOutput& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -294,19 +294,19 @@ namespace Model
private:
QuoteFields m_quoteFields;
- bool m_quoteFieldsHasBeenSet;
+ bool m_quoteFieldsHasBeenSet = false;
Aws::String m_quoteEscapeCharacter;
- bool m_quoteEscapeCharacterHasBeenSet;
+ bool m_quoteEscapeCharacterHasBeenSet = false;
Aws::String m_recordDelimiter;
- bool m_recordDelimiterHasBeenSet;
+ bool m_recordDelimiterHasBeenSet = false;
Aws::String m_fieldDelimiter;
- bool m_fieldDelimiterHasBeenSet;
+ bool m_fieldDelimiterHasBeenSet = false;
Aws::String m_quoteCharacter;
- bool m_quoteCharacterHasBeenSet;
+ bool m_quoteCharacterHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Checksum.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Checksum.h
new file mode 100644
index 0000000000..39b3c520c1
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Checksum.h
@@ -0,0 +1,381 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#pragma once
+#include <aws/s3/S3_EXPORTS.h>
+#include <aws/core/utils/memory/stl/AWSString.h>
+#include <utility>
+
+namespace Aws
+{
+namespace Utils
+{
+namespace Xml
+{
+ class XmlNode;
+} // namespace Xml
+} // namespace Utils
+namespace S3
+{
+namespace Model
+{
+
+ /**
+ * <p>Contains all the possible checksum or digest values for an
+ * object.</p><p><h3>See Also:</h3> <a
+ * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/Checksum">AWS API
+ * Reference</a></p>
+ */
+ class Checksum
+ {
+ public:
+ AWS_S3_API Checksum();
+ AWS_S3_API Checksum(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Checksum& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumCRC32() const{ return m_checksumCRC32; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool ChecksumCRC32HasBeenSet() const { return m_checksumCRC32HasBeenSet; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(const Aws::String& value) { m_checksumCRC32HasBeenSet = true; m_checksumCRC32 = value; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(Aws::String&& value) { m_checksumCRC32HasBeenSet = true; m_checksumCRC32 = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(const char* value) { m_checksumCRC32HasBeenSet = true; m_checksumCRC32.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline Checksum& WithChecksumCRC32(const Aws::String& value) { SetChecksumCRC32(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline Checksum& WithChecksumCRC32(Aws::String&& value) { SetChecksumCRC32(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline Checksum& WithChecksumCRC32(const char* value) { SetChecksumCRC32(value); return *this;}
+
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumCRC32C() const{ return m_checksumCRC32C; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool ChecksumCRC32CHasBeenSet() const { return m_checksumCRC32CHasBeenSet; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(const Aws::String& value) { m_checksumCRC32CHasBeenSet = true; m_checksumCRC32C = value; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(Aws::String&& value) { m_checksumCRC32CHasBeenSet = true; m_checksumCRC32C = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(const char* value) { m_checksumCRC32CHasBeenSet = true; m_checksumCRC32C.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline Checksum& WithChecksumCRC32C(const Aws::String& value) { SetChecksumCRC32C(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline Checksum& WithChecksumCRC32C(Aws::String&& value) { SetChecksumCRC32C(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline Checksum& WithChecksumCRC32C(const char* value) { SetChecksumCRC32C(value); return *this;}
+
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumSHA1() const{ return m_checksumSHA1; }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool ChecksumSHA1HasBeenSet() const { return m_checksumSHA1HasBeenSet; }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(const Aws::String& value) { m_checksumSHA1HasBeenSet = true; m_checksumSHA1 = value; }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(Aws::String&& value) { m_checksumSHA1HasBeenSet = true; m_checksumSHA1 = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(const char* value) { m_checksumSHA1HasBeenSet = true; m_checksumSHA1.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline Checksum& WithChecksumSHA1(const Aws::String& value) { SetChecksumSHA1(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline Checksum& WithChecksumSHA1(Aws::String&& value) { SetChecksumSHA1(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline Checksum& WithChecksumSHA1(const char* value) { SetChecksumSHA1(value); return *this;}
+
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumSHA256() const{ return m_checksumSHA256; }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool ChecksumSHA256HasBeenSet() const { return m_checksumSHA256HasBeenSet; }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(const Aws::String& value) { m_checksumSHA256HasBeenSet = true; m_checksumSHA256 = value; }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(Aws::String&& value) { m_checksumSHA256HasBeenSet = true; m_checksumSHA256 = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(const char* value) { m_checksumSHA256HasBeenSet = true; m_checksumSHA256.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline Checksum& WithChecksumSHA256(const Aws::String& value) { SetChecksumSHA256(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline Checksum& WithChecksumSHA256(Aws::String&& value) { SetChecksumSHA256(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline Checksum& WithChecksumSHA256(const char* value) { SetChecksumSHA256(value); return *this;}
+
+ private:
+
+ Aws::String m_checksumCRC32;
+ bool m_checksumCRC32HasBeenSet = false;
+
+ Aws::String m_checksumCRC32C;
+ bool m_checksumCRC32CHasBeenSet = false;
+
+ Aws::String m_checksumSHA1;
+ bool m_checksumSHA1HasBeenSet = false;
+
+ Aws::String m_checksumSHA256;
+ bool m_checksumSHA256HasBeenSet = false;
+ };
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ChecksumAlgorithm.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ChecksumAlgorithm.h
new file mode 100644
index 0000000000..cdd0307538
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ChecksumAlgorithm.h
@@ -0,0 +1,33 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#pragma once
+#include <aws/s3/S3_EXPORTS.h>
+#include <aws/core/utils/memory/stl/AWSString.h>
+
+namespace Aws
+{
+namespace S3
+{
+namespace Model
+{
+ enum class ChecksumAlgorithm
+ {
+ NOT_SET,
+ CRC32,
+ CRC32C,
+ SHA1,
+ SHA256
+ };
+
+namespace ChecksumAlgorithmMapper
+{
+AWS_S3_API ChecksumAlgorithm GetChecksumAlgorithmForName(const Aws::String& name);
+
+AWS_S3_API Aws::String GetNameForChecksumAlgorithm(ChecksumAlgorithm value);
+} // namespace ChecksumAlgorithmMapper
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ChecksumMode.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ChecksumMode.h
new file mode 100644
index 0000000000..2efd0d38aa
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ChecksumMode.h
@@ -0,0 +1,30 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#pragma once
+#include <aws/s3/S3_EXPORTS.h>
+#include <aws/core/utils/memory/stl/AWSString.h>
+
+namespace Aws
+{
+namespace S3
+{
+namespace Model
+{
+ enum class ChecksumMode
+ {
+ NOT_SET,
+ ENABLED
+ };
+
+namespace ChecksumModeMapper
+{
+AWS_S3_API ChecksumMode GetChecksumModeForName(const Aws::String& name);
+
+AWS_S3_API Aws::String GetNameForChecksumMode(ChecksumMode value);
+} // namespace ChecksumModeMapper
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CloudFunctionConfiguration.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CloudFunctionConfiguration.h
index d85743d470..bc592a051a 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CloudFunctionConfiguration.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CloudFunctionConfiguration.h
@@ -25,19 +25,19 @@ namespace Model
{
/**
- * <p>Container for specifying the AWS Lambda notification
- * configuration.</p><p><h3>See Also:</h3> <a
+ * <p>Container for specifying the Lambda notification configuration.</p><p><h3>See
+ * Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CloudFunctionConfiguration">AWS
* API Reference</a></p>
*/
- class AWS_S3_API CloudFunctionConfiguration
+ class CloudFunctionConfiguration
{
public:
- CloudFunctionConfiguration();
- CloudFunctionConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
- CloudFunctionConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API CloudFunctionConfiguration();
+ AWS_S3_API CloudFunctionConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API CloudFunctionConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
@@ -198,16 +198,16 @@ namespace Model
private:
Aws::String m_id;
- bool m_idHasBeenSet;
+ bool m_idHasBeenSet = false;
Aws::Vector<Event> m_events;
- bool m_eventsHasBeenSet;
+ bool m_eventsHasBeenSet = false;
Aws::String m_cloudFunction;
- bool m_cloudFunctionHasBeenSet;
+ bool m_cloudFunctionHasBeenSet = false;
Aws::String m_invocationRole;
- bool m_invocationRoleHasBeenSet;
+ bool m_invocationRoleHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CommonPrefix.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CommonPrefix.h
index 42fec00298..6f876cde8e 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CommonPrefix.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CommonPrefix.h
@@ -31,14 +31,14 @@ namespace Model
* <a href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CommonPrefix">AWS
* API Reference</a></p>
*/
- class AWS_S3_API CommonPrefix
+ class CommonPrefix
{
public:
- CommonPrefix();
- CommonPrefix(const Aws::Utils::Xml::XmlNode& xmlNode);
- CommonPrefix& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API CommonPrefix();
+ AWS_S3_API CommonPrefix(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API CommonPrefix& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -84,7 +84,7 @@ namespace Model
private:
Aws::String m_prefix;
- bool m_prefixHasBeenSet;
+ bool m_prefixHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CompleteMultipartUploadRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CompleteMultipartUploadRequest.h
index 98e2ec2730..8972e55bfd 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CompleteMultipartUploadRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CompleteMultipartUploadRequest.h
@@ -25,10 +25,10 @@ namespace Model
/**
*/
- class AWS_S3_API CompleteMultipartUploadRequest : public S3Request
+ class CompleteMultipartUploadRequest : public S3Request
{
public:
- CompleteMultipartUploadRequest();
+ AWS_S3_API CompleteMultipartUploadRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -36,50 +36,183 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "CompleteMultipartUpload"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API bool HasEmbeddedError(IOStream &body, const Http::HeaderValueCollection &header) const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
- * <p>Name of the bucket to which the multipart upload was initiated.</p>
+ * <p>Name of the bucket to which the multipart upload was initiated.</p> <p>When
+ * using this action with an access point, you must direct requests to the access
+ * point hostname. The access point hostname takes the form
+ * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * action with Amazon S3 on Outposts, you must direct requests to the S3 on
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const Aws::String& GetBucket() const{ return m_bucket; }
/**
- * <p>Name of the bucket to which the multipart upload was initiated.</p>
+ * <p>Name of the bucket to which the multipart upload was initiated.</p> <p>When
+ * using this action with an access point, you must direct requests to the access
+ * point hostname. The access point hostname takes the form
+ * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * action with Amazon S3 on Outposts, you must direct requests to the S3 on
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; }
/**
- * <p>Name of the bucket to which the multipart upload was initiated.</p>
+ * <p>Name of the bucket to which the multipart upload was initiated.</p> <p>When
+ * using this action with an access point, you must direct requests to the access
+ * point hostname. The access point hostname takes the form
+ * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * action with Amazon S3 on Outposts, you must direct requests to the S3 on
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; }
/**
- * <p>Name of the bucket to which the multipart upload was initiated.</p>
+ * <p>Name of the bucket to which the multipart upload was initiated.</p> <p>When
+ * using this action with an access point, you must direct requests to the access
+ * point hostname. The access point hostname takes the form
+ * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * action with Amazon S3 on Outposts, you must direct requests to the S3 on
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); }
/**
- * <p>Name of the bucket to which the multipart upload was initiated.</p>
+ * <p>Name of the bucket to which the multipart upload was initiated.</p> <p>When
+ * using this action with an access point, you must direct requests to the access
+ * point hostname. The access point hostname takes the form
+ * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * action with Amazon S3 on Outposts, you must direct requests to the S3 on
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); }
/**
- * <p>Name of the bucket to which the multipart upload was initiated.</p>
+ * <p>Name of the bucket to which the multipart upload was initiated.</p> <p>When
+ * using this action with an access point, you must direct requests to the access
+ * point hostname. The access point hostname takes the form
+ * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * action with Amazon S3 on Outposts, you must direct requests to the S3 on
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline CompleteMultipartUploadRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;}
/**
- * <p>Name of the bucket to which the multipart upload was initiated.</p>
+ * <p>Name of the bucket to which the multipart upload was initiated.</p> <p>When
+ * using this action with an access point, you must direct requests to the access
+ * point hostname. The access point hostname takes the form
+ * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * action with Amazon S3 on Outposts, you must direct requests to the S3 on
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline CompleteMultipartUploadRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;}
/**
- * <p>Name of the bucket to which the multipart upload was initiated.</p>
+ * <p>Name of the bucket to which the multipart upload was initiated.</p> <p>When
+ * using this action with an access point, you must direct requests to the access
+ * point hostname. The access point hostname takes the form
+ * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * action with Amazon S3 on Outposts, you must direct requests to the S3 on
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline CompleteMultipartUploadRequest& WithBucket(const char* value) { SetBucket(value); return *this;}
@@ -197,6 +330,322 @@ namespace Model
inline CompleteMultipartUploadRequest& WithUploadId(const char* value) { SetUploadId(value); return *this;}
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumCRC32() const{ return m_checksumCRC32; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool ChecksumCRC32HasBeenSet() const { return m_checksumCRC32HasBeenSet; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(const Aws::String& value) { m_checksumCRC32HasBeenSet = true; m_checksumCRC32 = value; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(Aws::String&& value) { m_checksumCRC32HasBeenSet = true; m_checksumCRC32 = std::move(value); }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(const char* value) { m_checksumCRC32HasBeenSet = true; m_checksumCRC32.assign(value); }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompleteMultipartUploadRequest& WithChecksumCRC32(const Aws::String& value) { SetChecksumCRC32(value); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompleteMultipartUploadRequest& WithChecksumCRC32(Aws::String&& value) { SetChecksumCRC32(std::move(value)); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompleteMultipartUploadRequest& WithChecksumCRC32(const char* value) { SetChecksumCRC32(value); return *this;}
+
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32C checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumCRC32C() const{ return m_checksumCRC32C; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32C checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool ChecksumCRC32CHasBeenSet() const { return m_checksumCRC32CHasBeenSet; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32C checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(const Aws::String& value) { m_checksumCRC32CHasBeenSet = true; m_checksumCRC32C = value; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32C checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(Aws::String&& value) { m_checksumCRC32CHasBeenSet = true; m_checksumCRC32C = std::move(value); }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32C checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(const char* value) { m_checksumCRC32CHasBeenSet = true; m_checksumCRC32C.assign(value); }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32C checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompleteMultipartUploadRequest& WithChecksumCRC32C(const Aws::String& value) { SetChecksumCRC32C(value); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32C checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompleteMultipartUploadRequest& WithChecksumCRC32C(Aws::String&& value) { SetChecksumCRC32C(std::move(value)); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32C checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompleteMultipartUploadRequest& WithChecksumCRC32C(const char* value) { SetChecksumCRC32C(value); return *this;}
+
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 160-bit SHA-1 digest of the object. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumSHA1() const{ return m_checksumSHA1; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 160-bit SHA-1 digest of the object. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool ChecksumSHA1HasBeenSet() const { return m_checksumSHA1HasBeenSet; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 160-bit SHA-1 digest of the object. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(const Aws::String& value) { m_checksumSHA1HasBeenSet = true; m_checksumSHA1 = value; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 160-bit SHA-1 digest of the object. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(Aws::String&& value) { m_checksumSHA1HasBeenSet = true; m_checksumSHA1 = std::move(value); }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 160-bit SHA-1 digest of the object. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(const char* value) { m_checksumSHA1HasBeenSet = true; m_checksumSHA1.assign(value); }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 160-bit SHA-1 digest of the object. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompleteMultipartUploadRequest& WithChecksumSHA1(const Aws::String& value) { SetChecksumSHA1(value); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 160-bit SHA-1 digest of the object. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompleteMultipartUploadRequest& WithChecksumSHA1(Aws::String&& value) { SetChecksumSHA1(std::move(value)); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 160-bit SHA-1 digest of the object. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompleteMultipartUploadRequest& WithChecksumSHA1(const char* value) { SetChecksumSHA1(value); return *this;}
+
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumSHA256() const{ return m_checksumSHA256; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool ChecksumSHA256HasBeenSet() const { return m_checksumSHA256HasBeenSet; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(const Aws::String& value) { m_checksumSHA256HasBeenSet = true; m_checksumSHA256 = value; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(Aws::String&& value) { m_checksumSHA256HasBeenSet = true; m_checksumSHA256 = std::move(value); }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(const char* value) { m_checksumSHA256HasBeenSet = true; m_checksumSHA256.assign(value); }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompleteMultipartUploadRequest& WithChecksumSHA256(const Aws::String& value) { SetChecksumSHA256(value); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompleteMultipartUploadRequest& WithChecksumSHA256(Aws::String&& value) { SetChecksumSHA256(std::move(value)); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompleteMultipartUploadRequest& WithChecksumSHA256(const char* value) { SetChecksumSHA256(value); return *this;}
+
+
inline const RequestPayer& GetRequestPayer() const{ return m_requestPayer; }
@@ -218,61 +667,280 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline CompleteMultipartUploadRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline CompleteMultipartUploadRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline CompleteMultipartUploadRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
+ /**
+ * <p>The server-side encryption (SSE) algorithm used to encrypt the object. This
+ * parameter is needed only when the object was created using a checksum algorithm.
+ * For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetSSECustomerAlgorithm() const{ return m_sSECustomerAlgorithm; }
+
+ /**
+ * <p>The server-side encryption (SSE) algorithm used to encrypt the object. This
+ * parameter is needed only when the object was created using a checksum algorithm.
+ * For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool SSECustomerAlgorithmHasBeenSet() const { return m_sSECustomerAlgorithmHasBeenSet; }
+
+ /**
+ * <p>The server-side encryption (SSE) algorithm used to encrypt the object. This
+ * parameter is needed only when the object was created using a checksum algorithm.
+ * For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetSSECustomerAlgorithm(const Aws::String& value) { m_sSECustomerAlgorithmHasBeenSet = true; m_sSECustomerAlgorithm = value; }
+
+ /**
+ * <p>The server-side encryption (SSE) algorithm used to encrypt the object. This
+ * parameter is needed only when the object was created using a checksum algorithm.
+ * For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetSSECustomerAlgorithm(Aws::String&& value) { m_sSECustomerAlgorithmHasBeenSet = true; m_sSECustomerAlgorithm = std::move(value); }
+
+ /**
+ * <p>The server-side encryption (SSE) algorithm used to encrypt the object. This
+ * parameter is needed only when the object was created using a checksum algorithm.
+ * For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetSSECustomerAlgorithm(const char* value) { m_sSECustomerAlgorithmHasBeenSet = true; m_sSECustomerAlgorithm.assign(value); }
+
+ /**
+ * <p>The server-side encryption (SSE) algorithm used to encrypt the object. This
+ * parameter is needed only when the object was created using a checksum algorithm.
+ * For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompleteMultipartUploadRequest& WithSSECustomerAlgorithm(const Aws::String& value) { SetSSECustomerAlgorithm(value); return *this;}
+
+ /**
+ * <p>The server-side encryption (SSE) algorithm used to encrypt the object. This
+ * parameter is needed only when the object was created using a checksum algorithm.
+ * For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompleteMultipartUploadRequest& WithSSECustomerAlgorithm(Aws::String&& value) { SetSSECustomerAlgorithm(std::move(value)); return *this;}
+
+ /**
+ * <p>The server-side encryption (SSE) algorithm used to encrypt the object. This
+ * parameter is needed only when the object was created using a checksum algorithm.
+ * For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompleteMultipartUploadRequest& WithSSECustomerAlgorithm(const char* value) { SetSSECustomerAlgorithm(value); return *this;}
+
+
+ /**
+ * <p>The server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetSSECustomerKey() const{ return m_sSECustomerKey; }
+
+ /**
+ * <p>The server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool SSECustomerKeyHasBeenSet() const { return m_sSECustomerKeyHasBeenSet; }
+
+ /**
+ * <p>The server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetSSECustomerKey(const Aws::String& value) { m_sSECustomerKeyHasBeenSet = true; m_sSECustomerKey = value; }
+
+ /**
+ * <p>The server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetSSECustomerKey(Aws::String&& value) { m_sSECustomerKeyHasBeenSet = true; m_sSECustomerKey = std::move(value); }
+
+ /**
+ * <p>The server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetSSECustomerKey(const char* value) { m_sSECustomerKeyHasBeenSet = true; m_sSECustomerKey.assign(value); }
+
+ /**
+ * <p>The server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompleteMultipartUploadRequest& WithSSECustomerKey(const Aws::String& value) { SetSSECustomerKey(value); return *this;}
+
+ /**
+ * <p>The server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompleteMultipartUploadRequest& WithSSECustomerKey(Aws::String&& value) { SetSSECustomerKey(std::move(value)); return *this;}
+
+ /**
+ * <p>The server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompleteMultipartUploadRequest& WithSSECustomerKey(const char* value) { SetSSECustomerKey(value); return *this;}
+
+
+ /**
+ * <p>The MD5 server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetSSECustomerKeyMD5() const{ return m_sSECustomerKeyMD5; }
+
+ /**
+ * <p>The MD5 server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool SSECustomerKeyMD5HasBeenSet() const { return m_sSECustomerKeyMD5HasBeenSet; }
+
+ /**
+ * <p>The MD5 server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetSSECustomerKeyMD5(const Aws::String& value) { m_sSECustomerKeyMD5HasBeenSet = true; m_sSECustomerKeyMD5 = value; }
+
+ /**
+ * <p>The MD5 server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetSSECustomerKeyMD5(Aws::String&& value) { m_sSECustomerKeyMD5HasBeenSet = true; m_sSECustomerKeyMD5 = std::move(value); }
+
+ /**
+ * <p>The MD5 server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetSSECustomerKeyMD5(const char* value) { m_sSECustomerKeyMD5HasBeenSet = true; m_sSECustomerKeyMD5.assign(value); }
+
+ /**
+ * <p>The MD5 server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompleteMultipartUploadRequest& WithSSECustomerKeyMD5(const Aws::String& value) { SetSSECustomerKeyMD5(value); return *this;}
+
+ /**
+ * <p>The MD5 server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompleteMultipartUploadRequest& WithSSECustomerKeyMD5(Aws::String&& value) { SetSSECustomerKeyMD5(std::move(value)); return *this;}
+
+ /**
+ * <p>The MD5 server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompleteMultipartUploadRequest& WithSSECustomerKeyMD5(const char* value) { SetSSECustomerKeyMD5(value); return *this;}
+
+
inline const Aws::Map<Aws::String, Aws::String>& GetCustomizedAccessLogTag() const{ return m_customizedAccessLogTag; }
@@ -315,25 +983,46 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_key;
- bool m_keyHasBeenSet;
+ bool m_keyHasBeenSet = false;
CompletedMultipartUpload m_multipartUpload;
- bool m_multipartUploadHasBeenSet;
+ bool m_multipartUploadHasBeenSet = false;
Aws::String m_uploadId;
- bool m_uploadIdHasBeenSet;
+ bool m_uploadIdHasBeenSet = false;
+
+ Aws::String m_checksumCRC32;
+ bool m_checksumCRC32HasBeenSet = false;
+
+ Aws::String m_checksumCRC32C;
+ bool m_checksumCRC32CHasBeenSet = false;
+
+ Aws::String m_checksumSHA1;
+ bool m_checksumSHA1HasBeenSet = false;
+
+ Aws::String m_checksumSHA256;
+ bool m_checksumSHA256HasBeenSet = false;
RequestPayer m_requestPayer;
- bool m_requestPayerHasBeenSet;
+ bool m_requestPayerHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
+
+ Aws::String m_sSECustomerAlgorithm;
+ bool m_sSECustomerAlgorithmHasBeenSet = false;
+
+ Aws::String m_sSECustomerKey;
+ bool m_sSECustomerKeyHasBeenSet = false;
+
+ Aws::String m_sSECustomerKeyMD5;
+ bool m_sSECustomerKeyMD5HasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CompleteMultipartUploadResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CompleteMultipartUploadResult.h
index d5cf10ac2b..7c131a19fd 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CompleteMultipartUploadResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CompleteMultipartUploadResult.h
@@ -26,12 +26,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API CompleteMultipartUploadResult
+ class CompleteMultipartUploadResult
{
public:
- CompleteMultipartUploadResult();
- CompleteMultipartUploadResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- CompleteMultipartUploadResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API CompleteMultipartUploadResult();
+ AWS_S3_API CompleteMultipartUploadResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API CompleteMultipartUploadResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
@@ -71,149 +71,156 @@ namespace Model
/**
- * <p>The name of the bucket that contains the newly created object.</p> <p>When
- * using this action with an access point, you must direct requests to the access
- * point hostname. The access point hostname takes the form
+ * <p>The name of the bucket that contains the newly created object. Does not
+ * return the access point ARN or access point alias if used.</p> <p>When using
+ * this action with an access point, you must direct requests to the access point
+ * hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const Aws::String& GetBucket() const{ return m_bucket; }
/**
- * <p>The name of the bucket that contains the newly created object.</p> <p>When
- * using this action with an access point, you must direct requests to the access
- * point hostname. The access point hostname takes the form
+ * <p>The name of the bucket that contains the newly created object. Does not
+ * return the access point ARN or access point alias if used.</p> <p>When using
+ * this action with an access point, you must direct requests to the access point
+ * hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const Aws::String& value) { m_bucket = value; }
/**
- * <p>The name of the bucket that contains the newly created object.</p> <p>When
- * using this action with an access point, you must direct requests to the access
- * point hostname. The access point hostname takes the form
+ * <p>The name of the bucket that contains the newly created object. Does not
+ * return the access point ARN or access point alias if used.</p> <p>When using
+ * this action with an access point, you must direct requests to the access point
+ * hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(Aws::String&& value) { m_bucket = std::move(value); }
/**
- * <p>The name of the bucket that contains the newly created object.</p> <p>When
- * using this action with an access point, you must direct requests to the access
- * point hostname. The access point hostname takes the form
+ * <p>The name of the bucket that contains the newly created object. Does not
+ * return the access point ARN or access point alias if used.</p> <p>When using
+ * this action with an access point, you must direct requests to the access point
+ * hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const char* value) { m_bucket.assign(value); }
/**
- * <p>The name of the bucket that contains the newly created object.</p> <p>When
- * using this action with an access point, you must direct requests to the access
- * point hostname. The access point hostname takes the form
+ * <p>The name of the bucket that contains the newly created object. Does not
+ * return the access point ARN or access point alias if used.</p> <p>When using
+ * this action with an access point, you must direct requests to the access point
+ * hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline CompleteMultipartUploadResult& WithBucket(const Aws::String& value) { SetBucket(value); return *this;}
/**
- * <p>The name of the bucket that contains the newly created object.</p> <p>When
- * using this action with an access point, you must direct requests to the access
- * point hostname. The access point hostname takes the form
+ * <p>The name of the bucket that contains the newly created object. Does not
+ * return the access point ARN or access point alias if used.</p> <p>When using
+ * this action with an access point, you must direct requests to the access point
+ * hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline CompleteMultipartUploadResult& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;}
/**
- * <p>The name of the bucket that contains the newly created object.</p> <p>When
- * using this action with an access point, you must direct requests to the access
- * point hostname. The access point hostname takes the form
+ * <p>The name of the bucket that contains the newly created object. Does not
+ * return the access point ARN or access point alias if used.</p> <p>When using
+ * this action with an access point, you must direct requests to the access point
+ * hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline CompleteMultipartUploadResult& WithBucket(const char* value) { SetBucket(value); return *this;}
@@ -256,43 +263,50 @@ namespace Model
/**
* <p>If the object expiration is configured, this will contain the expiration date
- * (expiry-date) and rule ID (rule-id). The value of rule-id is URL encoded.</p>
+ * (<code>expiry-date</code>) and rule ID (<code>rule-id</code>). The value of
+ * <code>rule-id</code> is URL-encoded.</p>
*/
inline const Aws::String& GetExpiration() const{ return m_expiration; }
/**
* <p>If the object expiration is configured, this will contain the expiration date
- * (expiry-date) and rule ID (rule-id). The value of rule-id is URL encoded.</p>
+ * (<code>expiry-date</code>) and rule ID (<code>rule-id</code>). The value of
+ * <code>rule-id</code> is URL-encoded.</p>
*/
inline void SetExpiration(const Aws::String& value) { m_expiration = value; }
/**
* <p>If the object expiration is configured, this will contain the expiration date
- * (expiry-date) and rule ID (rule-id). The value of rule-id is URL encoded.</p>
+ * (<code>expiry-date</code>) and rule ID (<code>rule-id</code>). The value of
+ * <code>rule-id</code> is URL-encoded.</p>
*/
inline void SetExpiration(Aws::String&& value) { m_expiration = std::move(value); }
/**
* <p>If the object expiration is configured, this will contain the expiration date
- * (expiry-date) and rule ID (rule-id). The value of rule-id is URL encoded.</p>
+ * (<code>expiry-date</code>) and rule ID (<code>rule-id</code>). The value of
+ * <code>rule-id</code> is URL-encoded.</p>
*/
inline void SetExpiration(const char* value) { m_expiration.assign(value); }
/**
* <p>If the object expiration is configured, this will contain the expiration date
- * (expiry-date) and rule ID (rule-id). The value of rule-id is URL encoded.</p>
+ * (<code>expiry-date</code>) and rule ID (<code>rule-id</code>). The value of
+ * <code>rule-id</code> is URL-encoded.</p>
*/
inline CompleteMultipartUploadResult& WithExpiration(const Aws::String& value) { SetExpiration(value); return *this;}
/**
* <p>If the object expiration is configured, this will contain the expiration date
- * (expiry-date) and rule ID (rule-id). The value of rule-id is URL encoded.</p>
+ * (<code>expiry-date</code>) and rule ID (<code>rule-id</code>). The value of
+ * <code>rule-id</code> is URL-encoded.</p>
*/
inline CompleteMultipartUploadResult& WithExpiration(Aws::String&& value) { SetExpiration(std::move(value)); return *this;}
/**
* <p>If the object expiration is configured, this will contain the expiration date
- * (expiry-date) and rule ID (rule-id). The value of rule-id is URL encoded.</p>
+ * (<code>expiry-date</code>) and rule ID (<code>rule-id</code>). The value of
+ * <code>rule-id</code> is URL-encoded.</p>
*/
inline CompleteMultipartUploadResult& WithExpiration(const char* value) { SetExpiration(value); return *this;}
@@ -303,7 +317,10 @@ namespace Model
* opaque string. The entity tag may or may not be an MD5 digest of the object
* data. If the entity tag is not an MD5 digest of the object data, it will contain
* one or more nonhexadecimal characters and/or will consist of less than 32 or
- * more than 32 hexadecimal digits.</p>
+ * more than 32 hexadecimal digits. For more information about how the entity tag
+ * is calculated, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const Aws::String& GetETag() const{ return m_eTag; }
@@ -313,7 +330,10 @@ namespace Model
* opaque string. The entity tag may or may not be an MD5 digest of the object
* data. If the entity tag is not an MD5 digest of the object data, it will contain
* one or more nonhexadecimal characters and/or will consist of less than 32 or
- * more than 32 hexadecimal digits.</p>
+ * more than 32 hexadecimal digits. For more information about how the entity tag
+ * is calculated, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetETag(const Aws::String& value) { m_eTag = value; }
@@ -323,7 +343,10 @@ namespace Model
* opaque string. The entity tag may or may not be an MD5 digest of the object
* data. If the entity tag is not an MD5 digest of the object data, it will contain
* one or more nonhexadecimal characters and/or will consist of less than 32 or
- * more than 32 hexadecimal digits.</p>
+ * more than 32 hexadecimal digits. For more information about how the entity tag
+ * is calculated, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetETag(Aws::String&& value) { m_eTag = std::move(value); }
@@ -333,7 +356,10 @@ namespace Model
* opaque string. The entity tag may or may not be an MD5 digest of the object
* data. If the entity tag is not an MD5 digest of the object data, it will contain
* one or more nonhexadecimal characters and/or will consist of less than 32 or
- * more than 32 hexadecimal digits.</p>
+ * more than 32 hexadecimal digits. For more information about how the entity tag
+ * is calculated, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetETag(const char* value) { m_eTag.assign(value); }
@@ -343,7 +369,10 @@ namespace Model
* opaque string. The entity tag may or may not be an MD5 digest of the object
* data. If the entity tag is not an MD5 digest of the object data, it will contain
* one or more nonhexadecimal characters and/or will consist of less than 32 or
- * more than 32 hexadecimal digits.</p>
+ * more than 32 hexadecimal digits. For more information about how the entity tag
+ * is calculated, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline CompleteMultipartUploadResult& WithETag(const Aws::String& value) { SetETag(value); return *this;}
@@ -353,7 +382,10 @@ namespace Model
* opaque string. The entity tag may or may not be an MD5 digest of the object
* data. If the entity tag is not an MD5 digest of the object data, it will contain
* one or more nonhexadecimal characters and/or will consist of less than 32 or
- * more than 32 hexadecimal digits.</p>
+ * more than 32 hexadecimal digits. For more information about how the entity tag
+ * is calculated, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline CompleteMultipartUploadResult& WithETag(Aws::String&& value) { SetETag(std::move(value)); return *this;}
@@ -363,48 +395,335 @@ namespace Model
* opaque string. The entity tag may or may not be an MD5 digest of the object
* data. If the entity tag is not an MD5 digest of the object data, it will contain
* one or more nonhexadecimal characters and/or will consist of less than 32 or
- * more than 32 hexadecimal digits.</p>
+ * more than 32 hexadecimal digits. For more information about how the entity tag
+ * is calculated, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline CompleteMultipartUploadResult& WithETag(const char* value) { SetETag(value); return *this;}
/**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumCRC32() const{ return m_checksumCRC32; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(const Aws::String& value) { m_checksumCRC32 = value; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(Aws::String&& value) { m_checksumCRC32 = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(const char* value) { m_checksumCRC32.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompleteMultipartUploadResult& WithChecksumCRC32(const Aws::String& value) { SetChecksumCRC32(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompleteMultipartUploadResult& WithChecksumCRC32(Aws::String&& value) { SetChecksumCRC32(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompleteMultipartUploadResult& WithChecksumCRC32(const char* value) { SetChecksumCRC32(value); return *this;}
+
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumCRC32C() const{ return m_checksumCRC32C; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(const Aws::String& value) { m_checksumCRC32C = value; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(Aws::String&& value) { m_checksumCRC32C = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(const char* value) { m_checksumCRC32C.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompleteMultipartUploadResult& WithChecksumCRC32C(const Aws::String& value) { SetChecksumCRC32C(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompleteMultipartUploadResult& WithChecksumCRC32C(Aws::String&& value) { SetChecksumCRC32C(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompleteMultipartUploadResult& WithChecksumCRC32C(const char* value) { SetChecksumCRC32C(value); return *this;}
+
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumSHA1() const{ return m_checksumSHA1; }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(const Aws::String& value) { m_checksumSHA1 = value; }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(Aws::String&& value) { m_checksumSHA1 = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(const char* value) { m_checksumSHA1.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompleteMultipartUploadResult& WithChecksumSHA1(const Aws::String& value) { SetChecksumSHA1(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompleteMultipartUploadResult& WithChecksumSHA1(Aws::String&& value) { SetChecksumSHA1(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompleteMultipartUploadResult& WithChecksumSHA1(const char* value) { SetChecksumSHA1(value); return *this;}
+
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumSHA256() const{ return m_checksumSHA256; }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(const Aws::String& value) { m_checksumSHA256 = value; }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(Aws::String&& value) { m_checksumSHA256 = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(const char* value) { m_checksumSHA256.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompleteMultipartUploadResult& WithChecksumSHA256(const Aws::String& value) { SetChecksumSHA256(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompleteMultipartUploadResult& WithChecksumSHA256(Aws::String&& value) { SetChecksumSHA256(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompleteMultipartUploadResult& WithChecksumSHA256(const char* value) { SetChecksumSHA256(value); return *this;}
+
+
+ /**
* <p>If you specified server-side encryption either with an Amazon S3-managed
- * encryption key or an AWS KMS customer master key (CMK) in your initiate
- * multipart upload request, the response includes this header. It confirms the
- * encryption algorithm that Amazon S3 used to encrypt the object.</p>
+ * encryption key or an Amazon Web Services KMS key in your initiate multipart
+ * upload request, the response includes this header. It confirms the encryption
+ * algorithm that Amazon S3 used to encrypt the object.</p>
*/
inline const ServerSideEncryption& GetServerSideEncryption() const{ return m_serverSideEncryption; }
/**
* <p>If you specified server-side encryption either with an Amazon S3-managed
- * encryption key or an AWS KMS customer master key (CMK) in your initiate
- * multipart upload request, the response includes this header. It confirms the
- * encryption algorithm that Amazon S3 used to encrypt the object.</p>
+ * encryption key or an Amazon Web Services KMS key in your initiate multipart
+ * upload request, the response includes this header. It confirms the encryption
+ * algorithm that Amazon S3 used to encrypt the object.</p>
*/
inline void SetServerSideEncryption(const ServerSideEncryption& value) { m_serverSideEncryption = value; }
/**
* <p>If you specified server-side encryption either with an Amazon S3-managed
- * encryption key or an AWS KMS customer master key (CMK) in your initiate
- * multipart upload request, the response includes this header. It confirms the
- * encryption algorithm that Amazon S3 used to encrypt the object.</p>
+ * encryption key or an Amazon Web Services KMS key in your initiate multipart
+ * upload request, the response includes this header. It confirms the encryption
+ * algorithm that Amazon S3 used to encrypt the object.</p>
*/
inline void SetServerSideEncryption(ServerSideEncryption&& value) { m_serverSideEncryption = std::move(value); }
/**
* <p>If you specified server-side encryption either with an Amazon S3-managed
- * encryption key or an AWS KMS customer master key (CMK) in your initiate
- * multipart upload request, the response includes this header. It confirms the
- * encryption algorithm that Amazon S3 used to encrypt the object.</p>
+ * encryption key or an Amazon Web Services KMS key in your initiate multipart
+ * upload request, the response includes this header. It confirms the encryption
+ * algorithm that Amazon S3 used to encrypt the object.</p>
*/
inline CompleteMultipartUploadResult& WithServerSideEncryption(const ServerSideEncryption& value) { SetServerSideEncryption(value); return *this;}
/**
* <p>If you specified server-side encryption either with an Amazon S3-managed
- * encryption key or an AWS KMS customer master key (CMK) in your initiate
- * multipart upload request, the response includes this header. It confirms the
- * encryption algorithm that Amazon S3 used to encrypt the object.</p>
+ * encryption key or an Amazon Web Services KMS key in your initiate multipart
+ * upload request, the response includes this header. It confirms the encryption
+ * algorithm that Amazon S3 used to encrypt the object.</p>
*/
inline CompleteMultipartUploadResult& WithServerSideEncryption(ServerSideEncryption&& value) { SetServerSideEncryption(std::move(value)); return *this;}
@@ -453,70 +772,70 @@ namespace Model
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline const Aws::String& GetSSEKMSKeyId() const{ return m_sSEKMSKeyId; }
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline void SetSSEKMSKeyId(const Aws::String& value) { m_sSEKMSKeyId = value; }
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline void SetSSEKMSKeyId(Aws::String&& value) { m_sSEKMSKeyId = std::move(value); }
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline void SetSSEKMSKeyId(const char* value) { m_sSEKMSKeyId.assign(value); }
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline CompleteMultipartUploadResult& WithSSEKMSKeyId(const Aws::String& value) { SetSSEKMSKeyId(value); return *this;}
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline CompleteMultipartUploadResult& WithSSEKMSKeyId(Aws::String&& value) { SetSSEKMSKeyId(std::move(value)); return *this;}
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline CompleteMultipartUploadResult& WithSSEKMSKeyId(const char* value) { SetSSEKMSKeyId(value); return *this;}
/**
* <p>Indicates whether the multipart upload uses an S3 Bucket Key for server-side
- * encryption with AWS KMS (SSE-KMS).</p>
+ * encryption with Amazon Web Services KMS (SSE-KMS).</p>
*/
inline bool GetBucketKeyEnabled() const{ return m_bucketKeyEnabled; }
/**
* <p>Indicates whether the multipart upload uses an S3 Bucket Key for server-side
- * encryption with AWS KMS (SSE-KMS).</p>
+ * encryption with Amazon Web Services KMS (SSE-KMS).</p>
*/
inline void SetBucketKeyEnabled(bool value) { m_bucketKeyEnabled = value; }
/**
* <p>Indicates whether the multipart upload uses an S3 Bucket Key for server-side
- * encryption with AWS KMS (SSE-KMS).</p>
+ * encryption with Amazon Web Services KMS (SSE-KMS).</p>
*/
inline CompleteMultipartUploadResult& WithBucketKeyEnabled(bool value) { SetBucketKeyEnabled(value); return *this;}
@@ -548,6 +867,14 @@ namespace Model
Aws::String m_eTag;
+ Aws::String m_checksumCRC32;
+
+ Aws::String m_checksumCRC32C;
+
+ Aws::String m_checksumSHA1;
+
+ Aws::String m_checksumSHA256;
+
ServerSideEncryption m_serverSideEncryption;
Aws::String m_versionId;
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CompletedMultipartUpload.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CompletedMultipartUpload.h
index 0970651366..a89f7743ee 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CompletedMultipartUpload.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CompletedMultipartUpload.h
@@ -29,60 +29,76 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CompletedMultipartUpload">AWS
* API Reference</a></p>
*/
- class AWS_S3_API CompletedMultipartUpload
+ class CompletedMultipartUpload
{
public:
- CompletedMultipartUpload();
- CompletedMultipartUpload(const Aws::Utils::Xml::XmlNode& xmlNode);
- CompletedMultipartUpload& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API CompletedMultipartUpload();
+ AWS_S3_API CompletedMultipartUpload(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API CompletedMultipartUpload& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
- * <p>Array of CompletedPart data types.</p>
+ * <p>Array of CompletedPart data types.</p> <p>If you do not supply a valid
+ * <code>Part</code> with your request, the service sends back an HTTP 400
+ * response.</p>
*/
inline const Aws::Vector<CompletedPart>& GetParts() const{ return m_parts; }
/**
- * <p>Array of CompletedPart data types.</p>
+ * <p>Array of CompletedPart data types.</p> <p>If you do not supply a valid
+ * <code>Part</code> with your request, the service sends back an HTTP 400
+ * response.</p>
*/
inline bool PartsHasBeenSet() const { return m_partsHasBeenSet; }
/**
- * <p>Array of CompletedPart data types.</p>
+ * <p>Array of CompletedPart data types.</p> <p>If you do not supply a valid
+ * <code>Part</code> with your request, the service sends back an HTTP 400
+ * response.</p>
*/
inline void SetParts(const Aws::Vector<CompletedPart>& value) { m_partsHasBeenSet = true; m_parts = value; }
/**
- * <p>Array of CompletedPart data types.</p>
+ * <p>Array of CompletedPart data types.</p> <p>If you do not supply a valid
+ * <code>Part</code> with your request, the service sends back an HTTP 400
+ * response.</p>
*/
inline void SetParts(Aws::Vector<CompletedPart>&& value) { m_partsHasBeenSet = true; m_parts = std::move(value); }
/**
- * <p>Array of CompletedPart data types.</p>
+ * <p>Array of CompletedPart data types.</p> <p>If you do not supply a valid
+ * <code>Part</code> with your request, the service sends back an HTTP 400
+ * response.</p>
*/
inline CompletedMultipartUpload& WithParts(const Aws::Vector<CompletedPart>& value) { SetParts(value); return *this;}
/**
- * <p>Array of CompletedPart data types.</p>
+ * <p>Array of CompletedPart data types.</p> <p>If you do not supply a valid
+ * <code>Part</code> with your request, the service sends back an HTTP 400
+ * response.</p>
*/
inline CompletedMultipartUpload& WithParts(Aws::Vector<CompletedPart>&& value) { SetParts(std::move(value)); return *this;}
/**
- * <p>Array of CompletedPart data types.</p>
+ * <p>Array of CompletedPart data types.</p> <p>If you do not supply a valid
+ * <code>Part</code> with your request, the service sends back an HTTP 400
+ * response.</p>
*/
inline CompletedMultipartUpload& AddParts(const CompletedPart& value) { m_partsHasBeenSet = true; m_parts.push_back(value); return *this; }
/**
- * <p>Array of CompletedPart data types.</p>
+ * <p>Array of CompletedPart data types.</p> <p>If you do not supply a valid
+ * <code>Part</code> with your request, the service sends back an HTTP 400
+ * response.</p>
*/
inline CompletedMultipartUpload& AddParts(CompletedPart&& value) { m_partsHasBeenSet = true; m_parts.push_back(std::move(value)); return *this; }
private:
Aws::Vector<CompletedPart> m_parts;
- bool m_partsHasBeenSet;
+ bool m_partsHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CompletedPart.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CompletedPart.h
index 5e1507d762..80e5f91a77 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CompletedPart.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CompletedPart.h
@@ -27,14 +27,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CompletedPart">AWS
* API Reference</a></p>
*/
- class AWS_S3_API CompletedPart
+ class CompletedPart
{
public:
- CompletedPart();
- CompletedPart(const Aws::Utils::Xml::XmlNode& xmlNode);
- CompletedPart& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API CompletedPart();
+ AWS_S3_API CompletedPart(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API CompletedPart& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -79,6 +79,330 @@ namespace Model
/**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumCRC32() const{ return m_checksumCRC32; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool ChecksumCRC32HasBeenSet() const { return m_checksumCRC32HasBeenSet; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(const Aws::String& value) { m_checksumCRC32HasBeenSet = true; m_checksumCRC32 = value; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(Aws::String&& value) { m_checksumCRC32HasBeenSet = true; m_checksumCRC32 = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(const char* value) { m_checksumCRC32HasBeenSet = true; m_checksumCRC32.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompletedPart& WithChecksumCRC32(const Aws::String& value) { SetChecksumCRC32(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompletedPart& WithChecksumCRC32(Aws::String&& value) { SetChecksumCRC32(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompletedPart& WithChecksumCRC32(const char* value) { SetChecksumCRC32(value); return *this;}
+
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumCRC32C() const{ return m_checksumCRC32C; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool ChecksumCRC32CHasBeenSet() const { return m_checksumCRC32CHasBeenSet; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(const Aws::String& value) { m_checksumCRC32CHasBeenSet = true; m_checksumCRC32C = value; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(Aws::String&& value) { m_checksumCRC32CHasBeenSet = true; m_checksumCRC32C = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(const char* value) { m_checksumCRC32CHasBeenSet = true; m_checksumCRC32C.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompletedPart& WithChecksumCRC32C(const Aws::String& value) { SetChecksumCRC32C(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompletedPart& WithChecksumCRC32C(Aws::String&& value) { SetChecksumCRC32C(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompletedPart& WithChecksumCRC32C(const char* value) { SetChecksumCRC32C(value); return *this;}
+
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumSHA1() const{ return m_checksumSHA1; }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool ChecksumSHA1HasBeenSet() const { return m_checksumSHA1HasBeenSet; }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(const Aws::String& value) { m_checksumSHA1HasBeenSet = true; m_checksumSHA1 = value; }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(Aws::String&& value) { m_checksumSHA1HasBeenSet = true; m_checksumSHA1 = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(const char* value) { m_checksumSHA1HasBeenSet = true; m_checksumSHA1.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompletedPart& WithChecksumSHA1(const Aws::String& value) { SetChecksumSHA1(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompletedPart& WithChecksumSHA1(Aws::String&& value) { SetChecksumSHA1(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompletedPart& WithChecksumSHA1(const char* value) { SetChecksumSHA1(value); return *this;}
+
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumSHA256() const{ return m_checksumSHA256; }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool ChecksumSHA256HasBeenSet() const { return m_checksumSHA256HasBeenSet; }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(const Aws::String& value) { m_checksumSHA256HasBeenSet = true; m_checksumSHA256 = value; }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(Aws::String&& value) { m_checksumSHA256HasBeenSet = true; m_checksumSHA256 = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(const char* value) { m_checksumSHA256HasBeenSet = true; m_checksumSHA256.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompletedPart& WithChecksumSHA256(const Aws::String& value) { SetChecksumSHA256(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompletedPart& WithChecksumSHA256(Aws::String&& value) { SetChecksumSHA256(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CompletedPart& WithChecksumSHA256(const char* value) { SetChecksumSHA256(value); return *this;}
+
+
+ /**
* <p>Part number that identifies the part. This is a positive integer between 1
* and 10,000.</p>
*/
@@ -105,10 +429,22 @@ namespace Model
private:
Aws::String m_eTag;
- bool m_eTagHasBeenSet;
+ bool m_eTagHasBeenSet = false;
+
+ Aws::String m_checksumCRC32;
+ bool m_checksumCRC32HasBeenSet = false;
+
+ Aws::String m_checksumCRC32C;
+ bool m_checksumCRC32CHasBeenSet = false;
+
+ Aws::String m_checksumSHA1;
+ bool m_checksumSHA1HasBeenSet = false;
+
+ Aws::String m_checksumSHA256;
+ bool m_checksumSHA256HasBeenSet = false;
int m_partNumber;
- bool m_partNumberHasBeenSet;
+ bool m_partNumberHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Condition.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Condition.h
index 3dd8f8afe6..6e0f9683a5 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Condition.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Condition.h
@@ -31,14 +31,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/Condition">AWS API
* Reference</a></p>
*/
- class AWS_S3_API Condition
+ class Condition
{
public:
- Condition();
- Condition(const Aws::Utils::Xml::XmlNode& xmlNode);
- Condition& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Condition();
+ AWS_S3_API Condition(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Condition& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -245,10 +245,10 @@ namespace Model
private:
Aws::String m_httpErrorCodeReturnedEquals;
- bool m_httpErrorCodeReturnedEqualsHasBeenSet;
+ bool m_httpErrorCodeReturnedEqualsHasBeenSet = false;
Aws::String m_keyPrefixEquals;
- bool m_keyPrefixEqualsHasBeenSet;
+ bool m_keyPrefixEqualsHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CopyObjectRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CopyObjectRequest.h
index ccb52d1e7c..19ce9bc0b7 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CopyObjectRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CopyObjectRequest.h
@@ -8,6 +8,7 @@
#include <aws/s3/S3Request.h>
#include <aws/s3/model/ObjectCannedACL.h>
#include <aws/core/utils/memory/stl/AWSString.h>
+#include <aws/s3/model/ChecksumAlgorithm.h>
#include <aws/core/utils/DateTime.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
#include <aws/s3/model/MetadataDirective.h>
@@ -32,10 +33,10 @@ namespace Model
/**
*/
- class AWS_S3_API CopyObjectRequest : public S3Request
+ class CopyObjectRequest : public S3Request
{
public:
- CopyObjectRequest();
+ AWS_S3_API CopyObjectRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -43,12 +44,17 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "CopyObject"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API bool HasEmbeddedError(IOStream &body, const Http::HeaderValueCollection &header) const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The canned ACL to apply to the object.</p> <p>This action is not supported by
@@ -92,19 +98,19 @@ namespace Model
* access point, you must direct requests to the access point hostname. The access
* point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const Aws::String& GetBucket() const{ return m_bucket; }
@@ -113,19 +119,19 @@ namespace Model
* access point, you must direct requests to the access point hostname. The access
* point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; }
@@ -134,19 +140,19 @@ namespace Model
* access point, you must direct requests to the access point hostname. The access
* point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; }
@@ -155,19 +161,19 @@ namespace Model
* access point, you must direct requests to the access point hostname. The access
* point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); }
@@ -176,19 +182,19 @@ namespace Model
* access point, you must direct requests to the access point hostname. The access
* point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); }
@@ -197,19 +203,19 @@ namespace Model
* access point, you must direct requests to the access point hostname. The access
* point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline CopyObjectRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;}
@@ -218,19 +224,19 @@ namespace Model
* access point, you must direct requests to the access point hostname. The access
* point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline CopyObjectRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;}
@@ -239,19 +245,19 @@ namespace Model
* access point, you must direct requests to the access point hostname. The access
* point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline CopyObjectRequest& WithBucket(const char* value) { SetBucket(value); return *this;}
@@ -298,6 +304,55 @@ namespace Model
/**
+ * <p>Indicates the algorithm you want Amazon S3 to use to create the checksum for
+ * the object. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const ChecksumAlgorithm& GetChecksumAlgorithm() const{ return m_checksumAlgorithm; }
+
+ /**
+ * <p>Indicates the algorithm you want Amazon S3 to use to create the checksum for
+ * the object. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool ChecksumAlgorithmHasBeenSet() const { return m_checksumAlgorithmHasBeenSet; }
+
+ /**
+ * <p>Indicates the algorithm you want Amazon S3 to use to create the checksum for
+ * the object. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumAlgorithm(const ChecksumAlgorithm& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = value; }
+
+ /**
+ * <p>Indicates the algorithm you want Amazon S3 to use to create the checksum for
+ * the object. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumAlgorithm(ChecksumAlgorithm&& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = std::move(value); }
+
+ /**
+ * <p>Indicates the algorithm you want Amazon S3 to use to create the checksum for
+ * the object. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CopyObjectRequest& WithChecksumAlgorithm(const ChecksumAlgorithm& value) { SetChecksumAlgorithm(value); return *this;}
+
+ /**
+ * <p>Indicates the algorithm you want Amazon S3 to use to create the checksum for
+ * the object. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CopyObjectRequest& WithChecksumAlgorithm(ChecksumAlgorithm&& value) { SetChecksumAlgorithm(std::move(value)); return *this;}
+
+
+ /**
* <p>Specifies presentational information for the object.</p>
*/
inline const Aws::String& GetContentDisposition() const{ return m_contentDisposition; }
@@ -486,10 +541,10 @@ namespace Model
* specify the name of the source bucket and the key of the source object,
* separated by a slash (/). For example, to copy the object
* <code>reports/january.pdf</code> from the bucket <code>awsexamplebucket</code>,
- * use <code>awsexamplebucket/reports/january.pdf</code>. The value must be URL
- * encoded.</p> </li> <li> <p>For objects accessed through access points, specify
- * the Amazon Resource Name (ARN) of the object as accessed through the access
- * point, in the format
+ * use <code>awsexamplebucket/reports/january.pdf</code>. The value must be
+ * URL-encoded.</p> </li> <li> <p>For objects accessed through access points,
+ * specify the Amazon Resource Name (ARN) of the object as accessed through the
+ * access point, in the format
* <code>arn:aws:s3:&lt;Region&gt;:&lt;account-id&gt;:accesspoint/&lt;access-point-name&gt;/object/&lt;key&gt;</code>.
* For example, to copy the object <code>reports/january.pdf</code> through access
* point <code>my-access-point</code> owned by account <code>123456789012</code> in
@@ -497,14 +552,15 @@ namespace Model
* <code>arn:aws:s3:us-west-2:123456789012:accesspoint/my-access-point/object/reports/january.pdf</code>.
* The value must be URL encoded.</p> <p>Amazon S3 supports copy operations
* using access points only when the source and destination buckets are in the same
- * AWS Region.</p> <p>Alternatively, for objects accessed through Amazon S3
- * on Outposts, specify the ARN of the object as accessed in the format
+ * Amazon Web Services Region.</p> <p>Alternatively, for objects accessed
+ * through Amazon S3 on Outposts, specify the ARN of the object as accessed in the
+ * format
* <code>arn:aws:s3-outposts:&lt;Region&gt;:&lt;account-id&gt;:outpost/&lt;outpost-id&gt;/object/&lt;key&gt;</code>.
* For example, to copy the object <code>reports/january.pdf</code> through outpost
* <code>my-outpost</code> owned by account <code>123456789012</code> in Region
* <code>us-west-2</code>, use the URL encoding of
* <code>arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/object/reports/january.pdf</code>.
- * The value must be URL encoded. </p> </li> </ul> <p>To copy a specific version of
+ * The value must be URL-encoded. </p> </li> </ul> <p>To copy a specific version of
* an object, append <code>?versionId=&lt;version-id&gt;</code> to the value (for
* example,
* <code>awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893</code>).
@@ -522,10 +578,10 @@ namespace Model
* specify the name of the source bucket and the key of the source object,
* separated by a slash (/). For example, to copy the object
* <code>reports/january.pdf</code> from the bucket <code>awsexamplebucket</code>,
- * use <code>awsexamplebucket/reports/january.pdf</code>. The value must be URL
- * encoded.</p> </li> <li> <p>For objects accessed through access points, specify
- * the Amazon Resource Name (ARN) of the object as accessed through the access
- * point, in the format
+ * use <code>awsexamplebucket/reports/january.pdf</code>. The value must be
+ * URL-encoded.</p> </li> <li> <p>For objects accessed through access points,
+ * specify the Amazon Resource Name (ARN) of the object as accessed through the
+ * access point, in the format
* <code>arn:aws:s3:&lt;Region&gt;:&lt;account-id&gt;:accesspoint/&lt;access-point-name&gt;/object/&lt;key&gt;</code>.
* For example, to copy the object <code>reports/january.pdf</code> through access
* point <code>my-access-point</code> owned by account <code>123456789012</code> in
@@ -533,14 +589,15 @@ namespace Model
* <code>arn:aws:s3:us-west-2:123456789012:accesspoint/my-access-point/object/reports/january.pdf</code>.
* The value must be URL encoded.</p> <p>Amazon S3 supports copy operations
* using access points only when the source and destination buckets are in the same
- * AWS Region.</p> <p>Alternatively, for objects accessed through Amazon S3
- * on Outposts, specify the ARN of the object as accessed in the format
+ * Amazon Web Services Region.</p> <p>Alternatively, for objects accessed
+ * through Amazon S3 on Outposts, specify the ARN of the object as accessed in the
+ * format
* <code>arn:aws:s3-outposts:&lt;Region&gt;:&lt;account-id&gt;:outpost/&lt;outpost-id&gt;/object/&lt;key&gt;</code>.
* For example, to copy the object <code>reports/january.pdf</code> through outpost
* <code>my-outpost</code> owned by account <code>123456789012</code> in Region
* <code>us-west-2</code>, use the URL encoding of
* <code>arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/object/reports/january.pdf</code>.
- * The value must be URL encoded. </p> </li> </ul> <p>To copy a specific version of
+ * The value must be URL-encoded. </p> </li> </ul> <p>To copy a specific version of
* an object, append <code>?versionId=&lt;version-id&gt;</code> to the value (for
* example,
* <code>awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893</code>).
@@ -558,10 +615,10 @@ namespace Model
* specify the name of the source bucket and the key of the source object,
* separated by a slash (/). For example, to copy the object
* <code>reports/january.pdf</code> from the bucket <code>awsexamplebucket</code>,
- * use <code>awsexamplebucket/reports/january.pdf</code>. The value must be URL
- * encoded.</p> </li> <li> <p>For objects accessed through access points, specify
- * the Amazon Resource Name (ARN) of the object as accessed through the access
- * point, in the format
+ * use <code>awsexamplebucket/reports/january.pdf</code>. The value must be
+ * URL-encoded.</p> </li> <li> <p>For objects accessed through access points,
+ * specify the Amazon Resource Name (ARN) of the object as accessed through the
+ * access point, in the format
* <code>arn:aws:s3:&lt;Region&gt;:&lt;account-id&gt;:accesspoint/&lt;access-point-name&gt;/object/&lt;key&gt;</code>.
* For example, to copy the object <code>reports/january.pdf</code> through access
* point <code>my-access-point</code> owned by account <code>123456789012</code> in
@@ -569,14 +626,15 @@ namespace Model
* <code>arn:aws:s3:us-west-2:123456789012:accesspoint/my-access-point/object/reports/january.pdf</code>.
* The value must be URL encoded.</p> <p>Amazon S3 supports copy operations
* using access points only when the source and destination buckets are in the same
- * AWS Region.</p> <p>Alternatively, for objects accessed through Amazon S3
- * on Outposts, specify the ARN of the object as accessed in the format
+ * Amazon Web Services Region.</p> <p>Alternatively, for objects accessed
+ * through Amazon S3 on Outposts, specify the ARN of the object as accessed in the
+ * format
* <code>arn:aws:s3-outposts:&lt;Region&gt;:&lt;account-id&gt;:outpost/&lt;outpost-id&gt;/object/&lt;key&gt;</code>.
* For example, to copy the object <code>reports/january.pdf</code> through outpost
* <code>my-outpost</code> owned by account <code>123456789012</code> in Region
* <code>us-west-2</code>, use the URL encoding of
* <code>arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/object/reports/january.pdf</code>.
- * The value must be URL encoded. </p> </li> </ul> <p>To copy a specific version of
+ * The value must be URL-encoded. </p> </li> </ul> <p>To copy a specific version of
* an object, append <code>?versionId=&lt;version-id&gt;</code> to the value (for
* example,
* <code>awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893</code>).
@@ -594,10 +652,10 @@ namespace Model
* specify the name of the source bucket and the key of the source object,
* separated by a slash (/). For example, to copy the object
* <code>reports/january.pdf</code> from the bucket <code>awsexamplebucket</code>,
- * use <code>awsexamplebucket/reports/january.pdf</code>. The value must be URL
- * encoded.</p> </li> <li> <p>For objects accessed through access points, specify
- * the Amazon Resource Name (ARN) of the object as accessed through the access
- * point, in the format
+ * use <code>awsexamplebucket/reports/january.pdf</code>. The value must be
+ * URL-encoded.</p> </li> <li> <p>For objects accessed through access points,
+ * specify the Amazon Resource Name (ARN) of the object as accessed through the
+ * access point, in the format
* <code>arn:aws:s3:&lt;Region&gt;:&lt;account-id&gt;:accesspoint/&lt;access-point-name&gt;/object/&lt;key&gt;</code>.
* For example, to copy the object <code>reports/january.pdf</code> through access
* point <code>my-access-point</code> owned by account <code>123456789012</code> in
@@ -605,14 +663,15 @@ namespace Model
* <code>arn:aws:s3:us-west-2:123456789012:accesspoint/my-access-point/object/reports/january.pdf</code>.
* The value must be URL encoded.</p> <p>Amazon S3 supports copy operations
* using access points only when the source and destination buckets are in the same
- * AWS Region.</p> <p>Alternatively, for objects accessed through Amazon S3
- * on Outposts, specify the ARN of the object as accessed in the format
+ * Amazon Web Services Region.</p> <p>Alternatively, for objects accessed
+ * through Amazon S3 on Outposts, specify the ARN of the object as accessed in the
+ * format
* <code>arn:aws:s3-outposts:&lt;Region&gt;:&lt;account-id&gt;:outpost/&lt;outpost-id&gt;/object/&lt;key&gt;</code>.
* For example, to copy the object <code>reports/january.pdf</code> through outpost
* <code>my-outpost</code> owned by account <code>123456789012</code> in Region
* <code>us-west-2</code>, use the URL encoding of
* <code>arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/object/reports/january.pdf</code>.
- * The value must be URL encoded. </p> </li> </ul> <p>To copy a specific version of
+ * The value must be URL-encoded. </p> </li> </ul> <p>To copy a specific version of
* an object, append <code>?versionId=&lt;version-id&gt;</code> to the value (for
* example,
* <code>awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893</code>).
@@ -630,10 +689,10 @@ namespace Model
* specify the name of the source bucket and the key of the source object,
* separated by a slash (/). For example, to copy the object
* <code>reports/january.pdf</code> from the bucket <code>awsexamplebucket</code>,
- * use <code>awsexamplebucket/reports/january.pdf</code>. The value must be URL
- * encoded.</p> </li> <li> <p>For objects accessed through access points, specify
- * the Amazon Resource Name (ARN) of the object as accessed through the access
- * point, in the format
+ * use <code>awsexamplebucket/reports/january.pdf</code>. The value must be
+ * URL-encoded.</p> </li> <li> <p>For objects accessed through access points,
+ * specify the Amazon Resource Name (ARN) of the object as accessed through the
+ * access point, in the format
* <code>arn:aws:s3:&lt;Region&gt;:&lt;account-id&gt;:accesspoint/&lt;access-point-name&gt;/object/&lt;key&gt;</code>.
* For example, to copy the object <code>reports/january.pdf</code> through access
* point <code>my-access-point</code> owned by account <code>123456789012</code> in
@@ -641,14 +700,15 @@ namespace Model
* <code>arn:aws:s3:us-west-2:123456789012:accesspoint/my-access-point/object/reports/january.pdf</code>.
* The value must be URL encoded.</p> <p>Amazon S3 supports copy operations
* using access points only when the source and destination buckets are in the same
- * AWS Region.</p> <p>Alternatively, for objects accessed through Amazon S3
- * on Outposts, specify the ARN of the object as accessed in the format
+ * Amazon Web Services Region.</p> <p>Alternatively, for objects accessed
+ * through Amazon S3 on Outposts, specify the ARN of the object as accessed in the
+ * format
* <code>arn:aws:s3-outposts:&lt;Region&gt;:&lt;account-id&gt;:outpost/&lt;outpost-id&gt;/object/&lt;key&gt;</code>.
* For example, to copy the object <code>reports/january.pdf</code> through outpost
* <code>my-outpost</code> owned by account <code>123456789012</code> in Region
* <code>us-west-2</code>, use the URL encoding of
* <code>arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/object/reports/january.pdf</code>.
- * The value must be URL encoded. </p> </li> </ul> <p>To copy a specific version of
+ * The value must be URL-encoded. </p> </li> </ul> <p>To copy a specific version of
* an object, append <code>?versionId=&lt;version-id&gt;</code> to the value (for
* example,
* <code>awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893</code>).
@@ -666,10 +726,10 @@ namespace Model
* specify the name of the source bucket and the key of the source object,
* separated by a slash (/). For example, to copy the object
* <code>reports/january.pdf</code> from the bucket <code>awsexamplebucket</code>,
- * use <code>awsexamplebucket/reports/january.pdf</code>. The value must be URL
- * encoded.</p> </li> <li> <p>For objects accessed through access points, specify
- * the Amazon Resource Name (ARN) of the object as accessed through the access
- * point, in the format
+ * use <code>awsexamplebucket/reports/january.pdf</code>. The value must be
+ * URL-encoded.</p> </li> <li> <p>For objects accessed through access points,
+ * specify the Amazon Resource Name (ARN) of the object as accessed through the
+ * access point, in the format
* <code>arn:aws:s3:&lt;Region&gt;:&lt;account-id&gt;:accesspoint/&lt;access-point-name&gt;/object/&lt;key&gt;</code>.
* For example, to copy the object <code>reports/january.pdf</code> through access
* point <code>my-access-point</code> owned by account <code>123456789012</code> in
@@ -677,14 +737,15 @@ namespace Model
* <code>arn:aws:s3:us-west-2:123456789012:accesspoint/my-access-point/object/reports/january.pdf</code>.
* The value must be URL encoded.</p> <p>Amazon S3 supports copy operations
* using access points only when the source and destination buckets are in the same
- * AWS Region.</p> <p>Alternatively, for objects accessed through Amazon S3
- * on Outposts, specify the ARN of the object as accessed in the format
+ * Amazon Web Services Region.</p> <p>Alternatively, for objects accessed
+ * through Amazon S3 on Outposts, specify the ARN of the object as accessed in the
+ * format
* <code>arn:aws:s3-outposts:&lt;Region&gt;:&lt;account-id&gt;:outpost/&lt;outpost-id&gt;/object/&lt;key&gt;</code>.
* For example, to copy the object <code>reports/january.pdf</code> through outpost
* <code>my-outpost</code> owned by account <code>123456789012</code> in Region
* <code>us-west-2</code>, use the URL encoding of
* <code>arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/object/reports/january.pdf</code>.
- * The value must be URL encoded. </p> </li> </ul> <p>To copy a specific version of
+ * The value must be URL-encoded. </p> </li> </ul> <p>To copy a specific version of
* an object, append <code>?versionId=&lt;version-id&gt;</code> to the value (for
* example,
* <code>awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893</code>).
@@ -702,10 +763,10 @@ namespace Model
* specify the name of the source bucket and the key of the source object,
* separated by a slash (/). For example, to copy the object
* <code>reports/january.pdf</code> from the bucket <code>awsexamplebucket</code>,
- * use <code>awsexamplebucket/reports/january.pdf</code>. The value must be URL
- * encoded.</p> </li> <li> <p>For objects accessed through access points, specify
- * the Amazon Resource Name (ARN) of the object as accessed through the access
- * point, in the format
+ * use <code>awsexamplebucket/reports/january.pdf</code>. The value must be
+ * URL-encoded.</p> </li> <li> <p>For objects accessed through access points,
+ * specify the Amazon Resource Name (ARN) of the object as accessed through the
+ * access point, in the format
* <code>arn:aws:s3:&lt;Region&gt;:&lt;account-id&gt;:accesspoint/&lt;access-point-name&gt;/object/&lt;key&gt;</code>.
* For example, to copy the object <code>reports/january.pdf</code> through access
* point <code>my-access-point</code> owned by account <code>123456789012</code> in
@@ -713,14 +774,15 @@ namespace Model
* <code>arn:aws:s3:us-west-2:123456789012:accesspoint/my-access-point/object/reports/january.pdf</code>.
* The value must be URL encoded.</p> <p>Amazon S3 supports copy operations
* using access points only when the source and destination buckets are in the same
- * AWS Region.</p> <p>Alternatively, for objects accessed through Amazon S3
- * on Outposts, specify the ARN of the object as accessed in the format
+ * Amazon Web Services Region.</p> <p>Alternatively, for objects accessed
+ * through Amazon S3 on Outposts, specify the ARN of the object as accessed in the
+ * format
* <code>arn:aws:s3-outposts:&lt;Region&gt;:&lt;account-id&gt;:outpost/&lt;outpost-id&gt;/object/&lt;key&gt;</code>.
* For example, to copy the object <code>reports/january.pdf</code> through outpost
* <code>my-outpost</code> owned by account <code>123456789012</code> in Region
* <code>us-west-2</code>, use the URL encoding of
* <code>arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/object/reports/january.pdf</code>.
- * The value must be URL encoded. </p> </li> </ul> <p>To copy a specific version of
+ * The value must be URL-encoded. </p> </li> </ul> <p>To copy a specific version of
* an object, append <code>?versionId=&lt;version-id&gt;</code> to the value (for
* example,
* <code>awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893</code>).
@@ -738,10 +800,10 @@ namespace Model
* specify the name of the source bucket and the key of the source object,
* separated by a slash (/). For example, to copy the object
* <code>reports/january.pdf</code> from the bucket <code>awsexamplebucket</code>,
- * use <code>awsexamplebucket/reports/january.pdf</code>. The value must be URL
- * encoded.</p> </li> <li> <p>For objects accessed through access points, specify
- * the Amazon Resource Name (ARN) of the object as accessed through the access
- * point, in the format
+ * use <code>awsexamplebucket/reports/january.pdf</code>. The value must be
+ * URL-encoded.</p> </li> <li> <p>For objects accessed through access points,
+ * specify the Amazon Resource Name (ARN) of the object as accessed through the
+ * access point, in the format
* <code>arn:aws:s3:&lt;Region&gt;:&lt;account-id&gt;:accesspoint/&lt;access-point-name&gt;/object/&lt;key&gt;</code>.
* For example, to copy the object <code>reports/january.pdf</code> through access
* point <code>my-access-point</code> owned by account <code>123456789012</code> in
@@ -749,14 +811,15 @@ namespace Model
* <code>arn:aws:s3:us-west-2:123456789012:accesspoint/my-access-point/object/reports/january.pdf</code>.
* The value must be URL encoded.</p> <p>Amazon S3 supports copy operations
* using access points only when the source and destination buckets are in the same
- * AWS Region.</p> <p>Alternatively, for objects accessed through Amazon S3
- * on Outposts, specify the ARN of the object as accessed in the format
+ * Amazon Web Services Region.</p> <p>Alternatively, for objects accessed
+ * through Amazon S3 on Outposts, specify the ARN of the object as accessed in the
+ * format
* <code>arn:aws:s3-outposts:&lt;Region&gt;:&lt;account-id&gt;:outpost/&lt;outpost-id&gt;/object/&lt;key&gt;</code>.
* For example, to copy the object <code>reports/january.pdf</code> through outpost
* <code>my-outpost</code> owned by account <code>123456789012</code> in Region
* <code>us-west-2</code>, use the URL encoding of
* <code>arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/object/reports/january.pdf</code>.
- * The value must be URL encoded. </p> </li> </ul> <p>To copy a specific version of
+ * The value must be URL-encoded. </p> </li> </ul> <p>To copy a specific version of
* an object, append <code>?versionId=&lt;version-id&gt;</code> to the value (for
* example,
* <code>awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893</code>).
@@ -1370,7 +1433,7 @@ namespace Model
* Storage Class. Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. For
* more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
- * Classes</a> in the <i>Amazon S3 Service Developer Guide</i>.</p>
+ * Classes</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const StorageClass& GetStorageClass() const{ return m_storageClass; }
@@ -1381,7 +1444,7 @@ namespace Model
* Storage Class. Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. For
* more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
- * Classes</a> in the <i>Amazon S3 Service Developer Guide</i>.</p>
+ * Classes</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline bool StorageClassHasBeenSet() const { return m_storageClassHasBeenSet; }
@@ -1392,7 +1455,7 @@ namespace Model
* Storage Class. Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. For
* more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
- * Classes</a> in the <i>Amazon S3 Service Developer Guide</i>.</p>
+ * Classes</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetStorageClass(const StorageClass& value) { m_storageClassHasBeenSet = true; m_storageClass = value; }
@@ -1403,7 +1466,7 @@ namespace Model
* Storage Class. Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. For
* more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
- * Classes</a> in the <i>Amazon S3 Service Developer Guide</i>.</p>
+ * Classes</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetStorageClass(StorageClass&& value) { m_storageClassHasBeenSet = true; m_storageClass = std::move(value); }
@@ -1414,7 +1477,7 @@ namespace Model
* Storage Class. Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. For
* more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
- * Classes</a> in the <i>Amazon S3 Service Developer Guide</i>.</p>
+ * Classes</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline CopyObjectRequest& WithStorageClass(const StorageClass& value) { SetStorageClass(value); return *this;}
@@ -1425,7 +1488,7 @@ namespace Model
* Storage Class. Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. For
* more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
- * Classes</a> in the <i>Amazon S3 Service Developer Guide</i>.</p>
+ * Classes</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline CopyObjectRequest& WithStorageClass(StorageClass&& value) { SetStorageClass(std::move(value)); return *this;}
@@ -1667,147 +1730,155 @@ namespace Model
/**
- * <p>Specifies the AWS KMS key ID to use for object encryption. All GET and PUT
- * requests for an object protected by AWS KMS will fail if not made via SSL or
- * using SigV4. For information about configuring using any of the officially
- * supported AWS SDKs and AWS CLI, see <a
+ * <p>Specifies the Amazon Web Services KMS key ID to use for object encryption.
+ * All GET and PUT requests for an object protected by Amazon Web Services KMS will
+ * fail if not made via SSL or using SigV4. For information about configuring using
+ * any of the officially supported Amazon Web Services SDKs and Amazon Web Services
+ * CLI, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version">Specifying
- * the Signature Version in Request Authentication</a> in the <i>Amazon S3
- * Developer Guide</i>.</p>
+ * the Signature Version in Request Authentication</a> in the <i>Amazon S3 User
+ * Guide</i>.</p>
*/
inline const Aws::String& GetSSEKMSKeyId() const{ return m_sSEKMSKeyId; }
/**
- * <p>Specifies the AWS KMS key ID to use for object encryption. All GET and PUT
- * requests for an object protected by AWS KMS will fail if not made via SSL or
- * using SigV4. For information about configuring using any of the officially
- * supported AWS SDKs and AWS CLI, see <a
+ * <p>Specifies the Amazon Web Services KMS key ID to use for object encryption.
+ * All GET and PUT requests for an object protected by Amazon Web Services KMS will
+ * fail if not made via SSL or using SigV4. For information about configuring using
+ * any of the officially supported Amazon Web Services SDKs and Amazon Web Services
+ * CLI, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version">Specifying
- * the Signature Version in Request Authentication</a> in the <i>Amazon S3
- * Developer Guide</i>.</p>
+ * the Signature Version in Request Authentication</a> in the <i>Amazon S3 User
+ * Guide</i>.</p>
*/
inline bool SSEKMSKeyIdHasBeenSet() const { return m_sSEKMSKeyIdHasBeenSet; }
/**
- * <p>Specifies the AWS KMS key ID to use for object encryption. All GET and PUT
- * requests for an object protected by AWS KMS will fail if not made via SSL or
- * using SigV4. For information about configuring using any of the officially
- * supported AWS SDKs and AWS CLI, see <a
+ * <p>Specifies the Amazon Web Services KMS key ID to use for object encryption.
+ * All GET and PUT requests for an object protected by Amazon Web Services KMS will
+ * fail if not made via SSL or using SigV4. For information about configuring using
+ * any of the officially supported Amazon Web Services SDKs and Amazon Web Services
+ * CLI, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version">Specifying
- * the Signature Version in Request Authentication</a> in the <i>Amazon S3
- * Developer Guide</i>.</p>
+ * the Signature Version in Request Authentication</a> in the <i>Amazon S3 User
+ * Guide</i>.</p>
*/
inline void SetSSEKMSKeyId(const Aws::String& value) { m_sSEKMSKeyIdHasBeenSet = true; m_sSEKMSKeyId = value; }
/**
- * <p>Specifies the AWS KMS key ID to use for object encryption. All GET and PUT
- * requests for an object protected by AWS KMS will fail if not made via SSL or
- * using SigV4. For information about configuring using any of the officially
- * supported AWS SDKs and AWS CLI, see <a
+ * <p>Specifies the Amazon Web Services KMS key ID to use for object encryption.
+ * All GET and PUT requests for an object protected by Amazon Web Services KMS will
+ * fail if not made via SSL or using SigV4. For information about configuring using
+ * any of the officially supported Amazon Web Services SDKs and Amazon Web Services
+ * CLI, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version">Specifying
- * the Signature Version in Request Authentication</a> in the <i>Amazon S3
- * Developer Guide</i>.</p>
+ * the Signature Version in Request Authentication</a> in the <i>Amazon S3 User
+ * Guide</i>.</p>
*/
inline void SetSSEKMSKeyId(Aws::String&& value) { m_sSEKMSKeyIdHasBeenSet = true; m_sSEKMSKeyId = std::move(value); }
/**
- * <p>Specifies the AWS KMS key ID to use for object encryption. All GET and PUT
- * requests for an object protected by AWS KMS will fail if not made via SSL or
- * using SigV4. For information about configuring using any of the officially
- * supported AWS SDKs and AWS CLI, see <a
+ * <p>Specifies the Amazon Web Services KMS key ID to use for object encryption.
+ * All GET and PUT requests for an object protected by Amazon Web Services KMS will
+ * fail if not made via SSL or using SigV4. For information about configuring using
+ * any of the officially supported Amazon Web Services SDKs and Amazon Web Services
+ * CLI, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version">Specifying
- * the Signature Version in Request Authentication</a> in the <i>Amazon S3
- * Developer Guide</i>.</p>
+ * the Signature Version in Request Authentication</a> in the <i>Amazon S3 User
+ * Guide</i>.</p>
*/
inline void SetSSEKMSKeyId(const char* value) { m_sSEKMSKeyIdHasBeenSet = true; m_sSEKMSKeyId.assign(value); }
/**
- * <p>Specifies the AWS KMS key ID to use for object encryption. All GET and PUT
- * requests for an object protected by AWS KMS will fail if not made via SSL or
- * using SigV4. For information about configuring using any of the officially
- * supported AWS SDKs and AWS CLI, see <a
+ * <p>Specifies the Amazon Web Services KMS key ID to use for object encryption.
+ * All GET and PUT requests for an object protected by Amazon Web Services KMS will
+ * fail if not made via SSL or using SigV4. For information about configuring using
+ * any of the officially supported Amazon Web Services SDKs and Amazon Web Services
+ * CLI, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version">Specifying
- * the Signature Version in Request Authentication</a> in the <i>Amazon S3
- * Developer Guide</i>.</p>
+ * the Signature Version in Request Authentication</a> in the <i>Amazon S3 User
+ * Guide</i>.</p>
*/
inline CopyObjectRequest& WithSSEKMSKeyId(const Aws::String& value) { SetSSEKMSKeyId(value); return *this;}
/**
- * <p>Specifies the AWS KMS key ID to use for object encryption. All GET and PUT
- * requests for an object protected by AWS KMS will fail if not made via SSL or
- * using SigV4. For information about configuring using any of the officially
- * supported AWS SDKs and AWS CLI, see <a
+ * <p>Specifies the Amazon Web Services KMS key ID to use for object encryption.
+ * All GET and PUT requests for an object protected by Amazon Web Services KMS will
+ * fail if not made via SSL or using SigV4. For information about configuring using
+ * any of the officially supported Amazon Web Services SDKs and Amazon Web Services
+ * CLI, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version">Specifying
- * the Signature Version in Request Authentication</a> in the <i>Amazon S3
- * Developer Guide</i>.</p>
+ * the Signature Version in Request Authentication</a> in the <i>Amazon S3 User
+ * Guide</i>.</p>
*/
inline CopyObjectRequest& WithSSEKMSKeyId(Aws::String&& value) { SetSSEKMSKeyId(std::move(value)); return *this;}
/**
- * <p>Specifies the AWS KMS key ID to use for object encryption. All GET and PUT
- * requests for an object protected by AWS KMS will fail if not made via SSL or
- * using SigV4. For information about configuring using any of the officially
- * supported AWS SDKs and AWS CLI, see <a
+ * <p>Specifies the Amazon Web Services KMS key ID to use for object encryption.
+ * All GET and PUT requests for an object protected by Amazon Web Services KMS will
+ * fail if not made via SSL or using SigV4. For information about configuring using
+ * any of the officially supported Amazon Web Services SDKs and Amazon Web Services
+ * CLI, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version">Specifying
- * the Signature Version in Request Authentication</a> in the <i>Amazon S3
- * Developer Guide</i>.</p>
+ * the Signature Version in Request Authentication</a> in the <i>Amazon S3 User
+ * Guide</i>.</p>
*/
inline CopyObjectRequest& WithSSEKMSKeyId(const char* value) { SetSSEKMSKeyId(value); return *this;}
/**
- * <p>Specifies the AWS KMS Encryption Context to use for object encryption. The
- * value of this header is a base64-encoded UTF-8 string holding JSON with the
- * encryption context key-value pairs.</p>
+ * <p>Specifies the Amazon Web Services KMS Encryption Context to use for object
+ * encryption. The value of this header is a base64-encoded UTF-8 string holding
+ * JSON with the encryption context key-value pairs.</p>
*/
inline const Aws::String& GetSSEKMSEncryptionContext() const{ return m_sSEKMSEncryptionContext; }
/**
- * <p>Specifies the AWS KMS Encryption Context to use for object encryption. The
- * value of this header is a base64-encoded UTF-8 string holding JSON with the
- * encryption context key-value pairs.</p>
+ * <p>Specifies the Amazon Web Services KMS Encryption Context to use for object
+ * encryption. The value of this header is a base64-encoded UTF-8 string holding
+ * JSON with the encryption context key-value pairs.</p>
*/
inline bool SSEKMSEncryptionContextHasBeenSet() const { return m_sSEKMSEncryptionContextHasBeenSet; }
/**
- * <p>Specifies the AWS KMS Encryption Context to use for object encryption. The
- * value of this header is a base64-encoded UTF-8 string holding JSON with the
- * encryption context key-value pairs.</p>
+ * <p>Specifies the Amazon Web Services KMS Encryption Context to use for object
+ * encryption. The value of this header is a base64-encoded UTF-8 string holding
+ * JSON with the encryption context key-value pairs.</p>
*/
inline void SetSSEKMSEncryptionContext(const Aws::String& value) { m_sSEKMSEncryptionContextHasBeenSet = true; m_sSEKMSEncryptionContext = value; }
/**
- * <p>Specifies the AWS KMS Encryption Context to use for object encryption. The
- * value of this header is a base64-encoded UTF-8 string holding JSON with the
- * encryption context key-value pairs.</p>
+ * <p>Specifies the Amazon Web Services KMS Encryption Context to use for object
+ * encryption. The value of this header is a base64-encoded UTF-8 string holding
+ * JSON with the encryption context key-value pairs.</p>
*/
inline void SetSSEKMSEncryptionContext(Aws::String&& value) { m_sSEKMSEncryptionContextHasBeenSet = true; m_sSEKMSEncryptionContext = std::move(value); }
/**
- * <p>Specifies the AWS KMS Encryption Context to use for object encryption. The
- * value of this header is a base64-encoded UTF-8 string holding JSON with the
- * encryption context key-value pairs.</p>
+ * <p>Specifies the Amazon Web Services KMS Encryption Context to use for object
+ * encryption. The value of this header is a base64-encoded UTF-8 string holding
+ * JSON with the encryption context key-value pairs.</p>
*/
inline void SetSSEKMSEncryptionContext(const char* value) { m_sSEKMSEncryptionContextHasBeenSet = true; m_sSEKMSEncryptionContext.assign(value); }
/**
- * <p>Specifies the AWS KMS Encryption Context to use for object encryption. The
- * value of this header is a base64-encoded UTF-8 string holding JSON with the
- * encryption context key-value pairs.</p>
+ * <p>Specifies the Amazon Web Services KMS Encryption Context to use for object
+ * encryption. The value of this header is a base64-encoded UTF-8 string holding
+ * JSON with the encryption context key-value pairs.</p>
*/
inline CopyObjectRequest& WithSSEKMSEncryptionContext(const Aws::String& value) { SetSSEKMSEncryptionContext(value); return *this;}
/**
- * <p>Specifies the AWS KMS Encryption Context to use for object encryption. The
- * value of this header is a base64-encoded UTF-8 string holding JSON with the
- * encryption context key-value pairs.</p>
+ * <p>Specifies the Amazon Web Services KMS Encryption Context to use for object
+ * encryption. The value of this header is a base64-encoded UTF-8 string holding
+ * JSON with the encryption context key-value pairs.</p>
*/
inline CopyObjectRequest& WithSSEKMSEncryptionContext(Aws::String&& value) { SetSSEKMSEncryptionContext(std::move(value)); return *this;}
/**
- * <p>Specifies the AWS KMS Encryption Context to use for object encryption. The
- * value of this header is a base64-encoded UTF-8 string holding JSON with the
- * encryption context key-value pairs.</p>
+ * <p>Specifies the Amazon Web Services KMS Encryption Context to use for object
+ * encryption. The value of this header is a base64-encoded UTF-8 string holding
+ * JSON with the encryption context key-value pairs.</p>
*/
inline CopyObjectRequest& WithSSEKMSEncryptionContext(const char* value) { SetSSEKMSEncryptionContext(value); return *this;}
@@ -2157,146 +2228,146 @@ namespace Model
/**
- * <p>Specifies whether you want to apply a Legal Hold to the copied object.</p>
+ * <p>Specifies whether you want to apply a legal hold to the copied object.</p>
*/
inline const ObjectLockLegalHoldStatus& GetObjectLockLegalHoldStatus() const{ return m_objectLockLegalHoldStatus; }
/**
- * <p>Specifies whether you want to apply a Legal Hold to the copied object.</p>
+ * <p>Specifies whether you want to apply a legal hold to the copied object.</p>
*/
inline bool ObjectLockLegalHoldStatusHasBeenSet() const { return m_objectLockLegalHoldStatusHasBeenSet; }
/**
- * <p>Specifies whether you want to apply a Legal Hold to the copied object.</p>
+ * <p>Specifies whether you want to apply a legal hold to the copied object.</p>
*/
inline void SetObjectLockLegalHoldStatus(const ObjectLockLegalHoldStatus& value) { m_objectLockLegalHoldStatusHasBeenSet = true; m_objectLockLegalHoldStatus = value; }
/**
- * <p>Specifies whether you want to apply a Legal Hold to the copied object.</p>
+ * <p>Specifies whether you want to apply a legal hold to the copied object.</p>
*/
inline void SetObjectLockLegalHoldStatus(ObjectLockLegalHoldStatus&& value) { m_objectLockLegalHoldStatusHasBeenSet = true; m_objectLockLegalHoldStatus = std::move(value); }
/**
- * <p>Specifies whether you want to apply a Legal Hold to the copied object.</p>
+ * <p>Specifies whether you want to apply a legal hold to the copied object.</p>
*/
inline CopyObjectRequest& WithObjectLockLegalHoldStatus(const ObjectLockLegalHoldStatus& value) { SetObjectLockLegalHoldStatus(value); return *this;}
/**
- * <p>Specifies whether you want to apply a Legal Hold to the copied object.</p>
+ * <p>Specifies whether you want to apply a legal hold to the copied object.</p>
*/
inline CopyObjectRequest& WithObjectLockLegalHoldStatus(ObjectLockLegalHoldStatus&& value) { SetObjectLockLegalHoldStatus(std::move(value)); return *this;}
/**
* <p>The account ID of the expected destination bucket owner. If the destination
- * bucket is owned by a different account, the request will fail with an HTTP
- * <code>403 (Access Denied)</code> error.</p>
+ * bucket is owned by a different account, the request fails with the HTTP status
+ * code <code>403 Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected destination bucket owner. If the destination
- * bucket is owned by a different account, the request will fail with an HTTP
- * <code>403 (Access Denied)</code> error.</p>
+ * bucket is owned by a different account, the request fails with the HTTP status
+ * code <code>403 Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected destination bucket owner. If the destination
- * bucket is owned by a different account, the request will fail with an HTTP
- * <code>403 (Access Denied)</code> error.</p>
+ * bucket is owned by a different account, the request fails with the HTTP status
+ * code <code>403 Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected destination bucket owner. If the destination
- * bucket is owned by a different account, the request will fail with an HTTP
- * <code>403 (Access Denied)</code> error.</p>
+ * bucket is owned by a different account, the request fails with the HTTP status
+ * code <code>403 Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected destination bucket owner. If the destination
- * bucket is owned by a different account, the request will fail with an HTTP
- * <code>403 (Access Denied)</code> error.</p>
+ * bucket is owned by a different account, the request fails with the HTTP status
+ * code <code>403 Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected destination bucket owner. If the destination
- * bucket is owned by a different account, the request will fail with an HTTP
- * <code>403 (Access Denied)</code> error.</p>
+ * bucket is owned by a different account, the request fails with the HTTP status
+ * code <code>403 Forbidden</code> (access denied).</p>
*/
inline CopyObjectRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected destination bucket owner. If the destination
- * bucket is owned by a different account, the request will fail with an HTTP
- * <code>403 (Access Denied)</code> error.</p>
+ * bucket is owned by a different account, the request fails with the HTTP status
+ * code <code>403 Forbidden</code> (access denied).</p>
*/
inline CopyObjectRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected destination bucket owner. If the destination
- * bucket is owned by a different account, the request will fail with an HTTP
- * <code>403 (Access Denied)</code> error.</p>
+ * bucket is owned by a different account, the request fails with the HTTP status
+ * code <code>403 Forbidden</code> (access denied).</p>
*/
inline CopyObjectRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected source bucket owner. If the source bucket is
- * owned by a different account, the request will fail with an HTTP <code>403
- * (Access Denied)</code> error.</p>
+ * owned by a different account, the request fails with the HTTP status code
+ * <code>403 Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedSourceBucketOwner() const{ return m_expectedSourceBucketOwner; }
/**
* <p>The account ID of the expected source bucket owner. If the source bucket is
- * owned by a different account, the request will fail with an HTTP <code>403
- * (Access Denied)</code> error.</p>
+ * owned by a different account, the request fails with the HTTP status code
+ * <code>403 Forbidden</code> (access denied).</p>
*/
inline bool ExpectedSourceBucketOwnerHasBeenSet() const { return m_expectedSourceBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected source bucket owner. If the source bucket is
- * owned by a different account, the request will fail with an HTTP <code>403
- * (Access Denied)</code> error.</p>
+ * owned by a different account, the request fails with the HTTP status code
+ * <code>403 Forbidden</code> (access denied).</p>
*/
inline void SetExpectedSourceBucketOwner(const Aws::String& value) { m_expectedSourceBucketOwnerHasBeenSet = true; m_expectedSourceBucketOwner = value; }
/**
* <p>The account ID of the expected source bucket owner. If the source bucket is
- * owned by a different account, the request will fail with an HTTP <code>403
- * (Access Denied)</code> error.</p>
+ * owned by a different account, the request fails with the HTTP status code
+ * <code>403 Forbidden</code> (access denied).</p>
*/
inline void SetExpectedSourceBucketOwner(Aws::String&& value) { m_expectedSourceBucketOwnerHasBeenSet = true; m_expectedSourceBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected source bucket owner. If the source bucket is
- * owned by a different account, the request will fail with an HTTP <code>403
- * (Access Denied)</code> error.</p>
+ * owned by a different account, the request fails with the HTTP status code
+ * <code>403 Forbidden</code> (access denied).</p>
*/
inline void SetExpectedSourceBucketOwner(const char* value) { m_expectedSourceBucketOwnerHasBeenSet = true; m_expectedSourceBucketOwner.assign(value); }
/**
* <p>The account ID of the expected source bucket owner. If the source bucket is
- * owned by a different account, the request will fail with an HTTP <code>403
- * (Access Denied)</code> error.</p>
+ * owned by a different account, the request fails with the HTTP status code
+ * <code>403 Forbidden</code> (access denied).</p>
*/
inline CopyObjectRequest& WithExpectedSourceBucketOwner(const Aws::String& value) { SetExpectedSourceBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected source bucket owner. If the source bucket is
- * owned by a different account, the request will fail with an HTTP <code>403
- * (Access Denied)</code> error.</p>
+ * owned by a different account, the request fails with the HTTP status code
+ * <code>403 Forbidden</code> (access denied).</p>
*/
inline CopyObjectRequest& WithExpectedSourceBucketOwner(Aws::String&& value) { SetExpectedSourceBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected source bucket owner. If the source bucket is
- * owned by a different account, the request will fail with an HTTP <code>403
- * (Access Denied)</code> error.</p>
+ * owned by a different account, the request fails with the HTTP status code
+ * <code>403 Forbidden</code> (access denied).</p>
*/
inline CopyObjectRequest& WithExpectedSourceBucketOwner(const char* value) { SetExpectedSourceBucketOwner(value); return *this;}
@@ -2343,127 +2414,130 @@ namespace Model
private:
ObjectCannedACL m_aCL;
- bool m_aCLHasBeenSet;
+ bool m_aCLHasBeenSet = false;
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_cacheControl;
- bool m_cacheControlHasBeenSet;
+ bool m_cacheControlHasBeenSet = false;
+
+ ChecksumAlgorithm m_checksumAlgorithm;
+ bool m_checksumAlgorithmHasBeenSet = false;
Aws::String m_contentDisposition;
- bool m_contentDispositionHasBeenSet;
+ bool m_contentDispositionHasBeenSet = false;
Aws::String m_contentEncoding;
- bool m_contentEncodingHasBeenSet;
+ bool m_contentEncodingHasBeenSet = false;
Aws::String m_contentLanguage;
- bool m_contentLanguageHasBeenSet;
+ bool m_contentLanguageHasBeenSet = false;
Aws::String m_contentType;
- bool m_contentTypeHasBeenSet;
+ bool m_contentTypeHasBeenSet = false;
Aws::String m_copySource;
- bool m_copySourceHasBeenSet;
+ bool m_copySourceHasBeenSet = false;
Aws::String m_copySourceIfMatch;
- bool m_copySourceIfMatchHasBeenSet;
+ bool m_copySourceIfMatchHasBeenSet = false;
Aws::Utils::DateTime m_copySourceIfModifiedSince;
- bool m_copySourceIfModifiedSinceHasBeenSet;
+ bool m_copySourceIfModifiedSinceHasBeenSet = false;
Aws::String m_copySourceIfNoneMatch;
- bool m_copySourceIfNoneMatchHasBeenSet;
+ bool m_copySourceIfNoneMatchHasBeenSet = false;
Aws::Utils::DateTime m_copySourceIfUnmodifiedSince;
- bool m_copySourceIfUnmodifiedSinceHasBeenSet;
+ bool m_copySourceIfUnmodifiedSinceHasBeenSet = false;
Aws::Utils::DateTime m_expires;
- bool m_expiresHasBeenSet;
+ bool m_expiresHasBeenSet = false;
Aws::String m_grantFullControl;
- bool m_grantFullControlHasBeenSet;
+ bool m_grantFullControlHasBeenSet = false;
Aws::String m_grantRead;
- bool m_grantReadHasBeenSet;
+ bool m_grantReadHasBeenSet = false;
Aws::String m_grantReadACP;
- bool m_grantReadACPHasBeenSet;
+ bool m_grantReadACPHasBeenSet = false;
Aws::String m_grantWriteACP;
- bool m_grantWriteACPHasBeenSet;
+ bool m_grantWriteACPHasBeenSet = false;
Aws::String m_key;
- bool m_keyHasBeenSet;
+ bool m_keyHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_metadata;
- bool m_metadataHasBeenSet;
+ bool m_metadataHasBeenSet = false;
MetadataDirective m_metadataDirective;
- bool m_metadataDirectiveHasBeenSet;
+ bool m_metadataDirectiveHasBeenSet = false;
TaggingDirective m_taggingDirective;
- bool m_taggingDirectiveHasBeenSet;
+ bool m_taggingDirectiveHasBeenSet = false;
ServerSideEncryption m_serverSideEncryption;
- bool m_serverSideEncryptionHasBeenSet;
+ bool m_serverSideEncryptionHasBeenSet = false;
StorageClass m_storageClass;
- bool m_storageClassHasBeenSet;
+ bool m_storageClassHasBeenSet = false;
Aws::String m_websiteRedirectLocation;
- bool m_websiteRedirectLocationHasBeenSet;
+ bool m_websiteRedirectLocationHasBeenSet = false;
Aws::String m_sSECustomerAlgorithm;
- bool m_sSECustomerAlgorithmHasBeenSet;
+ bool m_sSECustomerAlgorithmHasBeenSet = false;
Aws::String m_sSECustomerKey;
- bool m_sSECustomerKeyHasBeenSet;
+ bool m_sSECustomerKeyHasBeenSet = false;
Aws::String m_sSECustomerKeyMD5;
- bool m_sSECustomerKeyMD5HasBeenSet;
+ bool m_sSECustomerKeyMD5HasBeenSet = false;
Aws::String m_sSEKMSKeyId;
- bool m_sSEKMSKeyIdHasBeenSet;
+ bool m_sSEKMSKeyIdHasBeenSet = false;
Aws::String m_sSEKMSEncryptionContext;
- bool m_sSEKMSEncryptionContextHasBeenSet;
+ bool m_sSEKMSEncryptionContextHasBeenSet = false;
bool m_bucketKeyEnabled;
- bool m_bucketKeyEnabledHasBeenSet;
+ bool m_bucketKeyEnabledHasBeenSet = false;
Aws::String m_copySourceSSECustomerAlgorithm;
- bool m_copySourceSSECustomerAlgorithmHasBeenSet;
+ bool m_copySourceSSECustomerAlgorithmHasBeenSet = false;
Aws::String m_copySourceSSECustomerKey;
- bool m_copySourceSSECustomerKeyHasBeenSet;
+ bool m_copySourceSSECustomerKeyHasBeenSet = false;
Aws::String m_copySourceSSECustomerKeyMD5;
- bool m_copySourceSSECustomerKeyMD5HasBeenSet;
+ bool m_copySourceSSECustomerKeyMD5HasBeenSet = false;
RequestPayer m_requestPayer;
- bool m_requestPayerHasBeenSet;
+ bool m_requestPayerHasBeenSet = false;
Aws::String m_tagging;
- bool m_taggingHasBeenSet;
+ bool m_taggingHasBeenSet = false;
ObjectLockMode m_objectLockMode;
- bool m_objectLockModeHasBeenSet;
+ bool m_objectLockModeHasBeenSet = false;
Aws::Utils::DateTime m_objectLockRetainUntilDate;
- bool m_objectLockRetainUntilDateHasBeenSet;
+ bool m_objectLockRetainUntilDateHasBeenSet = false;
ObjectLockLegalHoldStatus m_objectLockLegalHoldStatus;
- bool m_objectLockLegalHoldStatusHasBeenSet;
+ bool m_objectLockLegalHoldStatusHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::String m_expectedSourceBucketOwner;
- bool m_expectedSourceBucketOwnerHasBeenSet;
+ bool m_expectedSourceBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CopyObjectResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CopyObjectResult.h
index 386f654c30..3beca77c36 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CopyObjectResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CopyObjectResult.h
@@ -27,12 +27,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API CopyObjectResult
+ class CopyObjectResult
{
public:
- CopyObjectResult();
- CopyObjectResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- CopyObjectResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API CopyObjectResult();
+ AWS_S3_API CopyObjectResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API CopyObjectResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
@@ -282,120 +282,120 @@ namespace Model
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline const Aws::String& GetSSEKMSKeyId() const{ return m_sSEKMSKeyId; }
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline void SetSSEKMSKeyId(const Aws::String& value) { m_sSEKMSKeyId = value; }
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline void SetSSEKMSKeyId(Aws::String&& value) { m_sSEKMSKeyId = std::move(value); }
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline void SetSSEKMSKeyId(const char* value) { m_sSEKMSKeyId.assign(value); }
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline CopyObjectResult& WithSSEKMSKeyId(const Aws::String& value) { SetSSEKMSKeyId(value); return *this;}
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline CopyObjectResult& WithSSEKMSKeyId(Aws::String&& value) { SetSSEKMSKeyId(std::move(value)); return *this;}
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline CopyObjectResult& WithSSEKMSKeyId(const char* value) { SetSSEKMSKeyId(value); return *this;}
/**
- * <p>If present, specifies the AWS KMS Encryption Context to use for object
- * encryption. The value of this header is a base64-encoded UTF-8 string holding
- * JSON with the encryption context key-value pairs.</p>
+ * <p>If present, specifies the Amazon Web Services KMS Encryption Context to use
+ * for object encryption. The value of this header is a base64-encoded UTF-8 string
+ * holding JSON with the encryption context key-value pairs.</p>
*/
inline const Aws::String& GetSSEKMSEncryptionContext() const{ return m_sSEKMSEncryptionContext; }
/**
- * <p>If present, specifies the AWS KMS Encryption Context to use for object
- * encryption. The value of this header is a base64-encoded UTF-8 string holding
- * JSON with the encryption context key-value pairs.</p>
+ * <p>If present, specifies the Amazon Web Services KMS Encryption Context to use
+ * for object encryption. The value of this header is a base64-encoded UTF-8 string
+ * holding JSON with the encryption context key-value pairs.</p>
*/
inline void SetSSEKMSEncryptionContext(const Aws::String& value) { m_sSEKMSEncryptionContext = value; }
/**
- * <p>If present, specifies the AWS KMS Encryption Context to use for object
- * encryption. The value of this header is a base64-encoded UTF-8 string holding
- * JSON with the encryption context key-value pairs.</p>
+ * <p>If present, specifies the Amazon Web Services KMS Encryption Context to use
+ * for object encryption. The value of this header is a base64-encoded UTF-8 string
+ * holding JSON with the encryption context key-value pairs.</p>
*/
inline void SetSSEKMSEncryptionContext(Aws::String&& value) { m_sSEKMSEncryptionContext = std::move(value); }
/**
- * <p>If present, specifies the AWS KMS Encryption Context to use for object
- * encryption. The value of this header is a base64-encoded UTF-8 string holding
- * JSON with the encryption context key-value pairs.</p>
+ * <p>If present, specifies the Amazon Web Services KMS Encryption Context to use
+ * for object encryption. The value of this header is a base64-encoded UTF-8 string
+ * holding JSON with the encryption context key-value pairs.</p>
*/
inline void SetSSEKMSEncryptionContext(const char* value) { m_sSEKMSEncryptionContext.assign(value); }
/**
- * <p>If present, specifies the AWS KMS Encryption Context to use for object
- * encryption. The value of this header is a base64-encoded UTF-8 string holding
- * JSON with the encryption context key-value pairs.</p>
+ * <p>If present, specifies the Amazon Web Services KMS Encryption Context to use
+ * for object encryption. The value of this header is a base64-encoded UTF-8 string
+ * holding JSON with the encryption context key-value pairs.</p>
*/
inline CopyObjectResult& WithSSEKMSEncryptionContext(const Aws::String& value) { SetSSEKMSEncryptionContext(value); return *this;}
/**
- * <p>If present, specifies the AWS KMS Encryption Context to use for object
- * encryption. The value of this header is a base64-encoded UTF-8 string holding
- * JSON with the encryption context key-value pairs.</p>
+ * <p>If present, specifies the Amazon Web Services KMS Encryption Context to use
+ * for object encryption. The value of this header is a base64-encoded UTF-8 string
+ * holding JSON with the encryption context key-value pairs.</p>
*/
inline CopyObjectResult& WithSSEKMSEncryptionContext(Aws::String&& value) { SetSSEKMSEncryptionContext(std::move(value)); return *this;}
/**
- * <p>If present, specifies the AWS KMS Encryption Context to use for object
- * encryption. The value of this header is a base64-encoded UTF-8 string holding
- * JSON with the encryption context key-value pairs.</p>
+ * <p>If present, specifies the Amazon Web Services KMS Encryption Context to use
+ * for object encryption. The value of this header is a base64-encoded UTF-8 string
+ * holding JSON with the encryption context key-value pairs.</p>
*/
inline CopyObjectResult& WithSSEKMSEncryptionContext(const char* value) { SetSSEKMSEncryptionContext(value); return *this;}
/**
* <p>Indicates whether the copied object uses an S3 Bucket Key for server-side
- * encryption with AWS KMS (SSE-KMS).</p>
+ * encryption with Amazon Web Services KMS (SSE-KMS).</p>
*/
inline bool GetBucketKeyEnabled() const{ return m_bucketKeyEnabled; }
/**
* <p>Indicates whether the copied object uses an S3 Bucket Key for server-side
- * encryption with AWS KMS (SSE-KMS).</p>
+ * encryption with Amazon Web Services KMS (SSE-KMS).</p>
*/
inline void SetBucketKeyEnabled(bool value) { m_bucketKeyEnabled = value; }
/**
* <p>Indicates whether the copied object uses an S3 Bucket Key for server-side
- * encryption with AWS KMS (SSE-KMS).</p>
+ * encryption with Amazon Web Services KMS (SSE-KMS).</p>
*/
inline CopyObjectResult& WithBucketKeyEnabled(bool value) { SetBucketKeyEnabled(value); return *this;}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CopyObjectResultDetails.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CopyObjectResultDetails.h
index 69187574c3..ffd8efb64c 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CopyObjectResultDetails.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CopyObjectResultDetails.h
@@ -28,69 +28,61 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CopyObjectResult">AWS
* API Reference</a></p>
*/
- class AWS_S3_API CopyObjectResultDetails
+ class CopyObjectResultDetails
{
public:
- CopyObjectResultDetails();
- CopyObjectResultDetails(const Aws::Utils::Xml::XmlNode& xmlNode);
- CopyObjectResultDetails& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API CopyObjectResultDetails();
+ AWS_S3_API CopyObjectResultDetails(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API CopyObjectResultDetails& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
* <p>Returns the ETag of the new object. The ETag reflects only changes to the
- * contents of an object, not its metadata. The source and destination ETag is
- * identical for a successfully copied non-multipart object.</p>
+ * contents of an object, not its metadata.</p>
*/
inline const Aws::String& GetETag() const{ return m_eTag; }
/**
* <p>Returns the ETag of the new object. The ETag reflects only changes to the
- * contents of an object, not its metadata. The source and destination ETag is
- * identical for a successfully copied non-multipart object.</p>
+ * contents of an object, not its metadata.</p>
*/
inline bool ETagHasBeenSet() const { return m_eTagHasBeenSet; }
/**
* <p>Returns the ETag of the new object. The ETag reflects only changes to the
- * contents of an object, not its metadata. The source and destination ETag is
- * identical for a successfully copied non-multipart object.</p>
+ * contents of an object, not its metadata.</p>
*/
inline void SetETag(const Aws::String& value) { m_eTagHasBeenSet = true; m_eTag = value; }
/**
* <p>Returns the ETag of the new object. The ETag reflects only changes to the
- * contents of an object, not its metadata. The source and destination ETag is
- * identical for a successfully copied non-multipart object.</p>
+ * contents of an object, not its metadata.</p>
*/
inline void SetETag(Aws::String&& value) { m_eTagHasBeenSet = true; m_eTag = std::move(value); }
/**
* <p>Returns the ETag of the new object. The ETag reflects only changes to the
- * contents of an object, not its metadata. The source and destination ETag is
- * identical for a successfully copied non-multipart object.</p>
+ * contents of an object, not its metadata.</p>
*/
inline void SetETag(const char* value) { m_eTagHasBeenSet = true; m_eTag.assign(value); }
/**
* <p>Returns the ETag of the new object. The ETag reflects only changes to the
- * contents of an object, not its metadata. The source and destination ETag is
- * identical for a successfully copied non-multipart object.</p>
+ * contents of an object, not its metadata.</p>
*/
inline CopyObjectResultDetails& WithETag(const Aws::String& value) { SetETag(value); return *this;}
/**
* <p>Returns the ETag of the new object. The ETag reflects only changes to the
- * contents of an object, not its metadata. The source and destination ETag is
- * identical for a successfully copied non-multipart object.</p>
+ * contents of an object, not its metadata.</p>
*/
inline CopyObjectResultDetails& WithETag(Aws::String&& value) { SetETag(std::move(value)); return *this;}
/**
* <p>Returns the ETag of the new object. The ETag reflects only changes to the
- * contents of an object, not its metadata. The source and destination ETag is
- * identical for a successfully copied non-multipart object.</p>
+ * contents of an object, not its metadata.</p>
*/
inline CopyObjectResultDetails& WithETag(const char* value) { SetETag(value); return *this;}
@@ -125,13 +117,349 @@ namespace Model
*/
inline CopyObjectResultDetails& WithLastModified(Aws::Utils::DateTime&& value) { SetLastModified(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumCRC32() const{ return m_checksumCRC32; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool ChecksumCRC32HasBeenSet() const { return m_checksumCRC32HasBeenSet; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(const Aws::String& value) { m_checksumCRC32HasBeenSet = true; m_checksumCRC32 = value; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(Aws::String&& value) { m_checksumCRC32HasBeenSet = true; m_checksumCRC32 = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(const char* value) { m_checksumCRC32HasBeenSet = true; m_checksumCRC32.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CopyObjectResultDetails& WithChecksumCRC32(const Aws::String& value) { SetChecksumCRC32(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CopyObjectResultDetails& WithChecksumCRC32(Aws::String&& value) { SetChecksumCRC32(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CopyObjectResultDetails& WithChecksumCRC32(const char* value) { SetChecksumCRC32(value); return *this;}
+
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumCRC32C() const{ return m_checksumCRC32C; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool ChecksumCRC32CHasBeenSet() const { return m_checksumCRC32CHasBeenSet; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(const Aws::String& value) { m_checksumCRC32CHasBeenSet = true; m_checksumCRC32C = value; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(Aws::String&& value) { m_checksumCRC32CHasBeenSet = true; m_checksumCRC32C = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(const char* value) { m_checksumCRC32CHasBeenSet = true; m_checksumCRC32C.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CopyObjectResultDetails& WithChecksumCRC32C(const Aws::String& value) { SetChecksumCRC32C(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CopyObjectResultDetails& WithChecksumCRC32C(Aws::String&& value) { SetChecksumCRC32C(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CopyObjectResultDetails& WithChecksumCRC32C(const char* value) { SetChecksumCRC32C(value); return *this;}
+
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumSHA1() const{ return m_checksumSHA1; }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool ChecksumSHA1HasBeenSet() const { return m_checksumSHA1HasBeenSet; }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(const Aws::String& value) { m_checksumSHA1HasBeenSet = true; m_checksumSHA1 = value; }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(Aws::String&& value) { m_checksumSHA1HasBeenSet = true; m_checksumSHA1 = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(const char* value) { m_checksumSHA1HasBeenSet = true; m_checksumSHA1.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CopyObjectResultDetails& WithChecksumSHA1(const Aws::String& value) { SetChecksumSHA1(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CopyObjectResultDetails& WithChecksumSHA1(Aws::String&& value) { SetChecksumSHA1(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CopyObjectResultDetails& WithChecksumSHA1(const char* value) { SetChecksumSHA1(value); return *this;}
+
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumSHA256() const{ return m_checksumSHA256; }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool ChecksumSHA256HasBeenSet() const { return m_checksumSHA256HasBeenSet; }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(const Aws::String& value) { m_checksumSHA256HasBeenSet = true; m_checksumSHA256 = value; }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(Aws::String&& value) { m_checksumSHA256HasBeenSet = true; m_checksumSHA256 = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(const char* value) { m_checksumSHA256HasBeenSet = true; m_checksumSHA256.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CopyObjectResultDetails& WithChecksumSHA256(const Aws::String& value) { SetChecksumSHA256(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CopyObjectResultDetails& WithChecksumSHA256(Aws::String&& value) { SetChecksumSHA256(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CopyObjectResultDetails& WithChecksumSHA256(const char* value) { SetChecksumSHA256(value); return *this;}
+
private:
Aws::String m_eTag;
- bool m_eTagHasBeenSet;
+ bool m_eTagHasBeenSet = false;
Aws::Utils::DateTime m_lastModified;
- bool m_lastModifiedHasBeenSet;
+ bool m_lastModifiedHasBeenSet = false;
+
+ Aws::String m_checksumCRC32;
+ bool m_checksumCRC32HasBeenSet = false;
+
+ Aws::String m_checksumCRC32C;
+ bool m_checksumCRC32CHasBeenSet = false;
+
+ Aws::String m_checksumSHA1;
+ bool m_checksumSHA1HasBeenSet = false;
+
+ Aws::String m_checksumSHA256;
+ bool m_checksumSHA256HasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CopyPartResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CopyPartResult.h
index d744384ae2..ae26dbcc0c 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CopyPartResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CopyPartResult.h
@@ -28,14 +28,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CopyPartResult">AWS
* API Reference</a></p>
*/
- class AWS_S3_API CopyPartResult
+ class CopyPartResult
{
public:
- CopyPartResult();
- CopyPartResult(const Aws::Utils::Xml::XmlNode& xmlNode);
- CopyPartResult& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API CopyPartResult();
+ AWS_S3_API CopyPartResult(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API CopyPartResult& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -109,13 +109,349 @@ namespace Model
*/
inline CopyPartResult& WithLastModified(Aws::Utils::DateTime&& value) { SetLastModified(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumCRC32() const{ return m_checksumCRC32; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool ChecksumCRC32HasBeenSet() const { return m_checksumCRC32HasBeenSet; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(const Aws::String& value) { m_checksumCRC32HasBeenSet = true; m_checksumCRC32 = value; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(Aws::String&& value) { m_checksumCRC32HasBeenSet = true; m_checksumCRC32 = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(const char* value) { m_checksumCRC32HasBeenSet = true; m_checksumCRC32.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CopyPartResult& WithChecksumCRC32(const Aws::String& value) { SetChecksumCRC32(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CopyPartResult& WithChecksumCRC32(Aws::String&& value) { SetChecksumCRC32(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CopyPartResult& WithChecksumCRC32(const char* value) { SetChecksumCRC32(value); return *this;}
+
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumCRC32C() const{ return m_checksumCRC32C; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool ChecksumCRC32CHasBeenSet() const { return m_checksumCRC32CHasBeenSet; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(const Aws::String& value) { m_checksumCRC32CHasBeenSet = true; m_checksumCRC32C = value; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(Aws::String&& value) { m_checksumCRC32CHasBeenSet = true; m_checksumCRC32C = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(const char* value) { m_checksumCRC32CHasBeenSet = true; m_checksumCRC32C.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CopyPartResult& WithChecksumCRC32C(const Aws::String& value) { SetChecksumCRC32C(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CopyPartResult& WithChecksumCRC32C(Aws::String&& value) { SetChecksumCRC32C(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CopyPartResult& WithChecksumCRC32C(const char* value) { SetChecksumCRC32C(value); return *this;}
+
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumSHA1() const{ return m_checksumSHA1; }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool ChecksumSHA1HasBeenSet() const { return m_checksumSHA1HasBeenSet; }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(const Aws::String& value) { m_checksumSHA1HasBeenSet = true; m_checksumSHA1 = value; }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(Aws::String&& value) { m_checksumSHA1HasBeenSet = true; m_checksumSHA1 = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(const char* value) { m_checksumSHA1HasBeenSet = true; m_checksumSHA1.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CopyPartResult& WithChecksumSHA1(const Aws::String& value) { SetChecksumSHA1(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CopyPartResult& WithChecksumSHA1(Aws::String&& value) { SetChecksumSHA1(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CopyPartResult& WithChecksumSHA1(const char* value) { SetChecksumSHA1(value); return *this;}
+
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumSHA256() const{ return m_checksumSHA256; }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool ChecksumSHA256HasBeenSet() const { return m_checksumSHA256HasBeenSet; }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(const Aws::String& value) { m_checksumSHA256HasBeenSet = true; m_checksumSHA256 = value; }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(Aws::String&& value) { m_checksumSHA256HasBeenSet = true; m_checksumSHA256 = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(const char* value) { m_checksumSHA256HasBeenSet = true; m_checksumSHA256.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CopyPartResult& WithChecksumSHA256(const Aws::String& value) { SetChecksumSHA256(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CopyPartResult& WithChecksumSHA256(Aws::String&& value) { SetChecksumSHA256(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CopyPartResult& WithChecksumSHA256(const char* value) { SetChecksumSHA256(value); return *this;}
+
private:
Aws::String m_eTag;
- bool m_eTagHasBeenSet;
+ bool m_eTagHasBeenSet = false;
Aws::Utils::DateTime m_lastModified;
- bool m_lastModifiedHasBeenSet;
+ bool m_lastModifiedHasBeenSet = false;
+
+ Aws::String m_checksumCRC32;
+ bool m_checksumCRC32HasBeenSet = false;
+
+ Aws::String m_checksumCRC32C;
+ bool m_checksumCRC32CHasBeenSet = false;
+
+ Aws::String m_checksumSHA1;
+ bool m_checksumSHA1HasBeenSet = false;
+
+ Aws::String m_checksumSHA256;
+ bool m_checksumSHA256HasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CreateBucketConfiguration.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CreateBucketConfiguration.h
index b43d6ea94f..79e82bada5 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CreateBucketConfiguration.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CreateBucketConfiguration.h
@@ -27,14 +27,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CreateBucketConfiguration">AWS
* API Reference</a></p>
*/
- class AWS_S3_API CreateBucketConfiguration
+ class CreateBucketConfiguration
{
public:
- CreateBucketConfiguration();
- CreateBucketConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
- CreateBucketConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API CreateBucketConfiguration();
+ AWS_S3_API CreateBucketConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API CreateBucketConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -82,7 +82,7 @@ namespace Model
private:
BucketLocationConstraint m_locationConstraint;
- bool m_locationConstraintHasBeenSet;
+ bool m_locationConstraintHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CreateBucketRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CreateBucketRequest.h
index ab18fd2bb7..1193b557b9 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CreateBucketRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CreateBucketRequest.h
@@ -9,6 +9,7 @@
#include <aws/s3/model/BucketCannedACL.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/s3/model/CreateBucketConfiguration.h>
+#include <aws/s3/model/ObjectOwnership.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
#include <utility>
@@ -25,10 +26,10 @@ namespace Model
/**
*/
- class AWS_S3_API CreateBucketRequest : public S3Request
+ class CreateBucketRequest : public S3Request
{
public:
- CreateBucketRequest();
+ AWS_S3_API CreateBucketRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -36,12 +37,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "CreateBucket"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The canned ACL to apply to the bucket.</p>
@@ -278,42 +283,58 @@ namespace Model
/**
- * <p>Allows grantee to create, overwrite, and delete any object in the bucket.</p>
+ * <p>Allows grantee to create new objects in the bucket.</p> <p>For the bucket and
+ * object owners of existing objects, also allows deletions and overwrites of those
+ * objects.</p>
*/
inline const Aws::String& GetGrantWrite() const{ return m_grantWrite; }
/**
- * <p>Allows grantee to create, overwrite, and delete any object in the bucket.</p>
+ * <p>Allows grantee to create new objects in the bucket.</p> <p>For the bucket and
+ * object owners of existing objects, also allows deletions and overwrites of those
+ * objects.</p>
*/
inline bool GrantWriteHasBeenSet() const { return m_grantWriteHasBeenSet; }
/**
- * <p>Allows grantee to create, overwrite, and delete any object in the bucket.</p>
+ * <p>Allows grantee to create new objects in the bucket.</p> <p>For the bucket and
+ * object owners of existing objects, also allows deletions and overwrites of those
+ * objects.</p>
*/
inline void SetGrantWrite(const Aws::String& value) { m_grantWriteHasBeenSet = true; m_grantWrite = value; }
/**
- * <p>Allows grantee to create, overwrite, and delete any object in the bucket.</p>
+ * <p>Allows grantee to create new objects in the bucket.</p> <p>For the bucket and
+ * object owners of existing objects, also allows deletions and overwrites of those
+ * objects.</p>
*/
inline void SetGrantWrite(Aws::String&& value) { m_grantWriteHasBeenSet = true; m_grantWrite = std::move(value); }
/**
- * <p>Allows grantee to create, overwrite, and delete any object in the bucket.</p>
+ * <p>Allows grantee to create new objects in the bucket.</p> <p>For the bucket and
+ * object owners of existing objects, also allows deletions and overwrites of those
+ * objects.</p>
*/
inline void SetGrantWrite(const char* value) { m_grantWriteHasBeenSet = true; m_grantWrite.assign(value); }
/**
- * <p>Allows grantee to create, overwrite, and delete any object in the bucket.</p>
+ * <p>Allows grantee to create new objects in the bucket.</p> <p>For the bucket and
+ * object owners of existing objects, also allows deletions and overwrites of those
+ * objects.</p>
*/
inline CreateBucketRequest& WithGrantWrite(const Aws::String& value) { SetGrantWrite(value); return *this;}
/**
- * <p>Allows grantee to create, overwrite, and delete any object in the bucket.</p>
+ * <p>Allows grantee to create new objects in the bucket.</p> <p>For the bucket and
+ * object owners of existing objects, also allows deletions and overwrites of those
+ * objects.</p>
*/
inline CreateBucketRequest& WithGrantWrite(Aws::String&& value) { SetGrantWrite(std::move(value)); return *this;}
/**
- * <p>Allows grantee to create, overwrite, and delete any object in the bucket.</p>
+ * <p>Allows grantee to create new objects in the bucket.</p> <p>For the bucket and
+ * object owners of existing objects, also allows deletions and overwrites of those
+ * objects.</p>
*/
inline CreateBucketRequest& WithGrantWrite(const char* value) { SetGrantWrite(value); return *this;}
@@ -385,6 +406,25 @@ namespace Model
+ inline const ObjectOwnership& GetObjectOwnership() const{ return m_objectOwnership; }
+
+
+ inline bool ObjectOwnershipHasBeenSet() const { return m_objectOwnershipHasBeenSet; }
+
+
+ inline void SetObjectOwnership(const ObjectOwnership& value) { m_objectOwnershipHasBeenSet = true; m_objectOwnership = value; }
+
+
+ inline void SetObjectOwnership(ObjectOwnership&& value) { m_objectOwnershipHasBeenSet = true; m_objectOwnership = std::move(value); }
+
+
+ inline CreateBucketRequest& WithObjectOwnership(const ObjectOwnership& value) { SetObjectOwnership(value); return *this;}
+
+
+ inline CreateBucketRequest& WithObjectOwnership(ObjectOwnership&& value) { SetObjectOwnership(std::move(value)); return *this;}
+
+
+
inline const Aws::Map<Aws::String, Aws::String>& GetCustomizedAccessLogTag() const{ return m_customizedAccessLogTag; }
@@ -426,34 +466,37 @@ namespace Model
private:
BucketCannedACL m_aCL;
- bool m_aCLHasBeenSet;
+ bool m_aCLHasBeenSet = false;
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
CreateBucketConfiguration m_createBucketConfiguration;
- bool m_createBucketConfigurationHasBeenSet;
+ bool m_createBucketConfigurationHasBeenSet = false;
Aws::String m_grantFullControl;
- bool m_grantFullControlHasBeenSet;
+ bool m_grantFullControlHasBeenSet = false;
Aws::String m_grantRead;
- bool m_grantReadHasBeenSet;
+ bool m_grantReadHasBeenSet = false;
Aws::String m_grantReadACP;
- bool m_grantReadACPHasBeenSet;
+ bool m_grantReadACPHasBeenSet = false;
Aws::String m_grantWrite;
- bool m_grantWriteHasBeenSet;
+ bool m_grantWriteHasBeenSet = false;
Aws::String m_grantWriteACP;
- bool m_grantWriteACPHasBeenSet;
+ bool m_grantWriteACPHasBeenSet = false;
bool m_objectLockEnabledForBucket;
- bool m_objectLockEnabledForBucketHasBeenSet;
+ bool m_objectLockEnabledForBucketHasBeenSet = false;
+
+ ObjectOwnership m_objectOwnership;
+ bool m_objectOwnershipHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CreateBucketResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CreateBucketResult.h
index fb29599179..e5ec901a87 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CreateBucketResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CreateBucketResult.h
@@ -24,60 +24,46 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API CreateBucketResult
+ class CreateBucketResult
{
public:
- CreateBucketResult();
- CreateBucketResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- CreateBucketResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API CreateBucketResult();
+ AWS_S3_API CreateBucketResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API CreateBucketResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
- * <p>Specifies the Region where the bucket will be created. If you are creating a
- * bucket on the US East (N. Virginia) Region (us-east-1), you do not need to
- * specify the location.</p>
+ * <p>A forward slash followed by the name of the bucket.</p>
*/
inline const Aws::String& GetLocation() const{ return m_location; }
/**
- * <p>Specifies the Region where the bucket will be created. If you are creating a
- * bucket on the US East (N. Virginia) Region (us-east-1), you do not need to
- * specify the location.</p>
+ * <p>A forward slash followed by the name of the bucket.</p>
*/
inline void SetLocation(const Aws::String& value) { m_location = value; }
/**
- * <p>Specifies the Region where the bucket will be created. If you are creating a
- * bucket on the US East (N. Virginia) Region (us-east-1), you do not need to
- * specify the location.</p>
+ * <p>A forward slash followed by the name of the bucket.</p>
*/
inline void SetLocation(Aws::String&& value) { m_location = std::move(value); }
/**
- * <p>Specifies the Region where the bucket will be created. If you are creating a
- * bucket on the US East (N. Virginia) Region (us-east-1), you do not need to
- * specify the location.</p>
+ * <p>A forward slash followed by the name of the bucket.</p>
*/
inline void SetLocation(const char* value) { m_location.assign(value); }
/**
- * <p>Specifies the Region where the bucket will be created. If you are creating a
- * bucket on the US East (N. Virginia) Region (us-east-1), you do not need to
- * specify the location.</p>
+ * <p>A forward slash followed by the name of the bucket.</p>
*/
inline CreateBucketResult& WithLocation(const Aws::String& value) { SetLocation(value); return *this;}
/**
- * <p>Specifies the Region where the bucket will be created. If you are creating a
- * bucket on the US East (N. Virginia) Region (us-east-1), you do not need to
- * specify the location.</p>
+ * <p>A forward slash followed by the name of the bucket.</p>
*/
inline CreateBucketResult& WithLocation(Aws::String&& value) { SetLocation(std::move(value)); return *this;}
/**
- * <p>Specifies the Region where the bucket will be created. If you are creating a
- * bucket on the US East (N. Virginia) Region (us-east-1), you do not need to
- * specify the location.</p>
+ * <p>A forward slash followed by the name of the bucket.</p>
*/
inline CreateBucketResult& WithLocation(const char* value) { SetLocation(value); return *this;}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CreateMultipartUploadRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CreateMultipartUploadRequest.h
index aafe4dc650..7d4e60b1c9 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CreateMultipartUploadRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CreateMultipartUploadRequest.h
@@ -15,6 +15,7 @@
#include <aws/s3/model/RequestPayer.h>
#include <aws/s3/model/ObjectLockMode.h>
#include <aws/s3/model/ObjectLockLegalHoldStatus.h>
+#include <aws/s3/model/ChecksumAlgorithm.h>
#include <utility>
namespace Aws
@@ -30,10 +31,10 @@ namespace Model
/**
*/
- class AWS_S3_API CreateMultipartUploadRequest : public S3Request
+ class CreateMultipartUploadRequest : public S3Request
{
public:
- CreateMultipartUploadRequest();
+ AWS_S3_API CreateMultipartUploadRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -41,12 +42,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "CreateMultipartUpload"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The canned ACL to apply to the object.</p> <p>This action is not supported by
@@ -90,19 +95,19 @@ namespace Model
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const Aws::String& GetBucket() const{ return m_bucket; }
@@ -111,19 +116,19 @@ namespace Model
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; }
@@ -132,19 +137,19 @@ namespace Model
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; }
@@ -153,19 +158,19 @@ namespace Model
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); }
@@ -174,19 +179,19 @@ namespace Model
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); }
@@ -195,19 +200,19 @@ namespace Model
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline CreateMultipartUploadRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;}
@@ -216,19 +221,19 @@ namespace Model
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline CreateMultipartUploadRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;}
@@ -237,19 +242,19 @@ namespace Model
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline CreateMultipartUploadRequest& WithBucket(const char* value) { SetBucket(value); return *this;}
@@ -853,7 +858,7 @@ namespace Model
* Storage Class. Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. For
* more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
- * Classes</a> in the <i>Amazon S3 Service Developer Guide</i>.</p>
+ * Classes</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const StorageClass& GetStorageClass() const{ return m_storageClass; }
@@ -864,7 +869,7 @@ namespace Model
* Storage Class. Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. For
* more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
- * Classes</a> in the <i>Amazon S3 Service Developer Guide</i>.</p>
+ * Classes</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline bool StorageClassHasBeenSet() const { return m_storageClassHasBeenSet; }
@@ -875,7 +880,7 @@ namespace Model
* Storage Class. Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. For
* more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
- * Classes</a> in the <i>Amazon S3 Service Developer Guide</i>.</p>
+ * Classes</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetStorageClass(const StorageClass& value) { m_storageClassHasBeenSet = true; m_storageClass = value; }
@@ -886,7 +891,7 @@ namespace Model
* Storage Class. Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. For
* more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
- * Classes</a> in the <i>Amazon S3 Service Developer Guide</i>.</p>
+ * Classes</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetStorageClass(StorageClass&& value) { m_storageClassHasBeenSet = true; m_storageClass = std::move(value); }
@@ -897,7 +902,7 @@ namespace Model
* Storage Class. Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. For
* more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
- * Classes</a> in the <i>Amazon S3 Service Developer Guide</i>.</p>
+ * Classes</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline CreateMultipartUploadRequest& WithStorageClass(const StorageClass& value) { SetStorageClass(value); return *this;}
@@ -908,7 +913,7 @@ namespace Model
* Storage Class. Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. For
* more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
- * Classes</a> in the <i>Amazon S3 Service Developer Guide</i>.</p>
+ * Classes</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline CreateMultipartUploadRequest& WithStorageClass(StorageClass&& value) { SetStorageClass(std::move(value)); return *this;}
@@ -1150,147 +1155,155 @@ namespace Model
/**
- * <p>Specifies the ID of the symmetric customer managed AWS KMS CMK to use for
- * object encryption. All GET and PUT requests for an object protected by AWS KMS
- * will fail if not made via SSL or using SigV4. For information about configuring
- * using any of the officially supported AWS SDKs and AWS CLI, see <a
+ * <p>Specifies the ID of the symmetric customer managed key to use for object
+ * encryption. All GET and PUT requests for an object protected by Amazon Web
+ * Services KMS will fail if not made via SSL or using SigV4. For information about
+ * configuring using any of the officially supported Amazon Web Services SDKs and
+ * Amazon Web Services CLI, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version">Specifying
- * the Signature Version in Request Authentication</a> in the <i>Amazon S3
- * Developer Guide</i>.</p>
+ * the Signature Version in Request Authentication</a> in the <i>Amazon S3 User
+ * Guide</i>.</p>
*/
inline const Aws::String& GetSSEKMSKeyId() const{ return m_sSEKMSKeyId; }
/**
- * <p>Specifies the ID of the symmetric customer managed AWS KMS CMK to use for
- * object encryption. All GET and PUT requests for an object protected by AWS KMS
- * will fail if not made via SSL or using SigV4. For information about configuring
- * using any of the officially supported AWS SDKs and AWS CLI, see <a
+ * <p>Specifies the ID of the symmetric customer managed key to use for object
+ * encryption. All GET and PUT requests for an object protected by Amazon Web
+ * Services KMS will fail if not made via SSL or using SigV4. For information about
+ * configuring using any of the officially supported Amazon Web Services SDKs and
+ * Amazon Web Services CLI, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version">Specifying
- * the Signature Version in Request Authentication</a> in the <i>Amazon S3
- * Developer Guide</i>.</p>
+ * the Signature Version in Request Authentication</a> in the <i>Amazon S3 User
+ * Guide</i>.</p>
*/
inline bool SSEKMSKeyIdHasBeenSet() const { return m_sSEKMSKeyIdHasBeenSet; }
/**
- * <p>Specifies the ID of the symmetric customer managed AWS KMS CMK to use for
- * object encryption. All GET and PUT requests for an object protected by AWS KMS
- * will fail if not made via SSL or using SigV4. For information about configuring
- * using any of the officially supported AWS SDKs and AWS CLI, see <a
+ * <p>Specifies the ID of the symmetric customer managed key to use for object
+ * encryption. All GET and PUT requests for an object protected by Amazon Web
+ * Services KMS will fail if not made via SSL or using SigV4. For information about
+ * configuring using any of the officially supported Amazon Web Services SDKs and
+ * Amazon Web Services CLI, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version">Specifying
- * the Signature Version in Request Authentication</a> in the <i>Amazon S3
- * Developer Guide</i>.</p>
+ * the Signature Version in Request Authentication</a> in the <i>Amazon S3 User
+ * Guide</i>.</p>
*/
inline void SetSSEKMSKeyId(const Aws::String& value) { m_sSEKMSKeyIdHasBeenSet = true; m_sSEKMSKeyId = value; }
/**
- * <p>Specifies the ID of the symmetric customer managed AWS KMS CMK to use for
- * object encryption. All GET and PUT requests for an object protected by AWS KMS
- * will fail if not made via SSL or using SigV4. For information about configuring
- * using any of the officially supported AWS SDKs and AWS CLI, see <a
+ * <p>Specifies the ID of the symmetric customer managed key to use for object
+ * encryption. All GET and PUT requests for an object protected by Amazon Web
+ * Services KMS will fail if not made via SSL or using SigV4. For information about
+ * configuring using any of the officially supported Amazon Web Services SDKs and
+ * Amazon Web Services CLI, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version">Specifying
- * the Signature Version in Request Authentication</a> in the <i>Amazon S3
- * Developer Guide</i>.</p>
+ * the Signature Version in Request Authentication</a> in the <i>Amazon S3 User
+ * Guide</i>.</p>
*/
inline void SetSSEKMSKeyId(Aws::String&& value) { m_sSEKMSKeyIdHasBeenSet = true; m_sSEKMSKeyId = std::move(value); }
/**
- * <p>Specifies the ID of the symmetric customer managed AWS KMS CMK to use for
- * object encryption. All GET and PUT requests for an object protected by AWS KMS
- * will fail if not made via SSL or using SigV4. For information about configuring
- * using any of the officially supported AWS SDKs and AWS CLI, see <a
+ * <p>Specifies the ID of the symmetric customer managed key to use for object
+ * encryption. All GET and PUT requests for an object protected by Amazon Web
+ * Services KMS will fail if not made via SSL or using SigV4. For information about
+ * configuring using any of the officially supported Amazon Web Services SDKs and
+ * Amazon Web Services CLI, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version">Specifying
- * the Signature Version in Request Authentication</a> in the <i>Amazon S3
- * Developer Guide</i>.</p>
+ * the Signature Version in Request Authentication</a> in the <i>Amazon S3 User
+ * Guide</i>.</p>
*/
inline void SetSSEKMSKeyId(const char* value) { m_sSEKMSKeyIdHasBeenSet = true; m_sSEKMSKeyId.assign(value); }
/**
- * <p>Specifies the ID of the symmetric customer managed AWS KMS CMK to use for
- * object encryption. All GET and PUT requests for an object protected by AWS KMS
- * will fail if not made via SSL or using SigV4. For information about configuring
- * using any of the officially supported AWS SDKs and AWS CLI, see <a
+ * <p>Specifies the ID of the symmetric customer managed key to use for object
+ * encryption. All GET and PUT requests for an object protected by Amazon Web
+ * Services KMS will fail if not made via SSL or using SigV4. For information about
+ * configuring using any of the officially supported Amazon Web Services SDKs and
+ * Amazon Web Services CLI, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version">Specifying
- * the Signature Version in Request Authentication</a> in the <i>Amazon S3
- * Developer Guide</i>.</p>
+ * the Signature Version in Request Authentication</a> in the <i>Amazon S3 User
+ * Guide</i>.</p>
*/
inline CreateMultipartUploadRequest& WithSSEKMSKeyId(const Aws::String& value) { SetSSEKMSKeyId(value); return *this;}
/**
- * <p>Specifies the ID of the symmetric customer managed AWS KMS CMK to use for
- * object encryption. All GET and PUT requests for an object protected by AWS KMS
- * will fail if not made via SSL or using SigV4. For information about configuring
- * using any of the officially supported AWS SDKs and AWS CLI, see <a
+ * <p>Specifies the ID of the symmetric customer managed key to use for object
+ * encryption. All GET and PUT requests for an object protected by Amazon Web
+ * Services KMS will fail if not made via SSL or using SigV4. For information about
+ * configuring using any of the officially supported Amazon Web Services SDKs and
+ * Amazon Web Services CLI, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version">Specifying
- * the Signature Version in Request Authentication</a> in the <i>Amazon S3
- * Developer Guide</i>.</p>
+ * the Signature Version in Request Authentication</a> in the <i>Amazon S3 User
+ * Guide</i>.</p>
*/
inline CreateMultipartUploadRequest& WithSSEKMSKeyId(Aws::String&& value) { SetSSEKMSKeyId(std::move(value)); return *this;}
/**
- * <p>Specifies the ID of the symmetric customer managed AWS KMS CMK to use for
- * object encryption. All GET and PUT requests for an object protected by AWS KMS
- * will fail if not made via SSL or using SigV4. For information about configuring
- * using any of the officially supported AWS SDKs and AWS CLI, see <a
+ * <p>Specifies the ID of the symmetric customer managed key to use for object
+ * encryption. All GET and PUT requests for an object protected by Amazon Web
+ * Services KMS will fail if not made via SSL or using SigV4. For information about
+ * configuring using any of the officially supported Amazon Web Services SDKs and
+ * Amazon Web Services CLI, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version">Specifying
- * the Signature Version in Request Authentication</a> in the <i>Amazon S3
- * Developer Guide</i>.</p>
+ * the Signature Version in Request Authentication</a> in the <i>Amazon S3 User
+ * Guide</i>.</p>
*/
inline CreateMultipartUploadRequest& WithSSEKMSKeyId(const char* value) { SetSSEKMSKeyId(value); return *this;}
/**
- * <p>Specifies the AWS KMS Encryption Context to use for object encryption. The
- * value of this header is a base64-encoded UTF-8 string holding JSON with the
- * encryption context key-value pairs.</p>
+ * <p>Specifies the Amazon Web Services KMS Encryption Context to use for object
+ * encryption. The value of this header is a base64-encoded UTF-8 string holding
+ * JSON with the encryption context key-value pairs.</p>
*/
inline const Aws::String& GetSSEKMSEncryptionContext() const{ return m_sSEKMSEncryptionContext; }
/**
- * <p>Specifies the AWS KMS Encryption Context to use for object encryption. The
- * value of this header is a base64-encoded UTF-8 string holding JSON with the
- * encryption context key-value pairs.</p>
+ * <p>Specifies the Amazon Web Services KMS Encryption Context to use for object
+ * encryption. The value of this header is a base64-encoded UTF-8 string holding
+ * JSON with the encryption context key-value pairs.</p>
*/
inline bool SSEKMSEncryptionContextHasBeenSet() const { return m_sSEKMSEncryptionContextHasBeenSet; }
/**
- * <p>Specifies the AWS KMS Encryption Context to use for object encryption. The
- * value of this header is a base64-encoded UTF-8 string holding JSON with the
- * encryption context key-value pairs.</p>
+ * <p>Specifies the Amazon Web Services KMS Encryption Context to use for object
+ * encryption. The value of this header is a base64-encoded UTF-8 string holding
+ * JSON with the encryption context key-value pairs.</p>
*/
inline void SetSSEKMSEncryptionContext(const Aws::String& value) { m_sSEKMSEncryptionContextHasBeenSet = true; m_sSEKMSEncryptionContext = value; }
/**
- * <p>Specifies the AWS KMS Encryption Context to use for object encryption. The
- * value of this header is a base64-encoded UTF-8 string holding JSON with the
- * encryption context key-value pairs.</p>
+ * <p>Specifies the Amazon Web Services KMS Encryption Context to use for object
+ * encryption. The value of this header is a base64-encoded UTF-8 string holding
+ * JSON with the encryption context key-value pairs.</p>
*/
inline void SetSSEKMSEncryptionContext(Aws::String&& value) { m_sSEKMSEncryptionContextHasBeenSet = true; m_sSEKMSEncryptionContext = std::move(value); }
/**
- * <p>Specifies the AWS KMS Encryption Context to use for object encryption. The
- * value of this header is a base64-encoded UTF-8 string holding JSON with the
- * encryption context key-value pairs.</p>
+ * <p>Specifies the Amazon Web Services KMS Encryption Context to use for object
+ * encryption. The value of this header is a base64-encoded UTF-8 string holding
+ * JSON with the encryption context key-value pairs.</p>
*/
inline void SetSSEKMSEncryptionContext(const char* value) { m_sSEKMSEncryptionContextHasBeenSet = true; m_sSEKMSEncryptionContext.assign(value); }
/**
- * <p>Specifies the AWS KMS Encryption Context to use for object encryption. The
- * value of this header is a base64-encoded UTF-8 string holding JSON with the
- * encryption context key-value pairs.</p>
+ * <p>Specifies the Amazon Web Services KMS Encryption Context to use for object
+ * encryption. The value of this header is a base64-encoded UTF-8 string holding
+ * JSON with the encryption context key-value pairs.</p>
*/
inline CreateMultipartUploadRequest& WithSSEKMSEncryptionContext(const Aws::String& value) { SetSSEKMSEncryptionContext(value); return *this;}
/**
- * <p>Specifies the AWS KMS Encryption Context to use for object encryption. The
- * value of this header is a base64-encoded UTF-8 string holding JSON with the
- * encryption context key-value pairs.</p>
+ * <p>Specifies the Amazon Web Services KMS Encryption Context to use for object
+ * encryption. The value of this header is a base64-encoded UTF-8 string holding
+ * JSON with the encryption context key-value pairs.</p>
*/
inline CreateMultipartUploadRequest& WithSSEKMSEncryptionContext(Aws::String&& value) { SetSSEKMSEncryptionContext(std::move(value)); return *this;}
/**
- * <p>Specifies the AWS KMS Encryption Context to use for object encryption. The
- * value of this header is a base64-encoded UTF-8 string holding JSON with the
- * encryption context key-value pairs.</p>
+ * <p>Specifies the Amazon Web Services KMS Encryption Context to use for object
+ * encryption. The value of this header is a base64-encoded UTF-8 string holding
+ * JSON with the encryption context key-value pairs.</p>
*/
inline CreateMultipartUploadRequest& WithSSEKMSEncryptionContext(const char* value) { SetSSEKMSEncryptionContext(value); return *this;}
@@ -1469,93 +1482,142 @@ namespace Model
/**
- * <p>Specifies whether you want to apply a Legal Hold to the uploaded object.</p>
+ * <p>Specifies whether you want to apply a legal hold to the uploaded object.</p>
*/
inline const ObjectLockLegalHoldStatus& GetObjectLockLegalHoldStatus() const{ return m_objectLockLegalHoldStatus; }
/**
- * <p>Specifies whether you want to apply a Legal Hold to the uploaded object.</p>
+ * <p>Specifies whether you want to apply a legal hold to the uploaded object.</p>
*/
inline bool ObjectLockLegalHoldStatusHasBeenSet() const { return m_objectLockLegalHoldStatusHasBeenSet; }
/**
- * <p>Specifies whether you want to apply a Legal Hold to the uploaded object.</p>
+ * <p>Specifies whether you want to apply a legal hold to the uploaded object.</p>
*/
inline void SetObjectLockLegalHoldStatus(const ObjectLockLegalHoldStatus& value) { m_objectLockLegalHoldStatusHasBeenSet = true; m_objectLockLegalHoldStatus = value; }
/**
- * <p>Specifies whether you want to apply a Legal Hold to the uploaded object.</p>
+ * <p>Specifies whether you want to apply a legal hold to the uploaded object.</p>
*/
inline void SetObjectLockLegalHoldStatus(ObjectLockLegalHoldStatus&& value) { m_objectLockLegalHoldStatusHasBeenSet = true; m_objectLockLegalHoldStatus = std::move(value); }
/**
- * <p>Specifies whether you want to apply a Legal Hold to the uploaded object.</p>
+ * <p>Specifies whether you want to apply a legal hold to the uploaded object.</p>
*/
inline CreateMultipartUploadRequest& WithObjectLockLegalHoldStatus(const ObjectLockLegalHoldStatus& value) { SetObjectLockLegalHoldStatus(value); return *this;}
/**
- * <p>Specifies whether you want to apply a Legal Hold to the uploaded object.</p>
+ * <p>Specifies whether you want to apply a legal hold to the uploaded object.</p>
*/
inline CreateMultipartUploadRequest& WithObjectLockLegalHoldStatus(ObjectLockLegalHoldStatus&& value) { SetObjectLockLegalHoldStatus(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline CreateMultipartUploadRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline CreateMultipartUploadRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline CreateMultipartUploadRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
+ /**
+ * <p>Indicates the algorithm you want Amazon S3 to use to create the checksum for
+ * the object. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const ChecksumAlgorithm& GetChecksumAlgorithm() const{ return m_checksumAlgorithm; }
+
+ /**
+ * <p>Indicates the algorithm you want Amazon S3 to use to create the checksum for
+ * the object. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool ChecksumAlgorithmHasBeenSet() const { return m_checksumAlgorithmHasBeenSet; }
+
+ /**
+ * <p>Indicates the algorithm you want Amazon S3 to use to create the checksum for
+ * the object. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumAlgorithm(const ChecksumAlgorithm& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = value; }
+
+ /**
+ * <p>Indicates the algorithm you want Amazon S3 to use to create the checksum for
+ * the object. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumAlgorithm(ChecksumAlgorithm&& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = std::move(value); }
+
+ /**
+ * <p>Indicates the algorithm you want Amazon S3 to use to create the checksum for
+ * the object. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CreateMultipartUploadRequest& WithChecksumAlgorithm(const ChecksumAlgorithm& value) { SetChecksumAlgorithm(value); return *this;}
+
+ /**
+ * <p>Indicates the algorithm you want Amazon S3 to use to create the checksum for
+ * the object. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline CreateMultipartUploadRequest& WithChecksumAlgorithm(ChecksumAlgorithm&& value) { SetChecksumAlgorithm(std::move(value)); return *this;}
+
+
inline const Aws::Map<Aws::String, Aws::String>& GetCustomizedAccessLogTag() const{ return m_customizedAccessLogTag; }
@@ -1598,94 +1660,97 @@ namespace Model
private:
ObjectCannedACL m_aCL;
- bool m_aCLHasBeenSet;
+ bool m_aCLHasBeenSet = false;
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_cacheControl;
- bool m_cacheControlHasBeenSet;
+ bool m_cacheControlHasBeenSet = false;
Aws::String m_contentDisposition;
- bool m_contentDispositionHasBeenSet;
+ bool m_contentDispositionHasBeenSet = false;
Aws::String m_contentEncoding;
- bool m_contentEncodingHasBeenSet;
+ bool m_contentEncodingHasBeenSet = false;
Aws::String m_contentLanguage;
- bool m_contentLanguageHasBeenSet;
+ bool m_contentLanguageHasBeenSet = false;
Aws::String m_contentType;
- bool m_contentTypeHasBeenSet;
+ bool m_contentTypeHasBeenSet = false;
Aws::Utils::DateTime m_expires;
- bool m_expiresHasBeenSet;
+ bool m_expiresHasBeenSet = false;
Aws::String m_grantFullControl;
- bool m_grantFullControlHasBeenSet;
+ bool m_grantFullControlHasBeenSet = false;
Aws::String m_grantRead;
- bool m_grantReadHasBeenSet;
+ bool m_grantReadHasBeenSet = false;
Aws::String m_grantReadACP;
- bool m_grantReadACPHasBeenSet;
+ bool m_grantReadACPHasBeenSet = false;
Aws::String m_grantWriteACP;
- bool m_grantWriteACPHasBeenSet;
+ bool m_grantWriteACPHasBeenSet = false;
Aws::String m_key;
- bool m_keyHasBeenSet;
+ bool m_keyHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_metadata;
- bool m_metadataHasBeenSet;
+ bool m_metadataHasBeenSet = false;
ServerSideEncryption m_serverSideEncryption;
- bool m_serverSideEncryptionHasBeenSet;
+ bool m_serverSideEncryptionHasBeenSet = false;
StorageClass m_storageClass;
- bool m_storageClassHasBeenSet;
+ bool m_storageClassHasBeenSet = false;
Aws::String m_websiteRedirectLocation;
- bool m_websiteRedirectLocationHasBeenSet;
+ bool m_websiteRedirectLocationHasBeenSet = false;
Aws::String m_sSECustomerAlgorithm;
- bool m_sSECustomerAlgorithmHasBeenSet;
+ bool m_sSECustomerAlgorithmHasBeenSet = false;
Aws::String m_sSECustomerKey;
- bool m_sSECustomerKeyHasBeenSet;
+ bool m_sSECustomerKeyHasBeenSet = false;
Aws::String m_sSECustomerKeyMD5;
- bool m_sSECustomerKeyMD5HasBeenSet;
+ bool m_sSECustomerKeyMD5HasBeenSet = false;
Aws::String m_sSEKMSKeyId;
- bool m_sSEKMSKeyIdHasBeenSet;
+ bool m_sSEKMSKeyIdHasBeenSet = false;
Aws::String m_sSEKMSEncryptionContext;
- bool m_sSEKMSEncryptionContextHasBeenSet;
+ bool m_sSEKMSEncryptionContextHasBeenSet = false;
bool m_bucketKeyEnabled;
- bool m_bucketKeyEnabledHasBeenSet;
+ bool m_bucketKeyEnabledHasBeenSet = false;
RequestPayer m_requestPayer;
- bool m_requestPayerHasBeenSet;
+ bool m_requestPayerHasBeenSet = false;
Aws::String m_tagging;
- bool m_taggingHasBeenSet;
+ bool m_taggingHasBeenSet = false;
ObjectLockMode m_objectLockMode;
- bool m_objectLockModeHasBeenSet;
+ bool m_objectLockModeHasBeenSet = false;
Aws::Utils::DateTime m_objectLockRetainUntilDate;
- bool m_objectLockRetainUntilDateHasBeenSet;
+ bool m_objectLockRetainUntilDateHasBeenSet = false;
ObjectLockLegalHoldStatus m_objectLockLegalHoldStatus;
- bool m_objectLockLegalHoldStatusHasBeenSet;
+ bool m_objectLockLegalHoldStatusHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
+
+ ChecksumAlgorithm m_checksumAlgorithm;
+ bool m_checksumAlgorithmHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CreateMultipartUploadResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CreateMultipartUploadResult.h
index 49f002f3b7..ccbb87c3d7 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CreateMultipartUploadResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/CreateMultipartUploadResult.h
@@ -9,6 +9,7 @@
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/s3/model/ServerSideEncryption.h>
#include <aws/s3/model/RequestCharged.h>
+#include <aws/s3/model/ChecksumAlgorithm.h>
#include <utility>
namespace Aws
@@ -27,12 +28,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API CreateMultipartUploadResult
+ class CreateMultipartUploadResult
{
public:
- CreateMultipartUploadResult();
- CreateMultipartUploadResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- CreateMultipartUploadResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API CreateMultipartUploadResult();
+ AWS_S3_API CreateMultipartUploadResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API CreateMultipartUploadResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
@@ -157,149 +158,156 @@ namespace Model
/**
- * <p>The name of the bucket to which the multipart upload was initiated. </p>
- * <p>When using this action with an access point, you must direct requests to the
- * access point hostname. The access point hostname takes the form
+ * <p>The name of the bucket to which the multipart upload was initiated. Does not
+ * return the access point ARN or access point alias if used.</p> <p>When using
+ * this action with an access point, you must direct requests to the access point
+ * hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const Aws::String& GetBucket() const{ return m_bucket; }
/**
- * <p>The name of the bucket to which the multipart upload was initiated. </p>
- * <p>When using this action with an access point, you must direct requests to the
- * access point hostname. The access point hostname takes the form
+ * <p>The name of the bucket to which the multipart upload was initiated. Does not
+ * return the access point ARN or access point alias if used.</p> <p>When using
+ * this action with an access point, you must direct requests to the access point
+ * hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const Aws::String& value) { m_bucket = value; }
/**
- * <p>The name of the bucket to which the multipart upload was initiated. </p>
- * <p>When using this action with an access point, you must direct requests to the
- * access point hostname. The access point hostname takes the form
+ * <p>The name of the bucket to which the multipart upload was initiated. Does not
+ * return the access point ARN or access point alias if used.</p> <p>When using
+ * this action with an access point, you must direct requests to the access point
+ * hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(Aws::String&& value) { m_bucket = std::move(value); }
/**
- * <p>The name of the bucket to which the multipart upload was initiated. </p>
- * <p>When using this action with an access point, you must direct requests to the
- * access point hostname. The access point hostname takes the form
+ * <p>The name of the bucket to which the multipart upload was initiated. Does not
+ * return the access point ARN or access point alias if used.</p> <p>When using
+ * this action with an access point, you must direct requests to the access point
+ * hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const char* value) { m_bucket.assign(value); }
/**
- * <p>The name of the bucket to which the multipart upload was initiated. </p>
- * <p>When using this action with an access point, you must direct requests to the
- * access point hostname. The access point hostname takes the form
+ * <p>The name of the bucket to which the multipart upload was initiated. Does not
+ * return the access point ARN or access point alias if used.</p> <p>When using
+ * this action with an access point, you must direct requests to the access point
+ * hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline CreateMultipartUploadResult& WithBucket(const Aws::String& value) { SetBucket(value); return *this;}
/**
- * <p>The name of the bucket to which the multipart upload was initiated. </p>
- * <p>When using this action with an access point, you must direct requests to the
- * access point hostname. The access point hostname takes the form
+ * <p>The name of the bucket to which the multipart upload was initiated. Does not
+ * return the access point ARN or access point alias if used.</p> <p>When using
+ * this action with an access point, you must direct requests to the access point
+ * hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline CreateMultipartUploadResult& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;}
/**
- * <p>The name of the bucket to which the multipart upload was initiated. </p>
- * <p>When using this action with an access point, you must direct requests to the
- * access point hostname. The access point hostname takes the form
+ * <p>The name of the bucket to which the multipart upload was initiated. Does not
+ * return the access point ARN or access point alias if used.</p> <p>When using
+ * this action with an access point, you must direct requests to the access point
+ * hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline CreateMultipartUploadResult& WithBucket(const char* value) { SetBucket(value); return *this;}
@@ -508,120 +516,120 @@ namespace Model
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline const Aws::String& GetSSEKMSKeyId() const{ return m_sSEKMSKeyId; }
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline void SetSSEKMSKeyId(const Aws::String& value) { m_sSEKMSKeyId = value; }
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline void SetSSEKMSKeyId(Aws::String&& value) { m_sSEKMSKeyId = std::move(value); }
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline void SetSSEKMSKeyId(const char* value) { m_sSEKMSKeyId.assign(value); }
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline CreateMultipartUploadResult& WithSSEKMSKeyId(const Aws::String& value) { SetSSEKMSKeyId(value); return *this;}
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline CreateMultipartUploadResult& WithSSEKMSKeyId(Aws::String&& value) { SetSSEKMSKeyId(std::move(value)); return *this;}
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline CreateMultipartUploadResult& WithSSEKMSKeyId(const char* value) { SetSSEKMSKeyId(value); return *this;}
/**
- * <p>If present, specifies the AWS KMS Encryption Context to use for object
- * encryption. The value of this header is a base64-encoded UTF-8 string holding
- * JSON with the encryption context key-value pairs.</p>
+ * <p>If present, specifies the Amazon Web Services KMS Encryption Context to use
+ * for object encryption. The value of this header is a base64-encoded UTF-8 string
+ * holding JSON with the encryption context key-value pairs.</p>
*/
inline const Aws::String& GetSSEKMSEncryptionContext() const{ return m_sSEKMSEncryptionContext; }
/**
- * <p>If present, specifies the AWS KMS Encryption Context to use for object
- * encryption. The value of this header is a base64-encoded UTF-8 string holding
- * JSON with the encryption context key-value pairs.</p>
+ * <p>If present, specifies the Amazon Web Services KMS Encryption Context to use
+ * for object encryption. The value of this header is a base64-encoded UTF-8 string
+ * holding JSON with the encryption context key-value pairs.</p>
*/
inline void SetSSEKMSEncryptionContext(const Aws::String& value) { m_sSEKMSEncryptionContext = value; }
/**
- * <p>If present, specifies the AWS KMS Encryption Context to use for object
- * encryption. The value of this header is a base64-encoded UTF-8 string holding
- * JSON with the encryption context key-value pairs.</p>
+ * <p>If present, specifies the Amazon Web Services KMS Encryption Context to use
+ * for object encryption. The value of this header is a base64-encoded UTF-8 string
+ * holding JSON with the encryption context key-value pairs.</p>
*/
inline void SetSSEKMSEncryptionContext(Aws::String&& value) { m_sSEKMSEncryptionContext = std::move(value); }
/**
- * <p>If present, specifies the AWS KMS Encryption Context to use for object
- * encryption. The value of this header is a base64-encoded UTF-8 string holding
- * JSON with the encryption context key-value pairs.</p>
+ * <p>If present, specifies the Amazon Web Services KMS Encryption Context to use
+ * for object encryption. The value of this header is a base64-encoded UTF-8 string
+ * holding JSON with the encryption context key-value pairs.</p>
*/
inline void SetSSEKMSEncryptionContext(const char* value) { m_sSEKMSEncryptionContext.assign(value); }
/**
- * <p>If present, specifies the AWS KMS Encryption Context to use for object
- * encryption. The value of this header is a base64-encoded UTF-8 string holding
- * JSON with the encryption context key-value pairs.</p>
+ * <p>If present, specifies the Amazon Web Services KMS Encryption Context to use
+ * for object encryption. The value of this header is a base64-encoded UTF-8 string
+ * holding JSON with the encryption context key-value pairs.</p>
*/
inline CreateMultipartUploadResult& WithSSEKMSEncryptionContext(const Aws::String& value) { SetSSEKMSEncryptionContext(value); return *this;}
/**
- * <p>If present, specifies the AWS KMS Encryption Context to use for object
- * encryption. The value of this header is a base64-encoded UTF-8 string holding
- * JSON with the encryption context key-value pairs.</p>
+ * <p>If present, specifies the Amazon Web Services KMS Encryption Context to use
+ * for object encryption. The value of this header is a base64-encoded UTF-8 string
+ * holding JSON with the encryption context key-value pairs.</p>
*/
inline CreateMultipartUploadResult& WithSSEKMSEncryptionContext(Aws::String&& value) { SetSSEKMSEncryptionContext(std::move(value)); return *this;}
/**
- * <p>If present, specifies the AWS KMS Encryption Context to use for object
- * encryption. The value of this header is a base64-encoded UTF-8 string holding
- * JSON with the encryption context key-value pairs.</p>
+ * <p>If present, specifies the Amazon Web Services KMS Encryption Context to use
+ * for object encryption. The value of this header is a base64-encoded UTF-8 string
+ * holding JSON with the encryption context key-value pairs.</p>
*/
inline CreateMultipartUploadResult& WithSSEKMSEncryptionContext(const char* value) { SetSSEKMSEncryptionContext(value); return *this;}
/**
* <p>Indicates whether the multipart upload uses an S3 Bucket Key for server-side
- * encryption with AWS KMS (SSE-KMS).</p>
+ * encryption with Amazon Web Services KMS (SSE-KMS).</p>
*/
inline bool GetBucketKeyEnabled() const{ return m_bucketKeyEnabled; }
/**
* <p>Indicates whether the multipart upload uses an S3 Bucket Key for server-side
- * encryption with AWS KMS (SSE-KMS).</p>
+ * encryption with Amazon Web Services KMS (SSE-KMS).</p>
*/
inline void SetBucketKeyEnabled(bool value) { m_bucketKeyEnabled = value; }
/**
* <p>Indicates whether the multipart upload uses an S3 Bucket Key for server-side
- * encryption with AWS KMS (SSE-KMS).</p>
+ * encryption with Amazon Web Services KMS (SSE-KMS).</p>
*/
inline CreateMultipartUploadResult& WithBucketKeyEnabled(bool value) { SetBucketKeyEnabled(value); return *this;}
@@ -641,6 +649,32 @@ namespace Model
inline CreateMultipartUploadResult& WithRequestCharged(RequestCharged&& value) { SetRequestCharged(std::move(value)); return *this;}
+
+ /**
+ * <p>The algorithm that was used to create a checksum of the object.</p>
+ */
+ inline const ChecksumAlgorithm& GetChecksumAlgorithm() const{ return m_checksumAlgorithm; }
+
+ /**
+ * <p>The algorithm that was used to create a checksum of the object.</p>
+ */
+ inline void SetChecksumAlgorithm(const ChecksumAlgorithm& value) { m_checksumAlgorithm = value; }
+
+ /**
+ * <p>The algorithm that was used to create a checksum of the object.</p>
+ */
+ inline void SetChecksumAlgorithm(ChecksumAlgorithm&& value) { m_checksumAlgorithm = std::move(value); }
+
+ /**
+ * <p>The algorithm that was used to create a checksum of the object.</p>
+ */
+ inline CreateMultipartUploadResult& WithChecksumAlgorithm(const ChecksumAlgorithm& value) { SetChecksumAlgorithm(value); return *this;}
+
+ /**
+ * <p>The algorithm that was used to create a checksum of the object.</p>
+ */
+ inline CreateMultipartUploadResult& WithChecksumAlgorithm(ChecksumAlgorithm&& value) { SetChecksumAlgorithm(std::move(value)); return *this;}
+
private:
Aws::Utils::DateTime m_abortDate;
@@ -666,6 +700,8 @@ namespace Model
bool m_bucketKeyEnabled;
RequestCharged m_requestCharged;
+
+ ChecksumAlgorithm m_checksumAlgorithm;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DefaultRetention.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DefaultRetention.h
index 582f90c903..5d33792991 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DefaultRetention.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DefaultRetention.h
@@ -33,14 +33,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DefaultRetention">AWS
* API Reference</a></p>
*/
- class AWS_S3_API DefaultRetention
+ class DefaultRetention
{
public:
- DefaultRetention();
- DefaultRetention(const Aws::Utils::Xml::XmlNode& xmlNode);
- DefaultRetention& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API DefaultRetention();
+ AWS_S3_API DefaultRetention(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API DefaultRetention& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -138,13 +138,13 @@ namespace Model
private:
ObjectLockRetentionMode m_mode;
- bool m_modeHasBeenSet;
+ bool m_modeHasBeenSet = false;
int m_days;
- bool m_daysHasBeenSet;
+ bool m_daysHasBeenSet = false;
int m_years;
- bool m_yearsHasBeenSet;
+ bool m_yearsHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Delete.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Delete.h
index c40ac3062a..5ac4e7efaa 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Delete.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Delete.h
@@ -28,14 +28,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/Delete">AWS API
* Reference</a></p>
*/
- class AWS_S3_API Delete
+ class Delete
{
public:
- Delete();
- Delete(const Aws::Utils::Xml::XmlNode& xmlNode);
- Delete& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Delete();
+ AWS_S3_API Delete(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Delete& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -106,10 +106,10 @@ namespace Model
private:
Aws::Vector<ObjectIdentifier> m_objects;
- bool m_objectsHasBeenSet;
+ bool m_objectsHasBeenSet = false;
bool m_quiet;
- bool m_quietHasBeenSet;
+ bool m_quietHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketAnalyticsConfigurationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketAnalyticsConfigurationRequest.h
index cfefbb8802..ff996ffa36 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketAnalyticsConfigurationRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketAnalyticsConfigurationRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API DeleteBucketAnalyticsConfigurationRequest : public S3Request
+ class DeleteBucketAnalyticsConfigurationRequest : public S3Request
{
public:
- DeleteBucketAnalyticsConfigurationRequest();
+ AWS_S3_API DeleteBucketAnalyticsConfigurationRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,12 +34,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "DeleteBucketAnalyticsConfiguration"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the bucket from which an analytics configuration is deleted.</p>
@@ -125,57 +129,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteBucketAnalyticsConfigurationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteBucketAnalyticsConfigurationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteBucketAnalyticsConfigurationRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -222,16 +226,16 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_id;
- bool m_idHasBeenSet;
+ bool m_idHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketCorsRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketCorsRequest.h
index e1199271c0..2f9fcc3582 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketCorsRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketCorsRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API DeleteBucketCorsRequest : public S3Request
+ class DeleteBucketCorsRequest : public S3Request
{
public:
- DeleteBucketCorsRequest();
+ AWS_S3_API DeleteBucketCorsRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,12 +34,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "DeleteBucketCors"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>Specifies the bucket whose <code>cors</code> configuration is being
@@ -92,57 +96,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteBucketCorsRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteBucketCorsRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteBucketCorsRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -189,13 +193,13 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketEncryptionRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketEncryptionRequest.h
index 2ca332dccb..a52f6b3543 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketEncryptionRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketEncryptionRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API DeleteBucketEncryptionRequest : public S3Request
+ class DeleteBucketEncryptionRequest : public S3Request
{
public:
- DeleteBucketEncryptionRequest();
+ AWS_S3_API DeleteBucketEncryptionRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,12 +34,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "DeleteBucketEncryption"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the bucket containing the server-side encryption configuration to
@@ -92,57 +96,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteBucketEncryptionRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteBucketEncryptionRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteBucketEncryptionRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -189,13 +193,13 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketIntelligentTieringConfigurationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketIntelligentTieringConfigurationRequest.h
index 7beaad6ec9..a39e8cbdbb 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketIntelligentTieringConfigurationRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketIntelligentTieringConfigurationRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API DeleteBucketIntelligentTieringConfigurationRequest : public S3Request
+ class DeleteBucketIntelligentTieringConfigurationRequest : public S3Request
{
public:
- DeleteBucketIntelligentTieringConfigurationRequest();
+ AWS_S3_API DeleteBucketIntelligentTieringConfigurationRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,10 +34,14 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "DeleteBucketIntelligentTieringConfiguration"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the Amazon S3 bucket whose configuration you want to modify or
@@ -171,13 +175,13 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_id;
- bool m_idHasBeenSet;
+ bool m_idHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketInventoryConfigurationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketInventoryConfigurationRequest.h
index 3cc56c6504..57a9477f97 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketInventoryConfigurationRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketInventoryConfigurationRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API DeleteBucketInventoryConfigurationRequest : public S3Request
+ class DeleteBucketInventoryConfigurationRequest : public S3Request
{
public:
- DeleteBucketInventoryConfigurationRequest();
+ AWS_S3_API DeleteBucketInventoryConfigurationRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,12 +34,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "DeleteBucketInventoryConfiguration"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the bucket containing the inventory configuration to delete.</p>
@@ -125,57 +129,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteBucketInventoryConfigurationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteBucketInventoryConfigurationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteBucketInventoryConfigurationRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -222,16 +226,16 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_id;
- bool m_idHasBeenSet;
+ bool m_idHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketLifecycleRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketLifecycleRequest.h
index c69d339d6b..a330226759 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketLifecycleRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketLifecycleRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API DeleteBucketLifecycleRequest : public S3Request
+ class DeleteBucketLifecycleRequest : public S3Request
{
public:
- DeleteBucketLifecycleRequest();
+ AWS_S3_API DeleteBucketLifecycleRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,12 +34,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "DeleteBucketLifecycle"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The bucket name of the lifecycle to delete.</p>
@@ -84,57 +88,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteBucketLifecycleRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteBucketLifecycleRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteBucketLifecycleRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -181,13 +185,13 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketMetricsConfigurationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketMetricsConfigurationRequest.h
index ce8a0b333f..2203861b80 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketMetricsConfigurationRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketMetricsConfigurationRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API DeleteBucketMetricsConfigurationRequest : public S3Request
+ class DeleteBucketMetricsConfigurationRequest : public S3Request
{
public:
- DeleteBucketMetricsConfigurationRequest();
+ AWS_S3_API DeleteBucketMetricsConfigurationRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,12 +34,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "DeleteBucketMetricsConfiguration"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the bucket containing the metrics configuration to delete.</p>
@@ -125,57 +129,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteBucketMetricsConfigurationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteBucketMetricsConfigurationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteBucketMetricsConfigurationRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -222,16 +226,16 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_id;
- bool m_idHasBeenSet;
+ bool m_idHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketOwnershipControlsRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketOwnershipControlsRequest.h
index aab2947698..3aec542306 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketOwnershipControlsRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketOwnershipControlsRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API DeleteBucketOwnershipControlsRequest : public S3Request
+ class DeleteBucketOwnershipControlsRequest : public S3Request
{
public:
- DeleteBucketOwnershipControlsRequest();
+ AWS_S3_API DeleteBucketOwnershipControlsRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,12 +34,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "DeleteBucketOwnershipControls"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The Amazon S3 bucket whose <code>OwnershipControls</code> you want to delete.
@@ -92,57 +96,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteBucketOwnershipControlsRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteBucketOwnershipControlsRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteBucketOwnershipControlsRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -189,13 +193,13 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketPolicyRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketPolicyRequest.h
index cde2a99893..804809a685 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketPolicyRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketPolicyRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API DeleteBucketPolicyRequest : public S3Request
+ class DeleteBucketPolicyRequest : public S3Request
{
public:
- DeleteBucketPolicyRequest();
+ AWS_S3_API DeleteBucketPolicyRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,12 +34,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "DeleteBucketPolicy"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The bucket name.</p>
@@ -84,57 +88,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteBucketPolicyRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteBucketPolicyRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteBucketPolicyRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -181,13 +185,13 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketReplicationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketReplicationRequest.h
index 37c1fbe834..86aa475b92 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketReplicationRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketReplicationRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API DeleteBucketReplicationRequest : public S3Request
+ class DeleteBucketReplicationRequest : public S3Request
{
public:
- DeleteBucketReplicationRequest();
+ AWS_S3_API DeleteBucketReplicationRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,12 +34,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "DeleteBucketReplication"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p> The bucket name. </p>
@@ -84,57 +88,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteBucketReplicationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteBucketReplicationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteBucketReplicationRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -181,13 +185,13 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketRequest.h
index e7daf51d74..1c7a39ed1e 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API DeleteBucketRequest : public S3Request
+ class DeleteBucketRequest : public S3Request
{
public:
- DeleteBucketRequest();
+ AWS_S3_API DeleteBucketRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,12 +34,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "DeleteBucket"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>Specifies the bucket being deleted.</p>
@@ -84,57 +88,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteBucketRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteBucketRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteBucketRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -181,13 +185,13 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketTaggingRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketTaggingRequest.h
index 54355c04fc..b8fe28bc01 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketTaggingRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketTaggingRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API DeleteBucketTaggingRequest : public S3Request
+ class DeleteBucketTaggingRequest : public S3Request
{
public:
- DeleteBucketTaggingRequest();
+ AWS_S3_API DeleteBucketTaggingRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,12 +34,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "DeleteBucketTagging"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The bucket that has the tag set to be removed.</p>
@@ -84,57 +88,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteBucketTaggingRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteBucketTaggingRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteBucketTaggingRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -181,13 +185,13 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketWebsiteRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketWebsiteRequest.h
index c7ab0d9e40..1a51e2e024 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketWebsiteRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteBucketWebsiteRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API DeleteBucketWebsiteRequest : public S3Request
+ class DeleteBucketWebsiteRequest : public S3Request
{
public:
- DeleteBucketWebsiteRequest();
+ AWS_S3_API DeleteBucketWebsiteRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,12 +34,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "DeleteBucketWebsite"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The bucket name for which you want to remove the website configuration. </p>
@@ -84,57 +88,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteBucketWebsiteRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteBucketWebsiteRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteBucketWebsiteRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -181,13 +185,13 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteMarkerEntry.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteMarkerEntry.h
index 60ee780db6..0e7a1a8746 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteMarkerEntry.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteMarkerEntry.h
@@ -29,14 +29,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteMarkerEntry">AWS
* API Reference</a></p>
*/
- class AWS_S3_API DeleteMarkerEntry
+ class DeleteMarkerEntry
{
public:
- DeleteMarkerEntry();
- DeleteMarkerEntry(const Aws::Utils::Xml::XmlNode& xmlNode);
- DeleteMarkerEntry& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API DeleteMarkerEntry();
+ AWS_S3_API DeleteMarkerEntry(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API DeleteMarkerEntry& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -210,19 +210,19 @@ namespace Model
private:
Owner m_owner;
- bool m_ownerHasBeenSet;
+ bool m_ownerHasBeenSet = false;
Aws::String m_key;
- bool m_keyHasBeenSet;
+ bool m_keyHasBeenSet = false;
Aws::String m_versionId;
- bool m_versionIdHasBeenSet;
+ bool m_versionIdHasBeenSet = false;
bool m_isLatest;
- bool m_isLatestHasBeenSet;
+ bool m_isLatestHasBeenSet = false;
Aws::Utils::DateTime m_lastModified;
- bool m_lastModifiedHasBeenSet;
+ bool m_lastModifiedHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteMarkerReplication.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteMarkerReplication.h
index fdaecb8346..a207b04eda 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteMarkerReplication.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteMarkerReplication.h
@@ -42,14 +42,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeleteMarkerReplication">AWS
* API Reference</a></p>
*/
- class AWS_S3_API DeleteMarkerReplication
+ class DeleteMarkerReplication
{
public:
- DeleteMarkerReplication();
- DeleteMarkerReplication(const Aws::Utils::Xml::XmlNode& xmlNode);
- DeleteMarkerReplication& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API DeleteMarkerReplication();
+ AWS_S3_API DeleteMarkerReplication(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API DeleteMarkerReplication& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -91,7 +91,7 @@ namespace Model
private:
DeleteMarkerReplicationStatus m_status;
- bool m_statusHasBeenSet;
+ bool m_statusHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectRequest.h
index c340d287a8..4ca9bd0457 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectRequest.h
@@ -24,10 +24,10 @@ namespace Model
/**
*/
- class AWS_S3_API DeleteObjectRequest : public S3Request
+ class DeleteObjectRequest : public S3Request
{
public:
- DeleteObjectRequest();
+ AWS_S3_API DeleteObjectRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -35,31 +35,35 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "DeleteObject"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The bucket name of the bucket containing the object. </p> <p>When using this
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const Aws::String& GetBucket() const{ return m_bucket; }
@@ -68,19 +72,19 @@ namespace Model
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; }
@@ -89,19 +93,19 @@ namespace Model
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; }
@@ -110,19 +114,19 @@ namespace Model
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); }
@@ -131,19 +135,19 @@ namespace Model
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); }
@@ -152,19 +156,19 @@ namespace Model
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline DeleteObjectRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;}
@@ -173,19 +177,19 @@ namespace Model
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline DeleteObjectRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;}
@@ -194,19 +198,19 @@ namespace Model
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline DeleteObjectRequest& WithBucket(const char* value) { SetBucket(value); return *this;}
@@ -379,82 +383,86 @@ namespace Model
/**
* <p>Indicates whether S3 Object Lock should bypass Governance-mode restrictions
- * to process this operation.</p>
+ * to process this operation. To use this header, you must have the
+ * <code>s3:BypassGovernanceRetention</code> permission.</p>
*/
inline bool GetBypassGovernanceRetention() const{ return m_bypassGovernanceRetention; }
/**
* <p>Indicates whether S3 Object Lock should bypass Governance-mode restrictions
- * to process this operation.</p>
+ * to process this operation. To use this header, you must have the
+ * <code>s3:BypassGovernanceRetention</code> permission.</p>
*/
inline bool BypassGovernanceRetentionHasBeenSet() const { return m_bypassGovernanceRetentionHasBeenSet; }
/**
* <p>Indicates whether S3 Object Lock should bypass Governance-mode restrictions
- * to process this operation.</p>
+ * to process this operation. To use this header, you must have the
+ * <code>s3:BypassGovernanceRetention</code> permission.</p>
*/
inline void SetBypassGovernanceRetention(bool value) { m_bypassGovernanceRetentionHasBeenSet = true; m_bypassGovernanceRetention = value; }
/**
* <p>Indicates whether S3 Object Lock should bypass Governance-mode restrictions
- * to process this operation.</p>
+ * to process this operation. To use this header, you must have the
+ * <code>s3:BypassGovernanceRetention</code> permission.</p>
*/
inline DeleteObjectRequest& WithBypassGovernanceRetention(bool value) { SetBypassGovernanceRetention(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteObjectRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteObjectRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteObjectRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -501,28 +509,28 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_key;
- bool m_keyHasBeenSet;
+ bool m_keyHasBeenSet = false;
Aws::String m_mFA;
- bool m_mFAHasBeenSet;
+ bool m_mFAHasBeenSet = false;
Aws::String m_versionId;
- bool m_versionIdHasBeenSet;
+ bool m_versionIdHasBeenSet = false;
RequestPayer m_requestPayer;
- bool m_requestPayerHasBeenSet;
+ bool m_requestPayerHasBeenSet = false;
bool m_bypassGovernanceRetention;
- bool m_bypassGovernanceRetentionHasBeenSet;
+ bool m_bypassGovernanceRetentionHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectResult.h
index 15a886bf11..7b945ccea4 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectResult.h
@@ -25,12 +25,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API DeleteObjectResult
+ class DeleteObjectResult
{
public:
- DeleteObjectResult();
- DeleteObjectResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- DeleteObjectResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API DeleteObjectResult();
+ AWS_S3_API DeleteObjectResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API DeleteObjectResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectTaggingRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectTaggingRequest.h
index ad6286e1af..1f5181a071 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectTaggingRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectTaggingRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API DeleteObjectTaggingRequest : public S3Request
+ class DeleteObjectTaggingRequest : public S3Request
{
public:
- DeleteObjectTaggingRequest();
+ AWS_S3_API DeleteObjectTaggingRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,31 +34,35 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "DeleteObjectTagging"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The bucket name containing the objects from which to remove the tags. </p>
* <p>When using this action with an access point, you must direct requests to the
* access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const Aws::String& GetBucket() const{ return m_bucket; }
@@ -67,19 +71,19 @@ namespace Model
* <p>When using this action with an access point, you must direct requests to the
* access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; }
@@ -88,19 +92,19 @@ namespace Model
* <p>When using this action with an access point, you must direct requests to the
* access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; }
@@ -109,19 +113,19 @@ namespace Model
* <p>When using this action with an access point, you must direct requests to the
* access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); }
@@ -130,19 +134,19 @@ namespace Model
* <p>When using this action with an access point, you must direct requests to the
* access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); }
@@ -151,19 +155,19 @@ namespace Model
* <p>When using this action with an access point, you must direct requests to the
* access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline DeleteObjectTaggingRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;}
@@ -172,19 +176,19 @@ namespace Model
* <p>When using this action with an access point, you must direct requests to the
* access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline DeleteObjectTaggingRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;}
@@ -193,19 +197,19 @@ namespace Model
* <p>When using this action with an access point, you must direct requests to the
* access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline DeleteObjectTaggingRequest& WithBucket(const char* value) { SetBucket(value); return *this;}
@@ -302,57 +306,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteObjectTaggingRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteObjectTaggingRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteObjectTaggingRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -399,19 +403,19 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_key;
- bool m_keyHasBeenSet;
+ bool m_keyHasBeenSet = false;
Aws::String m_versionId;
- bool m_versionIdHasBeenSet;
+ bool m_versionIdHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectTaggingResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectTaggingResult.h
index 103267f221..ac47534a93 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectTaggingResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectTaggingResult.h
@@ -24,12 +24,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API DeleteObjectTaggingResult
+ class DeleteObjectTaggingResult
{
public:
- DeleteObjectTaggingResult();
- DeleteObjectTaggingResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- DeleteObjectTaggingResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API DeleteObjectTaggingResult();
+ AWS_S3_API DeleteObjectTaggingResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API DeleteObjectTaggingResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectsRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectsRequest.h
index fcbe9218b6..e7c7c792fd 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectsRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectsRequest.h
@@ -9,6 +9,7 @@
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/s3/model/Delete.h>
#include <aws/s3/model/RequestPayer.h>
+#include <aws/s3/model/ChecksumAlgorithm.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
#include <utility>
@@ -25,10 +26,10 @@ namespace Model
/**
*/
- class AWS_S3_API DeleteObjectsRequest : public S3Request
+ class DeleteObjectsRequest : public S3Request
{
public:
- DeleteObjectsRequest();
+ AWS_S3_API DeleteObjectsRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -36,33 +37,37 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "DeleteObjects"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
- inline bool ShouldComputeContentMd5() const override { return true; }
+ AWS_S3_API Aws::String GetChecksumAlgorithmName() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The bucket name containing the objects to delete. </p> <p>When using this
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const Aws::String& GetBucket() const{ return m_bucket; }
@@ -71,19 +76,19 @@ namespace Model
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; }
@@ -92,19 +97,19 @@ namespace Model
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; }
@@ -113,19 +118,19 @@ namespace Model
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); }
@@ -134,19 +139,19 @@ namespace Model
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); }
@@ -155,19 +160,19 @@ namespace Model
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline DeleteObjectsRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;}
@@ -176,19 +181,19 @@ namespace Model
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline DeleteObjectsRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;}
@@ -197,19 +202,19 @@ namespace Model
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline DeleteObjectsRequest& WithBucket(const char* value) { SetBucket(value); return *this;}
@@ -331,90 +336,187 @@ namespace Model
/**
* <p>Specifies whether you want to delete this object even if it has a
- * Governance-type Object Lock in place. You must have sufficient permissions to
- * perform this operation.</p>
+ * Governance-type Object Lock in place. To use this header, you must have the
+ * <code>s3:BypassGovernanceRetention</code> permission.</p>
*/
inline bool GetBypassGovernanceRetention() const{ return m_bypassGovernanceRetention; }
/**
* <p>Specifies whether you want to delete this object even if it has a
- * Governance-type Object Lock in place. You must have sufficient permissions to
- * perform this operation.</p>
+ * Governance-type Object Lock in place. To use this header, you must have the
+ * <code>s3:BypassGovernanceRetention</code> permission.</p>
*/
inline bool BypassGovernanceRetentionHasBeenSet() const { return m_bypassGovernanceRetentionHasBeenSet; }
/**
* <p>Specifies whether you want to delete this object even if it has a
- * Governance-type Object Lock in place. You must have sufficient permissions to
- * perform this operation.</p>
+ * Governance-type Object Lock in place. To use this header, you must have the
+ * <code>s3:BypassGovernanceRetention</code> permission.</p>
*/
inline void SetBypassGovernanceRetention(bool value) { m_bypassGovernanceRetentionHasBeenSet = true; m_bypassGovernanceRetention = value; }
/**
* <p>Specifies whether you want to delete this object even if it has a
- * Governance-type Object Lock in place. You must have sufficient permissions to
- * perform this operation.</p>
+ * Governance-type Object Lock in place. To use this header, you must have the
+ * <code>s3:BypassGovernanceRetention</code> permission.</p>
*/
inline DeleteObjectsRequest& WithBypassGovernanceRetention(bool value) { SetBypassGovernanceRetention(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteObjectsRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteObjectsRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeleteObjectsRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p> <p>This checksum algorithm must be
+ * the same for all parts and it match the checksum value supplied in the
+ * <code>CreateMultipartUpload</code> request.</p>
+ */
+ inline const ChecksumAlgorithm& GetChecksumAlgorithm() const{ return m_checksumAlgorithm; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p> <p>This checksum algorithm must be
+ * the same for all parts and it match the checksum value supplied in the
+ * <code>CreateMultipartUpload</code> request.</p>
+ */
+ inline bool ChecksumAlgorithmHasBeenSet() const { return m_checksumAlgorithmHasBeenSet; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p> <p>This checksum algorithm must be
+ * the same for all parts and it match the checksum value supplied in the
+ * <code>CreateMultipartUpload</code> request.</p>
+ */
+ inline void SetChecksumAlgorithm(const ChecksumAlgorithm& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = value; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p> <p>This checksum algorithm must be
+ * the same for all parts and it match the checksum value supplied in the
+ * <code>CreateMultipartUpload</code> request.</p>
+ */
+ inline void SetChecksumAlgorithm(ChecksumAlgorithm&& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = std::move(value); }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p> <p>This checksum algorithm must be
+ * the same for all parts and it match the checksum value supplied in the
+ * <code>CreateMultipartUpload</code> request.</p>
+ */
+ inline DeleteObjectsRequest& WithChecksumAlgorithm(const ChecksumAlgorithm& value) { SetChecksumAlgorithm(value); return *this;}
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p> <p>This checksum algorithm must be
+ * the same for all parts and it match the checksum value supplied in the
+ * <code>CreateMultipartUpload</code> request.</p>
+ */
+ inline DeleteObjectsRequest& WithChecksumAlgorithm(ChecksumAlgorithm&& value) { SetChecksumAlgorithm(std::move(value)); return *this;}
+
+
inline const Aws::Map<Aws::String, Aws::String>& GetCustomizedAccessLogTag() const{ return m_customizedAccessLogTag; }
@@ -457,25 +559,28 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Delete m_delete;
- bool m_deleteHasBeenSet;
+ bool m_deleteHasBeenSet = false;
Aws::String m_mFA;
- bool m_mFAHasBeenSet;
+ bool m_mFAHasBeenSet = false;
RequestPayer m_requestPayer;
- bool m_requestPayerHasBeenSet;
+ bool m_requestPayerHasBeenSet = false;
bool m_bypassGovernanceRetention;
- bool m_bypassGovernanceRetentionHasBeenSet;
+ bool m_bypassGovernanceRetentionHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
+
+ ChecksumAlgorithm m_checksumAlgorithm;
+ bool m_checksumAlgorithmHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectsResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectsResult.h
index 5533d2b3e5..b06f22acb1 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectsResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeleteObjectsResult.h
@@ -27,12 +27,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API DeleteObjectsResult
+ class DeleteObjectsResult
{
public:
- DeleteObjectsResult();
- DeleteObjectsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- DeleteObjectsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API DeleteObjectsResult();
+ AWS_S3_API DeleteObjectsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API DeleteObjectsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeletePublicAccessBlockRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeletePublicAccessBlockRequest.h
index d53ad97548..754bb1e12b 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeletePublicAccessBlockRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeletePublicAccessBlockRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API DeletePublicAccessBlockRequest : public S3Request
+ class DeletePublicAccessBlockRequest : public S3Request
{
public:
- DeletePublicAccessBlockRequest();
+ AWS_S3_API DeletePublicAccessBlockRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,12 +34,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "DeletePublicAccessBlock"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The Amazon S3 bucket whose <code>PublicAccessBlock</code> configuration you
@@ -92,57 +96,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeletePublicAccessBlockRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeletePublicAccessBlockRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline DeletePublicAccessBlockRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -189,13 +193,13 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeletedObject.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeletedObject.h
index 72f1b97e85..a2d30acfa0 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeletedObject.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/DeletedObject.h
@@ -27,14 +27,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/DeletedObject">AWS
* API Reference</a></p>
*/
- class AWS_S3_API DeletedObject
+ class DeletedObject
{
public:
- DeletedObject();
- DeletedObject(const Aws::Utils::Xml::XmlNode& xmlNode);
- DeletedObject& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API DeletedObject();
+ AWS_S3_API DeletedObject(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API DeletedObject& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -207,16 +207,16 @@ namespace Model
private:
Aws::String m_key;
- bool m_keyHasBeenSet;
+ bool m_keyHasBeenSet = false;
Aws::String m_versionId;
- bool m_versionIdHasBeenSet;
+ bool m_versionIdHasBeenSet = false;
bool m_deleteMarker;
- bool m_deleteMarkerHasBeenSet;
+ bool m_deleteMarkerHasBeenSet = false;
Aws::String m_deleteMarkerVersionId;
- bool m_deleteMarkerVersionIdHasBeenSet;
+ bool m_deleteMarkerVersionIdHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Destination.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Destination.h
index eabf57c69a..251c04b772 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Destination.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Destination.h
@@ -34,14 +34,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/Destination">AWS API
* Reference</a></p>
*/
- class AWS_S3_API Destination
+ class Destination
{
public:
- Destination();
- Destination(const Aws::Utils::Xml::XmlNode& xmlNode);
- Destination& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Destination();
+ AWS_S3_API Destination(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Destination& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -95,97 +95,97 @@ namespace Model
/**
* <p>Destination bucket owner account ID. In a cross-account scenario, if you
- * direct Amazon S3 to change replica ownership to the AWS account that owns the
- * destination bucket by specifying the <code>AccessControlTranslation</code>
- * property, this is the account ID of the destination bucket owner. For more
- * information, see <a
+ * direct Amazon S3 to change replica ownership to the Amazon Web Services account
+ * that owns the destination bucket by specifying the
+ * <code>AccessControlTranslation</code> property, this is the account ID of the
+ * destination bucket owner. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-change-owner.html">Replication
- * Additional Configuration: Changing the Replica Owner</a> in the <i>Amazon Simple
- * Storage Service Developer Guide</i>.</p>
+ * Additional Configuration: Changing the Replica Owner</a> in the <i>Amazon S3
+ * User Guide</i>.</p>
*/
inline const Aws::String& GetAccount() const{ return m_account; }
/**
* <p>Destination bucket owner account ID. In a cross-account scenario, if you
- * direct Amazon S3 to change replica ownership to the AWS account that owns the
- * destination bucket by specifying the <code>AccessControlTranslation</code>
- * property, this is the account ID of the destination bucket owner. For more
- * information, see <a
+ * direct Amazon S3 to change replica ownership to the Amazon Web Services account
+ * that owns the destination bucket by specifying the
+ * <code>AccessControlTranslation</code> property, this is the account ID of the
+ * destination bucket owner. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-change-owner.html">Replication
- * Additional Configuration: Changing the Replica Owner</a> in the <i>Amazon Simple
- * Storage Service Developer Guide</i>.</p>
+ * Additional Configuration: Changing the Replica Owner</a> in the <i>Amazon S3
+ * User Guide</i>.</p>
*/
inline bool AccountHasBeenSet() const { return m_accountHasBeenSet; }
/**
* <p>Destination bucket owner account ID. In a cross-account scenario, if you
- * direct Amazon S3 to change replica ownership to the AWS account that owns the
- * destination bucket by specifying the <code>AccessControlTranslation</code>
- * property, this is the account ID of the destination bucket owner. For more
- * information, see <a
+ * direct Amazon S3 to change replica ownership to the Amazon Web Services account
+ * that owns the destination bucket by specifying the
+ * <code>AccessControlTranslation</code> property, this is the account ID of the
+ * destination bucket owner. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-change-owner.html">Replication
- * Additional Configuration: Changing the Replica Owner</a> in the <i>Amazon Simple
- * Storage Service Developer Guide</i>.</p>
+ * Additional Configuration: Changing the Replica Owner</a> in the <i>Amazon S3
+ * User Guide</i>.</p>
*/
inline void SetAccount(const Aws::String& value) { m_accountHasBeenSet = true; m_account = value; }
/**
* <p>Destination bucket owner account ID. In a cross-account scenario, if you
- * direct Amazon S3 to change replica ownership to the AWS account that owns the
- * destination bucket by specifying the <code>AccessControlTranslation</code>
- * property, this is the account ID of the destination bucket owner. For more
- * information, see <a
+ * direct Amazon S3 to change replica ownership to the Amazon Web Services account
+ * that owns the destination bucket by specifying the
+ * <code>AccessControlTranslation</code> property, this is the account ID of the
+ * destination bucket owner. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-change-owner.html">Replication
- * Additional Configuration: Changing the Replica Owner</a> in the <i>Amazon Simple
- * Storage Service Developer Guide</i>.</p>
+ * Additional Configuration: Changing the Replica Owner</a> in the <i>Amazon S3
+ * User Guide</i>.</p>
*/
inline void SetAccount(Aws::String&& value) { m_accountHasBeenSet = true; m_account = std::move(value); }
/**
* <p>Destination bucket owner account ID. In a cross-account scenario, if you
- * direct Amazon S3 to change replica ownership to the AWS account that owns the
- * destination bucket by specifying the <code>AccessControlTranslation</code>
- * property, this is the account ID of the destination bucket owner. For more
- * information, see <a
+ * direct Amazon S3 to change replica ownership to the Amazon Web Services account
+ * that owns the destination bucket by specifying the
+ * <code>AccessControlTranslation</code> property, this is the account ID of the
+ * destination bucket owner. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-change-owner.html">Replication
- * Additional Configuration: Changing the Replica Owner</a> in the <i>Amazon Simple
- * Storage Service Developer Guide</i>.</p>
+ * Additional Configuration: Changing the Replica Owner</a> in the <i>Amazon S3
+ * User Guide</i>.</p>
*/
inline void SetAccount(const char* value) { m_accountHasBeenSet = true; m_account.assign(value); }
/**
* <p>Destination bucket owner account ID. In a cross-account scenario, if you
- * direct Amazon S3 to change replica ownership to the AWS account that owns the
- * destination bucket by specifying the <code>AccessControlTranslation</code>
- * property, this is the account ID of the destination bucket owner. For more
- * information, see <a
+ * direct Amazon S3 to change replica ownership to the Amazon Web Services account
+ * that owns the destination bucket by specifying the
+ * <code>AccessControlTranslation</code> property, this is the account ID of the
+ * destination bucket owner. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-change-owner.html">Replication
- * Additional Configuration: Changing the Replica Owner</a> in the <i>Amazon Simple
- * Storage Service Developer Guide</i>.</p>
+ * Additional Configuration: Changing the Replica Owner</a> in the <i>Amazon S3
+ * User Guide</i>.</p>
*/
inline Destination& WithAccount(const Aws::String& value) { SetAccount(value); return *this;}
/**
* <p>Destination bucket owner account ID. In a cross-account scenario, if you
- * direct Amazon S3 to change replica ownership to the AWS account that owns the
- * destination bucket by specifying the <code>AccessControlTranslation</code>
- * property, this is the account ID of the destination bucket owner. For more
- * information, see <a
+ * direct Amazon S3 to change replica ownership to the Amazon Web Services account
+ * that owns the destination bucket by specifying the
+ * <code>AccessControlTranslation</code> property, this is the account ID of the
+ * destination bucket owner. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-change-owner.html">Replication
- * Additional Configuration: Changing the Replica Owner</a> in the <i>Amazon Simple
- * Storage Service Developer Guide</i>.</p>
+ * Additional Configuration: Changing the Replica Owner</a> in the <i>Amazon S3
+ * User Guide</i>.</p>
*/
inline Destination& WithAccount(Aws::String&& value) { SetAccount(std::move(value)); return *this;}
/**
* <p>Destination bucket owner account ID. In a cross-account scenario, if you
- * direct Amazon S3 to change replica ownership to the AWS account that owns the
- * destination bucket by specifying the <code>AccessControlTranslation</code>
- * property, this is the account ID of the destination bucket owner. For more
- * information, see <a
+ * direct Amazon S3 to change replica ownership to the Amazon Web Services account
+ * that owns the destination bucket by specifying the
+ * <code>AccessControlTranslation</code> property, this is the account ID of the
+ * destination bucket owner. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-change-owner.html">Replication
- * Additional Configuration: Changing the Replica Owner</a> in the <i>Amazon Simple
- * Storage Service Developer Guide</i>.</p>
+ * Additional Configuration: Changing the Replica Owner</a> in the <i>Amazon S3
+ * User Guide</i>.</p>
*/
inline Destination& WithAccount(const char* value) { SetAccount(value); return *this;}
@@ -196,8 +196,7 @@ namespace Model
* object to create the object replica. </p> <p>For valid values, see the
* <code>StorageClass</code> element of the <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTreplication.html">PUT
- * Bucket replication</a> action in the <i>Amazon Simple Storage Service API
- * Reference</i>.</p>
+ * Bucket replication</a> action in the <i>Amazon S3 API Reference</i>.</p>
*/
inline const StorageClass& GetStorageClass() const{ return m_storageClass; }
@@ -207,8 +206,7 @@ namespace Model
* object to create the object replica. </p> <p>For valid values, see the
* <code>StorageClass</code> element of the <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTreplication.html">PUT
- * Bucket replication</a> action in the <i>Amazon Simple Storage Service API
- * Reference</i>.</p>
+ * Bucket replication</a> action in the <i>Amazon S3 API Reference</i>.</p>
*/
inline bool StorageClassHasBeenSet() const { return m_storageClassHasBeenSet; }
@@ -218,8 +216,7 @@ namespace Model
* object to create the object replica. </p> <p>For valid values, see the
* <code>StorageClass</code> element of the <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTreplication.html">PUT
- * Bucket replication</a> action in the <i>Amazon Simple Storage Service API
- * Reference</i>.</p>
+ * Bucket replication</a> action in the <i>Amazon S3 API Reference</i>.</p>
*/
inline void SetStorageClass(const StorageClass& value) { m_storageClassHasBeenSet = true; m_storageClass = value; }
@@ -229,8 +226,7 @@ namespace Model
* object to create the object replica. </p> <p>For valid values, see the
* <code>StorageClass</code> element of the <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTreplication.html">PUT
- * Bucket replication</a> action in the <i>Amazon Simple Storage Service API
- * Reference</i>.</p>
+ * Bucket replication</a> action in the <i>Amazon S3 API Reference</i>.</p>
*/
inline void SetStorageClass(StorageClass&& value) { m_storageClassHasBeenSet = true; m_storageClass = std::move(value); }
@@ -240,8 +236,7 @@ namespace Model
* object to create the object replica. </p> <p>For valid values, see the
* <code>StorageClass</code> element of the <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTreplication.html">PUT
- * Bucket replication</a> action in the <i>Amazon Simple Storage Service API
- * Reference</i>.</p>
+ * Bucket replication</a> action in the <i>Amazon S3 API Reference</i>.</p>
*/
inline Destination& WithStorageClass(const StorageClass& value) { SetStorageClass(value); return *this;}
@@ -251,8 +246,7 @@ namespace Model
* object to create the object replica. </p> <p>For valid values, see the
* <code>StorageClass</code> element of the <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTreplication.html">PUT
- * Bucket replication</a> action in the <i>Amazon Simple Storage Service API
- * Reference</i>.</p>
+ * Bucket replication</a> action in the <i>Amazon S3 API Reference</i>.</p>
*/
inline Destination& WithStorageClass(StorageClass&& value) { SetStorageClass(std::move(value)); return *this;}
@@ -260,54 +254,54 @@ namespace Model
/**
* <p>Specify this only in a cross-account scenario (where source and destination
* bucket owners are not the same), and you want to change replica ownership to the
- * AWS account that owns the destination bucket. If this is not specified in the
- * replication configuration, the replicas are owned by same AWS account that owns
- * the source object.</p>
+ * Amazon Web Services account that owns the destination bucket. If this is not
+ * specified in the replication configuration, the replicas are owned by same
+ * Amazon Web Services account that owns the source object.</p>
*/
inline const AccessControlTranslation& GetAccessControlTranslation() const{ return m_accessControlTranslation; }
/**
* <p>Specify this only in a cross-account scenario (where source and destination
* bucket owners are not the same), and you want to change replica ownership to the
- * AWS account that owns the destination bucket. If this is not specified in the
- * replication configuration, the replicas are owned by same AWS account that owns
- * the source object.</p>
+ * Amazon Web Services account that owns the destination bucket. If this is not
+ * specified in the replication configuration, the replicas are owned by same
+ * Amazon Web Services account that owns the source object.</p>
*/
inline bool AccessControlTranslationHasBeenSet() const { return m_accessControlTranslationHasBeenSet; }
/**
* <p>Specify this only in a cross-account scenario (where source and destination
* bucket owners are not the same), and you want to change replica ownership to the
- * AWS account that owns the destination bucket. If this is not specified in the
- * replication configuration, the replicas are owned by same AWS account that owns
- * the source object.</p>
+ * Amazon Web Services account that owns the destination bucket. If this is not
+ * specified in the replication configuration, the replicas are owned by same
+ * Amazon Web Services account that owns the source object.</p>
*/
inline void SetAccessControlTranslation(const AccessControlTranslation& value) { m_accessControlTranslationHasBeenSet = true; m_accessControlTranslation = value; }
/**
* <p>Specify this only in a cross-account scenario (where source and destination
* bucket owners are not the same), and you want to change replica ownership to the
- * AWS account that owns the destination bucket. If this is not specified in the
- * replication configuration, the replicas are owned by same AWS account that owns
- * the source object.</p>
+ * Amazon Web Services account that owns the destination bucket. If this is not
+ * specified in the replication configuration, the replicas are owned by same
+ * Amazon Web Services account that owns the source object.</p>
*/
inline void SetAccessControlTranslation(AccessControlTranslation&& value) { m_accessControlTranslationHasBeenSet = true; m_accessControlTranslation = std::move(value); }
/**
* <p>Specify this only in a cross-account scenario (where source and destination
* bucket owners are not the same), and you want to change replica ownership to the
- * AWS account that owns the destination bucket. If this is not specified in the
- * replication configuration, the replicas are owned by same AWS account that owns
- * the source object.</p>
+ * Amazon Web Services account that owns the destination bucket. If this is not
+ * specified in the replication configuration, the replicas are owned by same
+ * Amazon Web Services account that owns the source object.</p>
*/
inline Destination& WithAccessControlTranslation(const AccessControlTranslation& value) { SetAccessControlTranslation(value); return *this;}
/**
* <p>Specify this only in a cross-account scenario (where source and destination
* bucket owners are not the same), and you want to change replica ownership to the
- * AWS account that owns the destination bucket. If this is not specified in the
- * replication configuration, the replicas are owned by same AWS account that owns
- * the source object.</p>
+ * Amazon Web Services account that owns the destination bucket. If this is not
+ * specified in the replication configuration, the replicas are owned by same
+ * Amazon Web Services account that owns the source object.</p>
*/
inline Destination& WithAccessControlTranslation(AccessControlTranslation&& value) { SetAccessControlTranslation(std::move(value)); return *this;}
@@ -443,25 +437,25 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_account;
- bool m_accountHasBeenSet;
+ bool m_accountHasBeenSet = false;
StorageClass m_storageClass;
- bool m_storageClassHasBeenSet;
+ bool m_storageClassHasBeenSet = false;
AccessControlTranslation m_accessControlTranslation;
- bool m_accessControlTranslationHasBeenSet;
+ bool m_accessControlTranslationHasBeenSet = false;
EncryptionConfiguration m_encryptionConfiguration;
- bool m_encryptionConfigurationHasBeenSet;
+ bool m_encryptionConfigurationHasBeenSet = false;
ReplicationTime m_replicationTime;
- bool m_replicationTimeHasBeenSet;
+ bool m_replicationTimeHasBeenSet = false;
Metrics m_metrics;
- bool m_metricsHasBeenSet;
+ bool m_metricsHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Encryption.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Encryption.h
index 87937565bb..729beeeca0 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Encryption.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Encryption.h
@@ -28,14 +28,14 @@ namespace Model
* <a href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/Encryption">AWS
* API Reference</a></p>
*/
- class AWS_S3_API Encryption
+ class Encryption
{
public:
- Encryption();
- Encryption(const Aws::Utils::Xml::XmlNode& xmlNode);
- Encryption& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Encryption();
+ AWS_S3_API Encryption(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Encryption& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -77,89 +77,81 @@ namespace Model
/**
* <p>If the encryption type is <code>aws:kms</code>, this optional value specifies
- * the ID of the symmetric customer managed AWS KMS CMK to use for encryption of
- * job results. Amazon S3 only supports symmetric CMKs. For more information, see
- * <a
+ * the ID of the symmetric customer managed key to use for encryption of job
+ * results. Amazon S3 only supports symmetric keys. For more information, see <a
* href="https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html">Using
- * Symmetric and Asymmetric Keys</a> in the <i>AWS Key Management Service Developer
- * Guide</i>.</p>
+ * symmetric and asymmetric keys</a> in the <i>Amazon Web Services Key Management
+ * Service Developer Guide</i>.</p>
*/
inline const Aws::String& GetKMSKeyId() const{ return m_kMSKeyId; }
/**
* <p>If the encryption type is <code>aws:kms</code>, this optional value specifies
- * the ID of the symmetric customer managed AWS KMS CMK to use for encryption of
- * job results. Amazon S3 only supports symmetric CMKs. For more information, see
- * <a
+ * the ID of the symmetric customer managed key to use for encryption of job
+ * results. Amazon S3 only supports symmetric keys. For more information, see <a
* href="https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html">Using
- * Symmetric and Asymmetric Keys</a> in the <i>AWS Key Management Service Developer
- * Guide</i>.</p>
+ * symmetric and asymmetric keys</a> in the <i>Amazon Web Services Key Management
+ * Service Developer Guide</i>.</p>
*/
inline bool KMSKeyIdHasBeenSet() const { return m_kMSKeyIdHasBeenSet; }
/**
* <p>If the encryption type is <code>aws:kms</code>, this optional value specifies
- * the ID of the symmetric customer managed AWS KMS CMK to use for encryption of
- * job results. Amazon S3 only supports symmetric CMKs. For more information, see
- * <a
+ * the ID of the symmetric customer managed key to use for encryption of job
+ * results. Amazon S3 only supports symmetric keys. For more information, see <a
* href="https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html">Using
- * Symmetric and Asymmetric Keys</a> in the <i>AWS Key Management Service Developer
- * Guide</i>.</p>
+ * symmetric and asymmetric keys</a> in the <i>Amazon Web Services Key Management
+ * Service Developer Guide</i>.</p>
*/
inline void SetKMSKeyId(const Aws::String& value) { m_kMSKeyIdHasBeenSet = true; m_kMSKeyId = value; }
/**
* <p>If the encryption type is <code>aws:kms</code>, this optional value specifies
- * the ID of the symmetric customer managed AWS KMS CMK to use for encryption of
- * job results. Amazon S3 only supports symmetric CMKs. For more information, see
- * <a
+ * the ID of the symmetric customer managed key to use for encryption of job
+ * results. Amazon S3 only supports symmetric keys. For more information, see <a
* href="https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html">Using
- * Symmetric and Asymmetric Keys</a> in the <i>AWS Key Management Service Developer
- * Guide</i>.</p>
+ * symmetric and asymmetric keys</a> in the <i>Amazon Web Services Key Management
+ * Service Developer Guide</i>.</p>
*/
inline void SetKMSKeyId(Aws::String&& value) { m_kMSKeyIdHasBeenSet = true; m_kMSKeyId = std::move(value); }
/**
* <p>If the encryption type is <code>aws:kms</code>, this optional value specifies
- * the ID of the symmetric customer managed AWS KMS CMK to use for encryption of
- * job results. Amazon S3 only supports symmetric CMKs. For more information, see
- * <a
+ * the ID of the symmetric customer managed key to use for encryption of job
+ * results. Amazon S3 only supports symmetric keys. For more information, see <a
* href="https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html">Using
- * Symmetric and Asymmetric Keys</a> in the <i>AWS Key Management Service Developer
- * Guide</i>.</p>
+ * symmetric and asymmetric keys</a> in the <i>Amazon Web Services Key Management
+ * Service Developer Guide</i>.</p>
*/
inline void SetKMSKeyId(const char* value) { m_kMSKeyIdHasBeenSet = true; m_kMSKeyId.assign(value); }
/**
* <p>If the encryption type is <code>aws:kms</code>, this optional value specifies
- * the ID of the symmetric customer managed AWS KMS CMK to use for encryption of
- * job results. Amazon S3 only supports symmetric CMKs. For more information, see
- * <a
+ * the ID of the symmetric customer managed key to use for encryption of job
+ * results. Amazon S3 only supports symmetric keys. For more information, see <a
* href="https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html">Using
- * Symmetric and Asymmetric Keys</a> in the <i>AWS Key Management Service Developer
- * Guide</i>.</p>
+ * symmetric and asymmetric keys</a> in the <i>Amazon Web Services Key Management
+ * Service Developer Guide</i>.</p>
*/
inline Encryption& WithKMSKeyId(const Aws::String& value) { SetKMSKeyId(value); return *this;}
/**
* <p>If the encryption type is <code>aws:kms</code>, this optional value specifies
- * the ID of the symmetric customer managed AWS KMS CMK to use for encryption of
- * job results. Amazon S3 only supports symmetric CMKs. For more information, see
- * <a
+ * the ID of the symmetric customer managed key to use for encryption of job
+ * results. Amazon S3 only supports symmetric keys. For more information, see <a
* href="https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html">Using
- * Symmetric and Asymmetric Keys</a> in the <i>AWS Key Management Service Developer
- * Guide</i>.</p>
+ * symmetric and asymmetric keys</a> in the <i>Amazon Web Services Key Management
+ * Service Developer Guide</i>.</p>
*/
inline Encryption& WithKMSKeyId(Aws::String&& value) { SetKMSKeyId(std::move(value)); return *this;}
/**
* <p>If the encryption type is <code>aws:kms</code>, this optional value specifies
- * the ID of the symmetric customer managed AWS KMS CMK to use for encryption of
- * job results. Amazon S3 only supports symmetric CMKs. For more information, see
- * <a
+ * the ID of the symmetric customer managed key to use for encryption of job
+ * results. Amazon S3 only supports symmetric keys. For more information, see <a
* href="https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html">Using
- * Symmetric and Asymmetric Keys</a> in the <i>AWS Key Management Service Developer
- * Guide</i>.</p>
+ * symmetric and asymmetric keys</a> in the <i>Amazon Web Services Key Management
+ * Service Developer Guide</i>.</p>
*/
inline Encryption& WithKMSKeyId(const char* value) { SetKMSKeyId(value); return *this;}
@@ -215,13 +207,13 @@ namespace Model
private:
ServerSideEncryption m_encryptionType;
- bool m_encryptionTypeHasBeenSet;
+ bool m_encryptionTypeHasBeenSet = false;
Aws::String m_kMSKeyId;
- bool m_kMSKeyIdHasBeenSet;
+ bool m_kMSKeyIdHasBeenSet = false;
Aws::String m_kMSContext;
- bool m_kMSContextHasBeenSet;
+ bool m_kMSContextHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/EncryptionConfiguration.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/EncryptionConfiguration.h
index 14d86c3767..285dda7937 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/EncryptionConfiguration.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/EncryptionConfiguration.h
@@ -28,108 +28,116 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/EncryptionConfiguration">AWS
* API Reference</a></p>
*/
- class AWS_S3_API EncryptionConfiguration
+ class EncryptionConfiguration
{
public:
- EncryptionConfiguration();
- EncryptionConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
- EncryptionConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API EncryptionConfiguration();
+ AWS_S3_API EncryptionConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API EncryptionConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
- * <p>Specifies the ID (Key ARN or Alias ARN) of the customer managed customer
- * master key (CMK) stored in AWS Key Management Service (KMS) for the destination
- * bucket. Amazon S3 uses this key to encrypt replica objects. Amazon S3 only
- * supports symmetric customer managed CMKs. For more information, see <a
+ * <p>Specifies the ID (Key ARN or Alias ARN) of the customer managed Amazon Web
+ * Services KMS key stored in Amazon Web Services Key Management Service (KMS) for
+ * the destination bucket. Amazon S3 uses this key to encrypt replica objects.
+ * Amazon S3 only supports symmetric, customer managed KMS keys. For more
+ * information, see <a
* href="https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html">Using
- * Symmetric and Asymmetric Keys</a> in the <i>AWS Key Management Service Developer
- * Guide</i>.</p>
+ * symmetric and asymmetric keys</a> in the <i>Amazon Web Services Key Management
+ * Service Developer Guide</i>.</p>
*/
inline const Aws::String& GetReplicaKmsKeyID() const{ return m_replicaKmsKeyID; }
/**
- * <p>Specifies the ID (Key ARN or Alias ARN) of the customer managed customer
- * master key (CMK) stored in AWS Key Management Service (KMS) for the destination
- * bucket. Amazon S3 uses this key to encrypt replica objects. Amazon S3 only
- * supports symmetric customer managed CMKs. For more information, see <a
+ * <p>Specifies the ID (Key ARN or Alias ARN) of the customer managed Amazon Web
+ * Services KMS key stored in Amazon Web Services Key Management Service (KMS) for
+ * the destination bucket. Amazon S3 uses this key to encrypt replica objects.
+ * Amazon S3 only supports symmetric, customer managed KMS keys. For more
+ * information, see <a
* href="https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html">Using
- * Symmetric and Asymmetric Keys</a> in the <i>AWS Key Management Service Developer
- * Guide</i>.</p>
+ * symmetric and asymmetric keys</a> in the <i>Amazon Web Services Key Management
+ * Service Developer Guide</i>.</p>
*/
inline bool ReplicaKmsKeyIDHasBeenSet() const { return m_replicaKmsKeyIDHasBeenSet; }
/**
- * <p>Specifies the ID (Key ARN or Alias ARN) of the customer managed customer
- * master key (CMK) stored in AWS Key Management Service (KMS) for the destination
- * bucket. Amazon S3 uses this key to encrypt replica objects. Amazon S3 only
- * supports symmetric customer managed CMKs. For more information, see <a
+ * <p>Specifies the ID (Key ARN or Alias ARN) of the customer managed Amazon Web
+ * Services KMS key stored in Amazon Web Services Key Management Service (KMS) for
+ * the destination bucket. Amazon S3 uses this key to encrypt replica objects.
+ * Amazon S3 only supports symmetric, customer managed KMS keys. For more
+ * information, see <a
* href="https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html">Using
- * Symmetric and Asymmetric Keys</a> in the <i>AWS Key Management Service Developer
- * Guide</i>.</p>
+ * symmetric and asymmetric keys</a> in the <i>Amazon Web Services Key Management
+ * Service Developer Guide</i>.</p>
*/
inline void SetReplicaKmsKeyID(const Aws::String& value) { m_replicaKmsKeyIDHasBeenSet = true; m_replicaKmsKeyID = value; }
/**
- * <p>Specifies the ID (Key ARN or Alias ARN) of the customer managed customer
- * master key (CMK) stored in AWS Key Management Service (KMS) for the destination
- * bucket. Amazon S3 uses this key to encrypt replica objects. Amazon S3 only
- * supports symmetric customer managed CMKs. For more information, see <a
+ * <p>Specifies the ID (Key ARN or Alias ARN) of the customer managed Amazon Web
+ * Services KMS key stored in Amazon Web Services Key Management Service (KMS) for
+ * the destination bucket. Amazon S3 uses this key to encrypt replica objects.
+ * Amazon S3 only supports symmetric, customer managed KMS keys. For more
+ * information, see <a
* href="https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html">Using
- * Symmetric and Asymmetric Keys</a> in the <i>AWS Key Management Service Developer
- * Guide</i>.</p>
+ * symmetric and asymmetric keys</a> in the <i>Amazon Web Services Key Management
+ * Service Developer Guide</i>.</p>
*/
inline void SetReplicaKmsKeyID(Aws::String&& value) { m_replicaKmsKeyIDHasBeenSet = true; m_replicaKmsKeyID = std::move(value); }
/**
- * <p>Specifies the ID (Key ARN or Alias ARN) of the customer managed customer
- * master key (CMK) stored in AWS Key Management Service (KMS) for the destination
- * bucket. Amazon S3 uses this key to encrypt replica objects. Amazon S3 only
- * supports symmetric customer managed CMKs. For more information, see <a
+ * <p>Specifies the ID (Key ARN or Alias ARN) of the customer managed Amazon Web
+ * Services KMS key stored in Amazon Web Services Key Management Service (KMS) for
+ * the destination bucket. Amazon S3 uses this key to encrypt replica objects.
+ * Amazon S3 only supports symmetric, customer managed KMS keys. For more
+ * information, see <a
* href="https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html">Using
- * Symmetric and Asymmetric Keys</a> in the <i>AWS Key Management Service Developer
- * Guide</i>.</p>
+ * symmetric and asymmetric keys</a> in the <i>Amazon Web Services Key Management
+ * Service Developer Guide</i>.</p>
*/
inline void SetReplicaKmsKeyID(const char* value) { m_replicaKmsKeyIDHasBeenSet = true; m_replicaKmsKeyID.assign(value); }
/**
- * <p>Specifies the ID (Key ARN or Alias ARN) of the customer managed customer
- * master key (CMK) stored in AWS Key Management Service (KMS) for the destination
- * bucket. Amazon S3 uses this key to encrypt replica objects. Amazon S3 only
- * supports symmetric customer managed CMKs. For more information, see <a
+ * <p>Specifies the ID (Key ARN or Alias ARN) of the customer managed Amazon Web
+ * Services KMS key stored in Amazon Web Services Key Management Service (KMS) for
+ * the destination bucket. Amazon S3 uses this key to encrypt replica objects.
+ * Amazon S3 only supports symmetric, customer managed KMS keys. For more
+ * information, see <a
* href="https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html">Using
- * Symmetric and Asymmetric Keys</a> in the <i>AWS Key Management Service Developer
- * Guide</i>.</p>
+ * symmetric and asymmetric keys</a> in the <i>Amazon Web Services Key Management
+ * Service Developer Guide</i>.</p>
*/
inline EncryptionConfiguration& WithReplicaKmsKeyID(const Aws::String& value) { SetReplicaKmsKeyID(value); return *this;}
/**
- * <p>Specifies the ID (Key ARN or Alias ARN) of the customer managed customer
- * master key (CMK) stored in AWS Key Management Service (KMS) for the destination
- * bucket. Amazon S3 uses this key to encrypt replica objects. Amazon S3 only
- * supports symmetric customer managed CMKs. For more information, see <a
+ * <p>Specifies the ID (Key ARN or Alias ARN) of the customer managed Amazon Web
+ * Services KMS key stored in Amazon Web Services Key Management Service (KMS) for
+ * the destination bucket. Amazon S3 uses this key to encrypt replica objects.
+ * Amazon S3 only supports symmetric, customer managed KMS keys. For more
+ * information, see <a
* href="https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html">Using
- * Symmetric and Asymmetric Keys</a> in the <i>AWS Key Management Service Developer
- * Guide</i>.</p>
+ * symmetric and asymmetric keys</a> in the <i>Amazon Web Services Key Management
+ * Service Developer Guide</i>.</p>
*/
inline EncryptionConfiguration& WithReplicaKmsKeyID(Aws::String&& value) { SetReplicaKmsKeyID(std::move(value)); return *this;}
/**
- * <p>Specifies the ID (Key ARN or Alias ARN) of the customer managed customer
- * master key (CMK) stored in AWS Key Management Service (KMS) for the destination
- * bucket. Amazon S3 uses this key to encrypt replica objects. Amazon S3 only
- * supports symmetric customer managed CMKs. For more information, see <a
+ * <p>Specifies the ID (Key ARN or Alias ARN) of the customer managed Amazon Web
+ * Services KMS key stored in Amazon Web Services Key Management Service (KMS) for
+ * the destination bucket. Amazon S3 uses this key to encrypt replica objects.
+ * Amazon S3 only supports symmetric, customer managed KMS keys. For more
+ * information, see <a
* href="https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html">Using
- * Symmetric and Asymmetric Keys</a> in the <i>AWS Key Management Service Developer
- * Guide</i>.</p>
+ * symmetric and asymmetric keys</a> in the <i>Amazon Web Services Key Management
+ * Service Developer Guide</i>.</p>
*/
inline EncryptionConfiguration& WithReplicaKmsKeyID(const char* value) { SetReplicaKmsKeyID(value); return *this;}
private:
Aws::String m_replicaKmsKeyID;
- bool m_replicaKmsKeyIDHasBeenSet;
+ bool m_replicaKmsKeyIDHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Error.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Error.h
index a6ca21b0e4..50d4938818 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Error.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Error.h
@@ -27,14 +27,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/Error">AWS API
* Reference</a></p>
*/
- class AWS_S3_API Error
+ class Error
{
public:
- Error();
- Error(const Aws::Utils::Xml::XmlNode& xmlNode);
- Error& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Error();
+ AWS_S3_API Error(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Error& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -127,41 +127,42 @@ namespace Model
* Access Denied</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p>
* </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
* <ul> <li> <p> <i>Code:</i> AccountProblem</p> </li> <li> <p> <i>Description:</i>
- * There is a problem with your AWS account that prevents the action from
- * completing successfully. Contact AWS Support for further assistance.</p> </li>
- * <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault
+ * There is a problem with your Amazon Web Services account that prevents the
+ * action from completing successfully. Contact Amazon Web Services Support for
+ * further assistance.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403
+ * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> AllAccessDisabled</p> </li> <li> <p>
+ * <i>Description:</i> All access to this Amazon S3 resource has been disabled.
+ * Contact Amazon Web Services Support for further assistance.</p> </li> <li> <p>
+ * <i>HTTP Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault Code
+ * Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * AmbiguousGrantByEmailAddress</p> </li> <li> <p> <i>Description:</i> The email
+ * address you provided is associated with more than one account.</p> </li> <li>
+ * <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault
* Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * AllAccessDisabled</p> </li> <li> <p> <i>Description:</i> All access to this
- * Amazon S3 resource has been disabled. Contact AWS Support for further
- * assistance.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li>
+ * AuthorizationHeaderMalformed</p> </li> <li> <p> <i>Description:</i> The
+ * authorization header you provided is invalid.</p> </li> <li> <p> <i>HTTP Status
+ * Code:</i> 400 Bad Request</p> </li> <li> <p> <i>HTTP Status Code:</i> N/A</p>
+ * </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> BadDigest</p> </li> <li> <p>
+ * <i>Description:</i> The Content-MD5 you specified did not match what we
+ * received.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
* <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> AmbiguousGrantByEmailAddress</p> </li> <li> <p>
- * <i>Description:</i> The email address you provided is associated with more than
- * one account.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p>
- * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
- * <ul> <li> <p> <i>Code:</i> AuthorizationHeaderMalformed</p> </li> <li> <p>
- * <i>Description:</i> The authorization header you provided is invalid.</p> </li>
- * <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> N/A</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * BadDigest</p> </li> <li> <p> <i>Description:</i> The Content-MD5 you specified
- * did not match what we received.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400
- * Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> BucketAlreadyExists</p> </li> <li>
- * <p> <i>Description:</i> The requested bucket name is not available. The bucket
- * namespace is shared by all users of the system. Please select a different name
- * and try again.</p> </li> <li> <p> <i>HTTP Status Code:</i> 409 Conflict</p>
- * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
- * <ul> <li> <p> <i>Code:</i> BucketAlreadyOwnedByYou</p> </li> <li> <p>
- * <i>Description:</i> The bucket you tried to create already exists, and you own
- * it. Amazon S3 returns this error in all AWS Regions except in the North Virginia
- * Region. For legacy compatibility, if you re-create an existing bucket that you
- * already own in the North Virginia Region, Amazon S3 returns 200 OK and resets
- * the bucket access control lists (ACLs).</p> </li> <li> <p> <i>Code:</i> 409
- * Conflict (in all Regions except the North Virginia Region) </p> </li> <li> <p>
- * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
- * <i>Code:</i> BucketNotEmpty</p> </li> <li> <p> <i>Description:</i> The bucket
- * you tried to delete is not empty.</p> </li> <li> <p> <i>HTTP Status Code:</i>
- * 409 Conflict</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * <li> <p> <i>Code:</i> BucketAlreadyExists</p> </li> <li> <p> <i>Description:</i>
+ * The requested bucket name is not available. The bucket namespace is shared by
+ * all users of the system. Please select a different name and try again.</p> </li>
+ * <li> <p> <i>HTTP Status Code:</i> 409 Conflict</p> </li> <li> <p> <i>SOAP Fault
+ * Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * BucketAlreadyOwnedByYou</p> </li> <li> <p> <i>Description:</i> The bucket you
+ * tried to create already exists, and you own it. Amazon S3 returns this error in
+ * all Amazon Web Services Regions except in the North Virginia Region. For legacy
+ * compatibility, if you re-create an existing bucket that you already own in the
+ * North Virginia Region, Amazon S3 returns 200 OK and resets the bucket access
+ * control lists (ACLs).</p> </li> <li> <p> <i>Code:</i> 409 Conflict (in all
+ * Regions except the North Virginia Region) </p> </li> <li> <p> <i>SOAP Fault Code
+ * Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * BucketNotEmpty</p> </li> <li> <p> <i>Description:</i> The bucket you tried to
+ * delete is not empty.</p> </li> <li> <p> <i>HTTP Status Code:</i> 409
+ * Conflict</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
* </ul> </li> <li> <ul> <li> <p> <i>Code:</i> CredentialsNotSupported</p> </li>
* <li> <p> <i>Description:</i> This request does not support credentials.</p>
* </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p>
@@ -202,33 +203,34 @@ namespace Model
* again.</p> </li> <li> <p> <i>HTTP Status Code:</i> 500 Internal Server Error</p>
* </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Server</p> </li> </ul> </li> <li>
* <ul> <li> <p> <i>Code:</i> InvalidAccessKeyId</p> </li> <li> <p>
- * <i>Description:</i> The AWS access key ID you provided does not exist in our
- * records.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li>
- * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> InvalidAddressingHeader</p> </li> <li> <p>
- * <i>Description:</i> You must specify the Anonymous role.</p> </li> <li> <p>
- * <i>HTTP Status Code:</i> N/A</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i>
- * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidArgument</p>
- * </li> <li> <p> <i>Description:</i> Invalid Argument</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
- * Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidBucketName</p> </li> <li> <p> <i>Description:</i> The specified bucket is
- * not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
- * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> InvalidBucketState</p> </li> <li> <p> <i>Description:</i>
- * The request is not valid with the current state of the bucket.</p> </li> <li>
- * <p> <i>HTTP Status Code:</i> 409 Conflict</p> </li> <li> <p> <i>SOAP Fault Code
+ * <i>Description:</i> The Amazon Web Services access key ID you provided does not
+ * exist in our records.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403
+ * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidAddressingHeader</p> </li>
+ * <li> <p> <i>Description:</i> You must specify the Anonymous role.</p> </li> <li>
+ * <p> <i>HTTP Status Code:</i> N/A</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidDigest</p> </li> <li> <p> <i>Description:</i> The Content-MD5 you
- * specified is not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
- * Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul>
- * </li> <li> <ul> <li> <p> <i>Code:</i> InvalidEncryptionAlgorithmError</p> </li>
- * <li> <p> <i>Description:</i> The encryption request you specified is not valid.
- * The valid value is AES256.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
- * Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul>
- * </li> <li> <ul> <li> <p> <i>Code:</i> InvalidLocationConstraint</p> </li> <li>
- * <p> <i>Description:</i> The specified location constraint is not valid. For more
- * information about Regions, see <a
+ * InvalidArgument</p> </li> <li> <p> <i>Description:</i> Invalid Argument</p>
+ * </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p>
+ * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
+ * <i>Code:</i> InvalidBucketName</p> </li> <li> <p> <i>Description:</i> The
+ * specified bucket is not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400
+ * Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidBucketState</p> </li> <li>
+ * <p> <i>Description:</i> The request is not valid with the current state of the
+ * bucket.</p> </li> <li> <p> <i>HTTP Status Code:</i> 409 Conflict</p> </li> <li>
+ * <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li>
+ * <p> <i>Code:</i> InvalidDigest</p> </li> <li> <p> <i>Description:</i> The
+ * Content-MD5 you specified is not valid.</p> </li> <li> <p> <i>HTTP Status
+ * Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i>
+ * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * InvalidEncryptionAlgorithmError</p> </li> <li> <p> <i>Description:</i> The
+ * encryption request you specified is not valid. The valid value is AES256.</p>
+ * </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p>
+ * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
+ * <i>Code:</i> InvalidLocationConstraint</p> </li> <li> <p> <i>Description:</i>
+ * The specified location constraint is not valid. For more information about
+ * Regions, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingBucket.html#access-bucket-intro">How
* to Select a Region for Your Buckets</a>. </p> </li> <li> <p> <i>HTTP Status
* Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i>
@@ -247,11 +249,11 @@ namespace Model
* number.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
* <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
* <li> <p> <i>Code:</i> InvalidPayer</p> </li> <li> <p> <i>Description:</i> All
- * access to this object has been disabled. Please contact AWS Support for further
- * assistance.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li>
- * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> InvalidPolicyDocument</p> </li> <li> <p>
- * <i>Description:</i> The content of the form does not meet the conditions
+ * access to this object has been disabled. Please contact Amazon Web Services
+ * Support for further assistance.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403
+ * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidPolicyDocument</p> </li> <li>
+ * <p> <i>Description:</i> The content of the form does not meet the conditions
* specified in the policy document.</p> </li> <li> <p> <i>HTTP Status Code:</i>
* 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p>
* </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidRange</p> </li> <li>
@@ -259,10 +261,10 @@ namespace Model
* <p> <i>HTTP Status Code:</i> 416 Requested Range Not Satisfiable</p> </li> <li>
* <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li>
* <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p> <i>Description:</i> Please
- * use AWS4-HMAC-SHA256.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
- * Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li> </ul> </li> <li> <ul> <li>
- * <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p> <i>Description:</i> SOAP
- * requests must be made over an HTTPS connection.</p> </li> <li> <p> <i>HTTP
+ * use <code>AWS4-HMAC-SHA256</code>.</p> </li> <li> <p> <i>HTTP Status Code:</i>
+ * 400 Bad Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li> </ul> </li> <li>
+ * <ul> <li> <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p> <i>Description:</i>
+ * SOAP requests must be made over an HTTPS connection.</p> </li> <li> <p> <i>HTTP
* Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
* InvalidRequest</p> </li> <li> <p> <i>Description:</i> Amazon S3 Transfer
@@ -285,44 +287,44 @@ namespace Model
* Code:</i> 400 Bad Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li> </ul>
* </li> <li> <ul> <li> <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p>
* <i>Description:</i> Amazon S3 Transfer Acceleration is not supported on this
- * bucket. Contact AWS Support for more information.</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p>
- * <i>Description:</i> Amazon S3 Transfer Acceleration cannot be enabled on this
- * bucket. Contact AWS Support for more information.</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidSecurity</p> </li> <li> <p>
- * <i>Description:</i> The provided security credentials are not valid.</p> </li>
- * <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault
- * Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidSOAPRequest</p> </li> <li> <p> <i>Description:</i> The SOAP request body
- * is invalid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p>
- * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
- * <ul> <li> <p> <i>Code:</i> InvalidStorageClass</p> </li> <li> <p>
- * <i>Description:</i> The storage class you specified is not valid.</p> </li> <li>
- * <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault
- * Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidTargetBucketForLogging</p> </li> <li> <p> <i>Description:</i> The target
- * bucket for logging does not exist, is not owned by you, or does not have the
- * appropriate grants for the log-delivery group. </p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
+ * bucket. Contact Amazon Web Services Support for more information.</p> </li> <li>
+ * <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>Code:</i>
+ * N/A</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidRequest</p>
+ * </li> <li> <p> <i>Description:</i> Amazon S3 Transfer Acceleration cannot be
+ * enabled on this bucket. Contact Amazon Web Services Support for more
+ * information.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p>
+ * </li> <li> <p> <i>Code:</i> N/A</p> </li> </ul> </li> <li> <ul> <li> <p>
+ * <i>Code:</i> InvalidSecurity</p> </li> <li> <p> <i>Description:</i> The provided
+ * security credentials are not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i>
+ * 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidSOAPRequest</p> </li> <li>
+ * <p> <i>Description:</i> The SOAP request body is invalid.</p> </li> <li> <p>
+ * <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidToken</p> </li> <li> <p> <i>Description:</i> The provided token is
- * malformed or otherwise invalid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400
- * Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidURI</p> </li> <li> <p>
- * <i>Description:</i> Couldn't parse the specified URI.</p> </li> <li> <p> <i>HTTP
+ * InvalidStorageClass</p> </li> <li> <p> <i>Description:</i> The storage class you
+ * specified is not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
+ * Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul>
+ * </li> <li> <ul> <li> <p> <i>Code:</i> InvalidTargetBucketForLogging</p> </li>
+ * <li> <p> <i>Description:</i> The target bucket for logging does not exist, is
+ * not owned by you, or does not have the appropriate grants for the log-delivery
+ * group. </p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
+ * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
+ * <li> <p> <i>Code:</i> InvalidToken</p> </li> <li> <p> <i>Description:</i> The
+ * provided token is malformed or otherwise invalid.</p> </li> <li> <p> <i>HTTP
* Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * KeyTooLongError</p> </li> <li> <p> <i>Description:</i> Your key is too long.</p>
- * </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p>
- * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
- * <i>Code:</i> MalformedACLError</p> </li> <li> <p> <i>Description:</i> The XML
- * you provided was not well-formed or did not validate against our published
- * schema.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
- * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> MalformedPOSTRequest </p> </li> <li> <p>
- * <i>Description:</i> The body of your POST request is not well-formed
+ * InvalidURI</p> </li> <li> <p> <i>Description:</i> Couldn't parse the specified
+ * URI.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li>
+ * <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li>
+ * <p> <i>Code:</i> KeyTooLongError</p> </li> <li> <p> <i>Description:</i> Your key
+ * is too long.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p>
+ * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
+ * <ul> <li> <p> <i>Code:</i> MalformedACLError</p> </li> <li> <p>
+ * <i>Description:</i> The XML you provided was not well-formed or did not validate
+ * against our published schema.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400
+ * Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> MalformedPOSTRequest </p> </li> <li>
+ * <p> <i>Description:</i> The body of your POST request is not well-formed
* multipart/form-data.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
* Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul>
* </li> <li> <ul> <li> <p> <i>Code:</i> MalformedXML</p> </li> <li> <p>
@@ -399,20 +401,21 @@ namespace Model
* </ul> </li> <li> <ul> <li> <p> <i>Code:</i> NotSignedUp</p> </li> <li> <p>
* <i>Description:</i> Your account is not signed up for the Amazon S3 service. You
* must sign up before you can use Amazon S3. You can sign up at the following URL:
- * https://aws.amazon.com/s3</p> </li> <li> <p> <i>HTTP Status Code:</i> 403
- * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> OperationAborted</p> </li> <li> <p>
- * <i>Description:</i> A conflicting conditional action is currently in progress
- * against this resource. Try again.</p> </li> <li> <p> <i>HTTP Status Code:</i>
- * 409 Conflict</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> PermanentRedirect</p> </li> <li> <p>
- * <i>Description:</i> The bucket you are attempting to access must be addressed
- * using the specified endpoint. Send all future requests to this endpoint.</p>
- * </li> <li> <p> <i>HTTP Status Code:</i> 301 Moved Permanently</p> </li> <li> <p>
- * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
- * <i>Code:</i> PreconditionFailed</p> </li> <li> <p> <i>Description:</i> At least
- * one of the preconditions you specified did not hold.</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 412 Precondition Failed</p> </li> <li> <p> <i>SOAP Fault Code
+ * <a href="http://aws.amazon.com/s3">Amazon S3</a> </p> </li> <li> <p> <i>HTTP
+ * Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i>
+ * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * OperationAborted</p> </li> <li> <p> <i>Description:</i> A conflicting
+ * conditional action is currently in progress against this resource. Try
+ * again.</p> </li> <li> <p> <i>HTTP Status Code:</i> 409 Conflict</p> </li> <li>
+ * <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li>
+ * <p> <i>Code:</i> PermanentRedirect</p> </li> <li> <p> <i>Description:</i> The
+ * bucket you are attempting to access must be addressed using the specified
+ * endpoint. Send all future requests to this endpoint.</p> </li> <li> <p> <i>HTTP
+ * Status Code:</i> 301 Moved Permanently</p> </li> <li> <p> <i>SOAP Fault Code
+ * Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * PreconditionFailed</p> </li> <li> <p> <i>Description:</i> At least one of the
+ * preconditions you specified did not hold.</p> </li> <li> <p> <i>HTTP Status
+ * Code:</i> 412 Precondition Failed</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
* Redirect</p> </li> <li> <p> <i>Description:</i> Temporary redirect.</p> </li>
* <li> <p> <i>HTTP Status Code:</i> 307 Moved Temporarily</p> </li> <li> <p>
@@ -439,7 +442,8 @@ namespace Model
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
* SignatureDoesNotMatch</p> </li> <li> <p> <i>Description:</i> The request
* signature we calculated does not match the signature you provided. Check your
- * AWS secret access key and signing method. For more information, see <a
+ * Amazon Web Services secret access key and signing method. For more information,
+ * see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html">REST
* Authentication</a> and <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/SOAPAuthentication.html">SOAP
@@ -487,41 +491,42 @@ namespace Model
* Access Denied</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p>
* </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
* <ul> <li> <p> <i>Code:</i> AccountProblem</p> </li> <li> <p> <i>Description:</i>
- * There is a problem with your AWS account that prevents the action from
- * completing successfully. Contact AWS Support for further assistance.</p> </li>
- * <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault
+ * There is a problem with your Amazon Web Services account that prevents the
+ * action from completing successfully. Contact Amazon Web Services Support for
+ * further assistance.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403
+ * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> AllAccessDisabled</p> </li> <li> <p>
+ * <i>Description:</i> All access to this Amazon S3 resource has been disabled.
+ * Contact Amazon Web Services Support for further assistance.</p> </li> <li> <p>
+ * <i>HTTP Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault Code
+ * Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * AmbiguousGrantByEmailAddress</p> </li> <li> <p> <i>Description:</i> The email
+ * address you provided is associated with more than one account.</p> </li> <li>
+ * <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault
* Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * AllAccessDisabled</p> </li> <li> <p> <i>Description:</i> All access to this
- * Amazon S3 resource has been disabled. Contact AWS Support for further
- * assistance.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li>
+ * AuthorizationHeaderMalformed</p> </li> <li> <p> <i>Description:</i> The
+ * authorization header you provided is invalid.</p> </li> <li> <p> <i>HTTP Status
+ * Code:</i> 400 Bad Request</p> </li> <li> <p> <i>HTTP Status Code:</i> N/A</p>
+ * </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> BadDigest</p> </li> <li> <p>
+ * <i>Description:</i> The Content-MD5 you specified did not match what we
+ * received.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
* <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> AmbiguousGrantByEmailAddress</p> </li> <li> <p>
- * <i>Description:</i> The email address you provided is associated with more than
- * one account.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p>
- * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
- * <ul> <li> <p> <i>Code:</i> AuthorizationHeaderMalformed</p> </li> <li> <p>
- * <i>Description:</i> The authorization header you provided is invalid.</p> </li>
- * <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> N/A</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * BadDigest</p> </li> <li> <p> <i>Description:</i> The Content-MD5 you specified
- * did not match what we received.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400
- * Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> BucketAlreadyExists</p> </li> <li>
- * <p> <i>Description:</i> The requested bucket name is not available. The bucket
- * namespace is shared by all users of the system. Please select a different name
- * and try again.</p> </li> <li> <p> <i>HTTP Status Code:</i> 409 Conflict</p>
- * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
- * <ul> <li> <p> <i>Code:</i> BucketAlreadyOwnedByYou</p> </li> <li> <p>
- * <i>Description:</i> The bucket you tried to create already exists, and you own
- * it. Amazon S3 returns this error in all AWS Regions except in the North Virginia
- * Region. For legacy compatibility, if you re-create an existing bucket that you
- * already own in the North Virginia Region, Amazon S3 returns 200 OK and resets
- * the bucket access control lists (ACLs).</p> </li> <li> <p> <i>Code:</i> 409
- * Conflict (in all Regions except the North Virginia Region) </p> </li> <li> <p>
- * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
- * <i>Code:</i> BucketNotEmpty</p> </li> <li> <p> <i>Description:</i> The bucket
- * you tried to delete is not empty.</p> </li> <li> <p> <i>HTTP Status Code:</i>
- * 409 Conflict</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * <li> <p> <i>Code:</i> BucketAlreadyExists</p> </li> <li> <p> <i>Description:</i>
+ * The requested bucket name is not available. The bucket namespace is shared by
+ * all users of the system. Please select a different name and try again.</p> </li>
+ * <li> <p> <i>HTTP Status Code:</i> 409 Conflict</p> </li> <li> <p> <i>SOAP Fault
+ * Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * BucketAlreadyOwnedByYou</p> </li> <li> <p> <i>Description:</i> The bucket you
+ * tried to create already exists, and you own it. Amazon S3 returns this error in
+ * all Amazon Web Services Regions except in the North Virginia Region. For legacy
+ * compatibility, if you re-create an existing bucket that you already own in the
+ * North Virginia Region, Amazon S3 returns 200 OK and resets the bucket access
+ * control lists (ACLs).</p> </li> <li> <p> <i>Code:</i> 409 Conflict (in all
+ * Regions except the North Virginia Region) </p> </li> <li> <p> <i>SOAP Fault Code
+ * Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * BucketNotEmpty</p> </li> <li> <p> <i>Description:</i> The bucket you tried to
+ * delete is not empty.</p> </li> <li> <p> <i>HTTP Status Code:</i> 409
+ * Conflict</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
* </ul> </li> <li> <ul> <li> <p> <i>Code:</i> CredentialsNotSupported</p> </li>
* <li> <p> <i>Description:</i> This request does not support credentials.</p>
* </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p>
@@ -562,33 +567,34 @@ namespace Model
* again.</p> </li> <li> <p> <i>HTTP Status Code:</i> 500 Internal Server Error</p>
* </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Server</p> </li> </ul> </li> <li>
* <ul> <li> <p> <i>Code:</i> InvalidAccessKeyId</p> </li> <li> <p>
- * <i>Description:</i> The AWS access key ID you provided does not exist in our
- * records.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li>
- * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> InvalidAddressingHeader</p> </li> <li> <p>
- * <i>Description:</i> You must specify the Anonymous role.</p> </li> <li> <p>
- * <i>HTTP Status Code:</i> N/A</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i>
- * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidArgument</p>
- * </li> <li> <p> <i>Description:</i> Invalid Argument</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
- * Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidBucketName</p> </li> <li> <p> <i>Description:</i> The specified bucket is
- * not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
- * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> InvalidBucketState</p> </li> <li> <p> <i>Description:</i>
- * The request is not valid with the current state of the bucket.</p> </li> <li>
- * <p> <i>HTTP Status Code:</i> 409 Conflict</p> </li> <li> <p> <i>SOAP Fault Code
+ * <i>Description:</i> The Amazon Web Services access key ID you provided does not
+ * exist in our records.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403
+ * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidAddressingHeader</p> </li>
+ * <li> <p> <i>Description:</i> You must specify the Anonymous role.</p> </li> <li>
+ * <p> <i>HTTP Status Code:</i> N/A</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidDigest</p> </li> <li> <p> <i>Description:</i> The Content-MD5 you
- * specified is not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
- * Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul>
- * </li> <li> <ul> <li> <p> <i>Code:</i> InvalidEncryptionAlgorithmError</p> </li>
- * <li> <p> <i>Description:</i> The encryption request you specified is not valid.
- * The valid value is AES256.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
- * Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul>
- * </li> <li> <ul> <li> <p> <i>Code:</i> InvalidLocationConstraint</p> </li> <li>
- * <p> <i>Description:</i> The specified location constraint is not valid. For more
- * information about Regions, see <a
+ * InvalidArgument</p> </li> <li> <p> <i>Description:</i> Invalid Argument</p>
+ * </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p>
+ * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
+ * <i>Code:</i> InvalidBucketName</p> </li> <li> <p> <i>Description:</i> The
+ * specified bucket is not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400
+ * Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidBucketState</p> </li> <li>
+ * <p> <i>Description:</i> The request is not valid with the current state of the
+ * bucket.</p> </li> <li> <p> <i>HTTP Status Code:</i> 409 Conflict</p> </li> <li>
+ * <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li>
+ * <p> <i>Code:</i> InvalidDigest</p> </li> <li> <p> <i>Description:</i> The
+ * Content-MD5 you specified is not valid.</p> </li> <li> <p> <i>HTTP Status
+ * Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i>
+ * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * InvalidEncryptionAlgorithmError</p> </li> <li> <p> <i>Description:</i> The
+ * encryption request you specified is not valid. The valid value is AES256.</p>
+ * </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p>
+ * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
+ * <i>Code:</i> InvalidLocationConstraint</p> </li> <li> <p> <i>Description:</i>
+ * The specified location constraint is not valid. For more information about
+ * Regions, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingBucket.html#access-bucket-intro">How
* to Select a Region for Your Buckets</a>. </p> </li> <li> <p> <i>HTTP Status
* Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i>
@@ -607,11 +613,11 @@ namespace Model
* number.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
* <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
* <li> <p> <i>Code:</i> InvalidPayer</p> </li> <li> <p> <i>Description:</i> All
- * access to this object has been disabled. Please contact AWS Support for further
- * assistance.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li>
- * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> InvalidPolicyDocument</p> </li> <li> <p>
- * <i>Description:</i> The content of the form does not meet the conditions
+ * access to this object has been disabled. Please contact Amazon Web Services
+ * Support for further assistance.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403
+ * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidPolicyDocument</p> </li> <li>
+ * <p> <i>Description:</i> The content of the form does not meet the conditions
* specified in the policy document.</p> </li> <li> <p> <i>HTTP Status Code:</i>
* 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p>
* </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidRange</p> </li> <li>
@@ -619,10 +625,10 @@ namespace Model
* <p> <i>HTTP Status Code:</i> 416 Requested Range Not Satisfiable</p> </li> <li>
* <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li>
* <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p> <i>Description:</i> Please
- * use AWS4-HMAC-SHA256.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
- * Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li> </ul> </li> <li> <ul> <li>
- * <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p> <i>Description:</i> SOAP
- * requests must be made over an HTTPS connection.</p> </li> <li> <p> <i>HTTP
+ * use <code>AWS4-HMAC-SHA256</code>.</p> </li> <li> <p> <i>HTTP Status Code:</i>
+ * 400 Bad Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li> </ul> </li> <li>
+ * <ul> <li> <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p> <i>Description:</i>
+ * SOAP requests must be made over an HTTPS connection.</p> </li> <li> <p> <i>HTTP
* Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
* InvalidRequest</p> </li> <li> <p> <i>Description:</i> Amazon S3 Transfer
@@ -645,44 +651,44 @@ namespace Model
* Code:</i> 400 Bad Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li> </ul>
* </li> <li> <ul> <li> <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p>
* <i>Description:</i> Amazon S3 Transfer Acceleration is not supported on this
- * bucket. Contact AWS Support for more information.</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p>
- * <i>Description:</i> Amazon S3 Transfer Acceleration cannot be enabled on this
- * bucket. Contact AWS Support for more information.</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidSecurity</p> </li> <li> <p>
- * <i>Description:</i> The provided security credentials are not valid.</p> </li>
- * <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault
- * Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidSOAPRequest</p> </li> <li> <p> <i>Description:</i> The SOAP request body
- * is invalid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p>
- * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
- * <ul> <li> <p> <i>Code:</i> InvalidStorageClass</p> </li> <li> <p>
- * <i>Description:</i> The storage class you specified is not valid.</p> </li> <li>
- * <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault
- * Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidTargetBucketForLogging</p> </li> <li> <p> <i>Description:</i> The target
- * bucket for logging does not exist, is not owned by you, or does not have the
- * appropriate grants for the log-delivery group. </p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
+ * bucket. Contact Amazon Web Services Support for more information.</p> </li> <li>
+ * <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>Code:</i>
+ * N/A</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidRequest</p>
+ * </li> <li> <p> <i>Description:</i> Amazon S3 Transfer Acceleration cannot be
+ * enabled on this bucket. Contact Amazon Web Services Support for more
+ * information.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p>
+ * </li> <li> <p> <i>Code:</i> N/A</p> </li> </ul> </li> <li> <ul> <li> <p>
+ * <i>Code:</i> InvalidSecurity</p> </li> <li> <p> <i>Description:</i> The provided
+ * security credentials are not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i>
+ * 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidSOAPRequest</p> </li> <li>
+ * <p> <i>Description:</i> The SOAP request body is invalid.</p> </li> <li> <p>
+ * <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidToken</p> </li> <li> <p> <i>Description:</i> The provided token is
- * malformed or otherwise invalid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400
- * Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidURI</p> </li> <li> <p>
- * <i>Description:</i> Couldn't parse the specified URI.</p> </li> <li> <p> <i>HTTP
+ * InvalidStorageClass</p> </li> <li> <p> <i>Description:</i> The storage class you
+ * specified is not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
+ * Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul>
+ * </li> <li> <ul> <li> <p> <i>Code:</i> InvalidTargetBucketForLogging</p> </li>
+ * <li> <p> <i>Description:</i> The target bucket for logging does not exist, is
+ * not owned by you, or does not have the appropriate grants for the log-delivery
+ * group. </p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
+ * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
+ * <li> <p> <i>Code:</i> InvalidToken</p> </li> <li> <p> <i>Description:</i> The
+ * provided token is malformed or otherwise invalid.</p> </li> <li> <p> <i>HTTP
* Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * KeyTooLongError</p> </li> <li> <p> <i>Description:</i> Your key is too long.</p>
- * </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p>
- * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
- * <i>Code:</i> MalformedACLError</p> </li> <li> <p> <i>Description:</i> The XML
- * you provided was not well-formed or did not validate against our published
- * schema.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
- * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> MalformedPOSTRequest </p> </li> <li> <p>
- * <i>Description:</i> The body of your POST request is not well-formed
+ * InvalidURI</p> </li> <li> <p> <i>Description:</i> Couldn't parse the specified
+ * URI.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li>
+ * <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li>
+ * <p> <i>Code:</i> KeyTooLongError</p> </li> <li> <p> <i>Description:</i> Your key
+ * is too long.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p>
+ * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
+ * <ul> <li> <p> <i>Code:</i> MalformedACLError</p> </li> <li> <p>
+ * <i>Description:</i> The XML you provided was not well-formed or did not validate
+ * against our published schema.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400
+ * Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> MalformedPOSTRequest </p> </li> <li>
+ * <p> <i>Description:</i> The body of your POST request is not well-formed
* multipart/form-data.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
* Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul>
* </li> <li> <ul> <li> <p> <i>Code:</i> MalformedXML</p> </li> <li> <p>
@@ -759,20 +765,21 @@ namespace Model
* </ul> </li> <li> <ul> <li> <p> <i>Code:</i> NotSignedUp</p> </li> <li> <p>
* <i>Description:</i> Your account is not signed up for the Amazon S3 service. You
* must sign up before you can use Amazon S3. You can sign up at the following URL:
- * https://aws.amazon.com/s3</p> </li> <li> <p> <i>HTTP Status Code:</i> 403
- * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> OperationAborted</p> </li> <li> <p>
- * <i>Description:</i> A conflicting conditional action is currently in progress
- * against this resource. Try again.</p> </li> <li> <p> <i>HTTP Status Code:</i>
- * 409 Conflict</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> PermanentRedirect</p> </li> <li> <p>
- * <i>Description:</i> The bucket you are attempting to access must be addressed
- * using the specified endpoint. Send all future requests to this endpoint.</p>
- * </li> <li> <p> <i>HTTP Status Code:</i> 301 Moved Permanently</p> </li> <li> <p>
- * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
- * <i>Code:</i> PreconditionFailed</p> </li> <li> <p> <i>Description:</i> At least
- * one of the preconditions you specified did not hold.</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 412 Precondition Failed</p> </li> <li> <p> <i>SOAP Fault Code
+ * <a href="http://aws.amazon.com/s3">Amazon S3</a> </p> </li> <li> <p> <i>HTTP
+ * Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i>
+ * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * OperationAborted</p> </li> <li> <p> <i>Description:</i> A conflicting
+ * conditional action is currently in progress against this resource. Try
+ * again.</p> </li> <li> <p> <i>HTTP Status Code:</i> 409 Conflict</p> </li> <li>
+ * <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li>
+ * <p> <i>Code:</i> PermanentRedirect</p> </li> <li> <p> <i>Description:</i> The
+ * bucket you are attempting to access must be addressed using the specified
+ * endpoint. Send all future requests to this endpoint.</p> </li> <li> <p> <i>HTTP
+ * Status Code:</i> 301 Moved Permanently</p> </li> <li> <p> <i>SOAP Fault Code
+ * Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * PreconditionFailed</p> </li> <li> <p> <i>Description:</i> At least one of the
+ * preconditions you specified did not hold.</p> </li> <li> <p> <i>HTTP Status
+ * Code:</i> 412 Precondition Failed</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
* Redirect</p> </li> <li> <p> <i>Description:</i> Temporary redirect.</p> </li>
* <li> <p> <i>HTTP Status Code:</i> 307 Moved Temporarily</p> </li> <li> <p>
@@ -799,7 +806,8 @@ namespace Model
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
* SignatureDoesNotMatch</p> </li> <li> <p> <i>Description:</i> The request
* signature we calculated does not match the signature you provided. Check your
- * AWS secret access key and signing method. For more information, see <a
+ * Amazon Web Services secret access key and signing method. For more information,
+ * see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html">REST
* Authentication</a> and <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/SOAPAuthentication.html">SOAP
@@ -847,41 +855,42 @@ namespace Model
* Access Denied</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p>
* </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
* <ul> <li> <p> <i>Code:</i> AccountProblem</p> </li> <li> <p> <i>Description:</i>
- * There is a problem with your AWS account that prevents the action from
- * completing successfully. Contact AWS Support for further assistance.</p> </li>
- * <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault
+ * There is a problem with your Amazon Web Services account that prevents the
+ * action from completing successfully. Contact Amazon Web Services Support for
+ * further assistance.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403
+ * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> AllAccessDisabled</p> </li> <li> <p>
+ * <i>Description:</i> All access to this Amazon S3 resource has been disabled.
+ * Contact Amazon Web Services Support for further assistance.</p> </li> <li> <p>
+ * <i>HTTP Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault Code
+ * Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * AmbiguousGrantByEmailAddress</p> </li> <li> <p> <i>Description:</i> The email
+ * address you provided is associated with more than one account.</p> </li> <li>
+ * <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault
* Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * AllAccessDisabled</p> </li> <li> <p> <i>Description:</i> All access to this
- * Amazon S3 resource has been disabled. Contact AWS Support for further
- * assistance.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li>
+ * AuthorizationHeaderMalformed</p> </li> <li> <p> <i>Description:</i> The
+ * authorization header you provided is invalid.</p> </li> <li> <p> <i>HTTP Status
+ * Code:</i> 400 Bad Request</p> </li> <li> <p> <i>HTTP Status Code:</i> N/A</p>
+ * </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> BadDigest</p> </li> <li> <p>
+ * <i>Description:</i> The Content-MD5 you specified did not match what we
+ * received.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
* <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> AmbiguousGrantByEmailAddress</p> </li> <li> <p>
- * <i>Description:</i> The email address you provided is associated with more than
- * one account.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p>
- * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
- * <ul> <li> <p> <i>Code:</i> AuthorizationHeaderMalformed</p> </li> <li> <p>
- * <i>Description:</i> The authorization header you provided is invalid.</p> </li>
- * <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> N/A</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * BadDigest</p> </li> <li> <p> <i>Description:</i> The Content-MD5 you specified
- * did not match what we received.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400
- * Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> BucketAlreadyExists</p> </li> <li>
- * <p> <i>Description:</i> The requested bucket name is not available. The bucket
- * namespace is shared by all users of the system. Please select a different name
- * and try again.</p> </li> <li> <p> <i>HTTP Status Code:</i> 409 Conflict</p>
- * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
- * <ul> <li> <p> <i>Code:</i> BucketAlreadyOwnedByYou</p> </li> <li> <p>
- * <i>Description:</i> The bucket you tried to create already exists, and you own
- * it. Amazon S3 returns this error in all AWS Regions except in the North Virginia
- * Region. For legacy compatibility, if you re-create an existing bucket that you
- * already own in the North Virginia Region, Amazon S3 returns 200 OK and resets
- * the bucket access control lists (ACLs).</p> </li> <li> <p> <i>Code:</i> 409
- * Conflict (in all Regions except the North Virginia Region) </p> </li> <li> <p>
- * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
- * <i>Code:</i> BucketNotEmpty</p> </li> <li> <p> <i>Description:</i> The bucket
- * you tried to delete is not empty.</p> </li> <li> <p> <i>HTTP Status Code:</i>
- * 409 Conflict</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * <li> <p> <i>Code:</i> BucketAlreadyExists</p> </li> <li> <p> <i>Description:</i>
+ * The requested bucket name is not available. The bucket namespace is shared by
+ * all users of the system. Please select a different name and try again.</p> </li>
+ * <li> <p> <i>HTTP Status Code:</i> 409 Conflict</p> </li> <li> <p> <i>SOAP Fault
+ * Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * BucketAlreadyOwnedByYou</p> </li> <li> <p> <i>Description:</i> The bucket you
+ * tried to create already exists, and you own it. Amazon S3 returns this error in
+ * all Amazon Web Services Regions except in the North Virginia Region. For legacy
+ * compatibility, if you re-create an existing bucket that you already own in the
+ * North Virginia Region, Amazon S3 returns 200 OK and resets the bucket access
+ * control lists (ACLs).</p> </li> <li> <p> <i>Code:</i> 409 Conflict (in all
+ * Regions except the North Virginia Region) </p> </li> <li> <p> <i>SOAP Fault Code
+ * Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * BucketNotEmpty</p> </li> <li> <p> <i>Description:</i> The bucket you tried to
+ * delete is not empty.</p> </li> <li> <p> <i>HTTP Status Code:</i> 409
+ * Conflict</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
* </ul> </li> <li> <ul> <li> <p> <i>Code:</i> CredentialsNotSupported</p> </li>
* <li> <p> <i>Description:</i> This request does not support credentials.</p>
* </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p>
@@ -922,33 +931,34 @@ namespace Model
* again.</p> </li> <li> <p> <i>HTTP Status Code:</i> 500 Internal Server Error</p>
* </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Server</p> </li> </ul> </li> <li>
* <ul> <li> <p> <i>Code:</i> InvalidAccessKeyId</p> </li> <li> <p>
- * <i>Description:</i> The AWS access key ID you provided does not exist in our
- * records.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li>
- * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> InvalidAddressingHeader</p> </li> <li> <p>
- * <i>Description:</i> You must specify the Anonymous role.</p> </li> <li> <p>
- * <i>HTTP Status Code:</i> N/A</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i>
- * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidArgument</p>
- * </li> <li> <p> <i>Description:</i> Invalid Argument</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
- * Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidBucketName</p> </li> <li> <p> <i>Description:</i> The specified bucket is
- * not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
- * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> InvalidBucketState</p> </li> <li> <p> <i>Description:</i>
- * The request is not valid with the current state of the bucket.</p> </li> <li>
- * <p> <i>HTTP Status Code:</i> 409 Conflict</p> </li> <li> <p> <i>SOAP Fault Code
+ * <i>Description:</i> The Amazon Web Services access key ID you provided does not
+ * exist in our records.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403
+ * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidAddressingHeader</p> </li>
+ * <li> <p> <i>Description:</i> You must specify the Anonymous role.</p> </li> <li>
+ * <p> <i>HTTP Status Code:</i> N/A</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidDigest</p> </li> <li> <p> <i>Description:</i> The Content-MD5 you
- * specified is not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
- * Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul>
- * </li> <li> <ul> <li> <p> <i>Code:</i> InvalidEncryptionAlgorithmError</p> </li>
- * <li> <p> <i>Description:</i> The encryption request you specified is not valid.
- * The valid value is AES256.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
- * Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul>
- * </li> <li> <ul> <li> <p> <i>Code:</i> InvalidLocationConstraint</p> </li> <li>
- * <p> <i>Description:</i> The specified location constraint is not valid. For more
- * information about Regions, see <a
+ * InvalidArgument</p> </li> <li> <p> <i>Description:</i> Invalid Argument</p>
+ * </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p>
+ * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
+ * <i>Code:</i> InvalidBucketName</p> </li> <li> <p> <i>Description:</i> The
+ * specified bucket is not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400
+ * Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidBucketState</p> </li> <li>
+ * <p> <i>Description:</i> The request is not valid with the current state of the
+ * bucket.</p> </li> <li> <p> <i>HTTP Status Code:</i> 409 Conflict</p> </li> <li>
+ * <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li>
+ * <p> <i>Code:</i> InvalidDigest</p> </li> <li> <p> <i>Description:</i> The
+ * Content-MD5 you specified is not valid.</p> </li> <li> <p> <i>HTTP Status
+ * Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i>
+ * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * InvalidEncryptionAlgorithmError</p> </li> <li> <p> <i>Description:</i> The
+ * encryption request you specified is not valid. The valid value is AES256.</p>
+ * </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p>
+ * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
+ * <i>Code:</i> InvalidLocationConstraint</p> </li> <li> <p> <i>Description:</i>
+ * The specified location constraint is not valid. For more information about
+ * Regions, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingBucket.html#access-bucket-intro">How
* to Select a Region for Your Buckets</a>. </p> </li> <li> <p> <i>HTTP Status
* Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i>
@@ -967,11 +977,11 @@ namespace Model
* number.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
* <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
* <li> <p> <i>Code:</i> InvalidPayer</p> </li> <li> <p> <i>Description:</i> All
- * access to this object has been disabled. Please contact AWS Support for further
- * assistance.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li>
- * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> InvalidPolicyDocument</p> </li> <li> <p>
- * <i>Description:</i> The content of the form does not meet the conditions
+ * access to this object has been disabled. Please contact Amazon Web Services
+ * Support for further assistance.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403
+ * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidPolicyDocument</p> </li> <li>
+ * <p> <i>Description:</i> The content of the form does not meet the conditions
* specified in the policy document.</p> </li> <li> <p> <i>HTTP Status Code:</i>
* 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p>
* </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidRange</p> </li> <li>
@@ -979,10 +989,10 @@ namespace Model
* <p> <i>HTTP Status Code:</i> 416 Requested Range Not Satisfiable</p> </li> <li>
* <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li>
* <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p> <i>Description:</i> Please
- * use AWS4-HMAC-SHA256.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
- * Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li> </ul> </li> <li> <ul> <li>
- * <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p> <i>Description:</i> SOAP
- * requests must be made over an HTTPS connection.</p> </li> <li> <p> <i>HTTP
+ * use <code>AWS4-HMAC-SHA256</code>.</p> </li> <li> <p> <i>HTTP Status Code:</i>
+ * 400 Bad Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li> </ul> </li> <li>
+ * <ul> <li> <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p> <i>Description:</i>
+ * SOAP requests must be made over an HTTPS connection.</p> </li> <li> <p> <i>HTTP
* Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
* InvalidRequest</p> </li> <li> <p> <i>Description:</i> Amazon S3 Transfer
@@ -1005,44 +1015,44 @@ namespace Model
* Code:</i> 400 Bad Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li> </ul>
* </li> <li> <ul> <li> <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p>
* <i>Description:</i> Amazon S3 Transfer Acceleration is not supported on this
- * bucket. Contact AWS Support for more information.</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p>
- * <i>Description:</i> Amazon S3 Transfer Acceleration cannot be enabled on this
- * bucket. Contact AWS Support for more information.</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidSecurity</p> </li> <li> <p>
- * <i>Description:</i> The provided security credentials are not valid.</p> </li>
- * <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault
- * Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidSOAPRequest</p> </li> <li> <p> <i>Description:</i> The SOAP request body
- * is invalid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p>
- * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
- * <ul> <li> <p> <i>Code:</i> InvalidStorageClass</p> </li> <li> <p>
- * <i>Description:</i> The storage class you specified is not valid.</p> </li> <li>
- * <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault
- * Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidTargetBucketForLogging</p> </li> <li> <p> <i>Description:</i> The target
- * bucket for logging does not exist, is not owned by you, or does not have the
- * appropriate grants for the log-delivery group. </p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
+ * bucket. Contact Amazon Web Services Support for more information.</p> </li> <li>
+ * <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>Code:</i>
+ * N/A</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidRequest</p>
+ * </li> <li> <p> <i>Description:</i> Amazon S3 Transfer Acceleration cannot be
+ * enabled on this bucket. Contact Amazon Web Services Support for more
+ * information.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p>
+ * </li> <li> <p> <i>Code:</i> N/A</p> </li> </ul> </li> <li> <ul> <li> <p>
+ * <i>Code:</i> InvalidSecurity</p> </li> <li> <p> <i>Description:</i> The provided
+ * security credentials are not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i>
+ * 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidSOAPRequest</p> </li> <li>
+ * <p> <i>Description:</i> The SOAP request body is invalid.</p> </li> <li> <p>
+ * <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidToken</p> </li> <li> <p> <i>Description:</i> The provided token is
- * malformed or otherwise invalid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400
- * Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidURI</p> </li> <li> <p>
- * <i>Description:</i> Couldn't parse the specified URI.</p> </li> <li> <p> <i>HTTP
+ * InvalidStorageClass</p> </li> <li> <p> <i>Description:</i> The storage class you
+ * specified is not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
+ * Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul>
+ * </li> <li> <ul> <li> <p> <i>Code:</i> InvalidTargetBucketForLogging</p> </li>
+ * <li> <p> <i>Description:</i> The target bucket for logging does not exist, is
+ * not owned by you, or does not have the appropriate grants for the log-delivery
+ * group. </p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
+ * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
+ * <li> <p> <i>Code:</i> InvalidToken</p> </li> <li> <p> <i>Description:</i> The
+ * provided token is malformed or otherwise invalid.</p> </li> <li> <p> <i>HTTP
* Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * KeyTooLongError</p> </li> <li> <p> <i>Description:</i> Your key is too long.</p>
- * </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p>
- * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
- * <i>Code:</i> MalformedACLError</p> </li> <li> <p> <i>Description:</i> The XML
- * you provided was not well-formed or did not validate against our published
- * schema.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
- * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> MalformedPOSTRequest </p> </li> <li> <p>
- * <i>Description:</i> The body of your POST request is not well-formed
+ * InvalidURI</p> </li> <li> <p> <i>Description:</i> Couldn't parse the specified
+ * URI.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li>
+ * <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li>
+ * <p> <i>Code:</i> KeyTooLongError</p> </li> <li> <p> <i>Description:</i> Your key
+ * is too long.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p>
+ * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
+ * <ul> <li> <p> <i>Code:</i> MalformedACLError</p> </li> <li> <p>
+ * <i>Description:</i> The XML you provided was not well-formed or did not validate
+ * against our published schema.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400
+ * Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> MalformedPOSTRequest </p> </li> <li>
+ * <p> <i>Description:</i> The body of your POST request is not well-formed
* multipart/form-data.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
* Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul>
* </li> <li> <ul> <li> <p> <i>Code:</i> MalformedXML</p> </li> <li> <p>
@@ -1119,20 +1129,21 @@ namespace Model
* </ul> </li> <li> <ul> <li> <p> <i>Code:</i> NotSignedUp</p> </li> <li> <p>
* <i>Description:</i> Your account is not signed up for the Amazon S3 service. You
* must sign up before you can use Amazon S3. You can sign up at the following URL:
- * https://aws.amazon.com/s3</p> </li> <li> <p> <i>HTTP Status Code:</i> 403
- * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> OperationAborted</p> </li> <li> <p>
- * <i>Description:</i> A conflicting conditional action is currently in progress
- * against this resource. Try again.</p> </li> <li> <p> <i>HTTP Status Code:</i>
- * 409 Conflict</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> PermanentRedirect</p> </li> <li> <p>
- * <i>Description:</i> The bucket you are attempting to access must be addressed
- * using the specified endpoint. Send all future requests to this endpoint.</p>
- * </li> <li> <p> <i>HTTP Status Code:</i> 301 Moved Permanently</p> </li> <li> <p>
- * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
- * <i>Code:</i> PreconditionFailed</p> </li> <li> <p> <i>Description:</i> At least
- * one of the preconditions you specified did not hold.</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 412 Precondition Failed</p> </li> <li> <p> <i>SOAP Fault Code
+ * <a href="http://aws.amazon.com/s3">Amazon S3</a> </p> </li> <li> <p> <i>HTTP
+ * Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i>
+ * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * OperationAborted</p> </li> <li> <p> <i>Description:</i> A conflicting
+ * conditional action is currently in progress against this resource. Try
+ * again.</p> </li> <li> <p> <i>HTTP Status Code:</i> 409 Conflict</p> </li> <li>
+ * <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li>
+ * <p> <i>Code:</i> PermanentRedirect</p> </li> <li> <p> <i>Description:</i> The
+ * bucket you are attempting to access must be addressed using the specified
+ * endpoint. Send all future requests to this endpoint.</p> </li> <li> <p> <i>HTTP
+ * Status Code:</i> 301 Moved Permanently</p> </li> <li> <p> <i>SOAP Fault Code
+ * Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * PreconditionFailed</p> </li> <li> <p> <i>Description:</i> At least one of the
+ * preconditions you specified did not hold.</p> </li> <li> <p> <i>HTTP Status
+ * Code:</i> 412 Precondition Failed</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
* Redirect</p> </li> <li> <p> <i>Description:</i> Temporary redirect.</p> </li>
* <li> <p> <i>HTTP Status Code:</i> 307 Moved Temporarily</p> </li> <li> <p>
@@ -1159,7 +1170,8 @@ namespace Model
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
* SignatureDoesNotMatch</p> </li> <li> <p> <i>Description:</i> The request
* signature we calculated does not match the signature you provided. Check your
- * AWS secret access key and signing method. For more information, see <a
+ * Amazon Web Services secret access key and signing method. For more information,
+ * see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html">REST
* Authentication</a> and <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/SOAPAuthentication.html">SOAP
@@ -1207,41 +1219,42 @@ namespace Model
* Access Denied</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p>
* </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
* <ul> <li> <p> <i>Code:</i> AccountProblem</p> </li> <li> <p> <i>Description:</i>
- * There is a problem with your AWS account that prevents the action from
- * completing successfully. Contact AWS Support for further assistance.</p> </li>
- * <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault
+ * There is a problem with your Amazon Web Services account that prevents the
+ * action from completing successfully. Contact Amazon Web Services Support for
+ * further assistance.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403
+ * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> AllAccessDisabled</p> </li> <li> <p>
+ * <i>Description:</i> All access to this Amazon S3 resource has been disabled.
+ * Contact Amazon Web Services Support for further assistance.</p> </li> <li> <p>
+ * <i>HTTP Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault Code
+ * Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * AmbiguousGrantByEmailAddress</p> </li> <li> <p> <i>Description:</i> The email
+ * address you provided is associated with more than one account.</p> </li> <li>
+ * <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault
* Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * AllAccessDisabled</p> </li> <li> <p> <i>Description:</i> All access to this
- * Amazon S3 resource has been disabled. Contact AWS Support for further
- * assistance.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li>
+ * AuthorizationHeaderMalformed</p> </li> <li> <p> <i>Description:</i> The
+ * authorization header you provided is invalid.</p> </li> <li> <p> <i>HTTP Status
+ * Code:</i> 400 Bad Request</p> </li> <li> <p> <i>HTTP Status Code:</i> N/A</p>
+ * </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> BadDigest</p> </li> <li> <p>
+ * <i>Description:</i> The Content-MD5 you specified did not match what we
+ * received.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
* <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> AmbiguousGrantByEmailAddress</p> </li> <li> <p>
- * <i>Description:</i> The email address you provided is associated with more than
- * one account.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p>
- * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
- * <ul> <li> <p> <i>Code:</i> AuthorizationHeaderMalformed</p> </li> <li> <p>
- * <i>Description:</i> The authorization header you provided is invalid.</p> </li>
- * <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> N/A</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * BadDigest</p> </li> <li> <p> <i>Description:</i> The Content-MD5 you specified
- * did not match what we received.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400
- * Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> BucketAlreadyExists</p> </li> <li>
- * <p> <i>Description:</i> The requested bucket name is not available. The bucket
- * namespace is shared by all users of the system. Please select a different name
- * and try again.</p> </li> <li> <p> <i>HTTP Status Code:</i> 409 Conflict</p>
- * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
- * <ul> <li> <p> <i>Code:</i> BucketAlreadyOwnedByYou</p> </li> <li> <p>
- * <i>Description:</i> The bucket you tried to create already exists, and you own
- * it. Amazon S3 returns this error in all AWS Regions except in the North Virginia
- * Region. For legacy compatibility, if you re-create an existing bucket that you
- * already own in the North Virginia Region, Amazon S3 returns 200 OK and resets
- * the bucket access control lists (ACLs).</p> </li> <li> <p> <i>Code:</i> 409
- * Conflict (in all Regions except the North Virginia Region) </p> </li> <li> <p>
- * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
- * <i>Code:</i> BucketNotEmpty</p> </li> <li> <p> <i>Description:</i> The bucket
- * you tried to delete is not empty.</p> </li> <li> <p> <i>HTTP Status Code:</i>
- * 409 Conflict</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * <li> <p> <i>Code:</i> BucketAlreadyExists</p> </li> <li> <p> <i>Description:</i>
+ * The requested bucket name is not available. The bucket namespace is shared by
+ * all users of the system. Please select a different name and try again.</p> </li>
+ * <li> <p> <i>HTTP Status Code:</i> 409 Conflict</p> </li> <li> <p> <i>SOAP Fault
+ * Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * BucketAlreadyOwnedByYou</p> </li> <li> <p> <i>Description:</i> The bucket you
+ * tried to create already exists, and you own it. Amazon S3 returns this error in
+ * all Amazon Web Services Regions except in the North Virginia Region. For legacy
+ * compatibility, if you re-create an existing bucket that you already own in the
+ * North Virginia Region, Amazon S3 returns 200 OK and resets the bucket access
+ * control lists (ACLs).</p> </li> <li> <p> <i>Code:</i> 409 Conflict (in all
+ * Regions except the North Virginia Region) </p> </li> <li> <p> <i>SOAP Fault Code
+ * Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * BucketNotEmpty</p> </li> <li> <p> <i>Description:</i> The bucket you tried to
+ * delete is not empty.</p> </li> <li> <p> <i>HTTP Status Code:</i> 409
+ * Conflict</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
* </ul> </li> <li> <ul> <li> <p> <i>Code:</i> CredentialsNotSupported</p> </li>
* <li> <p> <i>Description:</i> This request does not support credentials.</p>
* </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p>
@@ -1282,33 +1295,34 @@ namespace Model
* again.</p> </li> <li> <p> <i>HTTP Status Code:</i> 500 Internal Server Error</p>
* </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Server</p> </li> </ul> </li> <li>
* <ul> <li> <p> <i>Code:</i> InvalidAccessKeyId</p> </li> <li> <p>
- * <i>Description:</i> The AWS access key ID you provided does not exist in our
- * records.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li>
- * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> InvalidAddressingHeader</p> </li> <li> <p>
- * <i>Description:</i> You must specify the Anonymous role.</p> </li> <li> <p>
- * <i>HTTP Status Code:</i> N/A</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i>
- * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidArgument</p>
- * </li> <li> <p> <i>Description:</i> Invalid Argument</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
- * Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidBucketName</p> </li> <li> <p> <i>Description:</i> The specified bucket is
- * not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
- * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> InvalidBucketState</p> </li> <li> <p> <i>Description:</i>
- * The request is not valid with the current state of the bucket.</p> </li> <li>
- * <p> <i>HTTP Status Code:</i> 409 Conflict</p> </li> <li> <p> <i>SOAP Fault Code
+ * <i>Description:</i> The Amazon Web Services access key ID you provided does not
+ * exist in our records.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403
+ * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidAddressingHeader</p> </li>
+ * <li> <p> <i>Description:</i> You must specify the Anonymous role.</p> </li> <li>
+ * <p> <i>HTTP Status Code:</i> N/A</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidDigest</p> </li> <li> <p> <i>Description:</i> The Content-MD5 you
- * specified is not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
- * Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul>
- * </li> <li> <ul> <li> <p> <i>Code:</i> InvalidEncryptionAlgorithmError</p> </li>
- * <li> <p> <i>Description:</i> The encryption request you specified is not valid.
- * The valid value is AES256.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
- * Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul>
- * </li> <li> <ul> <li> <p> <i>Code:</i> InvalidLocationConstraint</p> </li> <li>
- * <p> <i>Description:</i> The specified location constraint is not valid. For more
- * information about Regions, see <a
+ * InvalidArgument</p> </li> <li> <p> <i>Description:</i> Invalid Argument</p>
+ * </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p>
+ * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
+ * <i>Code:</i> InvalidBucketName</p> </li> <li> <p> <i>Description:</i> The
+ * specified bucket is not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400
+ * Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidBucketState</p> </li> <li>
+ * <p> <i>Description:</i> The request is not valid with the current state of the
+ * bucket.</p> </li> <li> <p> <i>HTTP Status Code:</i> 409 Conflict</p> </li> <li>
+ * <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li>
+ * <p> <i>Code:</i> InvalidDigest</p> </li> <li> <p> <i>Description:</i> The
+ * Content-MD5 you specified is not valid.</p> </li> <li> <p> <i>HTTP Status
+ * Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i>
+ * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * InvalidEncryptionAlgorithmError</p> </li> <li> <p> <i>Description:</i> The
+ * encryption request you specified is not valid. The valid value is AES256.</p>
+ * </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p>
+ * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
+ * <i>Code:</i> InvalidLocationConstraint</p> </li> <li> <p> <i>Description:</i>
+ * The specified location constraint is not valid. For more information about
+ * Regions, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingBucket.html#access-bucket-intro">How
* to Select a Region for Your Buckets</a>. </p> </li> <li> <p> <i>HTTP Status
* Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i>
@@ -1327,11 +1341,11 @@ namespace Model
* number.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
* <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
* <li> <p> <i>Code:</i> InvalidPayer</p> </li> <li> <p> <i>Description:</i> All
- * access to this object has been disabled. Please contact AWS Support for further
- * assistance.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li>
- * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> InvalidPolicyDocument</p> </li> <li> <p>
- * <i>Description:</i> The content of the form does not meet the conditions
+ * access to this object has been disabled. Please contact Amazon Web Services
+ * Support for further assistance.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403
+ * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidPolicyDocument</p> </li> <li>
+ * <p> <i>Description:</i> The content of the form does not meet the conditions
* specified in the policy document.</p> </li> <li> <p> <i>HTTP Status Code:</i>
* 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p>
* </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidRange</p> </li> <li>
@@ -1339,10 +1353,10 @@ namespace Model
* <p> <i>HTTP Status Code:</i> 416 Requested Range Not Satisfiable</p> </li> <li>
* <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li>
* <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p> <i>Description:</i> Please
- * use AWS4-HMAC-SHA256.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
- * Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li> </ul> </li> <li> <ul> <li>
- * <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p> <i>Description:</i> SOAP
- * requests must be made over an HTTPS connection.</p> </li> <li> <p> <i>HTTP
+ * use <code>AWS4-HMAC-SHA256</code>.</p> </li> <li> <p> <i>HTTP Status Code:</i>
+ * 400 Bad Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li> </ul> </li> <li>
+ * <ul> <li> <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p> <i>Description:</i>
+ * SOAP requests must be made over an HTTPS connection.</p> </li> <li> <p> <i>HTTP
* Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
* InvalidRequest</p> </li> <li> <p> <i>Description:</i> Amazon S3 Transfer
@@ -1365,44 +1379,44 @@ namespace Model
* Code:</i> 400 Bad Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li> </ul>
* </li> <li> <ul> <li> <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p>
* <i>Description:</i> Amazon S3 Transfer Acceleration is not supported on this
- * bucket. Contact AWS Support for more information.</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p>
- * <i>Description:</i> Amazon S3 Transfer Acceleration cannot be enabled on this
- * bucket. Contact AWS Support for more information.</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidSecurity</p> </li> <li> <p>
- * <i>Description:</i> The provided security credentials are not valid.</p> </li>
- * <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault
- * Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidSOAPRequest</p> </li> <li> <p> <i>Description:</i> The SOAP request body
- * is invalid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p>
- * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
- * <ul> <li> <p> <i>Code:</i> InvalidStorageClass</p> </li> <li> <p>
- * <i>Description:</i> The storage class you specified is not valid.</p> </li> <li>
- * <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault
- * Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidTargetBucketForLogging</p> </li> <li> <p> <i>Description:</i> The target
- * bucket for logging does not exist, is not owned by you, or does not have the
- * appropriate grants for the log-delivery group. </p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
+ * bucket. Contact Amazon Web Services Support for more information.</p> </li> <li>
+ * <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>Code:</i>
+ * N/A</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidRequest</p>
+ * </li> <li> <p> <i>Description:</i> Amazon S3 Transfer Acceleration cannot be
+ * enabled on this bucket. Contact Amazon Web Services Support for more
+ * information.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p>
+ * </li> <li> <p> <i>Code:</i> N/A</p> </li> </ul> </li> <li> <ul> <li> <p>
+ * <i>Code:</i> InvalidSecurity</p> </li> <li> <p> <i>Description:</i> The provided
+ * security credentials are not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i>
+ * 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidSOAPRequest</p> </li> <li>
+ * <p> <i>Description:</i> The SOAP request body is invalid.</p> </li> <li> <p>
+ * <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidToken</p> </li> <li> <p> <i>Description:</i> The provided token is
- * malformed or otherwise invalid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400
- * Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidURI</p> </li> <li> <p>
- * <i>Description:</i> Couldn't parse the specified URI.</p> </li> <li> <p> <i>HTTP
+ * InvalidStorageClass</p> </li> <li> <p> <i>Description:</i> The storage class you
+ * specified is not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
+ * Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul>
+ * </li> <li> <ul> <li> <p> <i>Code:</i> InvalidTargetBucketForLogging</p> </li>
+ * <li> <p> <i>Description:</i> The target bucket for logging does not exist, is
+ * not owned by you, or does not have the appropriate grants for the log-delivery
+ * group. </p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
+ * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
+ * <li> <p> <i>Code:</i> InvalidToken</p> </li> <li> <p> <i>Description:</i> The
+ * provided token is malformed or otherwise invalid.</p> </li> <li> <p> <i>HTTP
* Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * KeyTooLongError</p> </li> <li> <p> <i>Description:</i> Your key is too long.</p>
- * </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p>
- * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
- * <i>Code:</i> MalformedACLError</p> </li> <li> <p> <i>Description:</i> The XML
- * you provided was not well-formed or did not validate against our published
- * schema.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
- * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> MalformedPOSTRequest </p> </li> <li> <p>
- * <i>Description:</i> The body of your POST request is not well-formed
+ * InvalidURI</p> </li> <li> <p> <i>Description:</i> Couldn't parse the specified
+ * URI.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li>
+ * <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li>
+ * <p> <i>Code:</i> KeyTooLongError</p> </li> <li> <p> <i>Description:</i> Your key
+ * is too long.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p>
+ * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
+ * <ul> <li> <p> <i>Code:</i> MalformedACLError</p> </li> <li> <p>
+ * <i>Description:</i> The XML you provided was not well-formed or did not validate
+ * against our published schema.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400
+ * Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> MalformedPOSTRequest </p> </li> <li>
+ * <p> <i>Description:</i> The body of your POST request is not well-formed
* multipart/form-data.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
* Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul>
* </li> <li> <ul> <li> <p> <i>Code:</i> MalformedXML</p> </li> <li> <p>
@@ -1479,20 +1493,21 @@ namespace Model
* </ul> </li> <li> <ul> <li> <p> <i>Code:</i> NotSignedUp</p> </li> <li> <p>
* <i>Description:</i> Your account is not signed up for the Amazon S3 service. You
* must sign up before you can use Amazon S3. You can sign up at the following URL:
- * https://aws.amazon.com/s3</p> </li> <li> <p> <i>HTTP Status Code:</i> 403
- * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> OperationAborted</p> </li> <li> <p>
- * <i>Description:</i> A conflicting conditional action is currently in progress
- * against this resource. Try again.</p> </li> <li> <p> <i>HTTP Status Code:</i>
- * 409 Conflict</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> PermanentRedirect</p> </li> <li> <p>
- * <i>Description:</i> The bucket you are attempting to access must be addressed
- * using the specified endpoint. Send all future requests to this endpoint.</p>
- * </li> <li> <p> <i>HTTP Status Code:</i> 301 Moved Permanently</p> </li> <li> <p>
- * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
- * <i>Code:</i> PreconditionFailed</p> </li> <li> <p> <i>Description:</i> At least
- * one of the preconditions you specified did not hold.</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 412 Precondition Failed</p> </li> <li> <p> <i>SOAP Fault Code
+ * <a href="http://aws.amazon.com/s3">Amazon S3</a> </p> </li> <li> <p> <i>HTTP
+ * Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i>
+ * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * OperationAborted</p> </li> <li> <p> <i>Description:</i> A conflicting
+ * conditional action is currently in progress against this resource. Try
+ * again.</p> </li> <li> <p> <i>HTTP Status Code:</i> 409 Conflict</p> </li> <li>
+ * <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li>
+ * <p> <i>Code:</i> PermanentRedirect</p> </li> <li> <p> <i>Description:</i> The
+ * bucket you are attempting to access must be addressed using the specified
+ * endpoint. Send all future requests to this endpoint.</p> </li> <li> <p> <i>HTTP
+ * Status Code:</i> 301 Moved Permanently</p> </li> <li> <p> <i>SOAP Fault Code
+ * Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * PreconditionFailed</p> </li> <li> <p> <i>Description:</i> At least one of the
+ * preconditions you specified did not hold.</p> </li> <li> <p> <i>HTTP Status
+ * Code:</i> 412 Precondition Failed</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
* Redirect</p> </li> <li> <p> <i>Description:</i> Temporary redirect.</p> </li>
* <li> <p> <i>HTTP Status Code:</i> 307 Moved Temporarily</p> </li> <li> <p>
@@ -1519,7 +1534,8 @@ namespace Model
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
* SignatureDoesNotMatch</p> </li> <li> <p> <i>Description:</i> The request
* signature we calculated does not match the signature you provided. Check your
- * AWS secret access key and signing method. For more information, see <a
+ * Amazon Web Services secret access key and signing method. For more information,
+ * see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html">REST
* Authentication</a> and <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/SOAPAuthentication.html">SOAP
@@ -1567,41 +1583,42 @@ namespace Model
* Access Denied</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p>
* </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
* <ul> <li> <p> <i>Code:</i> AccountProblem</p> </li> <li> <p> <i>Description:</i>
- * There is a problem with your AWS account that prevents the action from
- * completing successfully. Contact AWS Support for further assistance.</p> </li>
- * <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault
+ * There is a problem with your Amazon Web Services account that prevents the
+ * action from completing successfully. Contact Amazon Web Services Support for
+ * further assistance.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403
+ * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> AllAccessDisabled</p> </li> <li> <p>
+ * <i>Description:</i> All access to this Amazon S3 resource has been disabled.
+ * Contact Amazon Web Services Support for further assistance.</p> </li> <li> <p>
+ * <i>HTTP Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault Code
+ * Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * AmbiguousGrantByEmailAddress</p> </li> <li> <p> <i>Description:</i> The email
+ * address you provided is associated with more than one account.</p> </li> <li>
+ * <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault
* Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * AllAccessDisabled</p> </li> <li> <p> <i>Description:</i> All access to this
- * Amazon S3 resource has been disabled. Contact AWS Support for further
- * assistance.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li>
+ * AuthorizationHeaderMalformed</p> </li> <li> <p> <i>Description:</i> The
+ * authorization header you provided is invalid.</p> </li> <li> <p> <i>HTTP Status
+ * Code:</i> 400 Bad Request</p> </li> <li> <p> <i>HTTP Status Code:</i> N/A</p>
+ * </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> BadDigest</p> </li> <li> <p>
+ * <i>Description:</i> The Content-MD5 you specified did not match what we
+ * received.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
* <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> AmbiguousGrantByEmailAddress</p> </li> <li> <p>
- * <i>Description:</i> The email address you provided is associated with more than
- * one account.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p>
- * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
- * <ul> <li> <p> <i>Code:</i> AuthorizationHeaderMalformed</p> </li> <li> <p>
- * <i>Description:</i> The authorization header you provided is invalid.</p> </li>
- * <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> N/A</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * BadDigest</p> </li> <li> <p> <i>Description:</i> The Content-MD5 you specified
- * did not match what we received.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400
- * Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> BucketAlreadyExists</p> </li> <li>
- * <p> <i>Description:</i> The requested bucket name is not available. The bucket
- * namespace is shared by all users of the system. Please select a different name
- * and try again.</p> </li> <li> <p> <i>HTTP Status Code:</i> 409 Conflict</p>
- * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
- * <ul> <li> <p> <i>Code:</i> BucketAlreadyOwnedByYou</p> </li> <li> <p>
- * <i>Description:</i> The bucket you tried to create already exists, and you own
- * it. Amazon S3 returns this error in all AWS Regions except in the North Virginia
- * Region. For legacy compatibility, if you re-create an existing bucket that you
- * already own in the North Virginia Region, Amazon S3 returns 200 OK and resets
- * the bucket access control lists (ACLs).</p> </li> <li> <p> <i>Code:</i> 409
- * Conflict (in all Regions except the North Virginia Region) </p> </li> <li> <p>
- * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
- * <i>Code:</i> BucketNotEmpty</p> </li> <li> <p> <i>Description:</i> The bucket
- * you tried to delete is not empty.</p> </li> <li> <p> <i>HTTP Status Code:</i>
- * 409 Conflict</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * <li> <p> <i>Code:</i> BucketAlreadyExists</p> </li> <li> <p> <i>Description:</i>
+ * The requested bucket name is not available. The bucket namespace is shared by
+ * all users of the system. Please select a different name and try again.</p> </li>
+ * <li> <p> <i>HTTP Status Code:</i> 409 Conflict</p> </li> <li> <p> <i>SOAP Fault
+ * Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * BucketAlreadyOwnedByYou</p> </li> <li> <p> <i>Description:</i> The bucket you
+ * tried to create already exists, and you own it. Amazon S3 returns this error in
+ * all Amazon Web Services Regions except in the North Virginia Region. For legacy
+ * compatibility, if you re-create an existing bucket that you already own in the
+ * North Virginia Region, Amazon S3 returns 200 OK and resets the bucket access
+ * control lists (ACLs).</p> </li> <li> <p> <i>Code:</i> 409 Conflict (in all
+ * Regions except the North Virginia Region) </p> </li> <li> <p> <i>SOAP Fault Code
+ * Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * BucketNotEmpty</p> </li> <li> <p> <i>Description:</i> The bucket you tried to
+ * delete is not empty.</p> </li> <li> <p> <i>HTTP Status Code:</i> 409
+ * Conflict</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
* </ul> </li> <li> <ul> <li> <p> <i>Code:</i> CredentialsNotSupported</p> </li>
* <li> <p> <i>Description:</i> This request does not support credentials.</p>
* </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p>
@@ -1642,33 +1659,34 @@ namespace Model
* again.</p> </li> <li> <p> <i>HTTP Status Code:</i> 500 Internal Server Error</p>
* </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Server</p> </li> </ul> </li> <li>
* <ul> <li> <p> <i>Code:</i> InvalidAccessKeyId</p> </li> <li> <p>
- * <i>Description:</i> The AWS access key ID you provided does not exist in our
- * records.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li>
- * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> InvalidAddressingHeader</p> </li> <li> <p>
- * <i>Description:</i> You must specify the Anonymous role.</p> </li> <li> <p>
- * <i>HTTP Status Code:</i> N/A</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i>
- * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidArgument</p>
- * </li> <li> <p> <i>Description:</i> Invalid Argument</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
- * Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidBucketName</p> </li> <li> <p> <i>Description:</i> The specified bucket is
- * not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
- * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> InvalidBucketState</p> </li> <li> <p> <i>Description:</i>
- * The request is not valid with the current state of the bucket.</p> </li> <li>
- * <p> <i>HTTP Status Code:</i> 409 Conflict</p> </li> <li> <p> <i>SOAP Fault Code
+ * <i>Description:</i> The Amazon Web Services access key ID you provided does not
+ * exist in our records.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403
+ * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidAddressingHeader</p> </li>
+ * <li> <p> <i>Description:</i> You must specify the Anonymous role.</p> </li> <li>
+ * <p> <i>HTTP Status Code:</i> N/A</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidDigest</p> </li> <li> <p> <i>Description:</i> The Content-MD5 you
- * specified is not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
- * Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul>
- * </li> <li> <ul> <li> <p> <i>Code:</i> InvalidEncryptionAlgorithmError</p> </li>
- * <li> <p> <i>Description:</i> The encryption request you specified is not valid.
- * The valid value is AES256.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
- * Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul>
- * </li> <li> <ul> <li> <p> <i>Code:</i> InvalidLocationConstraint</p> </li> <li>
- * <p> <i>Description:</i> The specified location constraint is not valid. For more
- * information about Regions, see <a
+ * InvalidArgument</p> </li> <li> <p> <i>Description:</i> Invalid Argument</p>
+ * </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p>
+ * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
+ * <i>Code:</i> InvalidBucketName</p> </li> <li> <p> <i>Description:</i> The
+ * specified bucket is not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400
+ * Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidBucketState</p> </li> <li>
+ * <p> <i>Description:</i> The request is not valid with the current state of the
+ * bucket.</p> </li> <li> <p> <i>HTTP Status Code:</i> 409 Conflict</p> </li> <li>
+ * <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li>
+ * <p> <i>Code:</i> InvalidDigest</p> </li> <li> <p> <i>Description:</i> The
+ * Content-MD5 you specified is not valid.</p> </li> <li> <p> <i>HTTP Status
+ * Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i>
+ * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * InvalidEncryptionAlgorithmError</p> </li> <li> <p> <i>Description:</i> The
+ * encryption request you specified is not valid. The valid value is AES256.</p>
+ * </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p>
+ * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
+ * <i>Code:</i> InvalidLocationConstraint</p> </li> <li> <p> <i>Description:</i>
+ * The specified location constraint is not valid. For more information about
+ * Regions, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingBucket.html#access-bucket-intro">How
* to Select a Region for Your Buckets</a>. </p> </li> <li> <p> <i>HTTP Status
* Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i>
@@ -1687,11 +1705,11 @@ namespace Model
* number.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
* <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
* <li> <p> <i>Code:</i> InvalidPayer</p> </li> <li> <p> <i>Description:</i> All
- * access to this object has been disabled. Please contact AWS Support for further
- * assistance.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li>
- * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> InvalidPolicyDocument</p> </li> <li> <p>
- * <i>Description:</i> The content of the form does not meet the conditions
+ * access to this object has been disabled. Please contact Amazon Web Services
+ * Support for further assistance.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403
+ * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidPolicyDocument</p> </li> <li>
+ * <p> <i>Description:</i> The content of the form does not meet the conditions
* specified in the policy document.</p> </li> <li> <p> <i>HTTP Status Code:</i>
* 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p>
* </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidRange</p> </li> <li>
@@ -1699,10 +1717,10 @@ namespace Model
* <p> <i>HTTP Status Code:</i> 416 Requested Range Not Satisfiable</p> </li> <li>
* <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li>
* <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p> <i>Description:</i> Please
- * use AWS4-HMAC-SHA256.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
- * Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li> </ul> </li> <li> <ul> <li>
- * <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p> <i>Description:</i> SOAP
- * requests must be made over an HTTPS connection.</p> </li> <li> <p> <i>HTTP
+ * use <code>AWS4-HMAC-SHA256</code>.</p> </li> <li> <p> <i>HTTP Status Code:</i>
+ * 400 Bad Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li> </ul> </li> <li>
+ * <ul> <li> <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p> <i>Description:</i>
+ * SOAP requests must be made over an HTTPS connection.</p> </li> <li> <p> <i>HTTP
* Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
* InvalidRequest</p> </li> <li> <p> <i>Description:</i> Amazon S3 Transfer
@@ -1725,44 +1743,44 @@ namespace Model
* Code:</i> 400 Bad Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li> </ul>
* </li> <li> <ul> <li> <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p>
* <i>Description:</i> Amazon S3 Transfer Acceleration is not supported on this
- * bucket. Contact AWS Support for more information.</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p>
- * <i>Description:</i> Amazon S3 Transfer Acceleration cannot be enabled on this
- * bucket. Contact AWS Support for more information.</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidSecurity</p> </li> <li> <p>
- * <i>Description:</i> The provided security credentials are not valid.</p> </li>
- * <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault
- * Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidSOAPRequest</p> </li> <li> <p> <i>Description:</i> The SOAP request body
- * is invalid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p>
- * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
- * <ul> <li> <p> <i>Code:</i> InvalidStorageClass</p> </li> <li> <p>
- * <i>Description:</i> The storage class you specified is not valid.</p> </li> <li>
- * <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault
- * Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidTargetBucketForLogging</p> </li> <li> <p> <i>Description:</i> The target
- * bucket for logging does not exist, is not owned by you, or does not have the
- * appropriate grants for the log-delivery group. </p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
+ * bucket. Contact Amazon Web Services Support for more information.</p> </li> <li>
+ * <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>Code:</i>
+ * N/A</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidRequest</p>
+ * </li> <li> <p> <i>Description:</i> Amazon S3 Transfer Acceleration cannot be
+ * enabled on this bucket. Contact Amazon Web Services Support for more
+ * information.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p>
+ * </li> <li> <p> <i>Code:</i> N/A</p> </li> </ul> </li> <li> <ul> <li> <p>
+ * <i>Code:</i> InvalidSecurity</p> </li> <li> <p> <i>Description:</i> The provided
+ * security credentials are not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i>
+ * 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidSOAPRequest</p> </li> <li>
+ * <p> <i>Description:</i> The SOAP request body is invalid.</p> </li> <li> <p>
+ * <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidToken</p> </li> <li> <p> <i>Description:</i> The provided token is
- * malformed or otherwise invalid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400
- * Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidURI</p> </li> <li> <p>
- * <i>Description:</i> Couldn't parse the specified URI.</p> </li> <li> <p> <i>HTTP
+ * InvalidStorageClass</p> </li> <li> <p> <i>Description:</i> The storage class you
+ * specified is not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
+ * Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul>
+ * </li> <li> <ul> <li> <p> <i>Code:</i> InvalidTargetBucketForLogging</p> </li>
+ * <li> <p> <i>Description:</i> The target bucket for logging does not exist, is
+ * not owned by you, or does not have the appropriate grants for the log-delivery
+ * group. </p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
+ * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
+ * <li> <p> <i>Code:</i> InvalidToken</p> </li> <li> <p> <i>Description:</i> The
+ * provided token is malformed or otherwise invalid.</p> </li> <li> <p> <i>HTTP
* Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * KeyTooLongError</p> </li> <li> <p> <i>Description:</i> Your key is too long.</p>
- * </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p>
- * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
- * <i>Code:</i> MalformedACLError</p> </li> <li> <p> <i>Description:</i> The XML
- * you provided was not well-formed or did not validate against our published
- * schema.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
- * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> MalformedPOSTRequest </p> </li> <li> <p>
- * <i>Description:</i> The body of your POST request is not well-formed
+ * InvalidURI</p> </li> <li> <p> <i>Description:</i> Couldn't parse the specified
+ * URI.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li>
+ * <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li>
+ * <p> <i>Code:</i> KeyTooLongError</p> </li> <li> <p> <i>Description:</i> Your key
+ * is too long.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p>
+ * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
+ * <ul> <li> <p> <i>Code:</i> MalformedACLError</p> </li> <li> <p>
+ * <i>Description:</i> The XML you provided was not well-formed or did not validate
+ * against our published schema.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400
+ * Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> MalformedPOSTRequest </p> </li> <li>
+ * <p> <i>Description:</i> The body of your POST request is not well-formed
* multipart/form-data.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
* Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul>
* </li> <li> <ul> <li> <p> <i>Code:</i> MalformedXML</p> </li> <li> <p>
@@ -1839,20 +1857,21 @@ namespace Model
* </ul> </li> <li> <ul> <li> <p> <i>Code:</i> NotSignedUp</p> </li> <li> <p>
* <i>Description:</i> Your account is not signed up for the Amazon S3 service. You
* must sign up before you can use Amazon S3. You can sign up at the following URL:
- * https://aws.amazon.com/s3</p> </li> <li> <p> <i>HTTP Status Code:</i> 403
- * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> OperationAborted</p> </li> <li> <p>
- * <i>Description:</i> A conflicting conditional action is currently in progress
- * against this resource. Try again.</p> </li> <li> <p> <i>HTTP Status Code:</i>
- * 409 Conflict</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> PermanentRedirect</p> </li> <li> <p>
- * <i>Description:</i> The bucket you are attempting to access must be addressed
- * using the specified endpoint. Send all future requests to this endpoint.</p>
- * </li> <li> <p> <i>HTTP Status Code:</i> 301 Moved Permanently</p> </li> <li> <p>
- * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
- * <i>Code:</i> PreconditionFailed</p> </li> <li> <p> <i>Description:</i> At least
- * one of the preconditions you specified did not hold.</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 412 Precondition Failed</p> </li> <li> <p> <i>SOAP Fault Code
+ * <a href="http://aws.amazon.com/s3">Amazon S3</a> </p> </li> <li> <p> <i>HTTP
+ * Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i>
+ * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * OperationAborted</p> </li> <li> <p> <i>Description:</i> A conflicting
+ * conditional action is currently in progress against this resource. Try
+ * again.</p> </li> <li> <p> <i>HTTP Status Code:</i> 409 Conflict</p> </li> <li>
+ * <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li>
+ * <p> <i>Code:</i> PermanentRedirect</p> </li> <li> <p> <i>Description:</i> The
+ * bucket you are attempting to access must be addressed using the specified
+ * endpoint. Send all future requests to this endpoint.</p> </li> <li> <p> <i>HTTP
+ * Status Code:</i> 301 Moved Permanently</p> </li> <li> <p> <i>SOAP Fault Code
+ * Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * PreconditionFailed</p> </li> <li> <p> <i>Description:</i> At least one of the
+ * preconditions you specified did not hold.</p> </li> <li> <p> <i>HTTP Status
+ * Code:</i> 412 Precondition Failed</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
* Redirect</p> </li> <li> <p> <i>Description:</i> Temporary redirect.</p> </li>
* <li> <p> <i>HTTP Status Code:</i> 307 Moved Temporarily</p> </li> <li> <p>
@@ -1879,7 +1898,8 @@ namespace Model
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
* SignatureDoesNotMatch</p> </li> <li> <p> <i>Description:</i> The request
* signature we calculated does not match the signature you provided. Check your
- * AWS secret access key and signing method. For more information, see <a
+ * Amazon Web Services secret access key and signing method. For more information,
+ * see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html">REST
* Authentication</a> and <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/SOAPAuthentication.html">SOAP
@@ -1927,41 +1947,42 @@ namespace Model
* Access Denied</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p>
* </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
* <ul> <li> <p> <i>Code:</i> AccountProblem</p> </li> <li> <p> <i>Description:</i>
- * There is a problem with your AWS account that prevents the action from
- * completing successfully. Contact AWS Support for further assistance.</p> </li>
- * <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault
+ * There is a problem with your Amazon Web Services account that prevents the
+ * action from completing successfully. Contact Amazon Web Services Support for
+ * further assistance.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403
+ * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> AllAccessDisabled</p> </li> <li> <p>
+ * <i>Description:</i> All access to this Amazon S3 resource has been disabled.
+ * Contact Amazon Web Services Support for further assistance.</p> </li> <li> <p>
+ * <i>HTTP Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault Code
+ * Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * AmbiguousGrantByEmailAddress</p> </li> <li> <p> <i>Description:</i> The email
+ * address you provided is associated with more than one account.</p> </li> <li>
+ * <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault
* Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * AllAccessDisabled</p> </li> <li> <p> <i>Description:</i> All access to this
- * Amazon S3 resource has been disabled. Contact AWS Support for further
- * assistance.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li>
+ * AuthorizationHeaderMalformed</p> </li> <li> <p> <i>Description:</i> The
+ * authorization header you provided is invalid.</p> </li> <li> <p> <i>HTTP Status
+ * Code:</i> 400 Bad Request</p> </li> <li> <p> <i>HTTP Status Code:</i> N/A</p>
+ * </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> BadDigest</p> </li> <li> <p>
+ * <i>Description:</i> The Content-MD5 you specified did not match what we
+ * received.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
* <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> AmbiguousGrantByEmailAddress</p> </li> <li> <p>
- * <i>Description:</i> The email address you provided is associated with more than
- * one account.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p>
- * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
- * <ul> <li> <p> <i>Code:</i> AuthorizationHeaderMalformed</p> </li> <li> <p>
- * <i>Description:</i> The authorization header you provided is invalid.</p> </li>
- * <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> N/A</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * BadDigest</p> </li> <li> <p> <i>Description:</i> The Content-MD5 you specified
- * did not match what we received.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400
- * Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> BucketAlreadyExists</p> </li> <li>
- * <p> <i>Description:</i> The requested bucket name is not available. The bucket
- * namespace is shared by all users of the system. Please select a different name
- * and try again.</p> </li> <li> <p> <i>HTTP Status Code:</i> 409 Conflict</p>
- * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
- * <ul> <li> <p> <i>Code:</i> BucketAlreadyOwnedByYou</p> </li> <li> <p>
- * <i>Description:</i> The bucket you tried to create already exists, and you own
- * it. Amazon S3 returns this error in all AWS Regions except in the North Virginia
- * Region. For legacy compatibility, if you re-create an existing bucket that you
- * already own in the North Virginia Region, Amazon S3 returns 200 OK and resets
- * the bucket access control lists (ACLs).</p> </li> <li> <p> <i>Code:</i> 409
- * Conflict (in all Regions except the North Virginia Region) </p> </li> <li> <p>
- * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
- * <i>Code:</i> BucketNotEmpty</p> </li> <li> <p> <i>Description:</i> The bucket
- * you tried to delete is not empty.</p> </li> <li> <p> <i>HTTP Status Code:</i>
- * 409 Conflict</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * <li> <p> <i>Code:</i> BucketAlreadyExists</p> </li> <li> <p> <i>Description:</i>
+ * The requested bucket name is not available. The bucket namespace is shared by
+ * all users of the system. Please select a different name and try again.</p> </li>
+ * <li> <p> <i>HTTP Status Code:</i> 409 Conflict</p> </li> <li> <p> <i>SOAP Fault
+ * Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * BucketAlreadyOwnedByYou</p> </li> <li> <p> <i>Description:</i> The bucket you
+ * tried to create already exists, and you own it. Amazon S3 returns this error in
+ * all Amazon Web Services Regions except in the North Virginia Region. For legacy
+ * compatibility, if you re-create an existing bucket that you already own in the
+ * North Virginia Region, Amazon S3 returns 200 OK and resets the bucket access
+ * control lists (ACLs).</p> </li> <li> <p> <i>Code:</i> 409 Conflict (in all
+ * Regions except the North Virginia Region) </p> </li> <li> <p> <i>SOAP Fault Code
+ * Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * BucketNotEmpty</p> </li> <li> <p> <i>Description:</i> The bucket you tried to
+ * delete is not empty.</p> </li> <li> <p> <i>HTTP Status Code:</i> 409
+ * Conflict</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
* </ul> </li> <li> <ul> <li> <p> <i>Code:</i> CredentialsNotSupported</p> </li>
* <li> <p> <i>Description:</i> This request does not support credentials.</p>
* </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p>
@@ -2002,33 +2023,34 @@ namespace Model
* again.</p> </li> <li> <p> <i>HTTP Status Code:</i> 500 Internal Server Error</p>
* </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Server</p> </li> </ul> </li> <li>
* <ul> <li> <p> <i>Code:</i> InvalidAccessKeyId</p> </li> <li> <p>
- * <i>Description:</i> The AWS access key ID you provided does not exist in our
- * records.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li>
- * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> InvalidAddressingHeader</p> </li> <li> <p>
- * <i>Description:</i> You must specify the Anonymous role.</p> </li> <li> <p>
- * <i>HTTP Status Code:</i> N/A</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i>
- * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidArgument</p>
- * </li> <li> <p> <i>Description:</i> Invalid Argument</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
- * Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidBucketName</p> </li> <li> <p> <i>Description:</i> The specified bucket is
- * not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
- * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> InvalidBucketState</p> </li> <li> <p> <i>Description:</i>
- * The request is not valid with the current state of the bucket.</p> </li> <li>
- * <p> <i>HTTP Status Code:</i> 409 Conflict</p> </li> <li> <p> <i>SOAP Fault Code
+ * <i>Description:</i> The Amazon Web Services access key ID you provided does not
+ * exist in our records.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403
+ * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidAddressingHeader</p> </li>
+ * <li> <p> <i>Description:</i> You must specify the Anonymous role.</p> </li> <li>
+ * <p> <i>HTTP Status Code:</i> N/A</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidDigest</p> </li> <li> <p> <i>Description:</i> The Content-MD5 you
- * specified is not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
- * Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul>
- * </li> <li> <ul> <li> <p> <i>Code:</i> InvalidEncryptionAlgorithmError</p> </li>
- * <li> <p> <i>Description:</i> The encryption request you specified is not valid.
- * The valid value is AES256.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
- * Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul>
- * </li> <li> <ul> <li> <p> <i>Code:</i> InvalidLocationConstraint</p> </li> <li>
- * <p> <i>Description:</i> The specified location constraint is not valid. For more
- * information about Regions, see <a
+ * InvalidArgument</p> </li> <li> <p> <i>Description:</i> Invalid Argument</p>
+ * </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p>
+ * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
+ * <i>Code:</i> InvalidBucketName</p> </li> <li> <p> <i>Description:</i> The
+ * specified bucket is not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400
+ * Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidBucketState</p> </li> <li>
+ * <p> <i>Description:</i> The request is not valid with the current state of the
+ * bucket.</p> </li> <li> <p> <i>HTTP Status Code:</i> 409 Conflict</p> </li> <li>
+ * <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li>
+ * <p> <i>Code:</i> InvalidDigest</p> </li> <li> <p> <i>Description:</i> The
+ * Content-MD5 you specified is not valid.</p> </li> <li> <p> <i>HTTP Status
+ * Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i>
+ * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * InvalidEncryptionAlgorithmError</p> </li> <li> <p> <i>Description:</i> The
+ * encryption request you specified is not valid. The valid value is AES256.</p>
+ * </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p>
+ * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
+ * <i>Code:</i> InvalidLocationConstraint</p> </li> <li> <p> <i>Description:</i>
+ * The specified location constraint is not valid. For more information about
+ * Regions, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingBucket.html#access-bucket-intro">How
* to Select a Region for Your Buckets</a>. </p> </li> <li> <p> <i>HTTP Status
* Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i>
@@ -2047,11 +2069,11 @@ namespace Model
* number.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
* <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
* <li> <p> <i>Code:</i> InvalidPayer</p> </li> <li> <p> <i>Description:</i> All
- * access to this object has been disabled. Please contact AWS Support for further
- * assistance.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li>
- * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> InvalidPolicyDocument</p> </li> <li> <p>
- * <i>Description:</i> The content of the form does not meet the conditions
+ * access to this object has been disabled. Please contact Amazon Web Services
+ * Support for further assistance.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403
+ * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidPolicyDocument</p> </li> <li>
+ * <p> <i>Description:</i> The content of the form does not meet the conditions
* specified in the policy document.</p> </li> <li> <p> <i>HTTP Status Code:</i>
* 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p>
* </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidRange</p> </li> <li>
@@ -2059,10 +2081,10 @@ namespace Model
* <p> <i>HTTP Status Code:</i> 416 Requested Range Not Satisfiable</p> </li> <li>
* <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li>
* <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p> <i>Description:</i> Please
- * use AWS4-HMAC-SHA256.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
- * Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li> </ul> </li> <li> <ul> <li>
- * <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p> <i>Description:</i> SOAP
- * requests must be made over an HTTPS connection.</p> </li> <li> <p> <i>HTTP
+ * use <code>AWS4-HMAC-SHA256</code>.</p> </li> <li> <p> <i>HTTP Status Code:</i>
+ * 400 Bad Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li> </ul> </li> <li>
+ * <ul> <li> <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p> <i>Description:</i>
+ * SOAP requests must be made over an HTTPS connection.</p> </li> <li> <p> <i>HTTP
* Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
* InvalidRequest</p> </li> <li> <p> <i>Description:</i> Amazon S3 Transfer
@@ -2085,44 +2107,44 @@ namespace Model
* Code:</i> 400 Bad Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li> </ul>
* </li> <li> <ul> <li> <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p>
* <i>Description:</i> Amazon S3 Transfer Acceleration is not supported on this
- * bucket. Contact AWS Support for more information.</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p>
- * <i>Description:</i> Amazon S3 Transfer Acceleration cannot be enabled on this
- * bucket. Contact AWS Support for more information.</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidSecurity</p> </li> <li> <p>
- * <i>Description:</i> The provided security credentials are not valid.</p> </li>
- * <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault
- * Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidSOAPRequest</p> </li> <li> <p> <i>Description:</i> The SOAP request body
- * is invalid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p>
- * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
- * <ul> <li> <p> <i>Code:</i> InvalidStorageClass</p> </li> <li> <p>
- * <i>Description:</i> The storage class you specified is not valid.</p> </li> <li>
- * <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault
- * Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidTargetBucketForLogging</p> </li> <li> <p> <i>Description:</i> The target
- * bucket for logging does not exist, is not owned by you, or does not have the
- * appropriate grants for the log-delivery group. </p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
+ * bucket. Contact Amazon Web Services Support for more information.</p> </li> <li>
+ * <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>Code:</i>
+ * N/A</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidRequest</p>
+ * </li> <li> <p> <i>Description:</i> Amazon S3 Transfer Acceleration cannot be
+ * enabled on this bucket. Contact Amazon Web Services Support for more
+ * information.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p>
+ * </li> <li> <p> <i>Code:</i> N/A</p> </li> </ul> </li> <li> <ul> <li> <p>
+ * <i>Code:</i> InvalidSecurity</p> </li> <li> <p> <i>Description:</i> The provided
+ * security credentials are not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i>
+ * 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidSOAPRequest</p> </li> <li>
+ * <p> <i>Description:</i> The SOAP request body is invalid.</p> </li> <li> <p>
+ * <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidToken</p> </li> <li> <p> <i>Description:</i> The provided token is
- * malformed or otherwise invalid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400
- * Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidURI</p> </li> <li> <p>
- * <i>Description:</i> Couldn't parse the specified URI.</p> </li> <li> <p> <i>HTTP
+ * InvalidStorageClass</p> </li> <li> <p> <i>Description:</i> The storage class you
+ * specified is not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
+ * Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul>
+ * </li> <li> <ul> <li> <p> <i>Code:</i> InvalidTargetBucketForLogging</p> </li>
+ * <li> <p> <i>Description:</i> The target bucket for logging does not exist, is
+ * not owned by you, or does not have the appropriate grants for the log-delivery
+ * group. </p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
+ * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
+ * <li> <p> <i>Code:</i> InvalidToken</p> </li> <li> <p> <i>Description:</i> The
+ * provided token is malformed or otherwise invalid.</p> </li> <li> <p> <i>HTTP
* Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * KeyTooLongError</p> </li> <li> <p> <i>Description:</i> Your key is too long.</p>
- * </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p>
- * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
- * <i>Code:</i> MalformedACLError</p> </li> <li> <p> <i>Description:</i> The XML
- * you provided was not well-formed or did not validate against our published
- * schema.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
- * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> MalformedPOSTRequest </p> </li> <li> <p>
- * <i>Description:</i> The body of your POST request is not well-formed
+ * InvalidURI</p> </li> <li> <p> <i>Description:</i> Couldn't parse the specified
+ * URI.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li>
+ * <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li>
+ * <p> <i>Code:</i> KeyTooLongError</p> </li> <li> <p> <i>Description:</i> Your key
+ * is too long.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p>
+ * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
+ * <ul> <li> <p> <i>Code:</i> MalformedACLError</p> </li> <li> <p>
+ * <i>Description:</i> The XML you provided was not well-formed or did not validate
+ * against our published schema.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400
+ * Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> MalformedPOSTRequest </p> </li> <li>
+ * <p> <i>Description:</i> The body of your POST request is not well-formed
* multipart/form-data.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
* Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul>
* </li> <li> <ul> <li> <p> <i>Code:</i> MalformedXML</p> </li> <li> <p>
@@ -2199,20 +2221,21 @@ namespace Model
* </ul> </li> <li> <ul> <li> <p> <i>Code:</i> NotSignedUp</p> </li> <li> <p>
* <i>Description:</i> Your account is not signed up for the Amazon S3 service. You
* must sign up before you can use Amazon S3. You can sign up at the following URL:
- * https://aws.amazon.com/s3</p> </li> <li> <p> <i>HTTP Status Code:</i> 403
- * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> OperationAborted</p> </li> <li> <p>
- * <i>Description:</i> A conflicting conditional action is currently in progress
- * against this resource. Try again.</p> </li> <li> <p> <i>HTTP Status Code:</i>
- * 409 Conflict</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> PermanentRedirect</p> </li> <li> <p>
- * <i>Description:</i> The bucket you are attempting to access must be addressed
- * using the specified endpoint. Send all future requests to this endpoint.</p>
- * </li> <li> <p> <i>HTTP Status Code:</i> 301 Moved Permanently</p> </li> <li> <p>
- * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
- * <i>Code:</i> PreconditionFailed</p> </li> <li> <p> <i>Description:</i> At least
- * one of the preconditions you specified did not hold.</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 412 Precondition Failed</p> </li> <li> <p> <i>SOAP Fault Code
+ * <a href="http://aws.amazon.com/s3">Amazon S3</a> </p> </li> <li> <p> <i>HTTP
+ * Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i>
+ * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * OperationAborted</p> </li> <li> <p> <i>Description:</i> A conflicting
+ * conditional action is currently in progress against this resource. Try
+ * again.</p> </li> <li> <p> <i>HTTP Status Code:</i> 409 Conflict</p> </li> <li>
+ * <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li>
+ * <p> <i>Code:</i> PermanentRedirect</p> </li> <li> <p> <i>Description:</i> The
+ * bucket you are attempting to access must be addressed using the specified
+ * endpoint. Send all future requests to this endpoint.</p> </li> <li> <p> <i>HTTP
+ * Status Code:</i> 301 Moved Permanently</p> </li> <li> <p> <i>SOAP Fault Code
+ * Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * PreconditionFailed</p> </li> <li> <p> <i>Description:</i> At least one of the
+ * preconditions you specified did not hold.</p> </li> <li> <p> <i>HTTP Status
+ * Code:</i> 412 Precondition Failed</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
* Redirect</p> </li> <li> <p> <i>Description:</i> Temporary redirect.</p> </li>
* <li> <p> <i>HTTP Status Code:</i> 307 Moved Temporarily</p> </li> <li> <p>
@@ -2239,7 +2262,8 @@ namespace Model
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
* SignatureDoesNotMatch</p> </li> <li> <p> <i>Description:</i> The request
* signature we calculated does not match the signature you provided. Check your
- * AWS secret access key and signing method. For more information, see <a
+ * Amazon Web Services secret access key and signing method. For more information,
+ * see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html">REST
* Authentication</a> and <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/SOAPAuthentication.html">SOAP
@@ -2287,41 +2311,42 @@ namespace Model
* Access Denied</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p>
* </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
* <ul> <li> <p> <i>Code:</i> AccountProblem</p> </li> <li> <p> <i>Description:</i>
- * There is a problem with your AWS account that prevents the action from
- * completing successfully. Contact AWS Support for further assistance.</p> </li>
- * <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault
+ * There is a problem with your Amazon Web Services account that prevents the
+ * action from completing successfully. Contact Amazon Web Services Support for
+ * further assistance.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403
+ * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> AllAccessDisabled</p> </li> <li> <p>
+ * <i>Description:</i> All access to this Amazon S3 resource has been disabled.
+ * Contact Amazon Web Services Support for further assistance.</p> </li> <li> <p>
+ * <i>HTTP Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault Code
+ * Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * AmbiguousGrantByEmailAddress</p> </li> <li> <p> <i>Description:</i> The email
+ * address you provided is associated with more than one account.</p> </li> <li>
+ * <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault
* Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * AllAccessDisabled</p> </li> <li> <p> <i>Description:</i> All access to this
- * Amazon S3 resource has been disabled. Contact AWS Support for further
- * assistance.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li>
+ * AuthorizationHeaderMalformed</p> </li> <li> <p> <i>Description:</i> The
+ * authorization header you provided is invalid.</p> </li> <li> <p> <i>HTTP Status
+ * Code:</i> 400 Bad Request</p> </li> <li> <p> <i>HTTP Status Code:</i> N/A</p>
+ * </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> BadDigest</p> </li> <li> <p>
+ * <i>Description:</i> The Content-MD5 you specified did not match what we
+ * received.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
* <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> AmbiguousGrantByEmailAddress</p> </li> <li> <p>
- * <i>Description:</i> The email address you provided is associated with more than
- * one account.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p>
- * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
- * <ul> <li> <p> <i>Code:</i> AuthorizationHeaderMalformed</p> </li> <li> <p>
- * <i>Description:</i> The authorization header you provided is invalid.</p> </li>
- * <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> N/A</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * BadDigest</p> </li> <li> <p> <i>Description:</i> The Content-MD5 you specified
- * did not match what we received.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400
- * Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> BucketAlreadyExists</p> </li> <li>
- * <p> <i>Description:</i> The requested bucket name is not available. The bucket
- * namespace is shared by all users of the system. Please select a different name
- * and try again.</p> </li> <li> <p> <i>HTTP Status Code:</i> 409 Conflict</p>
- * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
- * <ul> <li> <p> <i>Code:</i> BucketAlreadyOwnedByYou</p> </li> <li> <p>
- * <i>Description:</i> The bucket you tried to create already exists, and you own
- * it. Amazon S3 returns this error in all AWS Regions except in the North Virginia
- * Region. For legacy compatibility, if you re-create an existing bucket that you
- * already own in the North Virginia Region, Amazon S3 returns 200 OK and resets
- * the bucket access control lists (ACLs).</p> </li> <li> <p> <i>Code:</i> 409
- * Conflict (in all Regions except the North Virginia Region) </p> </li> <li> <p>
- * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
- * <i>Code:</i> BucketNotEmpty</p> </li> <li> <p> <i>Description:</i> The bucket
- * you tried to delete is not empty.</p> </li> <li> <p> <i>HTTP Status Code:</i>
- * 409 Conflict</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * <li> <p> <i>Code:</i> BucketAlreadyExists</p> </li> <li> <p> <i>Description:</i>
+ * The requested bucket name is not available. The bucket namespace is shared by
+ * all users of the system. Please select a different name and try again.</p> </li>
+ * <li> <p> <i>HTTP Status Code:</i> 409 Conflict</p> </li> <li> <p> <i>SOAP Fault
+ * Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * BucketAlreadyOwnedByYou</p> </li> <li> <p> <i>Description:</i> The bucket you
+ * tried to create already exists, and you own it. Amazon S3 returns this error in
+ * all Amazon Web Services Regions except in the North Virginia Region. For legacy
+ * compatibility, if you re-create an existing bucket that you already own in the
+ * North Virginia Region, Amazon S3 returns 200 OK and resets the bucket access
+ * control lists (ACLs).</p> </li> <li> <p> <i>Code:</i> 409 Conflict (in all
+ * Regions except the North Virginia Region) </p> </li> <li> <p> <i>SOAP Fault Code
+ * Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * BucketNotEmpty</p> </li> <li> <p> <i>Description:</i> The bucket you tried to
+ * delete is not empty.</p> </li> <li> <p> <i>HTTP Status Code:</i> 409
+ * Conflict</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
* </ul> </li> <li> <ul> <li> <p> <i>Code:</i> CredentialsNotSupported</p> </li>
* <li> <p> <i>Description:</i> This request does not support credentials.</p>
* </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p>
@@ -2362,33 +2387,34 @@ namespace Model
* again.</p> </li> <li> <p> <i>HTTP Status Code:</i> 500 Internal Server Error</p>
* </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Server</p> </li> </ul> </li> <li>
* <ul> <li> <p> <i>Code:</i> InvalidAccessKeyId</p> </li> <li> <p>
- * <i>Description:</i> The AWS access key ID you provided does not exist in our
- * records.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li>
- * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> InvalidAddressingHeader</p> </li> <li> <p>
- * <i>Description:</i> You must specify the Anonymous role.</p> </li> <li> <p>
- * <i>HTTP Status Code:</i> N/A</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i>
- * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidArgument</p>
- * </li> <li> <p> <i>Description:</i> Invalid Argument</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
- * Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidBucketName</p> </li> <li> <p> <i>Description:</i> The specified bucket is
- * not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
- * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> InvalidBucketState</p> </li> <li> <p> <i>Description:</i>
- * The request is not valid with the current state of the bucket.</p> </li> <li>
- * <p> <i>HTTP Status Code:</i> 409 Conflict</p> </li> <li> <p> <i>SOAP Fault Code
+ * <i>Description:</i> The Amazon Web Services access key ID you provided does not
+ * exist in our records.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403
+ * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidAddressingHeader</p> </li>
+ * <li> <p> <i>Description:</i> You must specify the Anonymous role.</p> </li> <li>
+ * <p> <i>HTTP Status Code:</i> N/A</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidDigest</p> </li> <li> <p> <i>Description:</i> The Content-MD5 you
- * specified is not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
- * Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul>
- * </li> <li> <ul> <li> <p> <i>Code:</i> InvalidEncryptionAlgorithmError</p> </li>
- * <li> <p> <i>Description:</i> The encryption request you specified is not valid.
- * The valid value is AES256.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
- * Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul>
- * </li> <li> <ul> <li> <p> <i>Code:</i> InvalidLocationConstraint</p> </li> <li>
- * <p> <i>Description:</i> The specified location constraint is not valid. For more
- * information about Regions, see <a
+ * InvalidArgument</p> </li> <li> <p> <i>Description:</i> Invalid Argument</p>
+ * </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p>
+ * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
+ * <i>Code:</i> InvalidBucketName</p> </li> <li> <p> <i>Description:</i> The
+ * specified bucket is not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400
+ * Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidBucketState</p> </li> <li>
+ * <p> <i>Description:</i> The request is not valid with the current state of the
+ * bucket.</p> </li> <li> <p> <i>HTTP Status Code:</i> 409 Conflict</p> </li> <li>
+ * <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li>
+ * <p> <i>Code:</i> InvalidDigest</p> </li> <li> <p> <i>Description:</i> The
+ * Content-MD5 you specified is not valid.</p> </li> <li> <p> <i>HTTP Status
+ * Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i>
+ * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * InvalidEncryptionAlgorithmError</p> </li> <li> <p> <i>Description:</i> The
+ * encryption request you specified is not valid. The valid value is AES256.</p>
+ * </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p>
+ * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
+ * <i>Code:</i> InvalidLocationConstraint</p> </li> <li> <p> <i>Description:</i>
+ * The specified location constraint is not valid. For more information about
+ * Regions, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingBucket.html#access-bucket-intro">How
* to Select a Region for Your Buckets</a>. </p> </li> <li> <p> <i>HTTP Status
* Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i>
@@ -2407,11 +2433,11 @@ namespace Model
* number.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
* <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
* <li> <p> <i>Code:</i> InvalidPayer</p> </li> <li> <p> <i>Description:</i> All
- * access to this object has been disabled. Please contact AWS Support for further
- * assistance.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li>
- * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> InvalidPolicyDocument</p> </li> <li> <p>
- * <i>Description:</i> The content of the form does not meet the conditions
+ * access to this object has been disabled. Please contact Amazon Web Services
+ * Support for further assistance.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403
+ * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidPolicyDocument</p> </li> <li>
+ * <p> <i>Description:</i> The content of the form does not meet the conditions
* specified in the policy document.</p> </li> <li> <p> <i>HTTP Status Code:</i>
* 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p>
* </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidRange</p> </li> <li>
@@ -2419,10 +2445,10 @@ namespace Model
* <p> <i>HTTP Status Code:</i> 416 Requested Range Not Satisfiable</p> </li> <li>
* <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li>
* <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p> <i>Description:</i> Please
- * use AWS4-HMAC-SHA256.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
- * Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li> </ul> </li> <li> <ul> <li>
- * <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p> <i>Description:</i> SOAP
- * requests must be made over an HTTPS connection.</p> </li> <li> <p> <i>HTTP
+ * use <code>AWS4-HMAC-SHA256</code>.</p> </li> <li> <p> <i>HTTP Status Code:</i>
+ * 400 Bad Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li> </ul> </li> <li>
+ * <ul> <li> <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p> <i>Description:</i>
+ * SOAP requests must be made over an HTTPS connection.</p> </li> <li> <p> <i>HTTP
* Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
* InvalidRequest</p> </li> <li> <p> <i>Description:</i> Amazon S3 Transfer
@@ -2445,44 +2471,44 @@ namespace Model
* Code:</i> 400 Bad Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li> </ul>
* </li> <li> <ul> <li> <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p>
* <i>Description:</i> Amazon S3 Transfer Acceleration is not supported on this
- * bucket. Contact AWS Support for more information.</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p>
- * <i>Description:</i> Amazon S3 Transfer Acceleration cannot be enabled on this
- * bucket. Contact AWS Support for more information.</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidSecurity</p> </li> <li> <p>
- * <i>Description:</i> The provided security credentials are not valid.</p> </li>
- * <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault
- * Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidSOAPRequest</p> </li> <li> <p> <i>Description:</i> The SOAP request body
- * is invalid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p>
- * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
- * <ul> <li> <p> <i>Code:</i> InvalidStorageClass</p> </li> <li> <p>
- * <i>Description:</i> The storage class you specified is not valid.</p> </li> <li>
- * <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault
- * Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidTargetBucketForLogging</p> </li> <li> <p> <i>Description:</i> The target
- * bucket for logging does not exist, is not owned by you, or does not have the
- * appropriate grants for the log-delivery group. </p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
+ * bucket. Contact Amazon Web Services Support for more information.</p> </li> <li>
+ * <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>Code:</i>
+ * N/A</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidRequest</p>
+ * </li> <li> <p> <i>Description:</i> Amazon S3 Transfer Acceleration cannot be
+ * enabled on this bucket. Contact Amazon Web Services Support for more
+ * information.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p>
+ * </li> <li> <p> <i>Code:</i> N/A</p> </li> </ul> </li> <li> <ul> <li> <p>
+ * <i>Code:</i> InvalidSecurity</p> </li> <li> <p> <i>Description:</i> The provided
+ * security credentials are not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i>
+ * 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidSOAPRequest</p> </li> <li>
+ * <p> <i>Description:</i> The SOAP request body is invalid.</p> </li> <li> <p>
+ * <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidToken</p> </li> <li> <p> <i>Description:</i> The provided token is
- * malformed or otherwise invalid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400
- * Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidURI</p> </li> <li> <p>
- * <i>Description:</i> Couldn't parse the specified URI.</p> </li> <li> <p> <i>HTTP
+ * InvalidStorageClass</p> </li> <li> <p> <i>Description:</i> The storage class you
+ * specified is not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
+ * Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul>
+ * </li> <li> <ul> <li> <p> <i>Code:</i> InvalidTargetBucketForLogging</p> </li>
+ * <li> <p> <i>Description:</i> The target bucket for logging does not exist, is
+ * not owned by you, or does not have the appropriate grants for the log-delivery
+ * group. </p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
+ * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
+ * <li> <p> <i>Code:</i> InvalidToken</p> </li> <li> <p> <i>Description:</i> The
+ * provided token is malformed or otherwise invalid.</p> </li> <li> <p> <i>HTTP
* Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * KeyTooLongError</p> </li> <li> <p> <i>Description:</i> Your key is too long.</p>
- * </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p>
- * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
- * <i>Code:</i> MalformedACLError</p> </li> <li> <p> <i>Description:</i> The XML
- * you provided was not well-formed or did not validate against our published
- * schema.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
- * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> MalformedPOSTRequest </p> </li> <li> <p>
- * <i>Description:</i> The body of your POST request is not well-formed
+ * InvalidURI</p> </li> <li> <p> <i>Description:</i> Couldn't parse the specified
+ * URI.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li>
+ * <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li>
+ * <p> <i>Code:</i> KeyTooLongError</p> </li> <li> <p> <i>Description:</i> Your key
+ * is too long.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p>
+ * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
+ * <ul> <li> <p> <i>Code:</i> MalformedACLError</p> </li> <li> <p>
+ * <i>Description:</i> The XML you provided was not well-formed or did not validate
+ * against our published schema.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400
+ * Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> MalformedPOSTRequest </p> </li> <li>
+ * <p> <i>Description:</i> The body of your POST request is not well-formed
* multipart/form-data.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
* Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul>
* </li> <li> <ul> <li> <p> <i>Code:</i> MalformedXML</p> </li> <li> <p>
@@ -2559,20 +2585,21 @@ namespace Model
* </ul> </li> <li> <ul> <li> <p> <i>Code:</i> NotSignedUp</p> </li> <li> <p>
* <i>Description:</i> Your account is not signed up for the Amazon S3 service. You
* must sign up before you can use Amazon S3. You can sign up at the following URL:
- * https://aws.amazon.com/s3</p> </li> <li> <p> <i>HTTP Status Code:</i> 403
- * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> OperationAborted</p> </li> <li> <p>
- * <i>Description:</i> A conflicting conditional action is currently in progress
- * against this resource. Try again.</p> </li> <li> <p> <i>HTTP Status Code:</i>
- * 409 Conflict</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> PermanentRedirect</p> </li> <li> <p>
- * <i>Description:</i> The bucket you are attempting to access must be addressed
- * using the specified endpoint. Send all future requests to this endpoint.</p>
- * </li> <li> <p> <i>HTTP Status Code:</i> 301 Moved Permanently</p> </li> <li> <p>
- * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
- * <i>Code:</i> PreconditionFailed</p> </li> <li> <p> <i>Description:</i> At least
- * one of the preconditions you specified did not hold.</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 412 Precondition Failed</p> </li> <li> <p> <i>SOAP Fault Code
+ * <a href="http://aws.amazon.com/s3">Amazon S3</a> </p> </li> <li> <p> <i>HTTP
+ * Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i>
+ * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * OperationAborted</p> </li> <li> <p> <i>Description:</i> A conflicting
+ * conditional action is currently in progress against this resource. Try
+ * again.</p> </li> <li> <p> <i>HTTP Status Code:</i> 409 Conflict</p> </li> <li>
+ * <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li>
+ * <p> <i>Code:</i> PermanentRedirect</p> </li> <li> <p> <i>Description:</i> The
+ * bucket you are attempting to access must be addressed using the specified
+ * endpoint. Send all future requests to this endpoint.</p> </li> <li> <p> <i>HTTP
+ * Status Code:</i> 301 Moved Permanently</p> </li> <li> <p> <i>SOAP Fault Code
+ * Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * PreconditionFailed</p> </li> <li> <p> <i>Description:</i> At least one of the
+ * preconditions you specified did not hold.</p> </li> <li> <p> <i>HTTP Status
+ * Code:</i> 412 Precondition Failed</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
* Redirect</p> </li> <li> <p> <i>Description:</i> Temporary redirect.</p> </li>
* <li> <p> <i>HTTP Status Code:</i> 307 Moved Temporarily</p> </li> <li> <p>
@@ -2599,7 +2626,8 @@ namespace Model
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
* SignatureDoesNotMatch</p> </li> <li> <p> <i>Description:</i> The request
* signature we calculated does not match the signature you provided. Check your
- * AWS secret access key and signing method. For more information, see <a
+ * Amazon Web Services secret access key and signing method. For more information,
+ * see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html">REST
* Authentication</a> and <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/SOAPAuthentication.html">SOAP
@@ -2647,41 +2675,42 @@ namespace Model
* Access Denied</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p>
* </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
* <ul> <li> <p> <i>Code:</i> AccountProblem</p> </li> <li> <p> <i>Description:</i>
- * There is a problem with your AWS account that prevents the action from
- * completing successfully. Contact AWS Support for further assistance.</p> </li>
- * <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault
+ * There is a problem with your Amazon Web Services account that prevents the
+ * action from completing successfully. Contact Amazon Web Services Support for
+ * further assistance.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403
+ * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> AllAccessDisabled</p> </li> <li> <p>
+ * <i>Description:</i> All access to this Amazon S3 resource has been disabled.
+ * Contact Amazon Web Services Support for further assistance.</p> </li> <li> <p>
+ * <i>HTTP Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault Code
+ * Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * AmbiguousGrantByEmailAddress</p> </li> <li> <p> <i>Description:</i> The email
+ * address you provided is associated with more than one account.</p> </li> <li>
+ * <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault
* Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * AllAccessDisabled</p> </li> <li> <p> <i>Description:</i> All access to this
- * Amazon S3 resource has been disabled. Contact AWS Support for further
- * assistance.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li>
+ * AuthorizationHeaderMalformed</p> </li> <li> <p> <i>Description:</i> The
+ * authorization header you provided is invalid.</p> </li> <li> <p> <i>HTTP Status
+ * Code:</i> 400 Bad Request</p> </li> <li> <p> <i>HTTP Status Code:</i> N/A</p>
+ * </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> BadDigest</p> </li> <li> <p>
+ * <i>Description:</i> The Content-MD5 you specified did not match what we
+ * received.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
* <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> AmbiguousGrantByEmailAddress</p> </li> <li> <p>
- * <i>Description:</i> The email address you provided is associated with more than
- * one account.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p>
- * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
- * <ul> <li> <p> <i>Code:</i> AuthorizationHeaderMalformed</p> </li> <li> <p>
- * <i>Description:</i> The authorization header you provided is invalid.</p> </li>
- * <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> N/A</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * BadDigest</p> </li> <li> <p> <i>Description:</i> The Content-MD5 you specified
- * did not match what we received.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400
- * Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> BucketAlreadyExists</p> </li> <li>
- * <p> <i>Description:</i> The requested bucket name is not available. The bucket
- * namespace is shared by all users of the system. Please select a different name
- * and try again.</p> </li> <li> <p> <i>HTTP Status Code:</i> 409 Conflict</p>
- * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
- * <ul> <li> <p> <i>Code:</i> BucketAlreadyOwnedByYou</p> </li> <li> <p>
- * <i>Description:</i> The bucket you tried to create already exists, and you own
- * it. Amazon S3 returns this error in all AWS Regions except in the North Virginia
- * Region. For legacy compatibility, if you re-create an existing bucket that you
- * already own in the North Virginia Region, Amazon S3 returns 200 OK and resets
- * the bucket access control lists (ACLs).</p> </li> <li> <p> <i>Code:</i> 409
- * Conflict (in all Regions except the North Virginia Region) </p> </li> <li> <p>
- * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
- * <i>Code:</i> BucketNotEmpty</p> </li> <li> <p> <i>Description:</i> The bucket
- * you tried to delete is not empty.</p> </li> <li> <p> <i>HTTP Status Code:</i>
- * 409 Conflict</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * <li> <p> <i>Code:</i> BucketAlreadyExists</p> </li> <li> <p> <i>Description:</i>
+ * The requested bucket name is not available. The bucket namespace is shared by
+ * all users of the system. Please select a different name and try again.</p> </li>
+ * <li> <p> <i>HTTP Status Code:</i> 409 Conflict</p> </li> <li> <p> <i>SOAP Fault
+ * Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * BucketAlreadyOwnedByYou</p> </li> <li> <p> <i>Description:</i> The bucket you
+ * tried to create already exists, and you own it. Amazon S3 returns this error in
+ * all Amazon Web Services Regions except in the North Virginia Region. For legacy
+ * compatibility, if you re-create an existing bucket that you already own in the
+ * North Virginia Region, Amazon S3 returns 200 OK and resets the bucket access
+ * control lists (ACLs).</p> </li> <li> <p> <i>Code:</i> 409 Conflict (in all
+ * Regions except the North Virginia Region) </p> </li> <li> <p> <i>SOAP Fault Code
+ * Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * BucketNotEmpty</p> </li> <li> <p> <i>Description:</i> The bucket you tried to
+ * delete is not empty.</p> </li> <li> <p> <i>HTTP Status Code:</i> 409
+ * Conflict</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
* </ul> </li> <li> <ul> <li> <p> <i>Code:</i> CredentialsNotSupported</p> </li>
* <li> <p> <i>Description:</i> This request does not support credentials.</p>
* </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p>
@@ -2722,33 +2751,34 @@ namespace Model
* again.</p> </li> <li> <p> <i>HTTP Status Code:</i> 500 Internal Server Error</p>
* </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Server</p> </li> </ul> </li> <li>
* <ul> <li> <p> <i>Code:</i> InvalidAccessKeyId</p> </li> <li> <p>
- * <i>Description:</i> The AWS access key ID you provided does not exist in our
- * records.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li>
- * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> InvalidAddressingHeader</p> </li> <li> <p>
- * <i>Description:</i> You must specify the Anonymous role.</p> </li> <li> <p>
- * <i>HTTP Status Code:</i> N/A</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i>
- * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidArgument</p>
- * </li> <li> <p> <i>Description:</i> Invalid Argument</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
- * Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidBucketName</p> </li> <li> <p> <i>Description:</i> The specified bucket is
- * not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
- * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> InvalidBucketState</p> </li> <li> <p> <i>Description:</i>
- * The request is not valid with the current state of the bucket.</p> </li> <li>
- * <p> <i>HTTP Status Code:</i> 409 Conflict</p> </li> <li> <p> <i>SOAP Fault Code
+ * <i>Description:</i> The Amazon Web Services access key ID you provided does not
+ * exist in our records.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403
+ * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidAddressingHeader</p> </li>
+ * <li> <p> <i>Description:</i> You must specify the Anonymous role.</p> </li> <li>
+ * <p> <i>HTTP Status Code:</i> N/A</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidDigest</p> </li> <li> <p> <i>Description:</i> The Content-MD5 you
- * specified is not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
- * Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul>
- * </li> <li> <ul> <li> <p> <i>Code:</i> InvalidEncryptionAlgorithmError</p> </li>
- * <li> <p> <i>Description:</i> The encryption request you specified is not valid.
- * The valid value is AES256.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
- * Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul>
- * </li> <li> <ul> <li> <p> <i>Code:</i> InvalidLocationConstraint</p> </li> <li>
- * <p> <i>Description:</i> The specified location constraint is not valid. For more
- * information about Regions, see <a
+ * InvalidArgument</p> </li> <li> <p> <i>Description:</i> Invalid Argument</p>
+ * </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p>
+ * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
+ * <i>Code:</i> InvalidBucketName</p> </li> <li> <p> <i>Description:</i> The
+ * specified bucket is not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400
+ * Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidBucketState</p> </li> <li>
+ * <p> <i>Description:</i> The request is not valid with the current state of the
+ * bucket.</p> </li> <li> <p> <i>HTTP Status Code:</i> 409 Conflict</p> </li> <li>
+ * <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li>
+ * <p> <i>Code:</i> InvalidDigest</p> </li> <li> <p> <i>Description:</i> The
+ * Content-MD5 you specified is not valid.</p> </li> <li> <p> <i>HTTP Status
+ * Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i>
+ * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * InvalidEncryptionAlgorithmError</p> </li> <li> <p> <i>Description:</i> The
+ * encryption request you specified is not valid. The valid value is AES256.</p>
+ * </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p>
+ * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
+ * <i>Code:</i> InvalidLocationConstraint</p> </li> <li> <p> <i>Description:</i>
+ * The specified location constraint is not valid. For more information about
+ * Regions, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingBucket.html#access-bucket-intro">How
* to Select a Region for Your Buckets</a>. </p> </li> <li> <p> <i>HTTP Status
* Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i>
@@ -2767,11 +2797,11 @@ namespace Model
* number.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
* <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
* <li> <p> <i>Code:</i> InvalidPayer</p> </li> <li> <p> <i>Description:</i> All
- * access to this object has been disabled. Please contact AWS Support for further
- * assistance.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li>
- * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> InvalidPolicyDocument</p> </li> <li> <p>
- * <i>Description:</i> The content of the form does not meet the conditions
+ * access to this object has been disabled. Please contact Amazon Web Services
+ * Support for further assistance.</p> </li> <li> <p> <i>HTTP Status Code:</i> 403
+ * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidPolicyDocument</p> </li> <li>
+ * <p> <i>Description:</i> The content of the form does not meet the conditions
* specified in the policy document.</p> </li> <li> <p> <i>HTTP Status Code:</i>
* 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p>
* </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidRange</p> </li> <li>
@@ -2779,10 +2809,10 @@ namespace Model
* <p> <i>HTTP Status Code:</i> 416 Requested Range Not Satisfiable</p> </li> <li>
* <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li>
* <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p> <i>Description:</i> Please
- * use AWS4-HMAC-SHA256.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
- * Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li> </ul> </li> <li> <ul> <li>
- * <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p> <i>Description:</i> SOAP
- * requests must be made over an HTTPS connection.</p> </li> <li> <p> <i>HTTP
+ * use <code>AWS4-HMAC-SHA256</code>.</p> </li> <li> <p> <i>HTTP Status Code:</i>
+ * 400 Bad Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li> </ul> </li> <li>
+ * <ul> <li> <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p> <i>Description:</i>
+ * SOAP requests must be made over an HTTPS connection.</p> </li> <li> <p> <i>HTTP
* Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
* InvalidRequest</p> </li> <li> <p> <i>Description:</i> Amazon S3 Transfer
@@ -2805,44 +2835,44 @@ namespace Model
* Code:</i> 400 Bad Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li> </ul>
* </li> <li> <ul> <li> <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p>
* <i>Description:</i> Amazon S3 Transfer Acceleration is not supported on this
- * bucket. Contact AWS Support for more information.</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidRequest</p> </li> <li> <p>
- * <i>Description:</i> Amazon S3 Transfer Acceleration cannot be enabled on this
- * bucket. Contact AWS Support for more information.</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>Code:</i> N/A</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidSecurity</p> </li> <li> <p>
- * <i>Description:</i> The provided security credentials are not valid.</p> </li>
- * <li> <p> <i>HTTP Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault
- * Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidSOAPRequest</p> </li> <li> <p> <i>Description:</i> The SOAP request body
- * is invalid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p>
- * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
- * <ul> <li> <p> <i>Code:</i> InvalidStorageClass</p> </li> <li> <p>
- * <i>Description:</i> The storage class you specified is not valid.</p> </li> <li>
- * <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault
- * Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidTargetBucketForLogging</p> </li> <li> <p> <i>Description:</i> The target
- * bucket for logging does not exist, is not owned by you, or does not have the
- * appropriate grants for the log-delivery group. </p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
+ * bucket. Contact Amazon Web Services Support for more information.</p> </li> <li>
+ * <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>Code:</i>
+ * N/A</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidRequest</p>
+ * </li> <li> <p> <i>Description:</i> Amazon S3 Transfer Acceleration cannot be
+ * enabled on this bucket. Contact Amazon Web Services Support for more
+ * information.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p>
+ * </li> <li> <p> <i>Code:</i> N/A</p> </li> </ul> </li> <li> <ul> <li> <p>
+ * <i>Code:</i> InvalidSecurity</p> </li> <li> <p> <i>Description:</i> The provided
+ * security credentials are not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i>
+ * 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidSOAPRequest</p> </li> <li>
+ * <p> <i>Description:</i> The SOAP request body is invalid.</p> </li> <li> <p>
+ * <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * InvalidToken</p> </li> <li> <p> <i>Description:</i> The provided token is
- * malformed or otherwise invalid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400
- * Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> InvalidURI</p> </li> <li> <p>
- * <i>Description:</i> Couldn't parse the specified URI.</p> </li> <li> <p> <i>HTTP
+ * InvalidStorageClass</p> </li> <li> <p> <i>Description:</i> The storage class you
+ * specified is not valid.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
+ * Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul>
+ * </li> <li> <ul> <li> <p> <i>Code:</i> InvalidTargetBucketForLogging</p> </li>
+ * <li> <p> <i>Description:</i> The target bucket for logging does not exist, is
+ * not owned by you, or does not have the appropriate grants for the log-delivery
+ * group. </p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
+ * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
+ * <li> <p> <i>Code:</i> InvalidToken</p> </li> <li> <p> <i>Description:</i> The
+ * provided token is malformed or otherwise invalid.</p> </li> <li> <p> <i>HTTP
* Status Code:</i> 400 Bad Request</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
- * KeyTooLongError</p> </li> <li> <p> <i>Description:</i> Your key is too long.</p>
- * </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li> <p>
- * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
- * <i>Code:</i> MalformedACLError</p> </li> <li> <p> <i>Description:</i> The XML
- * you provided was not well-formed or did not validate against our published
- * schema.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li>
- * <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul>
- * <li> <p> <i>Code:</i> MalformedPOSTRequest </p> </li> <li> <p>
- * <i>Description:</i> The body of your POST request is not well-formed
+ * InvalidURI</p> </li> <li> <p> <i>Description:</i> Couldn't parse the specified
+ * URI.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p> </li> <li>
+ * <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li>
+ * <p> <i>Code:</i> KeyTooLongError</p> </li> <li> <p> <i>Description:</i> Your key
+ * is too long.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad Request</p>
+ * </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li>
+ * <ul> <li> <p> <i>Code:</i> MalformedACLError</p> </li> <li> <p>
+ * <i>Description:</i> The XML you provided was not well-formed or did not validate
+ * against our published schema.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400
+ * Bad Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
+ * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> MalformedPOSTRequest </p> </li> <li>
+ * <p> <i>Description:</i> The body of your POST request is not well-formed
* multipart/form-data.</p> </li> <li> <p> <i>HTTP Status Code:</i> 400 Bad
* Request</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul>
* </li> <li> <ul> <li> <p> <i>Code:</i> MalformedXML</p> </li> <li> <p>
@@ -2919,20 +2949,21 @@ namespace Model
* </ul> </li> <li> <ul> <li> <p> <i>Code:</i> NotSignedUp</p> </li> <li> <p>
* <i>Description:</i> Your account is not signed up for the Amazon S3 service. You
* must sign up before you can use Amazon S3. You can sign up at the following URL:
- * https://aws.amazon.com/s3</p> </li> <li> <p> <i>HTTP Status Code:</i> 403
- * Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> OperationAborted</p> </li> <li> <p>
- * <i>Description:</i> A conflicting conditional action is currently in progress
- * against this resource. Try again.</p> </li> <li> <p> <i>HTTP Status Code:</i>
- * 409 Conflict</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li>
- * </ul> </li> <li> <ul> <li> <p> <i>Code:</i> PermanentRedirect</p> </li> <li> <p>
- * <i>Description:</i> The bucket you are attempting to access must be addressed
- * using the specified endpoint. Send all future requests to this endpoint.</p>
- * </li> <li> <p> <i>HTTP Status Code:</i> 301 Moved Permanently</p> </li> <li> <p>
- * <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p>
- * <i>Code:</i> PreconditionFailed</p> </li> <li> <p> <i>Description:</i> At least
- * one of the preconditions you specified did not hold.</p> </li> <li> <p> <i>HTTP
- * Status Code:</i> 412 Precondition Failed</p> </li> <li> <p> <i>SOAP Fault Code
+ * <a href="http://aws.amazon.com/s3">Amazon S3</a> </p> </li> <li> <p> <i>HTTP
+ * Status Code:</i> 403 Forbidden</p> </li> <li> <p> <i>SOAP Fault Code Prefix:</i>
+ * Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * OperationAborted</p> </li> <li> <p> <i>Description:</i> A conflicting
+ * conditional action is currently in progress against this resource. Try
+ * again.</p> </li> <li> <p> <i>HTTP Status Code:</i> 409 Conflict</p> </li> <li>
+ * <p> <i>SOAP Fault Code Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li>
+ * <p> <i>Code:</i> PermanentRedirect</p> </li> <li> <p> <i>Description:</i> The
+ * bucket you are attempting to access must be addressed using the specified
+ * endpoint. Send all future requests to this endpoint.</p> </li> <li> <p> <i>HTTP
+ * Status Code:</i> 301 Moved Permanently</p> </li> <li> <p> <i>SOAP Fault Code
+ * Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
+ * PreconditionFailed</p> </li> <li> <p> <i>Description:</i> At least one of the
+ * preconditions you specified did not hold.</p> </li> <li> <p> <i>HTTP Status
+ * Code:</i> 412 Precondition Failed</p> </li> <li> <p> <i>SOAP Fault Code
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
* Redirect</p> </li> <li> <p> <i>Description:</i> Temporary redirect.</p> </li>
* <li> <p> <i>HTTP Status Code:</i> 307 Moved Temporarily</p> </li> <li> <p>
@@ -2959,7 +2990,8 @@ namespace Model
* Prefix:</i> Client</p> </li> </ul> </li> <li> <ul> <li> <p> <i>Code:</i>
* SignatureDoesNotMatch</p> </li> <li> <p> <i>Description:</i> The request
* signature we calculated does not match the signature you provided. Check your
- * AWS secret access key and signing method. For more information, see <a
+ * Amazon Web Services secret access key and signing method. For more information,
+ * see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html">REST
* Authentication</a> and <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/SOAPAuthentication.html">SOAP
@@ -3083,16 +3115,16 @@ namespace Model
private:
Aws::String m_key;
- bool m_keyHasBeenSet;
+ bool m_keyHasBeenSet = false;
Aws::String m_versionId;
- bool m_versionIdHasBeenSet;
+ bool m_versionIdHasBeenSet = false;
Aws::String m_code;
- bool m_codeHasBeenSet;
+ bool m_codeHasBeenSet = false;
Aws::String m_message;
- bool m_messageHasBeenSet;
+ bool m_messageHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ErrorDocument.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ErrorDocument.h
index 114e8b8865..eb35c3438c 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ErrorDocument.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ErrorDocument.h
@@ -27,14 +27,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ErrorDocument">AWS
* API Reference</a></p>
*/
- class AWS_S3_API ErrorDocument
+ class ErrorDocument
{
public:
- ErrorDocument();
- ErrorDocument(const Aws::Utils::Xml::XmlNode& xmlNode);
- ErrorDocument& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ErrorDocument();
+ AWS_S3_API ErrorDocument(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ErrorDocument& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -112,7 +112,7 @@ namespace Model
private:
Aws::String m_key;
- bool m_keyHasBeenSet;
+ bool m_keyHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Event.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Event.h
index 036cc47543..b0c9bbcbd9 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Event.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Event.h
@@ -32,7 +32,17 @@ namespace Model
s3_Replication_OperationFailedReplication,
s3_Replication_OperationNotTracked,
s3_Replication_OperationMissedThreshold,
- s3_Replication_OperationReplicatedAfterThreshold
+ s3_Replication_OperationReplicatedAfterThreshold,
+ s3_ObjectRestore_Delete,
+ s3_LifecycleTransition,
+ s3_IntelligentTiering,
+ s3_ObjectAcl_Put,
+ s3_LifecycleExpiration,
+ s3_LifecycleExpiration_Delete,
+ s3_LifecycleExpiration_DeleteMarkerCreated,
+ s3_ObjectTagging,
+ s3_ObjectTagging_Put,
+ s3_ObjectTagging_Delete
};
namespace EventMapper
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/EventBridgeConfiguration.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/EventBridgeConfiguration.h
new file mode 100644
index 0000000000..023d3a50a6
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/EventBridgeConfiguration.h
@@ -0,0 +1,42 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#pragma once
+#include <aws/s3/S3_EXPORTS.h>
+
+namespace Aws
+{
+namespace Utils
+{
+namespace Xml
+{
+ class XmlNode;
+} // namespace Xml
+} // namespace Utils
+namespace S3
+{
+namespace Model
+{
+
+ /**
+ * <p>A container for specifying the configuration for Amazon
+ * EventBridge.</p><p><h3>See Also:</h3> <a
+ * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/EventBridgeConfiguration">AWS
+ * API Reference</a></p>
+ */
+ class EventBridgeConfiguration
+ {
+ public:
+ AWS_S3_API EventBridgeConfiguration();
+ AWS_S3_API EventBridgeConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API EventBridgeConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+
+ };
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ExistingObjectReplication.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ExistingObjectReplication.h
index 9484083682..152b8d7629 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ExistingObjectReplication.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ExistingObjectReplication.h
@@ -26,19 +26,19 @@ namespace Model
* <p>Optional configuration to replicate existing source bucket objects. For more
* information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-what-is-isnot-replicated.html#existing-object-replication">Replicating
- * Existing Objects</a> in the <i>Amazon S3 Developer Guide</i>. </p><p><h3>See
+ * Existing Objects</a> in the <i>Amazon S3 User Guide</i>. </p><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ExistingObjectReplication">AWS
* API Reference</a></p>
*/
- class AWS_S3_API ExistingObjectReplication
+ class ExistingObjectReplication
{
public:
- ExistingObjectReplication();
- ExistingObjectReplication(const Aws::Utils::Xml::XmlNode& xmlNode);
- ExistingObjectReplication& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ExistingObjectReplication();
+ AWS_S3_API ExistingObjectReplication(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ExistingObjectReplication& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -74,7 +74,7 @@ namespace Model
private:
ExistingObjectReplicationStatus m_status;
- bool m_statusHasBeenSet;
+ bool m_statusHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/FilterRule.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/FilterRule.h
index efbbb66359..e5236cd076 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/FilterRule.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/FilterRule.h
@@ -29,14 +29,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/FilterRule">AWS API
* Reference</a></p>
*/
- class AWS_S3_API FilterRule
+ class FilterRule
{
public:
- FilterRule();
- FilterRule(const Aws::Utils::Xml::XmlNode& xmlNode);
- FilterRule& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API FilterRule();
+ AWS_S3_API FilterRule(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API FilterRule& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -137,10 +137,10 @@ namespace Model
private:
FilterRuleName m_name;
- bool m_nameHasBeenSet;
+ bool m_nameHasBeenSet = false;
Aws::String m_value;
- bool m_valueHasBeenSet;
+ bool m_valueHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAccelerateConfigurationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAccelerateConfigurationRequest.h
index 24523b85d8..146941b445 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAccelerateConfigurationRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAccelerateConfigurationRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API GetBucketAccelerateConfigurationRequest : public S3Request
+ class GetBucketAccelerateConfigurationRequest : public S3Request
{
public:
- GetBucketAccelerateConfigurationRequest();
+ AWS_S3_API GetBucketAccelerateConfigurationRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,12 +34,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "GetBucketAccelerateConfiguration"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the bucket for which the accelerate configuration is
@@ -92,57 +96,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketAccelerateConfigurationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketAccelerateConfigurationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketAccelerateConfigurationRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -189,13 +193,13 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAccelerateConfigurationResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAccelerateConfigurationResult.h
index 7838cbb34d..d866a39f5a 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAccelerateConfigurationResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAccelerateConfigurationResult.h
@@ -24,12 +24,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API GetBucketAccelerateConfigurationResult
+ class GetBucketAccelerateConfigurationResult
{
public:
- GetBucketAccelerateConfigurationResult();
- GetBucketAccelerateConfigurationResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- GetBucketAccelerateConfigurationResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetBucketAccelerateConfigurationResult();
+ AWS_S3_API GetBucketAccelerateConfigurationResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetBucketAccelerateConfigurationResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAclRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAclRequest.h
index c4c03d2d4f..7f89407726 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAclRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAclRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API GetBucketAclRequest : public S3Request
+ class GetBucketAclRequest : public S3Request
{
public:
- GetBucketAclRequest();
+ AWS_S3_API GetBucketAclRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,12 +34,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "GetBucketAcl"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>Specifies the S3 bucket whose ACL is being requested.</p>
@@ -84,57 +88,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketAclRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketAclRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketAclRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -181,13 +185,13 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAclResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAclResult.h
index dc3723c89c..54b6246913 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAclResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAclResult.h
@@ -26,12 +26,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API GetBucketAclResult
+ class GetBucketAclResult
{
public:
- GetBucketAclResult();
- GetBucketAclResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- GetBucketAclResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetBucketAclResult();
+ AWS_S3_API GetBucketAclResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetBucketAclResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAnalyticsConfigurationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAnalyticsConfigurationRequest.h
index 559bb22660..779aa8a272 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAnalyticsConfigurationRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAnalyticsConfigurationRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API GetBucketAnalyticsConfigurationRequest : public S3Request
+ class GetBucketAnalyticsConfigurationRequest : public S3Request
{
public:
- GetBucketAnalyticsConfigurationRequest();
+ AWS_S3_API GetBucketAnalyticsConfigurationRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,12 +34,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "GetBucketAnalyticsConfiguration"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the bucket from which an analytics configuration is
@@ -133,57 +137,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketAnalyticsConfigurationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketAnalyticsConfigurationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketAnalyticsConfigurationRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -230,16 +234,16 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_id;
- bool m_idHasBeenSet;
+ bool m_idHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAnalyticsConfigurationResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAnalyticsConfigurationResult.h
index d0847a1458..a6846be102 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAnalyticsConfigurationResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketAnalyticsConfigurationResult.h
@@ -24,12 +24,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API GetBucketAnalyticsConfigurationResult
+ class GetBucketAnalyticsConfigurationResult
{
public:
- GetBucketAnalyticsConfigurationResult();
- GetBucketAnalyticsConfigurationResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- GetBucketAnalyticsConfigurationResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetBucketAnalyticsConfigurationResult();
+ AWS_S3_API GetBucketAnalyticsConfigurationResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetBucketAnalyticsConfigurationResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketCorsRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketCorsRequest.h
index 3e9b8cd66f..05a5bc1e9b 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketCorsRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketCorsRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API GetBucketCorsRequest : public S3Request
+ class GetBucketCorsRequest : public S3Request
{
public:
- GetBucketCorsRequest();
+ AWS_S3_API GetBucketCorsRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,12 +34,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "GetBucketCors"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The bucket name for which to get the cors configuration.</p>
@@ -84,57 +88,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketCorsRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketCorsRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketCorsRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -181,13 +185,13 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketCorsResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketCorsResult.h
index 8e0e34069f..2b40f60a0b 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketCorsResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketCorsResult.h
@@ -25,12 +25,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API GetBucketCorsResult
+ class GetBucketCorsResult
{
public:
- GetBucketCorsResult();
- GetBucketCorsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- GetBucketCorsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetBucketCorsResult();
+ AWS_S3_API GetBucketCorsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetBucketCorsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketEncryptionRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketEncryptionRequest.h
index 1bb5bfd2eb..f985c90ce5 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketEncryptionRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketEncryptionRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API GetBucketEncryptionRequest : public S3Request
+ class GetBucketEncryptionRequest : public S3Request
{
public:
- GetBucketEncryptionRequest();
+ AWS_S3_API GetBucketEncryptionRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,12 +34,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "GetBucketEncryption"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the bucket from which the server-side encryption configuration is
@@ -92,57 +96,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketEncryptionRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketEncryptionRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketEncryptionRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -189,13 +193,13 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketEncryptionResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketEncryptionResult.h
index deab65dbd4..758bd3af9f 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketEncryptionResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketEncryptionResult.h
@@ -24,12 +24,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API GetBucketEncryptionResult
+ class GetBucketEncryptionResult
{
public:
- GetBucketEncryptionResult();
- GetBucketEncryptionResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- GetBucketEncryptionResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetBucketEncryptionResult();
+ AWS_S3_API GetBucketEncryptionResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetBucketEncryptionResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketIntelligentTieringConfigurationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketIntelligentTieringConfigurationRequest.h
index ddba23557e..951cefa202 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketIntelligentTieringConfigurationRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketIntelligentTieringConfigurationRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API GetBucketIntelligentTieringConfigurationRequest : public S3Request
+ class GetBucketIntelligentTieringConfigurationRequest : public S3Request
{
public:
- GetBucketIntelligentTieringConfigurationRequest();
+ AWS_S3_API GetBucketIntelligentTieringConfigurationRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,10 +34,14 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "GetBucketIntelligentTieringConfiguration"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the Amazon S3 bucket whose configuration you want to modify or
@@ -171,13 +175,13 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_id;
- bool m_idHasBeenSet;
+ bool m_idHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketIntelligentTieringConfigurationResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketIntelligentTieringConfigurationResult.h
index a039bb60be..8965f54347 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketIntelligentTieringConfigurationResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketIntelligentTieringConfigurationResult.h
@@ -24,12 +24,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API GetBucketIntelligentTieringConfigurationResult
+ class GetBucketIntelligentTieringConfigurationResult
{
public:
- GetBucketIntelligentTieringConfigurationResult();
- GetBucketIntelligentTieringConfigurationResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- GetBucketIntelligentTieringConfigurationResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetBucketIntelligentTieringConfigurationResult();
+ AWS_S3_API GetBucketIntelligentTieringConfigurationResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetBucketIntelligentTieringConfigurationResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketInventoryConfigurationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketInventoryConfigurationRequest.h
index 6bbac67627..41648d1c70 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketInventoryConfigurationRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketInventoryConfigurationRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API GetBucketInventoryConfigurationRequest : public S3Request
+ class GetBucketInventoryConfigurationRequest : public S3Request
{
public:
- GetBucketInventoryConfigurationRequest();
+ AWS_S3_API GetBucketInventoryConfigurationRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,12 +34,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "GetBucketInventoryConfiguration"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the bucket containing the inventory configuration to
@@ -133,57 +137,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketInventoryConfigurationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketInventoryConfigurationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketInventoryConfigurationRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -230,16 +234,16 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_id;
- bool m_idHasBeenSet;
+ bool m_idHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketInventoryConfigurationResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketInventoryConfigurationResult.h
index 034c56c8ef..21c188282f 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketInventoryConfigurationResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketInventoryConfigurationResult.h
@@ -24,12 +24,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API GetBucketInventoryConfigurationResult
+ class GetBucketInventoryConfigurationResult
{
public:
- GetBucketInventoryConfigurationResult();
- GetBucketInventoryConfigurationResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- GetBucketInventoryConfigurationResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetBucketInventoryConfigurationResult();
+ AWS_S3_API GetBucketInventoryConfigurationResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetBucketInventoryConfigurationResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLifecycleConfigurationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLifecycleConfigurationRequest.h
index b26b05c742..be9ec90e32 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLifecycleConfigurationRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLifecycleConfigurationRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API GetBucketLifecycleConfigurationRequest : public S3Request
+ class GetBucketLifecycleConfigurationRequest : public S3Request
{
public:
- GetBucketLifecycleConfigurationRequest();
+ AWS_S3_API GetBucketLifecycleConfigurationRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,12 +34,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "GetBucketLifecycleConfiguration"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the bucket for which to get the lifecycle information.</p>
@@ -84,57 +88,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketLifecycleConfigurationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketLifecycleConfigurationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketLifecycleConfigurationRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -181,13 +185,13 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLifecycleConfigurationResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLifecycleConfigurationResult.h
index c04c22a758..ffeab90760 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLifecycleConfigurationResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLifecycleConfigurationResult.h
@@ -25,12 +25,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API GetBucketLifecycleConfigurationResult
+ class GetBucketLifecycleConfigurationResult
{
public:
- GetBucketLifecycleConfigurationResult();
- GetBucketLifecycleConfigurationResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- GetBucketLifecycleConfigurationResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetBucketLifecycleConfigurationResult();
+ AWS_S3_API GetBucketLifecycleConfigurationResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetBucketLifecycleConfigurationResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLocationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLocationRequest.h
index fa4aed4020..74cd31e044 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLocationRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLocationRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API GetBucketLocationRequest : public S3Request
+ class GetBucketLocationRequest : public S3Request
{
public:
- GetBucketLocationRequest();
+ AWS_S3_API GetBucketLocationRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,12 +34,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "GetBucketLocation"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the bucket for which to get the location.</p>
@@ -84,57 +88,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketLocationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketLocationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketLocationRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -181,13 +185,13 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLocationResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLocationResult.h
index 4f777648cc..9c203932ca 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLocationResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLocationResult.h
@@ -24,12 +24,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API GetBucketLocationResult
+ class GetBucketLocationResult
{
public:
- GetBucketLocationResult();
- GetBucketLocationResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- GetBucketLocationResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetBucketLocationResult();
+ AWS_S3_API GetBucketLocationResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetBucketLocationResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLoggingRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLoggingRequest.h
index 833a4534b1..0193cad7ba 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLoggingRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLoggingRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API GetBucketLoggingRequest : public S3Request
+ class GetBucketLoggingRequest : public S3Request
{
public:
- GetBucketLoggingRequest();
+ AWS_S3_API GetBucketLoggingRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,12 +34,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "GetBucketLogging"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The bucket name for which to get the logging information.</p>
@@ -84,57 +88,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketLoggingRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketLoggingRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketLoggingRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -181,13 +185,13 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLoggingResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLoggingResult.h
index 1495a54ba4..88a9ea7aac 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLoggingResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketLoggingResult.h
@@ -24,12 +24,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API GetBucketLoggingResult
+ class GetBucketLoggingResult
{
public:
- GetBucketLoggingResult();
- GetBucketLoggingResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- GetBucketLoggingResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetBucketLoggingResult();
+ AWS_S3_API GetBucketLoggingResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetBucketLoggingResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketMetricsConfigurationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketMetricsConfigurationRequest.h
index dd345e42d2..1ab4cdcabf 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketMetricsConfigurationRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketMetricsConfigurationRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API GetBucketMetricsConfigurationRequest : public S3Request
+ class GetBucketMetricsConfigurationRequest : public S3Request
{
public:
- GetBucketMetricsConfigurationRequest();
+ AWS_S3_API GetBucketMetricsConfigurationRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,12 +34,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "GetBucketMetricsConfiguration"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the bucket containing the metrics configuration to retrieve.</p>
@@ -125,57 +129,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketMetricsConfigurationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketMetricsConfigurationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketMetricsConfigurationRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -222,16 +226,16 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_id;
- bool m_idHasBeenSet;
+ bool m_idHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketMetricsConfigurationResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketMetricsConfigurationResult.h
index bb60e97dbf..6bc09c0022 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketMetricsConfigurationResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketMetricsConfigurationResult.h
@@ -24,12 +24,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API GetBucketMetricsConfigurationResult
+ class GetBucketMetricsConfigurationResult
{
public:
- GetBucketMetricsConfigurationResult();
- GetBucketMetricsConfigurationResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- GetBucketMetricsConfigurationResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetBucketMetricsConfigurationResult();
+ AWS_S3_API GetBucketMetricsConfigurationResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetBucketMetricsConfigurationResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketNotificationConfigurationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketNotificationConfigurationRequest.h
index 2a191d8f4c..ab6d442b5f 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketNotificationConfigurationRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketNotificationConfigurationRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API GetBucketNotificationConfigurationRequest : public S3Request
+ class GetBucketNotificationConfigurationRequest : public S3Request
{
public:
- GetBucketNotificationConfigurationRequest();
+ AWS_S3_API GetBucketNotificationConfigurationRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,12 +34,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "GetBucketNotificationConfiguration"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the bucket for which to get the notification configuration.</p>
@@ -84,57 +88,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketNotificationConfigurationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketNotificationConfigurationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketNotificationConfigurationRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -181,13 +185,13 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketNotificationConfigurationResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketNotificationConfigurationResult.h
index a8fe0671ca..49673d0e44 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketNotificationConfigurationResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketNotificationConfigurationResult.h
@@ -6,6 +6,7 @@
#pragma once
#include <aws/s3/S3_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
+#include <aws/s3/model/EventBridgeConfiguration.h>
#include <aws/s3/model/TopicConfiguration.h>
#include <aws/s3/model/QueueConfiguration.h>
#include <aws/s3/model/LambdaFunctionConfiguration.h>
@@ -34,12 +35,12 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/NotificationConfiguration">AWS
* API Reference</a></p>
*/
- class AWS_S3_API GetBucketNotificationConfigurationResult
+ class GetBucketNotificationConfigurationResult
{
public:
- GetBucketNotificationConfigurationResult();
- GetBucketNotificationConfigurationResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- GetBucketNotificationConfigurationResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetBucketNotificationConfigurationResult();
+ AWS_S3_API GetBucketNotificationConfigurationResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetBucketNotificationConfigurationResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
@@ -129,47 +130,73 @@ namespace Model
/**
- * <p>Describes the AWS Lambda functions to invoke and the events for which to
- * invoke them.</p>
+ * <p>Describes the Lambda functions to invoke and the events for which to invoke
+ * them.</p>
*/
inline const Aws::Vector<LambdaFunctionConfiguration>& GetLambdaFunctionConfigurations() const{ return m_lambdaFunctionConfigurations; }
/**
- * <p>Describes the AWS Lambda functions to invoke and the events for which to
- * invoke them.</p>
+ * <p>Describes the Lambda functions to invoke and the events for which to invoke
+ * them.</p>
*/
inline void SetLambdaFunctionConfigurations(const Aws::Vector<LambdaFunctionConfiguration>& value) { m_lambdaFunctionConfigurations = value; }
/**
- * <p>Describes the AWS Lambda functions to invoke and the events for which to
- * invoke them.</p>
+ * <p>Describes the Lambda functions to invoke and the events for which to invoke
+ * them.</p>
*/
inline void SetLambdaFunctionConfigurations(Aws::Vector<LambdaFunctionConfiguration>&& value) { m_lambdaFunctionConfigurations = std::move(value); }
/**
- * <p>Describes the AWS Lambda functions to invoke and the events for which to
- * invoke them.</p>
+ * <p>Describes the Lambda functions to invoke and the events for which to invoke
+ * them.</p>
*/
inline GetBucketNotificationConfigurationResult& WithLambdaFunctionConfigurations(const Aws::Vector<LambdaFunctionConfiguration>& value) { SetLambdaFunctionConfigurations(value); return *this;}
/**
- * <p>Describes the AWS Lambda functions to invoke and the events for which to
- * invoke them.</p>
+ * <p>Describes the Lambda functions to invoke and the events for which to invoke
+ * them.</p>
*/
inline GetBucketNotificationConfigurationResult& WithLambdaFunctionConfigurations(Aws::Vector<LambdaFunctionConfiguration>&& value) { SetLambdaFunctionConfigurations(std::move(value)); return *this;}
/**
- * <p>Describes the AWS Lambda functions to invoke and the events for which to
- * invoke them.</p>
+ * <p>Describes the Lambda functions to invoke and the events for which to invoke
+ * them.</p>
*/
inline GetBucketNotificationConfigurationResult& AddLambdaFunctionConfigurations(const LambdaFunctionConfiguration& value) { m_lambdaFunctionConfigurations.push_back(value); return *this; }
/**
- * <p>Describes the AWS Lambda functions to invoke and the events for which to
- * invoke them.</p>
+ * <p>Describes the Lambda functions to invoke and the events for which to invoke
+ * them.</p>
*/
inline GetBucketNotificationConfigurationResult& AddLambdaFunctionConfigurations(LambdaFunctionConfiguration&& value) { m_lambdaFunctionConfigurations.push_back(std::move(value)); return *this; }
+
+ /**
+ * <p>Enables delivery of events to Amazon EventBridge.</p>
+ */
+ inline const EventBridgeConfiguration& GetEventBridgeConfiguration() const{ return m_eventBridgeConfiguration; }
+
+ /**
+ * <p>Enables delivery of events to Amazon EventBridge.</p>
+ */
+ inline void SetEventBridgeConfiguration(const EventBridgeConfiguration& value) { m_eventBridgeConfiguration = value; }
+
+ /**
+ * <p>Enables delivery of events to Amazon EventBridge.</p>
+ */
+ inline void SetEventBridgeConfiguration(EventBridgeConfiguration&& value) { m_eventBridgeConfiguration = std::move(value); }
+
+ /**
+ * <p>Enables delivery of events to Amazon EventBridge.</p>
+ */
+ inline GetBucketNotificationConfigurationResult& WithEventBridgeConfiguration(const EventBridgeConfiguration& value) { SetEventBridgeConfiguration(value); return *this;}
+
+ /**
+ * <p>Enables delivery of events to Amazon EventBridge.</p>
+ */
+ inline GetBucketNotificationConfigurationResult& WithEventBridgeConfiguration(EventBridgeConfiguration&& value) { SetEventBridgeConfiguration(std::move(value)); return *this;}
+
private:
Aws::Vector<TopicConfiguration> m_topicConfigurations;
@@ -177,6 +204,8 @@ namespace Model
Aws::Vector<QueueConfiguration> m_queueConfigurations;
Aws::Vector<LambdaFunctionConfiguration> m_lambdaFunctionConfigurations;
+
+ EventBridgeConfiguration m_eventBridgeConfiguration;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketOwnershipControlsRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketOwnershipControlsRequest.h
index 37f8628125..a9355e3861 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketOwnershipControlsRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketOwnershipControlsRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API GetBucketOwnershipControlsRequest : public S3Request
+ class GetBucketOwnershipControlsRequest : public S3Request
{
public:
- GetBucketOwnershipControlsRequest();
+ AWS_S3_API GetBucketOwnershipControlsRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,12 +34,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "GetBucketOwnershipControls"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the Amazon S3 bucket whose <code>OwnershipControls</code> you
@@ -92,57 +96,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketOwnershipControlsRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketOwnershipControlsRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketOwnershipControlsRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -189,13 +193,13 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketOwnershipControlsResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketOwnershipControlsResult.h
index 9c28367889..b49e907ce8 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketOwnershipControlsResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketOwnershipControlsResult.h
@@ -24,41 +24,46 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API GetBucketOwnershipControlsResult
+ class GetBucketOwnershipControlsResult
{
public:
- GetBucketOwnershipControlsResult();
- GetBucketOwnershipControlsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- GetBucketOwnershipControlsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetBucketOwnershipControlsResult();
+ AWS_S3_API GetBucketOwnershipControlsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetBucketOwnershipControlsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
- * <p>The <code>OwnershipControls</code> (BucketOwnerPreferred or ObjectWriter)
- * currently in effect for this Amazon S3 bucket.</p>
+ * <p>The <code>OwnershipControls</code> (BucketOwnerEnforced,
+ * BucketOwnerPreferred, or ObjectWriter) currently in effect for this Amazon S3
+ * bucket.</p>
*/
inline const OwnershipControls& GetOwnershipControls() const{ return m_ownershipControls; }
/**
- * <p>The <code>OwnershipControls</code> (BucketOwnerPreferred or ObjectWriter)
- * currently in effect for this Amazon S3 bucket.</p>
+ * <p>The <code>OwnershipControls</code> (BucketOwnerEnforced,
+ * BucketOwnerPreferred, or ObjectWriter) currently in effect for this Amazon S3
+ * bucket.</p>
*/
inline void SetOwnershipControls(const OwnershipControls& value) { m_ownershipControls = value; }
/**
- * <p>The <code>OwnershipControls</code> (BucketOwnerPreferred or ObjectWriter)
- * currently in effect for this Amazon S3 bucket.</p>
+ * <p>The <code>OwnershipControls</code> (BucketOwnerEnforced,
+ * BucketOwnerPreferred, or ObjectWriter) currently in effect for this Amazon S3
+ * bucket.</p>
*/
inline void SetOwnershipControls(OwnershipControls&& value) { m_ownershipControls = std::move(value); }
/**
- * <p>The <code>OwnershipControls</code> (BucketOwnerPreferred or ObjectWriter)
- * currently in effect for this Amazon S3 bucket.</p>
+ * <p>The <code>OwnershipControls</code> (BucketOwnerEnforced,
+ * BucketOwnerPreferred, or ObjectWriter) currently in effect for this Amazon S3
+ * bucket.</p>
*/
inline GetBucketOwnershipControlsResult& WithOwnershipControls(const OwnershipControls& value) { SetOwnershipControls(value); return *this;}
/**
- * <p>The <code>OwnershipControls</code> (BucketOwnerPreferred or ObjectWriter)
- * currently in effect for this Amazon S3 bucket.</p>
+ * <p>The <code>OwnershipControls</code> (BucketOwnerEnforced,
+ * BucketOwnerPreferred, or ObjectWriter) currently in effect for this Amazon S3
+ * bucket.</p>
*/
inline GetBucketOwnershipControlsResult& WithOwnershipControls(OwnershipControls&& value) { SetOwnershipControls(std::move(value)); return *this;}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketPolicyRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketPolicyRequest.h
index 2f3c3e4b67..37ed5815f1 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketPolicyRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketPolicyRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API GetBucketPolicyRequest : public S3Request
+ class GetBucketPolicyRequest : public S3Request
{
public:
- GetBucketPolicyRequest();
+ AWS_S3_API GetBucketPolicyRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,12 +34,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "GetBucketPolicy"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The bucket name for which to get the bucket policy.</p>
@@ -84,57 +88,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketPolicyRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketPolicyRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketPolicyRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -181,13 +185,13 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketPolicyResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketPolicyResult.h
index 80857238c6..588b178f68 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketPolicyResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketPolicyResult.h
@@ -18,28 +18,28 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API GetBucketPolicyResult
+ class GetBucketPolicyResult
{
public:
- GetBucketPolicyResult();
+ AWS_S3_API GetBucketPolicyResult();
//We have to define these because Microsoft doesn't auto generate them
- GetBucketPolicyResult(GetBucketPolicyResult&&);
- GetBucketPolicyResult& operator=(GetBucketPolicyResult&&);
+ AWS_S3_API GetBucketPolicyResult(GetBucketPolicyResult&&);
+ AWS_S3_API GetBucketPolicyResult& operator=(GetBucketPolicyResult&&);
//we delete these because Microsoft doesn't handle move generation correctly
//and we therefore don't trust them to get it right here either.
GetBucketPolicyResult(const GetBucketPolicyResult&) = delete;
GetBucketPolicyResult& operator=(const GetBucketPolicyResult&) = delete;
- GetBucketPolicyResult(Aws::AmazonWebServiceResult<Aws::Utils::Stream::ResponseStream>&& result);
- GetBucketPolicyResult& operator=(Aws::AmazonWebServiceResult<Aws::Utils::Stream::ResponseStream>&& result);
+ AWS_S3_API GetBucketPolicyResult(Aws::AmazonWebServiceResult<Aws::Utils::Stream::ResponseStream>&& result);
+ AWS_S3_API GetBucketPolicyResult& operator=(Aws::AmazonWebServiceResult<Aws::Utils::Stream::ResponseStream>&& result);
/**
* <p>The bucket policy as a JSON document.</p>
*/
- inline Aws::IOStream& GetPolicy() { return m_policy.GetUnderlyingStream(); }
+ inline Aws::IOStream& GetPolicy() const { return m_policy.GetUnderlyingStream(); }
/**
* <p>The bucket policy as a JSON document.</p>
@@ -48,7 +48,7 @@ namespace Model
private:
- Aws::Utils::Stream::ResponseStream m_policy;
+ Aws::Utils::Stream::ResponseStream m_policy;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketPolicyStatusRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketPolicyStatusRequest.h
index 2afaaf0f9b..b96f3f1949 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketPolicyStatusRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketPolicyStatusRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API GetBucketPolicyStatusRequest : public S3Request
+ class GetBucketPolicyStatusRequest : public S3Request
{
public:
- GetBucketPolicyStatusRequest();
+ AWS_S3_API GetBucketPolicyStatusRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,12 +34,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "GetBucketPolicyStatus"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the Amazon S3 bucket whose policy status you want to
@@ -92,57 +96,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketPolicyStatusRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketPolicyStatusRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketPolicyStatusRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -189,13 +193,13 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketPolicyStatusResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketPolicyStatusResult.h
index d1935f3590..01054239d9 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketPolicyStatusResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketPolicyStatusResult.h
@@ -24,12 +24,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API GetBucketPolicyStatusResult
+ class GetBucketPolicyStatusResult
{
public:
- GetBucketPolicyStatusResult();
- GetBucketPolicyStatusResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- GetBucketPolicyStatusResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetBucketPolicyStatusResult();
+ AWS_S3_API GetBucketPolicyStatusResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetBucketPolicyStatusResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketReplicationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketReplicationRequest.h
index 71aa9f131b..6ea3c4c739 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketReplicationRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketReplicationRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API GetBucketReplicationRequest : public S3Request
+ class GetBucketReplicationRequest : public S3Request
{
public:
- GetBucketReplicationRequest();
+ AWS_S3_API GetBucketReplicationRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,12 +34,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "GetBucketReplication"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The bucket name for which to get the replication information.</p>
@@ -84,57 +88,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketReplicationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketReplicationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketReplicationRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -181,13 +185,13 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketReplicationResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketReplicationResult.h
index ff53188ffd..5ae08fcb62 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketReplicationResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketReplicationResult.h
@@ -24,12 +24,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API GetBucketReplicationResult
+ class GetBucketReplicationResult
{
public:
- GetBucketReplicationResult();
- GetBucketReplicationResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- GetBucketReplicationResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetBucketReplicationResult();
+ AWS_S3_API GetBucketReplicationResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetBucketReplicationResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketRequestPaymentRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketRequestPaymentRequest.h
index 4471b13374..bece65a37b 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketRequestPaymentRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketRequestPaymentRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API GetBucketRequestPaymentRequest : public S3Request
+ class GetBucketRequestPaymentRequest : public S3Request
{
public:
- GetBucketRequestPaymentRequest();
+ AWS_S3_API GetBucketRequestPaymentRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,12 +34,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "GetBucketRequestPayment"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the bucket for which to get the payment request configuration</p>
@@ -84,57 +88,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketRequestPaymentRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketRequestPaymentRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketRequestPaymentRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -181,13 +185,13 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketRequestPaymentResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketRequestPaymentResult.h
index 48b84e3462..71239a74fa 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketRequestPaymentResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketRequestPaymentResult.h
@@ -24,12 +24,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API GetBucketRequestPaymentResult
+ class GetBucketRequestPaymentResult
{
public:
- GetBucketRequestPaymentResult();
- GetBucketRequestPaymentResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- GetBucketRequestPaymentResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetBucketRequestPaymentResult();
+ AWS_S3_API GetBucketRequestPaymentResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetBucketRequestPaymentResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketTaggingRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketTaggingRequest.h
index e660344c3f..2b9e3febb1 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketTaggingRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketTaggingRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API GetBucketTaggingRequest : public S3Request
+ class GetBucketTaggingRequest : public S3Request
{
public:
- GetBucketTaggingRequest();
+ AWS_S3_API GetBucketTaggingRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,12 +34,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "GetBucketTagging"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the bucket for which to get the tagging information.</p>
@@ -84,57 +88,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketTaggingRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketTaggingRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketTaggingRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -181,13 +185,13 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketTaggingResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketTaggingResult.h
index 7555a772b4..2012ef8a58 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketTaggingResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketTaggingResult.h
@@ -25,12 +25,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API GetBucketTaggingResult
+ class GetBucketTaggingResult
{
public:
- GetBucketTaggingResult();
- GetBucketTaggingResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- GetBucketTaggingResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetBucketTaggingResult();
+ AWS_S3_API GetBucketTaggingResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetBucketTaggingResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketVersioningRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketVersioningRequest.h
index 787c5ff90a..c9499fdb70 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketVersioningRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketVersioningRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API GetBucketVersioningRequest : public S3Request
+ class GetBucketVersioningRequest : public S3Request
{
public:
- GetBucketVersioningRequest();
+ AWS_S3_API GetBucketVersioningRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,12 +34,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "GetBucketVersioning"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the bucket for which to get the versioning information.</p>
@@ -84,57 +88,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketVersioningRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketVersioningRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketVersioningRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -181,13 +185,13 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketVersioningResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketVersioningResult.h
index 2e4d770751..955dcbc65c 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketVersioningResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketVersioningResult.h
@@ -25,12 +25,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API GetBucketVersioningResult
+ class GetBucketVersioningResult
{
public:
- GetBucketVersioningResult();
- GetBucketVersioningResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- GetBucketVersioningResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetBucketVersioningResult();
+ AWS_S3_API GetBucketVersioningResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetBucketVersioningResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketWebsiteRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketWebsiteRequest.h
index 6422d3c876..ea6f63838a 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketWebsiteRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketWebsiteRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API GetBucketWebsiteRequest : public S3Request
+ class GetBucketWebsiteRequest : public S3Request
{
public:
- GetBucketWebsiteRequest();
+ AWS_S3_API GetBucketWebsiteRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,12 +34,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "GetBucketWebsite"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The bucket name for which to get the website configuration.</p>
@@ -84,57 +88,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketWebsiteRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketWebsiteRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetBucketWebsiteRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -181,13 +185,13 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketWebsiteResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketWebsiteResult.h
index f5cb5577b5..3750567104 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketWebsiteResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetBucketWebsiteResult.h
@@ -28,12 +28,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API GetBucketWebsiteResult
+ class GetBucketWebsiteResult
{
public:
- GetBucketWebsiteResult();
- GetBucketWebsiteResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- GetBucketWebsiteResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetBucketWebsiteResult();
+ AWS_S3_API GetBucketWebsiteResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetBucketWebsiteResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectAclRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectAclRequest.h
index 412a4ac4fc..b947c61890 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectAclRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectAclRequest.h
@@ -24,10 +24,10 @@ namespace Model
/**
*/
- class AWS_S3_API GetObjectAclRequest : public S3Request
+ class GetObjectAclRequest : public S3Request
{
public:
- GetObjectAclRequest();
+ AWS_S3_API GetObjectAclRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -35,12 +35,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "GetObjectAcl"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The bucket name that contains the object for which to get the ACL
@@ -48,11 +52,11 @@ namespace Model
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const Aws::String& GetBucket() const{ return m_bucket; }
@@ -62,11 +66,11 @@ namespace Model
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; }
@@ -76,11 +80,11 @@ namespace Model
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; }
@@ -90,11 +94,11 @@ namespace Model
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); }
@@ -104,11 +108,11 @@ namespace Model
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); }
@@ -118,11 +122,11 @@ namespace Model
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline GetObjectAclRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;}
@@ -132,11 +136,11 @@ namespace Model
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline GetObjectAclRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;}
@@ -146,11 +150,11 @@ namespace Model
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline GetObjectAclRequest& WithBucket(const char* value) { SetBucket(value); return *this;}
@@ -258,57 +262,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetObjectAclRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetObjectAclRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetObjectAclRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -355,22 +359,22 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_key;
- bool m_keyHasBeenSet;
+ bool m_keyHasBeenSet = false;
Aws::String m_versionId;
- bool m_versionIdHasBeenSet;
+ bool m_versionIdHasBeenSet = false;
RequestPayer m_requestPayer;
- bool m_requestPayerHasBeenSet;
+ bool m_requestPayerHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectAclResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectAclResult.h
index 26f7bae035..d023dc0b11 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectAclResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectAclResult.h
@@ -27,12 +27,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API GetObjectAclResult
+ class GetObjectAclResult
{
public:
- GetObjectAclResult();
- GetObjectAclResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- GetObjectAclResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetObjectAclResult();
+ AWS_S3_API GetObjectAclResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetObjectAclResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectAttributesParts.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectAttributesParts.h
new file mode 100644
index 0000000000..a852e16843
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectAttributesParts.h
@@ -0,0 +1,238 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#pragma once
+#include <aws/s3/S3_EXPORTS.h>
+#include <aws/core/utils/memory/stl/AWSVector.h>
+#include <aws/s3/model/ObjectPart.h>
+#include <utility>
+
+namespace Aws
+{
+namespace Utils
+{
+namespace Xml
+{
+ class XmlNode;
+} // namespace Xml
+} // namespace Utils
+namespace S3
+{
+namespace Model
+{
+
+ /**
+ * <p>A collection of parts associated with a multipart upload.</p><p><h3>See
+ * Also:</h3> <a
+ * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GetObjectAttributesParts">AWS
+ * API Reference</a></p>
+ */
+ class GetObjectAttributesParts
+ {
+ public:
+ AWS_S3_API GetObjectAttributesParts();
+ AWS_S3_API GetObjectAttributesParts(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API GetObjectAttributesParts& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+
+
+ /**
+ * <p>The total number of parts.</p>
+ */
+ inline int GetTotalPartsCount() const{ return m_totalPartsCount; }
+
+ /**
+ * <p>The total number of parts.</p>
+ */
+ inline bool TotalPartsCountHasBeenSet() const { return m_totalPartsCountHasBeenSet; }
+
+ /**
+ * <p>The total number of parts.</p>
+ */
+ inline void SetTotalPartsCount(int value) { m_totalPartsCountHasBeenSet = true; m_totalPartsCount = value; }
+
+ /**
+ * <p>The total number of parts.</p>
+ */
+ inline GetObjectAttributesParts& WithTotalPartsCount(int value) { SetTotalPartsCount(value); return *this;}
+
+
+ /**
+ * <p>The marker for the current part.</p>
+ */
+ inline int GetPartNumberMarker() const{ return m_partNumberMarker; }
+
+ /**
+ * <p>The marker for the current part.</p>
+ */
+ inline bool PartNumberMarkerHasBeenSet() const { return m_partNumberMarkerHasBeenSet; }
+
+ /**
+ * <p>The marker for the current part.</p>
+ */
+ inline void SetPartNumberMarker(int value) { m_partNumberMarkerHasBeenSet = true; m_partNumberMarker = value; }
+
+ /**
+ * <p>The marker for the current part.</p>
+ */
+ inline GetObjectAttributesParts& WithPartNumberMarker(int value) { SetPartNumberMarker(value); return *this;}
+
+
+ /**
+ * <p>When a list is truncated, this element specifies the last part in the list,
+ * as well as the value to use for the <code>PartNumberMarker</code> request
+ * parameter in a subsequent request.</p>
+ */
+ inline int GetNextPartNumberMarker() const{ return m_nextPartNumberMarker; }
+
+ /**
+ * <p>When a list is truncated, this element specifies the last part in the list,
+ * as well as the value to use for the <code>PartNumberMarker</code> request
+ * parameter in a subsequent request.</p>
+ */
+ inline bool NextPartNumberMarkerHasBeenSet() const { return m_nextPartNumberMarkerHasBeenSet; }
+
+ /**
+ * <p>When a list is truncated, this element specifies the last part in the list,
+ * as well as the value to use for the <code>PartNumberMarker</code> request
+ * parameter in a subsequent request.</p>
+ */
+ inline void SetNextPartNumberMarker(int value) { m_nextPartNumberMarkerHasBeenSet = true; m_nextPartNumberMarker = value; }
+
+ /**
+ * <p>When a list is truncated, this element specifies the last part in the list,
+ * as well as the value to use for the <code>PartNumberMarker</code> request
+ * parameter in a subsequent request.</p>
+ */
+ inline GetObjectAttributesParts& WithNextPartNumberMarker(int value) { SetNextPartNumberMarker(value); return *this;}
+
+
+ /**
+ * <p>The maximum number of parts allowed in the response.</p>
+ */
+ inline int GetMaxParts() const{ return m_maxParts; }
+
+ /**
+ * <p>The maximum number of parts allowed in the response.</p>
+ */
+ inline bool MaxPartsHasBeenSet() const { return m_maxPartsHasBeenSet; }
+
+ /**
+ * <p>The maximum number of parts allowed in the response.</p>
+ */
+ inline void SetMaxParts(int value) { m_maxPartsHasBeenSet = true; m_maxParts = value; }
+
+ /**
+ * <p>The maximum number of parts allowed in the response.</p>
+ */
+ inline GetObjectAttributesParts& WithMaxParts(int value) { SetMaxParts(value); return *this;}
+
+
+ /**
+ * <p>Indicates whether the returned list of parts is truncated. A value of
+ * <code>true</code> indicates that the list was truncated. A list can be truncated
+ * if the number of parts exceeds the limit returned in the <code>MaxParts</code>
+ * element.</p>
+ */
+ inline bool GetIsTruncated() const{ return m_isTruncated; }
+
+ /**
+ * <p>Indicates whether the returned list of parts is truncated. A value of
+ * <code>true</code> indicates that the list was truncated. A list can be truncated
+ * if the number of parts exceeds the limit returned in the <code>MaxParts</code>
+ * element.</p>
+ */
+ inline bool IsTruncatedHasBeenSet() const { return m_isTruncatedHasBeenSet; }
+
+ /**
+ * <p>Indicates whether the returned list of parts is truncated. A value of
+ * <code>true</code> indicates that the list was truncated. A list can be truncated
+ * if the number of parts exceeds the limit returned in the <code>MaxParts</code>
+ * element.</p>
+ */
+ inline void SetIsTruncated(bool value) { m_isTruncatedHasBeenSet = true; m_isTruncated = value; }
+
+ /**
+ * <p>Indicates whether the returned list of parts is truncated. A value of
+ * <code>true</code> indicates that the list was truncated. A list can be truncated
+ * if the number of parts exceeds the limit returned in the <code>MaxParts</code>
+ * element.</p>
+ */
+ inline GetObjectAttributesParts& WithIsTruncated(bool value) { SetIsTruncated(value); return *this;}
+
+
+ /**
+ * <p>A container for elements related to a particular part. A response can contain
+ * zero or more <code>Parts</code> elements.</p>
+ */
+ inline const Aws::Vector<ObjectPart>& GetParts() const{ return m_parts; }
+
+ /**
+ * <p>A container for elements related to a particular part. A response can contain
+ * zero or more <code>Parts</code> elements.</p>
+ */
+ inline bool PartsHasBeenSet() const { return m_partsHasBeenSet; }
+
+ /**
+ * <p>A container for elements related to a particular part. A response can contain
+ * zero or more <code>Parts</code> elements.</p>
+ */
+ inline void SetParts(const Aws::Vector<ObjectPart>& value) { m_partsHasBeenSet = true; m_parts = value; }
+
+ /**
+ * <p>A container for elements related to a particular part. A response can contain
+ * zero or more <code>Parts</code> elements.</p>
+ */
+ inline void SetParts(Aws::Vector<ObjectPart>&& value) { m_partsHasBeenSet = true; m_parts = std::move(value); }
+
+ /**
+ * <p>A container for elements related to a particular part. A response can contain
+ * zero or more <code>Parts</code> elements.</p>
+ */
+ inline GetObjectAttributesParts& WithParts(const Aws::Vector<ObjectPart>& value) { SetParts(value); return *this;}
+
+ /**
+ * <p>A container for elements related to a particular part. A response can contain
+ * zero or more <code>Parts</code> elements.</p>
+ */
+ inline GetObjectAttributesParts& WithParts(Aws::Vector<ObjectPart>&& value) { SetParts(std::move(value)); return *this;}
+
+ /**
+ * <p>A container for elements related to a particular part. A response can contain
+ * zero or more <code>Parts</code> elements.</p>
+ */
+ inline GetObjectAttributesParts& AddParts(const ObjectPart& value) { m_partsHasBeenSet = true; m_parts.push_back(value); return *this; }
+
+ /**
+ * <p>A container for elements related to a particular part. A response can contain
+ * zero or more <code>Parts</code> elements.</p>
+ */
+ inline GetObjectAttributesParts& AddParts(ObjectPart&& value) { m_partsHasBeenSet = true; m_parts.push_back(std::move(value)); return *this; }
+
+ private:
+
+ int m_totalPartsCount;
+ bool m_totalPartsCountHasBeenSet = false;
+
+ int m_partNumberMarker;
+ bool m_partNumberMarkerHasBeenSet = false;
+
+ int m_nextPartNumberMarker;
+ bool m_nextPartNumberMarkerHasBeenSet = false;
+
+ int m_maxParts;
+ bool m_maxPartsHasBeenSet = false;
+
+ bool m_isTruncated;
+ bool m_isTruncatedHasBeenSet = false;
+
+ Aws::Vector<ObjectPart> m_parts;
+ bool m_partsHasBeenSet = false;
+ };
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectAttributesRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectAttributesRequest.h
new file mode 100644
index 0000000000..0a55365fe4
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectAttributesRequest.h
@@ -0,0 +1,732 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#pragma once
+#include <aws/s3/S3_EXPORTS.h>
+#include <aws/s3/S3Request.h>
+#include <aws/core/utils/memory/stl/AWSString.h>
+#include <aws/s3/model/RequestPayer.h>
+#include <aws/core/utils/memory/stl/AWSVector.h>
+#include <aws/core/utils/memory/stl/AWSMap.h>
+#include <aws/s3/model/ObjectAttributes.h>
+#include <utility>
+
+namespace Aws
+{
+namespace Http
+{
+ class URI;
+} //namespace Http
+namespace S3
+{
+namespace Model
+{
+
+ /**
+ */
+ class GetObjectAttributesRequest : public S3Request
+ {
+ public:
+ AWS_S3_API GetObjectAttributesRequest();
+
+ // Service request name is the Operation name which will send this request out,
+ // each operation should has unique request name, so that we can get operation's name from this request.
+ // Note: this is not true for response, multiple operations may have the same response name,
+ // so we can not get operation's name from response.
+ inline virtual const char* GetServiceRequestName() const override { return "GetObjectAttributes"; }
+
+ AWS_S3_API Aws::String SerializePayload() const override;
+
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
+
+ /**
+ * <p>The name of the bucket that contains the object.</p> <p>When using this
+ * action with an access point, you must direct requests to the access point
+ * hostname. The access point hostname takes the form
+ * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * action with Amazon S3 on Outposts, you must direct requests to the S3 on
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetBucket() const{ return m_bucket; }
+
+ /**
+ * <p>The name of the bucket that contains the object.</p> <p>When using this
+ * action with an access point, you must direct requests to the access point
+ * hostname. The access point hostname takes the form
+ * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * action with Amazon S3 on Outposts, you must direct requests to the S3 on
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; }
+
+ /**
+ * <p>The name of the bucket that contains the object.</p> <p>When using this
+ * action with an access point, you must direct requests to the access point
+ * hostname. The access point hostname takes the form
+ * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * action with Amazon S3 on Outposts, you must direct requests to the S3 on
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; }
+
+ /**
+ * <p>The name of the bucket that contains the object.</p> <p>When using this
+ * action with an access point, you must direct requests to the access point
+ * hostname. The access point hostname takes the form
+ * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * action with Amazon S3 on Outposts, you must direct requests to the S3 on
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); }
+
+ /**
+ * <p>The name of the bucket that contains the object.</p> <p>When using this
+ * action with an access point, you must direct requests to the access point
+ * hostname. The access point hostname takes the form
+ * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * action with Amazon S3 on Outposts, you must direct requests to the S3 on
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); }
+
+ /**
+ * <p>The name of the bucket that contains the object.</p> <p>When using this
+ * action with an access point, you must direct requests to the access point
+ * hostname. The access point hostname takes the form
+ * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * action with Amazon S3 on Outposts, you must direct requests to the S3 on
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline GetObjectAttributesRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;}
+
+ /**
+ * <p>The name of the bucket that contains the object.</p> <p>When using this
+ * action with an access point, you must direct requests to the access point
+ * hostname. The access point hostname takes the form
+ * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * action with Amazon S3 on Outposts, you must direct requests to the S3 on
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline GetObjectAttributesRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;}
+
+ /**
+ * <p>The name of the bucket that contains the object.</p> <p>When using this
+ * action with an access point, you must direct requests to the access point
+ * hostname. The access point hostname takes the form
+ * <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * action with Amazon S3 on Outposts, you must direct requests to the S3 on
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline GetObjectAttributesRequest& WithBucket(const char* value) { SetBucket(value); return *this;}
+
+
+ /**
+ * <p>The object key.</p>
+ */
+ inline const Aws::String& GetKey() const{ return m_key; }
+
+ /**
+ * <p>The object key.</p>
+ */
+ inline bool KeyHasBeenSet() const { return m_keyHasBeenSet; }
+
+ /**
+ * <p>The object key.</p>
+ */
+ inline void SetKey(const Aws::String& value) { m_keyHasBeenSet = true; m_key = value; }
+
+ /**
+ * <p>The object key.</p>
+ */
+ inline void SetKey(Aws::String&& value) { m_keyHasBeenSet = true; m_key = std::move(value); }
+
+ /**
+ * <p>The object key.</p>
+ */
+ inline void SetKey(const char* value) { m_keyHasBeenSet = true; m_key.assign(value); }
+
+ /**
+ * <p>The object key.</p>
+ */
+ inline GetObjectAttributesRequest& WithKey(const Aws::String& value) { SetKey(value); return *this;}
+
+ /**
+ * <p>The object key.</p>
+ */
+ inline GetObjectAttributesRequest& WithKey(Aws::String&& value) { SetKey(std::move(value)); return *this;}
+
+ /**
+ * <p>The object key.</p>
+ */
+ inline GetObjectAttributesRequest& WithKey(const char* value) { SetKey(value); return *this;}
+
+
+ /**
+ * <p>The version ID used to reference a specific version of the object.</p>
+ */
+ inline const Aws::String& GetVersionId() const{ return m_versionId; }
+
+ /**
+ * <p>The version ID used to reference a specific version of the object.</p>
+ */
+ inline bool VersionIdHasBeenSet() const { return m_versionIdHasBeenSet; }
+
+ /**
+ * <p>The version ID used to reference a specific version of the object.</p>
+ */
+ inline void SetVersionId(const Aws::String& value) { m_versionIdHasBeenSet = true; m_versionId = value; }
+
+ /**
+ * <p>The version ID used to reference a specific version of the object.</p>
+ */
+ inline void SetVersionId(Aws::String&& value) { m_versionIdHasBeenSet = true; m_versionId = std::move(value); }
+
+ /**
+ * <p>The version ID used to reference a specific version of the object.</p>
+ */
+ inline void SetVersionId(const char* value) { m_versionIdHasBeenSet = true; m_versionId.assign(value); }
+
+ /**
+ * <p>The version ID used to reference a specific version of the object.</p>
+ */
+ inline GetObjectAttributesRequest& WithVersionId(const Aws::String& value) { SetVersionId(value); return *this;}
+
+ /**
+ * <p>The version ID used to reference a specific version of the object.</p>
+ */
+ inline GetObjectAttributesRequest& WithVersionId(Aws::String&& value) { SetVersionId(std::move(value)); return *this;}
+
+ /**
+ * <p>The version ID used to reference a specific version of the object.</p>
+ */
+ inline GetObjectAttributesRequest& WithVersionId(const char* value) { SetVersionId(value); return *this;}
+
+
+ /**
+ * <p>Sets the maximum number of parts to return.</p>
+ */
+ inline int GetMaxParts() const{ return m_maxParts; }
+
+ /**
+ * <p>Sets the maximum number of parts to return.</p>
+ */
+ inline bool MaxPartsHasBeenSet() const { return m_maxPartsHasBeenSet; }
+
+ /**
+ * <p>Sets the maximum number of parts to return.</p>
+ */
+ inline void SetMaxParts(int value) { m_maxPartsHasBeenSet = true; m_maxParts = value; }
+
+ /**
+ * <p>Sets the maximum number of parts to return.</p>
+ */
+ inline GetObjectAttributesRequest& WithMaxParts(int value) { SetMaxParts(value); return *this;}
+
+
+ /**
+ * <p>Specifies the part after which listing should begin. Only parts with higher
+ * part numbers will be listed.</p>
+ */
+ inline int GetPartNumberMarker() const{ return m_partNumberMarker; }
+
+ /**
+ * <p>Specifies the part after which listing should begin. Only parts with higher
+ * part numbers will be listed.</p>
+ */
+ inline bool PartNumberMarkerHasBeenSet() const { return m_partNumberMarkerHasBeenSet; }
+
+ /**
+ * <p>Specifies the part after which listing should begin. Only parts with higher
+ * part numbers will be listed.</p>
+ */
+ inline void SetPartNumberMarker(int value) { m_partNumberMarkerHasBeenSet = true; m_partNumberMarker = value; }
+
+ /**
+ * <p>Specifies the part after which listing should begin. Only parts with higher
+ * part numbers will be listed.</p>
+ */
+ inline GetObjectAttributesRequest& WithPartNumberMarker(int value) { SetPartNumberMarker(value); return *this;}
+
+
+ /**
+ * <p>Specifies the algorithm to use when encrypting the object (for example,
+ * AES256).</p>
+ */
+ inline const Aws::String& GetSSECustomerAlgorithm() const{ return m_sSECustomerAlgorithm; }
+
+ /**
+ * <p>Specifies the algorithm to use when encrypting the object (for example,
+ * AES256).</p>
+ */
+ inline bool SSECustomerAlgorithmHasBeenSet() const { return m_sSECustomerAlgorithmHasBeenSet; }
+
+ /**
+ * <p>Specifies the algorithm to use when encrypting the object (for example,
+ * AES256).</p>
+ */
+ inline void SetSSECustomerAlgorithm(const Aws::String& value) { m_sSECustomerAlgorithmHasBeenSet = true; m_sSECustomerAlgorithm = value; }
+
+ /**
+ * <p>Specifies the algorithm to use when encrypting the object (for example,
+ * AES256).</p>
+ */
+ inline void SetSSECustomerAlgorithm(Aws::String&& value) { m_sSECustomerAlgorithmHasBeenSet = true; m_sSECustomerAlgorithm = std::move(value); }
+
+ /**
+ * <p>Specifies the algorithm to use when encrypting the object (for example,
+ * AES256).</p>
+ */
+ inline void SetSSECustomerAlgorithm(const char* value) { m_sSECustomerAlgorithmHasBeenSet = true; m_sSECustomerAlgorithm.assign(value); }
+
+ /**
+ * <p>Specifies the algorithm to use when encrypting the object (for example,
+ * AES256).</p>
+ */
+ inline GetObjectAttributesRequest& WithSSECustomerAlgorithm(const Aws::String& value) { SetSSECustomerAlgorithm(value); return *this;}
+
+ /**
+ * <p>Specifies the algorithm to use when encrypting the object (for example,
+ * AES256).</p>
+ */
+ inline GetObjectAttributesRequest& WithSSECustomerAlgorithm(Aws::String&& value) { SetSSECustomerAlgorithm(std::move(value)); return *this;}
+
+ /**
+ * <p>Specifies the algorithm to use when encrypting the object (for example,
+ * AES256).</p>
+ */
+ inline GetObjectAttributesRequest& WithSSECustomerAlgorithm(const char* value) { SetSSECustomerAlgorithm(value); return *this;}
+
+
+ /**
+ * <p>Specifies the customer-provided encryption key for Amazon S3 to use in
+ * encrypting data. This value is used to store the object and then it is
+ * discarded; Amazon S3 does not store the encryption key. The key must be
+ * appropriate for use with the algorithm specified in the
+ * <code>x-amz-server-side-encryption-customer-algorithm</code> header.</p>
+ */
+ inline const Aws::String& GetSSECustomerKey() const{ return m_sSECustomerKey; }
+
+ /**
+ * <p>Specifies the customer-provided encryption key for Amazon S3 to use in
+ * encrypting data. This value is used to store the object and then it is
+ * discarded; Amazon S3 does not store the encryption key. The key must be
+ * appropriate for use with the algorithm specified in the
+ * <code>x-amz-server-side-encryption-customer-algorithm</code> header.</p>
+ */
+ inline bool SSECustomerKeyHasBeenSet() const { return m_sSECustomerKeyHasBeenSet; }
+
+ /**
+ * <p>Specifies the customer-provided encryption key for Amazon S3 to use in
+ * encrypting data. This value is used to store the object and then it is
+ * discarded; Amazon S3 does not store the encryption key. The key must be
+ * appropriate for use with the algorithm specified in the
+ * <code>x-amz-server-side-encryption-customer-algorithm</code> header.</p>
+ */
+ inline void SetSSECustomerKey(const Aws::String& value) { m_sSECustomerKeyHasBeenSet = true; m_sSECustomerKey = value; }
+
+ /**
+ * <p>Specifies the customer-provided encryption key for Amazon S3 to use in
+ * encrypting data. This value is used to store the object and then it is
+ * discarded; Amazon S3 does not store the encryption key. The key must be
+ * appropriate for use with the algorithm specified in the
+ * <code>x-amz-server-side-encryption-customer-algorithm</code> header.</p>
+ */
+ inline void SetSSECustomerKey(Aws::String&& value) { m_sSECustomerKeyHasBeenSet = true; m_sSECustomerKey = std::move(value); }
+
+ /**
+ * <p>Specifies the customer-provided encryption key for Amazon S3 to use in
+ * encrypting data. This value is used to store the object and then it is
+ * discarded; Amazon S3 does not store the encryption key. The key must be
+ * appropriate for use with the algorithm specified in the
+ * <code>x-amz-server-side-encryption-customer-algorithm</code> header.</p>
+ */
+ inline void SetSSECustomerKey(const char* value) { m_sSECustomerKeyHasBeenSet = true; m_sSECustomerKey.assign(value); }
+
+ /**
+ * <p>Specifies the customer-provided encryption key for Amazon S3 to use in
+ * encrypting data. This value is used to store the object and then it is
+ * discarded; Amazon S3 does not store the encryption key. The key must be
+ * appropriate for use with the algorithm specified in the
+ * <code>x-amz-server-side-encryption-customer-algorithm</code> header.</p>
+ */
+ inline GetObjectAttributesRequest& WithSSECustomerKey(const Aws::String& value) { SetSSECustomerKey(value); return *this;}
+
+ /**
+ * <p>Specifies the customer-provided encryption key for Amazon S3 to use in
+ * encrypting data. This value is used to store the object and then it is
+ * discarded; Amazon S3 does not store the encryption key. The key must be
+ * appropriate for use with the algorithm specified in the
+ * <code>x-amz-server-side-encryption-customer-algorithm</code> header.</p>
+ */
+ inline GetObjectAttributesRequest& WithSSECustomerKey(Aws::String&& value) { SetSSECustomerKey(std::move(value)); return *this;}
+
+ /**
+ * <p>Specifies the customer-provided encryption key for Amazon S3 to use in
+ * encrypting data. This value is used to store the object and then it is
+ * discarded; Amazon S3 does not store the encryption key. The key must be
+ * appropriate for use with the algorithm specified in the
+ * <code>x-amz-server-side-encryption-customer-algorithm</code> header.</p>
+ */
+ inline GetObjectAttributesRequest& WithSSECustomerKey(const char* value) { SetSSECustomerKey(value); return *this;}
+
+
+ /**
+ * <p>Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
+ * Amazon S3 uses this header for a message integrity check to ensure that the
+ * encryption key was transmitted without error.</p>
+ */
+ inline const Aws::String& GetSSECustomerKeyMD5() const{ return m_sSECustomerKeyMD5; }
+
+ /**
+ * <p>Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
+ * Amazon S3 uses this header for a message integrity check to ensure that the
+ * encryption key was transmitted without error.</p>
+ */
+ inline bool SSECustomerKeyMD5HasBeenSet() const { return m_sSECustomerKeyMD5HasBeenSet; }
+
+ /**
+ * <p>Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
+ * Amazon S3 uses this header for a message integrity check to ensure that the
+ * encryption key was transmitted without error.</p>
+ */
+ inline void SetSSECustomerKeyMD5(const Aws::String& value) { m_sSECustomerKeyMD5HasBeenSet = true; m_sSECustomerKeyMD5 = value; }
+
+ /**
+ * <p>Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
+ * Amazon S3 uses this header for a message integrity check to ensure that the
+ * encryption key was transmitted without error.</p>
+ */
+ inline void SetSSECustomerKeyMD5(Aws::String&& value) { m_sSECustomerKeyMD5HasBeenSet = true; m_sSECustomerKeyMD5 = std::move(value); }
+
+ /**
+ * <p>Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
+ * Amazon S3 uses this header for a message integrity check to ensure that the
+ * encryption key was transmitted without error.</p>
+ */
+ inline void SetSSECustomerKeyMD5(const char* value) { m_sSECustomerKeyMD5HasBeenSet = true; m_sSECustomerKeyMD5.assign(value); }
+
+ /**
+ * <p>Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
+ * Amazon S3 uses this header for a message integrity check to ensure that the
+ * encryption key was transmitted without error.</p>
+ */
+ inline GetObjectAttributesRequest& WithSSECustomerKeyMD5(const Aws::String& value) { SetSSECustomerKeyMD5(value); return *this;}
+
+ /**
+ * <p>Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
+ * Amazon S3 uses this header for a message integrity check to ensure that the
+ * encryption key was transmitted without error.</p>
+ */
+ inline GetObjectAttributesRequest& WithSSECustomerKeyMD5(Aws::String&& value) { SetSSECustomerKeyMD5(std::move(value)); return *this;}
+
+ /**
+ * <p>Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
+ * Amazon S3 uses this header for a message integrity check to ensure that the
+ * encryption key was transmitted without error.</p>
+ */
+ inline GetObjectAttributesRequest& WithSSECustomerKeyMD5(const char* value) { SetSSECustomerKeyMD5(value); return *this;}
+
+
+
+ inline const RequestPayer& GetRequestPayer() const{ return m_requestPayer; }
+
+
+ inline bool RequestPayerHasBeenSet() const { return m_requestPayerHasBeenSet; }
+
+
+ inline void SetRequestPayer(const RequestPayer& value) { m_requestPayerHasBeenSet = true; m_requestPayer = value; }
+
+
+ inline void SetRequestPayer(RequestPayer&& value) { m_requestPayerHasBeenSet = true; m_requestPayer = std::move(value); }
+
+
+ inline GetObjectAttributesRequest& WithRequestPayer(const RequestPayer& value) { SetRequestPayer(value); return *this;}
+
+
+ inline GetObjectAttributesRequest& WithRequestPayer(RequestPayer&& value) { SetRequestPayer(std::move(value)); return *this;}
+
+
+ /**
+ * <p>The account ID of the expected bucket owner. If the bucket is owned by a
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
+ */
+ inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
+
+ /**
+ * <p>The account ID of the expected bucket owner. If the bucket is owned by a
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
+ */
+ inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
+
+ /**
+ * <p>The account ID of the expected bucket owner. If the bucket is owned by a
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
+ */
+ inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
+
+ /**
+ * <p>The account ID of the expected bucket owner. If the bucket is owned by a
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
+ */
+ inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
+
+ /**
+ * <p>The account ID of the expected bucket owner. If the bucket is owned by a
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
+ */
+ inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
+
+ /**
+ * <p>The account ID of the expected bucket owner. If the bucket is owned by a
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
+ */
+ inline GetObjectAttributesRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
+
+ /**
+ * <p>The account ID of the expected bucket owner. If the bucket is owned by a
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
+ */
+ inline GetObjectAttributesRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
+
+ /**
+ * <p>The account ID of the expected bucket owner. If the bucket is owned by a
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
+ */
+ inline GetObjectAttributesRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
+
+
+ /**
+ * <p>An XML header that specifies the fields at the root level that you want
+ * returned in the response. Fields that you do not specify are not returned.</p>
+ */
+ inline const Aws::Vector<ObjectAttributes>& GetObjectAttributes() const{ return m_objectAttributes; }
+
+ /**
+ * <p>An XML header that specifies the fields at the root level that you want
+ * returned in the response. Fields that you do not specify are not returned.</p>
+ */
+ inline bool ObjectAttributesHasBeenSet() const { return m_objectAttributesHasBeenSet; }
+
+ /**
+ * <p>An XML header that specifies the fields at the root level that you want
+ * returned in the response. Fields that you do not specify are not returned.</p>
+ */
+ inline void SetObjectAttributes(const Aws::Vector<ObjectAttributes>& value) { m_objectAttributesHasBeenSet = true; m_objectAttributes = value; }
+
+ /**
+ * <p>An XML header that specifies the fields at the root level that you want
+ * returned in the response. Fields that you do not specify are not returned.</p>
+ */
+ inline void SetObjectAttributes(Aws::Vector<ObjectAttributes>&& value) { m_objectAttributesHasBeenSet = true; m_objectAttributes = std::move(value); }
+
+ /**
+ * <p>An XML header that specifies the fields at the root level that you want
+ * returned in the response. Fields that you do not specify are not returned.</p>
+ */
+ inline GetObjectAttributesRequest& WithObjectAttributes(const Aws::Vector<ObjectAttributes>& value) { SetObjectAttributes(value); return *this;}
+
+ /**
+ * <p>An XML header that specifies the fields at the root level that you want
+ * returned in the response. Fields that you do not specify are not returned.</p>
+ */
+ inline GetObjectAttributesRequest& WithObjectAttributes(Aws::Vector<ObjectAttributes>&& value) { SetObjectAttributes(std::move(value)); return *this;}
+
+ /**
+ * <p>An XML header that specifies the fields at the root level that you want
+ * returned in the response. Fields that you do not specify are not returned.</p>
+ */
+ inline GetObjectAttributesRequest& AddObjectAttributes(const ObjectAttributes& value) { m_objectAttributesHasBeenSet = true; m_objectAttributes.push_back(value); return *this; }
+
+ /**
+ * <p>An XML header that specifies the fields at the root level that you want
+ * returned in the response. Fields that you do not specify are not returned.</p>
+ */
+ inline GetObjectAttributesRequest& AddObjectAttributes(ObjectAttributes&& value) { m_objectAttributesHasBeenSet = true; m_objectAttributes.push_back(std::move(value)); return *this; }
+
+
+
+ inline const Aws::Map<Aws::String, Aws::String>& GetCustomizedAccessLogTag() const{ return m_customizedAccessLogTag; }
+
+
+ inline bool CustomizedAccessLogTagHasBeenSet() const { return m_customizedAccessLogTagHasBeenSet; }
+
+
+ inline void SetCustomizedAccessLogTag(const Aws::Map<Aws::String, Aws::String>& value) { m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag = value; }
+
+
+ inline void SetCustomizedAccessLogTag(Aws::Map<Aws::String, Aws::String>&& value) { m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag = std::move(value); }
+
+
+ inline GetObjectAttributesRequest& WithCustomizedAccessLogTag(const Aws::Map<Aws::String, Aws::String>& value) { SetCustomizedAccessLogTag(value); return *this;}
+
+
+ inline GetObjectAttributesRequest& WithCustomizedAccessLogTag(Aws::Map<Aws::String, Aws::String>&& value) { SetCustomizedAccessLogTag(std::move(value)); return *this;}
+
+
+ inline GetObjectAttributesRequest& AddCustomizedAccessLogTag(const Aws::String& key, const Aws::String& value) { m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag.emplace(key, value); return *this; }
+
+
+ inline GetObjectAttributesRequest& AddCustomizedAccessLogTag(Aws::String&& key, const Aws::String& value) { m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag.emplace(std::move(key), value); return *this; }
+
+
+ inline GetObjectAttributesRequest& AddCustomizedAccessLogTag(const Aws::String& key, Aws::String&& value) { m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag.emplace(key, std::move(value)); return *this; }
+
+
+ inline GetObjectAttributesRequest& AddCustomizedAccessLogTag(Aws::String&& key, Aws::String&& value) { m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag.emplace(std::move(key), std::move(value)); return *this; }
+
+
+ inline GetObjectAttributesRequest& AddCustomizedAccessLogTag(const char* key, Aws::String&& value) { m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag.emplace(key, std::move(value)); return *this; }
+
+
+ inline GetObjectAttributesRequest& AddCustomizedAccessLogTag(Aws::String&& key, const char* value) { m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag.emplace(std::move(key), value); return *this; }
+
+
+ inline GetObjectAttributesRequest& AddCustomizedAccessLogTag(const char* key, const char* value) { m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag.emplace(key, value); return *this; }
+
+ private:
+
+ Aws::String m_bucket;
+ bool m_bucketHasBeenSet = false;
+
+ Aws::String m_key;
+ bool m_keyHasBeenSet = false;
+
+ Aws::String m_versionId;
+ bool m_versionIdHasBeenSet = false;
+
+ int m_maxParts;
+ bool m_maxPartsHasBeenSet = false;
+
+ int m_partNumberMarker;
+ bool m_partNumberMarkerHasBeenSet = false;
+
+ Aws::String m_sSECustomerAlgorithm;
+ bool m_sSECustomerAlgorithmHasBeenSet = false;
+
+ Aws::String m_sSECustomerKey;
+ bool m_sSECustomerKeyHasBeenSet = false;
+
+ Aws::String m_sSECustomerKeyMD5;
+ bool m_sSECustomerKeyMD5HasBeenSet = false;
+
+ RequestPayer m_requestPayer;
+ bool m_requestPayerHasBeenSet = false;
+
+ Aws::String m_expectedBucketOwner;
+ bool m_expectedBucketOwnerHasBeenSet = false;
+
+ Aws::Vector<ObjectAttributes> m_objectAttributes;
+ bool m_objectAttributesHasBeenSet = false;
+
+ Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
+ bool m_customizedAccessLogTagHasBeenSet = false;
+ };
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectAttributesResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectAttributesResult.h
new file mode 100644
index 0000000000..5ccfd2a4a3
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectAttributesResult.h
@@ -0,0 +1,319 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#pragma once
+#include <aws/s3/S3_EXPORTS.h>
+#include <aws/core/utils/DateTime.h>
+#include <aws/core/utils/memory/stl/AWSString.h>
+#include <aws/s3/model/RequestCharged.h>
+#include <aws/s3/model/Checksum.h>
+#include <aws/s3/model/GetObjectAttributesParts.h>
+#include <aws/s3/model/StorageClass.h>
+#include <utility>
+
+namespace Aws
+{
+template<typename RESULT_TYPE>
+class AmazonWebServiceResult;
+
+namespace Utils
+{
+namespace Xml
+{
+ class XmlDocument;
+} // namespace Xml
+} // namespace Utils
+namespace S3
+{
+namespace Model
+{
+ class GetObjectAttributesResult
+ {
+ public:
+ AWS_S3_API GetObjectAttributesResult();
+ AWS_S3_API GetObjectAttributesResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetObjectAttributesResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+
+
+ /**
+ * <p>Specifies whether the object retrieved was (<code>true</code>) or was not
+ * (<code>false</code>) a delete marker. If <code>false</code>, this response
+ * header does not appear in the response.</p>
+ */
+ inline bool GetDeleteMarker() const{ return m_deleteMarker; }
+
+ /**
+ * <p>Specifies whether the object retrieved was (<code>true</code>) or was not
+ * (<code>false</code>) a delete marker. If <code>false</code>, this response
+ * header does not appear in the response.</p>
+ */
+ inline void SetDeleteMarker(bool value) { m_deleteMarker = value; }
+
+ /**
+ * <p>Specifies whether the object retrieved was (<code>true</code>) or was not
+ * (<code>false</code>) a delete marker. If <code>false</code>, this response
+ * header does not appear in the response.</p>
+ */
+ inline GetObjectAttributesResult& WithDeleteMarker(bool value) { SetDeleteMarker(value); return *this;}
+
+
+ /**
+ * <p>The creation date of the object.</p>
+ */
+ inline const Aws::Utils::DateTime& GetLastModified() const{ return m_lastModified; }
+
+ /**
+ * <p>The creation date of the object.</p>
+ */
+ inline void SetLastModified(const Aws::Utils::DateTime& value) { m_lastModified = value; }
+
+ /**
+ * <p>The creation date of the object.</p>
+ */
+ inline void SetLastModified(Aws::Utils::DateTime&& value) { m_lastModified = std::move(value); }
+
+ /**
+ * <p>The creation date of the object.</p>
+ */
+ inline GetObjectAttributesResult& WithLastModified(const Aws::Utils::DateTime& value) { SetLastModified(value); return *this;}
+
+ /**
+ * <p>The creation date of the object.</p>
+ */
+ inline GetObjectAttributesResult& WithLastModified(Aws::Utils::DateTime&& value) { SetLastModified(std::move(value)); return *this;}
+
+
+ /**
+ * <p>The version ID of the object.</p>
+ */
+ inline const Aws::String& GetVersionId() const{ return m_versionId; }
+
+ /**
+ * <p>The version ID of the object.</p>
+ */
+ inline void SetVersionId(const Aws::String& value) { m_versionId = value; }
+
+ /**
+ * <p>The version ID of the object.</p>
+ */
+ inline void SetVersionId(Aws::String&& value) { m_versionId = std::move(value); }
+
+ /**
+ * <p>The version ID of the object.</p>
+ */
+ inline void SetVersionId(const char* value) { m_versionId.assign(value); }
+
+ /**
+ * <p>The version ID of the object.</p>
+ */
+ inline GetObjectAttributesResult& WithVersionId(const Aws::String& value) { SetVersionId(value); return *this;}
+
+ /**
+ * <p>The version ID of the object.</p>
+ */
+ inline GetObjectAttributesResult& WithVersionId(Aws::String&& value) { SetVersionId(std::move(value)); return *this;}
+
+ /**
+ * <p>The version ID of the object.</p>
+ */
+ inline GetObjectAttributesResult& WithVersionId(const char* value) { SetVersionId(value); return *this;}
+
+
+
+ inline const RequestCharged& GetRequestCharged() const{ return m_requestCharged; }
+
+
+ inline void SetRequestCharged(const RequestCharged& value) { m_requestCharged = value; }
+
+
+ inline void SetRequestCharged(RequestCharged&& value) { m_requestCharged = std::move(value); }
+
+
+ inline GetObjectAttributesResult& WithRequestCharged(const RequestCharged& value) { SetRequestCharged(value); return *this;}
+
+
+ inline GetObjectAttributesResult& WithRequestCharged(RequestCharged&& value) { SetRequestCharged(std::move(value)); return *this;}
+
+
+ /**
+ * <p>An ETag is an opaque identifier assigned by a web server to a specific
+ * version of a resource found at a URL.</p>
+ */
+ inline const Aws::String& GetETag() const{ return m_eTag; }
+
+ /**
+ * <p>An ETag is an opaque identifier assigned by a web server to a specific
+ * version of a resource found at a URL.</p>
+ */
+ inline void SetETag(const Aws::String& value) { m_eTag = value; }
+
+ /**
+ * <p>An ETag is an opaque identifier assigned by a web server to a specific
+ * version of a resource found at a URL.</p>
+ */
+ inline void SetETag(Aws::String&& value) { m_eTag = std::move(value); }
+
+ /**
+ * <p>An ETag is an opaque identifier assigned by a web server to a specific
+ * version of a resource found at a URL.</p>
+ */
+ inline void SetETag(const char* value) { m_eTag.assign(value); }
+
+ /**
+ * <p>An ETag is an opaque identifier assigned by a web server to a specific
+ * version of a resource found at a URL.</p>
+ */
+ inline GetObjectAttributesResult& WithETag(const Aws::String& value) { SetETag(value); return *this;}
+
+ /**
+ * <p>An ETag is an opaque identifier assigned by a web server to a specific
+ * version of a resource found at a URL.</p>
+ */
+ inline GetObjectAttributesResult& WithETag(Aws::String&& value) { SetETag(std::move(value)); return *this;}
+
+ /**
+ * <p>An ETag is an opaque identifier assigned by a web server to a specific
+ * version of a resource found at a URL.</p>
+ */
+ inline GetObjectAttributesResult& WithETag(const char* value) { SetETag(value); return *this;}
+
+
+ /**
+ * <p>The checksum or digest of the object.</p>
+ */
+ inline const Checksum& GetChecksum() const{ return m_checksum; }
+
+ /**
+ * <p>The checksum or digest of the object.</p>
+ */
+ inline void SetChecksum(const Checksum& value) { m_checksum = value; }
+
+ /**
+ * <p>The checksum or digest of the object.</p>
+ */
+ inline void SetChecksum(Checksum&& value) { m_checksum = std::move(value); }
+
+ /**
+ * <p>The checksum or digest of the object.</p>
+ */
+ inline GetObjectAttributesResult& WithChecksum(const Checksum& value) { SetChecksum(value); return *this;}
+
+ /**
+ * <p>The checksum or digest of the object.</p>
+ */
+ inline GetObjectAttributesResult& WithChecksum(Checksum&& value) { SetChecksum(std::move(value)); return *this;}
+
+
+ /**
+ * <p>A collection of parts associated with a multipart upload.</p>
+ */
+ inline const GetObjectAttributesParts& GetObjectParts() const{ return m_objectParts; }
+
+ /**
+ * <p>A collection of parts associated with a multipart upload.</p>
+ */
+ inline void SetObjectParts(const GetObjectAttributesParts& value) { m_objectParts = value; }
+
+ /**
+ * <p>A collection of parts associated with a multipart upload.</p>
+ */
+ inline void SetObjectParts(GetObjectAttributesParts&& value) { m_objectParts = std::move(value); }
+
+ /**
+ * <p>A collection of parts associated with a multipart upload.</p>
+ */
+ inline GetObjectAttributesResult& WithObjectParts(const GetObjectAttributesParts& value) { SetObjectParts(value); return *this;}
+
+ /**
+ * <p>A collection of parts associated with a multipart upload.</p>
+ */
+ inline GetObjectAttributesResult& WithObjectParts(GetObjectAttributesParts&& value) { SetObjectParts(std::move(value)); return *this;}
+
+
+ /**
+ * <p>Provides the storage class information of the object. Amazon S3 returns this
+ * header for all objects except for S3 Standard storage class objects.</p> <p>For
+ * more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
+ * Classes</a>.</p>
+ */
+ inline const StorageClass& GetStorageClass() const{ return m_storageClass; }
+
+ /**
+ * <p>Provides the storage class information of the object. Amazon S3 returns this
+ * header for all objects except for S3 Standard storage class objects.</p> <p>For
+ * more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
+ * Classes</a>.</p>
+ */
+ inline void SetStorageClass(const StorageClass& value) { m_storageClass = value; }
+
+ /**
+ * <p>Provides the storage class information of the object. Amazon S3 returns this
+ * header for all objects except for S3 Standard storage class objects.</p> <p>For
+ * more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
+ * Classes</a>.</p>
+ */
+ inline void SetStorageClass(StorageClass&& value) { m_storageClass = std::move(value); }
+
+ /**
+ * <p>Provides the storage class information of the object. Amazon S3 returns this
+ * header for all objects except for S3 Standard storage class objects.</p> <p>For
+ * more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
+ * Classes</a>.</p>
+ */
+ inline GetObjectAttributesResult& WithStorageClass(const StorageClass& value) { SetStorageClass(value); return *this;}
+
+ /**
+ * <p>Provides the storage class information of the object. Amazon S3 returns this
+ * header for all objects except for S3 Standard storage class objects.</p> <p>For
+ * more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
+ * Classes</a>.</p>
+ */
+ inline GetObjectAttributesResult& WithStorageClass(StorageClass&& value) { SetStorageClass(std::move(value)); return *this;}
+
+
+ /**
+ * <p>The size of the object in bytes.</p>
+ */
+ inline long long GetObjectSize() const{ return m_objectSize; }
+
+ /**
+ * <p>The size of the object in bytes.</p>
+ */
+ inline void SetObjectSize(long long value) { m_objectSize = value; }
+
+ /**
+ * <p>The size of the object in bytes.</p>
+ */
+ inline GetObjectAttributesResult& WithObjectSize(long long value) { SetObjectSize(value); return *this;}
+
+ private:
+
+ bool m_deleteMarker;
+
+ Aws::Utils::DateTime m_lastModified;
+
+ Aws::String m_versionId;
+
+ RequestCharged m_requestCharged;
+
+ Aws::String m_eTag;
+
+ Checksum m_checksum;
+
+ GetObjectAttributesParts m_objectParts;
+
+ StorageClass m_storageClass;
+
+ long long m_objectSize;
+ };
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectLegalHoldRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectLegalHoldRequest.h
index e9c4940777..a7d3f6c388 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectLegalHoldRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectLegalHoldRequest.h
@@ -24,10 +24,10 @@ namespace Model
/**
*/
- class AWS_S3_API GetObjectLegalHoldRequest : public S3Request
+ class GetObjectLegalHoldRequest : public S3Request
{
public:
- GetObjectLegalHoldRequest();
+ AWS_S3_API GetObjectLegalHoldRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -35,203 +35,207 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "GetObjectLegalHold"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
- * <p>The bucket name containing the object whose Legal Hold status you want to
+ * <p>The bucket name containing the object whose legal hold status you want to
* retrieve. </p> <p>When using this action with an access point, you must direct
* requests to the access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const Aws::String& GetBucket() const{ return m_bucket; }
/**
- * <p>The bucket name containing the object whose Legal Hold status you want to
+ * <p>The bucket name containing the object whose legal hold status you want to
* retrieve. </p> <p>When using this action with an access point, you must direct
* requests to the access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; }
/**
- * <p>The bucket name containing the object whose Legal Hold status you want to
+ * <p>The bucket name containing the object whose legal hold status you want to
* retrieve. </p> <p>When using this action with an access point, you must direct
* requests to the access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; }
/**
- * <p>The bucket name containing the object whose Legal Hold status you want to
+ * <p>The bucket name containing the object whose legal hold status you want to
* retrieve. </p> <p>When using this action with an access point, you must direct
* requests to the access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); }
/**
- * <p>The bucket name containing the object whose Legal Hold status you want to
+ * <p>The bucket name containing the object whose legal hold status you want to
* retrieve. </p> <p>When using this action with an access point, you must direct
* requests to the access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); }
/**
- * <p>The bucket name containing the object whose Legal Hold status you want to
+ * <p>The bucket name containing the object whose legal hold status you want to
* retrieve. </p> <p>When using this action with an access point, you must direct
* requests to the access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline GetObjectLegalHoldRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;}
/**
- * <p>The bucket name containing the object whose Legal Hold status you want to
+ * <p>The bucket name containing the object whose legal hold status you want to
* retrieve. </p> <p>When using this action with an access point, you must direct
* requests to the access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline GetObjectLegalHoldRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;}
/**
- * <p>The bucket name containing the object whose Legal Hold status you want to
+ * <p>The bucket name containing the object whose legal hold status you want to
* retrieve. </p> <p>When using this action with an access point, you must direct
* requests to the access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline GetObjectLegalHoldRequest& WithBucket(const char* value) { SetBucket(value); return *this;}
/**
- * <p>The key name for the object whose Legal Hold status you want to retrieve.</p>
+ * <p>The key name for the object whose legal hold status you want to retrieve.</p>
*/
inline const Aws::String& GetKey() const{ return m_key; }
/**
- * <p>The key name for the object whose Legal Hold status you want to retrieve.</p>
+ * <p>The key name for the object whose legal hold status you want to retrieve.</p>
*/
inline bool KeyHasBeenSet() const { return m_keyHasBeenSet; }
/**
- * <p>The key name for the object whose Legal Hold status you want to retrieve.</p>
+ * <p>The key name for the object whose legal hold status you want to retrieve.</p>
*/
inline void SetKey(const Aws::String& value) { m_keyHasBeenSet = true; m_key = value; }
/**
- * <p>The key name for the object whose Legal Hold status you want to retrieve.</p>
+ * <p>The key name for the object whose legal hold status you want to retrieve.</p>
*/
inline void SetKey(Aws::String&& value) { m_keyHasBeenSet = true; m_key = std::move(value); }
/**
- * <p>The key name for the object whose Legal Hold status you want to retrieve.</p>
+ * <p>The key name for the object whose legal hold status you want to retrieve.</p>
*/
inline void SetKey(const char* value) { m_keyHasBeenSet = true; m_key.assign(value); }
/**
- * <p>The key name for the object whose Legal Hold status you want to retrieve.</p>
+ * <p>The key name for the object whose legal hold status you want to retrieve.</p>
*/
inline GetObjectLegalHoldRequest& WithKey(const Aws::String& value) { SetKey(value); return *this;}
/**
- * <p>The key name for the object whose Legal Hold status you want to retrieve.</p>
+ * <p>The key name for the object whose legal hold status you want to retrieve.</p>
*/
inline GetObjectLegalHoldRequest& WithKey(Aws::String&& value) { SetKey(std::move(value)); return *this;}
/**
- * <p>The key name for the object whose Legal Hold status you want to retrieve.</p>
+ * <p>The key name for the object whose legal hold status you want to retrieve.</p>
*/
inline GetObjectLegalHoldRequest& WithKey(const char* value) { SetKey(value); return *this;}
/**
- * <p>The version ID of the object whose Legal Hold status you want to
+ * <p>The version ID of the object whose legal hold status you want to
* retrieve.</p>
*/
inline const Aws::String& GetVersionId() const{ return m_versionId; }
/**
- * <p>The version ID of the object whose Legal Hold status you want to
+ * <p>The version ID of the object whose legal hold status you want to
* retrieve.</p>
*/
inline bool VersionIdHasBeenSet() const { return m_versionIdHasBeenSet; }
/**
- * <p>The version ID of the object whose Legal Hold status you want to
+ * <p>The version ID of the object whose legal hold status you want to
* retrieve.</p>
*/
inline void SetVersionId(const Aws::String& value) { m_versionIdHasBeenSet = true; m_versionId = value; }
/**
- * <p>The version ID of the object whose Legal Hold status you want to
+ * <p>The version ID of the object whose legal hold status you want to
* retrieve.</p>
*/
inline void SetVersionId(Aws::String&& value) { m_versionIdHasBeenSet = true; m_versionId = std::move(value); }
/**
- * <p>The version ID of the object whose Legal Hold status you want to
+ * <p>The version ID of the object whose legal hold status you want to
* retrieve.</p>
*/
inline void SetVersionId(const char* value) { m_versionIdHasBeenSet = true; m_versionId.assign(value); }
/**
- * <p>The version ID of the object whose Legal Hold status you want to
+ * <p>The version ID of the object whose legal hold status you want to
* retrieve.</p>
*/
inline GetObjectLegalHoldRequest& WithVersionId(const Aws::String& value) { SetVersionId(value); return *this;}
/**
- * <p>The version ID of the object whose Legal Hold status you want to
+ * <p>The version ID of the object whose legal hold status you want to
* retrieve.</p>
*/
inline GetObjectLegalHoldRequest& WithVersionId(Aws::String&& value) { SetVersionId(std::move(value)); return *this;}
/**
- * <p>The version ID of the object whose Legal Hold status you want to
+ * <p>The version ID of the object whose legal hold status you want to
* retrieve.</p>
*/
inline GetObjectLegalHoldRequest& WithVersionId(const char* value) { SetVersionId(value); return *this;}
@@ -258,57 +262,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetObjectLegalHoldRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetObjectLegalHoldRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetObjectLegalHoldRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -355,22 +359,22 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_key;
- bool m_keyHasBeenSet;
+ bool m_keyHasBeenSet = false;
Aws::String m_versionId;
- bool m_versionIdHasBeenSet;
+ bool m_versionIdHasBeenSet = false;
RequestPayer m_requestPayer;
- bool m_requestPayerHasBeenSet;
+ bool m_requestPayerHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectLegalHoldResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectLegalHoldResult.h
index c69ac4c2c4..ce26a4251d 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectLegalHoldResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectLegalHoldResult.h
@@ -24,36 +24,36 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API GetObjectLegalHoldResult
+ class GetObjectLegalHoldResult
{
public:
- GetObjectLegalHoldResult();
- GetObjectLegalHoldResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- GetObjectLegalHoldResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetObjectLegalHoldResult();
+ AWS_S3_API GetObjectLegalHoldResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetObjectLegalHoldResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
- * <p>The current Legal Hold status for the specified object.</p>
+ * <p>The current legal hold status for the specified object.</p>
*/
inline const ObjectLockLegalHold& GetLegalHold() const{ return m_legalHold; }
/**
- * <p>The current Legal Hold status for the specified object.</p>
+ * <p>The current legal hold status for the specified object.</p>
*/
inline void SetLegalHold(const ObjectLockLegalHold& value) { m_legalHold = value; }
/**
- * <p>The current Legal Hold status for the specified object.</p>
+ * <p>The current legal hold status for the specified object.</p>
*/
inline void SetLegalHold(ObjectLockLegalHold&& value) { m_legalHold = std::move(value); }
/**
- * <p>The current Legal Hold status for the specified object.</p>
+ * <p>The current legal hold status for the specified object.</p>
*/
inline GetObjectLegalHoldResult& WithLegalHold(const ObjectLockLegalHold& value) { SetLegalHold(value); return *this;}
/**
- * <p>The current Legal Hold status for the specified object.</p>
+ * <p>The current legal hold status for the specified object.</p>
*/
inline GetObjectLegalHoldResult& WithLegalHold(ObjectLockLegalHold&& value) { SetLegalHold(std::move(value)); return *this;}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectLockConfigurationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectLockConfigurationRequest.h
index d7ac269545..575ec24d05 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectLockConfigurationRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectLockConfigurationRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API GetObjectLockConfigurationRequest : public S3Request
+ class GetObjectLockConfigurationRequest : public S3Request
{
public:
- GetObjectLockConfigurationRequest();
+ AWS_S3_API GetObjectLockConfigurationRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,23 +34,27 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "GetObjectLockConfiguration"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The bucket whose Object Lock configuration you want to retrieve.</p> <p>When
* using this action with an access point, you must direct requests to the access
* point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const Aws::String& GetBucket() const{ return m_bucket; }
@@ -59,11 +63,11 @@ namespace Model
* using this action with an access point, you must direct requests to the access
* point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; }
@@ -72,11 +76,11 @@ namespace Model
* using this action with an access point, you must direct requests to the access
* point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; }
@@ -85,11 +89,11 @@ namespace Model
* using this action with an access point, you must direct requests to the access
* point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); }
@@ -98,11 +102,11 @@ namespace Model
* using this action with an access point, you must direct requests to the access
* point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); }
@@ -111,11 +115,11 @@ namespace Model
* using this action with an access point, you must direct requests to the access
* point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline GetObjectLockConfigurationRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;}
@@ -124,11 +128,11 @@ namespace Model
* using this action with an access point, you must direct requests to the access
* point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline GetObjectLockConfigurationRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;}
@@ -137,68 +141,68 @@ namespace Model
* using this action with an access point, you must direct requests to the access
* point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline GetObjectLockConfigurationRequest& WithBucket(const char* value) { SetBucket(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetObjectLockConfigurationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetObjectLockConfigurationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetObjectLockConfigurationRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -245,13 +249,13 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectLockConfigurationResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectLockConfigurationResult.h
index 8d1a8701ab..32384b6d0a 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectLockConfigurationResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectLockConfigurationResult.h
@@ -24,12 +24,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API GetObjectLockConfigurationResult
+ class GetObjectLockConfigurationResult
{
public:
- GetObjectLockConfigurationResult();
- GetObjectLockConfigurationResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- GetObjectLockConfigurationResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetObjectLockConfigurationResult();
+ AWS_S3_API GetObjectLockConfigurationResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetObjectLockConfigurationResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectRequest.h
index 82ef5b73f7..71a4b9e616 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectRequest.h
@@ -9,6 +9,7 @@
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/DateTime.h>
#include <aws/s3/model/RequestPayer.h>
+#include <aws/s3/model/ChecksumMode.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
#include <utility>
@@ -25,10 +26,10 @@ namespace Model
/**
*/
- class AWS_S3_API GetObjectRequest : public S3Request
+ class GetObjectRequest : public S3Request
{
public:
- GetObjectRequest();
+ AWS_S3_API GetObjectRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -36,31 +37,42 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "GetObject"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API bool ShouldValidateResponseChecksum() const override;
+
+ AWS_S3_API Aws::Vector<Aws::String> GetResponseChecksumAlgorithmNames() const override;
+
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The bucket name containing the object. </p> <p>When using this action with an
* access point, you must direct requests to the access point hostname. The access
* point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
- * action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using an
+ * Object Lambda access point the hostname takes the form
+ * <i>AccessPointName</i>-<i>AccountId</i>.s3-object-lambda.<i>Region</i>.amazonaws.com.</p>
+ * <p>When using this action with Amazon S3 on Outposts, you must direct requests
+ * to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form
+ * <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const Aws::String& GetBucket() const{ return m_bucket; }
@@ -69,19 +81,22 @@ namespace Model
* access point, you must direct requests to the access point hostname. The access
* point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
- * action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using an
+ * Object Lambda access point the hostname takes the form
+ * <i>AccessPointName</i>-<i>AccountId</i>.s3-object-lambda.<i>Region</i>.amazonaws.com.</p>
+ * <p>When using this action with Amazon S3 on Outposts, you must direct requests
+ * to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form
+ * <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; }
@@ -90,19 +105,22 @@ namespace Model
* access point, you must direct requests to the access point hostname. The access
* point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
- * action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using an
+ * Object Lambda access point the hostname takes the form
+ * <i>AccessPointName</i>-<i>AccountId</i>.s3-object-lambda.<i>Region</i>.amazonaws.com.</p>
+ * <p>When using this action with Amazon S3 on Outposts, you must direct requests
+ * to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form
+ * <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; }
@@ -111,19 +129,22 @@ namespace Model
* access point, you must direct requests to the access point hostname. The access
* point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
- * action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using an
+ * Object Lambda access point the hostname takes the form
+ * <i>AccessPointName</i>-<i>AccountId</i>.s3-object-lambda.<i>Region</i>.amazonaws.com.</p>
+ * <p>When using this action with Amazon S3 on Outposts, you must direct requests
+ * to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form
+ * <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); }
@@ -132,19 +153,22 @@ namespace Model
* access point, you must direct requests to the access point hostname. The access
* point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
- * action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using an
+ * Object Lambda access point the hostname takes the form
+ * <i>AccessPointName</i>-<i>AccountId</i>.s3-object-lambda.<i>Region</i>.amazonaws.com.</p>
+ * <p>When using this action with Amazon S3 on Outposts, you must direct requests
+ * to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form
+ * <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); }
@@ -153,19 +177,22 @@ namespace Model
* access point, you must direct requests to the access point hostname. The access
* point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
- * action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using an
+ * Object Lambda access point the hostname takes the form
+ * <i>AccessPointName</i>-<i>AccountId</i>.s3-object-lambda.<i>Region</i>.amazonaws.com.</p>
+ * <p>When using this action with Amazon S3 on Outposts, you must direct requests
+ * to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form
+ * <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline GetObjectRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;}
@@ -174,19 +201,22 @@ namespace Model
* access point, you must direct requests to the access point hostname. The access
* point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
- * action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using an
+ * Object Lambda access point the hostname takes the form
+ * <i>AccessPointName</i>-<i>AccountId</i>.s3-object-lambda.<i>Region</i>.amazonaws.com.</p>
+ * <p>When using this action with Amazon S3 on Outposts, you must direct requests
+ * to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form
+ * <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline GetObjectRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;}
@@ -195,191 +225,194 @@ namespace Model
* access point, you must direct requests to the access point hostname. The access
* point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
- * action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using an
+ * Object Lambda access point the hostname takes the form
+ * <i>AccessPointName</i>-<i>AccountId</i>.s3-object-lambda.<i>Region</i>.amazonaws.com.</p>
+ * <p>When using this action with Amazon S3 on Outposts, you must direct requests
+ * to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form
+ * <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline GetObjectRequest& WithBucket(const char* value) { SetBucket(value); return *this;}
/**
* <p>Return the object only if its entity tag (ETag) is the same as the one
- * specified, otherwise return a 412 (precondition failed).</p>
+ * specified; otherwise, return a 412 (precondition failed) error.</p>
*/
inline const Aws::String& GetIfMatch() const{ return m_ifMatch; }
/**
* <p>Return the object only if its entity tag (ETag) is the same as the one
- * specified, otherwise return a 412 (precondition failed).</p>
+ * specified; otherwise, return a 412 (precondition failed) error.</p>
*/
inline bool IfMatchHasBeenSet() const { return m_ifMatchHasBeenSet; }
/**
* <p>Return the object only if its entity tag (ETag) is the same as the one
- * specified, otherwise return a 412 (precondition failed).</p>
+ * specified; otherwise, return a 412 (precondition failed) error.</p>
*/
inline void SetIfMatch(const Aws::String& value) { m_ifMatchHasBeenSet = true; m_ifMatch = value; }
/**
* <p>Return the object only if its entity tag (ETag) is the same as the one
- * specified, otherwise return a 412 (precondition failed).</p>
+ * specified; otherwise, return a 412 (precondition failed) error.</p>
*/
inline void SetIfMatch(Aws::String&& value) { m_ifMatchHasBeenSet = true; m_ifMatch = std::move(value); }
/**
* <p>Return the object only if its entity tag (ETag) is the same as the one
- * specified, otherwise return a 412 (precondition failed).</p>
+ * specified; otherwise, return a 412 (precondition failed) error.</p>
*/
inline void SetIfMatch(const char* value) { m_ifMatchHasBeenSet = true; m_ifMatch.assign(value); }
/**
* <p>Return the object only if its entity tag (ETag) is the same as the one
- * specified, otherwise return a 412 (precondition failed).</p>
+ * specified; otherwise, return a 412 (precondition failed) error.</p>
*/
inline GetObjectRequest& WithIfMatch(const Aws::String& value) { SetIfMatch(value); return *this;}
/**
* <p>Return the object only if its entity tag (ETag) is the same as the one
- * specified, otherwise return a 412 (precondition failed).</p>
+ * specified; otherwise, return a 412 (precondition failed) error.</p>
*/
inline GetObjectRequest& WithIfMatch(Aws::String&& value) { SetIfMatch(std::move(value)); return *this;}
/**
* <p>Return the object only if its entity tag (ETag) is the same as the one
- * specified, otherwise return a 412 (precondition failed).</p>
+ * specified; otherwise, return a 412 (precondition failed) error.</p>
*/
inline GetObjectRequest& WithIfMatch(const char* value) { SetIfMatch(value); return *this;}
/**
- * <p>Return the object only if it has been modified since the specified time,
- * otherwise return a 304 (not modified).</p>
+ * <p>Return the object only if it has been modified since the specified time;
+ * otherwise, return a 304 (not modified) error.</p>
*/
inline const Aws::Utils::DateTime& GetIfModifiedSince() const{ return m_ifModifiedSince; }
/**
- * <p>Return the object only if it has been modified since the specified time,
- * otherwise return a 304 (not modified).</p>
+ * <p>Return the object only if it has been modified since the specified time;
+ * otherwise, return a 304 (not modified) error.</p>
*/
inline bool IfModifiedSinceHasBeenSet() const { return m_ifModifiedSinceHasBeenSet; }
/**
- * <p>Return the object only if it has been modified since the specified time,
- * otherwise return a 304 (not modified).</p>
+ * <p>Return the object only if it has been modified since the specified time;
+ * otherwise, return a 304 (not modified) error.</p>
*/
inline void SetIfModifiedSince(const Aws::Utils::DateTime& value) { m_ifModifiedSinceHasBeenSet = true; m_ifModifiedSince = value; }
/**
- * <p>Return the object only if it has been modified since the specified time,
- * otherwise return a 304 (not modified).</p>
+ * <p>Return the object only if it has been modified since the specified time;
+ * otherwise, return a 304 (not modified) error.</p>
*/
inline void SetIfModifiedSince(Aws::Utils::DateTime&& value) { m_ifModifiedSinceHasBeenSet = true; m_ifModifiedSince = std::move(value); }
/**
- * <p>Return the object only if it has been modified since the specified time,
- * otherwise return a 304 (not modified).</p>
+ * <p>Return the object only if it has been modified since the specified time;
+ * otherwise, return a 304 (not modified) error.</p>
*/
inline GetObjectRequest& WithIfModifiedSince(const Aws::Utils::DateTime& value) { SetIfModifiedSince(value); return *this;}
/**
- * <p>Return the object only if it has been modified since the specified time,
- * otherwise return a 304 (not modified).</p>
+ * <p>Return the object only if it has been modified since the specified time;
+ * otherwise, return a 304 (not modified) error.</p>
*/
inline GetObjectRequest& WithIfModifiedSince(Aws::Utils::DateTime&& value) { SetIfModifiedSince(std::move(value)); return *this;}
/**
* <p>Return the object only if its entity tag (ETag) is different from the one
- * specified, otherwise return a 304 (not modified).</p>
+ * specified; otherwise, return a 304 (not modified) error.</p>
*/
inline const Aws::String& GetIfNoneMatch() const{ return m_ifNoneMatch; }
/**
* <p>Return the object only if its entity tag (ETag) is different from the one
- * specified, otherwise return a 304 (not modified).</p>
+ * specified; otherwise, return a 304 (not modified) error.</p>
*/
inline bool IfNoneMatchHasBeenSet() const { return m_ifNoneMatchHasBeenSet; }
/**
* <p>Return the object only if its entity tag (ETag) is different from the one
- * specified, otherwise return a 304 (not modified).</p>
+ * specified; otherwise, return a 304 (not modified) error.</p>
*/
inline void SetIfNoneMatch(const Aws::String& value) { m_ifNoneMatchHasBeenSet = true; m_ifNoneMatch = value; }
/**
* <p>Return the object only if its entity tag (ETag) is different from the one
- * specified, otherwise return a 304 (not modified).</p>
+ * specified; otherwise, return a 304 (not modified) error.</p>
*/
inline void SetIfNoneMatch(Aws::String&& value) { m_ifNoneMatchHasBeenSet = true; m_ifNoneMatch = std::move(value); }
/**
* <p>Return the object only if its entity tag (ETag) is different from the one
- * specified, otherwise return a 304 (not modified).</p>
+ * specified; otherwise, return a 304 (not modified) error.</p>
*/
inline void SetIfNoneMatch(const char* value) { m_ifNoneMatchHasBeenSet = true; m_ifNoneMatch.assign(value); }
/**
* <p>Return the object only if its entity tag (ETag) is different from the one
- * specified, otherwise return a 304 (not modified).</p>
+ * specified; otherwise, return a 304 (not modified) error.</p>
*/
inline GetObjectRequest& WithIfNoneMatch(const Aws::String& value) { SetIfNoneMatch(value); return *this;}
/**
* <p>Return the object only if its entity tag (ETag) is different from the one
- * specified, otherwise return a 304 (not modified).</p>
+ * specified; otherwise, return a 304 (not modified) error.</p>
*/
inline GetObjectRequest& WithIfNoneMatch(Aws::String&& value) { SetIfNoneMatch(std::move(value)); return *this;}
/**
* <p>Return the object only if its entity tag (ETag) is different from the one
- * specified, otherwise return a 304 (not modified).</p>
+ * specified; otherwise, return a 304 (not modified) error.</p>
*/
inline GetObjectRequest& WithIfNoneMatch(const char* value) { SetIfNoneMatch(value); return *this;}
/**
- * <p>Return the object only if it has not been modified since the specified time,
- * otherwise return a 412 (precondition failed).</p>
+ * <p>Return the object only if it has not been modified since the specified time;
+ * otherwise, return a 412 (precondition failed) error.</p>
*/
inline const Aws::Utils::DateTime& GetIfUnmodifiedSince() const{ return m_ifUnmodifiedSince; }
/**
- * <p>Return the object only if it has not been modified since the specified time,
- * otherwise return a 412 (precondition failed).</p>
+ * <p>Return the object only if it has not been modified since the specified time;
+ * otherwise, return a 412 (precondition failed) error.</p>
*/
inline bool IfUnmodifiedSinceHasBeenSet() const { return m_ifUnmodifiedSinceHasBeenSet; }
/**
- * <p>Return the object only if it has not been modified since the specified time,
- * otherwise return a 412 (precondition failed).</p>
+ * <p>Return the object only if it has not been modified since the specified time;
+ * otherwise, return a 412 (precondition failed) error.</p>
*/
inline void SetIfUnmodifiedSince(const Aws::Utils::DateTime& value) { m_ifUnmodifiedSinceHasBeenSet = true; m_ifUnmodifiedSince = value; }
/**
- * <p>Return the object only if it has not been modified since the specified time,
- * otherwise return a 412 (precondition failed).</p>
+ * <p>Return the object only if it has not been modified since the specified time;
+ * otherwise, return a 412 (precondition failed) error.</p>
*/
inline void SetIfUnmodifiedSince(Aws::Utils::DateTime&& value) { m_ifUnmodifiedSinceHasBeenSet = true; m_ifUnmodifiedSince = std::move(value); }
/**
- * <p>Return the object only if it has not been modified since the specified time,
- * otherwise return a 412 (precondition failed).</p>
+ * <p>Return the object only if it has not been modified since the specified time;
+ * otherwise, return a 412 (precondition failed) error.</p>
*/
inline GetObjectRequest& WithIfUnmodifiedSince(const Aws::Utils::DateTime& value) { SetIfUnmodifiedSince(value); return *this;}
/**
- * <p>Return the object only if it has not been modified since the specified time,
- * otherwise return a 412 (precondition failed).</p>
+ * <p>Return the object only if it has not been modified since the specified time;
+ * otherwise, return a 412 (precondition failed) error.</p>
*/
inline GetObjectRequest& WithIfUnmodifiedSince(Aws::Utils::DateTime&& value) { SetIfUnmodifiedSince(std::move(value)); return *this;}
@@ -1004,61 +1037,92 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetObjectRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetObjectRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetObjectRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
+ /**
+ * <p>To retrieve the checksum, this mode must be enabled.</p>
+ */
+ inline const ChecksumMode& GetChecksumMode() const{ return m_checksumMode; }
+
+ /**
+ * <p>To retrieve the checksum, this mode must be enabled.</p>
+ */
+ inline bool ChecksumModeHasBeenSet() const { return m_checksumModeHasBeenSet; }
+
+ /**
+ * <p>To retrieve the checksum, this mode must be enabled.</p>
+ */
+ inline void SetChecksumMode(const ChecksumMode& value) { m_checksumModeHasBeenSet = true; m_checksumMode = value; }
+
+ /**
+ * <p>To retrieve the checksum, this mode must be enabled.</p>
+ */
+ inline void SetChecksumMode(ChecksumMode&& value) { m_checksumModeHasBeenSet = true; m_checksumMode = std::move(value); }
+
+ /**
+ * <p>To retrieve the checksum, this mode must be enabled.</p>
+ */
+ inline GetObjectRequest& WithChecksumMode(const ChecksumMode& value) { SetChecksumMode(value); return *this;}
+
+ /**
+ * <p>To retrieve the checksum, this mode must be enabled.</p>
+ */
+ inline GetObjectRequest& WithChecksumMode(ChecksumMode&& value) { SetChecksumMode(std::move(value)); return *this;}
+
+
inline const Aws::Map<Aws::String, Aws::String>& GetCustomizedAccessLogTag() const{ return m_customizedAccessLogTag; }
@@ -1101,67 +1165,70 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_ifMatch;
- bool m_ifMatchHasBeenSet;
+ bool m_ifMatchHasBeenSet = false;
Aws::Utils::DateTime m_ifModifiedSince;
- bool m_ifModifiedSinceHasBeenSet;
+ bool m_ifModifiedSinceHasBeenSet = false;
Aws::String m_ifNoneMatch;
- bool m_ifNoneMatchHasBeenSet;
+ bool m_ifNoneMatchHasBeenSet = false;
Aws::Utils::DateTime m_ifUnmodifiedSince;
- bool m_ifUnmodifiedSinceHasBeenSet;
+ bool m_ifUnmodifiedSinceHasBeenSet = false;
Aws::String m_key;
- bool m_keyHasBeenSet;
+ bool m_keyHasBeenSet = false;
Aws::String m_range;
- bool m_rangeHasBeenSet;
+ bool m_rangeHasBeenSet = false;
Aws::String m_responseCacheControl;
- bool m_responseCacheControlHasBeenSet;
+ bool m_responseCacheControlHasBeenSet = false;
Aws::String m_responseContentDisposition;
- bool m_responseContentDispositionHasBeenSet;
+ bool m_responseContentDispositionHasBeenSet = false;
Aws::String m_responseContentEncoding;
- bool m_responseContentEncodingHasBeenSet;
+ bool m_responseContentEncodingHasBeenSet = false;
Aws::String m_responseContentLanguage;
- bool m_responseContentLanguageHasBeenSet;
+ bool m_responseContentLanguageHasBeenSet = false;
Aws::String m_responseContentType;
- bool m_responseContentTypeHasBeenSet;
+ bool m_responseContentTypeHasBeenSet = false;
Aws::Utils::DateTime m_responseExpires;
- bool m_responseExpiresHasBeenSet;
+ bool m_responseExpiresHasBeenSet = false;
Aws::String m_versionId;
- bool m_versionIdHasBeenSet;
+ bool m_versionIdHasBeenSet = false;
Aws::String m_sSECustomerAlgorithm;
- bool m_sSECustomerAlgorithmHasBeenSet;
+ bool m_sSECustomerAlgorithmHasBeenSet = false;
Aws::String m_sSECustomerKey;
- bool m_sSECustomerKeyHasBeenSet;
+ bool m_sSECustomerKeyHasBeenSet = false;
Aws::String m_sSECustomerKeyMD5;
- bool m_sSECustomerKeyMD5HasBeenSet;
+ bool m_sSECustomerKeyMD5HasBeenSet = false;
RequestPayer m_requestPayer;
- bool m_requestPayerHasBeenSet;
+ bool m_requestPayerHasBeenSet = false;
int m_partNumber;
- bool m_partNumberHasBeenSet;
+ bool m_partNumberHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
+
+ ChecksumMode m_checksumMode;
+ bool m_checksumModeHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectResult.h
index cac0384d29..d19738ba59 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectResult.h
@@ -27,28 +27,28 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API GetObjectResult
+ class GetObjectResult
{
public:
- GetObjectResult();
+ AWS_S3_API GetObjectResult();
//We have to define these because Microsoft doesn't auto generate them
- GetObjectResult(GetObjectResult&&);
- GetObjectResult& operator=(GetObjectResult&&);
+ AWS_S3_API GetObjectResult(GetObjectResult&&);
+ AWS_S3_API GetObjectResult& operator=(GetObjectResult&&);
//we delete these because Microsoft doesn't handle move generation correctly
//and we therefore don't trust them to get it right here either.
GetObjectResult(const GetObjectResult&) = delete;
GetObjectResult& operator=(const GetObjectResult&) = delete;
- GetObjectResult(Aws::AmazonWebServiceResult<Aws::Utils::Stream::ResponseStream>&& result);
- GetObjectResult& operator=(Aws::AmazonWebServiceResult<Aws::Utils::Stream::ResponseStream>&& result);
+ AWS_S3_API GetObjectResult(Aws::AmazonWebServiceResult<Aws::Utils::Stream::ResponseStream>&& result);
+ AWS_S3_API GetObjectResult& operator=(Aws::AmazonWebServiceResult<Aws::Utils::Stream::ResponseStream>&& result);
/**
* <p>Object data.</p>
*/
- inline Aws::IOStream& GetBody() { return m_body.GetUnderlyingStream(); }
+ inline Aws::IOStream& GetBody() const { return m_body.GetUnderlyingStream(); }
/**
* <p>Object data.</p>
@@ -113,57 +113,57 @@ namespace Model
/**
* <p>If the object expiration is configured (see PUT Bucket lifecycle), the
- * response includes this header. It includes the expiry-date and rule-id key-value
- * pairs providing object expiration information. The value of the rule-id is URL
- * encoded.</p>
+ * response includes this header. It includes the <code>expiry-date</code> and
+ * <code>rule-id</code> key-value pairs providing object expiration information.
+ * The value of the <code>rule-id</code> is URL-encoded.</p>
*/
inline const Aws::String& GetExpiration() const{ return m_expiration; }
/**
* <p>If the object expiration is configured (see PUT Bucket lifecycle), the
- * response includes this header. It includes the expiry-date and rule-id key-value
- * pairs providing object expiration information. The value of the rule-id is URL
- * encoded.</p>
+ * response includes this header. It includes the <code>expiry-date</code> and
+ * <code>rule-id</code> key-value pairs providing object expiration information.
+ * The value of the <code>rule-id</code> is URL-encoded.</p>
*/
inline void SetExpiration(const Aws::String& value) { m_expiration = value; }
/**
* <p>If the object expiration is configured (see PUT Bucket lifecycle), the
- * response includes this header. It includes the expiry-date and rule-id key-value
- * pairs providing object expiration information. The value of the rule-id is URL
- * encoded.</p>
+ * response includes this header. It includes the <code>expiry-date</code> and
+ * <code>rule-id</code> key-value pairs providing object expiration information.
+ * The value of the <code>rule-id</code> is URL-encoded.</p>
*/
inline void SetExpiration(Aws::String&& value) { m_expiration = std::move(value); }
/**
* <p>If the object expiration is configured (see PUT Bucket lifecycle), the
- * response includes this header. It includes the expiry-date and rule-id key-value
- * pairs providing object expiration information. The value of the rule-id is URL
- * encoded.</p>
+ * response includes this header. It includes the <code>expiry-date</code> and
+ * <code>rule-id</code> key-value pairs providing object expiration information.
+ * The value of the <code>rule-id</code> is URL-encoded.</p>
*/
inline void SetExpiration(const char* value) { m_expiration.assign(value); }
/**
* <p>If the object expiration is configured (see PUT Bucket lifecycle), the
- * response includes this header. It includes the expiry-date and rule-id key-value
- * pairs providing object expiration information. The value of the rule-id is URL
- * encoded.</p>
+ * response includes this header. It includes the <code>expiry-date</code> and
+ * <code>rule-id</code> key-value pairs providing object expiration information.
+ * The value of the <code>rule-id</code> is URL-encoded.</p>
*/
inline GetObjectResult& WithExpiration(const Aws::String& value) { SetExpiration(value); return *this;}
/**
* <p>If the object expiration is configured (see PUT Bucket lifecycle), the
- * response includes this header. It includes the expiry-date and rule-id key-value
- * pairs providing object expiration information. The value of the rule-id is URL
- * encoded.</p>
+ * response includes this header. It includes the <code>expiry-date</code> and
+ * <code>rule-id</code> key-value pairs providing object expiration information.
+ * The value of the <code>rule-id</code> is URL-encoded.</p>
*/
inline GetObjectResult& WithExpiration(Aws::String&& value) { SetExpiration(std::move(value)); return *this;}
/**
* <p>If the object expiration is configured (see PUT Bucket lifecycle), the
- * response includes this header. It includes the expiry-date and rule-id key-value
- * pairs providing object expiration information. The value of the rule-id is URL
- * encoded.</p>
+ * response includes this header. It includes the <code>expiry-date</code> and
+ * <code>rule-id</code> key-value pairs providing object expiration information.
+ * The value of the <code>rule-id</code> is URL-encoded.</p>
*/
inline GetObjectResult& WithExpiration(const char* value) { SetExpiration(value); return *this;}
@@ -254,49 +254,333 @@ namespace Model
/**
- * <p>An ETag is an opaque identifier assigned by a web server to a specific
- * version of a resource found at a URL.</p>
+ * <p>An entity tag (ETag) is an opaque identifier assigned by a web server to a
+ * specific version of a resource found at a URL.</p>
*/
inline const Aws::String& GetETag() const{ return m_eTag; }
/**
- * <p>An ETag is an opaque identifier assigned by a web server to a specific
- * version of a resource found at a URL.</p>
+ * <p>An entity tag (ETag) is an opaque identifier assigned by a web server to a
+ * specific version of a resource found at a URL.</p>
*/
inline void SetETag(const Aws::String& value) { m_eTag = value; }
/**
- * <p>An ETag is an opaque identifier assigned by a web server to a specific
- * version of a resource found at a URL.</p>
+ * <p>An entity tag (ETag) is an opaque identifier assigned by a web server to a
+ * specific version of a resource found at a URL.</p>
*/
inline void SetETag(Aws::String&& value) { m_eTag = std::move(value); }
/**
- * <p>An ETag is an opaque identifier assigned by a web server to a specific
- * version of a resource found at a URL.</p>
+ * <p>An entity tag (ETag) is an opaque identifier assigned by a web server to a
+ * specific version of a resource found at a URL.</p>
*/
inline void SetETag(const char* value) { m_eTag.assign(value); }
/**
- * <p>An ETag is an opaque identifier assigned by a web server to a specific
- * version of a resource found at a URL.</p>
+ * <p>An entity tag (ETag) is an opaque identifier assigned by a web server to a
+ * specific version of a resource found at a URL.</p>
*/
inline GetObjectResult& WithETag(const Aws::String& value) { SetETag(value); return *this;}
/**
- * <p>An ETag is an opaque identifier assigned by a web server to a specific
- * version of a resource found at a URL.</p>
+ * <p>An entity tag (ETag) is an opaque identifier assigned by a web server to a
+ * specific version of a resource found at a URL.</p>
*/
inline GetObjectResult& WithETag(Aws::String&& value) { SetETag(std::move(value)); return *this;}
/**
- * <p>An ETag is an opaque identifier assigned by a web server to a specific
- * version of a resource found at a URL.</p>
+ * <p>An entity tag (ETag) is an opaque identifier assigned by a web server to a
+ * specific version of a resource found at a URL.</p>
*/
inline GetObjectResult& WithETag(const char* value) { SetETag(value); return *this;}
/**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumCRC32() const{ return m_checksumCRC32; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(const Aws::String& value) { m_checksumCRC32 = value; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(Aws::String&& value) { m_checksumCRC32 = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(const char* value) { m_checksumCRC32.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline GetObjectResult& WithChecksumCRC32(const Aws::String& value) { SetChecksumCRC32(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline GetObjectResult& WithChecksumCRC32(Aws::String&& value) { SetChecksumCRC32(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline GetObjectResult& WithChecksumCRC32(const char* value) { SetChecksumCRC32(value); return *this;}
+
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumCRC32C() const{ return m_checksumCRC32C; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(const Aws::String& value) { m_checksumCRC32C = value; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(Aws::String&& value) { m_checksumCRC32C = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(const char* value) { m_checksumCRC32C.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline GetObjectResult& WithChecksumCRC32C(const Aws::String& value) { SetChecksumCRC32C(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline GetObjectResult& WithChecksumCRC32C(Aws::String&& value) { SetChecksumCRC32C(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline GetObjectResult& WithChecksumCRC32C(const char* value) { SetChecksumCRC32C(value); return *this;}
+
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumSHA1() const{ return m_checksumSHA1; }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(const Aws::String& value) { m_checksumSHA1 = value; }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(Aws::String&& value) { m_checksumSHA1 = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(const char* value) { m_checksumSHA1.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline GetObjectResult& WithChecksumSHA1(const Aws::String& value) { SetChecksumSHA1(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline GetObjectResult& WithChecksumSHA1(Aws::String&& value) { SetChecksumSHA1(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline GetObjectResult& WithChecksumSHA1(const char* value) { SetChecksumSHA1(value); return *this;}
+
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumSHA256() const{ return m_checksumSHA256; }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(const Aws::String& value) { m_checksumSHA256 = value; }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(Aws::String&& value) { m_checksumSHA256 = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(const char* value) { m_checksumSHA256.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline GetObjectResult& WithChecksumSHA256(const Aws::String& value) { SetChecksumSHA256(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline GetObjectResult& WithChecksumSHA256(Aws::String&& value) { SetChecksumSHA256(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline GetObjectResult& WithChecksumSHA256(const char* value) { SetChecksumSHA256(value); return *this;}
+
+
+ /**
* <p>This is set to the number of metadata entries not returned in
* <code>x-amz-meta</code> headers. This can happen if you create metadata using an
* API like SOAP that supports more flexible metadata than the REST API. For
@@ -859,70 +1143,70 @@ namespace Model
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline const Aws::String& GetSSEKMSKeyId() const{ return m_sSEKMSKeyId; }
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline void SetSSEKMSKeyId(const Aws::String& value) { m_sSEKMSKeyId = value; }
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline void SetSSEKMSKeyId(Aws::String&& value) { m_sSEKMSKeyId = std::move(value); }
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline void SetSSEKMSKeyId(const char* value) { m_sSEKMSKeyId.assign(value); }
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline GetObjectResult& WithSSEKMSKeyId(const Aws::String& value) { SetSSEKMSKeyId(value); return *this;}
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline GetObjectResult& WithSSEKMSKeyId(Aws::String&& value) { SetSSEKMSKeyId(std::move(value)); return *this;}
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline GetObjectResult& WithSSEKMSKeyId(const char* value) { SetSSEKMSKeyId(value); return *this;}
/**
* <p>Indicates whether the object uses an S3 Bucket Key for server-side encryption
- * with AWS KMS (SSE-KMS).</p>
+ * with Amazon Web Services KMS (SSE-KMS).</p>
*/
inline bool GetBucketKeyEnabled() const{ return m_bucketKeyEnabled; }
/**
* <p>Indicates whether the object uses an S3 Bucket Key for server-side encryption
- * with AWS KMS (SSE-KMS).</p>
+ * with Amazon Web Services KMS (SSE-KMS).</p>
*/
inline void SetBucketKeyEnabled(bool value) { m_bucketKeyEnabled = value; }
/**
* <p>Indicates whether the object uses an S3 Bucket Key for server-side encryption
- * with AWS KMS (SSE-KMS).</p>
+ * with Amazon Web Services KMS (SSE-KMS).</p>
*/
inline GetObjectResult& WithBucketKeyEnabled(bool value) { SetBucketKeyEnabled(value); return *this;}
@@ -1006,17 +1290,23 @@ namespace Model
/**
- * <p>The count of parts this object has.</p>
+ * <p>The count of parts this object has. This value is only returned if you
+ * specify <code>partNumber</code> in your request and the object was uploaded as a
+ * multipart upload.</p>
*/
inline int GetPartsCount() const{ return m_partsCount; }
/**
- * <p>The count of parts this object has.</p>
+ * <p>The count of parts this object has. This value is only returned if you
+ * specify <code>partNumber</code> in your request and the object was uploaded as a
+ * multipart upload.</p>
*/
inline void SetPartsCount(int value) { m_partsCount = value; }
/**
- * <p>The count of parts this object has.</p>
+ * <p>The count of parts this object has. This value is only returned if you
+ * specify <code>partNumber</code> in your request and the object was uploaded as a
+ * multipart upload.</p>
*/
inline GetObjectResult& WithPartsCount(int value) { SetPartsCount(value); return *this;}
@@ -1165,7 +1455,7 @@ namespace Model
private:
- Aws::Utils::Stream::ResponseStream m_body;
+ Aws::Utils::Stream::ResponseStream m_body;
bool m_deleteMarker;
@@ -1181,6 +1471,14 @@ namespace Model
Aws::String m_eTag;
+ Aws::String m_checksumCRC32;
+
+ Aws::String m_checksumCRC32C;
+
+ Aws::String m_checksumSHA1;
+
+ Aws::String m_checksumSHA256;
+
int m_missingMeta;
Aws::String m_versionId;
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectRetentionRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectRetentionRequest.h
index 15f8adc388..9687dc8dec 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectRetentionRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectRetentionRequest.h
@@ -24,10 +24,10 @@ namespace Model
/**
*/
- class AWS_S3_API GetObjectRetentionRequest : public S3Request
+ class GetObjectRetentionRequest : public S3Request
{
public:
- GetObjectRetentionRequest();
+ AWS_S3_API GetObjectRetentionRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -35,23 +35,27 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "GetObjectRetention"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The bucket name containing the object whose retention settings you want to
* retrieve. </p> <p>When using this action with an access point, you must direct
* requests to the access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const Aws::String& GetBucket() const{ return m_bucket; }
@@ -60,11 +64,11 @@ namespace Model
* retrieve. </p> <p>When using this action with an access point, you must direct
* requests to the access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; }
@@ -73,11 +77,11 @@ namespace Model
* retrieve. </p> <p>When using this action with an access point, you must direct
* requests to the access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; }
@@ -86,11 +90,11 @@ namespace Model
* retrieve. </p> <p>When using this action with an access point, you must direct
* requests to the access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); }
@@ -99,11 +103,11 @@ namespace Model
* retrieve. </p> <p>When using this action with an access point, you must direct
* requests to the access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); }
@@ -112,11 +116,11 @@ namespace Model
* retrieve. </p> <p>When using this action with an access point, you must direct
* requests to the access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline GetObjectRetentionRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;}
@@ -125,11 +129,11 @@ namespace Model
* retrieve. </p> <p>When using this action with an access point, you must direct
* requests to the access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline GetObjectRetentionRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;}
@@ -138,11 +142,11 @@ namespace Model
* retrieve. </p> <p>When using this action with an access point, you must direct
* requests to the access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline GetObjectRetentionRequest& WithBucket(const char* value) { SetBucket(value); return *this;}
@@ -266,57 +270,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetObjectRetentionRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetObjectRetentionRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetObjectRetentionRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -363,22 +367,22 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_key;
- bool m_keyHasBeenSet;
+ bool m_keyHasBeenSet = false;
Aws::String m_versionId;
- bool m_versionIdHasBeenSet;
+ bool m_versionIdHasBeenSet = false;
RequestPayer m_requestPayer;
- bool m_requestPayerHasBeenSet;
+ bool m_requestPayerHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectRetentionResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectRetentionResult.h
index 13c5e6b25d..3e05d76c10 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectRetentionResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectRetentionResult.h
@@ -24,12 +24,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API GetObjectRetentionResult
+ class GetObjectRetentionResult
{
public:
- GetObjectRetentionResult();
- GetObjectRetentionResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- GetObjectRetentionResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetObjectRetentionResult();
+ AWS_S3_API GetObjectRetentionResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetObjectRetentionResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectTaggingRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectTaggingRequest.h
index b29119c226..068557654f 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectTaggingRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectTaggingRequest.h
@@ -24,10 +24,10 @@ namespace Model
/**
*/
- class AWS_S3_API GetObjectTaggingRequest : public S3Request
+ class GetObjectTaggingRequest : public S3Request
{
public:
- GetObjectTaggingRequest();
+ AWS_S3_API GetObjectTaggingRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -35,12 +35,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "GetObjectTagging"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The bucket name containing the object for which to get the tagging
@@ -48,19 +52,19 @@ namespace Model
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const Aws::String& GetBucket() const{ return m_bucket; }
@@ -70,19 +74,19 @@ namespace Model
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; }
@@ -92,19 +96,19 @@ namespace Model
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; }
@@ -114,19 +118,19 @@ namespace Model
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); }
@@ -136,19 +140,19 @@ namespace Model
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); }
@@ -158,19 +162,19 @@ namespace Model
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline GetObjectTaggingRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;}
@@ -180,19 +184,19 @@ namespace Model
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline GetObjectTaggingRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;}
@@ -202,19 +206,19 @@ namespace Model
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline GetObjectTaggingRequest& WithBucket(const char* value) { SetBucket(value); return *this;}
@@ -303,57 +307,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetObjectTaggingRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetObjectTaggingRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetObjectTaggingRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -419,22 +423,22 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_key;
- bool m_keyHasBeenSet;
+ bool m_keyHasBeenSet = false;
Aws::String m_versionId;
- bool m_versionIdHasBeenSet;
+ bool m_versionIdHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
RequestPayer m_requestPayer;
- bool m_requestPayerHasBeenSet;
+ bool m_requestPayerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectTaggingResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectTaggingResult.h
index c945f85e61..c307b802a5 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectTaggingResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectTaggingResult.h
@@ -26,12 +26,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API GetObjectTaggingResult
+ class GetObjectTaggingResult
{
public:
- GetObjectTaggingResult();
- GetObjectTaggingResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- GetObjectTaggingResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetObjectTaggingResult();
+ AWS_S3_API GetObjectTaggingResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetObjectTaggingResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectTorrentRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectTorrentRequest.h
index 08f359e8da..a01a7901a1 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectTorrentRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectTorrentRequest.h
@@ -24,10 +24,10 @@ namespace Model
/**
*/
- class AWS_S3_API GetObjectTorrentRequest : public S3Request
+ class GetObjectTorrentRequest : public S3Request
{
public:
- GetObjectTorrentRequest();
+ AWS_S3_API GetObjectTorrentRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -35,12 +35,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "GetObjectTorrent"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the bucket containing the object for which to get the torrent
@@ -153,57 +157,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetObjectTorrentRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetObjectTorrentRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetObjectTorrentRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -250,19 +254,19 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_key;
- bool m_keyHasBeenSet;
+ bool m_keyHasBeenSet = false;
RequestPayer m_requestPayer;
- bool m_requestPayerHasBeenSet;
+ bool m_requestPayerHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectTorrentResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectTorrentResult.h
index 97c8b3edf9..546c6d1c26 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectTorrentResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetObjectTorrentResult.h
@@ -19,28 +19,28 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API GetObjectTorrentResult
+ class GetObjectTorrentResult
{
public:
- GetObjectTorrentResult();
+ AWS_S3_API GetObjectTorrentResult();
//We have to define these because Microsoft doesn't auto generate them
- GetObjectTorrentResult(GetObjectTorrentResult&&);
- GetObjectTorrentResult& operator=(GetObjectTorrentResult&&);
+ AWS_S3_API GetObjectTorrentResult(GetObjectTorrentResult&&);
+ AWS_S3_API GetObjectTorrentResult& operator=(GetObjectTorrentResult&&);
//we delete these because Microsoft doesn't handle move generation correctly
//and we therefore don't trust them to get it right here either.
GetObjectTorrentResult(const GetObjectTorrentResult&) = delete;
GetObjectTorrentResult& operator=(const GetObjectTorrentResult&) = delete;
- GetObjectTorrentResult(Aws::AmazonWebServiceResult<Aws::Utils::Stream::ResponseStream>&& result);
- GetObjectTorrentResult& operator=(Aws::AmazonWebServiceResult<Aws::Utils::Stream::ResponseStream>&& result);
+ AWS_S3_API GetObjectTorrentResult(Aws::AmazonWebServiceResult<Aws::Utils::Stream::ResponseStream>&& result);
+ AWS_S3_API GetObjectTorrentResult& operator=(Aws::AmazonWebServiceResult<Aws::Utils::Stream::ResponseStream>&& result);
/**
* <p>A Bencoded dictionary as defined by the BitTorrent specification</p>
*/
- inline Aws::IOStream& GetBody() { return m_body.GetUnderlyingStream(); }
+ inline Aws::IOStream& GetBody() const { return m_body.GetUnderlyingStream(); }
/**
* <p>A Bencoded dictionary as defined by the BitTorrent specification</p>
@@ -65,7 +65,7 @@ namespace Model
private:
- Aws::Utils::Stream::ResponseStream m_body;
+ Aws::Utils::Stream::ResponseStream m_body;
RequestCharged m_requestCharged;
};
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetPublicAccessBlockRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetPublicAccessBlockRequest.h
index 1648400d7a..bbc11f1539 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetPublicAccessBlockRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetPublicAccessBlockRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API GetPublicAccessBlockRequest : public S3Request
+ class GetPublicAccessBlockRequest : public S3Request
{
public:
- GetPublicAccessBlockRequest();
+ AWS_S3_API GetPublicAccessBlockRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,12 +34,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "GetPublicAccessBlock"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the Amazon S3 bucket whose <code>PublicAccessBlock</code>
@@ -92,57 +96,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetPublicAccessBlockRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetPublicAccessBlockRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline GetPublicAccessBlockRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -189,13 +193,13 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetPublicAccessBlockResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetPublicAccessBlockResult.h
index 22d40032cb..05907ca4c0 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetPublicAccessBlockResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GetPublicAccessBlockResult.h
@@ -24,12 +24,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API GetPublicAccessBlockResult
+ class GetPublicAccessBlockResult
{
public:
- GetPublicAccessBlockResult();
- GetPublicAccessBlockResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- GetPublicAccessBlockResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetPublicAccessBlockResult();
+ AWS_S3_API GetPublicAccessBlockResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API GetPublicAccessBlockResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GlacierJobParameters.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GlacierJobParameters.h
index d6fcfdaee3..daf8e7eccc 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GlacierJobParameters.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/GlacierJobParameters.h
@@ -27,14 +27,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/GlacierJobParameters">AWS
* API Reference</a></p>
*/
- class AWS_S3_API GlacierJobParameters
+ class GlacierJobParameters
{
public:
- GlacierJobParameters();
- GlacierJobParameters(const Aws::Utils::Xml::XmlNode& xmlNode);
- GlacierJobParameters& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API GlacierJobParameters();
+ AWS_S3_API GlacierJobParameters(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API GlacierJobParameters& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -70,7 +70,7 @@ namespace Model
private:
Tier m_tier;
- bool m_tierHasBeenSet;
+ bool m_tierHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Grant.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Grant.h
index 392c95090e..90af4c1f4c 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Grant.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Grant.h
@@ -28,14 +28,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/Grant">AWS API
* Reference</a></p>
*/
- class AWS_S3_API Grant
+ class Grant
{
public:
- Grant();
- Grant(const Aws::Utils::Xml::XmlNode& xmlNode);
- Grant& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Grant();
+ AWS_S3_API Grant(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Grant& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -102,10 +102,10 @@ namespace Model
private:
Grantee m_grantee;
- bool m_granteeHasBeenSet;
+ bool m_granteeHasBeenSet = false;
Permission m_permission;
- bool m_permissionHasBeenSet;
+ bool m_permissionHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Grantee.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Grantee.h
index a6715e45cd..1e6ad003d9 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Grantee.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Grantee.h
@@ -28,14 +28,14 @@ namespace Model
* <a href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/Grantee">AWS API
* Reference</a></p>
*/
- class AWS_S3_API Grantee
+ class Grantee
{
public:
- Grantee();
- Grantee(const Aws::Utils::Xml::XmlNode& xmlNode);
- Grantee& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Grantee();
+ AWS_S3_API Grantee(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Grantee& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -81,105 +81,113 @@ namespace Model
/**
* <p>Email address of the grantee.</p> <p>Using email addresses to specify
- * a grantee is only supported in the following AWS Regions: </p> <ul> <li> <p>US
- * East (N. Virginia)</p> </li> <li> <p>US West (N. California)</p> </li> <li> <p>
- * US West (Oregon)</p> </li> <li> <p> Asia Pacific (Singapore)</p> </li> <li>
- * <p>Asia Pacific (Sydney)</p> </li> <li> <p>Asia Pacific (Tokyo)</p> </li> <li>
- * <p>Europe (Ireland)</p> </li> <li> <p>South America (São Paulo)</p> </li> </ul>
- * <p>For a list of all the Amazon S3 supported Regions and endpoints, see <a
+ * a grantee is only supported in the following Amazon Web Services Regions: </p>
+ * <ul> <li> <p>US East (N. Virginia)</p> </li> <li> <p>US West (N. California)</p>
+ * </li> <li> <p> US West (Oregon)</p> </li> <li> <p> Asia Pacific (Singapore)</p>
+ * </li> <li> <p>Asia Pacific (Sydney)</p> </li> <li> <p>Asia Pacific (Tokyo)</p>
+ * </li> <li> <p>Europe (Ireland)</p> </li> <li> <p>South America (São Paulo)</p>
+ * </li> </ul> <p>For a list of all the Amazon S3 supported Regions and endpoints,
+ * see <a
* href="https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region">Regions
- * and Endpoints</a> in the AWS General Reference.</p>
+ * and Endpoints</a> in the Amazon Web Services General Reference.</p>
*/
inline const Aws::String& GetEmailAddress() const{ return m_emailAddress; }
/**
* <p>Email address of the grantee.</p> <p>Using email addresses to specify
- * a grantee is only supported in the following AWS Regions: </p> <ul> <li> <p>US
- * East (N. Virginia)</p> </li> <li> <p>US West (N. California)</p> </li> <li> <p>
- * US West (Oregon)</p> </li> <li> <p> Asia Pacific (Singapore)</p> </li> <li>
- * <p>Asia Pacific (Sydney)</p> </li> <li> <p>Asia Pacific (Tokyo)</p> </li> <li>
- * <p>Europe (Ireland)</p> </li> <li> <p>South America (São Paulo)</p> </li> </ul>
- * <p>For a list of all the Amazon S3 supported Regions and endpoints, see <a
+ * a grantee is only supported in the following Amazon Web Services Regions: </p>
+ * <ul> <li> <p>US East (N. Virginia)</p> </li> <li> <p>US West (N. California)</p>
+ * </li> <li> <p> US West (Oregon)</p> </li> <li> <p> Asia Pacific (Singapore)</p>
+ * </li> <li> <p>Asia Pacific (Sydney)</p> </li> <li> <p>Asia Pacific (Tokyo)</p>
+ * </li> <li> <p>Europe (Ireland)</p> </li> <li> <p>South America (São Paulo)</p>
+ * </li> </ul> <p>For a list of all the Amazon S3 supported Regions and endpoints,
+ * see <a
* href="https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region">Regions
- * and Endpoints</a> in the AWS General Reference.</p>
+ * and Endpoints</a> in the Amazon Web Services General Reference.</p>
*/
inline bool EmailAddressHasBeenSet() const { return m_emailAddressHasBeenSet; }
/**
* <p>Email address of the grantee.</p> <p>Using email addresses to specify
- * a grantee is only supported in the following AWS Regions: </p> <ul> <li> <p>US
- * East (N. Virginia)</p> </li> <li> <p>US West (N. California)</p> </li> <li> <p>
- * US West (Oregon)</p> </li> <li> <p> Asia Pacific (Singapore)</p> </li> <li>
- * <p>Asia Pacific (Sydney)</p> </li> <li> <p>Asia Pacific (Tokyo)</p> </li> <li>
- * <p>Europe (Ireland)</p> </li> <li> <p>South America (São Paulo)</p> </li> </ul>
- * <p>For a list of all the Amazon S3 supported Regions and endpoints, see <a
+ * a grantee is only supported in the following Amazon Web Services Regions: </p>
+ * <ul> <li> <p>US East (N. Virginia)</p> </li> <li> <p>US West (N. California)</p>
+ * </li> <li> <p> US West (Oregon)</p> </li> <li> <p> Asia Pacific (Singapore)</p>
+ * </li> <li> <p>Asia Pacific (Sydney)</p> </li> <li> <p>Asia Pacific (Tokyo)</p>
+ * </li> <li> <p>Europe (Ireland)</p> </li> <li> <p>South America (São Paulo)</p>
+ * </li> </ul> <p>For a list of all the Amazon S3 supported Regions and endpoints,
+ * see <a
* href="https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region">Regions
- * and Endpoints</a> in the AWS General Reference.</p>
+ * and Endpoints</a> in the Amazon Web Services General Reference.</p>
*/
inline void SetEmailAddress(const Aws::String& value) { m_emailAddressHasBeenSet = true; m_emailAddress = value; }
/**
* <p>Email address of the grantee.</p> <p>Using email addresses to specify
- * a grantee is only supported in the following AWS Regions: </p> <ul> <li> <p>US
- * East (N. Virginia)</p> </li> <li> <p>US West (N. California)</p> </li> <li> <p>
- * US West (Oregon)</p> </li> <li> <p> Asia Pacific (Singapore)</p> </li> <li>
- * <p>Asia Pacific (Sydney)</p> </li> <li> <p>Asia Pacific (Tokyo)</p> </li> <li>
- * <p>Europe (Ireland)</p> </li> <li> <p>South America (São Paulo)</p> </li> </ul>
- * <p>For a list of all the Amazon S3 supported Regions and endpoints, see <a
+ * a grantee is only supported in the following Amazon Web Services Regions: </p>
+ * <ul> <li> <p>US East (N. Virginia)</p> </li> <li> <p>US West (N. California)</p>
+ * </li> <li> <p> US West (Oregon)</p> </li> <li> <p> Asia Pacific (Singapore)</p>
+ * </li> <li> <p>Asia Pacific (Sydney)</p> </li> <li> <p>Asia Pacific (Tokyo)</p>
+ * </li> <li> <p>Europe (Ireland)</p> </li> <li> <p>South America (São Paulo)</p>
+ * </li> </ul> <p>For a list of all the Amazon S3 supported Regions and endpoints,
+ * see <a
* href="https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region">Regions
- * and Endpoints</a> in the AWS General Reference.</p>
+ * and Endpoints</a> in the Amazon Web Services General Reference.</p>
*/
inline void SetEmailAddress(Aws::String&& value) { m_emailAddressHasBeenSet = true; m_emailAddress = std::move(value); }
/**
* <p>Email address of the grantee.</p> <p>Using email addresses to specify
- * a grantee is only supported in the following AWS Regions: </p> <ul> <li> <p>US
- * East (N. Virginia)</p> </li> <li> <p>US West (N. California)</p> </li> <li> <p>
- * US West (Oregon)</p> </li> <li> <p> Asia Pacific (Singapore)</p> </li> <li>
- * <p>Asia Pacific (Sydney)</p> </li> <li> <p>Asia Pacific (Tokyo)</p> </li> <li>
- * <p>Europe (Ireland)</p> </li> <li> <p>South America (São Paulo)</p> </li> </ul>
- * <p>For a list of all the Amazon S3 supported Regions and endpoints, see <a
+ * a grantee is only supported in the following Amazon Web Services Regions: </p>
+ * <ul> <li> <p>US East (N. Virginia)</p> </li> <li> <p>US West (N. California)</p>
+ * </li> <li> <p> US West (Oregon)</p> </li> <li> <p> Asia Pacific (Singapore)</p>
+ * </li> <li> <p>Asia Pacific (Sydney)</p> </li> <li> <p>Asia Pacific (Tokyo)</p>
+ * </li> <li> <p>Europe (Ireland)</p> </li> <li> <p>South America (São Paulo)</p>
+ * </li> </ul> <p>For a list of all the Amazon S3 supported Regions and endpoints,
+ * see <a
* href="https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region">Regions
- * and Endpoints</a> in the AWS General Reference.</p>
+ * and Endpoints</a> in the Amazon Web Services General Reference.</p>
*/
inline void SetEmailAddress(const char* value) { m_emailAddressHasBeenSet = true; m_emailAddress.assign(value); }
/**
* <p>Email address of the grantee.</p> <p>Using email addresses to specify
- * a grantee is only supported in the following AWS Regions: </p> <ul> <li> <p>US
- * East (N. Virginia)</p> </li> <li> <p>US West (N. California)</p> </li> <li> <p>
- * US West (Oregon)</p> </li> <li> <p> Asia Pacific (Singapore)</p> </li> <li>
- * <p>Asia Pacific (Sydney)</p> </li> <li> <p>Asia Pacific (Tokyo)</p> </li> <li>
- * <p>Europe (Ireland)</p> </li> <li> <p>South America (São Paulo)</p> </li> </ul>
- * <p>For a list of all the Amazon S3 supported Regions and endpoints, see <a
+ * a grantee is only supported in the following Amazon Web Services Regions: </p>
+ * <ul> <li> <p>US East (N. Virginia)</p> </li> <li> <p>US West (N. California)</p>
+ * </li> <li> <p> US West (Oregon)</p> </li> <li> <p> Asia Pacific (Singapore)</p>
+ * </li> <li> <p>Asia Pacific (Sydney)</p> </li> <li> <p>Asia Pacific (Tokyo)</p>
+ * </li> <li> <p>Europe (Ireland)</p> </li> <li> <p>South America (São Paulo)</p>
+ * </li> </ul> <p>For a list of all the Amazon S3 supported Regions and endpoints,
+ * see <a
* href="https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region">Regions
- * and Endpoints</a> in the AWS General Reference.</p>
+ * and Endpoints</a> in the Amazon Web Services General Reference.</p>
*/
inline Grantee& WithEmailAddress(const Aws::String& value) { SetEmailAddress(value); return *this;}
/**
* <p>Email address of the grantee.</p> <p>Using email addresses to specify
- * a grantee is only supported in the following AWS Regions: </p> <ul> <li> <p>US
- * East (N. Virginia)</p> </li> <li> <p>US West (N. California)</p> </li> <li> <p>
- * US West (Oregon)</p> </li> <li> <p> Asia Pacific (Singapore)</p> </li> <li>
- * <p>Asia Pacific (Sydney)</p> </li> <li> <p>Asia Pacific (Tokyo)</p> </li> <li>
- * <p>Europe (Ireland)</p> </li> <li> <p>South America (São Paulo)</p> </li> </ul>
- * <p>For a list of all the Amazon S3 supported Regions and endpoints, see <a
+ * a grantee is only supported in the following Amazon Web Services Regions: </p>
+ * <ul> <li> <p>US East (N. Virginia)</p> </li> <li> <p>US West (N. California)</p>
+ * </li> <li> <p> US West (Oregon)</p> </li> <li> <p> Asia Pacific (Singapore)</p>
+ * </li> <li> <p>Asia Pacific (Sydney)</p> </li> <li> <p>Asia Pacific (Tokyo)</p>
+ * </li> <li> <p>Europe (Ireland)</p> </li> <li> <p>South America (São Paulo)</p>
+ * </li> </ul> <p>For a list of all the Amazon S3 supported Regions and endpoints,
+ * see <a
* href="https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region">Regions
- * and Endpoints</a> in the AWS General Reference.</p>
+ * and Endpoints</a> in the Amazon Web Services General Reference.</p>
*/
inline Grantee& WithEmailAddress(Aws::String&& value) { SetEmailAddress(std::move(value)); return *this;}
/**
* <p>Email address of the grantee.</p> <p>Using email addresses to specify
- * a grantee is only supported in the following AWS Regions: </p> <ul> <li> <p>US
- * East (N. Virginia)</p> </li> <li> <p>US West (N. California)</p> </li> <li> <p>
- * US West (Oregon)</p> </li> <li> <p> Asia Pacific (Singapore)</p> </li> <li>
- * <p>Asia Pacific (Sydney)</p> </li> <li> <p>Asia Pacific (Tokyo)</p> </li> <li>
- * <p>Europe (Ireland)</p> </li> <li> <p>South America (São Paulo)</p> </li> </ul>
- * <p>For a list of all the Amazon S3 supported Regions and endpoints, see <a
+ * a grantee is only supported in the following Amazon Web Services Regions: </p>
+ * <ul> <li> <p>US East (N. Virginia)</p> </li> <li> <p>US West (N. California)</p>
+ * </li> <li> <p> US West (Oregon)</p> </li> <li> <p> Asia Pacific (Singapore)</p>
+ * </li> <li> <p>Asia Pacific (Sydney)</p> </li> <li> <p>Asia Pacific (Tokyo)</p>
+ * </li> <li> <p>Europe (Ireland)</p> </li> <li> <p>South America (São Paulo)</p>
+ * </li> </ul> <p>For a list of all the Amazon S3 supported Regions and endpoints,
+ * see <a
* href="https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region">Regions
- * and Endpoints</a> in the AWS General Reference.</p>
+ * and Endpoints</a> in the Amazon Web Services General Reference.</p>
*/
inline Grantee& WithEmailAddress(const char* value) { SetEmailAddress(value); return *this;}
@@ -299,19 +307,19 @@ namespace Model
private:
Aws::String m_displayName;
- bool m_displayNameHasBeenSet;
+ bool m_displayNameHasBeenSet = false;
Aws::String m_emailAddress;
- bool m_emailAddressHasBeenSet;
+ bool m_emailAddressHasBeenSet = false;
Aws::String m_iD;
- bool m_iDHasBeenSet;
+ bool m_iDHasBeenSet = false;
Type m_type;
- bool m_typeHasBeenSet;
+ bool m_typeHasBeenSet = false;
Aws::String m_uRI;
- bool m_uRIHasBeenSet;
+ bool m_uRIHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/HeadBucketRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/HeadBucketRequest.h
index 40078434f3..7c9c4240c9 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/HeadBucketRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/HeadBucketRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API HeadBucketRequest : public S3Request
+ class HeadBucketRequest : public S3Request
{
public:
- HeadBucketRequest();
+ AWS_S3_API HeadBucketRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,31 +34,35 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "HeadBucket"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The bucket name.</p> <p>When using this action with an access point, you must
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const Aws::String& GetBucket() const{ return m_bucket; }
@@ -67,19 +71,19 @@ namespace Model
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; }
@@ -88,19 +92,19 @@ namespace Model
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; }
@@ -109,19 +113,19 @@ namespace Model
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); }
@@ -130,19 +134,19 @@ namespace Model
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); }
@@ -151,19 +155,19 @@ namespace Model
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline HeadBucketRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;}
@@ -172,19 +176,19 @@ namespace Model
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline HeadBucketRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;}
@@ -193,76 +197,76 @@ namespace Model
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline HeadBucketRequest& WithBucket(const char* value) { SetBucket(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline HeadBucketRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline HeadBucketRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline HeadBucketRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -309,13 +313,13 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/HeadObjectRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/HeadObjectRequest.h
index 88865df794..a507cf6ad7 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/HeadObjectRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/HeadObjectRequest.h
@@ -9,6 +9,7 @@
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/DateTime.h>
#include <aws/s3/model/RequestPayer.h>
+#include <aws/s3/model/ChecksumMode.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
#include <utility>
@@ -25,10 +26,10 @@ namespace Model
/**
*/
- class AWS_S3_API HeadObjectRequest : public S3Request
+ class HeadObjectRequest : public S3Request
{
public:
- HeadObjectRequest();
+ AWS_S3_API HeadObjectRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -36,31 +37,35 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "HeadObject"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the bucket containing the object.</p> <p>When using this action
* with an access point, you must direct requests to the access point hostname. The
* access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const Aws::String& GetBucket() const{ return m_bucket; }
@@ -69,19 +74,19 @@ namespace Model
* with an access point, you must direct requests to the access point hostname. The
* access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; }
@@ -90,19 +95,19 @@ namespace Model
* with an access point, you must direct requests to the access point hostname. The
* access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; }
@@ -111,19 +116,19 @@ namespace Model
* with an access point, you must direct requests to the access point hostname. The
* access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); }
@@ -132,19 +137,19 @@ namespace Model
* with an access point, you must direct requests to the access point hostname. The
* access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); }
@@ -153,19 +158,19 @@ namespace Model
* with an access point, you must direct requests to the access point hostname. The
* access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline HeadObjectRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;}
@@ -174,19 +179,19 @@ namespace Model
* with an access point, you must direct requests to the access point hostname. The
* access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline HeadObjectRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;}
@@ -195,191 +200,191 @@ namespace Model
* with an access point, you must direct requests to the access point hostname. The
* access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline HeadObjectRequest& WithBucket(const char* value) { SetBucket(value); return *this;}
/**
* <p>Return the object only if its entity tag (ETag) is the same as the one
- * specified, otherwise return a 412 (precondition failed).</p>
+ * specified; otherwise, return a 412 (precondition failed) error.</p>
*/
inline const Aws::String& GetIfMatch() const{ return m_ifMatch; }
/**
* <p>Return the object only if its entity tag (ETag) is the same as the one
- * specified, otherwise return a 412 (precondition failed).</p>
+ * specified; otherwise, return a 412 (precondition failed) error.</p>
*/
inline bool IfMatchHasBeenSet() const { return m_ifMatchHasBeenSet; }
/**
* <p>Return the object only if its entity tag (ETag) is the same as the one
- * specified, otherwise return a 412 (precondition failed).</p>
+ * specified; otherwise, return a 412 (precondition failed) error.</p>
*/
inline void SetIfMatch(const Aws::String& value) { m_ifMatchHasBeenSet = true; m_ifMatch = value; }
/**
* <p>Return the object only if its entity tag (ETag) is the same as the one
- * specified, otherwise return a 412 (precondition failed).</p>
+ * specified; otherwise, return a 412 (precondition failed) error.</p>
*/
inline void SetIfMatch(Aws::String&& value) { m_ifMatchHasBeenSet = true; m_ifMatch = std::move(value); }
/**
* <p>Return the object only if its entity tag (ETag) is the same as the one
- * specified, otherwise return a 412 (precondition failed).</p>
+ * specified; otherwise, return a 412 (precondition failed) error.</p>
*/
inline void SetIfMatch(const char* value) { m_ifMatchHasBeenSet = true; m_ifMatch.assign(value); }
/**
* <p>Return the object only if its entity tag (ETag) is the same as the one
- * specified, otherwise return a 412 (precondition failed).</p>
+ * specified; otherwise, return a 412 (precondition failed) error.</p>
*/
inline HeadObjectRequest& WithIfMatch(const Aws::String& value) { SetIfMatch(value); return *this;}
/**
* <p>Return the object only if its entity tag (ETag) is the same as the one
- * specified, otherwise return a 412 (precondition failed).</p>
+ * specified; otherwise, return a 412 (precondition failed) error.</p>
*/
inline HeadObjectRequest& WithIfMatch(Aws::String&& value) { SetIfMatch(std::move(value)); return *this;}
/**
* <p>Return the object only if its entity tag (ETag) is the same as the one
- * specified, otherwise return a 412 (precondition failed).</p>
+ * specified; otherwise, return a 412 (precondition failed) error.</p>
*/
inline HeadObjectRequest& WithIfMatch(const char* value) { SetIfMatch(value); return *this;}
/**
- * <p>Return the object only if it has been modified since the specified time,
- * otherwise return a 304 (not modified).</p>
+ * <p>Return the object only if it has been modified since the specified time;
+ * otherwise, return a 304 (not modified) error.</p>
*/
inline const Aws::Utils::DateTime& GetIfModifiedSince() const{ return m_ifModifiedSince; }
/**
- * <p>Return the object only if it has been modified since the specified time,
- * otherwise return a 304 (not modified).</p>
+ * <p>Return the object only if it has been modified since the specified time;
+ * otherwise, return a 304 (not modified) error.</p>
*/
inline bool IfModifiedSinceHasBeenSet() const { return m_ifModifiedSinceHasBeenSet; }
/**
- * <p>Return the object only if it has been modified since the specified time,
- * otherwise return a 304 (not modified).</p>
+ * <p>Return the object only if it has been modified since the specified time;
+ * otherwise, return a 304 (not modified) error.</p>
*/
inline void SetIfModifiedSince(const Aws::Utils::DateTime& value) { m_ifModifiedSinceHasBeenSet = true; m_ifModifiedSince = value; }
/**
- * <p>Return the object only if it has been modified since the specified time,
- * otherwise return a 304 (not modified).</p>
+ * <p>Return the object only if it has been modified since the specified time;
+ * otherwise, return a 304 (not modified) error.</p>
*/
inline void SetIfModifiedSince(Aws::Utils::DateTime&& value) { m_ifModifiedSinceHasBeenSet = true; m_ifModifiedSince = std::move(value); }
/**
- * <p>Return the object only if it has been modified since the specified time,
- * otherwise return a 304 (not modified).</p>
+ * <p>Return the object only if it has been modified since the specified time;
+ * otherwise, return a 304 (not modified) error.</p>
*/
inline HeadObjectRequest& WithIfModifiedSince(const Aws::Utils::DateTime& value) { SetIfModifiedSince(value); return *this;}
/**
- * <p>Return the object only if it has been modified since the specified time,
- * otherwise return a 304 (not modified).</p>
+ * <p>Return the object only if it has been modified since the specified time;
+ * otherwise, return a 304 (not modified) error.</p>
*/
inline HeadObjectRequest& WithIfModifiedSince(Aws::Utils::DateTime&& value) { SetIfModifiedSince(std::move(value)); return *this;}
/**
* <p>Return the object only if its entity tag (ETag) is different from the one
- * specified, otherwise return a 304 (not modified).</p>
+ * specified; otherwise, return a 304 (not modified) error.</p>
*/
inline const Aws::String& GetIfNoneMatch() const{ return m_ifNoneMatch; }
/**
* <p>Return the object only if its entity tag (ETag) is different from the one
- * specified, otherwise return a 304 (not modified).</p>
+ * specified; otherwise, return a 304 (not modified) error.</p>
*/
inline bool IfNoneMatchHasBeenSet() const { return m_ifNoneMatchHasBeenSet; }
/**
* <p>Return the object only if its entity tag (ETag) is different from the one
- * specified, otherwise return a 304 (not modified).</p>
+ * specified; otherwise, return a 304 (not modified) error.</p>
*/
inline void SetIfNoneMatch(const Aws::String& value) { m_ifNoneMatchHasBeenSet = true; m_ifNoneMatch = value; }
/**
* <p>Return the object only if its entity tag (ETag) is different from the one
- * specified, otherwise return a 304 (not modified).</p>
+ * specified; otherwise, return a 304 (not modified) error.</p>
*/
inline void SetIfNoneMatch(Aws::String&& value) { m_ifNoneMatchHasBeenSet = true; m_ifNoneMatch = std::move(value); }
/**
* <p>Return the object only if its entity tag (ETag) is different from the one
- * specified, otherwise return a 304 (not modified).</p>
+ * specified; otherwise, return a 304 (not modified) error.</p>
*/
inline void SetIfNoneMatch(const char* value) { m_ifNoneMatchHasBeenSet = true; m_ifNoneMatch.assign(value); }
/**
* <p>Return the object only if its entity tag (ETag) is different from the one
- * specified, otherwise return a 304 (not modified).</p>
+ * specified; otherwise, return a 304 (not modified) error.</p>
*/
inline HeadObjectRequest& WithIfNoneMatch(const Aws::String& value) { SetIfNoneMatch(value); return *this;}
/**
* <p>Return the object only if its entity tag (ETag) is different from the one
- * specified, otherwise return a 304 (not modified).</p>
+ * specified; otherwise, return a 304 (not modified) error.</p>
*/
inline HeadObjectRequest& WithIfNoneMatch(Aws::String&& value) { SetIfNoneMatch(std::move(value)); return *this;}
/**
* <p>Return the object only if its entity tag (ETag) is different from the one
- * specified, otherwise return a 304 (not modified).</p>
+ * specified; otherwise, return a 304 (not modified) error.</p>
*/
inline HeadObjectRequest& WithIfNoneMatch(const char* value) { SetIfNoneMatch(value); return *this;}
/**
- * <p>Return the object only if it has not been modified since the specified time,
- * otherwise return a 412 (precondition failed).</p>
+ * <p>Return the object only if it has not been modified since the specified time;
+ * otherwise, return a 412 (precondition failed) error.</p>
*/
inline const Aws::Utils::DateTime& GetIfUnmodifiedSince() const{ return m_ifUnmodifiedSince; }
/**
- * <p>Return the object only if it has not been modified since the specified time,
- * otherwise return a 412 (precondition failed).</p>
+ * <p>Return the object only if it has not been modified since the specified time;
+ * otherwise, return a 412 (precondition failed) error.</p>
*/
inline bool IfUnmodifiedSinceHasBeenSet() const { return m_ifUnmodifiedSinceHasBeenSet; }
/**
- * <p>Return the object only if it has not been modified since the specified time,
- * otherwise return a 412 (precondition failed).</p>
+ * <p>Return the object only if it has not been modified since the specified time;
+ * otherwise, return a 412 (precondition failed) error.</p>
*/
inline void SetIfUnmodifiedSince(const Aws::Utils::DateTime& value) { m_ifUnmodifiedSinceHasBeenSet = true; m_ifUnmodifiedSince = value; }
/**
- * <p>Return the object only if it has not been modified since the specified time,
- * otherwise return a 412 (precondition failed).</p>
+ * <p>Return the object only if it has not been modified since the specified time;
+ * otherwise, return a 412 (precondition failed) error.</p>
*/
inline void SetIfUnmodifiedSince(Aws::Utils::DateTime&& value) { m_ifUnmodifiedSinceHasBeenSet = true; m_ifUnmodifiedSince = std::move(value); }
/**
- * <p>Return the object only if it has not been modified since the specified time,
- * otherwise return a 412 (precondition failed).</p>
+ * <p>Return the object only if it has not been modified since the specified time;
+ * otherwise, return a 412 (precondition failed) error.</p>
*/
inline HeadObjectRequest& WithIfUnmodifiedSince(const Aws::Utils::DateTime& value) { SetIfUnmodifiedSince(value); return *this;}
/**
- * <p>Return the object only if it has not been modified since the specified time,
- * otherwise return a 412 (precondition failed).</p>
+ * <p>Return the object only if it has not been modified since the specified time;
+ * otherwise, return a 412 (precondition failed) error.</p>
*/
inline HeadObjectRequest& WithIfUnmodifiedSince(Aws::Utils::DateTime&& value) { SetIfUnmodifiedSince(std::move(value)); return *this;}
@@ -426,74 +431,50 @@ namespace Model
/**
- * <p>Downloads the specified range bytes of an object. For more information about
- * the HTTP Range header, see <a
- * href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35">http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35</a>.</p>
- * <p>Amazon S3 doesn't support retrieving multiple ranges of data per
- * <code>GET</code> request.</p>
+ * <p>Because <code>HeadObject</code> returns only the metadata for an object, this
+ * parameter has no effect.</p>
*/
inline const Aws::String& GetRange() const{ return m_range; }
/**
- * <p>Downloads the specified range bytes of an object. For more information about
- * the HTTP Range header, see <a
- * href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35">http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35</a>.</p>
- * <p>Amazon S3 doesn't support retrieving multiple ranges of data per
- * <code>GET</code> request.</p>
+ * <p>Because <code>HeadObject</code> returns only the metadata for an object, this
+ * parameter has no effect.</p>
*/
inline bool RangeHasBeenSet() const { return m_rangeHasBeenSet; }
/**
- * <p>Downloads the specified range bytes of an object. For more information about
- * the HTTP Range header, see <a
- * href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35">http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35</a>.</p>
- * <p>Amazon S3 doesn't support retrieving multiple ranges of data per
- * <code>GET</code> request.</p>
+ * <p>Because <code>HeadObject</code> returns only the metadata for an object, this
+ * parameter has no effect.</p>
*/
inline void SetRange(const Aws::String& value) { m_rangeHasBeenSet = true; m_range = value; }
/**
- * <p>Downloads the specified range bytes of an object. For more information about
- * the HTTP Range header, see <a
- * href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35">http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35</a>.</p>
- * <p>Amazon S3 doesn't support retrieving multiple ranges of data per
- * <code>GET</code> request.</p>
+ * <p>Because <code>HeadObject</code> returns only the metadata for an object, this
+ * parameter has no effect.</p>
*/
inline void SetRange(Aws::String&& value) { m_rangeHasBeenSet = true; m_range = std::move(value); }
/**
- * <p>Downloads the specified range bytes of an object. For more information about
- * the HTTP Range header, see <a
- * href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35">http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35</a>.</p>
- * <p>Amazon S3 doesn't support retrieving multiple ranges of data per
- * <code>GET</code> request.</p>
+ * <p>Because <code>HeadObject</code> returns only the metadata for an object, this
+ * parameter has no effect.</p>
*/
inline void SetRange(const char* value) { m_rangeHasBeenSet = true; m_range.assign(value); }
/**
- * <p>Downloads the specified range bytes of an object. For more information about
- * the HTTP Range header, see <a
- * href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35">http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35</a>.</p>
- * <p>Amazon S3 doesn't support retrieving multiple ranges of data per
- * <code>GET</code> request.</p>
+ * <p>Because <code>HeadObject</code> returns only the metadata for an object, this
+ * parameter has no effect.</p>
*/
inline HeadObjectRequest& WithRange(const Aws::String& value) { SetRange(value); return *this;}
/**
- * <p>Downloads the specified range bytes of an object. For more information about
- * the HTTP Range header, see <a
- * href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35">http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35</a>.</p>
- * <p>Amazon S3 doesn't support retrieving multiple ranges of data per
- * <code>GET</code> request.</p>
+ * <p>Because <code>HeadObject</code> returns only the metadata for an object, this
+ * parameter has no effect.</p>
*/
inline HeadObjectRequest& WithRange(Aws::String&& value) { SetRange(std::move(value)); return *this;}
/**
- * <p>Downloads the specified range bytes of an object. For more information about
- * the HTTP Range header, see <a
- * href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35">http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35</a>.</p>
- * <p>Amazon S3 doesn't support retrieving multiple ranges of data per
- * <code>GET</code> request.</p>
+ * <p>Because <code>HeadObject</code> returns only the metadata for an object, this
+ * parameter has no effect.</p>
*/
inline HeadObjectRequest& WithRange(const char* value) { SetRange(value); return *this;}
@@ -772,61 +753,116 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline HeadObjectRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline HeadObjectRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline HeadObjectRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
+ /**
+ * <p>To retrieve the checksum, this parameter must be enabled.</p> <p>In addition,
+ * if you enable <code>ChecksumMode</code> and the object is encrypted with Amazon
+ * Web Services Key Management Service (Amazon Web Services KMS), you must have
+ * permission to use the <code>kms:Decrypt</code> action for the request to
+ * succeed.</p>
+ */
+ inline const ChecksumMode& GetChecksumMode() const{ return m_checksumMode; }
+
+ /**
+ * <p>To retrieve the checksum, this parameter must be enabled.</p> <p>In addition,
+ * if you enable <code>ChecksumMode</code> and the object is encrypted with Amazon
+ * Web Services Key Management Service (Amazon Web Services KMS), you must have
+ * permission to use the <code>kms:Decrypt</code> action for the request to
+ * succeed.</p>
+ */
+ inline bool ChecksumModeHasBeenSet() const { return m_checksumModeHasBeenSet; }
+
+ /**
+ * <p>To retrieve the checksum, this parameter must be enabled.</p> <p>In addition,
+ * if you enable <code>ChecksumMode</code> and the object is encrypted with Amazon
+ * Web Services Key Management Service (Amazon Web Services KMS), you must have
+ * permission to use the <code>kms:Decrypt</code> action for the request to
+ * succeed.</p>
+ */
+ inline void SetChecksumMode(const ChecksumMode& value) { m_checksumModeHasBeenSet = true; m_checksumMode = value; }
+
+ /**
+ * <p>To retrieve the checksum, this parameter must be enabled.</p> <p>In addition,
+ * if you enable <code>ChecksumMode</code> and the object is encrypted with Amazon
+ * Web Services Key Management Service (Amazon Web Services KMS), you must have
+ * permission to use the <code>kms:Decrypt</code> action for the request to
+ * succeed.</p>
+ */
+ inline void SetChecksumMode(ChecksumMode&& value) { m_checksumModeHasBeenSet = true; m_checksumMode = std::move(value); }
+
+ /**
+ * <p>To retrieve the checksum, this parameter must be enabled.</p> <p>In addition,
+ * if you enable <code>ChecksumMode</code> and the object is encrypted with Amazon
+ * Web Services Key Management Service (Amazon Web Services KMS), you must have
+ * permission to use the <code>kms:Decrypt</code> action for the request to
+ * succeed.</p>
+ */
+ inline HeadObjectRequest& WithChecksumMode(const ChecksumMode& value) { SetChecksumMode(value); return *this;}
+
+ /**
+ * <p>To retrieve the checksum, this parameter must be enabled.</p> <p>In addition,
+ * if you enable <code>ChecksumMode</code> and the object is encrypted with Amazon
+ * Web Services Key Management Service (Amazon Web Services KMS), you must have
+ * permission to use the <code>kms:Decrypt</code> action for the request to
+ * succeed.</p>
+ */
+ inline HeadObjectRequest& WithChecksumMode(ChecksumMode&& value) { SetChecksumMode(std::move(value)); return *this;}
+
+
inline const Aws::Map<Aws::String, Aws::String>& GetCustomizedAccessLogTag() const{ return m_customizedAccessLogTag; }
@@ -869,49 +905,52 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_ifMatch;
- bool m_ifMatchHasBeenSet;
+ bool m_ifMatchHasBeenSet = false;
Aws::Utils::DateTime m_ifModifiedSince;
- bool m_ifModifiedSinceHasBeenSet;
+ bool m_ifModifiedSinceHasBeenSet = false;
Aws::String m_ifNoneMatch;
- bool m_ifNoneMatchHasBeenSet;
+ bool m_ifNoneMatchHasBeenSet = false;
Aws::Utils::DateTime m_ifUnmodifiedSince;
- bool m_ifUnmodifiedSinceHasBeenSet;
+ bool m_ifUnmodifiedSinceHasBeenSet = false;
Aws::String m_key;
- bool m_keyHasBeenSet;
+ bool m_keyHasBeenSet = false;
Aws::String m_range;
- bool m_rangeHasBeenSet;
+ bool m_rangeHasBeenSet = false;
Aws::String m_versionId;
- bool m_versionIdHasBeenSet;
+ bool m_versionIdHasBeenSet = false;
Aws::String m_sSECustomerAlgorithm;
- bool m_sSECustomerAlgorithmHasBeenSet;
+ bool m_sSECustomerAlgorithmHasBeenSet = false;
Aws::String m_sSECustomerKey;
- bool m_sSECustomerKeyHasBeenSet;
+ bool m_sSECustomerKeyHasBeenSet = false;
Aws::String m_sSECustomerKeyMD5;
- bool m_sSECustomerKeyMD5HasBeenSet;
+ bool m_sSECustomerKeyMD5HasBeenSet = false;
RequestPayer m_requestPayer;
- bool m_requestPayerHasBeenSet;
+ bool m_requestPayerHasBeenSet = false;
int m_partNumber;
- bool m_partNumberHasBeenSet;
+ bool m_partNumberHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
+
+ ChecksumMode m_checksumMode;
+ bool m_checksumModeHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/HeadObjectResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/HeadObjectResult.h
index e12fddb225..fe2fd7373f 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/HeadObjectResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/HeadObjectResult.h
@@ -33,12 +33,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API HeadObjectResult
+ class HeadObjectResult
{
public:
- HeadObjectResult();
- HeadObjectResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- HeadObjectResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API HeadObjectResult();
+ AWS_S3_API HeadObjectResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API HeadObjectResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
@@ -98,57 +98,57 @@ namespace Model
/**
* <p>If the object expiration is configured (see PUT Bucket lifecycle), the
- * response includes this header. It includes the expiry-date and rule-id key-value
- * pairs providing object expiration information. The value of the rule-id is URL
- * encoded.</p>
+ * response includes this header. It includes the <code>expiry-date</code> and
+ * <code>rule-id</code> key-value pairs providing object expiration information.
+ * The value of the <code>rule-id</code> is URL-encoded.</p>
*/
inline const Aws::String& GetExpiration() const{ return m_expiration; }
/**
* <p>If the object expiration is configured (see PUT Bucket lifecycle), the
- * response includes this header. It includes the expiry-date and rule-id key-value
- * pairs providing object expiration information. The value of the rule-id is URL
- * encoded.</p>
+ * response includes this header. It includes the <code>expiry-date</code> and
+ * <code>rule-id</code> key-value pairs providing object expiration information.
+ * The value of the <code>rule-id</code> is URL-encoded.</p>
*/
inline void SetExpiration(const Aws::String& value) { m_expiration = value; }
/**
* <p>If the object expiration is configured (see PUT Bucket lifecycle), the
- * response includes this header. It includes the expiry-date and rule-id key-value
- * pairs providing object expiration information. The value of the rule-id is URL
- * encoded.</p>
+ * response includes this header. It includes the <code>expiry-date</code> and
+ * <code>rule-id</code> key-value pairs providing object expiration information.
+ * The value of the <code>rule-id</code> is URL-encoded.</p>
*/
inline void SetExpiration(Aws::String&& value) { m_expiration = std::move(value); }
/**
* <p>If the object expiration is configured (see PUT Bucket lifecycle), the
- * response includes this header. It includes the expiry-date and rule-id key-value
- * pairs providing object expiration information. The value of the rule-id is URL
- * encoded.</p>
+ * response includes this header. It includes the <code>expiry-date</code> and
+ * <code>rule-id</code> key-value pairs providing object expiration information.
+ * The value of the <code>rule-id</code> is URL-encoded.</p>
*/
inline void SetExpiration(const char* value) { m_expiration.assign(value); }
/**
* <p>If the object expiration is configured (see PUT Bucket lifecycle), the
- * response includes this header. It includes the expiry-date and rule-id key-value
- * pairs providing object expiration information. The value of the rule-id is URL
- * encoded.</p>
+ * response includes this header. It includes the <code>expiry-date</code> and
+ * <code>rule-id</code> key-value pairs providing object expiration information.
+ * The value of the <code>rule-id</code> is URL-encoded.</p>
*/
inline HeadObjectResult& WithExpiration(const Aws::String& value) { SetExpiration(value); return *this;}
/**
* <p>If the object expiration is configured (see PUT Bucket lifecycle), the
- * response includes this header. It includes the expiry-date and rule-id key-value
- * pairs providing object expiration information. The value of the rule-id is URL
- * encoded.</p>
+ * response includes this header. It includes the <code>expiry-date</code> and
+ * <code>rule-id</code> key-value pairs providing object expiration information.
+ * The value of the <code>rule-id</code> is URL-encoded.</p>
*/
inline HeadObjectResult& WithExpiration(Aws::String&& value) { SetExpiration(std::move(value)); return *this;}
/**
* <p>If the object expiration is configured (see PUT Bucket lifecycle), the
- * response includes this header. It includes the expiry-date and rule-id key-value
- * pairs providing object expiration information. The value of the rule-id is URL
- * encoded.</p>
+ * response includes this header. It includes the <code>expiry-date</code> and
+ * <code>rule-id</code> key-value pairs providing object expiration information.
+ * The value of the <code>rule-id</code> is URL-encoded.</p>
*/
inline HeadObjectResult& WithExpiration(const char* value) { SetExpiration(value); return *this;}
@@ -342,44 +342,328 @@ namespace Model
/**
- * <p>An ETag is an opaque identifier assigned by a web server to a specific
- * version of a resource found at a URL.</p>
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumCRC32() const{ return m_checksumCRC32; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(const Aws::String& value) { m_checksumCRC32 = value; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(Aws::String&& value) { m_checksumCRC32 = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(const char* value) { m_checksumCRC32.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline HeadObjectResult& WithChecksumCRC32(const Aws::String& value) { SetChecksumCRC32(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline HeadObjectResult& WithChecksumCRC32(Aws::String&& value) { SetChecksumCRC32(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline HeadObjectResult& WithChecksumCRC32(const char* value) { SetChecksumCRC32(value); return *this;}
+
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumCRC32C() const{ return m_checksumCRC32C; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(const Aws::String& value) { m_checksumCRC32C = value; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(Aws::String&& value) { m_checksumCRC32C = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(const char* value) { m_checksumCRC32C.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline HeadObjectResult& WithChecksumCRC32C(const Aws::String& value) { SetChecksumCRC32C(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline HeadObjectResult& WithChecksumCRC32C(Aws::String&& value) { SetChecksumCRC32C(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline HeadObjectResult& WithChecksumCRC32C(const char* value) { SetChecksumCRC32C(value); return *this;}
+
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumSHA1() const{ return m_checksumSHA1; }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(const Aws::String& value) { m_checksumSHA1 = value; }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(Aws::String&& value) { m_checksumSHA1 = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(const char* value) { m_checksumSHA1.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline HeadObjectResult& WithChecksumSHA1(const Aws::String& value) { SetChecksumSHA1(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline HeadObjectResult& WithChecksumSHA1(Aws::String&& value) { SetChecksumSHA1(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline HeadObjectResult& WithChecksumSHA1(const char* value) { SetChecksumSHA1(value); return *this;}
+
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumSHA256() const{ return m_checksumSHA256; }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(const Aws::String& value) { m_checksumSHA256 = value; }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(Aws::String&& value) { m_checksumSHA256 = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(const char* value) { m_checksumSHA256.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline HeadObjectResult& WithChecksumSHA256(const Aws::String& value) { SetChecksumSHA256(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline HeadObjectResult& WithChecksumSHA256(Aws::String&& value) { SetChecksumSHA256(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline HeadObjectResult& WithChecksumSHA256(const char* value) { SetChecksumSHA256(value); return *this;}
+
+
+ /**
+ * <p>An entity tag (ETag) is an opaque identifier assigned by a web server to a
+ * specific version of a resource found at a URL.</p>
*/
inline const Aws::String& GetETag() const{ return m_eTag; }
/**
- * <p>An ETag is an opaque identifier assigned by a web server to a specific
- * version of a resource found at a URL.</p>
+ * <p>An entity tag (ETag) is an opaque identifier assigned by a web server to a
+ * specific version of a resource found at a URL.</p>
*/
inline void SetETag(const Aws::String& value) { m_eTag = value; }
/**
- * <p>An ETag is an opaque identifier assigned by a web server to a specific
- * version of a resource found at a URL.</p>
+ * <p>An entity tag (ETag) is an opaque identifier assigned by a web server to a
+ * specific version of a resource found at a URL.</p>
*/
inline void SetETag(Aws::String&& value) { m_eTag = std::move(value); }
/**
- * <p>An ETag is an opaque identifier assigned by a web server to a specific
- * version of a resource found at a URL.</p>
+ * <p>An entity tag (ETag) is an opaque identifier assigned by a web server to a
+ * specific version of a resource found at a URL.</p>
*/
inline void SetETag(const char* value) { m_eTag.assign(value); }
/**
- * <p>An ETag is an opaque identifier assigned by a web server to a specific
- * version of a resource found at a URL.</p>
+ * <p>An entity tag (ETag) is an opaque identifier assigned by a web server to a
+ * specific version of a resource found at a URL.</p>
*/
inline HeadObjectResult& WithETag(const Aws::String& value) { SetETag(value); return *this;}
/**
- * <p>An ETag is an opaque identifier assigned by a web server to a specific
- * version of a resource found at a URL.</p>
+ * <p>An entity tag (ETag) is an opaque identifier assigned by a web server to a
+ * specific version of a resource found at a URL.</p>
*/
inline HeadObjectResult& WithETag(Aws::String&& value) { SetETag(std::move(value)); return *this;}
/**
- * <p>An ETag is an opaque identifier assigned by a web server to a specific
- * version of a resource found at a URL.</p>
+ * <p>An entity tag (ETag) is an opaque identifier assigned by a web server to a
+ * specific version of a resource found at a URL.</p>
*/
inline HeadObjectResult& WithETag(const char* value) { SetETag(value); return *this;}
@@ -719,40 +1003,40 @@ namespace Model
/**
- * <p>If the object is stored using server-side encryption either with an AWS KMS
- * customer master key (CMK) or an Amazon S3-managed encryption key, the response
+ * <p>If the object is stored using server-side encryption either with an Amazon
+ * Web Services KMS key or an Amazon S3-managed encryption key, the response
* includes this header with the value of the server-side encryption algorithm used
* when storing this object in Amazon S3 (for example, AES256, aws:kms).</p>
*/
inline const ServerSideEncryption& GetServerSideEncryption() const{ return m_serverSideEncryption; }
/**
- * <p>If the object is stored using server-side encryption either with an AWS KMS
- * customer master key (CMK) or an Amazon S3-managed encryption key, the response
+ * <p>If the object is stored using server-side encryption either with an Amazon
+ * Web Services KMS key or an Amazon S3-managed encryption key, the response
* includes this header with the value of the server-side encryption algorithm used
* when storing this object in Amazon S3 (for example, AES256, aws:kms).</p>
*/
inline void SetServerSideEncryption(const ServerSideEncryption& value) { m_serverSideEncryption = value; }
/**
- * <p>If the object is stored using server-side encryption either with an AWS KMS
- * customer master key (CMK) or an Amazon S3-managed encryption key, the response
+ * <p>If the object is stored using server-side encryption either with an Amazon
+ * Web Services KMS key or an Amazon S3-managed encryption key, the response
* includes this header with the value of the server-side encryption algorithm used
* when storing this object in Amazon S3 (for example, AES256, aws:kms).</p>
*/
inline void SetServerSideEncryption(ServerSideEncryption&& value) { m_serverSideEncryption = std::move(value); }
/**
- * <p>If the object is stored using server-side encryption either with an AWS KMS
- * customer master key (CMK) or an Amazon S3-managed encryption key, the response
+ * <p>If the object is stored using server-side encryption either with an Amazon
+ * Web Services KMS key or an Amazon S3-managed encryption key, the response
* includes this header with the value of the server-side encryption algorithm used
* when storing this object in Amazon S3 (for example, AES256, aws:kms).</p>
*/
inline HeadObjectResult& WithServerSideEncryption(const ServerSideEncryption& value) { SetServerSideEncryption(value); return *this;}
/**
- * <p>If the object is stored using server-side encryption either with an AWS KMS
- * customer master key (CMK) or an Amazon S3-managed encryption key, the response
+ * <p>If the object is stored using server-side encryption either with an Amazon
+ * Web Services KMS key or an Amazon S3-managed encryption key, the response
* includes this header with the value of the server-side encryption algorithm used
* when storing this object in Amazon S3 (for example, AES256, aws:kms).</p>
*/
@@ -921,70 +1205,70 @@ namespace Model
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline const Aws::String& GetSSEKMSKeyId() const{ return m_sSEKMSKeyId; }
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline void SetSSEKMSKeyId(const Aws::String& value) { m_sSEKMSKeyId = value; }
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline void SetSSEKMSKeyId(Aws::String&& value) { m_sSEKMSKeyId = std::move(value); }
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline void SetSSEKMSKeyId(const char* value) { m_sSEKMSKeyId.assign(value); }
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline HeadObjectResult& WithSSEKMSKeyId(const Aws::String& value) { SetSSEKMSKeyId(value); return *this;}
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline HeadObjectResult& WithSSEKMSKeyId(Aws::String&& value) { SetSSEKMSKeyId(std::move(value)); return *this;}
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline HeadObjectResult& WithSSEKMSKeyId(const char* value) { SetSSEKMSKeyId(value); return *this;}
/**
* <p>Indicates whether the object uses an S3 Bucket Key for server-side encryption
- * with AWS KMS (SSE-KMS).</p>
+ * with Amazon Web Services KMS (SSE-KMS).</p>
*/
inline bool GetBucketKeyEnabled() const{ return m_bucketKeyEnabled; }
/**
* <p>Indicates whether the object uses an S3 Bucket Key for server-side encryption
- * with AWS KMS (SSE-KMS).</p>
+ * with Amazon Web Services KMS (SSE-KMS).</p>
*/
inline void SetBucketKeyEnabled(bool value) { m_bucketKeyEnabled = value; }
/**
* <p>Indicates whether the object uses an S3 Bucket Key for server-side encryption
- * with AWS KMS (SSE-KMS).</p>
+ * with Amazon Web Services KMS (SSE-KMS).</p>
*/
inline HeadObjectResult& WithBucketKeyEnabled(bool value) { SetBucketKeyEnabled(value); return *this;}
@@ -1059,26 +1343,27 @@ namespace Model
* object (<code>GetObject</code>) or object metadata (<code>HeadObject</code>)
* from these buckets, Amazon S3 will return the
* <code>x-amz-replication-status</code> header in the response as follows:</p>
- * <ul> <li> <p>If requesting an object from the source bucket — Amazon S3 will
- * return the <code>x-amz-replication-status</code> header if the object in your
- * request is eligible for replication.</p> <p> For example, suppose that in your
- * replication configuration, you specify object prefix <code>TaxDocs</code>
+ * <ul> <li> <p> <b>If requesting an object from the source bucket</b>, Amazon S3
+ * will return the <code>x-amz-replication-status</code> header if the object in
+ * your request is eligible for replication.</p> <p> For example, suppose that in
+ * your replication configuration, you specify object prefix <code>TaxDocs</code>
* requesting Amazon S3 to replicate objects with key prefix <code>TaxDocs</code>.
* Any objects you upload with this key name prefix, for example
* <code>TaxDocs/document1.pdf</code>, are eligible for replication. For any object
* request with this key name prefix, Amazon S3 will return the
* <code>x-amz-replication-status</code> header with value PENDING, COMPLETED or
- * FAILED indicating object replication status.</p> </li> <li> <p>If requesting an
- * object from a destination bucket — Amazon S3 will return the
+ * FAILED indicating object replication status.</p> </li> <li> <p> <b>If requesting
+ * an object from a destination bucket</b>, Amazon S3 will return the
* <code>x-amz-replication-status</code> header with value REPLICA if the object in
* your request is a replica that Amazon S3 created and there is no replica
- * modification replication in progress.</p> </li> <li> <p>When replicating objects
- * to multiple destination buckets the <code>x-amz-replication-status</code> header
- * acts differently. The header of the source object will only return a value of
- * COMPLETED when replication is successful to all destinations. The header will
- * remain at value PENDING until replication has completed for all destinations. If
- * one or more destinations fails replication the header will return FAILED. </p>
- * </li> </ul> <p>For more information, see <a
+ * modification replication in progress.</p> </li> <li> <p> <b>When replicating
+ * objects to multiple destination buckets</b>, the
+ * <code>x-amz-replication-status</code> header acts differently. The header of the
+ * source object will only return a value of COMPLETED when replication is
+ * successful to all destinations. The header will remain at value PENDING until
+ * replication has completed for all destinations. If one or more destinations
+ * fails replication the header will return FAILED. </p> </li> </ul> <p>For more
+ * information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Replication</a>.</p>
*/
inline const ReplicationStatus& GetReplicationStatus() const{ return m_replicationStatus; }
@@ -1091,26 +1376,27 @@ namespace Model
* object (<code>GetObject</code>) or object metadata (<code>HeadObject</code>)
* from these buckets, Amazon S3 will return the
* <code>x-amz-replication-status</code> header in the response as follows:</p>
- * <ul> <li> <p>If requesting an object from the source bucket — Amazon S3 will
- * return the <code>x-amz-replication-status</code> header if the object in your
- * request is eligible for replication.</p> <p> For example, suppose that in your
- * replication configuration, you specify object prefix <code>TaxDocs</code>
+ * <ul> <li> <p> <b>If requesting an object from the source bucket</b>, Amazon S3
+ * will return the <code>x-amz-replication-status</code> header if the object in
+ * your request is eligible for replication.</p> <p> For example, suppose that in
+ * your replication configuration, you specify object prefix <code>TaxDocs</code>
* requesting Amazon S3 to replicate objects with key prefix <code>TaxDocs</code>.
* Any objects you upload with this key name prefix, for example
* <code>TaxDocs/document1.pdf</code>, are eligible for replication. For any object
* request with this key name prefix, Amazon S3 will return the
* <code>x-amz-replication-status</code> header with value PENDING, COMPLETED or
- * FAILED indicating object replication status.</p> </li> <li> <p>If requesting an
- * object from a destination bucket — Amazon S3 will return the
+ * FAILED indicating object replication status.</p> </li> <li> <p> <b>If requesting
+ * an object from a destination bucket</b>, Amazon S3 will return the
* <code>x-amz-replication-status</code> header with value REPLICA if the object in
* your request is a replica that Amazon S3 created and there is no replica
- * modification replication in progress.</p> </li> <li> <p>When replicating objects
- * to multiple destination buckets the <code>x-amz-replication-status</code> header
- * acts differently. The header of the source object will only return a value of
- * COMPLETED when replication is successful to all destinations. The header will
- * remain at value PENDING until replication has completed for all destinations. If
- * one or more destinations fails replication the header will return FAILED. </p>
- * </li> </ul> <p>For more information, see <a
+ * modification replication in progress.</p> </li> <li> <p> <b>When replicating
+ * objects to multiple destination buckets</b>, the
+ * <code>x-amz-replication-status</code> header acts differently. The header of the
+ * source object will only return a value of COMPLETED when replication is
+ * successful to all destinations. The header will remain at value PENDING until
+ * replication has completed for all destinations. If one or more destinations
+ * fails replication the header will return FAILED. </p> </li> </ul> <p>For more
+ * information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Replication</a>.</p>
*/
inline void SetReplicationStatus(const ReplicationStatus& value) { m_replicationStatus = value; }
@@ -1123,26 +1409,27 @@ namespace Model
* object (<code>GetObject</code>) or object metadata (<code>HeadObject</code>)
* from these buckets, Amazon S3 will return the
* <code>x-amz-replication-status</code> header in the response as follows:</p>
- * <ul> <li> <p>If requesting an object from the source bucket — Amazon S3 will
- * return the <code>x-amz-replication-status</code> header if the object in your
- * request is eligible for replication.</p> <p> For example, suppose that in your
- * replication configuration, you specify object prefix <code>TaxDocs</code>
+ * <ul> <li> <p> <b>If requesting an object from the source bucket</b>, Amazon S3
+ * will return the <code>x-amz-replication-status</code> header if the object in
+ * your request is eligible for replication.</p> <p> For example, suppose that in
+ * your replication configuration, you specify object prefix <code>TaxDocs</code>
* requesting Amazon S3 to replicate objects with key prefix <code>TaxDocs</code>.
* Any objects you upload with this key name prefix, for example
* <code>TaxDocs/document1.pdf</code>, are eligible for replication. For any object
* request with this key name prefix, Amazon S3 will return the
* <code>x-amz-replication-status</code> header with value PENDING, COMPLETED or
- * FAILED indicating object replication status.</p> </li> <li> <p>If requesting an
- * object from a destination bucket — Amazon S3 will return the
+ * FAILED indicating object replication status.</p> </li> <li> <p> <b>If requesting
+ * an object from a destination bucket</b>, Amazon S3 will return the
* <code>x-amz-replication-status</code> header with value REPLICA if the object in
* your request is a replica that Amazon S3 created and there is no replica
- * modification replication in progress.</p> </li> <li> <p>When replicating objects
- * to multiple destination buckets the <code>x-amz-replication-status</code> header
- * acts differently. The header of the source object will only return a value of
- * COMPLETED when replication is successful to all destinations. The header will
- * remain at value PENDING until replication has completed for all destinations. If
- * one or more destinations fails replication the header will return FAILED. </p>
- * </li> </ul> <p>For more information, see <a
+ * modification replication in progress.</p> </li> <li> <p> <b>When replicating
+ * objects to multiple destination buckets</b>, the
+ * <code>x-amz-replication-status</code> header acts differently. The header of the
+ * source object will only return a value of COMPLETED when replication is
+ * successful to all destinations. The header will remain at value PENDING until
+ * replication has completed for all destinations. If one or more destinations
+ * fails replication the header will return FAILED. </p> </li> </ul> <p>For more
+ * information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Replication</a>.</p>
*/
inline void SetReplicationStatus(ReplicationStatus&& value) { m_replicationStatus = std::move(value); }
@@ -1155,26 +1442,27 @@ namespace Model
* object (<code>GetObject</code>) or object metadata (<code>HeadObject</code>)
* from these buckets, Amazon S3 will return the
* <code>x-amz-replication-status</code> header in the response as follows:</p>
- * <ul> <li> <p>If requesting an object from the source bucket — Amazon S3 will
- * return the <code>x-amz-replication-status</code> header if the object in your
- * request is eligible for replication.</p> <p> For example, suppose that in your
- * replication configuration, you specify object prefix <code>TaxDocs</code>
+ * <ul> <li> <p> <b>If requesting an object from the source bucket</b>, Amazon S3
+ * will return the <code>x-amz-replication-status</code> header if the object in
+ * your request is eligible for replication.</p> <p> For example, suppose that in
+ * your replication configuration, you specify object prefix <code>TaxDocs</code>
* requesting Amazon S3 to replicate objects with key prefix <code>TaxDocs</code>.
* Any objects you upload with this key name prefix, for example
* <code>TaxDocs/document1.pdf</code>, are eligible for replication. For any object
* request with this key name prefix, Amazon S3 will return the
* <code>x-amz-replication-status</code> header with value PENDING, COMPLETED or
- * FAILED indicating object replication status.</p> </li> <li> <p>If requesting an
- * object from a destination bucket — Amazon S3 will return the
+ * FAILED indicating object replication status.</p> </li> <li> <p> <b>If requesting
+ * an object from a destination bucket</b>, Amazon S3 will return the
* <code>x-amz-replication-status</code> header with value REPLICA if the object in
* your request is a replica that Amazon S3 created and there is no replica
- * modification replication in progress.</p> </li> <li> <p>When replicating objects
- * to multiple destination buckets the <code>x-amz-replication-status</code> header
- * acts differently. The header of the source object will only return a value of
- * COMPLETED when replication is successful to all destinations. The header will
- * remain at value PENDING until replication has completed for all destinations. If
- * one or more destinations fails replication the header will return FAILED. </p>
- * </li> </ul> <p>For more information, see <a
+ * modification replication in progress.</p> </li> <li> <p> <b>When replicating
+ * objects to multiple destination buckets</b>, the
+ * <code>x-amz-replication-status</code> header acts differently. The header of the
+ * source object will only return a value of COMPLETED when replication is
+ * successful to all destinations. The header will remain at value PENDING until
+ * replication has completed for all destinations. If one or more destinations
+ * fails replication the header will return FAILED. </p> </li> </ul> <p>For more
+ * information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Replication</a>.</p>
*/
inline HeadObjectResult& WithReplicationStatus(const ReplicationStatus& value) { SetReplicationStatus(value); return *this;}
@@ -1187,43 +1475,50 @@ namespace Model
* object (<code>GetObject</code>) or object metadata (<code>HeadObject</code>)
* from these buckets, Amazon S3 will return the
* <code>x-amz-replication-status</code> header in the response as follows:</p>
- * <ul> <li> <p>If requesting an object from the source bucket — Amazon S3 will
- * return the <code>x-amz-replication-status</code> header if the object in your
- * request is eligible for replication.</p> <p> For example, suppose that in your
- * replication configuration, you specify object prefix <code>TaxDocs</code>
+ * <ul> <li> <p> <b>If requesting an object from the source bucket</b>, Amazon S3
+ * will return the <code>x-amz-replication-status</code> header if the object in
+ * your request is eligible for replication.</p> <p> For example, suppose that in
+ * your replication configuration, you specify object prefix <code>TaxDocs</code>
* requesting Amazon S3 to replicate objects with key prefix <code>TaxDocs</code>.
* Any objects you upload with this key name prefix, for example
* <code>TaxDocs/document1.pdf</code>, are eligible for replication. For any object
* request with this key name prefix, Amazon S3 will return the
* <code>x-amz-replication-status</code> header with value PENDING, COMPLETED or
- * FAILED indicating object replication status.</p> </li> <li> <p>If requesting an
- * object from a destination bucket — Amazon S3 will return the
+ * FAILED indicating object replication status.</p> </li> <li> <p> <b>If requesting
+ * an object from a destination bucket</b>, Amazon S3 will return the
* <code>x-amz-replication-status</code> header with value REPLICA if the object in
* your request is a replica that Amazon S3 created and there is no replica
- * modification replication in progress.</p> </li> <li> <p>When replicating objects
- * to multiple destination buckets the <code>x-amz-replication-status</code> header
- * acts differently. The header of the source object will only return a value of
- * COMPLETED when replication is successful to all destinations. The header will
- * remain at value PENDING until replication has completed for all destinations. If
- * one or more destinations fails replication the header will return FAILED. </p>
- * </li> </ul> <p>For more information, see <a
+ * modification replication in progress.</p> </li> <li> <p> <b>When replicating
+ * objects to multiple destination buckets</b>, the
+ * <code>x-amz-replication-status</code> header acts differently. The header of the
+ * source object will only return a value of COMPLETED when replication is
+ * successful to all destinations. The header will remain at value PENDING until
+ * replication has completed for all destinations. If one or more destinations
+ * fails replication the header will return FAILED. </p> </li> </ul> <p>For more
+ * information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Replication</a>.</p>
*/
inline HeadObjectResult& WithReplicationStatus(ReplicationStatus&& value) { SetReplicationStatus(std::move(value)); return *this;}
/**
- * <p>The count of parts this object has.</p>
+ * <p>The count of parts this object has. This value is only returned if you
+ * specify <code>partNumber</code> in your request and the object was uploaded as a
+ * multipart upload.</p>
*/
inline int GetPartsCount() const{ return m_partsCount; }
/**
- * <p>The count of parts this object has.</p>
+ * <p>The count of parts this object has. This value is only returned if you
+ * specify <code>partNumber</code> in your request and the object was uploaded as a
+ * multipart upload.</p>
*/
inline void SetPartsCount(int value) { m_partsCount = value; }
/**
- * <p>The count of parts this object has.</p>
+ * <p>The count of parts this object has. This value is only returned if you
+ * specify <code>partNumber</code> in your request and the object was uploaded as a
+ * multipart upload.</p>
*/
inline HeadObjectResult& WithPartsCount(int value) { SetPartsCount(value); return *this;}
@@ -1381,6 +1676,14 @@ namespace Model
long long m_contentLength;
+ Aws::String m_checksumCRC32;
+
+ Aws::String m_checksumCRC32C;
+
+ Aws::String m_checksumSHA1;
+
+ Aws::String m_checksumSHA256;
+
Aws::String m_eTag;
int m_missingMeta;
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/IndexDocument.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/IndexDocument.h
index 8f303f7252..992c178465 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/IndexDocument.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/IndexDocument.h
@@ -27,14 +27,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/IndexDocument">AWS
* API Reference</a></p>
*/
- class AWS_S3_API IndexDocument
+ class IndexDocument
{
public:
- IndexDocument();
- IndexDocument(const Aws::Utils::Xml::XmlNode& xmlNode);
- IndexDocument& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API IndexDocument();
+ AWS_S3_API IndexDocument(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API IndexDocument& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -144,7 +144,7 @@ namespace Model
private:
Aws::String m_suffix;
- bool m_suffixHasBeenSet;
+ bool m_suffixHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Initiator.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Initiator.h
index 7e831b799d..4d7d331f27 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Initiator.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Initiator.h
@@ -28,61 +28,61 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/Initiator">AWS API
* Reference</a></p>
*/
- class AWS_S3_API Initiator
+ class Initiator
{
public:
- Initiator();
- Initiator(const Aws::Utils::Xml::XmlNode& xmlNode);
- Initiator& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Initiator();
+ AWS_S3_API Initiator(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Initiator& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
- * <p>If the principal is an AWS account, it provides the Canonical User ID. If the
- * principal is an IAM User, it provides a user ARN value.</p>
+ * <p>If the principal is an Amazon Web Services account, it provides the Canonical
+ * User ID. If the principal is an IAM User, it provides a user ARN value.</p>
*/
inline const Aws::String& GetID() const{ return m_iD; }
/**
- * <p>If the principal is an AWS account, it provides the Canonical User ID. If the
- * principal is an IAM User, it provides a user ARN value.</p>
+ * <p>If the principal is an Amazon Web Services account, it provides the Canonical
+ * User ID. If the principal is an IAM User, it provides a user ARN value.</p>
*/
inline bool IDHasBeenSet() const { return m_iDHasBeenSet; }
/**
- * <p>If the principal is an AWS account, it provides the Canonical User ID. If the
- * principal is an IAM User, it provides a user ARN value.</p>
+ * <p>If the principal is an Amazon Web Services account, it provides the Canonical
+ * User ID. If the principal is an IAM User, it provides a user ARN value.</p>
*/
inline void SetID(const Aws::String& value) { m_iDHasBeenSet = true; m_iD = value; }
/**
- * <p>If the principal is an AWS account, it provides the Canonical User ID. If the
- * principal is an IAM User, it provides a user ARN value.</p>
+ * <p>If the principal is an Amazon Web Services account, it provides the Canonical
+ * User ID. If the principal is an IAM User, it provides a user ARN value.</p>
*/
inline void SetID(Aws::String&& value) { m_iDHasBeenSet = true; m_iD = std::move(value); }
/**
- * <p>If the principal is an AWS account, it provides the Canonical User ID. If the
- * principal is an IAM User, it provides a user ARN value.</p>
+ * <p>If the principal is an Amazon Web Services account, it provides the Canonical
+ * User ID. If the principal is an IAM User, it provides a user ARN value.</p>
*/
inline void SetID(const char* value) { m_iDHasBeenSet = true; m_iD.assign(value); }
/**
- * <p>If the principal is an AWS account, it provides the Canonical User ID. If the
- * principal is an IAM User, it provides a user ARN value.</p>
+ * <p>If the principal is an Amazon Web Services account, it provides the Canonical
+ * User ID. If the principal is an IAM User, it provides a user ARN value.</p>
*/
inline Initiator& WithID(const Aws::String& value) { SetID(value); return *this;}
/**
- * <p>If the principal is an AWS account, it provides the Canonical User ID. If the
- * principal is an IAM User, it provides a user ARN value.</p>
+ * <p>If the principal is an Amazon Web Services account, it provides the Canonical
+ * User ID. If the principal is an IAM User, it provides a user ARN value.</p>
*/
inline Initiator& WithID(Aws::String&& value) { SetID(std::move(value)); return *this;}
/**
- * <p>If the principal is an AWS account, it provides the Canonical User ID. If the
- * principal is an IAM User, it provides a user ARN value.</p>
+ * <p>If the principal is an Amazon Web Services account, it provides the Canonical
+ * User ID. If the principal is an IAM User, it provides a user ARN value.</p>
*/
inline Initiator& WithID(const char* value) { SetID(value); return *this;}
@@ -130,10 +130,10 @@ namespace Model
private:
Aws::String m_iD;
- bool m_iDHasBeenSet;
+ bool m_iDHasBeenSet = false;
Aws::String m_displayName;
- bool m_displayNameHasBeenSet;
+ bool m_displayNameHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InputSerialization.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InputSerialization.h
index 332b4ec21d..217575cb50 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InputSerialization.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InputSerialization.h
@@ -31,14 +31,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/InputSerialization">AWS
* API Reference</a></p>
*/
- class AWS_S3_API InputSerialization
+ class InputSerialization
{
public:
- InputSerialization();
- InputSerialization(const Aws::Utils::Xml::XmlNode& xmlNode);
- InputSerialization& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API InputSerialization();
+ AWS_S3_API InputSerialization(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API InputSerialization& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -173,16 +173,16 @@ namespace Model
private:
CSVInput m_cSV;
- bool m_cSVHasBeenSet;
+ bool m_cSVHasBeenSet = false;
CompressionType m_compressionType;
- bool m_compressionTypeHasBeenSet;
+ bool m_compressionTypeHasBeenSet = false;
JSONInput m_jSON;
- bool m_jSONHasBeenSet;
+ bool m_jSONHasBeenSet = false;
ParquetInput m_parquet;
- bool m_parquetHasBeenSet;
+ bool m_parquetHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/IntelligentTieringAndOperator.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/IntelligentTieringAndOperator.h
index f40740341b..e0931038fd 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/IntelligentTieringAndOperator.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/IntelligentTieringAndOperator.h
@@ -31,14 +31,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/IntelligentTieringAndOperator">AWS
* API Reference</a></p>
*/
- class AWS_S3_API IntelligentTieringAndOperator
+ class IntelligentTieringAndOperator
{
public:
- IntelligentTieringAndOperator();
- IntelligentTieringAndOperator(const Aws::Utils::Xml::XmlNode& xmlNode);
- IntelligentTieringAndOperator& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API IntelligentTieringAndOperator();
+ AWS_S3_API IntelligentTieringAndOperator(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API IntelligentTieringAndOperator& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -141,10 +141,10 @@ namespace Model
private:
Aws::String m_prefix;
- bool m_prefixHasBeenSet;
+ bool m_prefixHasBeenSet = false;
Aws::Vector<Tag> m_tags;
- bool m_tagsHasBeenSet;
+ bool m_tagsHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/IntelligentTieringConfiguration.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/IntelligentTieringConfiguration.h
index 5e89009326..044a68727b 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/IntelligentTieringConfiguration.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/IntelligentTieringConfiguration.h
@@ -36,14 +36,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/IntelligentTieringConfiguration">AWS
* API Reference</a></p>
*/
- class AWS_S3_API IntelligentTieringConfiguration
+ class IntelligentTieringConfiguration
{
public:
- IntelligentTieringConfiguration();
- IntelligentTieringConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
- IntelligentTieringConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API IntelligentTieringConfiguration();
+ AWS_S3_API IntelligentTieringConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API IntelligentTieringConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -206,16 +206,16 @@ namespace Model
private:
Aws::String m_id;
- bool m_idHasBeenSet;
+ bool m_idHasBeenSet = false;
IntelligentTieringFilter m_filter;
- bool m_filterHasBeenSet;
+ bool m_filterHasBeenSet = false;
IntelligentTieringStatus m_status;
- bool m_statusHasBeenSet;
+ bool m_statusHasBeenSet = false;
Aws::Vector<Tiering> m_tierings;
- bool m_tieringsHasBeenSet;
+ bool m_tieringsHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/IntelligentTieringFilter.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/IntelligentTieringFilter.h
index 9eb538ea13..a67a084744 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/IntelligentTieringFilter.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/IntelligentTieringFilter.h
@@ -30,14 +30,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/IntelligentTieringFilter">AWS
* API Reference</a></p>
*/
- class AWS_S3_API IntelligentTieringFilter
+ class IntelligentTieringFilter
{
public:
- IntelligentTieringFilter();
- IntelligentTieringFilter(const Aws::Utils::Xml::XmlNode& xmlNode);
- IntelligentTieringFilter& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API IntelligentTieringFilter();
+ AWS_S3_API IntelligentTieringFilter(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API IntelligentTieringFilter& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -185,13 +185,13 @@ namespace Model
private:
Aws::String m_prefix;
- bool m_prefixHasBeenSet;
+ bool m_prefixHasBeenSet = false;
Tag m_tag;
- bool m_tagHasBeenSet;
+ bool m_tagHasBeenSet = false;
IntelligentTieringAndOperator m_and;
- bool m_andHasBeenSet;
+ bool m_andHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InvalidObjectState.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InvalidObjectState.h
index 2ce6a101d2..7f381ecaee 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InvalidObjectState.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InvalidObjectState.h
@@ -29,14 +29,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/InvalidObjectState">AWS
* API Reference</a></p>
*/
- class AWS_S3_API InvalidObjectState
+ class InvalidObjectState
{
public:
- InvalidObjectState();
- InvalidObjectState(const Aws::Utils::Xml::XmlNode& xmlNode);
- InvalidObjectState& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API InvalidObjectState();
+ AWS_S3_API InvalidObjectState(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API InvalidObjectState& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
@@ -79,10 +79,10 @@ namespace Model
private:
StorageClass m_storageClass;
- bool m_storageClassHasBeenSet;
+ bool m_storageClassHasBeenSet = false;
IntelligentTieringAccessTier m_accessTier;
- bool m_accessTierHasBeenSet;
+ bool m_accessTierHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InventoryConfiguration.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InventoryConfiguration.h
index d48347ff65..fec504d7a7 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InventoryConfiguration.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InventoryConfiguration.h
@@ -32,19 +32,19 @@ namespace Model
* <p>Specifies the inventory configuration for an Amazon S3 bucket. For more
* information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketGETInventoryConfig.html">GET
- * Bucket inventory</a> in the <i>Amazon Simple Storage Service API Reference</i>.
- * </p><p><h3>See Also:</h3> <a
+ * Bucket inventory</a> in the <i>Amazon S3 API Reference</i>. </p><p><h3>See
+ * Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/InventoryConfiguration">AWS
* API Reference</a></p>
*/
- class AWS_S3_API InventoryConfiguration
+ class InventoryConfiguration
{
public:
- InventoryConfiguration();
- InventoryConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
- InventoryConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API InventoryConfiguration();
+ AWS_S3_API InventoryConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API InventoryConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -314,25 +314,25 @@ namespace Model
private:
InventoryDestination m_destination;
- bool m_destinationHasBeenSet;
+ bool m_destinationHasBeenSet = false;
bool m_isEnabled;
- bool m_isEnabledHasBeenSet;
+ bool m_isEnabledHasBeenSet = false;
InventoryFilter m_filter;
- bool m_filterHasBeenSet;
+ bool m_filterHasBeenSet = false;
Aws::String m_id;
- bool m_idHasBeenSet;
+ bool m_idHasBeenSet = false;
InventoryIncludedObjectVersions m_includedObjectVersions;
- bool m_includedObjectVersionsHasBeenSet;
+ bool m_includedObjectVersionsHasBeenSet = false;
Aws::Vector<InventoryOptionalField> m_optionalFields;
- bool m_optionalFieldsHasBeenSet;
+ bool m_optionalFieldsHasBeenSet = false;
InventorySchedule m_schedule;
- bool m_scheduleHasBeenSet;
+ bool m_scheduleHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InventoryDestination.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InventoryDestination.h
index 08f259cd74..8f56a7f92e 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InventoryDestination.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InventoryDestination.h
@@ -28,14 +28,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/InventoryDestination">AWS
* API Reference</a></p>
*/
- class AWS_S3_API InventoryDestination
+ class InventoryDestination
{
public:
- InventoryDestination();
- InventoryDestination(const Aws::Utils::Xml::XmlNode& xmlNode);
- InventoryDestination& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API InventoryDestination();
+ AWS_S3_API InventoryDestination(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API InventoryDestination& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -77,7 +77,7 @@ namespace Model
private:
InventoryS3BucketDestination m_s3BucketDestination;
- bool m_s3BucketDestinationHasBeenSet;
+ bool m_s3BucketDestinationHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InventoryEncryption.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InventoryEncryption.h
index 6c11c72634..aa0480d279 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InventoryEncryption.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InventoryEncryption.h
@@ -29,14 +29,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/InventoryEncryption">AWS
* API Reference</a></p>
*/
- class AWS_S3_API InventoryEncryption
+ class InventoryEncryption
{
public:
- InventoryEncryption();
- InventoryEncryption(const Aws::Utils::Xml::XmlNode& xmlNode);
- InventoryEncryption& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API InventoryEncryption();
+ AWS_S3_API InventoryEncryption(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API InventoryEncryption& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -103,10 +103,10 @@ namespace Model
private:
SSES3 m_sSES3;
- bool m_sSES3HasBeenSet;
+ bool m_sSES3HasBeenSet = false;
SSEKMS m_sSEKMS;
- bool m_sSEKMSHasBeenSet;
+ bool m_sSEKMSHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InventoryFilter.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InventoryFilter.h
index 919ccf6dd7..ba0662aded 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InventoryFilter.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InventoryFilter.h
@@ -28,14 +28,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/InventoryFilter">AWS
* API Reference</a></p>
*/
- class AWS_S3_API InventoryFilter
+ class InventoryFilter
{
public:
- InventoryFilter();
- InventoryFilter(const Aws::Utils::Xml::XmlNode& xmlNode);
- InventoryFilter& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API InventoryFilter();
+ AWS_S3_API InventoryFilter(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API InventoryFilter& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -89,7 +89,7 @@ namespace Model
private:
Aws::String m_prefix;
- bool m_prefixHasBeenSet;
+ bool m_prefixHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InventoryOptionalField.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InventoryOptionalField.h
index 9959aa0bfb..c96e4bd859 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InventoryOptionalField.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InventoryOptionalField.h
@@ -26,7 +26,9 @@ namespace Model
ObjectLockRetainUntilDate,
ObjectLockMode,
ObjectLockLegalHoldStatus,
- IntelligentTieringAccessTier
+ IntelligentTieringAccessTier,
+ BucketKeyStatus,
+ ChecksumAlgorithm
};
namespace InventoryOptionalFieldMapper
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InventoryS3BucketDestination.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InventoryS3BucketDestination.h
index d2f4f0027e..b907df63c7 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InventoryS3BucketDestination.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InventoryS3BucketDestination.h
@@ -30,14 +30,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/InventoryS3BucketDestination">AWS
* API Reference</a></p>
*/
- class AWS_S3_API InventoryS3BucketDestination
+ class InventoryS3BucketDestination
{
public:
- InventoryS3BucketDestination();
- InventoryS3BucketDestination(const Aws::Utils::Xml::XmlNode& xmlNode);
- InventoryS3BucketDestination& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API InventoryS3BucketDestination();
+ AWS_S3_API InventoryS3BucketDestination(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API InventoryS3BucketDestination& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -265,19 +265,19 @@ namespace Model
private:
Aws::String m_accountId;
- bool m_accountIdHasBeenSet;
+ bool m_accountIdHasBeenSet = false;
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
InventoryFormat m_format;
- bool m_formatHasBeenSet;
+ bool m_formatHasBeenSet = false;
Aws::String m_prefix;
- bool m_prefixHasBeenSet;
+ bool m_prefixHasBeenSet = false;
InventoryEncryption m_encryption;
- bool m_encryptionHasBeenSet;
+ bool m_encryptionHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InventorySchedule.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InventorySchedule.h
index 7a6933d2de..167b8e9f8a 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InventorySchedule.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/InventorySchedule.h
@@ -28,14 +28,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/InventorySchedule">AWS
* API Reference</a></p>
*/
- class AWS_S3_API InventorySchedule
+ class InventorySchedule
{
public:
- InventorySchedule();
- InventorySchedule(const Aws::Utils::Xml::XmlNode& xmlNode);
- InventorySchedule& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API InventorySchedule();
+ AWS_S3_API InventorySchedule(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API InventorySchedule& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -71,7 +71,7 @@ namespace Model
private:
InventoryFrequency m_frequency;
- bool m_frequencyHasBeenSet;
+ bool m_frequencyHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/JSONInput.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/JSONInput.h
index be157654bd..99da519a63 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/JSONInput.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/JSONInput.h
@@ -28,14 +28,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/JSONInput">AWS API
* Reference</a></p>
*/
- class AWS_S3_API JSONInput
+ class JSONInput
{
public:
- JSONInput();
- JSONInput(const Aws::Utils::Xml::XmlNode& xmlNode);
- JSONInput& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API JSONInput();
+ AWS_S3_API JSONInput(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API JSONInput& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -71,7 +71,7 @@ namespace Model
private:
JSONType m_type;
- bool m_typeHasBeenSet;
+ bool m_typeHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/JSONOutput.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/JSONOutput.h
index 8a4865a7c0..6c895bb785 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/JSONOutput.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/JSONOutput.h
@@ -28,14 +28,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/JSONOutput">AWS API
* Reference</a></p>
*/
- class AWS_S3_API JSONOutput
+ class JSONOutput
{
public:
- JSONOutput();
- JSONOutput(const Aws::Utils::Xml::XmlNode& xmlNode);
- JSONOutput& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API JSONOutput();
+ AWS_S3_API JSONOutput(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API JSONOutput& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -89,7 +89,7 @@ namespace Model
private:
Aws::String m_recordDelimiter;
- bool m_recordDelimiterHasBeenSet;
+ bool m_recordDelimiterHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LambdaFunctionConfiguration.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LambdaFunctionConfiguration.h
index 3e0041301e..160d9d6d90 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LambdaFunctionConfiguration.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LambdaFunctionConfiguration.h
@@ -26,19 +26,19 @@ namespace Model
{
/**
- * <p>A container for specifying the configuration for AWS Lambda
+ * <p>A container for specifying the configuration for Lambda
* notifications.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/LambdaFunctionConfiguration">AWS
* API Reference</a></p>
*/
- class AWS_S3_API LambdaFunctionConfiguration
+ class LambdaFunctionConfiguration
{
public:
- LambdaFunctionConfiguration();
- LambdaFunctionConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
- LambdaFunctionConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API LambdaFunctionConfiguration();
+ AWS_S3_API LambdaFunctionConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API LambdaFunctionConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
@@ -67,113 +67,113 @@ namespace Model
/**
- * <p>The Amazon Resource Name (ARN) of the AWS Lambda function that Amazon S3
- * invokes when the specified event type occurs.</p>
+ * <p>The Amazon Resource Name (ARN) of the Lambda function that Amazon S3 invokes
+ * when the specified event type occurs.</p>
*/
inline const Aws::String& GetLambdaFunctionArn() const{ return m_lambdaFunctionArn; }
/**
- * <p>The Amazon Resource Name (ARN) of the AWS Lambda function that Amazon S3
- * invokes when the specified event type occurs.</p>
+ * <p>The Amazon Resource Name (ARN) of the Lambda function that Amazon S3 invokes
+ * when the specified event type occurs.</p>
*/
inline bool LambdaFunctionArnHasBeenSet() const { return m_lambdaFunctionArnHasBeenSet; }
/**
- * <p>The Amazon Resource Name (ARN) of the AWS Lambda function that Amazon S3
- * invokes when the specified event type occurs.</p>
+ * <p>The Amazon Resource Name (ARN) of the Lambda function that Amazon S3 invokes
+ * when the specified event type occurs.</p>
*/
inline void SetLambdaFunctionArn(const Aws::String& value) { m_lambdaFunctionArnHasBeenSet = true; m_lambdaFunctionArn = value; }
/**
- * <p>The Amazon Resource Name (ARN) of the AWS Lambda function that Amazon S3
- * invokes when the specified event type occurs.</p>
+ * <p>The Amazon Resource Name (ARN) of the Lambda function that Amazon S3 invokes
+ * when the specified event type occurs.</p>
*/
inline void SetLambdaFunctionArn(Aws::String&& value) { m_lambdaFunctionArnHasBeenSet = true; m_lambdaFunctionArn = std::move(value); }
/**
- * <p>The Amazon Resource Name (ARN) of the AWS Lambda function that Amazon S3
- * invokes when the specified event type occurs.</p>
+ * <p>The Amazon Resource Name (ARN) of the Lambda function that Amazon S3 invokes
+ * when the specified event type occurs.</p>
*/
inline void SetLambdaFunctionArn(const char* value) { m_lambdaFunctionArnHasBeenSet = true; m_lambdaFunctionArn.assign(value); }
/**
- * <p>The Amazon Resource Name (ARN) of the AWS Lambda function that Amazon S3
- * invokes when the specified event type occurs.</p>
+ * <p>The Amazon Resource Name (ARN) of the Lambda function that Amazon S3 invokes
+ * when the specified event type occurs.</p>
*/
inline LambdaFunctionConfiguration& WithLambdaFunctionArn(const Aws::String& value) { SetLambdaFunctionArn(value); return *this;}
/**
- * <p>The Amazon Resource Name (ARN) of the AWS Lambda function that Amazon S3
- * invokes when the specified event type occurs.</p>
+ * <p>The Amazon Resource Name (ARN) of the Lambda function that Amazon S3 invokes
+ * when the specified event type occurs.</p>
*/
inline LambdaFunctionConfiguration& WithLambdaFunctionArn(Aws::String&& value) { SetLambdaFunctionArn(std::move(value)); return *this;}
/**
- * <p>The Amazon Resource Name (ARN) of the AWS Lambda function that Amazon S3
- * invokes when the specified event type occurs.</p>
+ * <p>The Amazon Resource Name (ARN) of the Lambda function that Amazon S3 invokes
+ * when the specified event type occurs.</p>
*/
inline LambdaFunctionConfiguration& WithLambdaFunctionArn(const char* value) { SetLambdaFunctionArn(value); return *this;}
/**
- * <p>The Amazon S3 bucket event for which to invoke the AWS Lambda function. For
- * more information, see <a
+ * <p>The Amazon S3 bucket event for which to invoke the Lambda function. For more
+ * information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Supported
* Event Types</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const Aws::Vector<Event>& GetEvents() const{ return m_events; }
/**
- * <p>The Amazon S3 bucket event for which to invoke the AWS Lambda function. For
- * more information, see <a
+ * <p>The Amazon S3 bucket event for which to invoke the Lambda function. For more
+ * information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Supported
* Event Types</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline bool EventsHasBeenSet() const { return m_eventsHasBeenSet; }
/**
- * <p>The Amazon S3 bucket event for which to invoke the AWS Lambda function. For
- * more information, see <a
+ * <p>The Amazon S3 bucket event for which to invoke the Lambda function. For more
+ * information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Supported
* Event Types</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetEvents(const Aws::Vector<Event>& value) { m_eventsHasBeenSet = true; m_events = value; }
/**
- * <p>The Amazon S3 bucket event for which to invoke the AWS Lambda function. For
- * more information, see <a
+ * <p>The Amazon S3 bucket event for which to invoke the Lambda function. For more
+ * information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Supported
* Event Types</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetEvents(Aws::Vector<Event>&& value) { m_eventsHasBeenSet = true; m_events = std::move(value); }
/**
- * <p>The Amazon S3 bucket event for which to invoke the AWS Lambda function. For
- * more information, see <a
+ * <p>The Amazon S3 bucket event for which to invoke the Lambda function. For more
+ * information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Supported
* Event Types</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline LambdaFunctionConfiguration& WithEvents(const Aws::Vector<Event>& value) { SetEvents(value); return *this;}
/**
- * <p>The Amazon S3 bucket event for which to invoke the AWS Lambda function. For
- * more information, see <a
+ * <p>The Amazon S3 bucket event for which to invoke the Lambda function. For more
+ * information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Supported
* Event Types</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline LambdaFunctionConfiguration& WithEvents(Aws::Vector<Event>&& value) { SetEvents(std::move(value)); return *this;}
/**
- * <p>The Amazon S3 bucket event for which to invoke the AWS Lambda function. For
- * more information, see <a
+ * <p>The Amazon S3 bucket event for which to invoke the Lambda function. For more
+ * information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Supported
* Event Types</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline LambdaFunctionConfiguration& AddEvents(const Event& value) { m_eventsHasBeenSet = true; m_events.push_back(value); return *this; }
/**
- * <p>The Amazon S3 bucket event for which to invoke the AWS Lambda function. For
- * more information, see <a
+ * <p>The Amazon S3 bucket event for which to invoke the Lambda function. For more
+ * information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html">Supported
* Event Types</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
@@ -201,16 +201,16 @@ namespace Model
private:
Aws::String m_id;
- bool m_idHasBeenSet;
+ bool m_idHasBeenSet = false;
Aws::String m_lambdaFunctionArn;
- bool m_lambdaFunctionArnHasBeenSet;
+ bool m_lambdaFunctionArnHasBeenSet = false;
Aws::Vector<Event> m_events;
- bool m_eventsHasBeenSet;
+ bool m_eventsHasBeenSet = false;
NotificationConfigurationFilter m_filter;
- bool m_filterHasBeenSet;
+ bool m_filterHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LifecycleConfiguration.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LifecycleConfiguration.h
index 3da3b89dd8..f6bf105d8c 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LifecycleConfiguration.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LifecycleConfiguration.h
@@ -29,14 +29,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/LifecycleConfiguration">AWS
* API Reference</a></p>
*/
- class AWS_S3_API LifecycleConfiguration
+ class LifecycleConfiguration
{
public:
- LifecycleConfiguration();
- LifecycleConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
- LifecycleConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API LifecycleConfiguration();
+ AWS_S3_API LifecycleConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API LifecycleConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -82,7 +82,7 @@ namespace Model
private:
Aws::Vector<Rule> m_rules;
- bool m_rulesHasBeenSet;
+ bool m_rulesHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LifecycleExpiration.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LifecycleExpiration.h
index cb9628df58..d8e004401d 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LifecycleExpiration.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LifecycleExpiration.h
@@ -28,14 +28,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/LifecycleExpiration">AWS
* API Reference</a></p>
*/
- class AWS_S3_API LifecycleExpiration
+ class LifecycleExpiration
{
public:
- LifecycleExpiration();
- LifecycleExpiration(const Aws::Utils::Xml::XmlNode& xmlNode);
- LifecycleExpiration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API LifecycleExpiration();
+ AWS_S3_API LifecycleExpiration(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API LifecycleExpiration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -135,13 +135,13 @@ namespace Model
private:
Aws::Utils::DateTime m_date;
- bool m_dateHasBeenSet;
+ bool m_dateHasBeenSet = false;
int m_days;
- bool m_daysHasBeenSet;
+ bool m_daysHasBeenSet = false;
bool m_expiredObjectDeleteMarker;
- bool m_expiredObjectDeleteMarkerHasBeenSet;
+ bool m_expiredObjectDeleteMarkerHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LifecycleRule.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LifecycleRule.h
index b26475ff83..0f5bcb70f5 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LifecycleRule.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LifecycleRule.h
@@ -36,14 +36,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/LifecycleRule">AWS
* API Reference</a></p>
*/
- class AWS_S3_API LifecycleRule
+ class LifecycleRule
{
public:
- LifecycleRule();
- LifecycleRule(const Aws::Utils::Xml::XmlNode& xmlNode);
- LifecycleRule& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API LifecycleRule();
+ AWS_S3_API LifecycleRule(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API LifecycleRule& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -136,7 +136,7 @@ namespace Model
* <p>The <code>Filter</code> is used to identify objects that a Lifecycle Rule
* applies to. A <code>Filter</code> must have exactly one of <code>Prefix</code>,
* <code>Tag</code>, or <code>And</code> specified. <code>Filter</code> is required
- * if the <code>LifecycleRule</code> does not containt a <code>Prefix</code>
+ * if the <code>LifecycleRule</code> does not contain a <code>Prefix</code>
* element.</p>
*/
inline const LifecycleRuleFilter& GetFilter() const{ return m_filter; }
@@ -145,7 +145,7 @@ namespace Model
* <p>The <code>Filter</code> is used to identify objects that a Lifecycle Rule
* applies to. A <code>Filter</code> must have exactly one of <code>Prefix</code>,
* <code>Tag</code>, or <code>And</code> specified. <code>Filter</code> is required
- * if the <code>LifecycleRule</code> does not containt a <code>Prefix</code>
+ * if the <code>LifecycleRule</code> does not contain a <code>Prefix</code>
* element.</p>
*/
inline bool FilterHasBeenSet() const { return m_filterHasBeenSet; }
@@ -154,7 +154,7 @@ namespace Model
* <p>The <code>Filter</code> is used to identify objects that a Lifecycle Rule
* applies to. A <code>Filter</code> must have exactly one of <code>Prefix</code>,
* <code>Tag</code>, or <code>And</code> specified. <code>Filter</code> is required
- * if the <code>LifecycleRule</code> does not containt a <code>Prefix</code>
+ * if the <code>LifecycleRule</code> does not contain a <code>Prefix</code>
* element.</p>
*/
inline void SetFilter(const LifecycleRuleFilter& value) { m_filterHasBeenSet = true; m_filter = value; }
@@ -163,7 +163,7 @@ namespace Model
* <p>The <code>Filter</code> is used to identify objects that a Lifecycle Rule
* applies to. A <code>Filter</code> must have exactly one of <code>Prefix</code>,
* <code>Tag</code>, or <code>And</code> specified. <code>Filter</code> is required
- * if the <code>LifecycleRule</code> does not containt a <code>Prefix</code>
+ * if the <code>LifecycleRule</code> does not contain a <code>Prefix</code>
* element.</p>
*/
inline void SetFilter(LifecycleRuleFilter&& value) { m_filterHasBeenSet = true; m_filter = std::move(value); }
@@ -172,7 +172,7 @@ namespace Model
* <p>The <code>Filter</code> is used to identify objects that a Lifecycle Rule
* applies to. A <code>Filter</code> must have exactly one of <code>Prefix</code>,
* <code>Tag</code>, or <code>And</code> specified. <code>Filter</code> is required
- * if the <code>LifecycleRule</code> does not containt a <code>Prefix</code>
+ * if the <code>LifecycleRule</code> does not contain a <code>Prefix</code>
* element.</p>
*/
inline LifecycleRule& WithFilter(const LifecycleRuleFilter& value) { SetFilter(value); return *this;}
@@ -181,7 +181,7 @@ namespace Model
* <p>The <code>Filter</code> is used to identify objects that a Lifecycle Rule
* applies to. A <code>Filter</code> must have exactly one of <code>Prefix</code>,
* <code>Tag</code>, or <code>And</code> specified. <code>Filter</code> is required
- * if the <code>LifecycleRule</code> does not containt a <code>Prefix</code>
+ * if the <code>LifecycleRule</code> does not contain a <code>Prefix</code>
* element.</p>
*/
inline LifecycleRule& WithFilter(LifecycleRuleFilter&& value) { SetFilter(std::move(value)); return *this;}
@@ -386,28 +386,28 @@ namespace Model
private:
LifecycleExpiration m_expiration;
- bool m_expirationHasBeenSet;
+ bool m_expirationHasBeenSet = false;
Aws::String m_iD;
- bool m_iDHasBeenSet;
+ bool m_iDHasBeenSet = false;
LifecycleRuleFilter m_filter;
- bool m_filterHasBeenSet;
+ bool m_filterHasBeenSet = false;
ExpirationStatus m_status;
- bool m_statusHasBeenSet;
+ bool m_statusHasBeenSet = false;
Aws::Vector<Transition> m_transitions;
- bool m_transitionsHasBeenSet;
+ bool m_transitionsHasBeenSet = false;
Aws::Vector<NoncurrentVersionTransition> m_noncurrentVersionTransitions;
- bool m_noncurrentVersionTransitionsHasBeenSet;
+ bool m_noncurrentVersionTransitionsHasBeenSet = false;
NoncurrentVersionExpiration m_noncurrentVersionExpiration;
- bool m_noncurrentVersionExpirationHasBeenSet;
+ bool m_noncurrentVersionExpirationHasBeenSet = false;
AbortIncompleteMultipartUpload m_abortIncompleteMultipartUpload;
- bool m_abortIncompleteMultipartUploadHasBeenSet;
+ bool m_abortIncompleteMultipartUploadHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LifecycleRuleAndOperator.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LifecycleRuleAndOperator.h
index 36ccbdd5f3..06b31f5221 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LifecycleRuleAndOperator.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LifecycleRuleAndOperator.h
@@ -31,14 +31,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/LifecycleRuleAndOperator">AWS
* API Reference</a></p>
*/
- class AWS_S3_API LifecycleRuleAndOperator
+ class LifecycleRuleAndOperator
{
public:
- LifecycleRuleAndOperator();
- LifecycleRuleAndOperator(const Aws::Utils::Xml::XmlNode& xmlNode);
- LifecycleRuleAndOperator& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API LifecycleRuleAndOperator();
+ AWS_S3_API LifecycleRuleAndOperator(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API LifecycleRuleAndOperator& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -130,13 +130,61 @@ namespace Model
*/
inline LifecycleRuleAndOperator& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; }
+
+ /**
+ * <p>Minimum object size to which the rule applies.</p>
+ */
+ inline long long GetObjectSizeGreaterThan() const{ return m_objectSizeGreaterThan; }
+
+ /**
+ * <p>Minimum object size to which the rule applies.</p>
+ */
+ inline bool ObjectSizeGreaterThanHasBeenSet() const { return m_objectSizeGreaterThanHasBeenSet; }
+
+ /**
+ * <p>Minimum object size to which the rule applies.</p>
+ */
+ inline void SetObjectSizeGreaterThan(long long value) { m_objectSizeGreaterThanHasBeenSet = true; m_objectSizeGreaterThan = value; }
+
+ /**
+ * <p>Minimum object size to which the rule applies.</p>
+ */
+ inline LifecycleRuleAndOperator& WithObjectSizeGreaterThan(long long value) { SetObjectSizeGreaterThan(value); return *this;}
+
+
+ /**
+ * <p>Maximum object size to which the rule applies.</p>
+ */
+ inline long long GetObjectSizeLessThan() const{ return m_objectSizeLessThan; }
+
+ /**
+ * <p>Maximum object size to which the rule applies.</p>
+ */
+ inline bool ObjectSizeLessThanHasBeenSet() const { return m_objectSizeLessThanHasBeenSet; }
+
+ /**
+ * <p>Maximum object size to which the rule applies.</p>
+ */
+ inline void SetObjectSizeLessThan(long long value) { m_objectSizeLessThanHasBeenSet = true; m_objectSizeLessThan = value; }
+
+ /**
+ * <p>Maximum object size to which the rule applies.</p>
+ */
+ inline LifecycleRuleAndOperator& WithObjectSizeLessThan(long long value) { SetObjectSizeLessThan(value); return *this;}
+
private:
Aws::String m_prefix;
- bool m_prefixHasBeenSet;
+ bool m_prefixHasBeenSet = false;
Aws::Vector<Tag> m_tags;
- bool m_tagsHasBeenSet;
+ bool m_tagsHasBeenSet = false;
+
+ long long m_objectSizeGreaterThan;
+ bool m_objectSizeGreaterThanHasBeenSet = false;
+
+ long long m_objectSizeLessThan;
+ bool m_objectSizeLessThanHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LifecycleRuleFilter.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LifecycleRuleFilter.h
index 74e57e178a..f657b6264e 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LifecycleRuleFilter.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LifecycleRuleFilter.h
@@ -31,14 +31,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/LifecycleRuleFilter">AWS
* API Reference</a></p>
*/
- class AWS_S3_API LifecycleRuleFilter
+ class LifecycleRuleFilter
{
public:
- LifecycleRuleFilter();
- LifecycleRuleFilter(const Aws::Utils::Xml::XmlNode& xmlNode);
- LifecycleRuleFilter& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API LifecycleRuleFilter();
+ AWS_S3_API LifecycleRuleFilter(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API LifecycleRuleFilter& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -159,6 +159,48 @@ namespace Model
inline LifecycleRuleFilter& WithTag(Tag&& value) { SetTag(std::move(value)); return *this;}
+ /**
+ * <p>Minimum object size to which the rule applies.</p>
+ */
+ inline long long GetObjectSizeGreaterThan() const{ return m_objectSizeGreaterThan; }
+
+ /**
+ * <p>Minimum object size to which the rule applies.</p>
+ */
+ inline bool ObjectSizeGreaterThanHasBeenSet() const { return m_objectSizeGreaterThanHasBeenSet; }
+
+ /**
+ * <p>Minimum object size to which the rule applies.</p>
+ */
+ inline void SetObjectSizeGreaterThan(long long value) { m_objectSizeGreaterThanHasBeenSet = true; m_objectSizeGreaterThan = value; }
+
+ /**
+ * <p>Minimum object size to which the rule applies.</p>
+ */
+ inline LifecycleRuleFilter& WithObjectSizeGreaterThan(long long value) { SetObjectSizeGreaterThan(value); return *this;}
+
+
+ /**
+ * <p>Maximum object size to which the rule applies.</p>
+ */
+ inline long long GetObjectSizeLessThan() const{ return m_objectSizeLessThan; }
+
+ /**
+ * <p>Maximum object size to which the rule applies.</p>
+ */
+ inline bool ObjectSizeLessThanHasBeenSet() const { return m_objectSizeLessThanHasBeenSet; }
+
+ /**
+ * <p>Maximum object size to which the rule applies.</p>
+ */
+ inline void SetObjectSizeLessThan(long long value) { m_objectSizeLessThanHasBeenSet = true; m_objectSizeLessThan = value; }
+
+ /**
+ * <p>Maximum object size to which the rule applies.</p>
+ */
+ inline LifecycleRuleFilter& WithObjectSizeLessThan(long long value) { SetObjectSizeLessThan(value); return *this;}
+
+
inline const LifecycleRuleAndOperator& GetAnd() const{ return m_and; }
@@ -180,13 +222,19 @@ namespace Model
private:
Aws::String m_prefix;
- bool m_prefixHasBeenSet;
+ bool m_prefixHasBeenSet = false;
Tag m_tag;
- bool m_tagHasBeenSet;
+ bool m_tagHasBeenSet = false;
+
+ long long m_objectSizeGreaterThan;
+ bool m_objectSizeGreaterThanHasBeenSet = false;
+
+ long long m_objectSizeLessThan;
+ bool m_objectSizeLessThanHasBeenSet = false;
LifecycleRuleAndOperator m_and;
- bool m_andHasBeenSet;
+ bool m_andHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketAnalyticsConfigurationsRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketAnalyticsConfigurationsRequest.h
index 8985a2ad10..d8f7b869a7 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketAnalyticsConfigurationsRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketAnalyticsConfigurationsRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API ListBucketAnalyticsConfigurationsRequest : public S3Request
+ class ListBucketAnalyticsConfigurationsRequest : public S3Request
{
public:
- ListBucketAnalyticsConfigurationsRequest();
+ AWS_S3_API ListBucketAnalyticsConfigurationsRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,12 +34,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "ListBucketAnalyticsConfigurations"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the bucket from which analytics configurations are retrieved.</p>
@@ -133,57 +137,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline ListBucketAnalyticsConfigurationsRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline ListBucketAnalyticsConfigurationsRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline ListBucketAnalyticsConfigurationsRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -230,16 +234,16 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_continuationToken;
- bool m_continuationTokenHasBeenSet;
+ bool m_continuationTokenHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketAnalyticsConfigurationsResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketAnalyticsConfigurationsResult.h
index 9fc4f7cb24..a6aa78423e 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketAnalyticsConfigurationsResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketAnalyticsConfigurationsResult.h
@@ -26,12 +26,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API ListBucketAnalyticsConfigurationsResult
+ class ListBucketAnalyticsConfigurationsResult
{
public:
- ListBucketAnalyticsConfigurationsResult();
- ListBucketAnalyticsConfigurationsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- ListBucketAnalyticsConfigurationsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API ListBucketAnalyticsConfigurationsResult();
+ AWS_S3_API ListBucketAnalyticsConfigurationsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API ListBucketAnalyticsConfigurationsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketIntelligentTieringConfigurationsRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketIntelligentTieringConfigurationsRequest.h
index 5a20d97c15..d46195a985 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketIntelligentTieringConfigurationsRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketIntelligentTieringConfigurationsRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API ListBucketIntelligentTieringConfigurationsRequest : public S3Request
+ class ListBucketIntelligentTieringConfigurationsRequest : public S3Request
{
public:
- ListBucketIntelligentTieringConfigurationsRequest();
+ AWS_S3_API ListBucketIntelligentTieringConfigurationsRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,10 +34,14 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "ListBucketIntelligentTieringConfigurations"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the Amazon S3 bucket whose configuration you want to modify or
@@ -89,50 +93,50 @@ namespace Model
/**
- * <p>The ContinuationToken that represents a placeholder from where this request
- * should begin.</p>
+ * <p>The <code>ContinuationToken</code> that represents a placeholder from where
+ * this request should begin.</p>
*/
inline const Aws::String& GetContinuationToken() const{ return m_continuationToken; }
/**
- * <p>The ContinuationToken that represents a placeholder from where this request
- * should begin.</p>
+ * <p>The <code>ContinuationToken</code> that represents a placeholder from where
+ * this request should begin.</p>
*/
inline bool ContinuationTokenHasBeenSet() const { return m_continuationTokenHasBeenSet; }
/**
- * <p>The ContinuationToken that represents a placeholder from where this request
- * should begin.</p>
+ * <p>The <code>ContinuationToken</code> that represents a placeholder from where
+ * this request should begin.</p>
*/
inline void SetContinuationToken(const Aws::String& value) { m_continuationTokenHasBeenSet = true; m_continuationToken = value; }
/**
- * <p>The ContinuationToken that represents a placeholder from where this request
- * should begin.</p>
+ * <p>The <code>ContinuationToken</code> that represents a placeholder from where
+ * this request should begin.</p>
*/
inline void SetContinuationToken(Aws::String&& value) { m_continuationTokenHasBeenSet = true; m_continuationToken = std::move(value); }
/**
- * <p>The ContinuationToken that represents a placeholder from where this request
- * should begin.</p>
+ * <p>The <code>ContinuationToken</code> that represents a placeholder from where
+ * this request should begin.</p>
*/
inline void SetContinuationToken(const char* value) { m_continuationTokenHasBeenSet = true; m_continuationToken.assign(value); }
/**
- * <p>The ContinuationToken that represents a placeholder from where this request
- * should begin.</p>
+ * <p>The <code>ContinuationToken</code> that represents a placeholder from where
+ * this request should begin.</p>
*/
inline ListBucketIntelligentTieringConfigurationsRequest& WithContinuationToken(const Aws::String& value) { SetContinuationToken(value); return *this;}
/**
- * <p>The ContinuationToken that represents a placeholder from where this request
- * should begin.</p>
+ * <p>The <code>ContinuationToken</code> that represents a placeholder from where
+ * this request should begin.</p>
*/
inline ListBucketIntelligentTieringConfigurationsRequest& WithContinuationToken(Aws::String&& value) { SetContinuationToken(std::move(value)); return *this;}
/**
- * <p>The ContinuationToken that represents a placeholder from where this request
- * should begin.</p>
+ * <p>The <code>ContinuationToken</code> that represents a placeholder from where
+ * this request should begin.</p>
*/
inline ListBucketIntelligentTieringConfigurationsRequest& WithContinuationToken(const char* value) { SetContinuationToken(value); return *this;}
@@ -179,13 +183,13 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_continuationToken;
- bool m_continuationTokenHasBeenSet;
+ bool m_continuationTokenHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketIntelligentTieringConfigurationsResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketIntelligentTieringConfigurationsResult.h
index 0203f9ac43..5e6696c8de 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketIntelligentTieringConfigurationsResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketIntelligentTieringConfigurationsResult.h
@@ -26,75 +26,78 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API ListBucketIntelligentTieringConfigurationsResult
+ class ListBucketIntelligentTieringConfigurationsResult
{
public:
- ListBucketIntelligentTieringConfigurationsResult();
- ListBucketIntelligentTieringConfigurationsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- ListBucketIntelligentTieringConfigurationsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API ListBucketIntelligentTieringConfigurationsResult();
+ AWS_S3_API ListBucketIntelligentTieringConfigurationsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API ListBucketIntelligentTieringConfigurationsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
* <p>Indicates whether the returned list of analytics configurations is complete.
- * A value of true indicates that the list is not complete and the
- * NextContinuationToken will be provided for a subsequent request.</p>
+ * A value of <code>true</code> indicates that the list is not complete and the
+ * <code>NextContinuationToken</code> will be provided for a subsequent
+ * request.</p>
*/
inline bool GetIsTruncated() const{ return m_isTruncated; }
/**
* <p>Indicates whether the returned list of analytics configurations is complete.
- * A value of true indicates that the list is not complete and the
- * NextContinuationToken will be provided for a subsequent request.</p>
+ * A value of <code>true</code> indicates that the list is not complete and the
+ * <code>NextContinuationToken</code> will be provided for a subsequent
+ * request.</p>
*/
inline void SetIsTruncated(bool value) { m_isTruncated = value; }
/**
* <p>Indicates whether the returned list of analytics configurations is complete.
- * A value of true indicates that the list is not complete and the
- * NextContinuationToken will be provided for a subsequent request.</p>
+ * A value of <code>true</code> indicates that the list is not complete and the
+ * <code>NextContinuationToken</code> will be provided for a subsequent
+ * request.</p>
*/
inline ListBucketIntelligentTieringConfigurationsResult& WithIsTruncated(bool value) { SetIsTruncated(value); return *this;}
/**
- * <p>The ContinuationToken that represents a placeholder from where this request
- * should begin.</p>
+ * <p>The <code>ContinuationToken</code> that represents a placeholder from where
+ * this request should begin.</p>
*/
inline const Aws::String& GetContinuationToken() const{ return m_continuationToken; }
/**
- * <p>The ContinuationToken that represents a placeholder from where this request
- * should begin.</p>
+ * <p>The <code>ContinuationToken</code> that represents a placeholder from where
+ * this request should begin.</p>
*/
inline void SetContinuationToken(const Aws::String& value) { m_continuationToken = value; }
/**
- * <p>The ContinuationToken that represents a placeholder from where this request
- * should begin.</p>
+ * <p>The <code>ContinuationToken</code> that represents a placeholder from where
+ * this request should begin.</p>
*/
inline void SetContinuationToken(Aws::String&& value) { m_continuationToken = std::move(value); }
/**
- * <p>The ContinuationToken that represents a placeholder from where this request
- * should begin.</p>
+ * <p>The <code>ContinuationToken</code> that represents a placeholder from where
+ * this request should begin.</p>
*/
inline void SetContinuationToken(const char* value) { m_continuationToken.assign(value); }
/**
- * <p>The ContinuationToken that represents a placeholder from where this request
- * should begin.</p>
+ * <p>The <code>ContinuationToken</code> that represents a placeholder from where
+ * this request should begin.</p>
*/
inline ListBucketIntelligentTieringConfigurationsResult& WithContinuationToken(const Aws::String& value) { SetContinuationToken(value); return *this;}
/**
- * <p>The ContinuationToken that represents a placeholder from where this request
- * should begin.</p>
+ * <p>The <code>ContinuationToken</code> that represents a placeholder from where
+ * this request should begin.</p>
*/
inline ListBucketIntelligentTieringConfigurationsResult& WithContinuationToken(Aws::String&& value) { SetContinuationToken(std::move(value)); return *this;}
/**
- * <p>The ContinuationToken that represents a placeholder from where this request
- * should begin.</p>
+ * <p>The <code>ContinuationToken</code> that represents a placeholder from where
+ * this request should begin.</p>
*/
inline ListBucketIntelligentTieringConfigurationsResult& WithContinuationToken(const char* value) { SetContinuationToken(value); return *this;}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketInventoryConfigurationsRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketInventoryConfigurationsRequest.h
index b6c8743dea..a5a5f48a55 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketInventoryConfigurationsRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketInventoryConfigurationsRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API ListBucketInventoryConfigurationsRequest : public S3Request
+ class ListBucketInventoryConfigurationsRequest : public S3Request
{
public:
- ListBucketInventoryConfigurationsRequest();
+ AWS_S3_API ListBucketInventoryConfigurationsRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,12 +34,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "ListBucketInventoryConfigurations"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the bucket containing the inventory configurations to
@@ -157,57 +161,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline ListBucketInventoryConfigurationsRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline ListBucketInventoryConfigurationsRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline ListBucketInventoryConfigurationsRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -254,16 +258,16 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_continuationToken;
- bool m_continuationTokenHasBeenSet;
+ bool m_continuationTokenHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketInventoryConfigurationsResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketInventoryConfigurationsResult.h
index e28a0661e3..2864c41b25 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketInventoryConfigurationsResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketInventoryConfigurationsResult.h
@@ -26,12 +26,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API ListBucketInventoryConfigurationsResult
+ class ListBucketInventoryConfigurationsResult
{
public:
- ListBucketInventoryConfigurationsResult();
- ListBucketInventoryConfigurationsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- ListBucketInventoryConfigurationsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API ListBucketInventoryConfigurationsResult();
+ AWS_S3_API ListBucketInventoryConfigurationsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API ListBucketInventoryConfigurationsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketMetricsConfigurationsRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketMetricsConfigurationsRequest.h
index 03ac696974..83790116fe 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketMetricsConfigurationsRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketMetricsConfigurationsRequest.h
@@ -23,10 +23,10 @@ namespace Model
/**
*/
- class AWS_S3_API ListBucketMetricsConfigurationsRequest : public S3Request
+ class ListBucketMetricsConfigurationsRequest : public S3Request
{
public:
- ListBucketMetricsConfigurationsRequest();
+ AWS_S3_API ListBucketMetricsConfigurationsRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,12 +34,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "ListBucketMetricsConfigurations"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the bucket containing the metrics configurations to retrieve.</p>
@@ -149,57 +153,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline ListBucketMetricsConfigurationsRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline ListBucketMetricsConfigurationsRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline ListBucketMetricsConfigurationsRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -246,16 +250,16 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_continuationToken;
- bool m_continuationTokenHasBeenSet;
+ bool m_continuationTokenHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketMetricsConfigurationsResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketMetricsConfigurationsResult.h
index 4c070322b2..2580419c51 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketMetricsConfigurationsResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketMetricsConfigurationsResult.h
@@ -26,12 +26,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API ListBucketMetricsConfigurationsResult
+ class ListBucketMetricsConfigurationsResult
{
public:
- ListBucketMetricsConfigurationsResult();
- ListBucketMetricsConfigurationsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- ListBucketMetricsConfigurationsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API ListBucketMetricsConfigurationsResult();
+ AWS_S3_API ListBucketMetricsConfigurationsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API ListBucketMetricsConfigurationsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketsResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketsResult.h
index a580ac0aad..5596bd0330 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketsResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListBucketsResult.h
@@ -26,46 +26,46 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API ListBucketsResult
+ class ListBucketsResult
{
public:
- ListBucketsResult();
- ListBucketsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- ListBucketsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API ListBucketsResult();
+ AWS_S3_API ListBucketsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API ListBucketsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
- * <p>The list of buckets owned by the requestor.</p>
+ * <p>The list of buckets owned by the requester.</p>
*/
inline const Aws::Vector<Bucket>& GetBuckets() const{ return m_buckets; }
/**
- * <p>The list of buckets owned by the requestor.</p>
+ * <p>The list of buckets owned by the requester.</p>
*/
inline void SetBuckets(const Aws::Vector<Bucket>& value) { m_buckets = value; }
/**
- * <p>The list of buckets owned by the requestor.</p>
+ * <p>The list of buckets owned by the requester.</p>
*/
inline void SetBuckets(Aws::Vector<Bucket>&& value) { m_buckets = std::move(value); }
/**
- * <p>The list of buckets owned by the requestor.</p>
+ * <p>The list of buckets owned by the requester.</p>
*/
inline ListBucketsResult& WithBuckets(const Aws::Vector<Bucket>& value) { SetBuckets(value); return *this;}
/**
- * <p>The list of buckets owned by the requestor.</p>
+ * <p>The list of buckets owned by the requester.</p>
*/
inline ListBucketsResult& WithBuckets(Aws::Vector<Bucket>&& value) { SetBuckets(std::move(value)); return *this;}
/**
- * <p>The list of buckets owned by the requestor.</p>
+ * <p>The list of buckets owned by the requester.</p>
*/
inline ListBucketsResult& AddBuckets(const Bucket& value) { m_buckets.push_back(value); return *this; }
/**
- * <p>The list of buckets owned by the requestor.</p>
+ * <p>The list of buckets owned by the requester.</p>
*/
inline ListBucketsResult& AddBuckets(Bucket&& value) { m_buckets.push_back(std::move(value)); return *this; }
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListMultipartUploadsRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListMultipartUploadsRequest.h
index 97e0e566ad..589441329d 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListMultipartUploadsRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListMultipartUploadsRequest.h
@@ -24,10 +24,10 @@ namespace Model
/**
*/
- class AWS_S3_API ListMultipartUploadsRequest : public S3Request
+ class ListMultipartUploadsRequest : public S3Request
{
public:
- ListMultipartUploadsRequest();
+ AWS_S3_API ListMultipartUploadsRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -35,31 +35,35 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "ListMultipartUploads"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the bucket to which the multipart upload was initiated. </p>
* <p>When using this action with an access point, you must direct requests to the
* access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const Aws::String& GetBucket() const{ return m_bucket; }
@@ -68,19 +72,19 @@ namespace Model
* <p>When using this action with an access point, you must direct requests to the
* access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; }
@@ -89,19 +93,19 @@ namespace Model
* <p>When using this action with an access point, you must direct requests to the
* access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; }
@@ -110,19 +114,19 @@ namespace Model
* <p>When using this action with an access point, you must direct requests to the
* access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); }
@@ -131,19 +135,19 @@ namespace Model
* <p>When using this action with an access point, you must direct requests to the
* access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); }
@@ -152,19 +156,19 @@ namespace Model
* <p>When using this action with an access point, you must direct requests to the
* access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline ListMultipartUploadsRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;}
@@ -173,19 +177,19 @@ namespace Model
* <p>When using this action with an access point, you must direct requests to the
* access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline ListMultipartUploadsRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;}
@@ -194,19 +198,19 @@ namespace Model
* <p>When using this action with an access point, you must direct requests to the
* access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline ListMultipartUploadsRequest& WithBucket(const char* value) { SetBucket(value); return *this;}
@@ -585,57 +589,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline ListMultipartUploadsRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline ListMultipartUploadsRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline ListMultipartUploadsRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -682,31 +686,31 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_delimiter;
- bool m_delimiterHasBeenSet;
+ bool m_delimiterHasBeenSet = false;
EncodingType m_encodingType;
- bool m_encodingTypeHasBeenSet;
+ bool m_encodingTypeHasBeenSet = false;
Aws::String m_keyMarker;
- bool m_keyMarkerHasBeenSet;
+ bool m_keyMarkerHasBeenSet = false;
int m_maxUploads;
- bool m_maxUploadsHasBeenSet;
+ bool m_maxUploadsHasBeenSet = false;
Aws::String m_prefix;
- bool m_prefixHasBeenSet;
+ bool m_prefixHasBeenSet = false;
Aws::String m_uploadIdMarker;
- bool m_uploadIdMarkerHasBeenSet;
+ bool m_uploadIdMarkerHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListMultipartUploadsResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListMultipartUploadsResult.h
index 70cf65ba6d..1d1d6cd057 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListMultipartUploadsResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListMultipartUploadsResult.h
@@ -28,46 +28,53 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API ListMultipartUploadsResult
+ class ListMultipartUploadsResult
{
public:
- ListMultipartUploadsResult();
- ListMultipartUploadsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- ListMultipartUploadsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API ListMultipartUploadsResult();
+ AWS_S3_API ListMultipartUploadsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API ListMultipartUploadsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
- * <p>The name of the bucket to which the multipart upload was initiated.</p>
+ * <p>The name of the bucket to which the multipart upload was initiated. Does not
+ * return the access point ARN or access point alias if used.</p>
*/
inline const Aws::String& GetBucket() const{ return m_bucket; }
/**
- * <p>The name of the bucket to which the multipart upload was initiated.</p>
+ * <p>The name of the bucket to which the multipart upload was initiated. Does not
+ * return the access point ARN or access point alias if used.</p>
*/
inline void SetBucket(const Aws::String& value) { m_bucket = value; }
/**
- * <p>The name of the bucket to which the multipart upload was initiated.</p>
+ * <p>The name of the bucket to which the multipart upload was initiated. Does not
+ * return the access point ARN or access point alias if used.</p>
*/
inline void SetBucket(Aws::String&& value) { m_bucket = std::move(value); }
/**
- * <p>The name of the bucket to which the multipart upload was initiated.</p>
+ * <p>The name of the bucket to which the multipart upload was initiated. Does not
+ * return the access point ARN or access point alias if used.</p>
*/
inline void SetBucket(const char* value) { m_bucket.assign(value); }
/**
- * <p>The name of the bucket to which the multipart upload was initiated.</p>
+ * <p>The name of the bucket to which the multipart upload was initiated. Does not
+ * return the access point ARN or access point alias if used.</p>
*/
inline ListMultipartUploadsResult& WithBucket(const Aws::String& value) { SetBucket(value); return *this;}
/**
- * <p>The name of the bucket to which the multipart upload was initiated.</p>
+ * <p>The name of the bucket to which the multipart upload was initiated. Does not
+ * return the access point ARN or access point alias if used.</p>
*/
inline ListMultipartUploadsResult& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;}
/**
- * <p>The name of the bucket to which the multipart upload was initiated.</p>
+ * <p>The name of the bucket to which the multipart upload was initiated. Does not
+ * return the access point ARN or access point alias if used.</p>
*/
inline ListMultipartUploadsResult& WithBucket(const char* value) { SetBucket(value); return *this;}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectVersionsRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectVersionsRequest.h
index 9bad797dca..4a61c58927 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectVersionsRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectVersionsRequest.h
@@ -24,10 +24,10 @@ namespace Model
/**
*/
- class AWS_S3_API ListObjectVersionsRequest : public S3Request
+ class ListObjectVersionsRequest : public S3Request
{
public:
- ListObjectVersionsRequest();
+ AWS_S3_API ListObjectVersionsRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -35,12 +35,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "ListObjectVersions"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The bucket name that contains the objects. </p>
@@ -373,57 +377,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline ListObjectVersionsRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline ListObjectVersionsRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline ListObjectVersionsRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -470,31 +474,31 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_delimiter;
- bool m_delimiterHasBeenSet;
+ bool m_delimiterHasBeenSet = false;
EncodingType m_encodingType;
- bool m_encodingTypeHasBeenSet;
+ bool m_encodingTypeHasBeenSet = false;
Aws::String m_keyMarker;
- bool m_keyMarkerHasBeenSet;
+ bool m_keyMarkerHasBeenSet = false;
int m_maxKeys;
- bool m_maxKeysHasBeenSet;
+ bool m_maxKeysHasBeenSet = false;
Aws::String m_prefix;
- bool m_prefixHasBeenSet;
+ bool m_prefixHasBeenSet = false;
Aws::String m_versionIdMarker;
- bool m_versionIdMarkerHasBeenSet;
+ bool m_versionIdMarkerHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectVersionsResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectVersionsResult.h
index 20909af4ad..0d594a929b 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectVersionsResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectVersionsResult.h
@@ -29,12 +29,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API ListObjectVersionsResult
+ class ListObjectVersionsResult
{
public:
- ListObjectVersionsResult();
- ListObjectVersionsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- ListObjectVersionsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API ListObjectVersionsResult();
+ AWS_S3_API ListObjectVersionsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API ListObjectVersionsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectsRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectsRequest.h
index 0c3c88b0a6..374dfc8f2f 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectsRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectsRequest.h
@@ -25,10 +25,10 @@ namespace Model
/**
*/
- class AWS_S3_API ListObjectsRequest : public S3Request
+ class ListObjectsRequest : public S3Request
{
public:
- ListObjectsRequest();
+ AWS_S3_API ListObjectsRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -36,31 +36,35 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "ListObjects"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the bucket containing the objects.</p> <p>When using this action
* with an access point, you must direct requests to the access point hostname. The
* access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const Aws::String& GetBucket() const{ return m_bucket; }
@@ -69,19 +73,19 @@ namespace Model
* with an access point, you must direct requests to the access point hostname. The
* access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; }
@@ -90,19 +94,19 @@ namespace Model
* with an access point, you must direct requests to the access point hostname. The
* access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; }
@@ -111,19 +115,19 @@ namespace Model
* with an access point, you must direct requests to the access point hostname. The
* access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); }
@@ -132,19 +136,19 @@ namespace Model
* with an access point, you must direct requests to the access point hostname. The
* access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); }
@@ -153,19 +157,19 @@ namespace Model
* with an access point, you must direct requests to the access point hostname. The
* access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline ListObjectsRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;}
@@ -174,19 +178,19 @@ namespace Model
* with an access point, you must direct requests to the access point hostname. The
* access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline ListObjectsRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;}
@@ -195,19 +199,19 @@ namespace Model
* with an access point, you must direct requests to the access point hostname. The
* access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline ListObjectsRequest& WithBucket(const char* value) { SetBucket(value); return *this;}
@@ -273,42 +277,50 @@ namespace Model
/**
- * <p>Specifies the key to start with when listing objects in a bucket.</p>
+ * <p>Marker is where you want Amazon S3 to start listing from. Amazon S3 starts
+ * listing after this specified key. Marker can be any key in the bucket.</p>
*/
inline const Aws::String& GetMarker() const{ return m_marker; }
/**
- * <p>Specifies the key to start with when listing objects in a bucket.</p>
+ * <p>Marker is where you want Amazon S3 to start listing from. Amazon S3 starts
+ * listing after this specified key. Marker can be any key in the bucket.</p>
*/
inline bool MarkerHasBeenSet() const { return m_markerHasBeenSet; }
/**
- * <p>Specifies the key to start with when listing objects in a bucket.</p>
+ * <p>Marker is where you want Amazon S3 to start listing from. Amazon S3 starts
+ * listing after this specified key. Marker can be any key in the bucket.</p>
*/
inline void SetMarker(const Aws::String& value) { m_markerHasBeenSet = true; m_marker = value; }
/**
- * <p>Specifies the key to start with when listing objects in a bucket.</p>
+ * <p>Marker is where you want Amazon S3 to start listing from. Amazon S3 starts
+ * listing after this specified key. Marker can be any key in the bucket.</p>
*/
inline void SetMarker(Aws::String&& value) { m_markerHasBeenSet = true; m_marker = std::move(value); }
/**
- * <p>Specifies the key to start with when listing objects in a bucket.</p>
+ * <p>Marker is where you want Amazon S3 to start listing from. Amazon S3 starts
+ * listing after this specified key. Marker can be any key in the bucket.</p>
*/
inline void SetMarker(const char* value) { m_markerHasBeenSet = true; m_marker.assign(value); }
/**
- * <p>Specifies the key to start with when listing objects in a bucket.</p>
+ * <p>Marker is where you want Amazon S3 to start listing from. Amazon S3 starts
+ * listing after this specified key. Marker can be any key in the bucket.</p>
*/
inline ListObjectsRequest& WithMarker(const Aws::String& value) { SetMarker(value); return *this;}
/**
- * <p>Specifies the key to start with when listing objects in a bucket.</p>
+ * <p>Marker is where you want Amazon S3 to start listing from. Amazon S3 starts
+ * listing after this specified key. Marker can be any key in the bucket.</p>
*/
inline ListObjectsRequest& WithMarker(Aws::String&& value) { SetMarker(std::move(value)); return *this;}
/**
- * <p>Specifies the key to start with when listing objects in a bucket.</p>
+ * <p>Marker is where you want Amazon S3 to start listing from. Amazon S3 starts
+ * listing after this specified key. Marker can be any key in the bucket.</p>
*/
inline ListObjectsRequest& WithMarker(const char* value) { SetMarker(value); return *this;}
@@ -428,57 +440,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline ListObjectsRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline ListObjectsRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline ListObjectsRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -525,31 +537,31 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_delimiter;
- bool m_delimiterHasBeenSet;
+ bool m_delimiterHasBeenSet = false;
EncodingType m_encodingType;
- bool m_encodingTypeHasBeenSet;
+ bool m_encodingTypeHasBeenSet = false;
Aws::String m_marker;
- bool m_markerHasBeenSet;
+ bool m_markerHasBeenSet = false;
int m_maxKeys;
- bool m_maxKeysHasBeenSet;
+ bool m_maxKeysHasBeenSet = false;
Aws::String m_prefix;
- bool m_prefixHasBeenSet;
+ bool m_prefixHasBeenSet = false;
RequestPayer m_requestPayer;
- bool m_requestPayerHasBeenSet;
+ bool m_requestPayerHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectsResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectsResult.h
index cb3b03ca2e..f035833b33 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectsResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectsResult.h
@@ -28,12 +28,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API ListObjectsResult
+ class ListObjectsResult
{
public:
- ListObjectsResult();
- ListObjectsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- ListObjectsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API ListObjectsResult();
+ AWS_S3_API ListObjectsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API ListObjectsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectsV2Request.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectsV2Request.h
index 7a8bd556b3..1c6f1528b7 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectsV2Request.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectsV2Request.h
@@ -25,10 +25,10 @@ namespace Model
/**
*/
- class AWS_S3_API ListObjectsV2Request : public S3Request
+ class ListObjectsV2Request : public S3Request
{
public:
- ListObjectsV2Request();
+ AWS_S3_API ListObjectsV2Request();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -36,31 +36,35 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "ListObjectsV2"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>Bucket name to list. </p> <p>When using this action with an access point, you
* must direct requests to the access point hostname. The access point hostname
* takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const Aws::String& GetBucket() const{ return m_bucket; }
@@ -69,19 +73,19 @@ namespace Model
* must direct requests to the access point hostname. The access point hostname
* takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; }
@@ -90,19 +94,19 @@ namespace Model
* must direct requests to the access point hostname. The access point hostname
* takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; }
@@ -111,19 +115,19 @@ namespace Model
* must direct requests to the access point hostname. The access point hostname
* takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); }
@@ -132,19 +136,19 @@ namespace Model
* must direct requests to the access point hostname. The access point hostname
* takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); }
@@ -153,19 +157,19 @@ namespace Model
* must direct requests to the access point hostname. The access point hostname
* takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline ListObjectsV2Request& WithBucket(const Aws::String& value) { SetBucket(value); return *this;}
@@ -174,19 +178,19 @@ namespace Model
* must direct requests to the access point hostname. The access point hostname
* takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline ListObjectsV2Request& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;}
@@ -195,19 +199,19 @@ namespace Model
* must direct requests to the access point hostname. The access point hostname
* takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline ListObjectsV2Request& WithBucket(const char* value) { SetBucket(value); return *this;}
@@ -542,57 +546,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline ListObjectsV2Request& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline ListObjectsV2Request& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline ListObjectsV2Request& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -639,37 +643,37 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_delimiter;
- bool m_delimiterHasBeenSet;
+ bool m_delimiterHasBeenSet = false;
EncodingType m_encodingType;
- bool m_encodingTypeHasBeenSet;
+ bool m_encodingTypeHasBeenSet = false;
int m_maxKeys;
- bool m_maxKeysHasBeenSet;
+ bool m_maxKeysHasBeenSet = false;
Aws::String m_prefix;
- bool m_prefixHasBeenSet;
+ bool m_prefixHasBeenSet = false;
Aws::String m_continuationToken;
- bool m_continuationTokenHasBeenSet;
+ bool m_continuationTokenHasBeenSet = false;
bool m_fetchOwner;
- bool m_fetchOwnerHasBeenSet;
+ bool m_fetchOwnerHasBeenSet = false;
Aws::String m_startAfter;
- bool m_startAfterHasBeenSet;
+ bool m_startAfterHasBeenSet = false;
RequestPayer m_requestPayer;
- bool m_requestPayerHasBeenSet;
+ bool m_requestPayerHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectsV2Result.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectsV2Result.h
index 14749c9259..e8bf41a8c8 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectsV2Result.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListObjectsV2Result.h
@@ -28,12 +28,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API ListObjectsV2Result
+ class ListObjectsV2Result
{
public:
- ListObjectsV2Result();
- ListObjectsV2Result(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- ListObjectsV2Result& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API ListObjectsV2Result();
+ AWS_S3_API ListObjectsV2Result(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API ListObjectsV2Result& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
@@ -99,19 +99,19 @@ namespace Model
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const Aws::String& GetName() const{ return m_name; }
@@ -120,19 +120,19 @@ namespace Model
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetName(const Aws::String& value) { m_name = value; }
@@ -141,19 +141,19 @@ namespace Model
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetName(Aws::String&& value) { m_name = std::move(value); }
@@ -162,19 +162,19 @@ namespace Model
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetName(const char* value) { m_name.assign(value); }
@@ -183,19 +183,19 @@ namespace Model
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline ListObjectsV2Result& WithName(const Aws::String& value) { SetName(value); return *this;}
@@ -204,19 +204,19 @@ namespace Model
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline ListObjectsV2Result& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
@@ -225,19 +225,19 @@ namespace Model
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline ListObjectsV2Result& WithName(const char* value) { SetName(value); return *this;}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListPartsRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListPartsRequest.h
index fef7905b7a..27652328e3 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListPartsRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListPartsRequest.h
@@ -24,10 +24,10 @@ namespace Model
/**
*/
- class AWS_S3_API ListPartsRequest : public S3Request
+ class ListPartsRequest : public S3Request
{
public:
- ListPartsRequest();
+ AWS_S3_API ListPartsRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -35,31 +35,35 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "ListParts"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the bucket to which the parts are being uploaded. </p> <p>When
* using this action with an access point, you must direct requests to the access
* point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const Aws::String& GetBucket() const{ return m_bucket; }
@@ -68,19 +72,19 @@ namespace Model
* using this action with an access point, you must direct requests to the access
* point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; }
@@ -89,19 +93,19 @@ namespace Model
* using this action with an access point, you must direct requests to the access
* point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; }
@@ -110,19 +114,19 @@ namespace Model
* using this action with an access point, you must direct requests to the access
* point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); }
@@ -131,19 +135,19 @@ namespace Model
* using this action with an access point, you must direct requests to the access
* point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); }
@@ -152,19 +156,19 @@ namespace Model
* using this action with an access point, you must direct requests to the access
* point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline ListPartsRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;}
@@ -173,19 +177,19 @@ namespace Model
* using this action with an access point, you must direct requests to the access
* point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline ListPartsRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;}
@@ -194,19 +198,19 @@ namespace Model
* using this action with an access point, you must direct requests to the access
* point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline ListPartsRequest& WithBucket(const char* value) { SetBucket(value); return *this;}
@@ -360,61 +364,280 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline ListPartsRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline ListPartsRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline ListPartsRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
+ /**
+ * <p>The server-side encryption (SSE) algorithm used to encrypt the object. This
+ * parameter is needed only when the object was created using a checksum algorithm.
+ * For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetSSECustomerAlgorithm() const{ return m_sSECustomerAlgorithm; }
+
+ /**
+ * <p>The server-side encryption (SSE) algorithm used to encrypt the object. This
+ * parameter is needed only when the object was created using a checksum algorithm.
+ * For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool SSECustomerAlgorithmHasBeenSet() const { return m_sSECustomerAlgorithmHasBeenSet; }
+
+ /**
+ * <p>The server-side encryption (SSE) algorithm used to encrypt the object. This
+ * parameter is needed only when the object was created using a checksum algorithm.
+ * For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetSSECustomerAlgorithm(const Aws::String& value) { m_sSECustomerAlgorithmHasBeenSet = true; m_sSECustomerAlgorithm = value; }
+
+ /**
+ * <p>The server-side encryption (SSE) algorithm used to encrypt the object. This
+ * parameter is needed only when the object was created using a checksum algorithm.
+ * For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetSSECustomerAlgorithm(Aws::String&& value) { m_sSECustomerAlgorithmHasBeenSet = true; m_sSECustomerAlgorithm = std::move(value); }
+
+ /**
+ * <p>The server-side encryption (SSE) algorithm used to encrypt the object. This
+ * parameter is needed only when the object was created using a checksum algorithm.
+ * For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetSSECustomerAlgorithm(const char* value) { m_sSECustomerAlgorithmHasBeenSet = true; m_sSECustomerAlgorithm.assign(value); }
+
+ /**
+ * <p>The server-side encryption (SSE) algorithm used to encrypt the object. This
+ * parameter is needed only when the object was created using a checksum algorithm.
+ * For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline ListPartsRequest& WithSSECustomerAlgorithm(const Aws::String& value) { SetSSECustomerAlgorithm(value); return *this;}
+
+ /**
+ * <p>The server-side encryption (SSE) algorithm used to encrypt the object. This
+ * parameter is needed only when the object was created using a checksum algorithm.
+ * For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline ListPartsRequest& WithSSECustomerAlgorithm(Aws::String&& value) { SetSSECustomerAlgorithm(std::move(value)); return *this;}
+
+ /**
+ * <p>The server-side encryption (SSE) algorithm used to encrypt the object. This
+ * parameter is needed only when the object was created using a checksum algorithm.
+ * For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline ListPartsRequest& WithSSECustomerAlgorithm(const char* value) { SetSSECustomerAlgorithm(value); return *this;}
+
+
+ /**
+ * <p>The server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetSSECustomerKey() const{ return m_sSECustomerKey; }
+
+ /**
+ * <p>The server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool SSECustomerKeyHasBeenSet() const { return m_sSECustomerKeyHasBeenSet; }
+
+ /**
+ * <p>The server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetSSECustomerKey(const Aws::String& value) { m_sSECustomerKeyHasBeenSet = true; m_sSECustomerKey = value; }
+
+ /**
+ * <p>The server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetSSECustomerKey(Aws::String&& value) { m_sSECustomerKeyHasBeenSet = true; m_sSECustomerKey = std::move(value); }
+
+ /**
+ * <p>The server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetSSECustomerKey(const char* value) { m_sSECustomerKeyHasBeenSet = true; m_sSECustomerKey.assign(value); }
+
+ /**
+ * <p>The server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline ListPartsRequest& WithSSECustomerKey(const Aws::String& value) { SetSSECustomerKey(value); return *this;}
+
+ /**
+ * <p>The server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline ListPartsRequest& WithSSECustomerKey(Aws::String&& value) { SetSSECustomerKey(std::move(value)); return *this;}
+
+ /**
+ * <p>The server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline ListPartsRequest& WithSSECustomerKey(const char* value) { SetSSECustomerKey(value); return *this;}
+
+
+ /**
+ * <p>The MD5 server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetSSECustomerKeyMD5() const{ return m_sSECustomerKeyMD5; }
+
+ /**
+ * <p>The MD5 server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool SSECustomerKeyMD5HasBeenSet() const { return m_sSECustomerKeyMD5HasBeenSet; }
+
+ /**
+ * <p>The MD5 server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetSSECustomerKeyMD5(const Aws::String& value) { m_sSECustomerKeyMD5HasBeenSet = true; m_sSECustomerKeyMD5 = value; }
+
+ /**
+ * <p>The MD5 server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetSSECustomerKeyMD5(Aws::String&& value) { m_sSECustomerKeyMD5HasBeenSet = true; m_sSECustomerKeyMD5 = std::move(value); }
+
+ /**
+ * <p>The MD5 server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetSSECustomerKeyMD5(const char* value) { m_sSECustomerKeyMD5HasBeenSet = true; m_sSECustomerKeyMD5.assign(value); }
+
+ /**
+ * <p>The MD5 server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline ListPartsRequest& WithSSECustomerKeyMD5(const Aws::String& value) { SetSSECustomerKeyMD5(value); return *this;}
+
+ /**
+ * <p>The MD5 server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline ListPartsRequest& WithSSECustomerKeyMD5(Aws::String&& value) { SetSSECustomerKeyMD5(std::move(value)); return *this;}
+
+ /**
+ * <p>The MD5 server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline ListPartsRequest& WithSSECustomerKeyMD5(const char* value) { SetSSECustomerKeyMD5(value); return *this;}
+
+
inline const Aws::Map<Aws::String, Aws::String>& GetCustomizedAccessLogTag() const{ return m_customizedAccessLogTag; }
@@ -457,28 +680,37 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_key;
- bool m_keyHasBeenSet;
+ bool m_keyHasBeenSet = false;
int m_maxParts;
- bool m_maxPartsHasBeenSet;
+ bool m_maxPartsHasBeenSet = false;
int m_partNumberMarker;
- bool m_partNumberMarkerHasBeenSet;
+ bool m_partNumberMarkerHasBeenSet = false;
Aws::String m_uploadId;
- bool m_uploadIdHasBeenSet;
+ bool m_uploadIdHasBeenSet = false;
RequestPayer m_requestPayer;
- bool m_requestPayerHasBeenSet;
+ bool m_requestPayerHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
+
+ Aws::String m_sSECustomerAlgorithm;
+ bool m_sSECustomerAlgorithmHasBeenSet = false;
+
+ Aws::String m_sSECustomerKey;
+ bool m_sSECustomerKeyHasBeenSet = false;
+
+ Aws::String m_sSECustomerKeyMD5;
+ bool m_sSECustomerKeyMD5HasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListPartsResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListPartsResult.h
index 9cf2e6d514..c69dd6266b 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListPartsResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ListPartsResult.h
@@ -12,6 +12,7 @@
#include <aws/s3/model/Owner.h>
#include <aws/s3/model/StorageClass.h>
#include <aws/s3/model/RequestCharged.h>
+#include <aws/s3/model/ChecksumAlgorithm.h>
#include <aws/s3/model/Part.h>
#include <utility>
@@ -31,12 +32,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API ListPartsResult
+ class ListPartsResult
{
public:
- ListPartsResult();
- ListPartsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- ListPartsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API ListPartsResult();
+ AWS_S3_API ListPartsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API ListPartsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
@@ -156,37 +157,44 @@ namespace Model
/**
- * <p>The name of the bucket to which the multipart upload was initiated.</p>
+ * <p>The name of the bucket to which the multipart upload was initiated. Does not
+ * return the access point ARN or access point alias if used.</p>
*/
inline const Aws::String& GetBucket() const{ return m_bucket; }
/**
- * <p>The name of the bucket to which the multipart upload was initiated.</p>
+ * <p>The name of the bucket to which the multipart upload was initiated. Does not
+ * return the access point ARN or access point alias if used.</p>
*/
inline void SetBucket(const Aws::String& value) { m_bucket = value; }
/**
- * <p>The name of the bucket to which the multipart upload was initiated.</p>
+ * <p>The name of the bucket to which the multipart upload was initiated. Does not
+ * return the access point ARN or access point alias if used.</p>
*/
inline void SetBucket(Aws::String&& value) { m_bucket = std::move(value); }
/**
- * <p>The name of the bucket to which the multipart upload was initiated.</p>
+ * <p>The name of the bucket to which the multipart upload was initiated. Does not
+ * return the access point ARN or access point alias if used.</p>
*/
inline void SetBucket(const char* value) { m_bucket.assign(value); }
/**
- * <p>The name of the bucket to which the multipart upload was initiated.</p>
+ * <p>The name of the bucket to which the multipart upload was initiated. Does not
+ * return the access point ARN or access point alias if used.</p>
*/
inline ListPartsResult& WithBucket(const Aws::String& value) { SetBucket(value); return *this;}
/**
- * <p>The name of the bucket to which the multipart upload was initiated.</p>
+ * <p>The name of the bucket to which the multipart upload was initiated. Does not
+ * return the access point ARN or access point alias if used.</p>
*/
inline ListPartsResult& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;}
/**
- * <p>The name of the bucket to which the multipart upload was initiated.</p>
+ * <p>The name of the bucket to which the multipart upload was initiated. Does not
+ * return the access point ARN or access point alias if used.</p>
*/
inline ListPartsResult& WithBucket(const char* value) { SetBucket(value); return *this;}
@@ -390,41 +398,41 @@ namespace Model
/**
* <p>Container element that identifies who initiated the multipart upload. If the
- * initiator is an AWS account, this element provides the same information as the
- * <code>Owner</code> element. If the initiator is an IAM User, this element
- * provides the user ARN and display name.</p>
+ * initiator is an Amazon Web Services account, this element provides the same
+ * information as the <code>Owner</code> element. If the initiator is an IAM User,
+ * this element provides the user ARN and display name.</p>
*/
inline const Initiator& GetInitiator() const{ return m_initiator; }
/**
* <p>Container element that identifies who initiated the multipart upload. If the
- * initiator is an AWS account, this element provides the same information as the
- * <code>Owner</code> element. If the initiator is an IAM User, this element
- * provides the user ARN and display name.</p>
+ * initiator is an Amazon Web Services account, this element provides the same
+ * information as the <code>Owner</code> element. If the initiator is an IAM User,
+ * this element provides the user ARN and display name.</p>
*/
inline void SetInitiator(const Initiator& value) { m_initiator = value; }
/**
* <p>Container element that identifies who initiated the multipart upload. If the
- * initiator is an AWS account, this element provides the same information as the
- * <code>Owner</code> element. If the initiator is an IAM User, this element
- * provides the user ARN and display name.</p>
+ * initiator is an Amazon Web Services account, this element provides the same
+ * information as the <code>Owner</code> element. If the initiator is an IAM User,
+ * this element provides the user ARN and display name.</p>
*/
inline void SetInitiator(Initiator&& value) { m_initiator = std::move(value); }
/**
* <p>Container element that identifies who initiated the multipart upload. If the
- * initiator is an AWS account, this element provides the same information as the
- * <code>Owner</code> element. If the initiator is an IAM User, this element
- * provides the user ARN and display name.</p>
+ * initiator is an Amazon Web Services account, this element provides the same
+ * information as the <code>Owner</code> element. If the initiator is an IAM User,
+ * this element provides the user ARN and display name.</p>
*/
inline ListPartsResult& WithInitiator(const Initiator& value) { SetInitiator(value); return *this;}
/**
* <p>Container element that identifies who initiated the multipart upload. If the
- * initiator is an AWS account, this element provides the same information as the
- * <code>Owner</code> element. If the initiator is an IAM User, this element
- * provides the user ARN and display name.</p>
+ * initiator is an Amazon Web Services account, this element provides the same
+ * information as the <code>Owner</code> element. If the initiator is an IAM User,
+ * this element provides the user ARN and display name.</p>
*/
inline ListPartsResult& WithInitiator(Initiator&& value) { SetInitiator(std::move(value)); return *this;}
@@ -511,6 +519,32 @@ namespace Model
inline ListPartsResult& WithRequestCharged(RequestCharged&& value) { SetRequestCharged(std::move(value)); return *this;}
+
+ /**
+ * <p>The algorithm that was used to create a checksum of the object.</p>
+ */
+ inline const ChecksumAlgorithm& GetChecksumAlgorithm() const{ return m_checksumAlgorithm; }
+
+ /**
+ * <p>The algorithm that was used to create a checksum of the object.</p>
+ */
+ inline void SetChecksumAlgorithm(const ChecksumAlgorithm& value) { m_checksumAlgorithm = value; }
+
+ /**
+ * <p>The algorithm that was used to create a checksum of the object.</p>
+ */
+ inline void SetChecksumAlgorithm(ChecksumAlgorithm&& value) { m_checksumAlgorithm = std::move(value); }
+
+ /**
+ * <p>The algorithm that was used to create a checksum of the object.</p>
+ */
+ inline ListPartsResult& WithChecksumAlgorithm(const ChecksumAlgorithm& value) { SetChecksumAlgorithm(value); return *this;}
+
+ /**
+ * <p>The algorithm that was used to create a checksum of the object.</p>
+ */
+ inline ListPartsResult& WithChecksumAlgorithm(ChecksumAlgorithm&& value) { SetChecksumAlgorithm(std::move(value)); return *this;}
+
private:
Aws::Utils::DateTime m_abortDate;
@@ -540,6 +574,8 @@ namespace Model
StorageClass m_storageClass;
RequestCharged m_requestCharged;
+
+ ChecksumAlgorithm m_checksumAlgorithm;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LoggingEnabled.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LoggingEnabled.h
index 444fbf49f0..3cdf3e9c6f 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LoggingEnabled.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/LoggingEnabled.h
@@ -28,19 +28,19 @@ namespace Model
* <p>Describes where logs are stored and the prefix that Amazon S3 assigns to all
* log object keys for a bucket. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTlogging.html">PUT
- * Bucket logging</a> in the <i>Amazon Simple Storage Service API
- * Reference</i>.</p><p><h3>See Also:</h3> <a
+ * Bucket logging</a> in the <i>Amazon S3 API Reference</i>.</p><p><h3>See
+ * Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/LoggingEnabled">AWS
* API Reference</a></p>
*/
- class AWS_S3_API LoggingEnabled
+ class LoggingEnabled
{
public:
- LoggingEnabled();
- LoggingEnabled(const Aws::Utils::Xml::XmlNode& xmlNode);
- LoggingEnabled& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API LoggingEnabled();
+ AWS_S3_API LoggingEnabled(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API LoggingEnabled& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -125,42 +125,74 @@ namespace Model
/**
- * <p>Container for granting information.</p>
+ * <p>Container for granting information.</p> <p>Buckets that use the bucket owner
+ * enforced setting for Object Ownership don't support target grants. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/enable-server-access-logging.html#grant-log-delivery-permissions-general">Permissions
+ * for server access log delivery</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const Aws::Vector<TargetGrant>& GetTargetGrants() const{ return m_targetGrants; }
/**
- * <p>Container for granting information.</p>
+ * <p>Container for granting information.</p> <p>Buckets that use the bucket owner
+ * enforced setting for Object Ownership don't support target grants. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/enable-server-access-logging.html#grant-log-delivery-permissions-general">Permissions
+ * for server access log delivery</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline bool TargetGrantsHasBeenSet() const { return m_targetGrantsHasBeenSet; }
/**
- * <p>Container for granting information.</p>
+ * <p>Container for granting information.</p> <p>Buckets that use the bucket owner
+ * enforced setting for Object Ownership don't support target grants. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/enable-server-access-logging.html#grant-log-delivery-permissions-general">Permissions
+ * for server access log delivery</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetTargetGrants(const Aws::Vector<TargetGrant>& value) { m_targetGrantsHasBeenSet = true; m_targetGrants = value; }
/**
- * <p>Container for granting information.</p>
+ * <p>Container for granting information.</p> <p>Buckets that use the bucket owner
+ * enforced setting for Object Ownership don't support target grants. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/enable-server-access-logging.html#grant-log-delivery-permissions-general">Permissions
+ * for server access log delivery</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetTargetGrants(Aws::Vector<TargetGrant>&& value) { m_targetGrantsHasBeenSet = true; m_targetGrants = std::move(value); }
/**
- * <p>Container for granting information.</p>
+ * <p>Container for granting information.</p> <p>Buckets that use the bucket owner
+ * enforced setting for Object Ownership don't support target grants. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/enable-server-access-logging.html#grant-log-delivery-permissions-general">Permissions
+ * for server access log delivery</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline LoggingEnabled& WithTargetGrants(const Aws::Vector<TargetGrant>& value) { SetTargetGrants(value); return *this;}
/**
- * <p>Container for granting information.</p>
+ * <p>Container for granting information.</p> <p>Buckets that use the bucket owner
+ * enforced setting for Object Ownership don't support target grants. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/enable-server-access-logging.html#grant-log-delivery-permissions-general">Permissions
+ * for server access log delivery</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline LoggingEnabled& WithTargetGrants(Aws::Vector<TargetGrant>&& value) { SetTargetGrants(std::move(value)); return *this;}
/**
- * <p>Container for granting information.</p>
+ * <p>Container for granting information.</p> <p>Buckets that use the bucket owner
+ * enforced setting for Object Ownership don't support target grants. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/enable-server-access-logging.html#grant-log-delivery-permissions-general">Permissions
+ * for server access log delivery</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline LoggingEnabled& AddTargetGrants(const TargetGrant& value) { m_targetGrantsHasBeenSet = true; m_targetGrants.push_back(value); return *this; }
/**
- * <p>Container for granting information.</p>
+ * <p>Container for granting information.</p> <p>Buckets that use the bucket owner
+ * enforced setting for Object Ownership don't support target grants. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/enable-server-access-logging.html#grant-log-delivery-permissions-general">Permissions
+ * for server access log delivery</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline LoggingEnabled& AddTargetGrants(TargetGrant&& value) { m_targetGrantsHasBeenSet = true; m_targetGrants.push_back(std::move(value)); return *this; }
@@ -224,13 +256,13 @@ namespace Model
private:
Aws::String m_targetBucket;
- bool m_targetBucketHasBeenSet;
+ bool m_targetBucketHasBeenSet = false;
Aws::Vector<TargetGrant> m_targetGrants;
- bool m_targetGrantsHasBeenSet;
+ bool m_targetGrantsHasBeenSet = false;
Aws::String m_targetPrefix;
- bool m_targetPrefixHasBeenSet;
+ bool m_targetPrefixHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/MetadataEntry.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/MetadataEntry.h
index b6d876e918..f944998953 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/MetadataEntry.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/MetadataEntry.h
@@ -27,14 +27,14 @@ namespace Model
* <a href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/MetadataEntry">AWS
* API Reference</a></p>
*/
- class AWS_S3_API MetadataEntry
+ class MetadataEntry
{
public:
- MetadataEntry();
- MetadataEntry(const Aws::Utils::Xml::XmlNode& xmlNode);
- MetadataEntry& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API MetadataEntry();
+ AWS_S3_API MetadataEntry(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API MetadataEntry& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -121,10 +121,10 @@ namespace Model
private:
Aws::String m_name;
- bool m_nameHasBeenSet;
+ bool m_nameHasBeenSet = false;
Aws::String m_value;
- bool m_valueHasBeenSet;
+ bool m_valueHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Metrics.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Metrics.h
index 815b2b556c..bfec4208b1 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Metrics.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Metrics.h
@@ -29,14 +29,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/Metrics">AWS API
* Reference</a></p>
*/
- class AWS_S3_API Metrics
+ class Metrics
{
public:
- Metrics();
- Metrics(const Aws::Utils::Xml::XmlNode& xmlNode);
- Metrics& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Metrics();
+ AWS_S3_API Metrics(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Metrics& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -109,10 +109,10 @@ namespace Model
private:
MetricsStatus m_status;
- bool m_statusHasBeenSet;
+ bool m_statusHasBeenSet = false;
ReplicationTimeValue m_eventThreshold;
- bool m_eventThresholdHasBeenSet;
+ bool m_eventThresholdHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/MetricsAndOperator.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/MetricsAndOperator.h
index e413af11d9..952c5fd0b1 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/MetricsAndOperator.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/MetricsAndOperator.h
@@ -32,14 +32,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/MetricsAndOperator">AWS
* API Reference</a></p>
*/
- class AWS_S3_API MetricsAndOperator
+ class MetricsAndOperator
{
public:
- MetricsAndOperator();
- MetricsAndOperator(const Aws::Utils::Xml::XmlNode& xmlNode);
- MetricsAndOperator& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API MetricsAndOperator();
+ AWS_S3_API MetricsAndOperator(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API MetricsAndOperator& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -123,13 +123,57 @@ namespace Model
*/
inline MetricsAndOperator& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; }
+
+ /**
+ * <p>The access point ARN used when evaluating an <code>AND</code> predicate.</p>
+ */
+ inline const Aws::String& GetAccessPointArn() const{ return m_accessPointArn; }
+
+ /**
+ * <p>The access point ARN used when evaluating an <code>AND</code> predicate.</p>
+ */
+ inline bool AccessPointArnHasBeenSet() const { return m_accessPointArnHasBeenSet; }
+
+ /**
+ * <p>The access point ARN used when evaluating an <code>AND</code> predicate.</p>
+ */
+ inline void SetAccessPointArn(const Aws::String& value) { m_accessPointArnHasBeenSet = true; m_accessPointArn = value; }
+
+ /**
+ * <p>The access point ARN used when evaluating an <code>AND</code> predicate.</p>
+ */
+ inline void SetAccessPointArn(Aws::String&& value) { m_accessPointArnHasBeenSet = true; m_accessPointArn = std::move(value); }
+
+ /**
+ * <p>The access point ARN used when evaluating an <code>AND</code> predicate.</p>
+ */
+ inline void SetAccessPointArn(const char* value) { m_accessPointArnHasBeenSet = true; m_accessPointArn.assign(value); }
+
+ /**
+ * <p>The access point ARN used when evaluating an <code>AND</code> predicate.</p>
+ */
+ inline MetricsAndOperator& WithAccessPointArn(const Aws::String& value) { SetAccessPointArn(value); return *this;}
+
+ /**
+ * <p>The access point ARN used when evaluating an <code>AND</code> predicate.</p>
+ */
+ inline MetricsAndOperator& WithAccessPointArn(Aws::String&& value) { SetAccessPointArn(std::move(value)); return *this;}
+
+ /**
+ * <p>The access point ARN used when evaluating an <code>AND</code> predicate.</p>
+ */
+ inline MetricsAndOperator& WithAccessPointArn(const char* value) { SetAccessPointArn(value); return *this;}
+
private:
Aws::String m_prefix;
- bool m_prefixHasBeenSet;
+ bool m_prefixHasBeenSet = false;
Aws::Vector<Tag> m_tags;
- bool m_tagsHasBeenSet;
+ bool m_tagsHasBeenSet = false;
+
+ Aws::String m_accessPointArn;
+ bool m_accessPointArnHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/MetricsConfiguration.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/MetricsConfiguration.h
index 57abb1c653..8806bb12c3 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/MetricsConfiguration.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/MetricsConfiguration.h
@@ -29,20 +29,19 @@ namespace Model
* updating an existing metrics configuration, note that this is a full replacement
* of the existing metrics configuration. If you don't include the elements you
* want to keep, they are erased. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTMetricConfiguration.html">
- * PUT Bucket metrics</a> in the <i>Amazon Simple Storage Service API
- * Reference</i>.</p><p><h3>See Also:</h3> <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTMetricConfiguration.html">PutBucketMetricsConfiguration</a>.</p><p><h3>See
+ * Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/MetricsConfiguration">AWS
* API Reference</a></p>
*/
- class AWS_S3_API MetricsConfiguration
+ class MetricsConfiguration
{
public:
- MetricsConfiguration();
- MetricsConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
- MetricsConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API MetricsConfiguration();
+ AWS_S3_API MetricsConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API MetricsConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -88,53 +87,53 @@ namespace Model
/**
* <p>Specifies a metrics configuration filter. The metrics configuration will only
- * include objects that meet the filter's criteria. A filter must be a prefix, a
- * tag, or a conjunction (MetricsAndOperator).</p>
+ * include objects that meet the filter's criteria. A filter must be a prefix, an
+ * object tag, an access point ARN, or a conjunction (MetricsAndOperator).</p>
*/
inline const MetricsFilter& GetFilter() const{ return m_filter; }
/**
* <p>Specifies a metrics configuration filter. The metrics configuration will only
- * include objects that meet the filter's criteria. A filter must be a prefix, a
- * tag, or a conjunction (MetricsAndOperator).</p>
+ * include objects that meet the filter's criteria. A filter must be a prefix, an
+ * object tag, an access point ARN, or a conjunction (MetricsAndOperator).</p>
*/
inline bool FilterHasBeenSet() const { return m_filterHasBeenSet; }
/**
* <p>Specifies a metrics configuration filter. The metrics configuration will only
- * include objects that meet the filter's criteria. A filter must be a prefix, a
- * tag, or a conjunction (MetricsAndOperator).</p>
+ * include objects that meet the filter's criteria. A filter must be a prefix, an
+ * object tag, an access point ARN, or a conjunction (MetricsAndOperator).</p>
*/
inline void SetFilter(const MetricsFilter& value) { m_filterHasBeenSet = true; m_filter = value; }
/**
* <p>Specifies a metrics configuration filter. The metrics configuration will only
- * include objects that meet the filter's criteria. A filter must be a prefix, a
- * tag, or a conjunction (MetricsAndOperator).</p>
+ * include objects that meet the filter's criteria. A filter must be a prefix, an
+ * object tag, an access point ARN, or a conjunction (MetricsAndOperator).</p>
*/
inline void SetFilter(MetricsFilter&& value) { m_filterHasBeenSet = true; m_filter = std::move(value); }
/**
* <p>Specifies a metrics configuration filter. The metrics configuration will only
- * include objects that meet the filter's criteria. A filter must be a prefix, a
- * tag, or a conjunction (MetricsAndOperator).</p>
+ * include objects that meet the filter's criteria. A filter must be a prefix, an
+ * object tag, an access point ARN, or a conjunction (MetricsAndOperator).</p>
*/
inline MetricsConfiguration& WithFilter(const MetricsFilter& value) { SetFilter(value); return *this;}
/**
* <p>Specifies a metrics configuration filter. The metrics configuration will only
- * include objects that meet the filter's criteria. A filter must be a prefix, a
- * tag, or a conjunction (MetricsAndOperator).</p>
+ * include objects that meet the filter's criteria. A filter must be a prefix, an
+ * object tag, an access point ARN, or a conjunction (MetricsAndOperator).</p>
*/
inline MetricsConfiguration& WithFilter(MetricsFilter&& value) { SetFilter(std::move(value)); return *this;}
private:
Aws::String m_id;
- bool m_idHasBeenSet;
+ bool m_idHasBeenSet = false;
MetricsFilter m_filter;
- bool m_filterHasBeenSet;
+ bool m_filterHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/MetricsFilter.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/MetricsFilter.h
index 1305abdf21..b0086b9eca 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/MetricsFilter.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/MetricsFilter.h
@@ -26,19 +26,22 @@ namespace Model
/**
* <p>Specifies a metrics configuration filter. The metrics configuration only
- * includes objects that meet the filter's criteria. A filter must be a prefix, a
- * tag, or a conjunction (MetricsAndOperator).</p><p><h3>See Also:</h3> <a
+ * includes objects that meet the filter's criteria. A filter must be a prefix, an
+ * object tag, an access point ARN, or a conjunction (MetricsAndOperator). For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketMetricsConfiguration.html">PutBucketMetricsConfiguration</a>.</p><p><h3>See
+ * Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/MetricsFilter">AWS
* API Reference</a></p>
*/
- class AWS_S3_API MetricsFilter
+ class MetricsFilter
{
public:
- MetricsFilter();
- MetricsFilter(const Aws::Utils::Xml::XmlNode& xmlNode);
- MetricsFilter& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API MetricsFilter();
+ AWS_S3_API MetricsFilter(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API MetricsFilter& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -114,6 +117,47 @@ namespace Model
/**
+ * <p>The access point ARN used when evaluating a metrics filter.</p>
+ */
+ inline const Aws::String& GetAccessPointArn() const{ return m_accessPointArn; }
+
+ /**
+ * <p>The access point ARN used when evaluating a metrics filter.</p>
+ */
+ inline bool AccessPointArnHasBeenSet() const { return m_accessPointArnHasBeenSet; }
+
+ /**
+ * <p>The access point ARN used when evaluating a metrics filter.</p>
+ */
+ inline void SetAccessPointArn(const Aws::String& value) { m_accessPointArnHasBeenSet = true; m_accessPointArn = value; }
+
+ /**
+ * <p>The access point ARN used when evaluating a metrics filter.</p>
+ */
+ inline void SetAccessPointArn(Aws::String&& value) { m_accessPointArnHasBeenSet = true; m_accessPointArn = std::move(value); }
+
+ /**
+ * <p>The access point ARN used when evaluating a metrics filter.</p>
+ */
+ inline void SetAccessPointArn(const char* value) { m_accessPointArnHasBeenSet = true; m_accessPointArn.assign(value); }
+
+ /**
+ * <p>The access point ARN used when evaluating a metrics filter.</p>
+ */
+ inline MetricsFilter& WithAccessPointArn(const Aws::String& value) { SetAccessPointArn(value); return *this;}
+
+ /**
+ * <p>The access point ARN used when evaluating a metrics filter.</p>
+ */
+ inline MetricsFilter& WithAccessPointArn(Aws::String&& value) { SetAccessPointArn(std::move(value)); return *this;}
+
+ /**
+ * <p>The access point ARN used when evaluating a metrics filter.</p>
+ */
+ inline MetricsFilter& WithAccessPointArn(const char* value) { SetAccessPointArn(value); return *this;}
+
+
+ /**
* <p>A conjunction (logical AND) of predicates, which is used in evaluating a
* metrics filter. The operator must have at least two predicates, and an object
* must match all of the predicates in order for the filter to apply.</p>
@@ -158,13 +202,16 @@ namespace Model
private:
Aws::String m_prefix;
- bool m_prefixHasBeenSet;
+ bool m_prefixHasBeenSet = false;
Tag m_tag;
- bool m_tagHasBeenSet;
+ bool m_tagHasBeenSet = false;
+
+ Aws::String m_accessPointArn;
+ bool m_accessPointArnHasBeenSet = false;
MetricsAndOperator m_and;
- bool m_andHasBeenSet;
+ bool m_andHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/MultipartUpload.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/MultipartUpload.h
index 29eafa4222..b0dad12ce0 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/MultipartUpload.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/MultipartUpload.h
@@ -10,6 +10,7 @@
#include <aws/s3/model/StorageClass.h>
#include <aws/s3/model/Owner.h>
#include <aws/s3/model/Initiator.h>
+#include <aws/s3/model/ChecksumAlgorithm.h>
#include <utility>
namespace Aws
@@ -32,14 +33,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/MultipartUpload">AWS
* API Reference</a></p>
*/
- class AWS_S3_API MultipartUpload
+ class MultipartUpload
{
public:
- MultipartUpload();
- MultipartUpload(const Aws::Utils::Xml::XmlNode& xmlNode);
- MultipartUpload& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API MultipartUpload();
+ AWS_S3_API MultipartUpload(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API MultipartUpload& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -247,25 +248,59 @@ namespace Model
*/
inline MultipartUpload& WithInitiator(Initiator&& value) { SetInitiator(std::move(value)); return *this;}
+
+ /**
+ * <p>The algorithm that was used to create a checksum of the object.</p>
+ */
+ inline const ChecksumAlgorithm& GetChecksumAlgorithm() const{ return m_checksumAlgorithm; }
+
+ /**
+ * <p>The algorithm that was used to create a checksum of the object.</p>
+ */
+ inline bool ChecksumAlgorithmHasBeenSet() const { return m_checksumAlgorithmHasBeenSet; }
+
+ /**
+ * <p>The algorithm that was used to create a checksum of the object.</p>
+ */
+ inline void SetChecksumAlgorithm(const ChecksumAlgorithm& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = value; }
+
+ /**
+ * <p>The algorithm that was used to create a checksum of the object.</p>
+ */
+ inline void SetChecksumAlgorithm(ChecksumAlgorithm&& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = std::move(value); }
+
+ /**
+ * <p>The algorithm that was used to create a checksum of the object.</p>
+ */
+ inline MultipartUpload& WithChecksumAlgorithm(const ChecksumAlgorithm& value) { SetChecksumAlgorithm(value); return *this;}
+
+ /**
+ * <p>The algorithm that was used to create a checksum of the object.</p>
+ */
+ inline MultipartUpload& WithChecksumAlgorithm(ChecksumAlgorithm&& value) { SetChecksumAlgorithm(std::move(value)); return *this;}
+
private:
Aws::String m_uploadId;
- bool m_uploadIdHasBeenSet;
+ bool m_uploadIdHasBeenSet = false;
Aws::String m_key;
- bool m_keyHasBeenSet;
+ bool m_keyHasBeenSet = false;
Aws::Utils::DateTime m_initiated;
- bool m_initiatedHasBeenSet;
+ bool m_initiatedHasBeenSet = false;
StorageClass m_storageClass;
- bool m_storageClassHasBeenSet;
+ bool m_storageClassHasBeenSet = false;
Owner m_owner;
- bool m_ownerHasBeenSet;
+ bool m_ownerHasBeenSet = false;
Initiator m_initiator;
- bool m_initiatorHasBeenSet;
+ bool m_initiatorHasBeenSet = false;
+
+ ChecksumAlgorithm m_checksumAlgorithm;
+ bool m_checksumAlgorithmHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/NoncurrentVersionExpiration.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/NoncurrentVersionExpiration.h
index 9e966d7722..c039ca9950 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/NoncurrentVersionExpiration.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/NoncurrentVersionExpiration.h
@@ -29,60 +29,100 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/NoncurrentVersionExpiration">AWS
* API Reference</a></p>
*/
- class AWS_S3_API NoncurrentVersionExpiration
+ class NoncurrentVersionExpiration
{
public:
- NoncurrentVersionExpiration();
- NoncurrentVersionExpiration(const Aws::Utils::Xml::XmlNode& xmlNode);
- NoncurrentVersionExpiration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API NoncurrentVersionExpiration();
+ AWS_S3_API NoncurrentVersionExpiration(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API NoncurrentVersionExpiration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
* <p>Specifies the number of days an object is noncurrent before Amazon S3 can
- * perform the associated action. For information about the noncurrent days
- * calculations, see <a
+ * perform the associated action. The value must be a non-zero positive integer.
+ * For information about the noncurrent days calculations, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/intro-lifecycle-rules.html#non-current-days-calculations">How
- * Amazon S3 Calculates When an Object Became Noncurrent</a> in the <i>Amazon
- * Simple Storage Service Developer Guide</i>.</p>
+ * Amazon S3 Calculates When an Object Became Noncurrent</a> in the <i>Amazon S3
+ * User Guide</i>.</p>
*/
inline int GetNoncurrentDays() const{ return m_noncurrentDays; }
/**
* <p>Specifies the number of days an object is noncurrent before Amazon S3 can
- * perform the associated action. For information about the noncurrent days
- * calculations, see <a
+ * perform the associated action. The value must be a non-zero positive integer.
+ * For information about the noncurrent days calculations, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/intro-lifecycle-rules.html#non-current-days-calculations">How
- * Amazon S3 Calculates When an Object Became Noncurrent</a> in the <i>Amazon
- * Simple Storage Service Developer Guide</i>.</p>
+ * Amazon S3 Calculates When an Object Became Noncurrent</a> in the <i>Amazon S3
+ * User Guide</i>.</p>
*/
inline bool NoncurrentDaysHasBeenSet() const { return m_noncurrentDaysHasBeenSet; }
/**
* <p>Specifies the number of days an object is noncurrent before Amazon S3 can
- * perform the associated action. For information about the noncurrent days
- * calculations, see <a
+ * perform the associated action. The value must be a non-zero positive integer.
+ * For information about the noncurrent days calculations, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/intro-lifecycle-rules.html#non-current-days-calculations">How
- * Amazon S3 Calculates When an Object Became Noncurrent</a> in the <i>Amazon
- * Simple Storage Service Developer Guide</i>.</p>
+ * Amazon S3 Calculates When an Object Became Noncurrent</a> in the <i>Amazon S3
+ * User Guide</i>.</p>
*/
inline void SetNoncurrentDays(int value) { m_noncurrentDaysHasBeenSet = true; m_noncurrentDays = value; }
/**
* <p>Specifies the number of days an object is noncurrent before Amazon S3 can
- * perform the associated action. For information about the noncurrent days
- * calculations, see <a
+ * perform the associated action. The value must be a non-zero positive integer.
+ * For information about the noncurrent days calculations, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/intro-lifecycle-rules.html#non-current-days-calculations">How
- * Amazon S3 Calculates When an Object Became Noncurrent</a> in the <i>Amazon
- * Simple Storage Service Developer Guide</i>.</p>
+ * Amazon S3 Calculates When an Object Became Noncurrent</a> in the <i>Amazon S3
+ * User Guide</i>.</p>
*/
inline NoncurrentVersionExpiration& WithNoncurrentDays(int value) { SetNoncurrentDays(value); return *this;}
+
+ /**
+ * <p>Specifies how many noncurrent versions Amazon S3 will retain. If there are
+ * this many more recent noncurrent versions, Amazon S3 will take the associated
+ * action. For more information about noncurrent versions, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/intro-lifecycle-rules.html">Lifecycle
+ * configuration elements</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline int GetNewerNoncurrentVersions() const{ return m_newerNoncurrentVersions; }
+
+ /**
+ * <p>Specifies how many noncurrent versions Amazon S3 will retain. If there are
+ * this many more recent noncurrent versions, Amazon S3 will take the associated
+ * action. For more information about noncurrent versions, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/intro-lifecycle-rules.html">Lifecycle
+ * configuration elements</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool NewerNoncurrentVersionsHasBeenSet() const { return m_newerNoncurrentVersionsHasBeenSet; }
+
+ /**
+ * <p>Specifies how many noncurrent versions Amazon S3 will retain. If there are
+ * this many more recent noncurrent versions, Amazon S3 will take the associated
+ * action. For more information about noncurrent versions, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/intro-lifecycle-rules.html">Lifecycle
+ * configuration elements</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetNewerNoncurrentVersions(int value) { m_newerNoncurrentVersionsHasBeenSet = true; m_newerNoncurrentVersions = value; }
+
+ /**
+ * <p>Specifies how many noncurrent versions Amazon S3 will retain. If there are
+ * this many more recent noncurrent versions, Amazon S3 will take the associated
+ * action. For more information about noncurrent versions, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/intro-lifecycle-rules.html">Lifecycle
+ * configuration elements</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline NoncurrentVersionExpiration& WithNewerNoncurrentVersions(int value) { SetNewerNoncurrentVersions(value); return *this;}
+
private:
int m_noncurrentDays;
- bool m_noncurrentDaysHasBeenSet;
+ bool m_noncurrentDaysHasBeenSet = false;
+
+ int m_newerNoncurrentVersions;
+ bool m_newerNoncurrentVersionsHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/NoncurrentVersionTransition.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/NoncurrentVersionTransition.h
index f6ea66e084..340d82a597 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/NoncurrentVersionTransition.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/NoncurrentVersionTransition.h
@@ -25,24 +25,25 @@ namespace Model
/**
* <p>Container for the transition rule that describes when noncurrent objects
* transition to the <code>STANDARD_IA</code>, <code>ONEZONE_IA</code>,
- * <code>INTELLIGENT_TIERING</code>, <code>GLACIER</code>, or
- * <code>DEEP_ARCHIVE</code> storage class. If your bucket is versioning-enabled
+ * <code>INTELLIGENT_TIERING</code>, <code>GLACIER_IR</code>, <code>GLACIER</code>,
+ * or <code>DEEP_ARCHIVE</code> storage class. If your bucket is versioning-enabled
* (or versioning is suspended), you can set this action to request that Amazon S3
* transition noncurrent object versions to the <code>STANDARD_IA</code>,
- * <code>ONEZONE_IA</code>, <code>INTELLIGENT_TIERING</code>, <code>GLACIER</code>,
- * or <code>DEEP_ARCHIVE</code> storage class at a specific period in the object's
- * lifetime.</p><p><h3>See Also:</h3> <a
+ * <code>ONEZONE_IA</code>, <code>INTELLIGENT_TIERING</code>,
+ * <code>GLACIER_IR</code>, <code>GLACIER</code>, or <code>DEEP_ARCHIVE</code>
+ * storage class at a specific period in the object's lifetime.</p><p><h3>See
+ * Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/NoncurrentVersionTransition">AWS
* API Reference</a></p>
*/
- class AWS_S3_API NoncurrentVersionTransition
+ class NoncurrentVersionTransition
{
public:
- NoncurrentVersionTransition();
- NoncurrentVersionTransition(const Aws::Utils::Xml::XmlNode& xmlNode);
- NoncurrentVersionTransition& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API NoncurrentVersionTransition();
+ AWS_S3_API NoncurrentVersionTransition(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API NoncurrentVersionTransition& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -116,13 +117,53 @@ namespace Model
*/
inline NoncurrentVersionTransition& WithStorageClass(TransitionStorageClass&& value) { SetStorageClass(std::move(value)); return *this;}
+
+ /**
+ * <p>Specifies how many noncurrent versions Amazon S3 will retain. If there are
+ * this many more recent noncurrent versions, Amazon S3 will take the associated
+ * action. For more information about noncurrent versions, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/intro-lifecycle-rules.html">Lifecycle
+ * configuration elements</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline int GetNewerNoncurrentVersions() const{ return m_newerNoncurrentVersions; }
+
+ /**
+ * <p>Specifies how many noncurrent versions Amazon S3 will retain. If there are
+ * this many more recent noncurrent versions, Amazon S3 will take the associated
+ * action. For more information about noncurrent versions, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/intro-lifecycle-rules.html">Lifecycle
+ * configuration elements</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool NewerNoncurrentVersionsHasBeenSet() const { return m_newerNoncurrentVersionsHasBeenSet; }
+
+ /**
+ * <p>Specifies how many noncurrent versions Amazon S3 will retain. If there are
+ * this many more recent noncurrent versions, Amazon S3 will take the associated
+ * action. For more information about noncurrent versions, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/intro-lifecycle-rules.html">Lifecycle
+ * configuration elements</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetNewerNoncurrentVersions(int value) { m_newerNoncurrentVersionsHasBeenSet = true; m_newerNoncurrentVersions = value; }
+
+ /**
+ * <p>Specifies how many noncurrent versions Amazon S3 will retain. If there are
+ * this many more recent noncurrent versions, Amazon S3 will take the associated
+ * action. For more information about noncurrent versions, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/intro-lifecycle-rules.html">Lifecycle
+ * configuration elements</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline NoncurrentVersionTransition& WithNewerNoncurrentVersions(int value) { SetNewerNoncurrentVersions(value); return *this;}
+
private:
int m_noncurrentDays;
- bool m_noncurrentDaysHasBeenSet;
+ bool m_noncurrentDaysHasBeenSet = false;
TransitionStorageClass m_storageClass;
- bool m_storageClassHasBeenSet;
+ bool m_storageClassHasBeenSet = false;
+
+ int m_newerNoncurrentVersions;
+ bool m_newerNoncurrentVersionsHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/NotificationConfiguration.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/NotificationConfiguration.h
index f479b46490..24f0e6cbc0 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/NotificationConfiguration.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/NotificationConfiguration.h
@@ -6,6 +6,7 @@
#pragma once
#include <aws/s3/S3_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
+#include <aws/s3/model/EventBridgeConfiguration.h>
#include <aws/s3/model/TopicConfiguration.h>
#include <aws/s3/model/QueueConfiguration.h>
#include <aws/s3/model/LambdaFunctionConfiguration.h>
@@ -32,14 +33,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/NotificationConfiguration">AWS
* API Reference</a></p>
*/
- class AWS_S3_API NotificationConfiguration
+ class NotificationConfiguration
{
public:
- NotificationConfiguration();
- NotificationConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
- NotificationConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API NotificationConfiguration();
+ AWS_S3_API NotificationConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API NotificationConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -141,63 +142,97 @@ namespace Model
/**
- * <p>Describes the AWS Lambda functions to invoke and the events for which to
- * invoke them.</p>
+ * <p>Describes the Lambda functions to invoke and the events for which to invoke
+ * them.</p>
*/
inline const Aws::Vector<LambdaFunctionConfiguration>& GetLambdaFunctionConfigurations() const{ return m_lambdaFunctionConfigurations; }
/**
- * <p>Describes the AWS Lambda functions to invoke and the events for which to
- * invoke them.</p>
+ * <p>Describes the Lambda functions to invoke and the events for which to invoke
+ * them.</p>
*/
inline bool LambdaFunctionConfigurationsHasBeenSet() const { return m_lambdaFunctionConfigurationsHasBeenSet; }
/**
- * <p>Describes the AWS Lambda functions to invoke and the events for which to
- * invoke them.</p>
+ * <p>Describes the Lambda functions to invoke and the events for which to invoke
+ * them.</p>
*/
inline void SetLambdaFunctionConfigurations(const Aws::Vector<LambdaFunctionConfiguration>& value) { m_lambdaFunctionConfigurationsHasBeenSet = true; m_lambdaFunctionConfigurations = value; }
/**
- * <p>Describes the AWS Lambda functions to invoke and the events for which to
- * invoke them.</p>
+ * <p>Describes the Lambda functions to invoke and the events for which to invoke
+ * them.</p>
*/
inline void SetLambdaFunctionConfigurations(Aws::Vector<LambdaFunctionConfiguration>&& value) { m_lambdaFunctionConfigurationsHasBeenSet = true; m_lambdaFunctionConfigurations = std::move(value); }
/**
- * <p>Describes the AWS Lambda functions to invoke and the events for which to
- * invoke them.</p>
+ * <p>Describes the Lambda functions to invoke and the events for which to invoke
+ * them.</p>
*/
inline NotificationConfiguration& WithLambdaFunctionConfigurations(const Aws::Vector<LambdaFunctionConfiguration>& value) { SetLambdaFunctionConfigurations(value); return *this;}
/**
- * <p>Describes the AWS Lambda functions to invoke and the events for which to
- * invoke them.</p>
+ * <p>Describes the Lambda functions to invoke and the events for which to invoke
+ * them.</p>
*/
inline NotificationConfiguration& WithLambdaFunctionConfigurations(Aws::Vector<LambdaFunctionConfiguration>&& value) { SetLambdaFunctionConfigurations(std::move(value)); return *this;}
/**
- * <p>Describes the AWS Lambda functions to invoke and the events for which to
- * invoke them.</p>
+ * <p>Describes the Lambda functions to invoke and the events for which to invoke
+ * them.</p>
*/
inline NotificationConfiguration& AddLambdaFunctionConfigurations(const LambdaFunctionConfiguration& value) { m_lambdaFunctionConfigurationsHasBeenSet = true; m_lambdaFunctionConfigurations.push_back(value); return *this; }
/**
- * <p>Describes the AWS Lambda functions to invoke and the events for which to
- * invoke them.</p>
+ * <p>Describes the Lambda functions to invoke and the events for which to invoke
+ * them.</p>
*/
inline NotificationConfiguration& AddLambdaFunctionConfigurations(LambdaFunctionConfiguration&& value) { m_lambdaFunctionConfigurationsHasBeenSet = true; m_lambdaFunctionConfigurations.push_back(std::move(value)); return *this; }
+
+ /**
+ * <p>Enables delivery of events to Amazon EventBridge.</p>
+ */
+ inline const EventBridgeConfiguration& GetEventBridgeConfiguration() const{ return m_eventBridgeConfiguration; }
+
+ /**
+ * <p>Enables delivery of events to Amazon EventBridge.</p>
+ */
+ inline bool EventBridgeConfigurationHasBeenSet() const { return m_eventBridgeConfigurationHasBeenSet; }
+
+ /**
+ * <p>Enables delivery of events to Amazon EventBridge.</p>
+ */
+ inline void SetEventBridgeConfiguration(const EventBridgeConfiguration& value) { m_eventBridgeConfigurationHasBeenSet = true; m_eventBridgeConfiguration = value; }
+
+ /**
+ * <p>Enables delivery of events to Amazon EventBridge.</p>
+ */
+ inline void SetEventBridgeConfiguration(EventBridgeConfiguration&& value) { m_eventBridgeConfigurationHasBeenSet = true; m_eventBridgeConfiguration = std::move(value); }
+
+ /**
+ * <p>Enables delivery of events to Amazon EventBridge.</p>
+ */
+ inline NotificationConfiguration& WithEventBridgeConfiguration(const EventBridgeConfiguration& value) { SetEventBridgeConfiguration(value); return *this;}
+
+ /**
+ * <p>Enables delivery of events to Amazon EventBridge.</p>
+ */
+ inline NotificationConfiguration& WithEventBridgeConfiguration(EventBridgeConfiguration&& value) { SetEventBridgeConfiguration(std::move(value)); return *this;}
+
private:
Aws::Vector<TopicConfiguration> m_topicConfigurations;
- bool m_topicConfigurationsHasBeenSet;
+ bool m_topicConfigurationsHasBeenSet = false;
Aws::Vector<QueueConfiguration> m_queueConfigurations;
- bool m_queueConfigurationsHasBeenSet;
+ bool m_queueConfigurationsHasBeenSet = false;
Aws::Vector<LambdaFunctionConfiguration> m_lambdaFunctionConfigurations;
- bool m_lambdaFunctionConfigurationsHasBeenSet;
+ bool m_lambdaFunctionConfigurationsHasBeenSet = false;
+
+ EventBridgeConfiguration m_eventBridgeConfiguration;
+ bool m_eventBridgeConfigurationHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/NotificationConfigurationDeprecated.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/NotificationConfigurationDeprecated.h
index fabb46afcf..2f6618fc4e 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/NotificationConfigurationDeprecated.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/NotificationConfigurationDeprecated.h
@@ -24,14 +24,14 @@ namespace S3
namespace Model
{
- class AWS_S3_API NotificationConfigurationDeprecated
+ class NotificationConfigurationDeprecated
{
public:
- NotificationConfigurationDeprecated();
- NotificationConfigurationDeprecated(const Aws::Utils::Xml::XmlNode& xmlNode);
- NotificationConfigurationDeprecated& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API NotificationConfigurationDeprecated();
+ AWS_S3_API NotificationConfigurationDeprecated(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API NotificationConfigurationDeprecated& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -121,45 +121,45 @@ namespace Model
/**
- * <p>Container for specifying the AWS Lambda notification configuration.</p>
+ * <p>Container for specifying the Lambda notification configuration.</p>
*/
inline const CloudFunctionConfiguration& GetCloudFunctionConfiguration() const{ return m_cloudFunctionConfiguration; }
/**
- * <p>Container for specifying the AWS Lambda notification configuration.</p>
+ * <p>Container for specifying the Lambda notification configuration.</p>
*/
inline bool CloudFunctionConfigurationHasBeenSet() const { return m_cloudFunctionConfigurationHasBeenSet; }
/**
- * <p>Container for specifying the AWS Lambda notification configuration.</p>
+ * <p>Container for specifying the Lambda notification configuration.</p>
*/
inline void SetCloudFunctionConfiguration(const CloudFunctionConfiguration& value) { m_cloudFunctionConfigurationHasBeenSet = true; m_cloudFunctionConfiguration = value; }
/**
- * <p>Container for specifying the AWS Lambda notification configuration.</p>
+ * <p>Container for specifying the Lambda notification configuration.</p>
*/
inline void SetCloudFunctionConfiguration(CloudFunctionConfiguration&& value) { m_cloudFunctionConfigurationHasBeenSet = true; m_cloudFunctionConfiguration = std::move(value); }
/**
- * <p>Container for specifying the AWS Lambda notification configuration.</p>
+ * <p>Container for specifying the Lambda notification configuration.</p>
*/
inline NotificationConfigurationDeprecated& WithCloudFunctionConfiguration(const CloudFunctionConfiguration& value) { SetCloudFunctionConfiguration(value); return *this;}
/**
- * <p>Container for specifying the AWS Lambda notification configuration.</p>
+ * <p>Container for specifying the Lambda notification configuration.</p>
*/
inline NotificationConfigurationDeprecated& WithCloudFunctionConfiguration(CloudFunctionConfiguration&& value) { SetCloudFunctionConfiguration(std::move(value)); return *this;}
private:
TopicConfigurationDeprecated m_topicConfiguration;
- bool m_topicConfigurationHasBeenSet;
+ bool m_topicConfigurationHasBeenSet = false;
QueueConfigurationDeprecated m_queueConfiguration;
- bool m_queueConfigurationHasBeenSet;
+ bool m_queueConfigurationHasBeenSet = false;
CloudFunctionConfiguration m_cloudFunctionConfiguration;
- bool m_cloudFunctionConfigurationHasBeenSet;
+ bool m_cloudFunctionConfigurationHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/NotificationConfigurationFilter.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/NotificationConfigurationFilter.h
index 496d5d756f..0bfe347533 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/NotificationConfigurationFilter.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/NotificationConfigurationFilter.h
@@ -31,14 +31,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/NotificationConfigurationFilter">AWS
* API Reference</a></p>
*/
- class AWS_S3_API NotificationConfigurationFilter
+ class NotificationConfigurationFilter
{
public:
- NotificationConfigurationFilter();
- NotificationConfigurationFilter(const Aws::Utils::Xml::XmlNode& xmlNode);
- NotificationConfigurationFilter& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API NotificationConfigurationFilter();
+ AWS_S3_API NotificationConfigurationFilter(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API NotificationConfigurationFilter& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
@@ -62,7 +62,7 @@ namespace Model
private:
S3KeyFilter m_key;
- bool m_keyHasBeenSet;
+ bool m_keyHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Object.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Object.h
index 2deeed80c9..520cf869c6 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Object.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Object.h
@@ -7,8 +7,10 @@
#include <aws/s3/S3_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/DateTime.h>
+#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/s3/model/ObjectStorageClass.h>
#include <aws/s3/model/Owner.h>
+#include <aws/s3/model/ChecksumAlgorithm.h>
#include <utility>
namespace Aws
@@ -31,14 +33,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/Object">AWS API
* Reference</a></p>
*/
- class AWS_S3_API Object
+ class Object
{
public:
- Object();
- Object(const Aws::Utils::Xml::XmlNode& xmlNode);
- Object& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Object();
+ AWS_S3_API Object(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Object& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -126,14 +128,17 @@ namespace Model
* contents of an object, not its metadata. The ETag may or may not be an MD5
* digest of the object data. Whether or not it is depends on how the object was
* created and how it is encrypted as described below:</p> <ul> <li> <p>Objects
- * created by the PUT Object, POST Object, or Copy operation, or through the AWS
- * Management Console, and are encrypted by SSE-S3 or plaintext, have ETags that
- * are an MD5 digest of their object data.</p> </li> <li> <p>Objects created by the
- * PUT Object, POST Object, or Copy operation, or through the AWS Management
- * Console, and are encrypted by SSE-C or SSE-KMS, have ETags that are not an MD5
- * digest of their object data.</p> </li> <li> <p>If an object is created by either
- * the Multipart Upload or Part Copy operation, the ETag is not an MD5 digest,
- * regardless of the method of encryption.</p> </li> </ul>
+ * created by the PUT Object, POST Object, or Copy operation, or through the Amazon
+ * Web Services Management Console, and are encrypted by SSE-S3 or plaintext, have
+ * ETags that are an MD5 digest of their object data.</p> </li> <li> <p>Objects
+ * created by the PUT Object, POST Object, or Copy operation, or through the Amazon
+ * Web Services Management Console, and are encrypted by SSE-C or SSE-KMS, have
+ * ETags that are not an MD5 digest of their object data.</p> </li> <li> <p>If an
+ * object is created by either the Multipart Upload or Part Copy operation, the
+ * ETag is not an MD5 digest, regardless of the method of encryption. If an object
+ * is larger than 16 MB, the Amazon Web Services Management Console will upload or
+ * copy that object as a Multipart Upload, and therefore the ETag will not be an
+ * MD5 digest.</p> </li> </ul>
*/
inline const Aws::String& GetETag() const{ return m_eTag; }
@@ -142,14 +147,17 @@ namespace Model
* contents of an object, not its metadata. The ETag may or may not be an MD5
* digest of the object data. Whether or not it is depends on how the object was
* created and how it is encrypted as described below:</p> <ul> <li> <p>Objects
- * created by the PUT Object, POST Object, or Copy operation, or through the AWS
- * Management Console, and are encrypted by SSE-S3 or plaintext, have ETags that
- * are an MD5 digest of their object data.</p> </li> <li> <p>Objects created by the
- * PUT Object, POST Object, or Copy operation, or through the AWS Management
- * Console, and are encrypted by SSE-C or SSE-KMS, have ETags that are not an MD5
- * digest of their object data.</p> </li> <li> <p>If an object is created by either
- * the Multipart Upload or Part Copy operation, the ETag is not an MD5 digest,
- * regardless of the method of encryption.</p> </li> </ul>
+ * created by the PUT Object, POST Object, or Copy operation, or through the Amazon
+ * Web Services Management Console, and are encrypted by SSE-S3 or plaintext, have
+ * ETags that are an MD5 digest of their object data.</p> </li> <li> <p>Objects
+ * created by the PUT Object, POST Object, or Copy operation, or through the Amazon
+ * Web Services Management Console, and are encrypted by SSE-C or SSE-KMS, have
+ * ETags that are not an MD5 digest of their object data.</p> </li> <li> <p>If an
+ * object is created by either the Multipart Upload or Part Copy operation, the
+ * ETag is not an MD5 digest, regardless of the method of encryption. If an object
+ * is larger than 16 MB, the Amazon Web Services Management Console will upload or
+ * copy that object as a Multipart Upload, and therefore the ETag will not be an
+ * MD5 digest.</p> </li> </ul>
*/
inline bool ETagHasBeenSet() const { return m_eTagHasBeenSet; }
@@ -158,14 +166,17 @@ namespace Model
* contents of an object, not its metadata. The ETag may or may not be an MD5
* digest of the object data. Whether or not it is depends on how the object was
* created and how it is encrypted as described below:</p> <ul> <li> <p>Objects
- * created by the PUT Object, POST Object, or Copy operation, or through the AWS
- * Management Console, and are encrypted by SSE-S3 or plaintext, have ETags that
- * are an MD5 digest of their object data.</p> </li> <li> <p>Objects created by the
- * PUT Object, POST Object, or Copy operation, or through the AWS Management
- * Console, and are encrypted by SSE-C or SSE-KMS, have ETags that are not an MD5
- * digest of their object data.</p> </li> <li> <p>If an object is created by either
- * the Multipart Upload or Part Copy operation, the ETag is not an MD5 digest,
- * regardless of the method of encryption.</p> </li> </ul>
+ * created by the PUT Object, POST Object, or Copy operation, or through the Amazon
+ * Web Services Management Console, and are encrypted by SSE-S3 or plaintext, have
+ * ETags that are an MD5 digest of their object data.</p> </li> <li> <p>Objects
+ * created by the PUT Object, POST Object, or Copy operation, or through the Amazon
+ * Web Services Management Console, and are encrypted by SSE-C or SSE-KMS, have
+ * ETags that are not an MD5 digest of their object data.</p> </li> <li> <p>If an
+ * object is created by either the Multipart Upload or Part Copy operation, the
+ * ETag is not an MD5 digest, regardless of the method of encryption. If an object
+ * is larger than 16 MB, the Amazon Web Services Management Console will upload or
+ * copy that object as a Multipart Upload, and therefore the ETag will not be an
+ * MD5 digest.</p> </li> </ul>
*/
inline void SetETag(const Aws::String& value) { m_eTagHasBeenSet = true; m_eTag = value; }
@@ -174,14 +185,17 @@ namespace Model
* contents of an object, not its metadata. The ETag may or may not be an MD5
* digest of the object data. Whether or not it is depends on how the object was
* created and how it is encrypted as described below:</p> <ul> <li> <p>Objects
- * created by the PUT Object, POST Object, or Copy operation, or through the AWS
- * Management Console, and are encrypted by SSE-S3 or plaintext, have ETags that
- * are an MD5 digest of their object data.</p> </li> <li> <p>Objects created by the
- * PUT Object, POST Object, or Copy operation, or through the AWS Management
- * Console, and are encrypted by SSE-C or SSE-KMS, have ETags that are not an MD5
- * digest of their object data.</p> </li> <li> <p>If an object is created by either
- * the Multipart Upload or Part Copy operation, the ETag is not an MD5 digest,
- * regardless of the method of encryption.</p> </li> </ul>
+ * created by the PUT Object, POST Object, or Copy operation, or through the Amazon
+ * Web Services Management Console, and are encrypted by SSE-S3 or plaintext, have
+ * ETags that are an MD5 digest of their object data.</p> </li> <li> <p>Objects
+ * created by the PUT Object, POST Object, or Copy operation, or through the Amazon
+ * Web Services Management Console, and are encrypted by SSE-C or SSE-KMS, have
+ * ETags that are not an MD5 digest of their object data.</p> </li> <li> <p>If an
+ * object is created by either the Multipart Upload or Part Copy operation, the
+ * ETag is not an MD5 digest, regardless of the method of encryption. If an object
+ * is larger than 16 MB, the Amazon Web Services Management Console will upload or
+ * copy that object as a Multipart Upload, and therefore the ETag will not be an
+ * MD5 digest.</p> </li> </ul>
*/
inline void SetETag(Aws::String&& value) { m_eTagHasBeenSet = true; m_eTag = std::move(value); }
@@ -190,14 +204,17 @@ namespace Model
* contents of an object, not its metadata. The ETag may or may not be an MD5
* digest of the object data. Whether or not it is depends on how the object was
* created and how it is encrypted as described below:</p> <ul> <li> <p>Objects
- * created by the PUT Object, POST Object, or Copy operation, or through the AWS
- * Management Console, and are encrypted by SSE-S3 or plaintext, have ETags that
- * are an MD5 digest of their object data.</p> </li> <li> <p>Objects created by the
- * PUT Object, POST Object, or Copy operation, or through the AWS Management
- * Console, and are encrypted by SSE-C or SSE-KMS, have ETags that are not an MD5
- * digest of their object data.</p> </li> <li> <p>If an object is created by either
- * the Multipart Upload or Part Copy operation, the ETag is not an MD5 digest,
- * regardless of the method of encryption.</p> </li> </ul>
+ * created by the PUT Object, POST Object, or Copy operation, or through the Amazon
+ * Web Services Management Console, and are encrypted by SSE-S3 or plaintext, have
+ * ETags that are an MD5 digest of their object data.</p> </li> <li> <p>Objects
+ * created by the PUT Object, POST Object, or Copy operation, or through the Amazon
+ * Web Services Management Console, and are encrypted by SSE-C or SSE-KMS, have
+ * ETags that are not an MD5 digest of their object data.</p> </li> <li> <p>If an
+ * object is created by either the Multipart Upload or Part Copy operation, the
+ * ETag is not an MD5 digest, regardless of the method of encryption. If an object
+ * is larger than 16 MB, the Amazon Web Services Management Console will upload or
+ * copy that object as a Multipart Upload, and therefore the ETag will not be an
+ * MD5 digest.</p> </li> </ul>
*/
inline void SetETag(const char* value) { m_eTagHasBeenSet = true; m_eTag.assign(value); }
@@ -206,14 +223,17 @@ namespace Model
* contents of an object, not its metadata. The ETag may or may not be an MD5
* digest of the object data. Whether or not it is depends on how the object was
* created and how it is encrypted as described below:</p> <ul> <li> <p>Objects
- * created by the PUT Object, POST Object, or Copy operation, or through the AWS
- * Management Console, and are encrypted by SSE-S3 or plaintext, have ETags that
- * are an MD5 digest of their object data.</p> </li> <li> <p>Objects created by the
- * PUT Object, POST Object, or Copy operation, or through the AWS Management
- * Console, and are encrypted by SSE-C or SSE-KMS, have ETags that are not an MD5
- * digest of their object data.</p> </li> <li> <p>If an object is created by either
- * the Multipart Upload or Part Copy operation, the ETag is not an MD5 digest,
- * regardless of the method of encryption.</p> </li> </ul>
+ * created by the PUT Object, POST Object, or Copy operation, or through the Amazon
+ * Web Services Management Console, and are encrypted by SSE-S3 or plaintext, have
+ * ETags that are an MD5 digest of their object data.</p> </li> <li> <p>Objects
+ * created by the PUT Object, POST Object, or Copy operation, or through the Amazon
+ * Web Services Management Console, and are encrypted by SSE-C or SSE-KMS, have
+ * ETags that are not an MD5 digest of their object data.</p> </li> <li> <p>If an
+ * object is created by either the Multipart Upload or Part Copy operation, the
+ * ETag is not an MD5 digest, regardless of the method of encryption. If an object
+ * is larger than 16 MB, the Amazon Web Services Management Console will upload or
+ * copy that object as a Multipart Upload, and therefore the ETag will not be an
+ * MD5 digest.</p> </li> </ul>
*/
inline Object& WithETag(const Aws::String& value) { SetETag(value); return *this;}
@@ -222,14 +242,17 @@ namespace Model
* contents of an object, not its metadata. The ETag may or may not be an MD5
* digest of the object data. Whether or not it is depends on how the object was
* created and how it is encrypted as described below:</p> <ul> <li> <p>Objects
- * created by the PUT Object, POST Object, or Copy operation, or through the AWS
- * Management Console, and are encrypted by SSE-S3 or plaintext, have ETags that
- * are an MD5 digest of their object data.</p> </li> <li> <p>Objects created by the
- * PUT Object, POST Object, or Copy operation, or through the AWS Management
- * Console, and are encrypted by SSE-C or SSE-KMS, have ETags that are not an MD5
- * digest of their object data.</p> </li> <li> <p>If an object is created by either
- * the Multipart Upload or Part Copy operation, the ETag is not an MD5 digest,
- * regardless of the method of encryption.</p> </li> </ul>
+ * created by the PUT Object, POST Object, or Copy operation, or through the Amazon
+ * Web Services Management Console, and are encrypted by SSE-S3 or plaintext, have
+ * ETags that are an MD5 digest of their object data.</p> </li> <li> <p>Objects
+ * created by the PUT Object, POST Object, or Copy operation, or through the Amazon
+ * Web Services Management Console, and are encrypted by SSE-C or SSE-KMS, have
+ * ETags that are not an MD5 digest of their object data.</p> </li> <li> <p>If an
+ * object is created by either the Multipart Upload or Part Copy operation, the
+ * ETag is not an MD5 digest, regardless of the method of encryption. If an object
+ * is larger than 16 MB, the Amazon Web Services Management Console will upload or
+ * copy that object as a Multipart Upload, and therefore the ETag will not be an
+ * MD5 digest.</p> </li> </ul>
*/
inline Object& WithETag(Aws::String&& value) { SetETag(std::move(value)); return *this;}
@@ -238,19 +261,63 @@ namespace Model
* contents of an object, not its metadata. The ETag may or may not be an MD5
* digest of the object data. Whether or not it is depends on how the object was
* created and how it is encrypted as described below:</p> <ul> <li> <p>Objects
- * created by the PUT Object, POST Object, or Copy operation, or through the AWS
- * Management Console, and are encrypted by SSE-S3 or plaintext, have ETags that
- * are an MD5 digest of their object data.</p> </li> <li> <p>Objects created by the
- * PUT Object, POST Object, or Copy operation, or through the AWS Management
- * Console, and are encrypted by SSE-C or SSE-KMS, have ETags that are not an MD5
- * digest of their object data.</p> </li> <li> <p>If an object is created by either
- * the Multipart Upload or Part Copy operation, the ETag is not an MD5 digest,
- * regardless of the method of encryption.</p> </li> </ul>
+ * created by the PUT Object, POST Object, or Copy operation, or through the Amazon
+ * Web Services Management Console, and are encrypted by SSE-S3 or plaintext, have
+ * ETags that are an MD5 digest of their object data.</p> </li> <li> <p>Objects
+ * created by the PUT Object, POST Object, or Copy operation, or through the Amazon
+ * Web Services Management Console, and are encrypted by SSE-C or SSE-KMS, have
+ * ETags that are not an MD5 digest of their object data.</p> </li> <li> <p>If an
+ * object is created by either the Multipart Upload or Part Copy operation, the
+ * ETag is not an MD5 digest, regardless of the method of encryption. If an object
+ * is larger than 16 MB, the Amazon Web Services Management Console will upload or
+ * copy that object as a Multipart Upload, and therefore the ETag will not be an
+ * MD5 digest.</p> </li> </ul>
*/
inline Object& WithETag(const char* value) { SetETag(value); return *this;}
/**
+ * <p>The algorithm that was used to create a checksum of the object.</p>
+ */
+ inline const Aws::Vector<ChecksumAlgorithm>& GetChecksumAlgorithm() const{ return m_checksumAlgorithm; }
+
+ /**
+ * <p>The algorithm that was used to create a checksum of the object.</p>
+ */
+ inline bool ChecksumAlgorithmHasBeenSet() const { return m_checksumAlgorithmHasBeenSet; }
+
+ /**
+ * <p>The algorithm that was used to create a checksum of the object.</p>
+ */
+ inline void SetChecksumAlgorithm(const Aws::Vector<ChecksumAlgorithm>& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = value; }
+
+ /**
+ * <p>The algorithm that was used to create a checksum of the object.</p>
+ */
+ inline void SetChecksumAlgorithm(Aws::Vector<ChecksumAlgorithm>&& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = std::move(value); }
+
+ /**
+ * <p>The algorithm that was used to create a checksum of the object.</p>
+ */
+ inline Object& WithChecksumAlgorithm(const Aws::Vector<ChecksumAlgorithm>& value) { SetChecksumAlgorithm(value); return *this;}
+
+ /**
+ * <p>The algorithm that was used to create a checksum of the object.</p>
+ */
+ inline Object& WithChecksumAlgorithm(Aws::Vector<ChecksumAlgorithm>&& value) { SetChecksumAlgorithm(std::move(value)); return *this;}
+
+ /**
+ * <p>The algorithm that was used to create a checksum of the object.</p>
+ */
+ inline Object& AddChecksumAlgorithm(const ChecksumAlgorithm& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm.push_back(value); return *this; }
+
+ /**
+ * <p>The algorithm that was used to create a checksum of the object.</p>
+ */
+ inline Object& AddChecksumAlgorithm(ChecksumAlgorithm&& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm.push_back(std::move(value)); return *this; }
+
+
+ /**
* <p>Size in bytes of the object</p>
*/
inline long long GetSize() const{ return m_size; }
@@ -335,22 +402,25 @@ namespace Model
private:
Aws::String m_key;
- bool m_keyHasBeenSet;
+ bool m_keyHasBeenSet = false;
Aws::Utils::DateTime m_lastModified;
- bool m_lastModifiedHasBeenSet;
+ bool m_lastModifiedHasBeenSet = false;
Aws::String m_eTag;
- bool m_eTagHasBeenSet;
+ bool m_eTagHasBeenSet = false;
+
+ Aws::Vector<ChecksumAlgorithm> m_checksumAlgorithm;
+ bool m_checksumAlgorithmHasBeenSet = false;
long long m_size;
- bool m_sizeHasBeenSet;
+ bool m_sizeHasBeenSet = false;
ObjectStorageClass m_storageClass;
- bool m_storageClassHasBeenSet;
+ bool m_storageClassHasBeenSet = false;
Owner m_owner;
- bool m_ownerHasBeenSet;
+ bool m_ownerHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectAttributes.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectAttributes.h
new file mode 100644
index 0000000000..1fd094cba8
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectAttributes.h
@@ -0,0 +1,34 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#pragma once
+#include <aws/s3/S3_EXPORTS.h>
+#include <aws/core/utils/memory/stl/AWSString.h>
+
+namespace Aws
+{
+namespace S3
+{
+namespace Model
+{
+ enum class ObjectAttributes
+ {
+ NOT_SET,
+ ETag,
+ Checksum,
+ ObjectParts,
+ StorageClass,
+ ObjectSize
+ };
+
+namespace ObjectAttributesMapper
+{
+AWS_S3_API ObjectAttributes GetObjectAttributesForName(const Aws::String& name);
+
+AWS_S3_API Aws::String GetNameForObjectAttributes(ObjectAttributes value);
+} // namespace ObjectAttributesMapper
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectIdentifier.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectIdentifier.h
index 82e3c611da..26ab8081a9 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectIdentifier.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectIdentifier.h
@@ -28,14 +28,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ObjectIdentifier">AWS
* API Reference</a></p>
*/
- class AWS_S3_API ObjectIdentifier
+ class ObjectIdentifier
{
public:
- ObjectIdentifier();
- ObjectIdentifier(const Aws::Utils::Xml::XmlNode& xmlNode);
- ObjectIdentifier& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ObjectIdentifier();
+ AWS_S3_API ObjectIdentifier(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ObjectIdentifier& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -154,10 +154,10 @@ namespace Model
private:
Aws::String m_key;
- bool m_keyHasBeenSet;
+ bool m_keyHasBeenSet = false;
Aws::String m_versionId;
- bool m_versionIdHasBeenSet;
+ bool m_versionIdHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectLockConfiguration.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectLockConfiguration.h
index 441e475856..a17f87a820 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectLockConfiguration.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectLockConfiguration.h
@@ -29,14 +29,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ObjectLockConfiguration">AWS
* API Reference</a></p>
*/
- class AWS_S3_API ObjectLockConfiguration
+ class ObjectLockConfiguration
{
public:
- ObjectLockConfiguration();
- ObjectLockConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
- ObjectLockConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ObjectLockConfiguration();
+ AWS_S3_API ObjectLockConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ObjectLockConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -139,10 +139,10 @@ namespace Model
private:
ObjectLockEnabled m_objectLockEnabled;
- bool m_objectLockEnabledHasBeenSet;
+ bool m_objectLockEnabledHasBeenSet = false;
ObjectLockRule m_rule;
- bool m_ruleHasBeenSet;
+ bool m_ruleHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectLockLegalHold.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectLockLegalHold.h
index fdeba38dda..5d2bb9039c 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectLockLegalHold.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectLockLegalHold.h
@@ -23,54 +23,54 @@ namespace Model
{
/**
- * <p>A Legal Hold configuration for an object.</p><p><h3>See Also:</h3> <a
+ * <p>A legal hold configuration for an object.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ObjectLockLegalHold">AWS
* API Reference</a></p>
*/
- class AWS_S3_API ObjectLockLegalHold
+ class ObjectLockLegalHold
{
public:
- ObjectLockLegalHold();
- ObjectLockLegalHold(const Aws::Utils::Xml::XmlNode& xmlNode);
- ObjectLockLegalHold& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ObjectLockLegalHold();
+ AWS_S3_API ObjectLockLegalHold(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ObjectLockLegalHold& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
- * <p>Indicates whether the specified object has a Legal Hold in place.</p>
+ * <p>Indicates whether the specified object has a legal hold in place.</p>
*/
inline const ObjectLockLegalHoldStatus& GetStatus() const{ return m_status; }
/**
- * <p>Indicates whether the specified object has a Legal Hold in place.</p>
+ * <p>Indicates whether the specified object has a legal hold in place.</p>
*/
inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
/**
- * <p>Indicates whether the specified object has a Legal Hold in place.</p>
+ * <p>Indicates whether the specified object has a legal hold in place.</p>
*/
inline void SetStatus(const ObjectLockLegalHoldStatus& value) { m_statusHasBeenSet = true; m_status = value; }
/**
- * <p>Indicates whether the specified object has a Legal Hold in place.</p>
+ * <p>Indicates whether the specified object has a legal hold in place.</p>
*/
inline void SetStatus(ObjectLockLegalHoldStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); }
/**
- * <p>Indicates whether the specified object has a Legal Hold in place.</p>
+ * <p>Indicates whether the specified object has a legal hold in place.</p>
*/
inline ObjectLockLegalHold& WithStatus(const ObjectLockLegalHoldStatus& value) { SetStatus(value); return *this;}
/**
- * <p>Indicates whether the specified object has a Legal Hold in place.</p>
+ * <p>Indicates whether the specified object has a legal hold in place.</p>
*/
inline ObjectLockLegalHold& WithStatus(ObjectLockLegalHoldStatus&& value) { SetStatus(std::move(value)); return *this;}
private:
ObjectLockLegalHoldStatus m_status;
- bool m_statusHasBeenSet;
+ bool m_statusHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectLockRetention.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectLockRetention.h
index 26c60fdb78..caa01d58de 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectLockRetention.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectLockRetention.h
@@ -28,14 +28,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ObjectLockRetention">AWS
* API Reference</a></p>
*/
- class AWS_S3_API ObjectLockRetention
+ class ObjectLockRetention
{
public:
- ObjectLockRetention();
- ObjectLockRetention(const Aws::Utils::Xml::XmlNode& xmlNode);
- ObjectLockRetention& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ObjectLockRetention();
+ AWS_S3_API ObjectLockRetention(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ObjectLockRetention& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -102,10 +102,10 @@ namespace Model
private:
ObjectLockRetentionMode m_mode;
- bool m_modeHasBeenSet;
+ bool m_modeHasBeenSet = false;
Aws::Utils::DateTime m_retainUntilDate;
- bool m_retainUntilDateHasBeenSet;
+ bool m_retainUntilDateHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectLockRule.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectLockRule.h
index e373cc3dba..0eda426212 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectLockRule.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectLockRule.h
@@ -27,14 +27,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ObjectLockRule">AWS
* API Reference</a></p>
*/
- class AWS_S3_API ObjectLockRule
+ class ObjectLockRule
{
public:
- ObjectLockRule();
- ObjectLockRule(const Aws::Utils::Xml::XmlNode& xmlNode);
- ObjectLockRule& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ObjectLockRule();
+ AWS_S3_API ObjectLockRule(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ObjectLockRule& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -94,7 +94,7 @@ namespace Model
private:
DefaultRetention m_defaultRetention;
- bool m_defaultRetentionHasBeenSet;
+ bool m_defaultRetentionHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectOwnership.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectOwnership.h
index 06ba5f9daa..08957d956e 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectOwnership.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectOwnership.h
@@ -17,7 +17,8 @@ namespace Model
{
NOT_SET,
BucketOwnerPreferred,
- ObjectWriter
+ ObjectWriter,
+ BucketOwnerEnforced
};
namespace ObjectOwnershipMapper
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectPart.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectPart.h
new file mode 100644
index 0000000000..cb913c6b43
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectPart.h
@@ -0,0 +1,433 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#pragma once
+#include <aws/s3/S3_EXPORTS.h>
+#include <aws/core/utils/memory/stl/AWSString.h>
+#include <utility>
+
+namespace Aws
+{
+namespace Utils
+{
+namespace Xml
+{
+ class XmlNode;
+} // namespace Xml
+} // namespace Utils
+namespace S3
+{
+namespace Model
+{
+
+ /**
+ * <p>A container for elements related to an individual part.</p><p><h3>See
+ * Also:</h3> <a
+ * href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ObjectPart">AWS API
+ * Reference</a></p>
+ */
+ class ObjectPart
+ {
+ public:
+ AWS_S3_API ObjectPart();
+ AWS_S3_API ObjectPart(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ObjectPart& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+
+
+ /**
+ * <p>The part number identifying the part. This value is a positive integer
+ * between 1 and 10,000.</p>
+ */
+ inline int GetPartNumber() const{ return m_partNumber; }
+
+ /**
+ * <p>The part number identifying the part. This value is a positive integer
+ * between 1 and 10,000.</p>
+ */
+ inline bool PartNumberHasBeenSet() const { return m_partNumberHasBeenSet; }
+
+ /**
+ * <p>The part number identifying the part. This value is a positive integer
+ * between 1 and 10,000.</p>
+ */
+ inline void SetPartNumber(int value) { m_partNumberHasBeenSet = true; m_partNumber = value; }
+
+ /**
+ * <p>The part number identifying the part. This value is a positive integer
+ * between 1 and 10,000.</p>
+ */
+ inline ObjectPart& WithPartNumber(int value) { SetPartNumber(value); return *this;}
+
+
+ /**
+ * <p>The size of the uploaded part in bytes.</p>
+ */
+ inline long long GetSize() const{ return m_size; }
+
+ /**
+ * <p>The size of the uploaded part in bytes.</p>
+ */
+ inline bool SizeHasBeenSet() const { return m_sizeHasBeenSet; }
+
+ /**
+ * <p>The size of the uploaded part in bytes.</p>
+ */
+ inline void SetSize(long long value) { m_sizeHasBeenSet = true; m_size = value; }
+
+ /**
+ * <p>The size of the uploaded part in bytes.</p>
+ */
+ inline ObjectPart& WithSize(long long value) { SetSize(value); return *this;}
+
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumCRC32() const{ return m_checksumCRC32; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool ChecksumCRC32HasBeenSet() const { return m_checksumCRC32HasBeenSet; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(const Aws::String& value) { m_checksumCRC32HasBeenSet = true; m_checksumCRC32 = value; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(Aws::String&& value) { m_checksumCRC32HasBeenSet = true; m_checksumCRC32 = std::move(value); }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(const char* value) { m_checksumCRC32HasBeenSet = true; m_checksumCRC32.assign(value); }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline ObjectPart& WithChecksumCRC32(const Aws::String& value) { SetChecksumCRC32(value); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline ObjectPart& WithChecksumCRC32(Aws::String&& value) { SetChecksumCRC32(std::move(value)); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline ObjectPart& WithChecksumCRC32(const char* value) { SetChecksumCRC32(value); return *this;}
+
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumCRC32C() const{ return m_checksumCRC32C; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool ChecksumCRC32CHasBeenSet() const { return m_checksumCRC32CHasBeenSet; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(const Aws::String& value) { m_checksumCRC32CHasBeenSet = true; m_checksumCRC32C = value; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(Aws::String&& value) { m_checksumCRC32CHasBeenSet = true; m_checksumCRC32C = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(const char* value) { m_checksumCRC32CHasBeenSet = true; m_checksumCRC32C.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline ObjectPart& WithChecksumCRC32C(const Aws::String& value) { SetChecksumCRC32C(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline ObjectPart& WithChecksumCRC32C(Aws::String&& value) { SetChecksumCRC32C(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline ObjectPart& WithChecksumCRC32C(const char* value) { SetChecksumCRC32C(value); return *this;}
+
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumSHA1() const{ return m_checksumSHA1; }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool ChecksumSHA1HasBeenSet() const { return m_checksumSHA1HasBeenSet; }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(const Aws::String& value) { m_checksumSHA1HasBeenSet = true; m_checksumSHA1 = value; }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(Aws::String&& value) { m_checksumSHA1HasBeenSet = true; m_checksumSHA1 = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(const char* value) { m_checksumSHA1HasBeenSet = true; m_checksumSHA1.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline ObjectPart& WithChecksumSHA1(const Aws::String& value) { SetChecksumSHA1(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline ObjectPart& WithChecksumSHA1(Aws::String&& value) { SetChecksumSHA1(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline ObjectPart& WithChecksumSHA1(const char* value) { SetChecksumSHA1(value); return *this;}
+
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumSHA256() const{ return m_checksumSHA256; }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool ChecksumSHA256HasBeenSet() const { return m_checksumSHA256HasBeenSet; }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(const Aws::String& value) { m_checksumSHA256HasBeenSet = true; m_checksumSHA256 = value; }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(Aws::String&& value) { m_checksumSHA256HasBeenSet = true; m_checksumSHA256 = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(const char* value) { m_checksumSHA256HasBeenSet = true; m_checksumSHA256.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline ObjectPart& WithChecksumSHA256(const Aws::String& value) { SetChecksumSHA256(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline ObjectPart& WithChecksumSHA256(Aws::String&& value) { SetChecksumSHA256(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline ObjectPart& WithChecksumSHA256(const char* value) { SetChecksumSHA256(value); return *this;}
+
+ private:
+
+ int m_partNumber;
+ bool m_partNumberHasBeenSet = false;
+
+ long long m_size;
+ bool m_sizeHasBeenSet = false;
+
+ Aws::String m_checksumCRC32;
+ bool m_checksumCRC32HasBeenSet = false;
+
+ Aws::String m_checksumCRC32C;
+ bool m_checksumCRC32CHasBeenSet = false;
+
+ Aws::String m_checksumSHA1;
+ bool m_checksumSHA1HasBeenSet = false;
+
+ Aws::String m_checksumSHA256;
+ bool m_checksumSHA256HasBeenSet = false;
+ };
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectStorageClass.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectStorageClass.h
index 814e5de398..6f2d4dacc7 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectStorageClass.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectStorageClass.h
@@ -23,7 +23,8 @@ namespace Model
ONEZONE_IA,
INTELLIGENT_TIERING,
DEEP_ARCHIVE,
- OUTPOSTS
+ OUTPOSTS,
+ GLACIER_IR
};
namespace ObjectStorageClassMapper
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectVersion.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectVersion.h
index d084d24b1e..47ddbe008d 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectVersion.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ObjectVersion.h
@@ -6,9 +6,11 @@
#pragma once
#include <aws/s3/S3_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
+#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/s3/model/ObjectVersionStorageClass.h>
#include <aws/core/utils/DateTime.h>
#include <aws/s3/model/Owner.h>
+#include <aws/s3/model/ChecksumAlgorithm.h>
#include <utility>
namespace Aws
@@ -30,14 +32,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ObjectVersion">AWS
* API Reference</a></p>
*/
- class AWS_S3_API ObjectVersion
+ class ObjectVersion
{
public:
- ObjectVersion();
- ObjectVersion(const Aws::Utils::Xml::XmlNode& xmlNode);
- ObjectVersion& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ObjectVersion();
+ AWS_S3_API ObjectVersion(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ObjectVersion& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -82,6 +84,47 @@ namespace Model
/**
+ * <p>The algorithm that was used to create a checksum of the object.</p>
+ */
+ inline const Aws::Vector<ChecksumAlgorithm>& GetChecksumAlgorithm() const{ return m_checksumAlgorithm; }
+
+ /**
+ * <p>The algorithm that was used to create a checksum of the object.</p>
+ */
+ inline bool ChecksumAlgorithmHasBeenSet() const { return m_checksumAlgorithmHasBeenSet; }
+
+ /**
+ * <p>The algorithm that was used to create a checksum of the object.</p>
+ */
+ inline void SetChecksumAlgorithm(const Aws::Vector<ChecksumAlgorithm>& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = value; }
+
+ /**
+ * <p>The algorithm that was used to create a checksum of the object.</p>
+ */
+ inline void SetChecksumAlgorithm(Aws::Vector<ChecksumAlgorithm>&& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = std::move(value); }
+
+ /**
+ * <p>The algorithm that was used to create a checksum of the object.</p>
+ */
+ inline ObjectVersion& WithChecksumAlgorithm(const Aws::Vector<ChecksumAlgorithm>& value) { SetChecksumAlgorithm(value); return *this;}
+
+ /**
+ * <p>The algorithm that was used to create a checksum of the object.</p>
+ */
+ inline ObjectVersion& WithChecksumAlgorithm(Aws::Vector<ChecksumAlgorithm>&& value) { SetChecksumAlgorithm(std::move(value)); return *this;}
+
+ /**
+ * <p>The algorithm that was used to create a checksum of the object.</p>
+ */
+ inline ObjectVersion& AddChecksumAlgorithm(const ChecksumAlgorithm& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm.push_back(value); return *this; }
+
+ /**
+ * <p>The algorithm that was used to create a checksum of the object.</p>
+ */
+ inline ObjectVersion& AddChecksumAlgorithm(ChecksumAlgorithm&& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm.push_back(std::move(value)); return *this; }
+
+
+ /**
* <p>Size in bytes of the object.</p>
*/
inline long long GetSize() const{ return m_size; }
@@ -304,28 +347,31 @@ namespace Model
private:
Aws::String m_eTag;
- bool m_eTagHasBeenSet;
+ bool m_eTagHasBeenSet = false;
+
+ Aws::Vector<ChecksumAlgorithm> m_checksumAlgorithm;
+ bool m_checksumAlgorithmHasBeenSet = false;
long long m_size;
- bool m_sizeHasBeenSet;
+ bool m_sizeHasBeenSet = false;
ObjectVersionStorageClass m_storageClass;
- bool m_storageClassHasBeenSet;
+ bool m_storageClassHasBeenSet = false;
Aws::String m_key;
- bool m_keyHasBeenSet;
+ bool m_keyHasBeenSet = false;
Aws::String m_versionId;
- bool m_versionIdHasBeenSet;
+ bool m_versionIdHasBeenSet = false;
bool m_isLatest;
- bool m_isLatestHasBeenSet;
+ bool m_isLatestHasBeenSet = false;
Aws::Utils::DateTime m_lastModified;
- bool m_lastModifiedHasBeenSet;
+ bool m_lastModifiedHasBeenSet = false;
Owner m_owner;
- bool m_ownerHasBeenSet;
+ bool m_ownerHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/OutputLocation.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/OutputLocation.h
index 4240773137..a716b1b0d0 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/OutputLocation.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/OutputLocation.h
@@ -28,14 +28,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/OutputLocation">AWS
* API Reference</a></p>
*/
- class AWS_S3_API OutputLocation
+ class OutputLocation
{
public:
- OutputLocation();
- OutputLocation(const Aws::Utils::Xml::XmlNode& xmlNode);
- OutputLocation& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API OutputLocation();
+ AWS_S3_API OutputLocation(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API OutputLocation& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -77,7 +77,7 @@ namespace Model
private:
S3Location m_s3;
- bool m_s3HasBeenSet;
+ bool m_s3HasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/OutputSerialization.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/OutputSerialization.h
index 92331d902c..e5af3e64fc 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/OutputSerialization.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/OutputSerialization.h
@@ -29,14 +29,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/OutputSerialization">AWS
* API Reference</a></p>
*/
- class AWS_S3_API OutputSerialization
+ class OutputSerialization
{
public:
- OutputSerialization();
- OutputSerialization(const Aws::Utils::Xml::XmlNode& xmlNode);
- OutputSerialization& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API OutputSerialization();
+ AWS_S3_API OutputSerialization(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API OutputSerialization& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -103,10 +103,10 @@ namespace Model
private:
CSVOutput m_cSV;
- bool m_cSVHasBeenSet;
+ bool m_cSVHasBeenSet = false;
JSONOutput m_jSON;
- bool m_jSONHasBeenSet;
+ bool m_jSONHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Owner.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Owner.h
index 4f3f5d6aaa..8dd45ff6d1 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Owner.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Owner.h
@@ -27,14 +27,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/Owner">AWS API
* Reference</a></p>
*/
- class AWS_S3_API Owner
+ class Owner
{
public:
- Owner();
- Owner(const Aws::Utils::Xml::XmlNode& xmlNode);
- Owner& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Owner();
+ AWS_S3_API Owner(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Owner& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -121,10 +121,10 @@ namespace Model
private:
Aws::String m_displayName;
- bool m_displayNameHasBeenSet;
+ bool m_displayNameHasBeenSet = false;
Aws::String m_iD;
- bool m_iDHasBeenSet;
+ bool m_iDHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/OwnershipControls.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/OwnershipControls.h
index a0d1a3542f..0585d8db91 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/OwnershipControls.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/OwnershipControls.h
@@ -29,14 +29,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/OwnershipControls">AWS
* API Reference</a></p>
*/
- class AWS_S3_API OwnershipControls
+ class OwnershipControls
{
public:
- OwnershipControls();
- OwnershipControls(const Aws::Utils::Xml::XmlNode& xmlNode);
- OwnershipControls& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API OwnershipControls();
+ AWS_S3_API OwnershipControls(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API OwnershipControls& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -82,7 +82,7 @@ namespace Model
private:
Aws::Vector<OwnershipControlsRule> m_rules;
- bool m_rulesHasBeenSet;
+ bool m_rulesHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/OwnershipControlsRule.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/OwnershipControlsRule.h
index 2e512c810c..bd11bbe5f1 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/OwnershipControlsRule.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/OwnershipControlsRule.h
@@ -28,14 +28,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/OwnershipControlsRule">AWS
* API Reference</a></p>
*/
- class AWS_S3_API OwnershipControlsRule
+ class OwnershipControlsRule
{
public:
- OwnershipControlsRule();
- OwnershipControlsRule(const Aws::Utils::Xml::XmlNode& xmlNode);
- OwnershipControlsRule& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API OwnershipControlsRule();
+ AWS_S3_API OwnershipControlsRule(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API OwnershipControlsRule& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
@@ -59,7 +59,7 @@ namespace Model
private:
ObjectOwnership m_objectOwnership;
- bool m_objectOwnershipHasBeenSet;
+ bool m_objectOwnershipHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ParquetInput.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ParquetInput.h
index 3bc15a8481..8cc0df422b 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ParquetInput.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ParquetInput.h
@@ -25,14 +25,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ParquetInput">AWS API
* Reference</a></p>
*/
- class AWS_S3_API ParquetInput
+ class ParquetInput
{
public:
- ParquetInput();
- ParquetInput(const Aws::Utils::Xml::XmlNode& xmlNode);
- ParquetInput& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ParquetInput();
+ AWS_S3_API ParquetInput(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ParquetInput& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
};
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Part.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Part.h
index 6b83d534f1..b3a96fc351 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Part.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Part.h
@@ -28,14 +28,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/Part">AWS API
* Reference</a></p>
*/
- class AWS_S3_API Part
+ class Part
{
public:
- Part();
- Part(const Aws::Utils::Xml::XmlNode& xmlNode);
- Part& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Part();
+ AWS_S3_API Part(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Part& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -155,19 +155,355 @@ namespace Model
*/
inline Part& WithSize(long long value) { SetSize(value); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumCRC32() const{ return m_checksumCRC32; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool ChecksumCRC32HasBeenSet() const { return m_checksumCRC32HasBeenSet; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(const Aws::String& value) { m_checksumCRC32HasBeenSet = true; m_checksumCRC32 = value; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(Aws::String&& value) { m_checksumCRC32HasBeenSet = true; m_checksumCRC32 = std::move(value); }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(const char* value) { m_checksumCRC32HasBeenSet = true; m_checksumCRC32.assign(value); }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline Part& WithChecksumCRC32(const Aws::String& value) { SetChecksumCRC32(value); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline Part& WithChecksumCRC32(Aws::String&& value) { SetChecksumCRC32(std::move(value)); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline Part& WithChecksumCRC32(const char* value) { SetChecksumCRC32(value); return *this;}
+
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumCRC32C() const{ return m_checksumCRC32C; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool ChecksumCRC32CHasBeenSet() const { return m_checksumCRC32CHasBeenSet; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(const Aws::String& value) { m_checksumCRC32CHasBeenSet = true; m_checksumCRC32C = value; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(Aws::String&& value) { m_checksumCRC32CHasBeenSet = true; m_checksumCRC32C = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(const char* value) { m_checksumCRC32CHasBeenSet = true; m_checksumCRC32C.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline Part& WithChecksumCRC32C(const Aws::String& value) { SetChecksumCRC32C(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline Part& WithChecksumCRC32C(Aws::String&& value) { SetChecksumCRC32C(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline Part& WithChecksumCRC32C(const char* value) { SetChecksumCRC32C(value); return *this;}
+
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumSHA1() const{ return m_checksumSHA1; }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool ChecksumSHA1HasBeenSet() const { return m_checksumSHA1HasBeenSet; }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(const Aws::String& value) { m_checksumSHA1HasBeenSet = true; m_checksumSHA1 = value; }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(Aws::String&& value) { m_checksumSHA1HasBeenSet = true; m_checksumSHA1 = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(const char* value) { m_checksumSHA1HasBeenSet = true; m_checksumSHA1.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline Part& WithChecksumSHA1(const Aws::String& value) { SetChecksumSHA1(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline Part& WithChecksumSHA1(Aws::String&& value) { SetChecksumSHA1(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline Part& WithChecksumSHA1(const char* value) { SetChecksumSHA1(value); return *this;}
+
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumSHA256() const{ return m_checksumSHA256; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool ChecksumSHA256HasBeenSet() const { return m_checksumSHA256HasBeenSet; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(const Aws::String& value) { m_checksumSHA256HasBeenSet = true; m_checksumSHA256 = value; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(Aws::String&& value) { m_checksumSHA256HasBeenSet = true; m_checksumSHA256 = std::move(value); }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(const char* value) { m_checksumSHA256HasBeenSet = true; m_checksumSHA256.assign(value); }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline Part& WithChecksumSHA256(const Aws::String& value) { SetChecksumSHA256(value); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline Part& WithChecksumSHA256(Aws::String&& value) { SetChecksumSHA256(std::move(value)); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline Part& WithChecksumSHA256(const char* value) { SetChecksumSHA256(value); return *this;}
+
private:
int m_partNumber;
- bool m_partNumberHasBeenSet;
+ bool m_partNumberHasBeenSet = false;
Aws::Utils::DateTime m_lastModified;
- bool m_lastModifiedHasBeenSet;
+ bool m_lastModifiedHasBeenSet = false;
Aws::String m_eTag;
- bool m_eTagHasBeenSet;
+ bool m_eTagHasBeenSet = false;
long long m_size;
- bool m_sizeHasBeenSet;
+ bool m_sizeHasBeenSet = false;
+
+ Aws::String m_checksumCRC32;
+ bool m_checksumCRC32HasBeenSet = false;
+
+ Aws::String m_checksumCRC32C;
+ bool m_checksumCRC32CHasBeenSet = false;
+
+ Aws::String m_checksumSHA1;
+ bool m_checksumSHA1HasBeenSet = false;
+
+ Aws::String m_checksumSHA256;
+ bool m_checksumSHA256HasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PolicyStatus.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PolicyStatus.h
index cd0cfd393b..bf90bc0db7 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PolicyStatus.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PolicyStatus.h
@@ -25,14 +25,14 @@ namespace Model
* <a href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PolicyStatus">AWS
* API Reference</a></p>
*/
- class AWS_S3_API PolicyStatus
+ class PolicyStatus
{
public:
- PolicyStatus();
- PolicyStatus(const Aws::Utils::Xml::XmlNode& xmlNode);
- PolicyStatus& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API PolicyStatus();
+ AWS_S3_API PolicyStatus(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API PolicyStatus& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -66,7 +66,7 @@ namespace Model
private:
bool m_isPublic;
- bool m_isPublicHasBeenSet;
+ bool m_isPublicHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Progress.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Progress.h
index a188e5b9c7..8279bf50bd 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Progress.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Progress.h
@@ -26,14 +26,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/Progress">AWS API
* Reference</a></p>
*/
- class AWS_S3_API Progress
+ class Progress
{
public:
- Progress();
- Progress(const Aws::Utils::Xml::XmlNode& xmlNode);
- Progress& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Progress();
+ AWS_S3_API Progress(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Progress& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -101,13 +101,13 @@ namespace Model
private:
long long m_bytesScanned;
- bool m_bytesScannedHasBeenSet;
+ bool m_bytesScannedHasBeenSet = false;
long long m_bytesProcessed;
- bool m_bytesProcessedHasBeenSet;
+ bool m_bytesProcessedHasBeenSet = false;
long long m_bytesReturned;
- bool m_bytesReturnedHasBeenSet;
+ bool m_bytesReturnedHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ProgressEvent.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ProgressEvent.h
index 9b3b8edf85..c7a317a260 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ProgressEvent.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ProgressEvent.h
@@ -28,14 +28,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ProgressEvent">AWS
* API Reference</a></p>
*/
- class AWS_S3_API ProgressEvent
+ class ProgressEvent
{
public:
- ProgressEvent();
- ProgressEvent(const Aws::Utils::Xml::XmlNode& xmlNode);
- ProgressEvent& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ProgressEvent();
+ AWS_S3_API ProgressEvent(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ProgressEvent& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -71,7 +71,7 @@ namespace Model
private:
Progress m_details;
- bool m_detailsHasBeenSet;
+ bool m_detailsHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PublicAccessBlockConfiguration.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PublicAccessBlockConfiguration.h
index b78baafaf4..b22aba130d 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PublicAccessBlockConfiguration.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PublicAccessBlockConfiguration.h
@@ -30,21 +30,21 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PublicAccessBlockConfiguration">AWS
* API Reference</a></p>
*/
- class AWS_S3_API PublicAccessBlockConfiguration
+ class PublicAccessBlockConfiguration
{
public:
- PublicAccessBlockConfiguration();
- PublicAccessBlockConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
- PublicAccessBlockConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API PublicAccessBlockConfiguration();
+ AWS_S3_API PublicAccessBlockConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API PublicAccessBlockConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
* <p>Specifies whether Amazon S3 should block public access control lists (ACLs)
* for this bucket and objects in this bucket. Setting this element to
- * <code>TRUE</code> causes the following behavior:</p> <ul> <li> <p>PUT Bucket acl
- * and PUT Object acl calls fail if the specified ACL is public.</p> </li> <li>
+ * <code>TRUE</code> causes the following behavior:</p> <ul> <li> <p>PUT Bucket ACL
+ * and PUT Object ACL calls fail if the specified ACL is public.</p> </li> <li>
* <p>PUT Object calls fail if the request includes a public ACL.</p> </li> <li>
* <p>PUT Bucket calls fail if the request includes a public ACL.</p> </li> </ul>
* <p>Enabling this setting doesn't affect existing policies or ACLs.</p>
@@ -54,8 +54,8 @@ namespace Model
/**
* <p>Specifies whether Amazon S3 should block public access control lists (ACLs)
* for this bucket and objects in this bucket. Setting this element to
- * <code>TRUE</code> causes the following behavior:</p> <ul> <li> <p>PUT Bucket acl
- * and PUT Object acl calls fail if the specified ACL is public.</p> </li> <li>
+ * <code>TRUE</code> causes the following behavior:</p> <ul> <li> <p>PUT Bucket ACL
+ * and PUT Object ACL calls fail if the specified ACL is public.</p> </li> <li>
* <p>PUT Object calls fail if the request includes a public ACL.</p> </li> <li>
* <p>PUT Bucket calls fail if the request includes a public ACL.</p> </li> </ul>
* <p>Enabling this setting doesn't affect existing policies or ACLs.</p>
@@ -65,8 +65,8 @@ namespace Model
/**
* <p>Specifies whether Amazon S3 should block public access control lists (ACLs)
* for this bucket and objects in this bucket. Setting this element to
- * <code>TRUE</code> causes the following behavior:</p> <ul> <li> <p>PUT Bucket acl
- * and PUT Object acl calls fail if the specified ACL is public.</p> </li> <li>
+ * <code>TRUE</code> causes the following behavior:</p> <ul> <li> <p>PUT Bucket ACL
+ * and PUT Object ACL calls fail if the specified ACL is public.</p> </li> <li>
* <p>PUT Object calls fail if the request includes a public ACL.</p> </li> <li>
* <p>PUT Bucket calls fail if the request includes a public ACL.</p> </li> </ul>
* <p>Enabling this setting doesn't affect existing policies or ACLs.</p>
@@ -76,8 +76,8 @@ namespace Model
/**
* <p>Specifies whether Amazon S3 should block public access control lists (ACLs)
* for this bucket and objects in this bucket. Setting this element to
- * <code>TRUE</code> causes the following behavior:</p> <ul> <li> <p>PUT Bucket acl
- * and PUT Object acl calls fail if the specified ACL is public.</p> </li> <li>
+ * <code>TRUE</code> causes the following behavior:</p> <ul> <li> <p>PUT Bucket ACL
+ * and PUT Object ACL calls fail if the specified ACL is public.</p> </li> <li>
* <p>PUT Object calls fail if the request includes a public ACL.</p> </li> <li>
* <p>PUT Bucket calls fail if the request includes a public ACL.</p> </li> </ul>
* <p>Enabling this setting doesn't affect existing policies or ACLs.</p>
@@ -158,60 +158,60 @@ namespace Model
/**
* <p>Specifies whether Amazon S3 should restrict public bucket policies for this
* bucket. Setting this element to <code>TRUE</code> restricts access to this
- * bucket to only AWS service principals and authorized users within this account
- * if the bucket has a public policy.</p> <p>Enabling this setting doesn't affect
- * previously stored bucket policies, except that public and cross-account access
- * within any public bucket policy, including non-public delegation to specific
- * accounts, is blocked.</p>
+ * bucket to only Amazon Web Service principals and authorized users within this
+ * account if the bucket has a public policy.</p> <p>Enabling this setting doesn't
+ * affect previously stored bucket policies, except that public and cross-account
+ * access within any public bucket policy, including non-public delegation to
+ * specific accounts, is blocked.</p>
*/
inline bool GetRestrictPublicBuckets() const{ return m_restrictPublicBuckets; }
/**
* <p>Specifies whether Amazon S3 should restrict public bucket policies for this
* bucket. Setting this element to <code>TRUE</code> restricts access to this
- * bucket to only AWS service principals and authorized users within this account
- * if the bucket has a public policy.</p> <p>Enabling this setting doesn't affect
- * previously stored bucket policies, except that public and cross-account access
- * within any public bucket policy, including non-public delegation to specific
- * accounts, is blocked.</p>
+ * bucket to only Amazon Web Service principals and authorized users within this
+ * account if the bucket has a public policy.</p> <p>Enabling this setting doesn't
+ * affect previously stored bucket policies, except that public and cross-account
+ * access within any public bucket policy, including non-public delegation to
+ * specific accounts, is blocked.</p>
*/
inline bool RestrictPublicBucketsHasBeenSet() const { return m_restrictPublicBucketsHasBeenSet; }
/**
* <p>Specifies whether Amazon S3 should restrict public bucket policies for this
* bucket. Setting this element to <code>TRUE</code> restricts access to this
- * bucket to only AWS service principals and authorized users within this account
- * if the bucket has a public policy.</p> <p>Enabling this setting doesn't affect
- * previously stored bucket policies, except that public and cross-account access
- * within any public bucket policy, including non-public delegation to specific
- * accounts, is blocked.</p>
+ * bucket to only Amazon Web Service principals and authorized users within this
+ * account if the bucket has a public policy.</p> <p>Enabling this setting doesn't
+ * affect previously stored bucket policies, except that public and cross-account
+ * access within any public bucket policy, including non-public delegation to
+ * specific accounts, is blocked.</p>
*/
inline void SetRestrictPublicBuckets(bool value) { m_restrictPublicBucketsHasBeenSet = true; m_restrictPublicBuckets = value; }
/**
* <p>Specifies whether Amazon S3 should restrict public bucket policies for this
* bucket. Setting this element to <code>TRUE</code> restricts access to this
- * bucket to only AWS service principals and authorized users within this account
- * if the bucket has a public policy.</p> <p>Enabling this setting doesn't affect
- * previously stored bucket policies, except that public and cross-account access
- * within any public bucket policy, including non-public delegation to specific
- * accounts, is blocked.</p>
+ * bucket to only Amazon Web Service principals and authorized users within this
+ * account if the bucket has a public policy.</p> <p>Enabling this setting doesn't
+ * affect previously stored bucket policies, except that public and cross-account
+ * access within any public bucket policy, including non-public delegation to
+ * specific accounts, is blocked.</p>
*/
inline PublicAccessBlockConfiguration& WithRestrictPublicBuckets(bool value) { SetRestrictPublicBuckets(value); return *this;}
private:
bool m_blockPublicAcls;
- bool m_blockPublicAclsHasBeenSet;
+ bool m_blockPublicAclsHasBeenSet = false;
bool m_ignorePublicAcls;
- bool m_ignorePublicAclsHasBeenSet;
+ bool m_ignorePublicAclsHasBeenSet = false;
bool m_blockPublicPolicy;
- bool m_blockPublicPolicyHasBeenSet;
+ bool m_blockPublicPolicyHasBeenSet = false;
bool m_restrictPublicBuckets;
- bool m_restrictPublicBucketsHasBeenSet;
+ bool m_restrictPublicBucketsHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketAccelerateConfigurationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketAccelerateConfigurationRequest.h
index f2c3b36790..e880387fd6 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketAccelerateConfigurationRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketAccelerateConfigurationRequest.h
@@ -8,6 +8,7 @@
#include <aws/s3/S3Request.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/s3/model/AccelerateConfiguration.h>
+#include <aws/s3/model/ChecksumAlgorithm.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
#include <utility>
@@ -24,10 +25,10 @@ namespace Model
/**
*/
- class AWS_S3_API PutBucketAccelerateConfigurationRequest : public S3Request
+ class PutBucketAccelerateConfigurationRequest : public S3Request
{
public:
- PutBucketAccelerateConfigurationRequest();
+ AWS_S3_API PutBucketAccelerateConfigurationRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -35,12 +36,18 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "PutBucketAccelerateConfiguration"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::String GetChecksumAlgorithmName() const override;
+
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the bucket for which the accelerate configuration is set.</p>
@@ -116,61 +123,146 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketAccelerateConfigurationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketAccelerateConfigurationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketAccelerateConfigurationRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline const ChecksumAlgorithm& GetChecksumAlgorithm() const{ return m_checksumAlgorithm; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline bool ChecksumAlgorithmHasBeenSet() const { return m_checksumAlgorithmHasBeenSet; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(const ChecksumAlgorithm& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = value; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(ChecksumAlgorithm&& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = std::move(value); }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline PutBucketAccelerateConfigurationRequest& WithChecksumAlgorithm(const ChecksumAlgorithm& value) { SetChecksumAlgorithm(value); return *this;}
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline PutBucketAccelerateConfigurationRequest& WithChecksumAlgorithm(ChecksumAlgorithm&& value) { SetChecksumAlgorithm(std::move(value)); return *this;}
+
+
inline const Aws::Map<Aws::String, Aws::String>& GetCustomizedAccessLogTag() const{ return m_customizedAccessLogTag; }
@@ -213,16 +305,19 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
AccelerateConfiguration m_accelerateConfiguration;
- bool m_accelerateConfigurationHasBeenSet;
+ bool m_accelerateConfigurationHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
+
+ ChecksumAlgorithm m_checksumAlgorithm;
+ bool m_checksumAlgorithmHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketAclRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketAclRequest.h
index 86c5cc7d51..5d7dacb7b2 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketAclRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketAclRequest.h
@@ -9,6 +9,7 @@
#include <aws/s3/model/BucketCannedACL.h>
#include <aws/s3/model/AccessControlPolicy.h>
#include <aws/core/utils/memory/stl/AWSString.h>
+#include <aws/s3/model/ChecksumAlgorithm.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
#include <utility>
@@ -25,10 +26,10 @@ namespace Model
/**
*/
- class AWS_S3_API PutBucketAclRequest : public S3Request
+ class PutBucketAclRequest : public S3Request
{
public:
- PutBucketAclRequest();
+ AWS_S3_API PutBucketAclRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -36,14 +37,18 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "PutBucketAcl"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
- inline bool ShouldComputeContentMd5() const override { return true; }
+ AWS_S3_API Aws::String GetChecksumAlgorithmName() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The canned ACL to apply to the bucket.</p>
@@ -159,8 +164,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, go to <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864.</a> </p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline const Aws::String& GetContentMD5() const{ return m_contentMD5; }
@@ -169,8 +174,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, go to <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864.</a> </p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline bool ContentMD5HasBeenSet() const { return m_contentMD5HasBeenSet; }
@@ -179,8 +184,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, go to <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864.</a> </p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline void SetContentMD5(const Aws::String& value) { m_contentMD5HasBeenSet = true; m_contentMD5 = value; }
@@ -189,8 +194,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, go to <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864.</a> </p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline void SetContentMD5(Aws::String&& value) { m_contentMD5HasBeenSet = true; m_contentMD5 = std::move(value); }
@@ -199,8 +204,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, go to <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864.</a> </p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline void SetContentMD5(const char* value) { m_contentMD5HasBeenSet = true; m_contentMD5.assign(value); }
@@ -209,8 +214,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, go to <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864.</a> </p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline PutBucketAclRequest& WithContentMD5(const Aws::String& value) { SetContentMD5(value); return *this;}
@@ -219,8 +224,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, go to <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864.</a> </p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline PutBucketAclRequest& WithContentMD5(Aws::String&& value) { SetContentMD5(std::move(value)); return *this;}
@@ -229,13 +234,98 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, go to <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864.</a> </p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline PutBucketAclRequest& WithContentMD5(const char* value) { SetContentMD5(value); return *this;}
/**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline const ChecksumAlgorithm& GetChecksumAlgorithm() const{ return m_checksumAlgorithm; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline bool ChecksumAlgorithmHasBeenSet() const { return m_checksumAlgorithmHasBeenSet; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(const ChecksumAlgorithm& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = value; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(ChecksumAlgorithm&& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = std::move(value); }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline PutBucketAclRequest& WithChecksumAlgorithm(const ChecksumAlgorithm& value) { SetChecksumAlgorithm(value); return *this;}
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline PutBucketAclRequest& WithChecksumAlgorithm(ChecksumAlgorithm&& value) { SetChecksumAlgorithm(std::move(value)); return *this;}
+
+
+ /**
* <p>Allows grantee the read, write, read ACP, and write ACP permissions on the
* bucket.</p>
*/
@@ -367,42 +457,58 @@ namespace Model
/**
- * <p>Allows grantee to create, overwrite, and delete any object in the bucket.</p>
+ * <p>Allows grantee to create new objects in the bucket.</p> <p>For the bucket and
+ * object owners of existing objects, also allows deletions and overwrites of those
+ * objects.</p>
*/
inline const Aws::String& GetGrantWrite() const{ return m_grantWrite; }
/**
- * <p>Allows grantee to create, overwrite, and delete any object in the bucket.</p>
+ * <p>Allows grantee to create new objects in the bucket.</p> <p>For the bucket and
+ * object owners of existing objects, also allows deletions and overwrites of those
+ * objects.</p>
*/
inline bool GrantWriteHasBeenSet() const { return m_grantWriteHasBeenSet; }
/**
- * <p>Allows grantee to create, overwrite, and delete any object in the bucket.</p>
+ * <p>Allows grantee to create new objects in the bucket.</p> <p>For the bucket and
+ * object owners of existing objects, also allows deletions and overwrites of those
+ * objects.</p>
*/
inline void SetGrantWrite(const Aws::String& value) { m_grantWriteHasBeenSet = true; m_grantWrite = value; }
/**
- * <p>Allows grantee to create, overwrite, and delete any object in the bucket.</p>
+ * <p>Allows grantee to create new objects in the bucket.</p> <p>For the bucket and
+ * object owners of existing objects, also allows deletions and overwrites of those
+ * objects.</p>
*/
inline void SetGrantWrite(Aws::String&& value) { m_grantWriteHasBeenSet = true; m_grantWrite = std::move(value); }
/**
- * <p>Allows grantee to create, overwrite, and delete any object in the bucket.</p>
+ * <p>Allows grantee to create new objects in the bucket.</p> <p>For the bucket and
+ * object owners of existing objects, also allows deletions and overwrites of those
+ * objects.</p>
*/
inline void SetGrantWrite(const char* value) { m_grantWriteHasBeenSet = true; m_grantWrite.assign(value); }
/**
- * <p>Allows grantee to create, overwrite, and delete any object in the bucket.</p>
+ * <p>Allows grantee to create new objects in the bucket.</p> <p>For the bucket and
+ * object owners of existing objects, also allows deletions and overwrites of those
+ * objects.</p>
*/
inline PutBucketAclRequest& WithGrantWrite(const Aws::String& value) { SetGrantWrite(value); return *this;}
/**
- * <p>Allows grantee to create, overwrite, and delete any object in the bucket.</p>
+ * <p>Allows grantee to create new objects in the bucket.</p> <p>For the bucket and
+ * object owners of existing objects, also allows deletions and overwrites of those
+ * objects.</p>
*/
inline PutBucketAclRequest& WithGrantWrite(Aws::String&& value) { SetGrantWrite(std::move(value)); return *this;}
/**
- * <p>Allows grantee to create, overwrite, and delete any object in the bucket.</p>
+ * <p>Allows grantee to create new objects in the bucket.</p> <p>For the bucket and
+ * object owners of existing objects, also allows deletions and overwrites of those
+ * objects.</p>
*/
inline PutBucketAclRequest& WithGrantWrite(const char* value) { SetGrantWrite(value); return *this;}
@@ -450,57 +556,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketAclRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketAclRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketAclRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -547,37 +653,40 @@ namespace Model
private:
BucketCannedACL m_aCL;
- bool m_aCLHasBeenSet;
+ bool m_aCLHasBeenSet = false;
AccessControlPolicy m_accessControlPolicy;
- bool m_accessControlPolicyHasBeenSet;
+ bool m_accessControlPolicyHasBeenSet = false;
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_contentMD5;
- bool m_contentMD5HasBeenSet;
+ bool m_contentMD5HasBeenSet = false;
+
+ ChecksumAlgorithm m_checksumAlgorithm;
+ bool m_checksumAlgorithmHasBeenSet = false;
Aws::String m_grantFullControl;
- bool m_grantFullControlHasBeenSet;
+ bool m_grantFullControlHasBeenSet = false;
Aws::String m_grantRead;
- bool m_grantReadHasBeenSet;
+ bool m_grantReadHasBeenSet = false;
Aws::String m_grantReadACP;
- bool m_grantReadACPHasBeenSet;
+ bool m_grantReadACPHasBeenSet = false;
Aws::String m_grantWrite;
- bool m_grantWriteHasBeenSet;
+ bool m_grantWriteHasBeenSet = false;
Aws::String m_grantWriteACP;
- bool m_grantWriteACPHasBeenSet;
+ bool m_grantWriteACPHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketAnalyticsConfigurationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketAnalyticsConfigurationRequest.h
index 72baf8a3ad..4403269bfe 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketAnalyticsConfigurationRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketAnalyticsConfigurationRequest.h
@@ -24,10 +24,10 @@ namespace Model
/**
*/
- class AWS_S3_API PutBucketAnalyticsConfigurationRequest : public S3Request
+ class PutBucketAnalyticsConfigurationRequest : public S3Request
{
public:
- PutBucketAnalyticsConfigurationRequest();
+ AWS_S3_API PutBucketAnalyticsConfigurationRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -35,12 +35,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "PutBucketAnalyticsConfiguration"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the bucket to which an analytics configuration is stored.</p>
@@ -157,57 +161,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketAnalyticsConfigurationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketAnalyticsConfigurationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketAnalyticsConfigurationRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -254,19 +258,19 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_id;
- bool m_idHasBeenSet;
+ bool m_idHasBeenSet = false;
AnalyticsConfiguration m_analyticsConfiguration;
- bool m_analyticsConfigurationHasBeenSet;
+ bool m_analyticsConfigurationHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketCorsRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketCorsRequest.h
index fd468b39c0..bf7b752844 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketCorsRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketCorsRequest.h
@@ -8,6 +8,7 @@
#include <aws/s3/S3Request.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/s3/model/CORSConfiguration.h>
+#include <aws/s3/model/ChecksumAlgorithm.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
#include <utility>
@@ -24,10 +25,10 @@ namespace Model
/**
*/
- class AWS_S3_API PutBucketCorsRequest : public S3Request
+ class PutBucketCorsRequest : public S3Request
{
public:
- PutBucketCorsRequest();
+ AWS_S3_API PutBucketCorsRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -35,14 +36,18 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "PutBucketCors"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
- inline bool ShouldComputeContentMd5() const override { return true; }
+ AWS_S3_API Aws::String GetChecksumAlgorithmName() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>Specifies the bucket impacted by the <code>cors</code>configuration.</p>
@@ -139,8 +144,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, go to <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864.</a> </p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline const Aws::String& GetContentMD5() const{ return m_contentMD5; }
@@ -149,8 +154,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, go to <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864.</a> </p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline bool ContentMD5HasBeenSet() const { return m_contentMD5HasBeenSet; }
@@ -159,8 +164,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, go to <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864.</a> </p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline void SetContentMD5(const Aws::String& value) { m_contentMD5HasBeenSet = true; m_contentMD5 = value; }
@@ -169,8 +174,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, go to <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864.</a> </p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline void SetContentMD5(Aws::String&& value) { m_contentMD5HasBeenSet = true; m_contentMD5 = std::move(value); }
@@ -179,8 +184,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, go to <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864.</a> </p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline void SetContentMD5(const char* value) { m_contentMD5HasBeenSet = true; m_contentMD5.assign(value); }
@@ -189,8 +194,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, go to <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864.</a> </p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline PutBucketCorsRequest& WithContentMD5(const Aws::String& value) { SetContentMD5(value); return *this;}
@@ -199,8 +204,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, go to <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864.</a> </p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline PutBucketCorsRequest& WithContentMD5(Aws::String&& value) { SetContentMD5(std::move(value)); return *this;}
@@ -209,65 +214,150 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, go to <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864.</a> </p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline PutBucketCorsRequest& WithContentMD5(const char* value) { SetContentMD5(value); return *this;}
/**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline const ChecksumAlgorithm& GetChecksumAlgorithm() const{ return m_checksumAlgorithm; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline bool ChecksumAlgorithmHasBeenSet() const { return m_checksumAlgorithmHasBeenSet; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(const ChecksumAlgorithm& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = value; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(ChecksumAlgorithm&& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = std::move(value); }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline PutBucketCorsRequest& WithChecksumAlgorithm(const ChecksumAlgorithm& value) { SetChecksumAlgorithm(value); return *this;}
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline PutBucketCorsRequest& WithChecksumAlgorithm(ChecksumAlgorithm&& value) { SetChecksumAlgorithm(std::move(value)); return *this;}
+
+
+ /**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketCorsRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketCorsRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketCorsRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -314,19 +404,22 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
CORSConfiguration m_cORSConfiguration;
- bool m_cORSConfigurationHasBeenSet;
+ bool m_cORSConfigurationHasBeenSet = false;
Aws::String m_contentMD5;
- bool m_contentMD5HasBeenSet;
+ bool m_contentMD5HasBeenSet = false;
+
+ ChecksumAlgorithm m_checksumAlgorithm;
+ bool m_checksumAlgorithmHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketEncryptionRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketEncryptionRequest.h
index 312c50e251..b56a8bde6f 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketEncryptionRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketEncryptionRequest.h
@@ -7,6 +7,7 @@
#include <aws/s3/S3_EXPORTS.h>
#include <aws/s3/S3Request.h>
#include <aws/core/utils/memory/stl/AWSString.h>
+#include <aws/s3/model/ChecksumAlgorithm.h>
#include <aws/s3/model/ServerSideEncryptionConfiguration.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
#include <utility>
@@ -24,10 +25,10 @@ namespace Model
/**
*/
- class AWS_S3_API PutBucketEncryptionRequest : public S3Request
+ class PutBucketEncryptionRequest : public S3Request
{
public:
- PutBucketEncryptionRequest();
+ AWS_S3_API PutBucketEncryptionRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -35,20 +36,23 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "PutBucketEncryption"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
- inline bool ShouldComputeContentMd5() const override { return true; }
+ AWS_S3_API Aws::String GetChecksumAlgorithmName() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>Specifies default encryption for a bucket using server-side encryption with
- * Amazon S3-managed keys (SSE-S3) or customer master keys stored in AWS KMS
- * (SSE-KMS). For information about the Amazon S3 default encryption feature, see
- * <a
+ * Amazon S3-managed keys (SSE-S3) or customer managed keys (SSE-KMS). For
+ * information about the Amazon S3 default encryption feature, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html">Amazon
* S3 Default Bucket Encryption</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
@@ -56,9 +60,8 @@ namespace Model
/**
* <p>Specifies default encryption for a bucket using server-side encryption with
- * Amazon S3-managed keys (SSE-S3) or customer master keys stored in AWS KMS
- * (SSE-KMS). For information about the Amazon S3 default encryption feature, see
- * <a
+ * Amazon S3-managed keys (SSE-S3) or customer managed keys (SSE-KMS). For
+ * information about the Amazon S3 default encryption feature, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html">Amazon
* S3 Default Bucket Encryption</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
@@ -66,9 +69,8 @@ namespace Model
/**
* <p>Specifies default encryption for a bucket using server-side encryption with
- * Amazon S3-managed keys (SSE-S3) or customer master keys stored in AWS KMS
- * (SSE-KMS). For information about the Amazon S3 default encryption feature, see
- * <a
+ * Amazon S3-managed keys (SSE-S3) or customer managed keys (SSE-KMS). For
+ * information about the Amazon S3 default encryption feature, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html">Amazon
* S3 Default Bucket Encryption</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
@@ -76,9 +78,8 @@ namespace Model
/**
* <p>Specifies default encryption for a bucket using server-side encryption with
- * Amazon S3-managed keys (SSE-S3) or customer master keys stored in AWS KMS
- * (SSE-KMS). For information about the Amazon S3 default encryption feature, see
- * <a
+ * Amazon S3-managed keys (SSE-S3) or customer managed keys (SSE-KMS). For
+ * information about the Amazon S3 default encryption feature, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html">Amazon
* S3 Default Bucket Encryption</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
@@ -86,9 +87,8 @@ namespace Model
/**
* <p>Specifies default encryption for a bucket using server-side encryption with
- * Amazon S3-managed keys (SSE-S3) or customer master keys stored in AWS KMS
- * (SSE-KMS). For information about the Amazon S3 default encryption feature, see
- * <a
+ * Amazon S3-managed keys (SSE-S3) or customer managed keys (SSE-KMS). For
+ * information about the Amazon S3 default encryption feature, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html">Amazon
* S3 Default Bucket Encryption</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
@@ -96,9 +96,8 @@ namespace Model
/**
* <p>Specifies default encryption for a bucket using server-side encryption with
- * Amazon S3-managed keys (SSE-S3) or customer master keys stored in AWS KMS
- * (SSE-KMS). For information about the Amazon S3 default encryption feature, see
- * <a
+ * Amazon S3-managed keys (SSE-S3) or customer managed keys (SSE-KMS). For
+ * information about the Amazon S3 default encryption feature, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html">Amazon
* S3 Default Bucket Encryption</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
@@ -106,9 +105,8 @@ namespace Model
/**
* <p>Specifies default encryption for a bucket using server-side encryption with
- * Amazon S3-managed keys (SSE-S3) or customer master keys stored in AWS KMS
- * (SSE-KMS). For information about the Amazon S3 default encryption feature, see
- * <a
+ * Amazon S3-managed keys (SSE-S3) or customer managed keys (SSE-KMS). For
+ * information about the Amazon S3 default encryption feature, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html">Amazon
* S3 Default Bucket Encryption</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
@@ -116,9 +114,8 @@ namespace Model
/**
* <p>Specifies default encryption for a bucket using server-side encryption with
- * Amazon S3-managed keys (SSE-S3) or customer master keys stored in AWS KMS
- * (SSE-KMS). For information about the Amazon S3 default encryption feature, see
- * <a
+ * Amazon S3-managed keys (SSE-S3) or customer managed keys (SSE-KMS). For
+ * information about the Amazon S3 default encryption feature, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html">Amazon
* S3 Default Bucket Encryption</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
@@ -127,61 +124,154 @@ namespace Model
/**
* <p>The base64-encoded 128-bit MD5 digest of the server-side encryption
- * configuration.</p> <p>For requests made using the AWS Command Line Interface
- * (CLI) or AWS SDKs, this field is calculated automatically.</p>
+ * configuration.</p> <p>For requests made using the Amazon Web Services Command
+ * Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated
+ * automatically.</p>
*/
inline const Aws::String& GetContentMD5() const{ return m_contentMD5; }
/**
* <p>The base64-encoded 128-bit MD5 digest of the server-side encryption
- * configuration.</p> <p>For requests made using the AWS Command Line Interface
- * (CLI) or AWS SDKs, this field is calculated automatically.</p>
+ * configuration.</p> <p>For requests made using the Amazon Web Services Command
+ * Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated
+ * automatically.</p>
*/
inline bool ContentMD5HasBeenSet() const { return m_contentMD5HasBeenSet; }
/**
* <p>The base64-encoded 128-bit MD5 digest of the server-side encryption
- * configuration.</p> <p>For requests made using the AWS Command Line Interface
- * (CLI) or AWS SDKs, this field is calculated automatically.</p>
+ * configuration.</p> <p>For requests made using the Amazon Web Services Command
+ * Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated
+ * automatically.</p>
*/
inline void SetContentMD5(const Aws::String& value) { m_contentMD5HasBeenSet = true; m_contentMD5 = value; }
/**
* <p>The base64-encoded 128-bit MD5 digest of the server-side encryption
- * configuration.</p> <p>For requests made using the AWS Command Line Interface
- * (CLI) or AWS SDKs, this field is calculated automatically.</p>
+ * configuration.</p> <p>For requests made using the Amazon Web Services Command
+ * Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated
+ * automatically.</p>
*/
inline void SetContentMD5(Aws::String&& value) { m_contentMD5HasBeenSet = true; m_contentMD5 = std::move(value); }
/**
* <p>The base64-encoded 128-bit MD5 digest of the server-side encryption
- * configuration.</p> <p>For requests made using the AWS Command Line Interface
- * (CLI) or AWS SDKs, this field is calculated automatically.</p>
+ * configuration.</p> <p>For requests made using the Amazon Web Services Command
+ * Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated
+ * automatically.</p>
*/
inline void SetContentMD5(const char* value) { m_contentMD5HasBeenSet = true; m_contentMD5.assign(value); }
/**
* <p>The base64-encoded 128-bit MD5 digest of the server-side encryption
- * configuration.</p> <p>For requests made using the AWS Command Line Interface
- * (CLI) or AWS SDKs, this field is calculated automatically.</p>
+ * configuration.</p> <p>For requests made using the Amazon Web Services Command
+ * Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated
+ * automatically.</p>
*/
inline PutBucketEncryptionRequest& WithContentMD5(const Aws::String& value) { SetContentMD5(value); return *this;}
/**
* <p>The base64-encoded 128-bit MD5 digest of the server-side encryption
- * configuration.</p> <p>For requests made using the AWS Command Line Interface
- * (CLI) or AWS SDKs, this field is calculated automatically.</p>
+ * configuration.</p> <p>For requests made using the Amazon Web Services Command
+ * Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated
+ * automatically.</p>
*/
inline PutBucketEncryptionRequest& WithContentMD5(Aws::String&& value) { SetContentMD5(std::move(value)); return *this;}
/**
* <p>The base64-encoded 128-bit MD5 digest of the server-side encryption
- * configuration.</p> <p>For requests made using the AWS Command Line Interface
- * (CLI) or AWS SDKs, this field is calculated automatically.</p>
+ * configuration.</p> <p>For requests made using the Amazon Web Services Command
+ * Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated
+ * automatically.</p>
*/
inline PutBucketEncryptionRequest& WithContentMD5(const char* value) { SetContentMD5(value); return *this;}
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline const ChecksumAlgorithm& GetChecksumAlgorithm() const{ return m_checksumAlgorithm; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline bool ChecksumAlgorithmHasBeenSet() const { return m_checksumAlgorithmHasBeenSet; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(const ChecksumAlgorithm& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = value; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(ChecksumAlgorithm&& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = std::move(value); }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline PutBucketEncryptionRequest& WithChecksumAlgorithm(const ChecksumAlgorithm& value) { SetChecksumAlgorithm(value); return *this;}
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline PutBucketEncryptionRequest& WithChecksumAlgorithm(ChecksumAlgorithm&& value) { SetChecksumAlgorithm(std::move(value)); return *this;}
+
+
inline const ServerSideEncryptionConfiguration& GetServerSideEncryptionConfiguration() const{ return m_serverSideEncryptionConfiguration; }
@@ -203,57 +293,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketEncryptionRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketEncryptionRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketEncryptionRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -300,19 +390,22 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_contentMD5;
- bool m_contentMD5HasBeenSet;
+ bool m_contentMD5HasBeenSet = false;
+
+ ChecksumAlgorithm m_checksumAlgorithm;
+ bool m_checksumAlgorithmHasBeenSet = false;
ServerSideEncryptionConfiguration m_serverSideEncryptionConfiguration;
- bool m_serverSideEncryptionConfigurationHasBeenSet;
+ bool m_serverSideEncryptionConfigurationHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketIntelligentTieringConfigurationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketIntelligentTieringConfigurationRequest.h
index 9055e5c1d8..91e9d79382 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketIntelligentTieringConfigurationRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketIntelligentTieringConfigurationRequest.h
@@ -24,10 +24,10 @@ namespace Model
/**
*/
- class AWS_S3_API PutBucketIntelligentTieringConfigurationRequest : public S3Request
+ class PutBucketIntelligentTieringConfigurationRequest : public S3Request
{
public:
- PutBucketIntelligentTieringConfigurationRequest();
+ AWS_S3_API PutBucketIntelligentTieringConfigurationRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -35,10 +35,14 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "PutBucketIntelligentTieringConfiguration"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the Amazon S3 bucket whose configuration you want to modify or
@@ -203,16 +207,16 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_id;
- bool m_idHasBeenSet;
+ bool m_idHasBeenSet = false;
IntelligentTieringConfiguration m_intelligentTieringConfiguration;
- bool m_intelligentTieringConfigurationHasBeenSet;
+ bool m_intelligentTieringConfigurationHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketInventoryConfigurationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketInventoryConfigurationRequest.h
index 88997a4a66..e4b342626d 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketInventoryConfigurationRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketInventoryConfigurationRequest.h
@@ -24,10 +24,10 @@ namespace Model
/**
*/
- class AWS_S3_API PutBucketInventoryConfigurationRequest : public S3Request
+ class PutBucketInventoryConfigurationRequest : public S3Request
{
public:
- PutBucketInventoryConfigurationRequest();
+ AWS_S3_API PutBucketInventoryConfigurationRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -35,12 +35,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "PutBucketInventoryConfiguration"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the bucket where the inventory configuration will be stored.</p>
@@ -157,57 +161,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketInventoryConfigurationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketInventoryConfigurationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketInventoryConfigurationRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -254,19 +258,19 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_id;
- bool m_idHasBeenSet;
+ bool m_idHasBeenSet = false;
InventoryConfiguration m_inventoryConfiguration;
- bool m_inventoryConfigurationHasBeenSet;
+ bool m_inventoryConfigurationHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketLifecycleConfigurationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketLifecycleConfigurationRequest.h
index 177b0434b4..2f08cb2e04 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketLifecycleConfigurationRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketLifecycleConfigurationRequest.h
@@ -7,6 +7,7 @@
#include <aws/s3/S3_EXPORTS.h>
#include <aws/s3/S3Request.h>
#include <aws/core/utils/memory/stl/AWSString.h>
+#include <aws/s3/model/ChecksumAlgorithm.h>
#include <aws/s3/model/BucketLifecycleConfiguration.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
#include <utility>
@@ -24,10 +25,10 @@ namespace Model
/**
*/
- class AWS_S3_API PutBucketLifecycleConfigurationRequest : public S3Request
+ class PutBucketLifecycleConfigurationRequest : public S3Request
{
public:
- PutBucketLifecycleConfigurationRequest();
+ AWS_S3_API PutBucketLifecycleConfigurationRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -35,14 +36,18 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "PutBucketLifecycleConfiguration"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
- inline bool ShouldComputeContentMd5() const override { return true; }
+ AWS_S3_API Aws::String GetChecksumAlgorithmName() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the bucket for which to set the configuration.</p>
@@ -86,6 +91,91 @@ namespace Model
/**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline const ChecksumAlgorithm& GetChecksumAlgorithm() const{ return m_checksumAlgorithm; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline bool ChecksumAlgorithmHasBeenSet() const { return m_checksumAlgorithmHasBeenSet; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(const ChecksumAlgorithm& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = value; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(ChecksumAlgorithm&& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = std::move(value); }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline PutBucketLifecycleConfigurationRequest& WithChecksumAlgorithm(const ChecksumAlgorithm& value) { SetChecksumAlgorithm(value); return *this;}
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline PutBucketLifecycleConfigurationRequest& WithChecksumAlgorithm(ChecksumAlgorithm&& value) { SetChecksumAlgorithm(std::move(value)); return *this;}
+
+
+ /**
* <p>Container for lifecycle rules. You can add as many as 1,000 rules.</p>
*/
inline const BucketLifecycleConfiguration& GetLifecycleConfiguration() const{ return m_lifecycleConfiguration; }
@@ -118,57 +208,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketLifecycleConfigurationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketLifecycleConfigurationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketLifecycleConfigurationRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -215,16 +305,19 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
+
+ ChecksumAlgorithm m_checksumAlgorithm;
+ bool m_checksumAlgorithmHasBeenSet = false;
BucketLifecycleConfiguration m_lifecycleConfiguration;
- bool m_lifecycleConfigurationHasBeenSet;
+ bool m_lifecycleConfigurationHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketLoggingRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketLoggingRequest.h
index befa6e8f1a..dd1f1c0ef1 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketLoggingRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketLoggingRequest.h
@@ -8,6 +8,7 @@
#include <aws/s3/S3Request.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/s3/model/BucketLoggingStatus.h>
+#include <aws/s3/model/ChecksumAlgorithm.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
#include <utility>
@@ -24,10 +25,10 @@ namespace Model
/**
*/
- class AWS_S3_API PutBucketLoggingRequest : public S3Request
+ class PutBucketLoggingRequest : public S3Request
{
public:
- PutBucketLoggingRequest();
+ AWS_S3_API PutBucketLoggingRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -35,14 +36,18 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "PutBucketLogging"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
- inline bool ShouldComputeContentMd5() const override { return true; }
+ AWS_S3_API Aws::String GetChecksumAlgorithmName() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the bucket for which to set the logging parameters.</p>
@@ -118,114 +123,199 @@ namespace Model
/**
* <p>The MD5 hash of the <code>PutBucketLogging</code> request body.</p> <p>For
- * requests made using the AWS Command Line Interface (CLI) or AWS SDKs, this field
- * is calculated automatically.</p>
+ * requests made using the Amazon Web Services Command Line Interface (CLI) or
+ * Amazon Web Services SDKs, this field is calculated automatically.</p>
*/
inline const Aws::String& GetContentMD5() const{ return m_contentMD5; }
/**
* <p>The MD5 hash of the <code>PutBucketLogging</code> request body.</p> <p>For
- * requests made using the AWS Command Line Interface (CLI) or AWS SDKs, this field
- * is calculated automatically.</p>
+ * requests made using the Amazon Web Services Command Line Interface (CLI) or
+ * Amazon Web Services SDKs, this field is calculated automatically.</p>
*/
inline bool ContentMD5HasBeenSet() const { return m_contentMD5HasBeenSet; }
/**
* <p>The MD5 hash of the <code>PutBucketLogging</code> request body.</p> <p>For
- * requests made using the AWS Command Line Interface (CLI) or AWS SDKs, this field
- * is calculated automatically.</p>
+ * requests made using the Amazon Web Services Command Line Interface (CLI) or
+ * Amazon Web Services SDKs, this field is calculated automatically.</p>
*/
inline void SetContentMD5(const Aws::String& value) { m_contentMD5HasBeenSet = true; m_contentMD5 = value; }
/**
* <p>The MD5 hash of the <code>PutBucketLogging</code> request body.</p> <p>For
- * requests made using the AWS Command Line Interface (CLI) or AWS SDKs, this field
- * is calculated automatically.</p>
+ * requests made using the Amazon Web Services Command Line Interface (CLI) or
+ * Amazon Web Services SDKs, this field is calculated automatically.</p>
*/
inline void SetContentMD5(Aws::String&& value) { m_contentMD5HasBeenSet = true; m_contentMD5 = std::move(value); }
/**
* <p>The MD5 hash of the <code>PutBucketLogging</code> request body.</p> <p>For
- * requests made using the AWS Command Line Interface (CLI) or AWS SDKs, this field
- * is calculated automatically.</p>
+ * requests made using the Amazon Web Services Command Line Interface (CLI) or
+ * Amazon Web Services SDKs, this field is calculated automatically.</p>
*/
inline void SetContentMD5(const char* value) { m_contentMD5HasBeenSet = true; m_contentMD5.assign(value); }
/**
* <p>The MD5 hash of the <code>PutBucketLogging</code> request body.</p> <p>For
- * requests made using the AWS Command Line Interface (CLI) or AWS SDKs, this field
- * is calculated automatically.</p>
+ * requests made using the Amazon Web Services Command Line Interface (CLI) or
+ * Amazon Web Services SDKs, this field is calculated automatically.</p>
*/
inline PutBucketLoggingRequest& WithContentMD5(const Aws::String& value) { SetContentMD5(value); return *this;}
/**
* <p>The MD5 hash of the <code>PutBucketLogging</code> request body.</p> <p>For
- * requests made using the AWS Command Line Interface (CLI) or AWS SDKs, this field
- * is calculated automatically.</p>
+ * requests made using the Amazon Web Services Command Line Interface (CLI) or
+ * Amazon Web Services SDKs, this field is calculated automatically.</p>
*/
inline PutBucketLoggingRequest& WithContentMD5(Aws::String&& value) { SetContentMD5(std::move(value)); return *this;}
/**
* <p>The MD5 hash of the <code>PutBucketLogging</code> request body.</p> <p>For
- * requests made using the AWS Command Line Interface (CLI) or AWS SDKs, this field
- * is calculated automatically.</p>
+ * requests made using the Amazon Web Services Command Line Interface (CLI) or
+ * Amazon Web Services SDKs, this field is calculated automatically.</p>
*/
inline PutBucketLoggingRequest& WithContentMD5(const char* value) { SetContentMD5(value); return *this;}
/**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline const ChecksumAlgorithm& GetChecksumAlgorithm() const{ return m_checksumAlgorithm; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline bool ChecksumAlgorithmHasBeenSet() const { return m_checksumAlgorithmHasBeenSet; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(const ChecksumAlgorithm& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = value; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(ChecksumAlgorithm&& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = std::move(value); }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline PutBucketLoggingRequest& WithChecksumAlgorithm(const ChecksumAlgorithm& value) { SetChecksumAlgorithm(value); return *this;}
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline PutBucketLoggingRequest& WithChecksumAlgorithm(ChecksumAlgorithm&& value) { SetChecksumAlgorithm(std::move(value)); return *this;}
+
+
+ /**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketLoggingRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketLoggingRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketLoggingRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -272,19 +362,22 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
BucketLoggingStatus m_bucketLoggingStatus;
- bool m_bucketLoggingStatusHasBeenSet;
+ bool m_bucketLoggingStatusHasBeenSet = false;
Aws::String m_contentMD5;
- bool m_contentMD5HasBeenSet;
+ bool m_contentMD5HasBeenSet = false;
+
+ ChecksumAlgorithm m_checksumAlgorithm;
+ bool m_checksumAlgorithmHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketMetricsConfigurationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketMetricsConfigurationRequest.h
index 94791d58d5..5b6f3ebf6d 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketMetricsConfigurationRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketMetricsConfigurationRequest.h
@@ -24,10 +24,10 @@ namespace Model
/**
*/
- class AWS_S3_API PutBucketMetricsConfigurationRequest : public S3Request
+ class PutBucketMetricsConfigurationRequest : public S3Request
{
public:
- PutBucketMetricsConfigurationRequest();
+ AWS_S3_API PutBucketMetricsConfigurationRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -35,12 +35,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "PutBucketMetricsConfiguration"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the bucket for which the metrics configuration is set.</p>
@@ -157,57 +161,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketMetricsConfigurationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketMetricsConfigurationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketMetricsConfigurationRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -254,19 +258,19 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_id;
- bool m_idHasBeenSet;
+ bool m_idHasBeenSet = false;
MetricsConfiguration m_metricsConfiguration;
- bool m_metricsConfigurationHasBeenSet;
+ bool m_metricsConfigurationHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketNotificationConfigurationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketNotificationConfigurationRequest.h
index 016bba49c9..4ce686f86b 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketNotificationConfigurationRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketNotificationConfigurationRequest.h
@@ -24,10 +24,10 @@ namespace Model
/**
*/
- class AWS_S3_API PutBucketNotificationConfigurationRequest : public S3Request
+ class PutBucketNotificationConfigurationRequest : public S3Request
{
public:
- PutBucketNotificationConfigurationRequest();
+ AWS_S3_API PutBucketNotificationConfigurationRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -35,12 +35,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "PutBucketNotificationConfiguration"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the bucket.</p>
@@ -104,61 +108,86 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketNotificationConfigurationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketNotificationConfigurationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketNotificationConfigurationRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
+ /**
+ * <p>Skips validation of Amazon SQS, Amazon SNS, and Lambda destinations. True or
+ * false value.</p>
+ */
+ inline bool GetSkipDestinationValidation() const{ return m_skipDestinationValidation; }
+
+ /**
+ * <p>Skips validation of Amazon SQS, Amazon SNS, and Lambda destinations. True or
+ * false value.</p>
+ */
+ inline bool SkipDestinationValidationHasBeenSet() const { return m_skipDestinationValidationHasBeenSet; }
+
+ /**
+ * <p>Skips validation of Amazon SQS, Amazon SNS, and Lambda destinations. True or
+ * false value.</p>
+ */
+ inline void SetSkipDestinationValidation(bool value) { m_skipDestinationValidationHasBeenSet = true; m_skipDestinationValidation = value; }
+
+ /**
+ * <p>Skips validation of Amazon SQS, Amazon SNS, and Lambda destinations. True or
+ * false value.</p>
+ */
+ inline PutBucketNotificationConfigurationRequest& WithSkipDestinationValidation(bool value) { SetSkipDestinationValidation(value); return *this;}
+
+
inline const Aws::Map<Aws::String, Aws::String>& GetCustomizedAccessLogTag() const{ return m_customizedAccessLogTag; }
@@ -201,16 +230,19 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
NotificationConfiguration m_notificationConfiguration;
- bool m_notificationConfigurationHasBeenSet;
+ bool m_notificationConfigurationHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
+
+ bool m_skipDestinationValidation;
+ bool m_skipDestinationValidationHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketOwnershipControlsRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketOwnershipControlsRequest.h
index 76f46d672a..bdcf6c4754 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketOwnershipControlsRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketOwnershipControlsRequest.h
@@ -24,10 +24,10 @@ namespace Model
/**
*/
- class AWS_S3_API PutBucketOwnershipControlsRequest : public S3Request
+ class PutBucketOwnershipControlsRequest : public S3Request
{
public:
- PutBucketOwnershipControlsRequest();
+ AWS_S3_API PutBucketOwnershipControlsRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -35,14 +35,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "PutBucketOwnershipControls"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
-
- inline bool ShouldComputeContentMd5() const override { return true; }
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the Amazon S3 bucket whose <code>OwnershipControls</code> you
@@ -95,151 +97,157 @@ namespace Model
/**
* <p>The MD5 hash of the <code>OwnershipControls</code> request body. </p> <p>For
- * requests made using the AWS Command Line Interface (CLI) or AWS SDKs, this field
- * is calculated automatically.</p>
+ * requests made using the Amazon Web Services Command Line Interface (CLI) or
+ * Amazon Web Services SDKs, this field is calculated automatically.</p>
*/
inline const Aws::String& GetContentMD5() const{ return m_contentMD5; }
/**
* <p>The MD5 hash of the <code>OwnershipControls</code> request body. </p> <p>For
- * requests made using the AWS Command Line Interface (CLI) or AWS SDKs, this field
- * is calculated automatically.</p>
+ * requests made using the Amazon Web Services Command Line Interface (CLI) or
+ * Amazon Web Services SDKs, this field is calculated automatically.</p>
*/
inline bool ContentMD5HasBeenSet() const { return m_contentMD5HasBeenSet; }
/**
* <p>The MD5 hash of the <code>OwnershipControls</code> request body. </p> <p>For
- * requests made using the AWS Command Line Interface (CLI) or AWS SDKs, this field
- * is calculated automatically.</p>
+ * requests made using the Amazon Web Services Command Line Interface (CLI) or
+ * Amazon Web Services SDKs, this field is calculated automatically.</p>
*/
inline void SetContentMD5(const Aws::String& value) { m_contentMD5HasBeenSet = true; m_contentMD5 = value; }
/**
* <p>The MD5 hash of the <code>OwnershipControls</code> request body. </p> <p>For
- * requests made using the AWS Command Line Interface (CLI) or AWS SDKs, this field
- * is calculated automatically.</p>
+ * requests made using the Amazon Web Services Command Line Interface (CLI) or
+ * Amazon Web Services SDKs, this field is calculated automatically.</p>
*/
inline void SetContentMD5(Aws::String&& value) { m_contentMD5HasBeenSet = true; m_contentMD5 = std::move(value); }
/**
* <p>The MD5 hash of the <code>OwnershipControls</code> request body. </p> <p>For
- * requests made using the AWS Command Line Interface (CLI) or AWS SDKs, this field
- * is calculated automatically.</p>
+ * requests made using the Amazon Web Services Command Line Interface (CLI) or
+ * Amazon Web Services SDKs, this field is calculated automatically.</p>
*/
inline void SetContentMD5(const char* value) { m_contentMD5HasBeenSet = true; m_contentMD5.assign(value); }
/**
* <p>The MD5 hash of the <code>OwnershipControls</code> request body. </p> <p>For
- * requests made using the AWS Command Line Interface (CLI) or AWS SDKs, this field
- * is calculated automatically.</p>
+ * requests made using the Amazon Web Services Command Line Interface (CLI) or
+ * Amazon Web Services SDKs, this field is calculated automatically.</p>
*/
inline PutBucketOwnershipControlsRequest& WithContentMD5(const Aws::String& value) { SetContentMD5(value); return *this;}
/**
* <p>The MD5 hash of the <code>OwnershipControls</code> request body. </p> <p>For
- * requests made using the AWS Command Line Interface (CLI) or AWS SDKs, this field
- * is calculated automatically.</p>
+ * requests made using the Amazon Web Services Command Line Interface (CLI) or
+ * Amazon Web Services SDKs, this field is calculated automatically.</p>
*/
inline PutBucketOwnershipControlsRequest& WithContentMD5(Aws::String&& value) { SetContentMD5(std::move(value)); return *this;}
/**
* <p>The MD5 hash of the <code>OwnershipControls</code> request body. </p> <p>For
- * requests made using the AWS Command Line Interface (CLI) or AWS SDKs, this field
- * is calculated automatically.</p>
+ * requests made using the Amazon Web Services Command Line Interface (CLI) or
+ * Amazon Web Services SDKs, this field is calculated automatically.</p>
*/
inline PutBucketOwnershipControlsRequest& WithContentMD5(const char* value) { SetContentMD5(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketOwnershipControlsRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketOwnershipControlsRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketOwnershipControlsRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
/**
- * <p>The <code>OwnershipControls</code> (BucketOwnerPreferred or ObjectWriter)
- * that you want to apply to this Amazon S3 bucket.</p>
+ * <p>The <code>OwnershipControls</code> (BucketOwnerEnforced,
+ * BucketOwnerPreferred, or ObjectWriter) that you want to apply to this Amazon S3
+ * bucket.</p>
*/
inline const OwnershipControls& GetOwnershipControls() const{ return m_ownershipControls; }
/**
- * <p>The <code>OwnershipControls</code> (BucketOwnerPreferred or ObjectWriter)
- * that you want to apply to this Amazon S3 bucket.</p>
+ * <p>The <code>OwnershipControls</code> (BucketOwnerEnforced,
+ * BucketOwnerPreferred, or ObjectWriter) that you want to apply to this Amazon S3
+ * bucket.</p>
*/
inline bool OwnershipControlsHasBeenSet() const { return m_ownershipControlsHasBeenSet; }
/**
- * <p>The <code>OwnershipControls</code> (BucketOwnerPreferred or ObjectWriter)
- * that you want to apply to this Amazon S3 bucket.</p>
+ * <p>The <code>OwnershipControls</code> (BucketOwnerEnforced,
+ * BucketOwnerPreferred, or ObjectWriter) that you want to apply to this Amazon S3
+ * bucket.</p>
*/
inline void SetOwnershipControls(const OwnershipControls& value) { m_ownershipControlsHasBeenSet = true; m_ownershipControls = value; }
/**
- * <p>The <code>OwnershipControls</code> (BucketOwnerPreferred or ObjectWriter)
- * that you want to apply to this Amazon S3 bucket.</p>
+ * <p>The <code>OwnershipControls</code> (BucketOwnerEnforced,
+ * BucketOwnerPreferred, or ObjectWriter) that you want to apply to this Amazon S3
+ * bucket.</p>
*/
inline void SetOwnershipControls(OwnershipControls&& value) { m_ownershipControlsHasBeenSet = true; m_ownershipControls = std::move(value); }
/**
- * <p>The <code>OwnershipControls</code> (BucketOwnerPreferred or ObjectWriter)
- * that you want to apply to this Amazon S3 bucket.</p>
+ * <p>The <code>OwnershipControls</code> (BucketOwnerEnforced,
+ * BucketOwnerPreferred, or ObjectWriter) that you want to apply to this Amazon S3
+ * bucket.</p>
*/
inline PutBucketOwnershipControlsRequest& WithOwnershipControls(const OwnershipControls& value) { SetOwnershipControls(value); return *this;}
/**
- * <p>The <code>OwnershipControls</code> (BucketOwnerPreferred or ObjectWriter)
- * that you want to apply to this Amazon S3 bucket.</p>
+ * <p>The <code>OwnershipControls</code> (BucketOwnerEnforced,
+ * BucketOwnerPreferred, or ObjectWriter) that you want to apply to this Amazon S3
+ * bucket.</p>
*/
inline PutBucketOwnershipControlsRequest& WithOwnershipControls(OwnershipControls&& value) { SetOwnershipControls(std::move(value)); return *this;}
@@ -286,19 +294,19 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_contentMD5;
- bool m_contentMD5HasBeenSet;
+ bool m_contentMD5HasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
OwnershipControls m_ownershipControls;
- bool m_ownershipControlsHasBeenSet;
+ bool m_ownershipControlsHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketPolicyRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketPolicyRequest.h
index 8cf3d4129a..553987a836 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketPolicyRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketPolicyRequest.h
@@ -7,6 +7,7 @@
#include <aws/s3/S3_EXPORTS.h>
#include <aws/s3/S3Request.h>
#include <aws/core/utils/memory/stl/AWSString.h>
+#include <aws/s3/model/ChecksumAlgorithm.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
#include <utility>
@@ -23,10 +24,10 @@ namespace Model
/**
*/
- class AWS_S3_API PutBucketPolicyRequest : public StreamingS3Request
+ class PutBucketPolicyRequest : public StreamingS3Request
{
public:
- PutBucketPolicyRequest();
+ AWS_S3_API PutBucketPolicyRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -34,12 +35,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "PutBucketPolicy"; }
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
- inline bool ShouldComputeContentMd5() const override { return true; }
+ AWS_S3_API Aws::String GetChecksumAlgorithmName() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the bucket.</p>
@@ -83,63 +88,148 @@ namespace Model
/**
- * <p>The MD5 hash of the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash of the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline const Aws::String& GetContentMD5() const{ return m_contentMD5; }
/**
- * <p>The MD5 hash of the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash of the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline bool ContentMD5HasBeenSet() const { return m_contentMD5HasBeenSet; }
/**
- * <p>The MD5 hash of the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash of the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline void SetContentMD5(const Aws::String& value) { m_contentMD5HasBeenSet = true; m_contentMD5 = value; }
/**
- * <p>The MD5 hash of the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash of the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline void SetContentMD5(Aws::String&& value) { m_contentMD5HasBeenSet = true; m_contentMD5 = std::move(value); }
/**
- * <p>The MD5 hash of the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash of the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline void SetContentMD5(const char* value) { m_contentMD5HasBeenSet = true; m_contentMD5.assign(value); }
/**
- * <p>The MD5 hash of the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash of the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline PutBucketPolicyRequest& WithContentMD5(const Aws::String& value) { SetContentMD5(value); return *this;}
/**
- * <p>The MD5 hash of the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash of the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline PutBucketPolicyRequest& WithContentMD5(Aws::String&& value) { SetContentMD5(std::move(value)); return *this;}
/**
- * <p>The MD5 hash of the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash of the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline PutBucketPolicyRequest& WithContentMD5(const char* value) { SetContentMD5(value); return *this;}
/**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline const ChecksumAlgorithm& GetChecksumAlgorithm() const{ return m_checksumAlgorithm; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline bool ChecksumAlgorithmHasBeenSet() const { return m_checksumAlgorithmHasBeenSet; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(const ChecksumAlgorithm& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = value; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(ChecksumAlgorithm&& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = std::move(value); }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline PutBucketPolicyRequest& WithChecksumAlgorithm(const ChecksumAlgorithm& value) { SetChecksumAlgorithm(value); return *this;}
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline PutBucketPolicyRequest& WithChecksumAlgorithm(ChecksumAlgorithm&& value) { SetChecksumAlgorithm(std::move(value)); return *this;}
+
+
+ /**
* <p>Set this parameter to true to confirm that you want to remove your
* permissions to change this bucket policy in the future.</p>
*/
@@ -166,57 +256,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketPolicyRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketPolicyRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketPolicyRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -263,20 +353,23 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_contentMD5;
- bool m_contentMD5HasBeenSet;
+ bool m_contentMD5HasBeenSet = false;
+
+ ChecksumAlgorithm m_checksumAlgorithm;
+ bool m_checksumAlgorithmHasBeenSet = false;
bool m_confirmRemoveSelfBucketAccess;
- bool m_confirmRemoveSelfBucketAccessHasBeenSet;
+ bool m_confirmRemoveSelfBucketAccessHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketReplicationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketReplicationRequest.h
index 1c8d3e16d8..026e05efa1 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketReplicationRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketReplicationRequest.h
@@ -7,6 +7,7 @@
#include <aws/s3/S3_EXPORTS.h>
#include <aws/s3/S3Request.h>
#include <aws/core/utils/memory/stl/AWSString.h>
+#include <aws/s3/model/ChecksumAlgorithm.h>
#include <aws/s3/model/ReplicationConfiguration.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
#include <utility>
@@ -24,10 +25,10 @@ namespace Model
/**
*/
- class AWS_S3_API PutBucketReplicationRequest : public S3Request
+ class PutBucketReplicationRequest : public S3Request
{
public:
- PutBucketReplicationRequest();
+ AWS_S3_API PutBucketReplicationRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -35,14 +36,18 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "PutBucketReplication"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
- inline bool ShouldComputeContentMd5() const override { return true; }
+ AWS_S3_API Aws::String GetChecksumAlgorithmName() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the bucket</p>
@@ -90,8 +95,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline const Aws::String& GetContentMD5() const{ return m_contentMD5; }
@@ -100,8 +105,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline bool ContentMD5HasBeenSet() const { return m_contentMD5HasBeenSet; }
@@ -110,8 +115,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline void SetContentMD5(const Aws::String& value) { m_contentMD5HasBeenSet = true; m_contentMD5 = value; }
@@ -120,8 +125,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline void SetContentMD5(Aws::String&& value) { m_contentMD5HasBeenSet = true; m_contentMD5 = std::move(value); }
@@ -130,8 +135,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline void SetContentMD5(const char* value) { m_contentMD5HasBeenSet = true; m_contentMD5.assign(value); }
@@ -140,8 +145,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline PutBucketReplicationRequest& WithContentMD5(const Aws::String& value) { SetContentMD5(value); return *this;}
@@ -150,8 +155,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline PutBucketReplicationRequest& WithContentMD5(Aws::String&& value) { SetContentMD5(std::move(value)); return *this;}
@@ -160,12 +165,97 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline PutBucketReplicationRequest& WithContentMD5(const char* value) { SetContentMD5(value); return *this;}
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline const ChecksumAlgorithm& GetChecksumAlgorithm() const{ return m_checksumAlgorithm; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline bool ChecksumAlgorithmHasBeenSet() const { return m_checksumAlgorithmHasBeenSet; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(const ChecksumAlgorithm& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = value; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(ChecksumAlgorithm&& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = std::move(value); }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline PutBucketReplicationRequest& WithChecksumAlgorithm(const ChecksumAlgorithm& value) { SetChecksumAlgorithm(value); return *this;}
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline PutBucketReplicationRequest& WithChecksumAlgorithm(ChecksumAlgorithm&& value) { SetChecksumAlgorithm(std::move(value)); return *this;}
+
+
inline const ReplicationConfiguration& GetReplicationConfiguration() const{ return m_replicationConfiguration; }
@@ -228,57 +318,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketReplicationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketReplicationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketReplicationRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -325,22 +415,25 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_contentMD5;
- bool m_contentMD5HasBeenSet;
+ bool m_contentMD5HasBeenSet = false;
+
+ ChecksumAlgorithm m_checksumAlgorithm;
+ bool m_checksumAlgorithmHasBeenSet = false;
ReplicationConfiguration m_replicationConfiguration;
- bool m_replicationConfigurationHasBeenSet;
+ bool m_replicationConfigurationHasBeenSet = false;
Aws::String m_token;
- bool m_tokenHasBeenSet;
+ bool m_tokenHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketRequestPaymentRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketRequestPaymentRequest.h
index cf61658395..27e831c728 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketRequestPaymentRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketRequestPaymentRequest.h
@@ -7,6 +7,7 @@
#include <aws/s3/S3_EXPORTS.h>
#include <aws/s3/S3Request.h>
#include <aws/core/utils/memory/stl/AWSString.h>
+#include <aws/s3/model/ChecksumAlgorithm.h>
#include <aws/s3/model/RequestPaymentConfiguration.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
#include <utility>
@@ -24,10 +25,10 @@ namespace Model
/**
*/
- class AWS_S3_API PutBucketRequestPaymentRequest : public S3Request
+ class PutBucketRequestPaymentRequest : public S3Request
{
public:
- PutBucketRequestPaymentRequest();
+ AWS_S3_API PutBucketRequestPaymentRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -35,14 +36,18 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "PutBucketRequestPayment"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
- inline bool ShouldComputeContentMd5() const override { return true; }
+ AWS_S3_API Aws::String GetChecksumAlgorithmName() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The bucket name.</p>
@@ -90,8 +95,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline const Aws::String& GetContentMD5() const{ return m_contentMD5; }
@@ -100,8 +105,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline bool ContentMD5HasBeenSet() const { return m_contentMD5HasBeenSet; }
@@ -110,8 +115,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline void SetContentMD5(const Aws::String& value) { m_contentMD5HasBeenSet = true; m_contentMD5 = value; }
@@ -120,8 +125,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline void SetContentMD5(Aws::String&& value) { m_contentMD5HasBeenSet = true; m_contentMD5 = std::move(value); }
@@ -130,8 +135,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline void SetContentMD5(const char* value) { m_contentMD5HasBeenSet = true; m_contentMD5.assign(value); }
@@ -140,8 +145,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline PutBucketRequestPaymentRequest& WithContentMD5(const Aws::String& value) { SetContentMD5(value); return *this;}
@@ -150,8 +155,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline PutBucketRequestPaymentRequest& WithContentMD5(Aws::String&& value) { SetContentMD5(std::move(value)); return *this;}
@@ -160,13 +165,98 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline PutBucketRequestPaymentRequest& WithContentMD5(const char* value) { SetContentMD5(value); return *this;}
/**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline const ChecksumAlgorithm& GetChecksumAlgorithm() const{ return m_checksumAlgorithm; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline bool ChecksumAlgorithmHasBeenSet() const { return m_checksumAlgorithmHasBeenSet; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(const ChecksumAlgorithm& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = value; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(ChecksumAlgorithm&& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = std::move(value); }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline PutBucketRequestPaymentRequest& WithChecksumAlgorithm(const ChecksumAlgorithm& value) { SetChecksumAlgorithm(value); return *this;}
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline PutBucketRequestPaymentRequest& WithChecksumAlgorithm(ChecksumAlgorithm&& value) { SetChecksumAlgorithm(std::move(value)); return *this;}
+
+
+ /**
* <p>Container for Payer.</p>
*/
inline const RequestPaymentConfiguration& GetRequestPaymentConfiguration() const{ return m_requestPaymentConfiguration; }
@@ -199,57 +289,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketRequestPaymentRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketRequestPaymentRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketRequestPaymentRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -296,19 +386,22 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_contentMD5;
- bool m_contentMD5HasBeenSet;
+ bool m_contentMD5HasBeenSet = false;
+
+ ChecksumAlgorithm m_checksumAlgorithm;
+ bool m_checksumAlgorithmHasBeenSet = false;
RequestPaymentConfiguration m_requestPaymentConfiguration;
- bool m_requestPaymentConfigurationHasBeenSet;
+ bool m_requestPaymentConfigurationHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketTaggingRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketTaggingRequest.h
index 9fab196905..05a97a14b0 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketTaggingRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketTaggingRequest.h
@@ -7,6 +7,7 @@
#include <aws/s3/S3_EXPORTS.h>
#include <aws/s3/S3Request.h>
#include <aws/core/utils/memory/stl/AWSString.h>
+#include <aws/s3/model/ChecksumAlgorithm.h>
#include <aws/s3/model/Tagging.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
#include <utility>
@@ -24,10 +25,10 @@ namespace Model
/**
*/
- class AWS_S3_API PutBucketTaggingRequest : public S3Request
+ class PutBucketTaggingRequest : public S3Request
{
public:
- PutBucketTaggingRequest();
+ AWS_S3_API PutBucketTaggingRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -35,14 +36,18 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "PutBucketTagging"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
- inline bool ShouldComputeContentMd5() const override { return true; }
+ AWS_S3_API Aws::String GetChecksumAlgorithmName() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The bucket name.</p>
@@ -90,8 +95,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline const Aws::String& GetContentMD5() const{ return m_contentMD5; }
@@ -100,8 +105,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline bool ContentMD5HasBeenSet() const { return m_contentMD5HasBeenSet; }
@@ -110,8 +115,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline void SetContentMD5(const Aws::String& value) { m_contentMD5HasBeenSet = true; m_contentMD5 = value; }
@@ -120,8 +125,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline void SetContentMD5(Aws::String&& value) { m_contentMD5HasBeenSet = true; m_contentMD5 = std::move(value); }
@@ -130,8 +135,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline void SetContentMD5(const char* value) { m_contentMD5HasBeenSet = true; m_contentMD5.assign(value); }
@@ -140,8 +145,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline PutBucketTaggingRequest& WithContentMD5(const Aws::String& value) { SetContentMD5(value); return *this;}
@@ -150,8 +155,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline PutBucketTaggingRequest& WithContentMD5(Aws::String&& value) { SetContentMD5(std::move(value)); return *this;}
@@ -160,13 +165,98 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline PutBucketTaggingRequest& WithContentMD5(const char* value) { SetContentMD5(value); return *this;}
/**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline const ChecksumAlgorithm& GetChecksumAlgorithm() const{ return m_checksumAlgorithm; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline bool ChecksumAlgorithmHasBeenSet() const { return m_checksumAlgorithmHasBeenSet; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(const ChecksumAlgorithm& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = value; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(ChecksumAlgorithm&& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = std::move(value); }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline PutBucketTaggingRequest& WithChecksumAlgorithm(const ChecksumAlgorithm& value) { SetChecksumAlgorithm(value); return *this;}
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline PutBucketTaggingRequest& WithChecksumAlgorithm(ChecksumAlgorithm&& value) { SetChecksumAlgorithm(std::move(value)); return *this;}
+
+
+ /**
* <p>Container for the <code>TagSet</code> and <code>Tag</code> elements.</p>
*/
inline const Tagging& GetTagging() const{ return m_tagging; }
@@ -199,57 +289,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketTaggingRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketTaggingRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketTaggingRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -296,19 +386,22 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_contentMD5;
- bool m_contentMD5HasBeenSet;
+ bool m_contentMD5HasBeenSet = false;
+
+ ChecksumAlgorithm m_checksumAlgorithm;
+ bool m_checksumAlgorithmHasBeenSet = false;
Tagging m_tagging;
- bool m_taggingHasBeenSet;
+ bool m_taggingHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketVersioningRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketVersioningRequest.h
index c9adb345bc..8b515fcf68 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketVersioningRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketVersioningRequest.h
@@ -7,6 +7,7 @@
#include <aws/s3/S3_EXPORTS.h>
#include <aws/s3/S3Request.h>
#include <aws/core/utils/memory/stl/AWSString.h>
+#include <aws/s3/model/ChecksumAlgorithm.h>
#include <aws/s3/model/VersioningConfiguration.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
#include <utility>
@@ -24,10 +25,10 @@ namespace Model
/**
*/
- class AWS_S3_API PutBucketVersioningRequest : public S3Request
+ class PutBucketVersioningRequest : public S3Request
{
public:
- PutBucketVersioningRequest();
+ AWS_S3_API PutBucketVersioningRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -35,14 +36,18 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "PutBucketVersioning"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
- inline bool ShouldComputeContentMd5() const override { return true; }
+ AWS_S3_API Aws::String GetChecksumAlgorithmName() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The bucket name.</p>
@@ -90,8 +95,8 @@ namespace Model
* header as a message integrity check to verify that the request body was not
* corrupted in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline const Aws::String& GetContentMD5() const{ return m_contentMD5; }
@@ -100,8 +105,8 @@ namespace Model
* header as a message integrity check to verify that the request body was not
* corrupted in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline bool ContentMD5HasBeenSet() const { return m_contentMD5HasBeenSet; }
@@ -110,8 +115,8 @@ namespace Model
* header as a message integrity check to verify that the request body was not
* corrupted in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline void SetContentMD5(const Aws::String& value) { m_contentMD5HasBeenSet = true; m_contentMD5 = value; }
@@ -120,8 +125,8 @@ namespace Model
* header as a message integrity check to verify that the request body was not
* corrupted in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline void SetContentMD5(Aws::String&& value) { m_contentMD5HasBeenSet = true; m_contentMD5 = std::move(value); }
@@ -130,8 +135,8 @@ namespace Model
* header as a message integrity check to verify that the request body was not
* corrupted in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline void SetContentMD5(const char* value) { m_contentMD5HasBeenSet = true; m_contentMD5.assign(value); }
@@ -140,8 +145,8 @@ namespace Model
* header as a message integrity check to verify that the request body was not
* corrupted in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline PutBucketVersioningRequest& WithContentMD5(const Aws::String& value) { SetContentMD5(value); return *this;}
@@ -150,8 +155,8 @@ namespace Model
* header as a message integrity check to verify that the request body was not
* corrupted in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline PutBucketVersioningRequest& WithContentMD5(Aws::String&& value) { SetContentMD5(std::move(value)); return *this;}
@@ -160,13 +165,98 @@ namespace Model
* header as a message integrity check to verify that the request body was not
* corrupted in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline PutBucketVersioningRequest& WithContentMD5(const char* value) { SetContentMD5(value); return *this;}
/**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline const ChecksumAlgorithm& GetChecksumAlgorithm() const{ return m_checksumAlgorithm; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline bool ChecksumAlgorithmHasBeenSet() const { return m_checksumAlgorithmHasBeenSet; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(const ChecksumAlgorithm& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = value; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(ChecksumAlgorithm&& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = std::move(value); }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline PutBucketVersioningRequest& WithChecksumAlgorithm(const ChecksumAlgorithm& value) { SetChecksumAlgorithm(value); return *this;}
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline PutBucketVersioningRequest& WithChecksumAlgorithm(ChecksumAlgorithm&& value) { SetChecksumAlgorithm(std::move(value)); return *this;}
+
+
+ /**
* <p>The concatenation of the authentication device's serial number, a space, and
* the value that is displayed on your authentication device.</p>
*/
@@ -248,57 +338,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketVersioningRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketVersioningRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketVersioningRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -345,22 +435,25 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_contentMD5;
- bool m_contentMD5HasBeenSet;
+ bool m_contentMD5HasBeenSet = false;
+
+ ChecksumAlgorithm m_checksumAlgorithm;
+ bool m_checksumAlgorithmHasBeenSet = false;
Aws::String m_mFA;
- bool m_mFAHasBeenSet;
+ bool m_mFAHasBeenSet = false;
VersioningConfiguration m_versioningConfiguration;
- bool m_versioningConfigurationHasBeenSet;
+ bool m_versioningConfigurationHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketWebsiteRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketWebsiteRequest.h
index f95f12c950..64064f7bce 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketWebsiteRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutBucketWebsiteRequest.h
@@ -7,6 +7,7 @@
#include <aws/s3/S3_EXPORTS.h>
#include <aws/s3/S3Request.h>
#include <aws/core/utils/memory/stl/AWSString.h>
+#include <aws/s3/model/ChecksumAlgorithm.h>
#include <aws/s3/model/WebsiteConfiguration.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
#include <utility>
@@ -24,10 +25,10 @@ namespace Model
/**
*/
- class AWS_S3_API PutBucketWebsiteRequest : public S3Request
+ class PutBucketWebsiteRequest : public S3Request
{
public:
- PutBucketWebsiteRequest();
+ AWS_S3_API PutBucketWebsiteRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -35,14 +36,18 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "PutBucketWebsite"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
- inline bool ShouldComputeContentMd5() const override { return true; }
+ AWS_S3_API Aws::String GetChecksumAlgorithmName() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The bucket name.</p>
@@ -90,8 +95,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline const Aws::String& GetContentMD5() const{ return m_contentMD5; }
@@ -100,8 +105,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline bool ContentMD5HasBeenSet() const { return m_contentMD5HasBeenSet; }
@@ -110,8 +115,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline void SetContentMD5(const Aws::String& value) { m_contentMD5HasBeenSet = true; m_contentMD5 = value; }
@@ -120,8 +125,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline void SetContentMD5(Aws::String&& value) { m_contentMD5HasBeenSet = true; m_contentMD5 = std::move(value); }
@@ -130,8 +135,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline void SetContentMD5(const char* value) { m_contentMD5HasBeenSet = true; m_contentMD5.assign(value); }
@@ -140,8 +145,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline PutBucketWebsiteRequest& WithContentMD5(const Aws::String& value) { SetContentMD5(value); return *this;}
@@ -150,8 +155,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline PutBucketWebsiteRequest& WithContentMD5(Aws::String&& value) { SetContentMD5(std::move(value)); return *this;}
@@ -160,13 +165,98 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, see <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864</a>.</p> <p>For requests
- * made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is
- * calculated automatically.</p>
+ * made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web
+ * Services SDKs, this field is calculated automatically.</p>
*/
inline PutBucketWebsiteRequest& WithContentMD5(const char* value) { SetContentMD5(value); return *this;}
/**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline const ChecksumAlgorithm& GetChecksumAlgorithm() const{ return m_checksumAlgorithm; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline bool ChecksumAlgorithmHasBeenSet() const { return m_checksumAlgorithmHasBeenSet; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(const ChecksumAlgorithm& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = value; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(ChecksumAlgorithm&& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = std::move(value); }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline PutBucketWebsiteRequest& WithChecksumAlgorithm(const ChecksumAlgorithm& value) { SetChecksumAlgorithm(value); return *this;}
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline PutBucketWebsiteRequest& WithChecksumAlgorithm(ChecksumAlgorithm&& value) { SetChecksumAlgorithm(std::move(value)); return *this;}
+
+
+ /**
* <p>Container for the request.</p>
*/
inline const WebsiteConfiguration& GetWebsiteConfiguration() const{ return m_websiteConfiguration; }
@@ -199,57 +289,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketWebsiteRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketWebsiteRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutBucketWebsiteRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -296,19 +386,22 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_contentMD5;
- bool m_contentMD5HasBeenSet;
+ bool m_contentMD5HasBeenSet = false;
+
+ ChecksumAlgorithm m_checksumAlgorithm;
+ bool m_checksumAlgorithmHasBeenSet = false;
WebsiteConfiguration m_websiteConfiguration;
- bool m_websiteConfigurationHasBeenSet;
+ bool m_websiteConfigurationHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectAclRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectAclRequest.h
index 8ee776e41a..d289ca8aff 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectAclRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectAclRequest.h
@@ -9,6 +9,7 @@
#include <aws/s3/model/ObjectCannedACL.h>
#include <aws/s3/model/AccessControlPolicy.h>
#include <aws/core/utils/memory/stl/AWSString.h>
+#include <aws/s3/model/ChecksumAlgorithm.h>
#include <aws/s3/model/RequestPayer.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
#include <utility>
@@ -26,10 +27,10 @@ namespace Model
/**
*/
- class AWS_S3_API PutObjectAclRequest : public S3Request
+ class PutObjectAclRequest : public S3Request
{
public:
- PutObjectAclRequest();
+ AWS_S3_API PutObjectAclRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -37,14 +38,18 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "PutObjectAcl"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
- inline bool ShouldComputeContentMd5() const override { return true; }
+ AWS_S3_API Aws::String GetChecksumAlgorithmName() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The canned ACL to apply to the object. For more information, see <a
@@ -131,11 +136,11 @@ namespace Model
* </p> <p>When using this action with an access point, you must direct requests to
* the access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const Aws::String& GetBucket() const{ return m_bucket; }
@@ -144,11 +149,11 @@ namespace Model
* </p> <p>When using this action with an access point, you must direct requests to
* the access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; }
@@ -157,11 +162,11 @@ namespace Model
* </p> <p>When using this action with an access point, you must direct requests to
* the access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; }
@@ -170,11 +175,11 @@ namespace Model
* </p> <p>When using this action with an access point, you must direct requests to
* the access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); }
@@ -183,11 +188,11 @@ namespace Model
* </p> <p>When using this action with an access point, you must direct requests to
* the access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); }
@@ -196,11 +201,11 @@ namespace Model
* </p> <p>When using this action with an access point, you must direct requests to
* the access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline PutObjectAclRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;}
@@ -209,11 +214,11 @@ namespace Model
* </p> <p>When using this action with an access point, you must direct requests to
* the access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline PutObjectAclRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;}
@@ -222,11 +227,11 @@ namespace Model
* </p> <p>When using this action with an access point, you must direct requests to
* the access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline PutObjectAclRequest& WithBucket(const char* value) { SetBucket(value); return *this;}
@@ -236,8 +241,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, go to <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864.&gt;</a> </p> <p>For
- * requests made using the AWS Command Line Interface (CLI) or AWS SDKs, this field
- * is calculated automatically.</p>
+ * requests made using the Amazon Web Services Command Line Interface (CLI) or
+ * Amazon Web Services SDKs, this field is calculated automatically.</p>
*/
inline const Aws::String& GetContentMD5() const{ return m_contentMD5; }
@@ -246,8 +251,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, go to <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864.&gt;</a> </p> <p>For
- * requests made using the AWS Command Line Interface (CLI) or AWS SDKs, this field
- * is calculated automatically.</p>
+ * requests made using the Amazon Web Services Command Line Interface (CLI) or
+ * Amazon Web Services SDKs, this field is calculated automatically.</p>
*/
inline bool ContentMD5HasBeenSet() const { return m_contentMD5HasBeenSet; }
@@ -256,8 +261,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, go to <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864.&gt;</a> </p> <p>For
- * requests made using the AWS Command Line Interface (CLI) or AWS SDKs, this field
- * is calculated automatically.</p>
+ * requests made using the Amazon Web Services Command Line Interface (CLI) or
+ * Amazon Web Services SDKs, this field is calculated automatically.</p>
*/
inline void SetContentMD5(const Aws::String& value) { m_contentMD5HasBeenSet = true; m_contentMD5 = value; }
@@ -266,8 +271,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, go to <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864.&gt;</a> </p> <p>For
- * requests made using the AWS Command Line Interface (CLI) or AWS SDKs, this field
- * is calculated automatically.</p>
+ * requests made using the Amazon Web Services Command Line Interface (CLI) or
+ * Amazon Web Services SDKs, this field is calculated automatically.</p>
*/
inline void SetContentMD5(Aws::String&& value) { m_contentMD5HasBeenSet = true; m_contentMD5 = std::move(value); }
@@ -276,8 +281,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, go to <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864.&gt;</a> </p> <p>For
- * requests made using the AWS Command Line Interface (CLI) or AWS SDKs, this field
- * is calculated automatically.</p>
+ * requests made using the Amazon Web Services Command Line Interface (CLI) or
+ * Amazon Web Services SDKs, this field is calculated automatically.</p>
*/
inline void SetContentMD5(const char* value) { m_contentMD5HasBeenSet = true; m_contentMD5.assign(value); }
@@ -286,8 +291,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, go to <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864.&gt;</a> </p> <p>For
- * requests made using the AWS Command Line Interface (CLI) or AWS SDKs, this field
- * is calculated automatically.</p>
+ * requests made using the Amazon Web Services Command Line Interface (CLI) or
+ * Amazon Web Services SDKs, this field is calculated automatically.</p>
*/
inline PutObjectAclRequest& WithContentMD5(const Aws::String& value) { SetContentMD5(value); return *this;}
@@ -296,8 +301,8 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, go to <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864.&gt;</a> </p> <p>For
- * requests made using the AWS Command Line Interface (CLI) or AWS SDKs, this field
- * is calculated automatically.</p>
+ * requests made using the Amazon Web Services Command Line Interface (CLI) or
+ * Amazon Web Services SDKs, this field is calculated automatically.</p>
*/
inline PutObjectAclRequest& WithContentMD5(Aws::String&& value) { SetContentMD5(std::move(value)); return *this;}
@@ -306,13 +311,98 @@ namespace Model
* as a message integrity check to verify that the request body was not corrupted
* in transit. For more information, go to <a
* href="http://www.ietf.org/rfc/rfc1864.txt">RFC 1864.&gt;</a> </p> <p>For
- * requests made using the AWS Command Line Interface (CLI) or AWS SDKs, this field
- * is calculated automatically.</p>
+ * requests made using the Amazon Web Services Command Line Interface (CLI) or
+ * Amazon Web Services SDKs, this field is calculated automatically.</p>
*/
inline PutObjectAclRequest& WithContentMD5(const char* value) { SetContentMD5(value); return *this;}
/**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline const ChecksumAlgorithm& GetChecksumAlgorithm() const{ return m_checksumAlgorithm; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline bool ChecksumAlgorithmHasBeenSet() const { return m_checksumAlgorithmHasBeenSet; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(const ChecksumAlgorithm& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = value; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(ChecksumAlgorithm&& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = std::move(value); }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline PutObjectAclRequest& WithChecksumAlgorithm(const ChecksumAlgorithm& value) { SetChecksumAlgorithm(value); return *this;}
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline PutObjectAclRequest& WithChecksumAlgorithm(ChecksumAlgorithm&& value) { SetChecksumAlgorithm(std::move(value)); return *this;}
+
+
+ /**
* <p>Allows grantee the read, write, read ACP, and write ACP permissions on the
* bucket.</p> <p>This action is not supported by Amazon S3 on Outposts.</p>
*/
@@ -460,42 +550,58 @@ namespace Model
/**
- * <p>Allows grantee to create, overwrite, and delete any object in the bucket.</p>
+ * <p>Allows grantee to create new objects in the bucket.</p> <p>For the bucket and
+ * object owners of existing objects, also allows deletions and overwrites of those
+ * objects.</p>
*/
inline const Aws::String& GetGrantWrite() const{ return m_grantWrite; }
/**
- * <p>Allows grantee to create, overwrite, and delete any object in the bucket.</p>
+ * <p>Allows grantee to create new objects in the bucket.</p> <p>For the bucket and
+ * object owners of existing objects, also allows deletions and overwrites of those
+ * objects.</p>
*/
inline bool GrantWriteHasBeenSet() const { return m_grantWriteHasBeenSet; }
/**
- * <p>Allows grantee to create, overwrite, and delete any object in the bucket.</p>
+ * <p>Allows grantee to create new objects in the bucket.</p> <p>For the bucket and
+ * object owners of existing objects, also allows deletions and overwrites of those
+ * objects.</p>
*/
inline void SetGrantWrite(const Aws::String& value) { m_grantWriteHasBeenSet = true; m_grantWrite = value; }
/**
- * <p>Allows grantee to create, overwrite, and delete any object in the bucket.</p>
+ * <p>Allows grantee to create new objects in the bucket.</p> <p>For the bucket and
+ * object owners of existing objects, also allows deletions and overwrites of those
+ * objects.</p>
*/
inline void SetGrantWrite(Aws::String&& value) { m_grantWriteHasBeenSet = true; m_grantWrite = std::move(value); }
/**
- * <p>Allows grantee to create, overwrite, and delete any object in the bucket.</p>
+ * <p>Allows grantee to create new objects in the bucket.</p> <p>For the bucket and
+ * object owners of existing objects, also allows deletions and overwrites of those
+ * objects.</p>
*/
inline void SetGrantWrite(const char* value) { m_grantWriteHasBeenSet = true; m_grantWrite.assign(value); }
/**
- * <p>Allows grantee to create, overwrite, and delete any object in the bucket.</p>
+ * <p>Allows grantee to create new objects in the bucket.</p> <p>For the bucket and
+ * object owners of existing objects, also allows deletions and overwrites of those
+ * objects.</p>
*/
inline PutObjectAclRequest& WithGrantWrite(const Aws::String& value) { SetGrantWrite(value); return *this;}
/**
- * <p>Allows grantee to create, overwrite, and delete any object in the bucket.</p>
+ * <p>Allows grantee to create new objects in the bucket.</p> <p>For the bucket and
+ * object owners of existing objects, also allows deletions and overwrites of those
+ * objects.</p>
*/
inline PutObjectAclRequest& WithGrantWrite(Aws::String&& value) { SetGrantWrite(std::move(value)); return *this;}
/**
- * <p>Allows grantee to create, overwrite, and delete any object in the bucket.</p>
+ * <p>Allows grantee to create new objects in the bucket.</p> <p>For the bucket and
+ * object owners of existing objects, also allows deletions and overwrites of those
+ * objects.</p>
*/
inline PutObjectAclRequest& WithGrantWrite(const char* value) { SetGrantWrite(value); return *this;}
@@ -554,19 +660,19 @@ namespace Model
* with an access point, you must direct requests to the access point hostname. The
* access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const Aws::String& GetKey() const{ return m_key; }
@@ -575,19 +681,19 @@ namespace Model
* with an access point, you must direct requests to the access point hostname. The
* access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline bool KeyHasBeenSet() const { return m_keyHasBeenSet; }
@@ -596,19 +702,19 @@ namespace Model
* with an access point, you must direct requests to the access point hostname. The
* access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetKey(const Aws::String& value) { m_keyHasBeenSet = true; m_key = value; }
@@ -617,19 +723,19 @@ namespace Model
* with an access point, you must direct requests to the access point hostname. The
* access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetKey(Aws::String&& value) { m_keyHasBeenSet = true; m_key = std::move(value); }
@@ -638,19 +744,19 @@ namespace Model
* with an access point, you must direct requests to the access point hostname. The
* access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetKey(const char* value) { m_keyHasBeenSet = true; m_key.assign(value); }
@@ -659,19 +765,19 @@ namespace Model
* with an access point, you must direct requests to the access point hostname. The
* access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline PutObjectAclRequest& WithKey(const Aws::String& value) { SetKey(value); return *this;}
@@ -680,19 +786,19 @@ namespace Model
* with an access point, you must direct requests to the access point hostname. The
* access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline PutObjectAclRequest& WithKey(Aws::String&& value) { SetKey(std::move(value)); return *this;}
@@ -701,19 +807,19 @@ namespace Model
* with an access point, you must direct requests to the access point hostname. The
* access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline PutObjectAclRequest& WithKey(const char* value) { SetKey(value); return *this;}
@@ -780,57 +886,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutObjectAclRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutObjectAclRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutObjectAclRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -877,46 +983,49 @@ namespace Model
private:
ObjectCannedACL m_aCL;
- bool m_aCLHasBeenSet;
+ bool m_aCLHasBeenSet = false;
AccessControlPolicy m_accessControlPolicy;
- bool m_accessControlPolicyHasBeenSet;
+ bool m_accessControlPolicyHasBeenSet = false;
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_contentMD5;
- bool m_contentMD5HasBeenSet;
+ bool m_contentMD5HasBeenSet = false;
+
+ ChecksumAlgorithm m_checksumAlgorithm;
+ bool m_checksumAlgorithmHasBeenSet = false;
Aws::String m_grantFullControl;
- bool m_grantFullControlHasBeenSet;
+ bool m_grantFullControlHasBeenSet = false;
Aws::String m_grantRead;
- bool m_grantReadHasBeenSet;
+ bool m_grantReadHasBeenSet = false;
Aws::String m_grantReadACP;
- bool m_grantReadACPHasBeenSet;
+ bool m_grantReadACPHasBeenSet = false;
Aws::String m_grantWrite;
- bool m_grantWriteHasBeenSet;
+ bool m_grantWriteHasBeenSet = false;
Aws::String m_grantWriteACP;
- bool m_grantWriteACPHasBeenSet;
+ bool m_grantWriteACPHasBeenSet = false;
Aws::String m_key;
- bool m_keyHasBeenSet;
+ bool m_keyHasBeenSet = false;
RequestPayer m_requestPayer;
- bool m_requestPayerHasBeenSet;
+ bool m_requestPayerHasBeenSet = false;
Aws::String m_versionId;
- bool m_versionIdHasBeenSet;
+ bool m_versionIdHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectAclResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectAclResult.h
index 0047bbca99..a2d4799c34 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectAclResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectAclResult.h
@@ -24,12 +24,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API PutObjectAclResult
+ class PutObjectAclResult
{
public:
- PutObjectAclResult();
- PutObjectAclResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- PutObjectAclResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API PutObjectAclResult();
+ AWS_S3_API PutObjectAclResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API PutObjectAclResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectLegalHoldRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectLegalHoldRequest.h
index ad7edb3d02..31814effa7 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectLegalHoldRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectLegalHoldRequest.h
@@ -9,6 +9,7 @@
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/s3/model/ObjectLockLegalHold.h>
#include <aws/s3/model/RequestPayer.h>
+#include <aws/s3/model/ChecksumAlgorithm.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
#include <utility>
@@ -25,10 +26,10 @@ namespace Model
/**
*/
- class AWS_S3_API PutObjectLegalHoldRequest : public S3Request
+ class PutObjectLegalHoldRequest : public S3Request
{
public:
- PutObjectLegalHoldRequest();
+ AWS_S3_API PutObjectLegalHoldRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -36,193 +37,197 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "PutObjectLegalHold"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
- inline bool ShouldComputeContentMd5() const override { return true; }
+ AWS_S3_API Aws::String GetChecksumAlgorithmName() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
- * <p>The bucket name containing the object that you want to place a Legal Hold on.
+ * <p>The bucket name containing the object that you want to place a legal hold on.
* </p> <p>When using this action with an access point, you must direct requests to
* the access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const Aws::String& GetBucket() const{ return m_bucket; }
/**
- * <p>The bucket name containing the object that you want to place a Legal Hold on.
+ * <p>The bucket name containing the object that you want to place a legal hold on.
* </p> <p>When using this action with an access point, you must direct requests to
* the access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; }
/**
- * <p>The bucket name containing the object that you want to place a Legal Hold on.
+ * <p>The bucket name containing the object that you want to place a legal hold on.
* </p> <p>When using this action with an access point, you must direct requests to
* the access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; }
/**
- * <p>The bucket name containing the object that you want to place a Legal Hold on.
+ * <p>The bucket name containing the object that you want to place a legal hold on.
* </p> <p>When using this action with an access point, you must direct requests to
* the access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); }
/**
- * <p>The bucket name containing the object that you want to place a Legal Hold on.
+ * <p>The bucket name containing the object that you want to place a legal hold on.
* </p> <p>When using this action with an access point, you must direct requests to
* the access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); }
/**
- * <p>The bucket name containing the object that you want to place a Legal Hold on.
+ * <p>The bucket name containing the object that you want to place a legal hold on.
* </p> <p>When using this action with an access point, you must direct requests to
* the access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline PutObjectLegalHoldRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;}
/**
- * <p>The bucket name containing the object that you want to place a Legal Hold on.
+ * <p>The bucket name containing the object that you want to place a legal hold on.
* </p> <p>When using this action with an access point, you must direct requests to
* the access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline PutObjectLegalHoldRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;}
/**
- * <p>The bucket name containing the object that you want to place a Legal Hold on.
+ * <p>The bucket name containing the object that you want to place a legal hold on.
* </p> <p>When using this action with an access point, you must direct requests to
* the access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline PutObjectLegalHoldRequest& WithBucket(const char* value) { SetBucket(value); return *this;}
/**
- * <p>The key name for the object that you want to place a Legal Hold on.</p>
+ * <p>The key name for the object that you want to place a legal hold on.</p>
*/
inline const Aws::String& GetKey() const{ return m_key; }
/**
- * <p>The key name for the object that you want to place a Legal Hold on.</p>
+ * <p>The key name for the object that you want to place a legal hold on.</p>
*/
inline bool KeyHasBeenSet() const { return m_keyHasBeenSet; }
/**
- * <p>The key name for the object that you want to place a Legal Hold on.</p>
+ * <p>The key name for the object that you want to place a legal hold on.</p>
*/
inline void SetKey(const Aws::String& value) { m_keyHasBeenSet = true; m_key = value; }
/**
- * <p>The key name for the object that you want to place a Legal Hold on.</p>
+ * <p>The key name for the object that you want to place a legal hold on.</p>
*/
inline void SetKey(Aws::String&& value) { m_keyHasBeenSet = true; m_key = std::move(value); }
/**
- * <p>The key name for the object that you want to place a Legal Hold on.</p>
+ * <p>The key name for the object that you want to place a legal hold on.</p>
*/
inline void SetKey(const char* value) { m_keyHasBeenSet = true; m_key.assign(value); }
/**
- * <p>The key name for the object that you want to place a Legal Hold on.</p>
+ * <p>The key name for the object that you want to place a legal hold on.</p>
*/
inline PutObjectLegalHoldRequest& WithKey(const Aws::String& value) { SetKey(value); return *this;}
/**
- * <p>The key name for the object that you want to place a Legal Hold on.</p>
+ * <p>The key name for the object that you want to place a legal hold on.</p>
*/
inline PutObjectLegalHoldRequest& WithKey(Aws::String&& value) { SetKey(std::move(value)); return *this;}
/**
- * <p>The key name for the object that you want to place a Legal Hold on.</p>
+ * <p>The key name for the object that you want to place a legal hold on.</p>
*/
inline PutObjectLegalHoldRequest& WithKey(const char* value) { SetKey(value); return *this;}
/**
- * <p>Container element for the Legal Hold configuration you want to apply to the
+ * <p>Container element for the legal hold configuration you want to apply to the
* specified object.</p>
*/
inline const ObjectLockLegalHold& GetLegalHold() const{ return m_legalHold; }
/**
- * <p>Container element for the Legal Hold configuration you want to apply to the
+ * <p>Container element for the legal hold configuration you want to apply to the
* specified object.</p>
*/
inline bool LegalHoldHasBeenSet() const { return m_legalHoldHasBeenSet; }
/**
- * <p>Container element for the Legal Hold configuration you want to apply to the
+ * <p>Container element for the legal hold configuration you want to apply to the
* specified object.</p>
*/
inline void SetLegalHold(const ObjectLockLegalHold& value) { m_legalHoldHasBeenSet = true; m_legalHold = value; }
/**
- * <p>Container element for the Legal Hold configuration you want to apply to the
+ * <p>Container element for the legal hold configuration you want to apply to the
* specified object.</p>
*/
inline void SetLegalHold(ObjectLockLegalHold&& value) { m_legalHoldHasBeenSet = true; m_legalHold = std::move(value); }
/**
- * <p>Container element for the Legal Hold configuration you want to apply to the
+ * <p>Container element for the legal hold configuration you want to apply to the
* specified object.</p>
*/
inline PutObjectLegalHoldRequest& WithLegalHold(const ObjectLockLegalHold& value) { SetLegalHold(value); return *this;}
/**
- * <p>Container element for the Legal Hold configuration you want to apply to the
+ * <p>Container element for the legal hold configuration you want to apply to the
* specified object.</p>
*/
inline PutObjectLegalHoldRequest& WithLegalHold(ObjectLockLegalHold&& value) { SetLegalHold(std::move(value)); return *this;}
@@ -248,156 +253,241 @@ namespace Model
/**
- * <p>The version ID of the object that you want to place a Legal Hold on.</p>
+ * <p>The version ID of the object that you want to place a legal hold on.</p>
*/
inline const Aws::String& GetVersionId() const{ return m_versionId; }
/**
- * <p>The version ID of the object that you want to place a Legal Hold on.</p>
+ * <p>The version ID of the object that you want to place a legal hold on.</p>
*/
inline bool VersionIdHasBeenSet() const { return m_versionIdHasBeenSet; }
/**
- * <p>The version ID of the object that you want to place a Legal Hold on.</p>
+ * <p>The version ID of the object that you want to place a legal hold on.</p>
*/
inline void SetVersionId(const Aws::String& value) { m_versionIdHasBeenSet = true; m_versionId = value; }
/**
- * <p>The version ID of the object that you want to place a Legal Hold on.</p>
+ * <p>The version ID of the object that you want to place a legal hold on.</p>
*/
inline void SetVersionId(Aws::String&& value) { m_versionIdHasBeenSet = true; m_versionId = std::move(value); }
/**
- * <p>The version ID of the object that you want to place a Legal Hold on.</p>
+ * <p>The version ID of the object that you want to place a legal hold on.</p>
*/
inline void SetVersionId(const char* value) { m_versionIdHasBeenSet = true; m_versionId.assign(value); }
/**
- * <p>The version ID of the object that you want to place a Legal Hold on.</p>
+ * <p>The version ID of the object that you want to place a legal hold on.</p>
*/
inline PutObjectLegalHoldRequest& WithVersionId(const Aws::String& value) { SetVersionId(value); return *this;}
/**
- * <p>The version ID of the object that you want to place a Legal Hold on.</p>
+ * <p>The version ID of the object that you want to place a legal hold on.</p>
*/
inline PutObjectLegalHoldRequest& WithVersionId(Aws::String&& value) { SetVersionId(std::move(value)); return *this;}
/**
- * <p>The version ID of the object that you want to place a Legal Hold on.</p>
+ * <p>The version ID of the object that you want to place a legal hold on.</p>
*/
inline PutObjectLegalHoldRequest& WithVersionId(const char* value) { SetVersionId(value); return *this;}
/**
- * <p>The MD5 hash for the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash for the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline const Aws::String& GetContentMD5() const{ return m_contentMD5; }
/**
- * <p>The MD5 hash for the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash for the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline bool ContentMD5HasBeenSet() const { return m_contentMD5HasBeenSet; }
/**
- * <p>The MD5 hash for the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash for the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline void SetContentMD5(const Aws::String& value) { m_contentMD5HasBeenSet = true; m_contentMD5 = value; }
/**
- * <p>The MD5 hash for the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash for the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline void SetContentMD5(Aws::String&& value) { m_contentMD5HasBeenSet = true; m_contentMD5 = std::move(value); }
/**
- * <p>The MD5 hash for the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash for the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline void SetContentMD5(const char* value) { m_contentMD5HasBeenSet = true; m_contentMD5.assign(value); }
/**
- * <p>The MD5 hash for the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash for the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline PutObjectLegalHoldRequest& WithContentMD5(const Aws::String& value) { SetContentMD5(value); return *this;}
/**
- * <p>The MD5 hash for the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash for the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline PutObjectLegalHoldRequest& WithContentMD5(Aws::String&& value) { SetContentMD5(std::move(value)); return *this;}
/**
- * <p>The MD5 hash for the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash for the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline PutObjectLegalHoldRequest& WithContentMD5(const char* value) { SetContentMD5(value); return *this;}
/**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline const ChecksumAlgorithm& GetChecksumAlgorithm() const{ return m_checksumAlgorithm; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline bool ChecksumAlgorithmHasBeenSet() const { return m_checksumAlgorithmHasBeenSet; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(const ChecksumAlgorithm& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = value; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(ChecksumAlgorithm&& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = std::move(value); }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline PutObjectLegalHoldRequest& WithChecksumAlgorithm(const ChecksumAlgorithm& value) { SetChecksumAlgorithm(value); return *this;}
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline PutObjectLegalHoldRequest& WithChecksumAlgorithm(ChecksumAlgorithm&& value) { SetChecksumAlgorithm(std::move(value)); return *this;}
+
+
+ /**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutObjectLegalHoldRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutObjectLegalHoldRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutObjectLegalHoldRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -444,28 +534,31 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_key;
- bool m_keyHasBeenSet;
+ bool m_keyHasBeenSet = false;
ObjectLockLegalHold m_legalHold;
- bool m_legalHoldHasBeenSet;
+ bool m_legalHoldHasBeenSet = false;
RequestPayer m_requestPayer;
- bool m_requestPayerHasBeenSet;
+ bool m_requestPayerHasBeenSet = false;
Aws::String m_versionId;
- bool m_versionIdHasBeenSet;
+ bool m_versionIdHasBeenSet = false;
Aws::String m_contentMD5;
- bool m_contentMD5HasBeenSet;
+ bool m_contentMD5HasBeenSet = false;
+
+ ChecksumAlgorithm m_checksumAlgorithm;
+ bool m_checksumAlgorithmHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectLegalHoldResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectLegalHoldResult.h
index f4322c70f9..85301e413a 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectLegalHoldResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectLegalHoldResult.h
@@ -24,12 +24,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API PutObjectLegalHoldResult
+ class PutObjectLegalHoldResult
{
public:
- PutObjectLegalHoldResult();
- PutObjectLegalHoldResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- PutObjectLegalHoldResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API PutObjectLegalHoldResult();
+ AWS_S3_API PutObjectLegalHoldResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API PutObjectLegalHoldResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectLockConfigurationRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectLockConfigurationRequest.h
index 4ffc75c531..40a9a1287f 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectLockConfigurationRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectLockConfigurationRequest.h
@@ -9,6 +9,7 @@
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/s3/model/ObjectLockConfiguration.h>
#include <aws/s3/model/RequestPayer.h>
+#include <aws/s3/model/ChecksumAlgorithm.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
#include <utility>
@@ -25,10 +26,10 @@ namespace Model
/**
*/
- class AWS_S3_API PutObjectLockConfigurationRequest : public S3Request
+ class PutObjectLockConfigurationRequest : public S3Request
{
public:
- PutObjectLockConfigurationRequest();
+ AWS_S3_API PutObjectLockConfigurationRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -36,14 +37,18 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "PutObjectLockConfiguration"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
- inline bool ShouldComputeContentMd5() const override { return true; }
+ AWS_S3_API Aws::String GetChecksumAlgorithmName() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The bucket whose Object Lock configuration you want to create or replace.</p>
@@ -184,115 +189,200 @@ namespace Model
/**
- * <p>The MD5 hash for the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash for the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline const Aws::String& GetContentMD5() const{ return m_contentMD5; }
/**
- * <p>The MD5 hash for the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash for the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline bool ContentMD5HasBeenSet() const { return m_contentMD5HasBeenSet; }
/**
- * <p>The MD5 hash for the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash for the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline void SetContentMD5(const Aws::String& value) { m_contentMD5HasBeenSet = true; m_contentMD5 = value; }
/**
- * <p>The MD5 hash for the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash for the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline void SetContentMD5(Aws::String&& value) { m_contentMD5HasBeenSet = true; m_contentMD5 = std::move(value); }
/**
- * <p>The MD5 hash for the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash for the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline void SetContentMD5(const char* value) { m_contentMD5HasBeenSet = true; m_contentMD5.assign(value); }
/**
- * <p>The MD5 hash for the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash for the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline PutObjectLockConfigurationRequest& WithContentMD5(const Aws::String& value) { SetContentMD5(value); return *this;}
/**
- * <p>The MD5 hash for the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash for the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline PutObjectLockConfigurationRequest& WithContentMD5(Aws::String&& value) { SetContentMD5(std::move(value)); return *this;}
/**
- * <p>The MD5 hash for the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash for the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline PutObjectLockConfigurationRequest& WithContentMD5(const char* value) { SetContentMD5(value); return *this;}
/**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline const ChecksumAlgorithm& GetChecksumAlgorithm() const{ return m_checksumAlgorithm; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline bool ChecksumAlgorithmHasBeenSet() const { return m_checksumAlgorithmHasBeenSet; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(const ChecksumAlgorithm& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = value; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(ChecksumAlgorithm&& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = std::move(value); }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline PutObjectLockConfigurationRequest& WithChecksumAlgorithm(const ChecksumAlgorithm& value) { SetChecksumAlgorithm(value); return *this;}
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline PutObjectLockConfigurationRequest& WithChecksumAlgorithm(ChecksumAlgorithm&& value) { SetChecksumAlgorithm(std::move(value)); return *this;}
+
+
+ /**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutObjectLockConfigurationRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutObjectLockConfigurationRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutObjectLockConfigurationRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -339,25 +429,28 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
ObjectLockConfiguration m_objectLockConfiguration;
- bool m_objectLockConfigurationHasBeenSet;
+ bool m_objectLockConfigurationHasBeenSet = false;
RequestPayer m_requestPayer;
- bool m_requestPayerHasBeenSet;
+ bool m_requestPayerHasBeenSet = false;
Aws::String m_token;
- bool m_tokenHasBeenSet;
+ bool m_tokenHasBeenSet = false;
Aws::String m_contentMD5;
- bool m_contentMD5HasBeenSet;
+ bool m_contentMD5HasBeenSet = false;
+
+ ChecksumAlgorithm m_checksumAlgorithm;
+ bool m_checksumAlgorithmHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectLockConfigurationResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectLockConfigurationResult.h
index c3b86b53d5..85017a3dd2 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectLockConfigurationResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectLockConfigurationResult.h
@@ -24,12 +24,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API PutObjectLockConfigurationResult
+ class PutObjectLockConfigurationResult
{
public:
- PutObjectLockConfigurationResult();
- PutObjectLockConfigurationResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- PutObjectLockConfigurationResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API PutObjectLockConfigurationResult();
+ AWS_S3_API PutObjectLockConfigurationResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API PutObjectLockConfigurationResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectRequest.h
index b2c872004c..d38708d197 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectRequest.h
@@ -9,6 +9,7 @@
#include <aws/s3/model/ObjectCannedACL.h>
#include <aws/core/utils/Array.h>
#include <aws/core/utils/memory/stl/AWSString.h>
+#include <aws/s3/model/ChecksumAlgorithm.h>
#include <aws/core/utils/DateTime.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
#include <aws/s3/model/ServerSideEncryption.h>
@@ -31,10 +32,10 @@ namespace Model
/**
*/
- class AWS_S3_API PutObjectRequest : public StreamingS3Request
+ class PutObjectRequest : public StreamingS3Request
{
public:
- PutObjectRequest();
+ AWS_S3_API PutObjectRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -42,10 +43,16 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "PutObject"; }
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::String GetChecksumAlgorithmName() const override;
+
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The canned ACL to apply to the object. For more information, see <a
@@ -95,19 +102,19 @@ namespace Model
* this action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const Aws::String& GetBucket() const{ return m_bucket; }
@@ -116,19 +123,19 @@ namespace Model
* this action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; }
@@ -137,19 +144,19 @@ namespace Model
* this action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; }
@@ -158,19 +165,19 @@ namespace Model
* this action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); }
@@ -179,19 +186,19 @@ namespace Model
* this action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); }
@@ -200,19 +207,19 @@ namespace Model
* this action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline PutObjectRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;}
@@ -221,19 +228,19 @@ namespace Model
* this action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline PutObjectRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;}
@@ -242,19 +249,19 @@ namespace Model
* this action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline PutObjectRequest& WithBucket(const char* value) { SetBucket(value); return *this;}
@@ -598,6 +605,407 @@ namespace Model
/**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline const ChecksumAlgorithm& GetChecksumAlgorithm() const{ return m_checksumAlgorithm; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline bool ChecksumAlgorithmHasBeenSet() const { return m_checksumAlgorithmHasBeenSet; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(const ChecksumAlgorithm& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = value; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(ChecksumAlgorithm&& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = std::move(value); }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline PutObjectRequest& WithChecksumAlgorithm(const ChecksumAlgorithm& value) { SetChecksumAlgorithm(value); return *this;}
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline PutObjectRequest& WithChecksumAlgorithm(ChecksumAlgorithm&& value) { SetChecksumAlgorithm(std::move(value)); return *this;}
+
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumCRC32() const{ return m_checksumCRC32; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool ChecksumCRC32HasBeenSet() const { return m_checksumCRC32HasBeenSet; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(const Aws::String& value) { m_checksumCRC32HasBeenSet = true; m_checksumCRC32 = value; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(Aws::String&& value) { m_checksumCRC32HasBeenSet = true; m_checksumCRC32 = std::move(value); }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(const char* value) { m_checksumCRC32HasBeenSet = true; m_checksumCRC32.assign(value); }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline PutObjectRequest& WithChecksumCRC32(const Aws::String& value) { SetChecksumCRC32(value); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline PutObjectRequest& WithChecksumCRC32(Aws::String&& value) { SetChecksumCRC32(std::move(value)); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline PutObjectRequest& WithChecksumCRC32(const char* value) { SetChecksumCRC32(value); return *this;}
+
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32C checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumCRC32C() const{ return m_checksumCRC32C; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32C checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool ChecksumCRC32CHasBeenSet() const { return m_checksumCRC32CHasBeenSet; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32C checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(const Aws::String& value) { m_checksumCRC32CHasBeenSet = true; m_checksumCRC32C = value; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32C checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(Aws::String&& value) { m_checksumCRC32CHasBeenSet = true; m_checksumCRC32C = std::move(value); }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32C checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(const char* value) { m_checksumCRC32CHasBeenSet = true; m_checksumCRC32C.assign(value); }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32C checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline PutObjectRequest& WithChecksumCRC32C(const Aws::String& value) { SetChecksumCRC32C(value); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32C checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline PutObjectRequest& WithChecksumCRC32C(Aws::String&& value) { SetChecksumCRC32C(std::move(value)); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32C checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline PutObjectRequest& WithChecksumCRC32C(const char* value) { SetChecksumCRC32C(value); return *this;}
+
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 160-bit SHA-1 digest of the object. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumSHA1() const{ return m_checksumSHA1; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 160-bit SHA-1 digest of the object. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool ChecksumSHA1HasBeenSet() const { return m_checksumSHA1HasBeenSet; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 160-bit SHA-1 digest of the object. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(const Aws::String& value) { m_checksumSHA1HasBeenSet = true; m_checksumSHA1 = value; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 160-bit SHA-1 digest of the object. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(Aws::String&& value) { m_checksumSHA1HasBeenSet = true; m_checksumSHA1 = std::move(value); }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 160-bit SHA-1 digest of the object. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(const char* value) { m_checksumSHA1HasBeenSet = true; m_checksumSHA1.assign(value); }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 160-bit SHA-1 digest of the object. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline PutObjectRequest& WithChecksumSHA1(const Aws::String& value) { SetChecksumSHA1(value); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 160-bit SHA-1 digest of the object. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline PutObjectRequest& WithChecksumSHA1(Aws::String&& value) { SetChecksumSHA1(std::move(value)); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 160-bit SHA-1 digest of the object. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline PutObjectRequest& WithChecksumSHA1(const char* value) { SetChecksumSHA1(value); return *this;}
+
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumSHA256() const{ return m_checksumSHA256; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool ChecksumSHA256HasBeenSet() const { return m_checksumSHA256HasBeenSet; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(const Aws::String& value) { m_checksumSHA256HasBeenSet = true; m_checksumSHA256 = value; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(Aws::String&& value) { m_checksumSHA256HasBeenSet = true; m_checksumSHA256 = std::move(value); }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(const char* value) { m_checksumSHA256HasBeenSet = true; m_checksumSHA256.assign(value); }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline PutObjectRequest& WithChecksumSHA256(const Aws::String& value) { SetChecksumSHA256(value); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline PutObjectRequest& WithChecksumSHA256(Aws::String&& value) { SetChecksumSHA256(std::move(value)); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline PutObjectRequest& WithChecksumSHA256(const char* value) { SetChecksumSHA256(value); return *this;}
+
+
+ /**
* <p>The date and time at which the object is no longer cacheable. For more
* information, see <a
* href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.21">http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.21</a>.</p>
@@ -987,7 +1395,7 @@ namespace Model
* Storage Class. Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. For
* more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
- * Classes</a> in the <i>Amazon S3 Service Developer Guide</i>.</p>
+ * Classes</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const StorageClass& GetStorageClass() const{ return m_storageClass; }
@@ -998,7 +1406,7 @@ namespace Model
* Storage Class. Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. For
* more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
- * Classes</a> in the <i>Amazon S3 Service Developer Guide</i>.</p>
+ * Classes</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline bool StorageClassHasBeenSet() const { return m_storageClassHasBeenSet; }
@@ -1009,7 +1417,7 @@ namespace Model
* Storage Class. Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. For
* more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
- * Classes</a> in the <i>Amazon S3 Service Developer Guide</i>.</p>
+ * Classes</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetStorageClass(const StorageClass& value) { m_storageClassHasBeenSet = true; m_storageClass = value; }
@@ -1020,7 +1428,7 @@ namespace Model
* Storage Class. Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. For
* more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
- * Classes</a> in the <i>Amazon S3 Service Developer Guide</i>.</p>
+ * Classes</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetStorageClass(StorageClass&& value) { m_storageClassHasBeenSet = true; m_storageClass = std::move(value); }
@@ -1031,7 +1439,7 @@ namespace Model
* Storage Class. Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. For
* more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
- * Classes</a> in the <i>Amazon S3 Service Developer Guide</i>.</p>
+ * Classes</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline PutObjectRequest& WithStorageClass(const StorageClass& value) { SetStorageClass(value); return *this;}
@@ -1042,7 +1450,7 @@ namespace Model
* Storage Class. Amazon S3 on Outposts only uses the OUTPOSTS Storage Class. For
* more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
- * Classes</a> in the <i>Amazon S3 Service Developer Guide</i>.</p>
+ * Classes</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline PutObjectRequest& WithStorageClass(StorageClass&& value) { SetStorageClass(std::move(value)); return *this;}
@@ -1389,170 +1797,162 @@ namespace Model
/**
* <p>If <code>x-amz-server-side-encryption</code> is present and has the value of
- * <code>aws:kms</code>, this header specifies the ID of the AWS Key Management
- * Service (AWS KMS) symmetrical customer managed customer master key (CMK) that
- * was used for the object.</p> <p> If the value of
- * <code>x-amz-server-side-encryption</code> is <code>aws:kms</code>, this header
- * specifies the ID of the symmetric customer managed AWS KMS CMK that will be used
- * for the object. If you specify
+ * <code>aws:kms</code>, this header specifies the ID of the Amazon Web Services
+ * Key Management Service (Amazon Web Services KMS) symmetrical customer managed
+ * key that was used for the object. If you specify
* <code>x-amz-server-side-encryption:aws:kms</code>, but do not provide<code>
- * x-amz-server-side-encryption-aws-kms-key-id</code>, Amazon S3 uses the AWS
- * managed CMK in AWS to protect the data.</p>
+ * x-amz-server-side-encryption-aws-kms-key-id</code>, Amazon S3 uses the Amazon
+ * Web Services managed key to protect the data. If the KMS key does not exist in
+ * the same account issuing the command, you must use the full ARN and not just the
+ * ID. </p>
*/
inline const Aws::String& GetSSEKMSKeyId() const{ return m_sSEKMSKeyId; }
/**
* <p>If <code>x-amz-server-side-encryption</code> is present and has the value of
- * <code>aws:kms</code>, this header specifies the ID of the AWS Key Management
- * Service (AWS KMS) symmetrical customer managed customer master key (CMK) that
- * was used for the object.</p> <p> If the value of
- * <code>x-amz-server-side-encryption</code> is <code>aws:kms</code>, this header
- * specifies the ID of the symmetric customer managed AWS KMS CMK that will be used
- * for the object. If you specify
+ * <code>aws:kms</code>, this header specifies the ID of the Amazon Web Services
+ * Key Management Service (Amazon Web Services KMS) symmetrical customer managed
+ * key that was used for the object. If you specify
* <code>x-amz-server-side-encryption:aws:kms</code>, but do not provide<code>
- * x-amz-server-side-encryption-aws-kms-key-id</code>, Amazon S3 uses the AWS
- * managed CMK in AWS to protect the data.</p>
+ * x-amz-server-side-encryption-aws-kms-key-id</code>, Amazon S3 uses the Amazon
+ * Web Services managed key to protect the data. If the KMS key does not exist in
+ * the same account issuing the command, you must use the full ARN and not just the
+ * ID. </p>
*/
inline bool SSEKMSKeyIdHasBeenSet() const { return m_sSEKMSKeyIdHasBeenSet; }
/**
* <p>If <code>x-amz-server-side-encryption</code> is present and has the value of
- * <code>aws:kms</code>, this header specifies the ID of the AWS Key Management
- * Service (AWS KMS) symmetrical customer managed customer master key (CMK) that
- * was used for the object.</p> <p> If the value of
- * <code>x-amz-server-side-encryption</code> is <code>aws:kms</code>, this header
- * specifies the ID of the symmetric customer managed AWS KMS CMK that will be used
- * for the object. If you specify
+ * <code>aws:kms</code>, this header specifies the ID of the Amazon Web Services
+ * Key Management Service (Amazon Web Services KMS) symmetrical customer managed
+ * key that was used for the object. If you specify
* <code>x-amz-server-side-encryption:aws:kms</code>, but do not provide<code>
- * x-amz-server-side-encryption-aws-kms-key-id</code>, Amazon S3 uses the AWS
- * managed CMK in AWS to protect the data.</p>
+ * x-amz-server-side-encryption-aws-kms-key-id</code>, Amazon S3 uses the Amazon
+ * Web Services managed key to protect the data. If the KMS key does not exist in
+ * the same account issuing the command, you must use the full ARN and not just the
+ * ID. </p>
*/
inline void SetSSEKMSKeyId(const Aws::String& value) { m_sSEKMSKeyIdHasBeenSet = true; m_sSEKMSKeyId = value; }
/**
* <p>If <code>x-amz-server-side-encryption</code> is present and has the value of
- * <code>aws:kms</code>, this header specifies the ID of the AWS Key Management
- * Service (AWS KMS) symmetrical customer managed customer master key (CMK) that
- * was used for the object.</p> <p> If the value of
- * <code>x-amz-server-side-encryption</code> is <code>aws:kms</code>, this header
- * specifies the ID of the symmetric customer managed AWS KMS CMK that will be used
- * for the object. If you specify
+ * <code>aws:kms</code>, this header specifies the ID of the Amazon Web Services
+ * Key Management Service (Amazon Web Services KMS) symmetrical customer managed
+ * key that was used for the object. If you specify
* <code>x-amz-server-side-encryption:aws:kms</code>, but do not provide<code>
- * x-amz-server-side-encryption-aws-kms-key-id</code>, Amazon S3 uses the AWS
- * managed CMK in AWS to protect the data.</p>
+ * x-amz-server-side-encryption-aws-kms-key-id</code>, Amazon S3 uses the Amazon
+ * Web Services managed key to protect the data. If the KMS key does not exist in
+ * the same account issuing the command, you must use the full ARN and not just the
+ * ID. </p>
*/
inline void SetSSEKMSKeyId(Aws::String&& value) { m_sSEKMSKeyIdHasBeenSet = true; m_sSEKMSKeyId = std::move(value); }
/**
* <p>If <code>x-amz-server-side-encryption</code> is present and has the value of
- * <code>aws:kms</code>, this header specifies the ID of the AWS Key Management
- * Service (AWS KMS) symmetrical customer managed customer master key (CMK) that
- * was used for the object.</p> <p> If the value of
- * <code>x-amz-server-side-encryption</code> is <code>aws:kms</code>, this header
- * specifies the ID of the symmetric customer managed AWS KMS CMK that will be used
- * for the object. If you specify
+ * <code>aws:kms</code>, this header specifies the ID of the Amazon Web Services
+ * Key Management Service (Amazon Web Services KMS) symmetrical customer managed
+ * key that was used for the object. If you specify
* <code>x-amz-server-side-encryption:aws:kms</code>, but do not provide<code>
- * x-amz-server-side-encryption-aws-kms-key-id</code>, Amazon S3 uses the AWS
- * managed CMK in AWS to protect the data.</p>
+ * x-amz-server-side-encryption-aws-kms-key-id</code>, Amazon S3 uses the Amazon
+ * Web Services managed key to protect the data. If the KMS key does not exist in
+ * the same account issuing the command, you must use the full ARN and not just the
+ * ID. </p>
*/
inline void SetSSEKMSKeyId(const char* value) { m_sSEKMSKeyIdHasBeenSet = true; m_sSEKMSKeyId.assign(value); }
/**
* <p>If <code>x-amz-server-side-encryption</code> is present and has the value of
- * <code>aws:kms</code>, this header specifies the ID of the AWS Key Management
- * Service (AWS KMS) symmetrical customer managed customer master key (CMK) that
- * was used for the object.</p> <p> If the value of
- * <code>x-amz-server-side-encryption</code> is <code>aws:kms</code>, this header
- * specifies the ID of the symmetric customer managed AWS KMS CMK that will be used
- * for the object. If you specify
+ * <code>aws:kms</code>, this header specifies the ID of the Amazon Web Services
+ * Key Management Service (Amazon Web Services KMS) symmetrical customer managed
+ * key that was used for the object. If you specify
* <code>x-amz-server-side-encryption:aws:kms</code>, but do not provide<code>
- * x-amz-server-side-encryption-aws-kms-key-id</code>, Amazon S3 uses the AWS
- * managed CMK in AWS to protect the data.</p>
+ * x-amz-server-side-encryption-aws-kms-key-id</code>, Amazon S3 uses the Amazon
+ * Web Services managed key to protect the data. If the KMS key does not exist in
+ * the same account issuing the command, you must use the full ARN and not just the
+ * ID. </p>
*/
inline PutObjectRequest& WithSSEKMSKeyId(const Aws::String& value) { SetSSEKMSKeyId(value); return *this;}
/**
* <p>If <code>x-amz-server-side-encryption</code> is present and has the value of
- * <code>aws:kms</code>, this header specifies the ID of the AWS Key Management
- * Service (AWS KMS) symmetrical customer managed customer master key (CMK) that
- * was used for the object.</p> <p> If the value of
- * <code>x-amz-server-side-encryption</code> is <code>aws:kms</code>, this header
- * specifies the ID of the symmetric customer managed AWS KMS CMK that will be used
- * for the object. If you specify
+ * <code>aws:kms</code>, this header specifies the ID of the Amazon Web Services
+ * Key Management Service (Amazon Web Services KMS) symmetrical customer managed
+ * key that was used for the object. If you specify
* <code>x-amz-server-side-encryption:aws:kms</code>, but do not provide<code>
- * x-amz-server-side-encryption-aws-kms-key-id</code>, Amazon S3 uses the AWS
- * managed CMK in AWS to protect the data.</p>
+ * x-amz-server-side-encryption-aws-kms-key-id</code>, Amazon S3 uses the Amazon
+ * Web Services managed key to protect the data. If the KMS key does not exist in
+ * the same account issuing the command, you must use the full ARN and not just the
+ * ID. </p>
*/
inline PutObjectRequest& WithSSEKMSKeyId(Aws::String&& value) { SetSSEKMSKeyId(std::move(value)); return *this;}
/**
* <p>If <code>x-amz-server-side-encryption</code> is present and has the value of
- * <code>aws:kms</code>, this header specifies the ID of the AWS Key Management
- * Service (AWS KMS) symmetrical customer managed customer master key (CMK) that
- * was used for the object.</p> <p> If the value of
- * <code>x-amz-server-side-encryption</code> is <code>aws:kms</code>, this header
- * specifies the ID of the symmetric customer managed AWS KMS CMK that will be used
- * for the object. If you specify
+ * <code>aws:kms</code>, this header specifies the ID of the Amazon Web Services
+ * Key Management Service (Amazon Web Services KMS) symmetrical customer managed
+ * key that was used for the object. If you specify
* <code>x-amz-server-side-encryption:aws:kms</code>, but do not provide<code>
- * x-amz-server-side-encryption-aws-kms-key-id</code>, Amazon S3 uses the AWS
- * managed CMK in AWS to protect the data.</p>
+ * x-amz-server-side-encryption-aws-kms-key-id</code>, Amazon S3 uses the Amazon
+ * Web Services managed key to protect the data. If the KMS key does not exist in
+ * the same account issuing the command, you must use the full ARN and not just the
+ * ID. </p>
*/
inline PutObjectRequest& WithSSEKMSKeyId(const char* value) { SetSSEKMSKeyId(value); return *this;}
/**
- * <p>Specifies the AWS KMS Encryption Context to use for object encryption. The
- * value of this header is a base64-encoded UTF-8 string holding JSON with the
- * encryption context key-value pairs.</p>
+ * <p>Specifies the Amazon Web Services KMS Encryption Context to use for object
+ * encryption. The value of this header is a base64-encoded UTF-8 string holding
+ * JSON with the encryption context key-value pairs.</p>
*/
inline const Aws::String& GetSSEKMSEncryptionContext() const{ return m_sSEKMSEncryptionContext; }
/**
- * <p>Specifies the AWS KMS Encryption Context to use for object encryption. The
- * value of this header is a base64-encoded UTF-8 string holding JSON with the
- * encryption context key-value pairs.</p>
+ * <p>Specifies the Amazon Web Services KMS Encryption Context to use for object
+ * encryption. The value of this header is a base64-encoded UTF-8 string holding
+ * JSON with the encryption context key-value pairs.</p>
*/
inline bool SSEKMSEncryptionContextHasBeenSet() const { return m_sSEKMSEncryptionContextHasBeenSet; }
/**
- * <p>Specifies the AWS KMS Encryption Context to use for object encryption. The
- * value of this header is a base64-encoded UTF-8 string holding JSON with the
- * encryption context key-value pairs.</p>
+ * <p>Specifies the Amazon Web Services KMS Encryption Context to use for object
+ * encryption. The value of this header is a base64-encoded UTF-8 string holding
+ * JSON with the encryption context key-value pairs.</p>
*/
inline void SetSSEKMSEncryptionContext(const Aws::String& value) { m_sSEKMSEncryptionContextHasBeenSet = true; m_sSEKMSEncryptionContext = value; }
/**
- * <p>Specifies the AWS KMS Encryption Context to use for object encryption. The
- * value of this header is a base64-encoded UTF-8 string holding JSON with the
- * encryption context key-value pairs.</p>
+ * <p>Specifies the Amazon Web Services KMS Encryption Context to use for object
+ * encryption. The value of this header is a base64-encoded UTF-8 string holding
+ * JSON with the encryption context key-value pairs.</p>
*/
inline void SetSSEKMSEncryptionContext(Aws::String&& value) { m_sSEKMSEncryptionContextHasBeenSet = true; m_sSEKMSEncryptionContext = std::move(value); }
/**
- * <p>Specifies the AWS KMS Encryption Context to use for object encryption. The
- * value of this header is a base64-encoded UTF-8 string holding JSON with the
- * encryption context key-value pairs.</p>
+ * <p>Specifies the Amazon Web Services KMS Encryption Context to use for object
+ * encryption. The value of this header is a base64-encoded UTF-8 string holding
+ * JSON with the encryption context key-value pairs.</p>
*/
inline void SetSSEKMSEncryptionContext(const char* value) { m_sSEKMSEncryptionContextHasBeenSet = true; m_sSEKMSEncryptionContext.assign(value); }
/**
- * <p>Specifies the AWS KMS Encryption Context to use for object encryption. The
- * value of this header is a base64-encoded UTF-8 string holding JSON with the
- * encryption context key-value pairs.</p>
+ * <p>Specifies the Amazon Web Services KMS Encryption Context to use for object
+ * encryption. The value of this header is a base64-encoded UTF-8 string holding
+ * JSON with the encryption context key-value pairs.</p>
*/
inline PutObjectRequest& WithSSEKMSEncryptionContext(const Aws::String& value) { SetSSEKMSEncryptionContext(value); return *this;}
/**
- * <p>Specifies the AWS KMS Encryption Context to use for object encryption. The
- * value of this header is a base64-encoded UTF-8 string holding JSON with the
- * encryption context key-value pairs.</p>
+ * <p>Specifies the Amazon Web Services KMS Encryption Context to use for object
+ * encryption. The value of this header is a base64-encoded UTF-8 string holding
+ * JSON with the encryption context key-value pairs.</p>
*/
inline PutObjectRequest& WithSSEKMSEncryptionContext(Aws::String&& value) { SetSSEKMSEncryptionContext(std::move(value)); return *this;}
/**
- * <p>Specifies the AWS KMS Encryption Context to use for object encryption. The
- * value of this header is a base64-encoded UTF-8 string holding JSON with the
- * encryption context key-value pairs.</p>
+ * <p>Specifies the Amazon Web Services KMS Encryption Context to use for object
+ * encryption. The value of this header is a base64-encoded UTF-8 string holding
+ * JSON with the encryption context key-value pairs.</p>
*/
inline PutObjectRequest& WithSSEKMSEncryptionContext(const char* value) { SetSSEKMSEncryptionContext(value); return *this;}
@@ -1694,32 +2094,38 @@ namespace Model
/**
- * <p>The date and time when you want this object's Object Lock to expire.</p>
+ * <p>The date and time when you want this object's Object Lock to expire. Must be
+ * formatted as a timestamp parameter.</p>
*/
inline const Aws::Utils::DateTime& GetObjectLockRetainUntilDate() const{ return m_objectLockRetainUntilDate; }
/**
- * <p>The date and time when you want this object's Object Lock to expire.</p>
+ * <p>The date and time when you want this object's Object Lock to expire. Must be
+ * formatted as a timestamp parameter.</p>
*/
inline bool ObjectLockRetainUntilDateHasBeenSet() const { return m_objectLockRetainUntilDateHasBeenSet; }
/**
- * <p>The date and time when you want this object's Object Lock to expire.</p>
+ * <p>The date and time when you want this object's Object Lock to expire. Must be
+ * formatted as a timestamp parameter.</p>
*/
inline void SetObjectLockRetainUntilDate(const Aws::Utils::DateTime& value) { m_objectLockRetainUntilDateHasBeenSet = true; m_objectLockRetainUntilDate = value; }
/**
- * <p>The date and time when you want this object's Object Lock to expire.</p>
+ * <p>The date and time when you want this object's Object Lock to expire. Must be
+ * formatted as a timestamp parameter.</p>
*/
inline void SetObjectLockRetainUntilDate(Aws::Utils::DateTime&& value) { m_objectLockRetainUntilDateHasBeenSet = true; m_objectLockRetainUntilDate = std::move(value); }
/**
- * <p>The date and time when you want this object's Object Lock to expire.</p>
+ * <p>The date and time when you want this object's Object Lock to expire. Must be
+ * formatted as a timestamp parameter.</p>
*/
inline PutObjectRequest& WithObjectLockRetainUntilDate(const Aws::Utils::DateTime& value) { SetObjectLockRetainUntilDate(value); return *this;}
/**
- * <p>The date and time when you want this object's Object Lock to expire.</p>
+ * <p>The date and time when you want this object's Object Lock to expire. Must be
+ * formatted as a timestamp parameter.</p>
*/
inline PutObjectRequest& WithObjectLockRetainUntilDate(Aws::Utils::DateTime&& value) { SetObjectLockRetainUntilDate(std::move(value)); return *this;}
@@ -1775,57 +2181,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutObjectRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutObjectRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutObjectRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -1872,98 +2278,113 @@ namespace Model
private:
ObjectCannedACL m_aCL;
- bool m_aCLHasBeenSet;
+ bool m_aCLHasBeenSet = false;
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_cacheControl;
- bool m_cacheControlHasBeenSet;
+ bool m_cacheControlHasBeenSet = false;
Aws::String m_contentDisposition;
- bool m_contentDispositionHasBeenSet;
+ bool m_contentDispositionHasBeenSet = false;
Aws::String m_contentEncoding;
- bool m_contentEncodingHasBeenSet;
+ bool m_contentEncodingHasBeenSet = false;
Aws::String m_contentLanguage;
- bool m_contentLanguageHasBeenSet;
+ bool m_contentLanguageHasBeenSet = false;
long long m_contentLength;
- bool m_contentLengthHasBeenSet;
+ bool m_contentLengthHasBeenSet = false;
Aws::String m_contentMD5;
- bool m_contentMD5HasBeenSet;
+ bool m_contentMD5HasBeenSet = false;
+
+ ChecksumAlgorithm m_checksumAlgorithm;
+ bool m_checksumAlgorithmHasBeenSet = false;
+
+ Aws::String m_checksumCRC32;
+ bool m_checksumCRC32HasBeenSet = false;
+
+ Aws::String m_checksumCRC32C;
+ bool m_checksumCRC32CHasBeenSet = false;
+
+ Aws::String m_checksumSHA1;
+ bool m_checksumSHA1HasBeenSet = false;
+
+ Aws::String m_checksumSHA256;
+ bool m_checksumSHA256HasBeenSet = false;
Aws::Utils::DateTime m_expires;
- bool m_expiresHasBeenSet;
+ bool m_expiresHasBeenSet = false;
Aws::String m_grantFullControl;
- bool m_grantFullControlHasBeenSet;
+ bool m_grantFullControlHasBeenSet = false;
Aws::String m_grantRead;
- bool m_grantReadHasBeenSet;
+ bool m_grantReadHasBeenSet = false;
Aws::String m_grantReadACP;
- bool m_grantReadACPHasBeenSet;
+ bool m_grantReadACPHasBeenSet = false;
Aws::String m_grantWriteACP;
- bool m_grantWriteACPHasBeenSet;
+ bool m_grantWriteACPHasBeenSet = false;
Aws::String m_key;
- bool m_keyHasBeenSet;
+ bool m_keyHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_metadata;
- bool m_metadataHasBeenSet;
+ bool m_metadataHasBeenSet = false;
ServerSideEncryption m_serverSideEncryption;
- bool m_serverSideEncryptionHasBeenSet;
+ bool m_serverSideEncryptionHasBeenSet = false;
StorageClass m_storageClass;
- bool m_storageClassHasBeenSet;
+ bool m_storageClassHasBeenSet = false;
Aws::String m_websiteRedirectLocation;
- bool m_websiteRedirectLocationHasBeenSet;
+ bool m_websiteRedirectLocationHasBeenSet = false;
Aws::String m_sSECustomerAlgorithm;
- bool m_sSECustomerAlgorithmHasBeenSet;
+ bool m_sSECustomerAlgorithmHasBeenSet = false;
Aws::String m_sSECustomerKey;
- bool m_sSECustomerKeyHasBeenSet;
+ bool m_sSECustomerKeyHasBeenSet = false;
Aws::String m_sSECustomerKeyMD5;
- bool m_sSECustomerKeyMD5HasBeenSet;
+ bool m_sSECustomerKeyMD5HasBeenSet = false;
Aws::String m_sSEKMSKeyId;
- bool m_sSEKMSKeyIdHasBeenSet;
+ bool m_sSEKMSKeyIdHasBeenSet = false;
Aws::String m_sSEKMSEncryptionContext;
- bool m_sSEKMSEncryptionContextHasBeenSet;
+ bool m_sSEKMSEncryptionContextHasBeenSet = false;
bool m_bucketKeyEnabled;
- bool m_bucketKeyEnabledHasBeenSet;
+ bool m_bucketKeyEnabledHasBeenSet = false;
RequestPayer m_requestPayer;
- bool m_requestPayerHasBeenSet;
+ bool m_requestPayerHasBeenSet = false;
Aws::String m_tagging;
- bool m_taggingHasBeenSet;
+ bool m_taggingHasBeenSet = false;
ObjectLockMode m_objectLockMode;
- bool m_objectLockModeHasBeenSet;
+ bool m_objectLockModeHasBeenSet = false;
Aws::Utils::DateTime m_objectLockRetainUntilDate;
- bool m_objectLockRetainUntilDateHasBeenSet;
+ bool m_objectLockRetainUntilDateHasBeenSet = false;
ObjectLockLegalHoldStatus m_objectLockLegalHoldStatus;
- bool m_objectLockLegalHoldStatusHasBeenSet;
+ bool m_objectLockLegalHoldStatusHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectResult.h
index f8b5bf13e7..71eac15963 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectResult.h
@@ -26,74 +26,74 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API PutObjectResult
+ class PutObjectResult
{
public:
- PutObjectResult();
- PutObjectResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- PutObjectResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API PutObjectResult();
+ AWS_S3_API PutObjectResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API PutObjectResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
- * <p> If the expiration is configured for the object (see <a
+ * <p>If the expiration is configured for the object (see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html">PutBucketLifecycleConfiguration</a>),
- * the response includes this header. It includes the expiry-date and rule-id
- * key-value pairs that provide information about object expiration. The value of
- * the rule-id is URL encoded.</p>
+ * the response includes this header. It includes the <code>expiry-date</code> and
+ * <code>rule-id</code> key-value pairs that provide information about object
+ * expiration. The value of the <code>rule-id</code> is URL-encoded.</p>
*/
inline const Aws::String& GetExpiration() const{ return m_expiration; }
/**
- * <p> If the expiration is configured for the object (see <a
+ * <p>If the expiration is configured for the object (see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html">PutBucketLifecycleConfiguration</a>),
- * the response includes this header. It includes the expiry-date and rule-id
- * key-value pairs that provide information about object expiration. The value of
- * the rule-id is URL encoded.</p>
+ * the response includes this header. It includes the <code>expiry-date</code> and
+ * <code>rule-id</code> key-value pairs that provide information about object
+ * expiration. The value of the <code>rule-id</code> is URL-encoded.</p>
*/
inline void SetExpiration(const Aws::String& value) { m_expiration = value; }
/**
- * <p> If the expiration is configured for the object (see <a
+ * <p>If the expiration is configured for the object (see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html">PutBucketLifecycleConfiguration</a>),
- * the response includes this header. It includes the expiry-date and rule-id
- * key-value pairs that provide information about object expiration. The value of
- * the rule-id is URL encoded.</p>
+ * the response includes this header. It includes the <code>expiry-date</code> and
+ * <code>rule-id</code> key-value pairs that provide information about object
+ * expiration. The value of the <code>rule-id</code> is URL-encoded.</p>
*/
inline void SetExpiration(Aws::String&& value) { m_expiration = std::move(value); }
/**
- * <p> If the expiration is configured for the object (see <a
+ * <p>If the expiration is configured for the object (see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html">PutBucketLifecycleConfiguration</a>),
- * the response includes this header. It includes the expiry-date and rule-id
- * key-value pairs that provide information about object expiration. The value of
- * the rule-id is URL encoded.</p>
+ * the response includes this header. It includes the <code>expiry-date</code> and
+ * <code>rule-id</code> key-value pairs that provide information about object
+ * expiration. The value of the <code>rule-id</code> is URL-encoded.</p>
*/
inline void SetExpiration(const char* value) { m_expiration.assign(value); }
/**
- * <p> If the expiration is configured for the object (see <a
+ * <p>If the expiration is configured for the object (see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html">PutBucketLifecycleConfiguration</a>),
- * the response includes this header. It includes the expiry-date and rule-id
- * key-value pairs that provide information about object expiration. The value of
- * the rule-id is URL encoded.</p>
+ * the response includes this header. It includes the <code>expiry-date</code> and
+ * <code>rule-id</code> key-value pairs that provide information about object
+ * expiration. The value of the <code>rule-id</code> is URL-encoded.</p>
*/
inline PutObjectResult& WithExpiration(const Aws::String& value) { SetExpiration(value); return *this;}
/**
- * <p> If the expiration is configured for the object (see <a
+ * <p>If the expiration is configured for the object (see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html">PutBucketLifecycleConfiguration</a>),
- * the response includes this header. It includes the expiry-date and rule-id
- * key-value pairs that provide information about object expiration. The value of
- * the rule-id is URL encoded.</p>
+ * the response includes this header. It includes the <code>expiry-date</code> and
+ * <code>rule-id</code> key-value pairs that provide information about object
+ * expiration. The value of the <code>rule-id</code> is URL-encoded.</p>
*/
inline PutObjectResult& WithExpiration(Aws::String&& value) { SetExpiration(std::move(value)); return *this;}
/**
- * <p> If the expiration is configured for the object (see <a
+ * <p>If the expiration is configured for the object (see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html">PutBucketLifecycleConfiguration</a>),
- * the response includes this header. It includes the expiry-date and rule-id
- * key-value pairs that provide information about object expiration. The value of
- * the rule-id is URL encoded.</p>
+ * the response includes this header. It includes the <code>expiry-date</code> and
+ * <code>rule-id</code> key-value pairs that provide information about object
+ * expiration. The value of the <code>rule-id</code> is URL-encoded.</p>
*/
inline PutObjectResult& WithExpiration(const char* value) { SetExpiration(value); return *this;}
@@ -135,42 +135,326 @@ namespace Model
/**
- * <p>If you specified server-side encryption either with an AWS KMS customer
- * master key (CMK) or Amazon S3-managed encryption key in your PUT request, the
- * response includes this header. It confirms the encryption algorithm that Amazon
- * S3 used to encrypt the object.</p>
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumCRC32() const{ return m_checksumCRC32; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(const Aws::String& value) { m_checksumCRC32 = value; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(Aws::String&& value) { m_checksumCRC32 = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(const char* value) { m_checksumCRC32.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline PutObjectResult& WithChecksumCRC32(const Aws::String& value) { SetChecksumCRC32(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline PutObjectResult& WithChecksumCRC32(Aws::String&& value) { SetChecksumCRC32(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline PutObjectResult& WithChecksumCRC32(const char* value) { SetChecksumCRC32(value); return *this;}
+
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumCRC32C() const{ return m_checksumCRC32C; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(const Aws::String& value) { m_checksumCRC32C = value; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(Aws::String&& value) { m_checksumCRC32C = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(const char* value) { m_checksumCRC32C.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline PutObjectResult& WithChecksumCRC32C(const Aws::String& value) { SetChecksumCRC32C(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline PutObjectResult& WithChecksumCRC32C(Aws::String&& value) { SetChecksumCRC32C(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline PutObjectResult& WithChecksumCRC32C(const char* value) { SetChecksumCRC32C(value); return *this;}
+
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumSHA1() const{ return m_checksumSHA1; }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(const Aws::String& value) { m_checksumSHA1 = value; }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(Aws::String&& value) { m_checksumSHA1 = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(const char* value) { m_checksumSHA1.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline PutObjectResult& WithChecksumSHA1(const Aws::String& value) { SetChecksumSHA1(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline PutObjectResult& WithChecksumSHA1(Aws::String&& value) { SetChecksumSHA1(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline PutObjectResult& WithChecksumSHA1(const char* value) { SetChecksumSHA1(value); return *this;}
+
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumSHA256() const{ return m_checksumSHA256; }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(const Aws::String& value) { m_checksumSHA256 = value; }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(Aws::String&& value) { m_checksumSHA256 = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(const char* value) { m_checksumSHA256.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline PutObjectResult& WithChecksumSHA256(const Aws::String& value) { SetChecksumSHA256(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline PutObjectResult& WithChecksumSHA256(Aws::String&& value) { SetChecksumSHA256(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline PutObjectResult& WithChecksumSHA256(const char* value) { SetChecksumSHA256(value); return *this;}
+
+
+ /**
+ * <p>If you specified server-side encryption either with an Amazon Web Services
+ * KMS key or Amazon S3-managed encryption key in your PUT request, the response
+ * includes this header. It confirms the encryption algorithm that Amazon S3 used
+ * to encrypt the object.</p>
*/
inline const ServerSideEncryption& GetServerSideEncryption() const{ return m_serverSideEncryption; }
/**
- * <p>If you specified server-side encryption either with an AWS KMS customer
- * master key (CMK) or Amazon S3-managed encryption key in your PUT request, the
- * response includes this header. It confirms the encryption algorithm that Amazon
- * S3 used to encrypt the object.</p>
+ * <p>If you specified server-side encryption either with an Amazon Web Services
+ * KMS key or Amazon S3-managed encryption key in your PUT request, the response
+ * includes this header. It confirms the encryption algorithm that Amazon S3 used
+ * to encrypt the object.</p>
*/
inline void SetServerSideEncryption(const ServerSideEncryption& value) { m_serverSideEncryption = value; }
/**
- * <p>If you specified server-side encryption either with an AWS KMS customer
- * master key (CMK) or Amazon S3-managed encryption key in your PUT request, the
- * response includes this header. It confirms the encryption algorithm that Amazon
- * S3 used to encrypt the object.</p>
+ * <p>If you specified server-side encryption either with an Amazon Web Services
+ * KMS key or Amazon S3-managed encryption key in your PUT request, the response
+ * includes this header. It confirms the encryption algorithm that Amazon S3 used
+ * to encrypt the object.</p>
*/
inline void SetServerSideEncryption(ServerSideEncryption&& value) { m_serverSideEncryption = std::move(value); }
/**
- * <p>If you specified server-side encryption either with an AWS KMS customer
- * master key (CMK) or Amazon S3-managed encryption key in your PUT request, the
- * response includes this header. It confirms the encryption algorithm that Amazon
- * S3 used to encrypt the object.</p>
+ * <p>If you specified server-side encryption either with an Amazon Web Services
+ * KMS key or Amazon S3-managed encryption key in your PUT request, the response
+ * includes this header. It confirms the encryption algorithm that Amazon S3 used
+ * to encrypt the object.</p>
*/
inline PutObjectResult& WithServerSideEncryption(const ServerSideEncryption& value) { SetServerSideEncryption(value); return *this;}
/**
- * <p>If you specified server-side encryption either with an AWS KMS customer
- * master key (CMK) or Amazon S3-managed encryption key in your PUT request, the
- * response includes this header. It confirms the encryption algorithm that Amazon
- * S3 used to encrypt the object.</p>
+ * <p>If you specified server-side encryption either with an Amazon Web Services
+ * KMS key or Amazon S3-managed encryption key in your PUT request, the response
+ * includes this header. It confirms the encryption algorithm that Amazon S3 used
+ * to encrypt the object.</p>
*/
inline PutObjectResult& WithServerSideEncryption(ServerSideEncryption&& value) { SetServerSideEncryption(std::move(value)); return *this;}
@@ -313,126 +597,126 @@ namespace Model
/**
* <p>If <code>x-amz-server-side-encryption</code> is present and has the value of
- * <code>aws:kms</code>, this header specifies the ID of the AWS Key Management
- * Service (AWS KMS) symmetric customer managed customer master key (CMK) that was
- * used for the object. </p>
+ * <code>aws:kms</code>, this header specifies the ID of the Amazon Web Services
+ * Key Management Service (Amazon Web Services KMS) symmetric customer managed key
+ * that was used for the object. </p>
*/
inline const Aws::String& GetSSEKMSKeyId() const{ return m_sSEKMSKeyId; }
/**
* <p>If <code>x-amz-server-side-encryption</code> is present and has the value of
- * <code>aws:kms</code>, this header specifies the ID of the AWS Key Management
- * Service (AWS KMS) symmetric customer managed customer master key (CMK) that was
- * used for the object. </p>
+ * <code>aws:kms</code>, this header specifies the ID of the Amazon Web Services
+ * Key Management Service (Amazon Web Services KMS) symmetric customer managed key
+ * that was used for the object. </p>
*/
inline void SetSSEKMSKeyId(const Aws::String& value) { m_sSEKMSKeyId = value; }
/**
* <p>If <code>x-amz-server-side-encryption</code> is present and has the value of
- * <code>aws:kms</code>, this header specifies the ID of the AWS Key Management
- * Service (AWS KMS) symmetric customer managed customer master key (CMK) that was
- * used for the object. </p>
+ * <code>aws:kms</code>, this header specifies the ID of the Amazon Web Services
+ * Key Management Service (Amazon Web Services KMS) symmetric customer managed key
+ * that was used for the object. </p>
*/
inline void SetSSEKMSKeyId(Aws::String&& value) { m_sSEKMSKeyId = std::move(value); }
/**
* <p>If <code>x-amz-server-side-encryption</code> is present and has the value of
- * <code>aws:kms</code>, this header specifies the ID of the AWS Key Management
- * Service (AWS KMS) symmetric customer managed customer master key (CMK) that was
- * used for the object. </p>
+ * <code>aws:kms</code>, this header specifies the ID of the Amazon Web Services
+ * Key Management Service (Amazon Web Services KMS) symmetric customer managed key
+ * that was used for the object. </p>
*/
inline void SetSSEKMSKeyId(const char* value) { m_sSEKMSKeyId.assign(value); }
/**
* <p>If <code>x-amz-server-side-encryption</code> is present and has the value of
- * <code>aws:kms</code>, this header specifies the ID of the AWS Key Management
- * Service (AWS KMS) symmetric customer managed customer master key (CMK) that was
- * used for the object. </p>
+ * <code>aws:kms</code>, this header specifies the ID of the Amazon Web Services
+ * Key Management Service (Amazon Web Services KMS) symmetric customer managed key
+ * that was used for the object. </p>
*/
inline PutObjectResult& WithSSEKMSKeyId(const Aws::String& value) { SetSSEKMSKeyId(value); return *this;}
/**
* <p>If <code>x-amz-server-side-encryption</code> is present and has the value of
- * <code>aws:kms</code>, this header specifies the ID of the AWS Key Management
- * Service (AWS KMS) symmetric customer managed customer master key (CMK) that was
- * used for the object. </p>
+ * <code>aws:kms</code>, this header specifies the ID of the Amazon Web Services
+ * Key Management Service (Amazon Web Services KMS) symmetric customer managed key
+ * that was used for the object. </p>
*/
inline PutObjectResult& WithSSEKMSKeyId(Aws::String&& value) { SetSSEKMSKeyId(std::move(value)); return *this;}
/**
* <p>If <code>x-amz-server-side-encryption</code> is present and has the value of
- * <code>aws:kms</code>, this header specifies the ID of the AWS Key Management
- * Service (AWS KMS) symmetric customer managed customer master key (CMK) that was
- * used for the object. </p>
+ * <code>aws:kms</code>, this header specifies the ID of the Amazon Web Services
+ * Key Management Service (Amazon Web Services KMS) symmetric customer managed key
+ * that was used for the object. </p>
*/
inline PutObjectResult& WithSSEKMSKeyId(const char* value) { SetSSEKMSKeyId(value); return *this;}
/**
- * <p>If present, specifies the AWS KMS Encryption Context to use for object
- * encryption. The value of this header is a base64-encoded UTF-8 string holding
- * JSON with the encryption context key-value pairs.</p>
+ * <p>If present, specifies the Amazon Web Services KMS Encryption Context to use
+ * for object encryption. The value of this header is a base64-encoded UTF-8 string
+ * holding JSON with the encryption context key-value pairs.</p>
*/
inline const Aws::String& GetSSEKMSEncryptionContext() const{ return m_sSEKMSEncryptionContext; }
/**
- * <p>If present, specifies the AWS KMS Encryption Context to use for object
- * encryption. The value of this header is a base64-encoded UTF-8 string holding
- * JSON with the encryption context key-value pairs.</p>
+ * <p>If present, specifies the Amazon Web Services KMS Encryption Context to use
+ * for object encryption. The value of this header is a base64-encoded UTF-8 string
+ * holding JSON with the encryption context key-value pairs.</p>
*/
inline void SetSSEKMSEncryptionContext(const Aws::String& value) { m_sSEKMSEncryptionContext = value; }
/**
- * <p>If present, specifies the AWS KMS Encryption Context to use for object
- * encryption. The value of this header is a base64-encoded UTF-8 string holding
- * JSON with the encryption context key-value pairs.</p>
+ * <p>If present, specifies the Amazon Web Services KMS Encryption Context to use
+ * for object encryption. The value of this header is a base64-encoded UTF-8 string
+ * holding JSON with the encryption context key-value pairs.</p>
*/
inline void SetSSEKMSEncryptionContext(Aws::String&& value) { m_sSEKMSEncryptionContext = std::move(value); }
/**
- * <p>If present, specifies the AWS KMS Encryption Context to use for object
- * encryption. The value of this header is a base64-encoded UTF-8 string holding
- * JSON with the encryption context key-value pairs.</p>
+ * <p>If present, specifies the Amazon Web Services KMS Encryption Context to use
+ * for object encryption. The value of this header is a base64-encoded UTF-8 string
+ * holding JSON with the encryption context key-value pairs.</p>
*/
inline void SetSSEKMSEncryptionContext(const char* value) { m_sSEKMSEncryptionContext.assign(value); }
/**
- * <p>If present, specifies the AWS KMS Encryption Context to use for object
- * encryption. The value of this header is a base64-encoded UTF-8 string holding
- * JSON with the encryption context key-value pairs.</p>
+ * <p>If present, specifies the Amazon Web Services KMS Encryption Context to use
+ * for object encryption. The value of this header is a base64-encoded UTF-8 string
+ * holding JSON with the encryption context key-value pairs.</p>
*/
inline PutObjectResult& WithSSEKMSEncryptionContext(const Aws::String& value) { SetSSEKMSEncryptionContext(value); return *this;}
/**
- * <p>If present, specifies the AWS KMS Encryption Context to use for object
- * encryption. The value of this header is a base64-encoded UTF-8 string holding
- * JSON with the encryption context key-value pairs.</p>
+ * <p>If present, specifies the Amazon Web Services KMS Encryption Context to use
+ * for object encryption. The value of this header is a base64-encoded UTF-8 string
+ * holding JSON with the encryption context key-value pairs.</p>
*/
inline PutObjectResult& WithSSEKMSEncryptionContext(Aws::String&& value) { SetSSEKMSEncryptionContext(std::move(value)); return *this;}
/**
- * <p>If present, specifies the AWS KMS Encryption Context to use for object
- * encryption. The value of this header is a base64-encoded UTF-8 string holding
- * JSON with the encryption context key-value pairs.</p>
+ * <p>If present, specifies the Amazon Web Services KMS Encryption Context to use
+ * for object encryption. The value of this header is a base64-encoded UTF-8 string
+ * holding JSON with the encryption context key-value pairs.</p>
*/
inline PutObjectResult& WithSSEKMSEncryptionContext(const char* value) { SetSSEKMSEncryptionContext(value); return *this;}
/**
* <p>Indicates whether the uploaded object uses an S3 Bucket Key for server-side
- * encryption with AWS KMS (SSE-KMS).</p>
+ * encryption with Amazon Web Services KMS (SSE-KMS).</p>
*/
inline bool GetBucketKeyEnabled() const{ return m_bucketKeyEnabled; }
/**
* <p>Indicates whether the uploaded object uses an S3 Bucket Key for server-side
- * encryption with AWS KMS (SSE-KMS).</p>
+ * encryption with Amazon Web Services KMS (SSE-KMS).</p>
*/
inline void SetBucketKeyEnabled(bool value) { m_bucketKeyEnabled = value; }
/**
* <p>Indicates whether the uploaded object uses an S3 Bucket Key for server-side
- * encryption with AWS KMS (SSE-KMS).</p>
+ * encryption with Amazon Web Services KMS (SSE-KMS).</p>
*/
inline PutObjectResult& WithBucketKeyEnabled(bool value) { SetBucketKeyEnabled(value); return *this;}
@@ -458,6 +742,14 @@ namespace Model
Aws::String m_eTag;
+ Aws::String m_checksumCRC32;
+
+ Aws::String m_checksumCRC32C;
+
+ Aws::String m_checksumSHA1;
+
+ Aws::String m_checksumSHA256;
+
ServerSideEncryption m_serverSideEncryption;
Aws::String m_versionId;
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectRetentionRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectRetentionRequest.h
index e11e2568a1..9447737e66 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectRetentionRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectRetentionRequest.h
@@ -9,6 +9,7 @@
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/s3/model/ObjectLockRetention.h>
#include <aws/s3/model/RequestPayer.h>
+#include <aws/s3/model/ChecksumAlgorithm.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
#include <utility>
@@ -25,10 +26,10 @@ namespace Model
/**
*/
- class AWS_S3_API PutObjectRetentionRequest : public S3Request
+ class PutObjectRetentionRequest : public S3Request
{
public:
- PutObjectRetentionRequest();
+ AWS_S3_API PutObjectRetentionRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -36,14 +37,18 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "PutObjectRetention"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
- inline bool ShouldComputeContentMd5() const override { return true; }
+ AWS_S3_API Aws::String GetChecksumAlgorithmName() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The bucket name that contains the object you want to apply this Object
@@ -51,11 +56,11 @@ namespace Model
* you must direct requests to the access point hostname. The access point hostname
* takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const Aws::String& GetBucket() const{ return m_bucket; }
@@ -65,11 +70,11 @@ namespace Model
* you must direct requests to the access point hostname. The access point hostname
* takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; }
@@ -79,11 +84,11 @@ namespace Model
* you must direct requests to the access point hostname. The access point hostname
* takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; }
@@ -93,11 +98,11 @@ namespace Model
* you must direct requests to the access point hostname. The access point hostname
* takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); }
@@ -107,11 +112,11 @@ namespace Model
* you must direct requests to the access point hostname. The access point hostname
* takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); }
@@ -121,11 +126,11 @@ namespace Model
* you must direct requests to the access point hostname. The access point hostname
* takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline PutObjectRetentionRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;}
@@ -135,11 +140,11 @@ namespace Model
* you must direct requests to the access point hostname. The access point hostname
* takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline PutObjectRetentionRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;}
@@ -149,11 +154,11 @@ namespace Model
* you must direct requests to the access point hostname. The access point hostname
* takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline PutObjectRetentionRequest& WithBucket(const char* value) { SetBucket(value); return *this;}
@@ -328,115 +333,200 @@ namespace Model
/**
- * <p>The MD5 hash for the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash for the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline const Aws::String& GetContentMD5() const{ return m_contentMD5; }
/**
- * <p>The MD5 hash for the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash for the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline bool ContentMD5HasBeenSet() const { return m_contentMD5HasBeenSet; }
/**
- * <p>The MD5 hash for the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash for the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline void SetContentMD5(const Aws::String& value) { m_contentMD5HasBeenSet = true; m_contentMD5 = value; }
/**
- * <p>The MD5 hash for the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash for the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline void SetContentMD5(Aws::String&& value) { m_contentMD5HasBeenSet = true; m_contentMD5 = std::move(value); }
/**
- * <p>The MD5 hash for the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash for the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline void SetContentMD5(const char* value) { m_contentMD5HasBeenSet = true; m_contentMD5.assign(value); }
/**
- * <p>The MD5 hash for the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash for the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline PutObjectRetentionRequest& WithContentMD5(const Aws::String& value) { SetContentMD5(value); return *this;}
/**
- * <p>The MD5 hash for the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash for the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline PutObjectRetentionRequest& WithContentMD5(Aws::String&& value) { SetContentMD5(std::move(value)); return *this;}
/**
- * <p>The MD5 hash for the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash for the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline PutObjectRetentionRequest& WithContentMD5(const char* value) { SetContentMD5(value); return *this;}
/**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline const ChecksumAlgorithm& GetChecksumAlgorithm() const{ return m_checksumAlgorithm; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline bool ChecksumAlgorithmHasBeenSet() const { return m_checksumAlgorithmHasBeenSet; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(const ChecksumAlgorithm& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = value; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(ChecksumAlgorithm&& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = std::move(value); }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline PutObjectRetentionRequest& WithChecksumAlgorithm(const ChecksumAlgorithm& value) { SetChecksumAlgorithm(value); return *this;}
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline PutObjectRetentionRequest& WithChecksumAlgorithm(ChecksumAlgorithm&& value) { SetChecksumAlgorithm(std::move(value)); return *this;}
+
+
+ /**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutObjectRetentionRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutObjectRetentionRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutObjectRetentionRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -483,31 +573,34 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_key;
- bool m_keyHasBeenSet;
+ bool m_keyHasBeenSet = false;
ObjectLockRetention m_retention;
- bool m_retentionHasBeenSet;
+ bool m_retentionHasBeenSet = false;
RequestPayer m_requestPayer;
- bool m_requestPayerHasBeenSet;
+ bool m_requestPayerHasBeenSet = false;
Aws::String m_versionId;
- bool m_versionIdHasBeenSet;
+ bool m_versionIdHasBeenSet = false;
bool m_bypassGovernanceRetention;
- bool m_bypassGovernanceRetentionHasBeenSet;
+ bool m_bypassGovernanceRetentionHasBeenSet = false;
Aws::String m_contentMD5;
- bool m_contentMD5HasBeenSet;
+ bool m_contentMD5HasBeenSet = false;
+
+ ChecksumAlgorithm m_checksumAlgorithm;
+ bool m_checksumAlgorithmHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectRetentionResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectRetentionResult.h
index c35bdbd110..fdd21a4524 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectRetentionResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectRetentionResult.h
@@ -24,12 +24,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API PutObjectRetentionResult
+ class PutObjectRetentionResult
{
public:
- PutObjectRetentionResult();
- PutObjectRetentionResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- PutObjectRetentionResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API PutObjectRetentionResult();
+ AWS_S3_API PutObjectRetentionResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API PutObjectRetentionResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectTaggingRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectTaggingRequest.h
index 9bd467ebf1..2ce5195e29 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectTaggingRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectTaggingRequest.h
@@ -7,6 +7,7 @@
#include <aws/s3/S3_EXPORTS.h>
#include <aws/s3/S3Request.h>
#include <aws/core/utils/memory/stl/AWSString.h>
+#include <aws/s3/model/ChecksumAlgorithm.h>
#include <aws/s3/model/Tagging.h>
#include <aws/s3/model/RequestPayer.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
@@ -25,10 +26,10 @@ namespace Model
/**
*/
- class AWS_S3_API PutObjectTaggingRequest : public S3Request
+ class PutObjectTaggingRequest : public S3Request
{
public:
- PutObjectTaggingRequest();
+ AWS_S3_API PutObjectTaggingRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -36,33 +37,37 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "PutObjectTagging"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
- inline bool ShouldComputeContentMd5() const override { return true; }
+ AWS_S3_API Aws::String GetChecksumAlgorithmName() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The bucket name containing the object. </p> <p>When using this action with an
* access point, you must direct requests to the access point hostname. The access
* point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const Aws::String& GetBucket() const{ return m_bucket; }
@@ -71,19 +76,19 @@ namespace Model
* access point, you must direct requests to the access point hostname. The access
* point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; }
@@ -92,19 +97,19 @@ namespace Model
* access point, you must direct requests to the access point hostname. The access
* point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; }
@@ -113,19 +118,19 @@ namespace Model
* access point, you must direct requests to the access point hostname. The access
* point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); }
@@ -134,19 +139,19 @@ namespace Model
* access point, you must direct requests to the access point hostname. The access
* point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); }
@@ -155,19 +160,19 @@ namespace Model
* access point, you must direct requests to the access point hostname. The access
* point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline PutObjectTaggingRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;}
@@ -176,19 +181,19 @@ namespace Model
* access point, you must direct requests to the access point hostname. The access
* point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline PutObjectTaggingRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;}
@@ -197,19 +202,19 @@ namespace Model
* access point, you must direct requests to the access point hostname. The access
* point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline PutObjectTaggingRequest& WithBucket(const char* value) { SetBucket(value); return *this;}
@@ -297,63 +302,148 @@ namespace Model
/**
- * <p>The MD5 hash for the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash for the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline const Aws::String& GetContentMD5() const{ return m_contentMD5; }
/**
- * <p>The MD5 hash for the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash for the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline bool ContentMD5HasBeenSet() const { return m_contentMD5HasBeenSet; }
/**
- * <p>The MD5 hash for the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash for the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline void SetContentMD5(const Aws::String& value) { m_contentMD5HasBeenSet = true; m_contentMD5 = value; }
/**
- * <p>The MD5 hash for the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash for the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline void SetContentMD5(Aws::String&& value) { m_contentMD5HasBeenSet = true; m_contentMD5 = std::move(value); }
/**
- * <p>The MD5 hash for the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash for the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline void SetContentMD5(const char* value) { m_contentMD5HasBeenSet = true; m_contentMD5.assign(value); }
/**
- * <p>The MD5 hash for the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash for the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline PutObjectTaggingRequest& WithContentMD5(const Aws::String& value) { SetContentMD5(value); return *this;}
/**
- * <p>The MD5 hash for the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash for the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline PutObjectTaggingRequest& WithContentMD5(Aws::String&& value) { SetContentMD5(std::move(value)); return *this;}
/**
- * <p>The MD5 hash for the request body.</p> <p>For requests made using the AWS
- * Command Line Interface (CLI) or AWS SDKs, this field is calculated
- * automatically.</p>
+ * <p>The MD5 hash for the request body.</p> <p>For requests made using the Amazon
+ * Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this
+ * field is calculated automatically.</p>
*/
inline PutObjectTaggingRequest& WithContentMD5(const char* value) { SetContentMD5(value); return *this;}
/**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline const ChecksumAlgorithm& GetChecksumAlgorithm() const{ return m_checksumAlgorithm; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline bool ChecksumAlgorithmHasBeenSet() const { return m_checksumAlgorithmHasBeenSet; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(const ChecksumAlgorithm& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = value; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(ChecksumAlgorithm&& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = std::move(value); }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline PutObjectTaggingRequest& WithChecksumAlgorithm(const ChecksumAlgorithm& value) { SetChecksumAlgorithm(value); return *this;}
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline PutObjectTaggingRequest& WithChecksumAlgorithm(ChecksumAlgorithm&& value) { SetChecksumAlgorithm(std::move(value)); return *this;}
+
+
+ /**
* <p>Container for the <code>TagSet</code> and <code>Tag</code> elements</p>
*/
inline const Tagging& GetTagging() const{ return m_tagging; }
@@ -386,57 +476,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutObjectTaggingRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutObjectTaggingRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutObjectTaggingRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -502,28 +592,31 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_key;
- bool m_keyHasBeenSet;
+ bool m_keyHasBeenSet = false;
Aws::String m_versionId;
- bool m_versionIdHasBeenSet;
+ bool m_versionIdHasBeenSet = false;
Aws::String m_contentMD5;
- bool m_contentMD5HasBeenSet;
+ bool m_contentMD5HasBeenSet = false;
+
+ ChecksumAlgorithm m_checksumAlgorithm;
+ bool m_checksumAlgorithmHasBeenSet = false;
Tagging m_tagging;
- bool m_taggingHasBeenSet;
+ bool m_taggingHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
RequestPayer m_requestPayer;
- bool m_requestPayerHasBeenSet;
+ bool m_requestPayerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectTaggingResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectTaggingResult.h
index 7a48440e89..4df7212374 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectTaggingResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutObjectTaggingResult.h
@@ -24,12 +24,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API PutObjectTaggingResult
+ class PutObjectTaggingResult
{
public:
- PutObjectTaggingResult();
- PutObjectTaggingResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- PutObjectTaggingResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API PutObjectTaggingResult();
+ AWS_S3_API PutObjectTaggingResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API PutObjectTaggingResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutPublicAccessBlockRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutPublicAccessBlockRequest.h
index fd369ccfac..74862b9eaa 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutPublicAccessBlockRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/PutPublicAccessBlockRequest.h
@@ -7,6 +7,7 @@
#include <aws/s3/S3_EXPORTS.h>
#include <aws/s3/S3Request.h>
#include <aws/core/utils/memory/stl/AWSString.h>
+#include <aws/s3/model/ChecksumAlgorithm.h>
#include <aws/s3/model/PublicAccessBlockConfiguration.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
#include <utility>
@@ -24,10 +25,10 @@ namespace Model
/**
*/
- class AWS_S3_API PutPublicAccessBlockRequest : public S3Request
+ class PutPublicAccessBlockRequest : public S3Request
{
public:
- PutPublicAccessBlockRequest();
+ AWS_S3_API PutPublicAccessBlockRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -35,14 +36,18 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "PutPublicAccessBlock"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
- inline bool ShouldComputeContentMd5() const override { return true; }
+ AWS_S3_API Aws::String GetChecksumAlgorithmName() const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the Amazon S3 bucket whose <code>PublicAccessBlock</code>
@@ -95,62 +100,147 @@ namespace Model
/**
* <p>The MD5 hash of the <code>PutPublicAccessBlock</code> request body. </p>
- * <p>For requests made using the AWS Command Line Interface (CLI) or AWS SDKs,
- * this field is calculated automatically.</p>
+ * <p>For requests made using the Amazon Web Services Command Line Interface (CLI)
+ * or Amazon Web Services SDKs, this field is calculated automatically.</p>
*/
inline const Aws::String& GetContentMD5() const{ return m_contentMD5; }
/**
* <p>The MD5 hash of the <code>PutPublicAccessBlock</code> request body. </p>
- * <p>For requests made using the AWS Command Line Interface (CLI) or AWS SDKs,
- * this field is calculated automatically.</p>
+ * <p>For requests made using the Amazon Web Services Command Line Interface (CLI)
+ * or Amazon Web Services SDKs, this field is calculated automatically.</p>
*/
inline bool ContentMD5HasBeenSet() const { return m_contentMD5HasBeenSet; }
/**
* <p>The MD5 hash of the <code>PutPublicAccessBlock</code> request body. </p>
- * <p>For requests made using the AWS Command Line Interface (CLI) or AWS SDKs,
- * this field is calculated automatically.</p>
+ * <p>For requests made using the Amazon Web Services Command Line Interface (CLI)
+ * or Amazon Web Services SDKs, this field is calculated automatically.</p>
*/
inline void SetContentMD5(const Aws::String& value) { m_contentMD5HasBeenSet = true; m_contentMD5 = value; }
/**
* <p>The MD5 hash of the <code>PutPublicAccessBlock</code> request body. </p>
- * <p>For requests made using the AWS Command Line Interface (CLI) or AWS SDKs,
- * this field is calculated automatically.</p>
+ * <p>For requests made using the Amazon Web Services Command Line Interface (CLI)
+ * or Amazon Web Services SDKs, this field is calculated automatically.</p>
*/
inline void SetContentMD5(Aws::String&& value) { m_contentMD5HasBeenSet = true; m_contentMD5 = std::move(value); }
/**
* <p>The MD5 hash of the <code>PutPublicAccessBlock</code> request body. </p>
- * <p>For requests made using the AWS Command Line Interface (CLI) or AWS SDKs,
- * this field is calculated automatically.</p>
+ * <p>For requests made using the Amazon Web Services Command Line Interface (CLI)
+ * or Amazon Web Services SDKs, this field is calculated automatically.</p>
*/
inline void SetContentMD5(const char* value) { m_contentMD5HasBeenSet = true; m_contentMD5.assign(value); }
/**
* <p>The MD5 hash of the <code>PutPublicAccessBlock</code> request body. </p>
- * <p>For requests made using the AWS Command Line Interface (CLI) or AWS SDKs,
- * this field is calculated automatically.</p>
+ * <p>For requests made using the Amazon Web Services Command Line Interface (CLI)
+ * or Amazon Web Services SDKs, this field is calculated automatically.</p>
*/
inline PutPublicAccessBlockRequest& WithContentMD5(const Aws::String& value) { SetContentMD5(value); return *this;}
/**
* <p>The MD5 hash of the <code>PutPublicAccessBlock</code> request body. </p>
- * <p>For requests made using the AWS Command Line Interface (CLI) or AWS SDKs,
- * this field is calculated automatically.</p>
+ * <p>For requests made using the Amazon Web Services Command Line Interface (CLI)
+ * or Amazon Web Services SDKs, this field is calculated automatically.</p>
*/
inline PutPublicAccessBlockRequest& WithContentMD5(Aws::String&& value) { SetContentMD5(std::move(value)); return *this;}
/**
* <p>The MD5 hash of the <code>PutPublicAccessBlock</code> request body. </p>
- * <p>For requests made using the AWS Command Line Interface (CLI) or AWS SDKs,
- * this field is calculated automatically.</p>
+ * <p>For requests made using the Amazon Web Services Command Line Interface (CLI)
+ * or Amazon Web Services SDKs, this field is calculated automatically.</p>
*/
inline PutPublicAccessBlockRequest& WithContentMD5(const char* value) { SetContentMD5(value); return *this;}
/**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline const ChecksumAlgorithm& GetChecksumAlgorithm() const{ return m_checksumAlgorithm; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline bool ChecksumAlgorithmHasBeenSet() const { return m_checksumAlgorithmHasBeenSet; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(const ChecksumAlgorithm& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = value; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(ChecksumAlgorithm&& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = std::move(value); }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline PutPublicAccessBlockRequest& WithChecksumAlgorithm(const ChecksumAlgorithm& value) { SetChecksumAlgorithm(value); return *this;}
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline PutPublicAccessBlockRequest& WithChecksumAlgorithm(ChecksumAlgorithm&& value) { SetChecksumAlgorithm(std::move(value)); return *this;}
+
+
+ /**
* <p>The <code>PublicAccessBlock</code> configuration that you want to apply to
* this Amazon S3 bucket. You can enable the configuration options in any
* combination. For more information about when Amazon S3 considers a bucket or
@@ -213,57 +303,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutPublicAccessBlockRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutPublicAccessBlockRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline PutPublicAccessBlockRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -310,19 +400,22 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_contentMD5;
- bool m_contentMD5HasBeenSet;
+ bool m_contentMD5HasBeenSet = false;
+
+ ChecksumAlgorithm m_checksumAlgorithm;
+ bool m_checksumAlgorithmHasBeenSet = false;
PublicAccessBlockConfiguration m_publicAccessBlockConfiguration;
- bool m_publicAccessBlockConfigurationHasBeenSet;
+ bool m_publicAccessBlockConfigurationHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/QueueConfiguration.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/QueueConfiguration.h
index 41cc3d2d70..6904890b57 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/QueueConfiguration.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/QueueConfiguration.h
@@ -32,14 +32,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/QueueConfiguration">AWS
* API Reference</a></p>
*/
- class AWS_S3_API QueueConfiguration
+ class QueueConfiguration
{
public:
- QueueConfiguration();
- QueueConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
- QueueConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API QueueConfiguration();
+ AWS_S3_API QueueConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API QueueConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
@@ -178,16 +178,16 @@ namespace Model
private:
Aws::String m_id;
- bool m_idHasBeenSet;
+ bool m_idHasBeenSet = false;
Aws::String m_queueArn;
- bool m_queueArnHasBeenSet;
+ bool m_queueArnHasBeenSet = false;
Aws::Vector<Event> m_events;
- bool m_eventsHasBeenSet;
+ bool m_eventsHasBeenSet = false;
NotificationConfigurationFilter m_filter;
- bool m_filterHasBeenSet;
+ bool m_filterHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/QueueConfigurationDeprecated.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/QueueConfigurationDeprecated.h
index 05c80b2db1..2edd7a1a4d 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/QueueConfigurationDeprecated.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/QueueConfigurationDeprecated.h
@@ -33,14 +33,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/QueueConfigurationDeprecated">AWS
* API Reference</a></p>
*/
- class AWS_S3_API QueueConfigurationDeprecated
+ class QueueConfigurationDeprecated
{
public:
- QueueConfigurationDeprecated();
- QueueConfigurationDeprecated(const Aws::Utils::Xml::XmlNode& xmlNode);
- QueueConfigurationDeprecated& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API QueueConfigurationDeprecated();
+ AWS_S3_API QueueConfigurationDeprecated(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API QueueConfigurationDeprecated& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
@@ -160,13 +160,13 @@ namespace Model
private:
Aws::String m_id;
- bool m_idHasBeenSet;
+ bool m_idHasBeenSet = false;
Aws::Vector<Event> m_events;
- bool m_eventsHasBeenSet;
+ bool m_eventsHasBeenSet = false;
Aws::String m_queue;
- bool m_queueHasBeenSet;
+ bool m_queueHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RecordsEvent.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RecordsEvent.h
index 30ef211adb..345c0426e2 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RecordsEvent.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RecordsEvent.h
@@ -19,11 +19,11 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/RecordsEvent">AWS API
* Reference</a></p>
*/
- class AWS_S3_API RecordsEvent
+ class RecordsEvent
{
public:
- RecordsEvent() = default;
- RecordsEvent(Aws::Vector<unsigned char>&& value) { m_payload = std::move(value); }
+ AWS_S3_API RecordsEvent() = default;
+ AWS_S3_API RecordsEvent(Aws::Vector<unsigned char>&& value) { m_payload = std::move(value); }
/**
* <p>The byte array of partial, one or more result records.</p>
@@ -58,7 +58,7 @@ namespace Model
private:
Aws::Vector<unsigned char> m_payload;
- bool m_payloadHasBeenSet;
+ bool m_payloadHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Redirect.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Redirect.h
index 3a21bec482..a974475fe4 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Redirect.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Redirect.h
@@ -29,14 +29,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/Redirect">AWS API
* Reference</a></p>
*/
- class AWS_S3_API Redirect
+ class Redirect
{
public:
- Redirect();
- Redirect(const Aws::Utils::Xml::XmlNode& xmlNode);
- Redirect& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Redirect();
+ AWS_S3_API Redirect(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Redirect& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -386,19 +386,19 @@ namespace Model
private:
Aws::String m_hostName;
- bool m_hostNameHasBeenSet;
+ bool m_hostNameHasBeenSet = false;
Aws::String m_httpRedirectCode;
- bool m_httpRedirectCodeHasBeenSet;
+ bool m_httpRedirectCodeHasBeenSet = false;
Protocol m_protocol;
- bool m_protocolHasBeenSet;
+ bool m_protocolHasBeenSet = false;
Aws::String m_replaceKeyPrefixWith;
- bool m_replaceKeyPrefixWithHasBeenSet;
+ bool m_replaceKeyPrefixWithHasBeenSet = false;
Aws::String m_replaceKeyWith;
- bool m_replaceKeyWithHasBeenSet;
+ bool m_replaceKeyWithHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RedirectAllRequestsTo.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RedirectAllRequestsTo.h
index 73d5a96f6d..b704f28bf1 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RedirectAllRequestsTo.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RedirectAllRequestsTo.h
@@ -29,14 +29,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/RedirectAllRequestsTo">AWS
* API Reference</a></p>
*/
- class AWS_S3_API RedirectAllRequestsTo
+ class RedirectAllRequestsTo
{
public:
- RedirectAllRequestsTo();
- RedirectAllRequestsTo(const Aws::Utils::Xml::XmlNode& xmlNode);
- RedirectAllRequestsTo& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API RedirectAllRequestsTo();
+ AWS_S3_API RedirectAllRequestsTo(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API RedirectAllRequestsTo& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -119,10 +119,10 @@ namespace Model
private:
Aws::String m_hostName;
- bool m_hostNameHasBeenSet;
+ bool m_hostNameHasBeenSet = false;
Protocol m_protocol;
- bool m_protocolHasBeenSet;
+ bool m_protocolHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicaModifications.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicaModifications.h
index e9685d6258..f8b35fc69c 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicaModifications.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicaModifications.h
@@ -34,14 +34,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ReplicaModifications">AWS
* API Reference</a></p>
*/
- class AWS_S3_API ReplicaModifications
+ class ReplicaModifications
{
public:
- ReplicaModifications();
- ReplicaModifications(const Aws::Utils::Xml::XmlNode& xmlNode);
- ReplicaModifications& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ReplicaModifications();
+ AWS_S3_API ReplicaModifications(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ReplicaModifications& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -77,7 +77,7 @@ namespace Model
private:
ReplicaModificationsStatus m_status;
- bool m_statusHasBeenSet;
+ bool m_statusHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationConfiguration.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationConfiguration.h
index e138c79cba..9ce58fd351 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationConfiguration.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationConfiguration.h
@@ -30,83 +30,83 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ReplicationConfiguration">AWS
* API Reference</a></p>
*/
- class AWS_S3_API ReplicationConfiguration
+ class ReplicationConfiguration
{
public:
- ReplicationConfiguration();
- ReplicationConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
- ReplicationConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ReplicationConfiguration();
+ AWS_S3_API ReplicationConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ReplicationConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
- * <p>The Amazon Resource Name (ARN) of the AWS Identity and Access Management
- * (IAM) role that Amazon S3 assumes when replicating objects. For more
- * information, see <a
+ * <p>The Amazon Resource Name (ARN) of the Identity and Access Management (IAM)
+ * role that Amazon S3 assumes when replicating objects. For more information, see
+ * <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-how-setup.html">How
* to Set Up Replication</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const Aws::String& GetRole() const{ return m_role; }
/**
- * <p>The Amazon Resource Name (ARN) of the AWS Identity and Access Management
- * (IAM) role that Amazon S3 assumes when replicating objects. For more
- * information, see <a
+ * <p>The Amazon Resource Name (ARN) of the Identity and Access Management (IAM)
+ * role that Amazon S3 assumes when replicating objects. For more information, see
+ * <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-how-setup.html">How
* to Set Up Replication</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline bool RoleHasBeenSet() const { return m_roleHasBeenSet; }
/**
- * <p>The Amazon Resource Name (ARN) of the AWS Identity and Access Management
- * (IAM) role that Amazon S3 assumes when replicating objects. For more
- * information, see <a
+ * <p>The Amazon Resource Name (ARN) of the Identity and Access Management (IAM)
+ * role that Amazon S3 assumes when replicating objects. For more information, see
+ * <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-how-setup.html">How
* to Set Up Replication</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetRole(const Aws::String& value) { m_roleHasBeenSet = true; m_role = value; }
/**
- * <p>The Amazon Resource Name (ARN) of the AWS Identity and Access Management
- * (IAM) role that Amazon S3 assumes when replicating objects. For more
- * information, see <a
+ * <p>The Amazon Resource Name (ARN) of the Identity and Access Management (IAM)
+ * role that Amazon S3 assumes when replicating objects. For more information, see
+ * <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-how-setup.html">How
* to Set Up Replication</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetRole(Aws::String&& value) { m_roleHasBeenSet = true; m_role = std::move(value); }
/**
- * <p>The Amazon Resource Name (ARN) of the AWS Identity and Access Management
- * (IAM) role that Amazon S3 assumes when replicating objects. For more
- * information, see <a
+ * <p>The Amazon Resource Name (ARN) of the Identity and Access Management (IAM)
+ * role that Amazon S3 assumes when replicating objects. For more information, see
+ * <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-how-setup.html">How
* to Set Up Replication</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetRole(const char* value) { m_roleHasBeenSet = true; m_role.assign(value); }
/**
- * <p>The Amazon Resource Name (ARN) of the AWS Identity and Access Management
- * (IAM) role that Amazon S3 assumes when replicating objects. For more
- * information, see <a
+ * <p>The Amazon Resource Name (ARN) of the Identity and Access Management (IAM)
+ * role that Amazon S3 assumes when replicating objects. For more information, see
+ * <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-how-setup.html">How
* to Set Up Replication</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline ReplicationConfiguration& WithRole(const Aws::String& value) { SetRole(value); return *this;}
/**
- * <p>The Amazon Resource Name (ARN) of the AWS Identity and Access Management
- * (IAM) role that Amazon S3 assumes when replicating objects. For more
- * information, see <a
+ * <p>The Amazon Resource Name (ARN) of the Identity and Access Management (IAM)
+ * role that Amazon S3 assumes when replicating objects. For more information, see
+ * <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-how-setup.html">How
* to Set Up Replication</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline ReplicationConfiguration& WithRole(Aws::String&& value) { SetRole(std::move(value)); return *this;}
/**
- * <p>The Amazon Resource Name (ARN) of the AWS Identity and Access Management
- * (IAM) role that Amazon S3 assumes when replicating objects. For more
- * information, see <a
+ * <p>The Amazon Resource Name (ARN) of the Identity and Access Management (IAM)
+ * role that Amazon S3 assumes when replicating objects. For more information, see
+ * <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-how-setup.html">How
* to Set Up Replication</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
@@ -164,10 +164,10 @@ namespace Model
private:
Aws::String m_role;
- bool m_roleHasBeenSet;
+ bool m_roleHasBeenSet = false;
Aws::Vector<ReplicationRule> m_rules;
- bool m_rulesHasBeenSet;
+ bool m_rulesHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationRule.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationRule.h
index 2003426a67..e9d85afdd3 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationRule.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationRule.h
@@ -34,14 +34,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ReplicationRule">AWS
* API Reference</a></p>
*/
- class AWS_S3_API ReplicationRule
+ class ReplicationRule
{
public:
- ReplicationRule();
- ReplicationRule(const Aws::Utils::Xml::XmlNode& xmlNode);
- ReplicationRule& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ReplicationRule();
+ AWS_S3_API ReplicationRule(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ReplicationRule& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -189,7 +189,7 @@ namespace Model
* objects that you want to replicate. You can choose to enable or disable the
* replication of these objects. Currently, Amazon S3 supports only the filter that
* you can specify for objects created with server-side encryption using a customer
- * master key (CMK) stored in AWS Key Management Service (SSE-KMS).</p>
+ * managed key stored in Amazon Web Services Key Management Service (SSE-KMS).</p>
*/
inline const SourceSelectionCriteria& GetSourceSelectionCriteria() const{ return m_sourceSelectionCriteria; }
@@ -198,7 +198,7 @@ namespace Model
* objects that you want to replicate. You can choose to enable or disable the
* replication of these objects. Currently, Amazon S3 supports only the filter that
* you can specify for objects created with server-side encryption using a customer
- * master key (CMK) stored in AWS Key Management Service (SSE-KMS).</p>
+ * managed key stored in Amazon Web Services Key Management Service (SSE-KMS).</p>
*/
inline bool SourceSelectionCriteriaHasBeenSet() const { return m_sourceSelectionCriteriaHasBeenSet; }
@@ -207,7 +207,7 @@ namespace Model
* objects that you want to replicate. You can choose to enable or disable the
* replication of these objects. Currently, Amazon S3 supports only the filter that
* you can specify for objects created with server-side encryption using a customer
- * master key (CMK) stored in AWS Key Management Service (SSE-KMS).</p>
+ * managed key stored in Amazon Web Services Key Management Service (SSE-KMS).</p>
*/
inline void SetSourceSelectionCriteria(const SourceSelectionCriteria& value) { m_sourceSelectionCriteriaHasBeenSet = true; m_sourceSelectionCriteria = value; }
@@ -216,7 +216,7 @@ namespace Model
* objects that you want to replicate. You can choose to enable or disable the
* replication of these objects. Currently, Amazon S3 supports only the filter that
* you can specify for objects created with server-side encryption using a customer
- * master key (CMK) stored in AWS Key Management Service (SSE-KMS).</p>
+ * managed key stored in Amazon Web Services Key Management Service (SSE-KMS).</p>
*/
inline void SetSourceSelectionCriteria(SourceSelectionCriteria&& value) { m_sourceSelectionCriteriaHasBeenSet = true; m_sourceSelectionCriteria = std::move(value); }
@@ -225,7 +225,7 @@ namespace Model
* objects that you want to replicate. You can choose to enable or disable the
* replication of these objects. Currently, Amazon S3 supports only the filter that
* you can specify for objects created with server-side encryption using a customer
- * master key (CMK) stored in AWS Key Management Service (SSE-KMS).</p>
+ * managed key stored in Amazon Web Services Key Management Service (SSE-KMS).</p>
*/
inline ReplicationRule& WithSourceSelectionCriteria(const SourceSelectionCriteria& value) { SetSourceSelectionCriteria(value); return *this;}
@@ -234,7 +234,7 @@ namespace Model
* objects that you want to replicate. You can choose to enable or disable the
* replication of these objects. Currently, Amazon S3 supports only the filter that
* you can specify for objects created with server-side encryption using a customer
- * master key (CMK) stored in AWS Key Management Service (SSE-KMS).</p>
+ * managed key stored in Amazon Web Services Key Management Service (SSE-KMS).</p>
*/
inline ReplicationRule& WithSourceSelectionCriteria(SourceSelectionCriteria&& value) { SetSourceSelectionCriteria(std::move(value)); return *this;}
@@ -328,28 +328,28 @@ namespace Model
private:
Aws::String m_iD;
- bool m_iDHasBeenSet;
+ bool m_iDHasBeenSet = false;
int m_priority;
- bool m_priorityHasBeenSet;
+ bool m_priorityHasBeenSet = false;
ReplicationRuleFilter m_filter;
- bool m_filterHasBeenSet;
+ bool m_filterHasBeenSet = false;
ReplicationRuleStatus m_status;
- bool m_statusHasBeenSet;
+ bool m_statusHasBeenSet = false;
SourceSelectionCriteria m_sourceSelectionCriteria;
- bool m_sourceSelectionCriteriaHasBeenSet;
+ bool m_sourceSelectionCriteriaHasBeenSet = false;
ExistingObjectReplication m_existingObjectReplication;
- bool m_existingObjectReplicationHasBeenSet;
+ bool m_existingObjectReplicationHasBeenSet = false;
Destination m_destination;
- bool m_destinationHasBeenSet;
+ bool m_destinationHasBeenSet = false;
DeleteMarkerReplication m_deleteMarkerReplication;
- bool m_deleteMarkerReplicationHasBeenSet;
+ bool m_deleteMarkerReplicationHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationRuleAndOperator.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationRuleAndOperator.h
index bf78d3af98..f19f496f5c 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationRuleAndOperator.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationRuleAndOperator.h
@@ -35,14 +35,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ReplicationRuleAndOperator">AWS
* API Reference</a></p>
*/
- class AWS_S3_API ReplicationRuleAndOperator
+ class ReplicationRuleAndOperator
{
public:
- ReplicationRuleAndOperator();
- ReplicationRuleAndOperator(const Aws::Utils::Xml::XmlNode& xmlNode);
- ReplicationRuleAndOperator& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ReplicationRuleAndOperator();
+ AWS_S3_API ReplicationRuleAndOperator(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ReplicationRuleAndOperator& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -137,10 +137,10 @@ namespace Model
private:
Aws::String m_prefix;
- bool m_prefixHasBeenSet;
+ bool m_prefixHasBeenSet = false;
Aws::Vector<Tag> m_tags;
- bool m_tagsHasBeenSet;
+ bool m_tagsHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationRuleFilter.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationRuleFilter.h
index 630c385d9e..8d64d1cdd1 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationRuleFilter.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationRuleFilter.h
@@ -32,14 +32,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ReplicationRuleFilter">AWS
* API Reference</a></p>
*/
- class AWS_S3_API ReplicationRuleFilter
+ class ReplicationRuleFilter
{
public:
- ReplicationRuleFilter();
- ReplicationRuleFilter(const Aws::Utils::Xml::XmlNode& xmlNode);
- ReplicationRuleFilter& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ReplicationRuleFilter();
+ AWS_S3_API ReplicationRuleFilter(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ReplicationRuleFilter& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -229,13 +229,13 @@ namespace Model
private:
Aws::String m_prefix;
- bool m_prefixHasBeenSet;
+ bool m_prefixHasBeenSet = false;
Tag m_tag;
- bool m_tagHasBeenSet;
+ bool m_tagHasBeenSet = false;
ReplicationRuleAndOperator m_and;
- bool m_andHasBeenSet;
+ bool m_andHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationTime.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationTime.h
index fa5cfd6008..80a05eba50 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationTime.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationTime.h
@@ -31,14 +31,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ReplicationTime">AWS
* API Reference</a></p>
*/
- class AWS_S3_API ReplicationTime
+ class ReplicationTime
{
public:
- ReplicationTime();
- ReplicationTime(const Aws::Utils::Xml::XmlNode& xmlNode);
- ReplicationTime& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ReplicationTime();
+ AWS_S3_API ReplicationTime(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ReplicationTime& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -111,10 +111,10 @@ namespace Model
private:
ReplicationTimeStatus m_status;
- bool m_statusHasBeenSet;
+ bool m_statusHasBeenSet = false;
ReplicationTimeValue m_time;
- bool m_timeHasBeenSet;
+ bool m_timeHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationTimeValue.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationTimeValue.h
index 846b5f88b9..eaabfecc7b 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationTimeValue.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ReplicationTimeValue.h
@@ -27,44 +27,40 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ReplicationTimeValue">AWS
* API Reference</a></p>
*/
- class AWS_S3_API ReplicationTimeValue
+ class ReplicationTimeValue
{
public:
- ReplicationTimeValue();
- ReplicationTimeValue(const Aws::Utils::Xml::XmlNode& xmlNode);
- ReplicationTimeValue& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ReplicationTimeValue();
+ AWS_S3_API ReplicationTimeValue(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ReplicationTimeValue& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
- * <p> Contains an integer specifying time in minutes. </p> <p> Valid values: 15
- * minutes. </p>
+ * <p> Contains an integer specifying time in minutes. </p> <p> Valid value: 15</p>
*/
inline int GetMinutes() const{ return m_minutes; }
/**
- * <p> Contains an integer specifying time in minutes. </p> <p> Valid values: 15
- * minutes. </p>
+ * <p> Contains an integer specifying time in minutes. </p> <p> Valid value: 15</p>
*/
inline bool MinutesHasBeenSet() const { return m_minutesHasBeenSet; }
/**
- * <p> Contains an integer specifying time in minutes. </p> <p> Valid values: 15
- * minutes. </p>
+ * <p> Contains an integer specifying time in minutes. </p> <p> Valid value: 15</p>
*/
inline void SetMinutes(int value) { m_minutesHasBeenSet = true; m_minutes = value; }
/**
- * <p> Contains an integer specifying time in minutes. </p> <p> Valid values: 15
- * minutes. </p>
+ * <p> Contains an integer specifying time in minutes. </p> <p> Valid value: 15</p>
*/
inline ReplicationTimeValue& WithMinutes(int value) { SetMinutes(value); return *this;}
private:
int m_minutes;
- bool m_minutesHasBeenSet;
+ bool m_minutesHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RequestPaymentConfiguration.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RequestPaymentConfiguration.h
index 72861dbe7b..b6c5bc4789 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RequestPaymentConfiguration.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RequestPaymentConfiguration.h
@@ -27,14 +27,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/RequestPaymentConfiguration">AWS
* API Reference</a></p>
*/
- class AWS_S3_API RequestPaymentConfiguration
+ class RequestPaymentConfiguration
{
public:
- RequestPaymentConfiguration();
- RequestPaymentConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
- RequestPaymentConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API RequestPaymentConfiguration();
+ AWS_S3_API RequestPaymentConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API RequestPaymentConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -70,7 +70,7 @@ namespace Model
private:
Payer m_payer;
- bool m_payerHasBeenSet;
+ bool m_payerHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RequestProgress.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RequestProgress.h
index 717ad47c6f..b4a08d0a7c 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RequestProgress.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RequestProgress.h
@@ -26,14 +26,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/RequestProgress">AWS
* API Reference</a></p>
*/
- class AWS_S3_API RequestProgress
+ class RequestProgress
{
public:
- RequestProgress();
- RequestProgress(const Aws::Utils::Xml::XmlNode& xmlNode);
- RequestProgress& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API RequestProgress();
+ AWS_S3_API RequestProgress(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API RequestProgress& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -63,7 +63,7 @@ namespace Model
private:
bool m_enabled;
- bool m_enabledHasBeenSet;
+ bool m_enabledHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RestoreObjectRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RestoreObjectRequest.h
index f588c84270..05e08111be 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RestoreObjectRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RestoreObjectRequest.h
@@ -9,6 +9,7 @@
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/s3/model/RestoreRequest.h>
#include <aws/s3/model/RequestPayer.h>
+#include <aws/s3/model/ChecksumAlgorithm.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
#include <utility>
@@ -25,10 +26,10 @@ namespace Model
/**
*/
- class AWS_S3_API RestoreObjectRequest : public S3Request
+ class RestoreObjectRequest : public S3Request
{
public:
- RestoreObjectRequest();
+ AWS_S3_API RestoreObjectRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -36,31 +37,37 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "RestoreObject"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::String GetChecksumAlgorithmName() const override;
+
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The bucket name containing the object to restore. </p> <p>When using this
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const Aws::String& GetBucket() const{ return m_bucket; }
@@ -69,19 +76,19 @@ namespace Model
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; }
@@ -90,19 +97,19 @@ namespace Model
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; }
@@ -111,19 +118,19 @@ namespace Model
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); }
@@ -132,19 +139,19 @@ namespace Model
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); }
@@ -153,19 +160,19 @@ namespace Model
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline RestoreObjectRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;}
@@ -174,19 +181,19 @@ namespace Model
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline RestoreObjectRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;}
@@ -195,19 +202,19 @@ namespace Model
* action with an access point, you must direct requests to the access point
* hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline RestoreObjectRequest& WithBucket(const char* value) { SetBucket(value); return *this;}
@@ -333,58 +340,143 @@ namespace Model
/**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline const ChecksumAlgorithm& GetChecksumAlgorithm() const{ return m_checksumAlgorithm; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline bool ChecksumAlgorithmHasBeenSet() const { return m_checksumAlgorithmHasBeenSet; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(const ChecksumAlgorithm& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = value; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline void SetChecksumAlgorithm(ChecksumAlgorithm&& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = std::move(value); }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline RestoreObjectRequest& WithChecksumAlgorithm(const ChecksumAlgorithm& value) { SetChecksumAlgorithm(value); return *this;}
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p>
+ */
+ inline RestoreObjectRequest& WithChecksumAlgorithm(ChecksumAlgorithm&& value) { SetChecksumAlgorithm(std::move(value)); return *this;}
+
+
+ /**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline RestoreObjectRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline RestoreObjectRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline RestoreObjectRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -431,25 +523,28 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_key;
- bool m_keyHasBeenSet;
+ bool m_keyHasBeenSet = false;
Aws::String m_versionId;
- bool m_versionIdHasBeenSet;
+ bool m_versionIdHasBeenSet = false;
RestoreRequest m_restoreRequest;
- bool m_restoreRequestHasBeenSet;
+ bool m_restoreRequestHasBeenSet = false;
RequestPayer m_requestPayer;
- bool m_requestPayerHasBeenSet;
+ bool m_requestPayerHasBeenSet = false;
+
+ ChecksumAlgorithm m_checksumAlgorithm;
+ bool m_checksumAlgorithmHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RestoreObjectResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RestoreObjectResult.h
index 2cadd53189..703a41037b 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RestoreObjectResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RestoreObjectResult.h
@@ -25,12 +25,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API RestoreObjectResult
+ class RestoreObjectResult
{
public:
- RestoreObjectResult();
- RestoreObjectResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- RestoreObjectResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API RestoreObjectResult();
+ AWS_S3_API RestoreObjectResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API RestoreObjectResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RestoreRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RestoreRequest.h
index f2460fbc85..9324a713ad 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RestoreRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RestoreRequest.h
@@ -32,14 +32,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/RestoreRequest">AWS
* API Reference</a></p>
*/
- class AWS_S3_API RestoreRequest
+ class RestoreRequest
{
public:
- RestoreRequest();
- RestoreRequest(const Aws::Utils::Xml::XmlNode& xmlNode);
- RestoreRequest& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API RestoreRequest();
+ AWS_S3_API RestoreRequest(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API RestoreRequest& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -275,25 +275,25 @@ namespace Model
private:
int m_days;
- bool m_daysHasBeenSet;
+ bool m_daysHasBeenSet = false;
GlacierJobParameters m_glacierJobParameters;
- bool m_glacierJobParametersHasBeenSet;
+ bool m_glacierJobParametersHasBeenSet = false;
RestoreRequestType m_type;
- bool m_typeHasBeenSet;
+ bool m_typeHasBeenSet = false;
Tier m_tier;
- bool m_tierHasBeenSet;
+ bool m_tierHasBeenSet = false;
Aws::String m_description;
- bool m_descriptionHasBeenSet;
+ bool m_descriptionHasBeenSet = false;
SelectParameters m_selectParameters;
- bool m_selectParametersHasBeenSet;
+ bool m_selectParametersHasBeenSet = false;
OutputLocation m_outputLocation;
- bool m_outputLocationHasBeenSet;
+ bool m_outputLocationHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RoutingRule.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RoutingRule.h
index e87bdb7958..127ad69117 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RoutingRule.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/RoutingRule.h
@@ -32,14 +32,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/RoutingRule">AWS API
* Reference</a></p>
*/
- class AWS_S3_API RoutingRule
+ class RoutingRule
{
public:
- RoutingRule();
- RoutingRule(const Aws::Utils::Xml::XmlNode& xmlNode);
- RoutingRule& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API RoutingRule();
+ AWS_S3_API RoutingRule(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API RoutingRule& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -142,10 +142,10 @@ namespace Model
private:
Condition m_condition;
- bool m_conditionHasBeenSet;
+ bool m_conditionHasBeenSet = false;
Redirect m_redirect;
- bool m_redirectHasBeenSet;
+ bool m_redirectHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Rule.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Rule.h
index 7613ef3226..d0065042f3 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Rule.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Rule.h
@@ -32,21 +32,21 @@ namespace Model
* <p>Specifies lifecycle rules for an Amazon S3 bucket. For more information, see
* <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTlifecycle.html">Put
- * Bucket Lifecycle Configuration</a> in the <i>Amazon Simple Storage Service API
- * Reference</i>. For examples, see <a
+ * Bucket Lifecycle Configuration</a> in the <i>Amazon S3 API Reference</i>. For
+ * examples, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html#API_PutBucketLifecycleConfiguration_Examples">Put
* Bucket Lifecycle Configuration Examples</a>.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/Rule">AWS API
* Reference</a></p>
*/
- class AWS_S3_API Rule
+ class Rule
{
public:
- Rule();
- Rule(const Aws::Utils::Xml::XmlNode& xmlNode);
- Rule& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Rule();
+ AWS_S3_API Rule(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Rule& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -355,28 +355,28 @@ namespace Model
private:
LifecycleExpiration m_expiration;
- bool m_expirationHasBeenSet;
+ bool m_expirationHasBeenSet = false;
Aws::String m_iD;
- bool m_iDHasBeenSet;
+ bool m_iDHasBeenSet = false;
Aws::String m_prefix;
- bool m_prefixHasBeenSet;
+ bool m_prefixHasBeenSet = false;
ExpirationStatus m_status;
- bool m_statusHasBeenSet;
+ bool m_statusHasBeenSet = false;
Transition m_transition;
- bool m_transitionHasBeenSet;
+ bool m_transitionHasBeenSet = false;
NoncurrentVersionTransition m_noncurrentVersionTransition;
- bool m_noncurrentVersionTransitionHasBeenSet;
+ bool m_noncurrentVersionTransitionHasBeenSet = false;
NoncurrentVersionExpiration m_noncurrentVersionExpiration;
- bool m_noncurrentVersionExpirationHasBeenSet;
+ bool m_noncurrentVersionExpirationHasBeenSet = false;
AbortIncompleteMultipartUpload m_abortIncompleteMultipartUpload;
- bool m_abortIncompleteMultipartUploadHasBeenSet;
+ bool m_abortIncompleteMultipartUploadHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/S3KeyFilter.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/S3KeyFilter.h
index 0f22a9524e..de9827621b 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/S3KeyFilter.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/S3KeyFilter.h
@@ -29,14 +29,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/S3KeyFilter">AWS API
* Reference</a></p>
*/
- class AWS_S3_API S3KeyFilter
+ class S3KeyFilter
{
public:
- S3KeyFilter();
- S3KeyFilter(const Aws::Utils::Xml::XmlNode& xmlNode);
- S3KeyFilter& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API S3KeyFilter();
+ AWS_S3_API S3KeyFilter(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API S3KeyFilter& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
@@ -66,7 +66,7 @@ namespace Model
private:
Aws::Vector<FilterRule> m_filterRules;
- bool m_filterRulesHasBeenSet;
+ bool m_filterRulesHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/S3Location.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/S3Location.h
index 8f0eab338b..a2614cc2c8 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/S3Location.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/S3Location.h
@@ -35,14 +35,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/S3Location">AWS API
* Reference</a></p>
*/
- class AWS_S3_API S3Location
+ class S3Location
{
public:
- S3Location();
- S3Location(const Aws::Utils::Xml::XmlNode& xmlNode);
- S3Location& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API S3Location();
+ AWS_S3_API S3Location(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API S3Location& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -323,28 +323,28 @@ namespace Model
private:
Aws::String m_bucketName;
- bool m_bucketNameHasBeenSet;
+ bool m_bucketNameHasBeenSet = false;
Aws::String m_prefix;
- bool m_prefixHasBeenSet;
+ bool m_prefixHasBeenSet = false;
Encryption m_encryption;
- bool m_encryptionHasBeenSet;
+ bool m_encryptionHasBeenSet = false;
ObjectCannedACL m_cannedACL;
- bool m_cannedACLHasBeenSet;
+ bool m_cannedACLHasBeenSet = false;
Aws::Vector<Grant> m_accessControlList;
- bool m_accessControlListHasBeenSet;
+ bool m_accessControlListHasBeenSet = false;
Tagging m_tagging;
- bool m_taggingHasBeenSet;
+ bool m_taggingHasBeenSet = false;
Aws::Vector<MetadataEntry> m_userMetadata;
- bool m_userMetadataHasBeenSet;
+ bool m_userMetadataHasBeenSet = false;
StorageClass m_storageClass;
- bool m_storageClassHasBeenSet;
+ bool m_storageClassHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SSEKMS.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SSEKMS.h
index b7b1ac25be..eaae8f2319 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SSEKMS.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SSEKMS.h
@@ -28,68 +28,68 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/SSEKMS">AWS API
* Reference</a></p>
*/
- class AWS_S3_API SSEKMS
+ class SSEKMS
{
public:
- SSEKMS();
- SSEKMS(const Aws::Utils::Xml::XmlNode& xmlNode);
- SSEKMS& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API SSEKMS();
+ AWS_S3_API SSEKMS(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API SSEKMS& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
- * <p>Specifies the ID of the AWS Key Management Service (AWS KMS) symmetric
- * customer managed customer master key (CMK) to use for encrypting inventory
+ * <p>Specifies the ID of the Amazon Web Services Key Management Service (Amazon
+ * Web Services KMS) symmetric customer managed key to use for encrypting inventory
* reports.</p>
*/
inline const Aws::String& GetKeyId() const{ return m_keyId; }
/**
- * <p>Specifies the ID of the AWS Key Management Service (AWS KMS) symmetric
- * customer managed customer master key (CMK) to use for encrypting inventory
+ * <p>Specifies the ID of the Amazon Web Services Key Management Service (Amazon
+ * Web Services KMS) symmetric customer managed key to use for encrypting inventory
* reports.</p>
*/
inline bool KeyIdHasBeenSet() const { return m_keyIdHasBeenSet; }
/**
- * <p>Specifies the ID of the AWS Key Management Service (AWS KMS) symmetric
- * customer managed customer master key (CMK) to use for encrypting inventory
+ * <p>Specifies the ID of the Amazon Web Services Key Management Service (Amazon
+ * Web Services KMS) symmetric customer managed key to use for encrypting inventory
* reports.</p>
*/
inline void SetKeyId(const Aws::String& value) { m_keyIdHasBeenSet = true; m_keyId = value; }
/**
- * <p>Specifies the ID of the AWS Key Management Service (AWS KMS) symmetric
- * customer managed customer master key (CMK) to use for encrypting inventory
+ * <p>Specifies the ID of the Amazon Web Services Key Management Service (Amazon
+ * Web Services KMS) symmetric customer managed key to use for encrypting inventory
* reports.</p>
*/
inline void SetKeyId(Aws::String&& value) { m_keyIdHasBeenSet = true; m_keyId = std::move(value); }
/**
- * <p>Specifies the ID of the AWS Key Management Service (AWS KMS) symmetric
- * customer managed customer master key (CMK) to use for encrypting inventory
+ * <p>Specifies the ID of the Amazon Web Services Key Management Service (Amazon
+ * Web Services KMS) symmetric customer managed key to use for encrypting inventory
* reports.</p>
*/
inline void SetKeyId(const char* value) { m_keyIdHasBeenSet = true; m_keyId.assign(value); }
/**
- * <p>Specifies the ID of the AWS Key Management Service (AWS KMS) symmetric
- * customer managed customer master key (CMK) to use for encrypting inventory
+ * <p>Specifies the ID of the Amazon Web Services Key Management Service (Amazon
+ * Web Services KMS) symmetric customer managed key to use for encrypting inventory
* reports.</p>
*/
inline SSEKMS& WithKeyId(const Aws::String& value) { SetKeyId(value); return *this;}
/**
- * <p>Specifies the ID of the AWS Key Management Service (AWS KMS) symmetric
- * customer managed customer master key (CMK) to use for encrypting inventory
+ * <p>Specifies the ID of the Amazon Web Services Key Management Service (Amazon
+ * Web Services KMS) symmetric customer managed key to use for encrypting inventory
* reports.</p>
*/
inline SSEKMS& WithKeyId(Aws::String&& value) { SetKeyId(std::move(value)); return *this;}
/**
- * <p>Specifies the ID of the AWS Key Management Service (AWS KMS) symmetric
- * customer managed customer master key (CMK) to use for encrypting inventory
+ * <p>Specifies the ID of the Amazon Web Services Key Management Service (Amazon
+ * Web Services KMS) symmetric customer managed key to use for encrypting inventory
* reports.</p>
*/
inline SSEKMS& WithKeyId(const char* value) { SetKeyId(value); return *this;}
@@ -97,7 +97,7 @@ namespace Model
private:
Aws::String m_keyId;
- bool m_keyIdHasBeenSet;
+ bool m_keyIdHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SSES3.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SSES3.h
index 7312fd2917..3311fc7879 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SSES3.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SSES3.h
@@ -26,14 +26,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/SSES3">AWS API
* Reference</a></p>
*/
- class AWS_S3_API SSES3
+ class SSES3
{
public:
- SSES3();
- SSES3(const Aws::Utils::Xml::XmlNode& xmlNode);
- SSES3& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API SSES3();
+ AWS_S3_API SSES3(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API SSES3& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
};
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ScanRange.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ScanRange.h
index dd964d0441..9daee6c68d 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ScanRange.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ScanRange.h
@@ -29,20 +29,21 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ScanRange">AWS API
* Reference</a></p>
*/
- class AWS_S3_API ScanRange
+ class ScanRange
{
public:
- ScanRange();
- ScanRange(const Aws::Utils::Xml::XmlNode& xmlNode);
- ScanRange& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ScanRange();
+ AWS_S3_API ScanRange(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ScanRange& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
* <p>Specifies the start of the byte range. This parameter is optional. Valid
- * values: non-negative integers. The default value is 0. If only start is
- * supplied, it means scan from that point to the end of the file.For example;
+ * values: non-negative integers. The default value is 0. If only
+ * <code>start</code> is supplied, it means scan from that point to the end of the
+ * file. For example,
* <code>&lt;scanrange&gt;&lt;start&gt;50&lt;/start&gt;&lt;/scanrange&gt;</code>
* means scan from byte 50 until the end of the file.</p>
*/
@@ -50,8 +51,9 @@ namespace Model
/**
* <p>Specifies the start of the byte range. This parameter is optional. Valid
- * values: non-negative integers. The default value is 0. If only start is
- * supplied, it means scan from that point to the end of the file.For example;
+ * values: non-negative integers. The default value is 0. If only
+ * <code>start</code> is supplied, it means scan from that point to the end of the
+ * file. For example,
* <code>&lt;scanrange&gt;&lt;start&gt;50&lt;/start&gt;&lt;/scanrange&gt;</code>
* means scan from byte 50 until the end of the file.</p>
*/
@@ -59,8 +61,9 @@ namespace Model
/**
* <p>Specifies the start of the byte range. This parameter is optional. Valid
- * values: non-negative integers. The default value is 0. If only start is
- * supplied, it means scan from that point to the end of the file.For example;
+ * values: non-negative integers. The default value is 0. If only
+ * <code>start</code> is supplied, it means scan from that point to the end of the
+ * file. For example,
* <code>&lt;scanrange&gt;&lt;start&gt;50&lt;/start&gt;&lt;/scanrange&gt;</code>
* means scan from byte 50 until the end of the file.</p>
*/
@@ -68,8 +71,9 @@ namespace Model
/**
* <p>Specifies the start of the byte range. This parameter is optional. Valid
- * values: non-negative integers. The default value is 0. If only start is
- * supplied, it means scan from that point to the end of the file.For example;
+ * values: non-negative integers. The default value is 0. If only
+ * <code>start</code> is supplied, it means scan from that point to the end of the
+ * file. For example,
* <code>&lt;scanrange&gt;&lt;start&gt;50&lt;/start&gt;&lt;/scanrange&gt;</code>
* means scan from byte 50 until the end of the file.</p>
*/
@@ -119,10 +123,10 @@ namespace Model
private:
long long m_start;
- bool m_startHasBeenSet;
+ bool m_startHasBeenSet = false;
long long m_end;
- bool m_endHasBeenSet;
+ bool m_endHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SelectObjectContentHandler.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SelectObjectContentHandler.h
index 508785ba3b..6abef89df7 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SelectObjectContentHandler.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SelectObjectContentHandler.h
@@ -30,7 +30,7 @@ namespace Model
UNKNOWN
};
- class AWS_S3_API SelectObjectContentHandler : public Aws::Utils::Event::EventStreamHandler
+ class SelectObjectContentHandler : public Aws::Utils::Event::EventStreamHandler
{
typedef std::function<void(const RecordsEvent&)> RecordsEventCallback;
typedef std::function<void(const StatsEvent&)> StatsEventCallback;
@@ -40,10 +40,10 @@ namespace Model
typedef std::function<void(const Aws::Client::AWSError<S3Errors>& error)> ErrorCallback;
public:
- SelectObjectContentHandler();
- SelectObjectContentHandler& operator=(const SelectObjectContentHandler&) = default;
+ AWS_S3_API SelectObjectContentHandler();
+ AWS_S3_API SelectObjectContentHandler& operator=(const SelectObjectContentHandler&) = default;
- virtual void OnEvent() override;
+ AWS_S3_API virtual void OnEvent() override;
inline void SetRecordsEventCallback(const RecordsEventCallback& callback) { m_onRecordsEvent = callback; }
inline void SetStatsEventCallback(const StatsEventCallback& callback) { m_onStatsEvent = callback; }
@@ -53,9 +53,9 @@ namespace Model
inline void SetOnErrorCallback(const ErrorCallback& callback) { m_onError = callback; }
private:
- void HandleEventInMessage();
- void HandleErrorInMessage();
- void MarshallError(const Aws::String& errorCode, const Aws::String& errorMessage);
+ AWS_S3_API void HandleEventInMessage();
+ AWS_S3_API void HandleErrorInMessage();
+ AWS_S3_API void MarshallError(const Aws::String& errorCode, const Aws::String& errorMessage);
RecordsEventCallback m_onRecordsEvent;
StatsEventCallback m_onStatsEvent;
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SelectObjectContentRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SelectObjectContentRequest.h
index 73dc58023f..6d032445ef 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SelectObjectContentRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SelectObjectContentRequest.h
@@ -40,10 +40,10 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/SelectObjectContentRequest">AWS
* API Reference</a></p>
*/
- class AWS_S3_API SelectObjectContentRequest : public S3Request
+ class SelectObjectContentRequest : public S3Request
{
public:
- SelectObjectContentRequest();
+ AWS_S3_API SelectObjectContentRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -51,11 +51,11 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "SelectObjectContent"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
/**
* Underlying Event Stream Decoder.
@@ -77,6 +77,10 @@ namespace Model
*/
inline SelectObjectContentRequest& WithEventStreamHandler(const SelectObjectContentHandler& value) { SetEventStreamHandler(value); return *this; }
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The S3 bucket.</p>
@@ -161,172 +165,220 @@ namespace Model
/**
- * <p>The SSE Algorithm used to encrypt the object. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side
- * Encryption (Using Customer-Provided Encryption Keys</a>. </p>
+ * <p>The server-side encryption (SSE) algorithm used to encrypt the object. This
+ * parameter is needed only when the object was created using a checksum algorithm.
+ * For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const Aws::String& GetSSECustomerAlgorithm() const{ return m_sSECustomerAlgorithm; }
/**
- * <p>The SSE Algorithm used to encrypt the object. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side
- * Encryption (Using Customer-Provided Encryption Keys</a>. </p>
+ * <p>The server-side encryption (SSE) algorithm used to encrypt the object. This
+ * parameter is needed only when the object was created using a checksum algorithm.
+ * For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline bool SSECustomerAlgorithmHasBeenSet() const { return m_sSECustomerAlgorithmHasBeenSet; }
/**
- * <p>The SSE Algorithm used to encrypt the object. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side
- * Encryption (Using Customer-Provided Encryption Keys</a>. </p>
+ * <p>The server-side encryption (SSE) algorithm used to encrypt the object. This
+ * parameter is needed only when the object was created using a checksum algorithm.
+ * For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetSSECustomerAlgorithm(const Aws::String& value) { m_sSECustomerAlgorithmHasBeenSet = true; m_sSECustomerAlgorithm = value; }
/**
- * <p>The SSE Algorithm used to encrypt the object. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side
- * Encryption (Using Customer-Provided Encryption Keys</a>. </p>
+ * <p>The server-side encryption (SSE) algorithm used to encrypt the object. This
+ * parameter is needed only when the object was created using a checksum algorithm.
+ * For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetSSECustomerAlgorithm(Aws::String&& value) { m_sSECustomerAlgorithmHasBeenSet = true; m_sSECustomerAlgorithm = std::move(value); }
/**
- * <p>The SSE Algorithm used to encrypt the object. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side
- * Encryption (Using Customer-Provided Encryption Keys</a>. </p>
+ * <p>The server-side encryption (SSE) algorithm used to encrypt the object. This
+ * parameter is needed only when the object was created using a checksum algorithm.
+ * For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetSSECustomerAlgorithm(const char* value) { m_sSECustomerAlgorithmHasBeenSet = true; m_sSECustomerAlgorithm.assign(value); }
/**
- * <p>The SSE Algorithm used to encrypt the object. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side
- * Encryption (Using Customer-Provided Encryption Keys</a>. </p>
+ * <p>The server-side encryption (SSE) algorithm used to encrypt the object. This
+ * parameter is needed only when the object was created using a checksum algorithm.
+ * For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline SelectObjectContentRequest& WithSSECustomerAlgorithm(const Aws::String& value) { SetSSECustomerAlgorithm(value); return *this;}
/**
- * <p>The SSE Algorithm used to encrypt the object. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side
- * Encryption (Using Customer-Provided Encryption Keys</a>. </p>
+ * <p>The server-side encryption (SSE) algorithm used to encrypt the object. This
+ * parameter is needed only when the object was created using a checksum algorithm.
+ * For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline SelectObjectContentRequest& WithSSECustomerAlgorithm(Aws::String&& value) { SetSSECustomerAlgorithm(std::move(value)); return *this;}
/**
- * <p>The SSE Algorithm used to encrypt the object. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side
- * Encryption (Using Customer-Provided Encryption Keys</a>. </p>
+ * <p>The server-side encryption (SSE) algorithm used to encrypt the object. This
+ * parameter is needed only when the object was created using a checksum algorithm.
+ * For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline SelectObjectContentRequest& WithSSECustomerAlgorithm(const char* value) { SetSSECustomerAlgorithm(value); return *this;}
/**
- * <p>The SSE Customer Key. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side
- * Encryption (Using Customer-Provided Encryption Keys</a>. </p>
+ * <p>The server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const Aws::String& GetSSECustomerKey() const{ return m_sSECustomerKey; }
/**
- * <p>The SSE Customer Key. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side
- * Encryption (Using Customer-Provided Encryption Keys</a>. </p>
+ * <p>The server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline bool SSECustomerKeyHasBeenSet() const { return m_sSECustomerKeyHasBeenSet; }
/**
- * <p>The SSE Customer Key. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side
- * Encryption (Using Customer-Provided Encryption Keys</a>. </p>
+ * <p>The server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetSSECustomerKey(const Aws::String& value) { m_sSECustomerKeyHasBeenSet = true; m_sSECustomerKey = value; }
/**
- * <p>The SSE Customer Key. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side
- * Encryption (Using Customer-Provided Encryption Keys</a>. </p>
+ * <p>The server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetSSECustomerKey(Aws::String&& value) { m_sSECustomerKeyHasBeenSet = true; m_sSECustomerKey = std::move(value); }
/**
- * <p>The SSE Customer Key. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side
- * Encryption (Using Customer-Provided Encryption Keys</a>. </p>
+ * <p>The server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetSSECustomerKey(const char* value) { m_sSECustomerKeyHasBeenSet = true; m_sSECustomerKey.assign(value); }
/**
- * <p>The SSE Customer Key. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side
- * Encryption (Using Customer-Provided Encryption Keys</a>. </p>
+ * <p>The server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline SelectObjectContentRequest& WithSSECustomerKey(const Aws::String& value) { SetSSECustomerKey(value); return *this;}
/**
- * <p>The SSE Customer Key. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side
- * Encryption (Using Customer-Provided Encryption Keys</a>. </p>
+ * <p>The server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline SelectObjectContentRequest& WithSSECustomerKey(Aws::String&& value) { SetSSECustomerKey(std::move(value)); return *this;}
/**
- * <p>The SSE Customer Key. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side
- * Encryption (Using Customer-Provided Encryption Keys</a>. </p>
+ * <p>The server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline SelectObjectContentRequest& WithSSECustomerKey(const char* value) { SetSSECustomerKey(value); return *this;}
/**
- * <p>The SSE Customer Key MD5. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side
- * Encryption (Using Customer-Provided Encryption Keys</a>. </p>
+ * <p>The MD5 server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const Aws::String& GetSSECustomerKeyMD5() const{ return m_sSECustomerKeyMD5; }
/**
- * <p>The SSE Customer Key MD5. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side
- * Encryption (Using Customer-Provided Encryption Keys</a>. </p>
+ * <p>The MD5 server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline bool SSECustomerKeyMD5HasBeenSet() const { return m_sSECustomerKeyMD5HasBeenSet; }
/**
- * <p>The SSE Customer Key MD5. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side
- * Encryption (Using Customer-Provided Encryption Keys</a>. </p>
+ * <p>The MD5 server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetSSECustomerKeyMD5(const Aws::String& value) { m_sSECustomerKeyMD5HasBeenSet = true; m_sSECustomerKeyMD5 = value; }
/**
- * <p>The SSE Customer Key MD5. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side
- * Encryption (Using Customer-Provided Encryption Keys</a>. </p>
+ * <p>The MD5 server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetSSECustomerKeyMD5(Aws::String&& value) { m_sSECustomerKeyMD5HasBeenSet = true; m_sSECustomerKeyMD5 = std::move(value); }
/**
- * <p>The SSE Customer Key MD5. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side
- * Encryption (Using Customer-Provided Encryption Keys</a>. </p>
+ * <p>The MD5 server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetSSECustomerKeyMD5(const char* value) { m_sSECustomerKeyMD5HasBeenSet = true; m_sSECustomerKeyMD5.assign(value); }
/**
- * <p>The SSE Customer Key MD5. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side
- * Encryption (Using Customer-Provided Encryption Keys</a>. </p>
+ * <p>The MD5 server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline SelectObjectContentRequest& WithSSECustomerKeyMD5(const Aws::String& value) { SetSSECustomerKeyMD5(value); return *this;}
/**
- * <p>The SSE Customer Key MD5. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side
- * Encryption (Using Customer-Provided Encryption Keys</a>. </p>
+ * <p>The MD5 server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline SelectObjectContentRequest& WithSSECustomerKeyMD5(Aws::String&& value) { SetSSECustomerKeyMD5(std::move(value)); return *this;}
/**
- * <p>The SSE Customer Key MD5. For more information, see <a
- * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Server-Side
- * Encryption (Using Customer-Provided Encryption Keys</a>. </p>
+ * <p>The MD5 server-side encryption (SSE) customer managed key. This parameter is
+ * needed only when the object was created using a checksum algorithm. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting
+ * data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline SelectObjectContentRequest& WithSSECustomerKeyMD5(const char* value) { SetSSECustomerKeyMD5(value); return *this;}
@@ -601,57 +653,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline SelectObjectContentRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline SelectObjectContentRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline SelectObjectContentRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -698,45 +750,45 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_key;
- bool m_keyHasBeenSet;
+ bool m_keyHasBeenSet = false;
Aws::String m_sSECustomerAlgorithm;
- bool m_sSECustomerAlgorithmHasBeenSet;
+ bool m_sSECustomerAlgorithmHasBeenSet = false;
Aws::String m_sSECustomerKey;
- bool m_sSECustomerKeyHasBeenSet;
+ bool m_sSECustomerKeyHasBeenSet = false;
Aws::String m_sSECustomerKeyMD5;
- bool m_sSECustomerKeyMD5HasBeenSet;
+ bool m_sSECustomerKeyMD5HasBeenSet = false;
Aws::String m_expression;
- bool m_expressionHasBeenSet;
+ bool m_expressionHasBeenSet = false;
ExpressionType m_expressionType;
- bool m_expressionTypeHasBeenSet;
+ bool m_expressionTypeHasBeenSet = false;
RequestProgress m_requestProgress;
- bool m_requestProgressHasBeenSet;
+ bool m_requestProgressHasBeenSet = false;
InputSerialization m_inputSerialization;
- bool m_inputSerializationHasBeenSet;
+ bool m_inputSerializationHasBeenSet = false;
OutputSerialization m_outputSerialization;
- bool m_outputSerializationHasBeenSet;
+ bool m_outputSerializationHasBeenSet = false;
ScanRange m_scanRange;
- bool m_scanRangeHasBeenSet;
+ bool m_scanRangeHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
- Aws::Utils::Event::EventStreamDecoder m_decoder;
+ bool m_customizedAccessLogTagHasBeenSet = false;
SelectObjectContentHandler m_handler;
+ Aws::Utils::Event::EventStreamDecoder m_decoder;
};
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SelectParameters.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SelectParameters.h
index b9ddc3073d..450fabed41 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SelectParameters.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SelectParameters.h
@@ -30,14 +30,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/SelectParameters">AWS
* API Reference</a></p>
*/
- class AWS_S3_API SelectParameters
+ class SelectParameters
{
public:
- SelectParameters();
- SelectParameters(const Aws::Utils::Xml::XmlNode& xmlNode);
- SelectParameters& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API SelectParameters();
+ AWS_S3_API SelectParameters(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API SelectParameters& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -176,16 +176,16 @@ namespace Model
private:
InputSerialization m_inputSerialization;
- bool m_inputSerializationHasBeenSet;
+ bool m_inputSerializationHasBeenSet = false;
ExpressionType m_expressionType;
- bool m_expressionTypeHasBeenSet;
+ bool m_expressionTypeHasBeenSet = false;
Aws::String m_expression;
- bool m_expressionHasBeenSet;
+ bool m_expressionHasBeenSet = false;
OutputSerialization m_outputSerialization;
- bool m_outputSerializationHasBeenSet;
+ bool m_outputSerializationHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ServerSideEncryptionByDefault.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ServerSideEncryptionByDefault.h
index 273cb34fbe..69fc7b2dd7 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ServerSideEncryptionByDefault.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ServerSideEncryptionByDefault.h
@@ -26,21 +26,25 @@ namespace Model
/**
* <p>Describes the default server-side encryption to apply to new objects in the
* bucket. If a PUT Object request doesn't specify any server-side encryption, this
- * default encryption will be applied. For more information, see <a
+ * default encryption will be applied. If you don't specify a customer managed key
+ * at configuration, Amazon S3 automatically creates an Amazon Web Services KMS key
+ * in your Amazon Web Services account the first time that you add an object
+ * encrypted with SSE-KMS to a bucket. By default, Amazon S3 uses this KMS key for
+ * SSE-KMS. For more information, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTencryption.html">PUT
- * Bucket encryption</a> in the <i>Amazon Simple Storage Service API
- * Reference</i>.</p><p><h3>See Also:</h3> <a
+ * Bucket encryption</a> in the <i>Amazon S3 API Reference</i>.</p><p><h3>See
+ * Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ServerSideEncryptionByDefault">AWS
* API Reference</a></p>
*/
- class AWS_S3_API ServerSideEncryptionByDefault
+ class ServerSideEncryptionByDefault
{
public:
- ServerSideEncryptionByDefault();
- ServerSideEncryptionByDefault(const Aws::Utils::Xml::XmlNode& xmlNode);
- ServerSideEncryptionByDefault& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ServerSideEncryptionByDefault();
+ AWS_S3_API ServerSideEncryptionByDefault(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ServerSideEncryptionByDefault& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -75,172 +79,180 @@ namespace Model
/**
- * <p>AWS Key Management Service (KMS) customer master key ID to use for the
- * default encryption. This parameter is allowed if and only if
- * <code>SSEAlgorithm</code> is set to <code>aws:kms</code>.</p> <p>You can specify
- * the key ID or the Amazon Resource Name (ARN) of the CMK. However, if you are
- * using encryption with cross-account operations, you must use a fully qualified
- * CMK ARN. For more information, see <a
+ * <p>Amazon Web Services Key Management Service (KMS) customer Amazon Web Services
+ * KMS key ID to use for the default encryption. This parameter is allowed if and
+ * only if <code>SSEAlgorithm</code> is set to <code>aws:kms</code>.</p> <p>You can
+ * specify the key ID or the Amazon Resource Name (ARN) of the KMS key. However, if
+ * you are using encryption with cross-account or Amazon Web Services service
+ * operations you must use a fully qualified KMS key ARN. For more information, see
+ * <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html#bucket-encryption-update-bucket-policy">Using
* encryption for cross-account operations</a>. </p> <p> <b>For example:</b> </p>
* <ul> <li> <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code> </p>
* </li> <li> <p>Key ARN:
* <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
- * </p> </li> </ul> <p>Amazon S3 only supports symmetric CMKs and not
- * asymmetric CMKs. For more information, see <a
+ * </p> </li> </ul> <p>Amazon S3 only supports symmetric KMS keys and
+ * not asymmetric KMS keys. For more information, see <a
* href="https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html">Using
- * Symmetric and Asymmetric Keys</a> in the <i>AWS Key Management Service Developer
- * Guide</i>.</p>
+ * symmetric and asymmetric keys</a> in the <i>Amazon Web Services Key Management
+ * Service Developer Guide</i>.</p>
*/
inline const Aws::String& GetKMSMasterKeyID() const{ return m_kMSMasterKeyID; }
/**
- * <p>AWS Key Management Service (KMS) customer master key ID to use for the
- * default encryption. This parameter is allowed if and only if
- * <code>SSEAlgorithm</code> is set to <code>aws:kms</code>.</p> <p>You can specify
- * the key ID or the Amazon Resource Name (ARN) of the CMK. However, if you are
- * using encryption with cross-account operations, you must use a fully qualified
- * CMK ARN. For more information, see <a
+ * <p>Amazon Web Services Key Management Service (KMS) customer Amazon Web Services
+ * KMS key ID to use for the default encryption. This parameter is allowed if and
+ * only if <code>SSEAlgorithm</code> is set to <code>aws:kms</code>.</p> <p>You can
+ * specify the key ID or the Amazon Resource Name (ARN) of the KMS key. However, if
+ * you are using encryption with cross-account or Amazon Web Services service
+ * operations you must use a fully qualified KMS key ARN. For more information, see
+ * <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html#bucket-encryption-update-bucket-policy">Using
* encryption for cross-account operations</a>. </p> <p> <b>For example:</b> </p>
* <ul> <li> <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code> </p>
* </li> <li> <p>Key ARN:
* <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
- * </p> </li> </ul> <p>Amazon S3 only supports symmetric CMKs and not
- * asymmetric CMKs. For more information, see <a
+ * </p> </li> </ul> <p>Amazon S3 only supports symmetric KMS keys and
+ * not asymmetric KMS keys. For more information, see <a
* href="https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html">Using
- * Symmetric and Asymmetric Keys</a> in the <i>AWS Key Management Service Developer
- * Guide</i>.</p>
+ * symmetric and asymmetric keys</a> in the <i>Amazon Web Services Key Management
+ * Service Developer Guide</i>.</p>
*/
inline bool KMSMasterKeyIDHasBeenSet() const { return m_kMSMasterKeyIDHasBeenSet; }
/**
- * <p>AWS Key Management Service (KMS) customer master key ID to use for the
- * default encryption. This parameter is allowed if and only if
- * <code>SSEAlgorithm</code> is set to <code>aws:kms</code>.</p> <p>You can specify
- * the key ID or the Amazon Resource Name (ARN) of the CMK. However, if you are
- * using encryption with cross-account operations, you must use a fully qualified
- * CMK ARN. For more information, see <a
+ * <p>Amazon Web Services Key Management Service (KMS) customer Amazon Web Services
+ * KMS key ID to use for the default encryption. This parameter is allowed if and
+ * only if <code>SSEAlgorithm</code> is set to <code>aws:kms</code>.</p> <p>You can
+ * specify the key ID or the Amazon Resource Name (ARN) of the KMS key. However, if
+ * you are using encryption with cross-account or Amazon Web Services service
+ * operations you must use a fully qualified KMS key ARN. For more information, see
+ * <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html#bucket-encryption-update-bucket-policy">Using
* encryption for cross-account operations</a>. </p> <p> <b>For example:</b> </p>
* <ul> <li> <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code> </p>
* </li> <li> <p>Key ARN:
* <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
- * </p> </li> </ul> <p>Amazon S3 only supports symmetric CMKs and not
- * asymmetric CMKs. For more information, see <a
+ * </p> </li> </ul> <p>Amazon S3 only supports symmetric KMS keys and
+ * not asymmetric KMS keys. For more information, see <a
* href="https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html">Using
- * Symmetric and Asymmetric Keys</a> in the <i>AWS Key Management Service Developer
- * Guide</i>.</p>
+ * symmetric and asymmetric keys</a> in the <i>Amazon Web Services Key Management
+ * Service Developer Guide</i>.</p>
*/
inline void SetKMSMasterKeyID(const Aws::String& value) { m_kMSMasterKeyIDHasBeenSet = true; m_kMSMasterKeyID = value; }
/**
- * <p>AWS Key Management Service (KMS) customer master key ID to use for the
- * default encryption. This parameter is allowed if and only if
- * <code>SSEAlgorithm</code> is set to <code>aws:kms</code>.</p> <p>You can specify
- * the key ID or the Amazon Resource Name (ARN) of the CMK. However, if you are
- * using encryption with cross-account operations, you must use a fully qualified
- * CMK ARN. For more information, see <a
+ * <p>Amazon Web Services Key Management Service (KMS) customer Amazon Web Services
+ * KMS key ID to use for the default encryption. This parameter is allowed if and
+ * only if <code>SSEAlgorithm</code> is set to <code>aws:kms</code>.</p> <p>You can
+ * specify the key ID or the Amazon Resource Name (ARN) of the KMS key. However, if
+ * you are using encryption with cross-account or Amazon Web Services service
+ * operations you must use a fully qualified KMS key ARN. For more information, see
+ * <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html#bucket-encryption-update-bucket-policy">Using
* encryption for cross-account operations</a>. </p> <p> <b>For example:</b> </p>
* <ul> <li> <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code> </p>
* </li> <li> <p>Key ARN:
* <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
- * </p> </li> </ul> <p>Amazon S3 only supports symmetric CMKs and not
- * asymmetric CMKs. For more information, see <a
+ * </p> </li> </ul> <p>Amazon S3 only supports symmetric KMS keys and
+ * not asymmetric KMS keys. For more information, see <a
* href="https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html">Using
- * Symmetric and Asymmetric Keys</a> in the <i>AWS Key Management Service Developer
- * Guide</i>.</p>
+ * symmetric and asymmetric keys</a> in the <i>Amazon Web Services Key Management
+ * Service Developer Guide</i>.</p>
*/
inline void SetKMSMasterKeyID(Aws::String&& value) { m_kMSMasterKeyIDHasBeenSet = true; m_kMSMasterKeyID = std::move(value); }
/**
- * <p>AWS Key Management Service (KMS) customer master key ID to use for the
- * default encryption. This parameter is allowed if and only if
- * <code>SSEAlgorithm</code> is set to <code>aws:kms</code>.</p> <p>You can specify
- * the key ID or the Amazon Resource Name (ARN) of the CMK. However, if you are
- * using encryption with cross-account operations, you must use a fully qualified
- * CMK ARN. For more information, see <a
+ * <p>Amazon Web Services Key Management Service (KMS) customer Amazon Web Services
+ * KMS key ID to use for the default encryption. This parameter is allowed if and
+ * only if <code>SSEAlgorithm</code> is set to <code>aws:kms</code>.</p> <p>You can
+ * specify the key ID or the Amazon Resource Name (ARN) of the KMS key. However, if
+ * you are using encryption with cross-account or Amazon Web Services service
+ * operations you must use a fully qualified KMS key ARN. For more information, see
+ * <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html#bucket-encryption-update-bucket-policy">Using
* encryption for cross-account operations</a>. </p> <p> <b>For example:</b> </p>
* <ul> <li> <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code> </p>
* </li> <li> <p>Key ARN:
* <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
- * </p> </li> </ul> <p>Amazon S3 only supports symmetric CMKs and not
- * asymmetric CMKs. For more information, see <a
+ * </p> </li> </ul> <p>Amazon S3 only supports symmetric KMS keys and
+ * not asymmetric KMS keys. For more information, see <a
* href="https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html">Using
- * Symmetric and Asymmetric Keys</a> in the <i>AWS Key Management Service Developer
- * Guide</i>.</p>
+ * symmetric and asymmetric keys</a> in the <i>Amazon Web Services Key Management
+ * Service Developer Guide</i>.</p>
*/
inline void SetKMSMasterKeyID(const char* value) { m_kMSMasterKeyIDHasBeenSet = true; m_kMSMasterKeyID.assign(value); }
/**
- * <p>AWS Key Management Service (KMS) customer master key ID to use for the
- * default encryption. This parameter is allowed if and only if
- * <code>SSEAlgorithm</code> is set to <code>aws:kms</code>.</p> <p>You can specify
- * the key ID or the Amazon Resource Name (ARN) of the CMK. However, if you are
- * using encryption with cross-account operations, you must use a fully qualified
- * CMK ARN. For more information, see <a
+ * <p>Amazon Web Services Key Management Service (KMS) customer Amazon Web Services
+ * KMS key ID to use for the default encryption. This parameter is allowed if and
+ * only if <code>SSEAlgorithm</code> is set to <code>aws:kms</code>.</p> <p>You can
+ * specify the key ID or the Amazon Resource Name (ARN) of the KMS key. However, if
+ * you are using encryption with cross-account or Amazon Web Services service
+ * operations you must use a fully qualified KMS key ARN. For more information, see
+ * <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html#bucket-encryption-update-bucket-policy">Using
* encryption for cross-account operations</a>. </p> <p> <b>For example:</b> </p>
* <ul> <li> <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code> </p>
* </li> <li> <p>Key ARN:
* <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
- * </p> </li> </ul> <p>Amazon S3 only supports symmetric CMKs and not
- * asymmetric CMKs. For more information, see <a
+ * </p> </li> </ul> <p>Amazon S3 only supports symmetric KMS keys and
+ * not asymmetric KMS keys. For more information, see <a
* href="https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html">Using
- * Symmetric and Asymmetric Keys</a> in the <i>AWS Key Management Service Developer
- * Guide</i>.</p>
+ * symmetric and asymmetric keys</a> in the <i>Amazon Web Services Key Management
+ * Service Developer Guide</i>.</p>
*/
inline ServerSideEncryptionByDefault& WithKMSMasterKeyID(const Aws::String& value) { SetKMSMasterKeyID(value); return *this;}
/**
- * <p>AWS Key Management Service (KMS) customer master key ID to use for the
- * default encryption. This parameter is allowed if and only if
- * <code>SSEAlgorithm</code> is set to <code>aws:kms</code>.</p> <p>You can specify
- * the key ID or the Amazon Resource Name (ARN) of the CMK. However, if you are
- * using encryption with cross-account operations, you must use a fully qualified
- * CMK ARN. For more information, see <a
+ * <p>Amazon Web Services Key Management Service (KMS) customer Amazon Web Services
+ * KMS key ID to use for the default encryption. This parameter is allowed if and
+ * only if <code>SSEAlgorithm</code> is set to <code>aws:kms</code>.</p> <p>You can
+ * specify the key ID or the Amazon Resource Name (ARN) of the KMS key. However, if
+ * you are using encryption with cross-account or Amazon Web Services service
+ * operations you must use a fully qualified KMS key ARN. For more information, see
+ * <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html#bucket-encryption-update-bucket-policy">Using
* encryption for cross-account operations</a>. </p> <p> <b>For example:</b> </p>
* <ul> <li> <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code> </p>
* </li> <li> <p>Key ARN:
* <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
- * </p> </li> </ul> <p>Amazon S3 only supports symmetric CMKs and not
- * asymmetric CMKs. For more information, see <a
+ * </p> </li> </ul> <p>Amazon S3 only supports symmetric KMS keys and
+ * not asymmetric KMS keys. For more information, see <a
* href="https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html">Using
- * Symmetric and Asymmetric Keys</a> in the <i>AWS Key Management Service Developer
- * Guide</i>.</p>
+ * symmetric and asymmetric keys</a> in the <i>Amazon Web Services Key Management
+ * Service Developer Guide</i>.</p>
*/
inline ServerSideEncryptionByDefault& WithKMSMasterKeyID(Aws::String&& value) { SetKMSMasterKeyID(std::move(value)); return *this;}
/**
- * <p>AWS Key Management Service (KMS) customer master key ID to use for the
- * default encryption. This parameter is allowed if and only if
- * <code>SSEAlgorithm</code> is set to <code>aws:kms</code>.</p> <p>You can specify
- * the key ID or the Amazon Resource Name (ARN) of the CMK. However, if you are
- * using encryption with cross-account operations, you must use a fully qualified
- * CMK ARN. For more information, see <a
+ * <p>Amazon Web Services Key Management Service (KMS) customer Amazon Web Services
+ * KMS key ID to use for the default encryption. This parameter is allowed if and
+ * only if <code>SSEAlgorithm</code> is set to <code>aws:kms</code>.</p> <p>You can
+ * specify the key ID or the Amazon Resource Name (ARN) of the KMS key. However, if
+ * you are using encryption with cross-account or Amazon Web Services service
+ * operations you must use a fully qualified KMS key ARN. For more information, see
+ * <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html#bucket-encryption-update-bucket-policy">Using
* encryption for cross-account operations</a>. </p> <p> <b>For example:</b> </p>
* <ul> <li> <p>Key ID: <code>1234abcd-12ab-34cd-56ef-1234567890ab</code> </p>
* </li> <li> <p>Key ARN:
* <code>arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>
- * </p> </li> </ul> <p>Amazon S3 only supports symmetric CMKs and not
- * asymmetric CMKs. For more information, see <a
+ * </p> </li> </ul> <p>Amazon S3 only supports symmetric KMS keys and
+ * not asymmetric KMS keys. For more information, see <a
* href="https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html">Using
- * Symmetric and Asymmetric Keys</a> in the <i>AWS Key Management Service Developer
- * Guide</i>.</p>
+ * symmetric and asymmetric keys</a> in the <i>Amazon Web Services Key Management
+ * Service Developer Guide</i>.</p>
*/
inline ServerSideEncryptionByDefault& WithKMSMasterKeyID(const char* value) { SetKMSMasterKeyID(value); return *this;}
private:
ServerSideEncryption m_sSEAlgorithm;
- bool m_sSEAlgorithmHasBeenSet;
+ bool m_sSEAlgorithmHasBeenSet = false;
Aws::String m_kMSMasterKeyID;
- bool m_kMSMasterKeyIDHasBeenSet;
+ bool m_kMSMasterKeyIDHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ServerSideEncryptionConfiguration.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ServerSideEncryptionConfiguration.h
index 7b96441c89..d3d7a4ef1a 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ServerSideEncryptionConfiguration.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ServerSideEncryptionConfiguration.h
@@ -29,14 +29,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ServerSideEncryptionConfiguration">AWS
* API Reference</a></p>
*/
- class AWS_S3_API ServerSideEncryptionConfiguration
+ class ServerSideEncryptionConfiguration
{
public:
- ServerSideEncryptionConfiguration();
- ServerSideEncryptionConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
- ServerSideEncryptionConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ServerSideEncryptionConfiguration();
+ AWS_S3_API ServerSideEncryptionConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ServerSideEncryptionConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -90,7 +90,7 @@ namespace Model
private:
Aws::Vector<ServerSideEncryptionRule> m_rules;
- bool m_rulesHasBeenSet;
+ bool m_rulesHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ServerSideEncryptionRule.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ServerSideEncryptionRule.h
index 0ef3c70cf4..7aa9db7bdd 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ServerSideEncryptionRule.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/ServerSideEncryptionRule.h
@@ -28,14 +28,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/ServerSideEncryptionRule">AWS
* API Reference</a></p>
*/
- class AWS_S3_API ServerSideEncryptionRule
+ class ServerSideEncryptionRule
{
public:
- ServerSideEncryptionRule();
- ServerSideEncryptionRule(const Aws::Utils::Xml::XmlNode& xmlNode);
- ServerSideEncryptionRule& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ServerSideEncryptionRule();
+ AWS_S3_API ServerSideEncryptionRule(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API ServerSideEncryptionRule& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -128,10 +128,10 @@ namespace Model
private:
ServerSideEncryptionByDefault m_applyServerSideEncryptionByDefault;
- bool m_applyServerSideEncryptionByDefaultHasBeenSet;
+ bool m_applyServerSideEncryptionByDefaultHasBeenSet = false;
bool m_bucketKeyEnabled;
- bool m_bucketKeyEnabledHasBeenSet;
+ bool m_bucketKeyEnabledHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SourceSelectionCriteria.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SourceSelectionCriteria.h
index 0395f9089b..619c115ad5 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SourceSelectionCriteria.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SourceSelectionCriteria.h
@@ -28,60 +28,66 @@ namespace Model
* objects that you want to replicate. You can choose to enable or disable the
* replication of these objects. Currently, Amazon S3 supports only the filter that
* you can specify for objects created with server-side encryption using a customer
- * master key (CMK) stored in AWS Key Management Service (SSE-KMS).</p><p><h3>See
- * Also:</h3> <a
+ * managed key stored in Amazon Web Services Key Management Service
+ * (SSE-KMS).</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/SourceSelectionCriteria">AWS
* API Reference</a></p>
*/
- class AWS_S3_API SourceSelectionCriteria
+ class SourceSelectionCriteria
{
public:
- SourceSelectionCriteria();
- SourceSelectionCriteria(const Aws::Utils::Xml::XmlNode& xmlNode);
- SourceSelectionCriteria& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API SourceSelectionCriteria();
+ AWS_S3_API SourceSelectionCriteria(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API SourceSelectionCriteria& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
* <p> A container for filter information for the selection of Amazon S3 objects
- * encrypted with AWS KMS. If you include <code>SourceSelectionCriteria</code> in
- * the replication configuration, this element is required. </p>
+ * encrypted with Amazon Web Services KMS. If you include
+ * <code>SourceSelectionCriteria</code> in the replication configuration, this
+ * element is required. </p>
*/
inline const SseKmsEncryptedObjects& GetSseKmsEncryptedObjects() const{ return m_sseKmsEncryptedObjects; }
/**
* <p> A container for filter information for the selection of Amazon S3 objects
- * encrypted with AWS KMS. If you include <code>SourceSelectionCriteria</code> in
- * the replication configuration, this element is required. </p>
+ * encrypted with Amazon Web Services KMS. If you include
+ * <code>SourceSelectionCriteria</code> in the replication configuration, this
+ * element is required. </p>
*/
inline bool SseKmsEncryptedObjectsHasBeenSet() const { return m_sseKmsEncryptedObjectsHasBeenSet; }
/**
* <p> A container for filter information for the selection of Amazon S3 objects
- * encrypted with AWS KMS. If you include <code>SourceSelectionCriteria</code> in
- * the replication configuration, this element is required. </p>
+ * encrypted with Amazon Web Services KMS. If you include
+ * <code>SourceSelectionCriteria</code> in the replication configuration, this
+ * element is required. </p>
*/
inline void SetSseKmsEncryptedObjects(const SseKmsEncryptedObjects& value) { m_sseKmsEncryptedObjectsHasBeenSet = true; m_sseKmsEncryptedObjects = value; }
/**
* <p> A container for filter information for the selection of Amazon S3 objects
- * encrypted with AWS KMS. If you include <code>SourceSelectionCriteria</code> in
- * the replication configuration, this element is required. </p>
+ * encrypted with Amazon Web Services KMS. If you include
+ * <code>SourceSelectionCriteria</code> in the replication configuration, this
+ * element is required. </p>
*/
inline void SetSseKmsEncryptedObjects(SseKmsEncryptedObjects&& value) { m_sseKmsEncryptedObjectsHasBeenSet = true; m_sseKmsEncryptedObjects = std::move(value); }
/**
* <p> A container for filter information for the selection of Amazon S3 objects
- * encrypted with AWS KMS. If you include <code>SourceSelectionCriteria</code> in
- * the replication configuration, this element is required. </p>
+ * encrypted with Amazon Web Services KMS. If you include
+ * <code>SourceSelectionCriteria</code> in the replication configuration, this
+ * element is required. </p>
*/
inline SourceSelectionCriteria& WithSseKmsEncryptedObjects(const SseKmsEncryptedObjects& value) { SetSseKmsEncryptedObjects(value); return *this;}
/**
* <p> A container for filter information for the selection of Amazon S3 objects
- * encrypted with AWS KMS. If you include <code>SourceSelectionCriteria</code> in
- * the replication configuration, this element is required. </p>
+ * encrypted with Amazon Web Services KMS. If you include
+ * <code>SourceSelectionCriteria</code> in the replication configuration, this
+ * element is required. </p>
*/
inline SourceSelectionCriteria& WithSseKmsEncryptedObjects(SseKmsEncryptedObjects&& value) { SetSseKmsEncryptedObjects(std::move(value)); return *this;}
@@ -161,10 +167,10 @@ namespace Model
private:
SseKmsEncryptedObjects m_sseKmsEncryptedObjects;
- bool m_sseKmsEncryptedObjectsHasBeenSet;
+ bool m_sseKmsEncryptedObjectsHasBeenSet = false;
ReplicaModifications m_replicaModifications;
- bool m_replicaModificationsHasBeenSet;
+ bool m_replicaModificationsHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SseKmsEncryptedObjects.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SseKmsEncryptedObjects.h
index 451d3b5e69..ffc763eb20 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SseKmsEncryptedObjects.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/SseKmsEncryptedObjects.h
@@ -24,66 +24,66 @@ namespace Model
/**
* <p>A container for filter information for the selection of S3 objects encrypted
- * with AWS KMS.</p><p><h3>See Also:</h3> <a
+ * with Amazon Web Services KMS.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/SseKmsEncryptedObjects">AWS
* API Reference</a></p>
*/
- class AWS_S3_API SseKmsEncryptedObjects
+ class SseKmsEncryptedObjects
{
public:
- SseKmsEncryptedObjects();
- SseKmsEncryptedObjects(const Aws::Utils::Xml::XmlNode& xmlNode);
- SseKmsEncryptedObjects& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API SseKmsEncryptedObjects();
+ AWS_S3_API SseKmsEncryptedObjects(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API SseKmsEncryptedObjects& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
* <p>Specifies whether Amazon S3 replicates objects created with server-side
- * encryption using a customer master key (CMK) stored in AWS Key Management
- * Service.</p>
+ * encryption using an Amazon Web Services KMS key stored in Amazon Web Services
+ * Key Management Service.</p>
*/
inline const SseKmsEncryptedObjectsStatus& GetStatus() const{ return m_status; }
/**
* <p>Specifies whether Amazon S3 replicates objects created with server-side
- * encryption using a customer master key (CMK) stored in AWS Key Management
- * Service.</p>
+ * encryption using an Amazon Web Services KMS key stored in Amazon Web Services
+ * Key Management Service.</p>
*/
inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
/**
* <p>Specifies whether Amazon S3 replicates objects created with server-side
- * encryption using a customer master key (CMK) stored in AWS Key Management
- * Service.</p>
+ * encryption using an Amazon Web Services KMS key stored in Amazon Web Services
+ * Key Management Service.</p>
*/
inline void SetStatus(const SseKmsEncryptedObjectsStatus& value) { m_statusHasBeenSet = true; m_status = value; }
/**
* <p>Specifies whether Amazon S3 replicates objects created with server-side
- * encryption using a customer master key (CMK) stored in AWS Key Management
- * Service.</p>
+ * encryption using an Amazon Web Services KMS key stored in Amazon Web Services
+ * Key Management Service.</p>
*/
inline void SetStatus(SseKmsEncryptedObjectsStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); }
/**
* <p>Specifies whether Amazon S3 replicates objects created with server-side
- * encryption using a customer master key (CMK) stored in AWS Key Management
- * Service.</p>
+ * encryption using an Amazon Web Services KMS key stored in Amazon Web Services
+ * Key Management Service.</p>
*/
inline SseKmsEncryptedObjects& WithStatus(const SseKmsEncryptedObjectsStatus& value) { SetStatus(value); return *this;}
/**
* <p>Specifies whether Amazon S3 replicates objects created with server-side
- * encryption using a customer master key (CMK) stored in AWS Key Management
- * Service.</p>
+ * encryption using an Amazon Web Services KMS key stored in Amazon Web Services
+ * Key Management Service.</p>
*/
inline SseKmsEncryptedObjects& WithStatus(SseKmsEncryptedObjectsStatus&& value) { SetStatus(std::move(value)); return *this;}
private:
SseKmsEncryptedObjectsStatus m_status;
- bool m_statusHasBeenSet;
+ bool m_statusHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Stats.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Stats.h
index fd077b8872..49448d5c3c 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Stats.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Stats.h
@@ -25,14 +25,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/Stats">AWS API
* Reference</a></p>
*/
- class AWS_S3_API Stats
+ class Stats
{
public:
- Stats();
- Stats(const Aws::Utils::Xml::XmlNode& xmlNode);
- Stats& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Stats();
+ AWS_S3_API Stats(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Stats& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -100,13 +100,13 @@ namespace Model
private:
long long m_bytesScanned;
- bool m_bytesScannedHasBeenSet;
+ bool m_bytesScannedHasBeenSet = false;
long long m_bytesProcessed;
- bool m_bytesProcessedHasBeenSet;
+ bool m_bytesProcessedHasBeenSet = false;
long long m_bytesReturned;
- bool m_bytesReturnedHasBeenSet;
+ bool m_bytesReturnedHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/StatsEvent.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/StatsEvent.h
index 02674cafca..8f757b9157 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/StatsEvent.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/StatsEvent.h
@@ -27,14 +27,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/StatsEvent">AWS API
* Reference</a></p>
*/
- class AWS_S3_API StatsEvent
+ class StatsEvent
{
public:
- StatsEvent();
- StatsEvent(const Aws::Utils::Xml::XmlNode& xmlNode);
- StatsEvent& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API StatsEvent();
+ AWS_S3_API StatsEvent(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API StatsEvent& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -70,7 +70,7 @@ namespace Model
private:
Stats m_details;
- bool m_detailsHasBeenSet;
+ bool m_detailsHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/StorageClass.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/StorageClass.h
index b0cda25f4d..1fabe7ddea 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/StorageClass.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/StorageClass.h
@@ -23,7 +23,8 @@ namespace Model
INTELLIGENT_TIERING,
GLACIER,
DEEP_ARCHIVE,
- OUTPOSTS
+ OUTPOSTS,
+ GLACIER_IR
};
namespace StorageClassMapper
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/StorageClassAnalysis.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/StorageClassAnalysis.h
index 741db0e5f1..e07b66db1a 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/StorageClassAnalysis.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/StorageClassAnalysis.h
@@ -29,14 +29,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/StorageClassAnalysis">AWS
* API Reference</a></p>
*/
- class AWS_S3_API StorageClassAnalysis
+ class StorageClassAnalysis
{
public:
- StorageClassAnalysis();
- StorageClassAnalysis(const Aws::Utils::Xml::XmlNode& xmlNode);
- StorageClassAnalysis& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API StorageClassAnalysis();
+ AWS_S3_API StorageClassAnalysis(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API StorageClassAnalysis& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -78,7 +78,7 @@ namespace Model
private:
StorageClassAnalysisDataExport m_dataExport;
- bool m_dataExportHasBeenSet;
+ bool m_dataExportHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/StorageClassAnalysisDataExport.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/StorageClassAnalysisDataExport.h
index 4a6382b3ec..718ce024a4 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/StorageClassAnalysisDataExport.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/StorageClassAnalysisDataExport.h
@@ -29,14 +29,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/StorageClassAnalysisDataExport">AWS
* API Reference</a></p>
*/
- class AWS_S3_API StorageClassAnalysisDataExport
+ class StorageClassAnalysisDataExport
{
public:
- StorageClassAnalysisDataExport();
- StorageClassAnalysisDataExport(const Aws::Utils::Xml::XmlNode& xmlNode);
- StorageClassAnalysisDataExport& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API StorageClassAnalysisDataExport();
+ AWS_S3_API StorageClassAnalysisDataExport(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API StorageClassAnalysisDataExport& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -109,10 +109,10 @@ namespace Model
private:
StorageClassAnalysisSchemaVersion m_outputSchemaVersion;
- bool m_outputSchemaVersionHasBeenSet;
+ bool m_outputSchemaVersionHasBeenSet = false;
AnalyticsExportDestination m_destination;
- bool m_destinationHasBeenSet;
+ bool m_destinationHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Tag.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Tag.h
index 68d57a3ec0..07e37f7bcc 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Tag.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Tag.h
@@ -27,14 +27,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/Tag">AWS API
* Reference</a></p>
*/
- class AWS_S3_API Tag
+ class Tag
{
public:
- Tag();
- Tag(const Aws::Utils::Xml::XmlNode& xmlNode);
- Tag& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Tag();
+ AWS_S3_API Tag(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Tag& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -121,10 +121,10 @@ namespace Model
private:
Aws::String m_key;
- bool m_keyHasBeenSet;
+ bool m_keyHasBeenSet = false;
Aws::String m_value;
- bool m_valueHasBeenSet;
+ bool m_valueHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Tagging.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Tagging.h
index 198cc2669b..f14b2904cf 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Tagging.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Tagging.h
@@ -28,14 +28,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/Tagging">AWS API
* Reference</a></p>
*/
- class AWS_S3_API Tagging
+ class Tagging
{
public:
- Tagging();
- Tagging(const Aws::Utils::Xml::XmlNode& xmlNode);
- Tagging& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Tagging();
+ AWS_S3_API Tagging(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Tagging& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -81,7 +81,7 @@ namespace Model
private:
Aws::Vector<Tag> m_tagSet;
- bool m_tagSetHasBeenSet;
+ bool m_tagSetHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/TargetGrant.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/TargetGrant.h
index c8d1edafbd..f0a3b99be9 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/TargetGrant.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/TargetGrant.h
@@ -24,18 +24,23 @@ namespace Model
{
/**
- * <p>Container for granting information.</p><p><h3>See Also:</h3> <a
+ * <p>Container for granting information.</p> <p>Buckets that use the bucket owner
+ * enforced setting for Object Ownership don't support target grants. For more
+ * information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/enable-server-access-logging.html#grant-log-delivery-permissions-general">Permissions
+ * server access log delivery</a> in the <i>Amazon S3 User Guide</i>.</p><p><h3>See
+ * Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/TargetGrant">AWS API
* Reference</a></p>
*/
- class AWS_S3_API TargetGrant
+ class TargetGrant
{
public:
- TargetGrant();
- TargetGrant(const Aws::Utils::Xml::XmlNode& xmlNode);
- TargetGrant& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API TargetGrant();
+ AWS_S3_API TargetGrant(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API TargetGrant& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -102,10 +107,10 @@ namespace Model
private:
Grantee m_grantee;
- bool m_granteeHasBeenSet;
+ bool m_granteeHasBeenSet = false;
BucketLogsPermission m_permission;
- bool m_permissionHasBeenSet;
+ bool m_permissionHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Tiering.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Tiering.h
index 0d8f5b8802..32681deded 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Tiering.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Tiering.h
@@ -29,14 +29,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/Tiering">AWS API
* Reference</a></p>
*/
- class AWS_S3_API Tiering
+ class Tiering
{
public:
- Tiering();
- Tiering(const Aws::Utils::Xml::XmlNode& xmlNode);
- Tiering& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Tiering();
+ AWS_S3_API Tiering(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Tiering& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -133,10 +133,10 @@ namespace Model
private:
int m_days;
- bool m_daysHasBeenSet;
+ bool m_daysHasBeenSet = false;
IntelligentTieringAccessTier m_accessTier;
- bool m_accessTierHasBeenSet;
+ bool m_accessTierHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/TopicConfiguration.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/TopicConfiguration.h
index f57be251bb..12c1909b96 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/TopicConfiguration.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/TopicConfiguration.h
@@ -32,14 +32,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/TopicConfiguration">AWS
* API Reference</a></p>
*/
- class AWS_S3_API TopicConfiguration
+ class TopicConfiguration
{
public:
- TopicConfiguration();
- TopicConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
- TopicConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API TopicConfiguration();
+ AWS_S3_API TopicConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API TopicConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
@@ -202,16 +202,16 @@ namespace Model
private:
Aws::String m_id;
- bool m_idHasBeenSet;
+ bool m_idHasBeenSet = false;
Aws::String m_topicArn;
- bool m_topicArnHasBeenSet;
+ bool m_topicArnHasBeenSet = false;
Aws::Vector<Event> m_events;
- bool m_eventsHasBeenSet;
+ bool m_eventsHasBeenSet = false;
NotificationConfigurationFilter m_filter;
- bool m_filterHasBeenSet;
+ bool m_filterHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/TopicConfigurationDeprecated.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/TopicConfigurationDeprecated.h
index 23592ee28e..fb2c5090e0 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/TopicConfigurationDeprecated.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/TopicConfigurationDeprecated.h
@@ -33,14 +33,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/TopicConfigurationDeprecated">AWS
* API Reference</a></p>
*/
- class AWS_S3_API TopicConfigurationDeprecated
+ class TopicConfigurationDeprecated
{
public:
- TopicConfigurationDeprecated();
- TopicConfigurationDeprecated(const Aws::Utils::Xml::XmlNode& xmlNode);
- TopicConfigurationDeprecated& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API TopicConfigurationDeprecated();
+ AWS_S3_API TopicConfigurationDeprecated(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API TopicConfigurationDeprecated& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
@@ -160,13 +160,13 @@ namespace Model
private:
Aws::String m_id;
- bool m_idHasBeenSet;
+ bool m_idHasBeenSet = false;
Aws::Vector<Event> m_events;
- bool m_eventsHasBeenSet;
+ bool m_eventsHasBeenSet = false;
Aws::String m_topic;
- bool m_topicHasBeenSet;
+ bool m_topicHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Transition.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Transition.h
index bc7a534e8b..bacd3e8db6 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Transition.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/Transition.h
@@ -32,14 +32,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/Transition">AWS API
* Reference</a></p>
*/
- class AWS_S3_API Transition
+ class Transition
{
public:
- Transition();
- Transition(const Aws::Utils::Xml::XmlNode& xmlNode);
- Transition& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Transition();
+ AWS_S3_API Transition(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API Transition& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -137,13 +137,13 @@ namespace Model
private:
Aws::Utils::DateTime m_date;
- bool m_dateHasBeenSet;
+ bool m_dateHasBeenSet = false;
int m_days;
- bool m_daysHasBeenSet;
+ bool m_daysHasBeenSet = false;
TransitionStorageClass m_storageClass;
- bool m_storageClassHasBeenSet;
+ bool m_storageClassHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/TransitionStorageClass.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/TransitionStorageClass.h
index 7eb5efa762..564934a864 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/TransitionStorageClass.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/TransitionStorageClass.h
@@ -20,7 +20,8 @@ namespace Model
STANDARD_IA,
ONEZONE_IA,
INTELLIGENT_TIERING,
- DEEP_ARCHIVE
+ DEEP_ARCHIVE,
+ GLACIER_IR
};
namespace TransitionStorageClassMapper
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/UploadPartCopyRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/UploadPartCopyRequest.h
index 015c869675..dd47ddc36c 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/UploadPartCopyRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/UploadPartCopyRequest.h
@@ -25,10 +25,10 @@ namespace Model
/**
*/
- class AWS_S3_API UploadPartCopyRequest : public S3Request
+ class UploadPartCopyRequest : public S3Request
{
public:
- UploadPartCopyRequest();
+ AWS_S3_API UploadPartCopyRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -36,31 +36,36 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "UploadPartCopy"; }
- Aws::String SerializePayload() const override;
+ AWS_S3_API Aws::String SerializePayload() const override;
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API bool HasEmbeddedError(IOStream &body, const Http::HeaderValueCollection &header) const override;
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The bucket name.</p> <p>When using this action with an access point, you must
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const Aws::String& GetBucket() const{ return m_bucket; }
@@ -69,19 +74,19 @@ namespace Model
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; }
@@ -90,19 +95,19 @@ namespace Model
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; }
@@ -111,19 +116,19 @@ namespace Model
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); }
@@ -132,19 +137,19 @@ namespace Model
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); }
@@ -153,19 +158,19 @@ namespace Model
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline UploadPartCopyRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;}
@@ -174,19 +179,19 @@ namespace Model
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline UploadPartCopyRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;}
@@ -195,19 +200,19 @@ namespace Model
* direct requests to the access point hostname. The access point hostname takes
* the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline UploadPartCopyRequest& WithBucket(const char* value) { SetBucket(value); return *this;}
@@ -221,10 +226,10 @@ namespace Model
* specify the name of the source bucket and key of the source object, separated by
* a slash (/). For example, to copy the object <code>reports/january.pdf</code>
* from the bucket <code>awsexamplebucket</code>, use
- * <code>awsexamplebucket/reports/january.pdf</code>. The value must be URL
- * encoded.</p> </li> <li> <p>For objects accessed through access points, specify
- * the Amazon Resource Name (ARN) of the object as accessed through the access
- * point, in the format
+ * <code>awsexamplebucket/reports/january.pdf</code>. The value must be
+ * URL-encoded.</p> </li> <li> <p>For objects accessed through access points,
+ * specify the Amazon Resource Name (ARN) of the object as accessed through the
+ * access point, in the format
* <code>arn:aws:s3:&lt;Region&gt;:&lt;account-id&gt;:accesspoint/&lt;access-point-name&gt;/object/&lt;key&gt;</code>.
* For example, to copy the object <code>reports/january.pdf</code> through access
* point <code>my-access-point</code> owned by account <code>123456789012</code> in
@@ -232,14 +237,15 @@ namespace Model
* <code>arn:aws:s3:us-west-2:123456789012:accesspoint/my-access-point/object/reports/january.pdf</code>.
* The value must be URL encoded.</p> <p>Amazon S3 supports copy operations
* using access points only when the source and destination buckets are in the same
- * AWS Region.</p> <p>Alternatively, for objects accessed through Amazon S3
- * on Outposts, specify the ARN of the object as accessed in the format
+ * Amazon Web Services Region.</p> <p>Alternatively, for objects accessed
+ * through Amazon S3 on Outposts, specify the ARN of the object as accessed in the
+ * format
* <code>arn:aws:s3-outposts:&lt;Region&gt;:&lt;account-id&gt;:outpost/&lt;outpost-id&gt;/object/&lt;key&gt;</code>.
* For example, to copy the object <code>reports/january.pdf</code> through outpost
* <code>my-outpost</code> owned by account <code>123456789012</code> in Region
* <code>us-west-2</code>, use the URL encoding of
* <code>arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/object/reports/january.pdf</code>.
- * The value must be URL encoded. </p> </li> </ul> <p>To copy a specific version of
+ * The value must be URL-encoded. </p> </li> </ul> <p>To copy a specific version of
* an object, append <code>?versionId=&lt;version-id&gt;</code> to the value (for
* example,
* <code>awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893</code>).
@@ -257,10 +263,10 @@ namespace Model
* specify the name of the source bucket and key of the source object, separated by
* a slash (/). For example, to copy the object <code>reports/january.pdf</code>
* from the bucket <code>awsexamplebucket</code>, use
- * <code>awsexamplebucket/reports/january.pdf</code>. The value must be URL
- * encoded.</p> </li> <li> <p>For objects accessed through access points, specify
- * the Amazon Resource Name (ARN) of the object as accessed through the access
- * point, in the format
+ * <code>awsexamplebucket/reports/january.pdf</code>. The value must be
+ * URL-encoded.</p> </li> <li> <p>For objects accessed through access points,
+ * specify the Amazon Resource Name (ARN) of the object as accessed through the
+ * access point, in the format
* <code>arn:aws:s3:&lt;Region&gt;:&lt;account-id&gt;:accesspoint/&lt;access-point-name&gt;/object/&lt;key&gt;</code>.
* For example, to copy the object <code>reports/january.pdf</code> through access
* point <code>my-access-point</code> owned by account <code>123456789012</code> in
@@ -268,14 +274,15 @@ namespace Model
* <code>arn:aws:s3:us-west-2:123456789012:accesspoint/my-access-point/object/reports/january.pdf</code>.
* The value must be URL encoded.</p> <p>Amazon S3 supports copy operations
* using access points only when the source and destination buckets are in the same
- * AWS Region.</p> <p>Alternatively, for objects accessed through Amazon S3
- * on Outposts, specify the ARN of the object as accessed in the format
+ * Amazon Web Services Region.</p> <p>Alternatively, for objects accessed
+ * through Amazon S3 on Outposts, specify the ARN of the object as accessed in the
+ * format
* <code>arn:aws:s3-outposts:&lt;Region&gt;:&lt;account-id&gt;:outpost/&lt;outpost-id&gt;/object/&lt;key&gt;</code>.
* For example, to copy the object <code>reports/january.pdf</code> through outpost
* <code>my-outpost</code> owned by account <code>123456789012</code> in Region
* <code>us-west-2</code>, use the URL encoding of
* <code>arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/object/reports/january.pdf</code>.
- * The value must be URL encoded. </p> </li> </ul> <p>To copy a specific version of
+ * The value must be URL-encoded. </p> </li> </ul> <p>To copy a specific version of
* an object, append <code>?versionId=&lt;version-id&gt;</code> to the value (for
* example,
* <code>awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893</code>).
@@ -293,10 +300,10 @@ namespace Model
* specify the name of the source bucket and key of the source object, separated by
* a slash (/). For example, to copy the object <code>reports/january.pdf</code>
* from the bucket <code>awsexamplebucket</code>, use
- * <code>awsexamplebucket/reports/january.pdf</code>. The value must be URL
- * encoded.</p> </li> <li> <p>For objects accessed through access points, specify
- * the Amazon Resource Name (ARN) of the object as accessed through the access
- * point, in the format
+ * <code>awsexamplebucket/reports/january.pdf</code>. The value must be
+ * URL-encoded.</p> </li> <li> <p>For objects accessed through access points,
+ * specify the Amazon Resource Name (ARN) of the object as accessed through the
+ * access point, in the format
* <code>arn:aws:s3:&lt;Region&gt;:&lt;account-id&gt;:accesspoint/&lt;access-point-name&gt;/object/&lt;key&gt;</code>.
* For example, to copy the object <code>reports/january.pdf</code> through access
* point <code>my-access-point</code> owned by account <code>123456789012</code> in
@@ -304,14 +311,15 @@ namespace Model
* <code>arn:aws:s3:us-west-2:123456789012:accesspoint/my-access-point/object/reports/january.pdf</code>.
* The value must be URL encoded.</p> <p>Amazon S3 supports copy operations
* using access points only when the source and destination buckets are in the same
- * AWS Region.</p> <p>Alternatively, for objects accessed through Amazon S3
- * on Outposts, specify the ARN of the object as accessed in the format
+ * Amazon Web Services Region.</p> <p>Alternatively, for objects accessed
+ * through Amazon S3 on Outposts, specify the ARN of the object as accessed in the
+ * format
* <code>arn:aws:s3-outposts:&lt;Region&gt;:&lt;account-id&gt;:outpost/&lt;outpost-id&gt;/object/&lt;key&gt;</code>.
* For example, to copy the object <code>reports/january.pdf</code> through outpost
* <code>my-outpost</code> owned by account <code>123456789012</code> in Region
* <code>us-west-2</code>, use the URL encoding of
* <code>arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/object/reports/january.pdf</code>.
- * The value must be URL encoded. </p> </li> </ul> <p>To copy a specific version of
+ * The value must be URL-encoded. </p> </li> </ul> <p>To copy a specific version of
* an object, append <code>?versionId=&lt;version-id&gt;</code> to the value (for
* example,
* <code>awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893</code>).
@@ -329,10 +337,10 @@ namespace Model
* specify the name of the source bucket and key of the source object, separated by
* a slash (/). For example, to copy the object <code>reports/january.pdf</code>
* from the bucket <code>awsexamplebucket</code>, use
- * <code>awsexamplebucket/reports/january.pdf</code>. The value must be URL
- * encoded.</p> </li> <li> <p>For objects accessed through access points, specify
- * the Amazon Resource Name (ARN) of the object as accessed through the access
- * point, in the format
+ * <code>awsexamplebucket/reports/january.pdf</code>. The value must be
+ * URL-encoded.</p> </li> <li> <p>For objects accessed through access points,
+ * specify the Amazon Resource Name (ARN) of the object as accessed through the
+ * access point, in the format
* <code>arn:aws:s3:&lt;Region&gt;:&lt;account-id&gt;:accesspoint/&lt;access-point-name&gt;/object/&lt;key&gt;</code>.
* For example, to copy the object <code>reports/january.pdf</code> through access
* point <code>my-access-point</code> owned by account <code>123456789012</code> in
@@ -340,14 +348,15 @@ namespace Model
* <code>arn:aws:s3:us-west-2:123456789012:accesspoint/my-access-point/object/reports/january.pdf</code>.
* The value must be URL encoded.</p> <p>Amazon S3 supports copy operations
* using access points only when the source and destination buckets are in the same
- * AWS Region.</p> <p>Alternatively, for objects accessed through Amazon S3
- * on Outposts, specify the ARN of the object as accessed in the format
+ * Amazon Web Services Region.</p> <p>Alternatively, for objects accessed
+ * through Amazon S3 on Outposts, specify the ARN of the object as accessed in the
+ * format
* <code>arn:aws:s3-outposts:&lt;Region&gt;:&lt;account-id&gt;:outpost/&lt;outpost-id&gt;/object/&lt;key&gt;</code>.
* For example, to copy the object <code>reports/january.pdf</code> through outpost
* <code>my-outpost</code> owned by account <code>123456789012</code> in Region
* <code>us-west-2</code>, use the URL encoding of
* <code>arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/object/reports/january.pdf</code>.
- * The value must be URL encoded. </p> </li> </ul> <p>To copy a specific version of
+ * The value must be URL-encoded. </p> </li> </ul> <p>To copy a specific version of
* an object, append <code>?versionId=&lt;version-id&gt;</code> to the value (for
* example,
* <code>awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893</code>).
@@ -365,10 +374,10 @@ namespace Model
* specify the name of the source bucket and key of the source object, separated by
* a slash (/). For example, to copy the object <code>reports/january.pdf</code>
* from the bucket <code>awsexamplebucket</code>, use
- * <code>awsexamplebucket/reports/january.pdf</code>. The value must be URL
- * encoded.</p> </li> <li> <p>For objects accessed through access points, specify
- * the Amazon Resource Name (ARN) of the object as accessed through the access
- * point, in the format
+ * <code>awsexamplebucket/reports/january.pdf</code>. The value must be
+ * URL-encoded.</p> </li> <li> <p>For objects accessed through access points,
+ * specify the Amazon Resource Name (ARN) of the object as accessed through the
+ * access point, in the format
* <code>arn:aws:s3:&lt;Region&gt;:&lt;account-id&gt;:accesspoint/&lt;access-point-name&gt;/object/&lt;key&gt;</code>.
* For example, to copy the object <code>reports/january.pdf</code> through access
* point <code>my-access-point</code> owned by account <code>123456789012</code> in
@@ -376,14 +385,15 @@ namespace Model
* <code>arn:aws:s3:us-west-2:123456789012:accesspoint/my-access-point/object/reports/january.pdf</code>.
* The value must be URL encoded.</p> <p>Amazon S3 supports copy operations
* using access points only when the source and destination buckets are in the same
- * AWS Region.</p> <p>Alternatively, for objects accessed through Amazon S3
- * on Outposts, specify the ARN of the object as accessed in the format
+ * Amazon Web Services Region.</p> <p>Alternatively, for objects accessed
+ * through Amazon S3 on Outposts, specify the ARN of the object as accessed in the
+ * format
* <code>arn:aws:s3-outposts:&lt;Region&gt;:&lt;account-id&gt;:outpost/&lt;outpost-id&gt;/object/&lt;key&gt;</code>.
* For example, to copy the object <code>reports/january.pdf</code> through outpost
* <code>my-outpost</code> owned by account <code>123456789012</code> in Region
* <code>us-west-2</code>, use the URL encoding of
* <code>arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/object/reports/january.pdf</code>.
- * The value must be URL encoded. </p> </li> </ul> <p>To copy a specific version of
+ * The value must be URL-encoded. </p> </li> </ul> <p>To copy a specific version of
* an object, append <code>?versionId=&lt;version-id&gt;</code> to the value (for
* example,
* <code>awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893</code>).
@@ -401,10 +411,10 @@ namespace Model
* specify the name of the source bucket and key of the source object, separated by
* a slash (/). For example, to copy the object <code>reports/january.pdf</code>
* from the bucket <code>awsexamplebucket</code>, use
- * <code>awsexamplebucket/reports/january.pdf</code>. The value must be URL
- * encoded.</p> </li> <li> <p>For objects accessed through access points, specify
- * the Amazon Resource Name (ARN) of the object as accessed through the access
- * point, in the format
+ * <code>awsexamplebucket/reports/january.pdf</code>. The value must be
+ * URL-encoded.</p> </li> <li> <p>For objects accessed through access points,
+ * specify the Amazon Resource Name (ARN) of the object as accessed through the
+ * access point, in the format
* <code>arn:aws:s3:&lt;Region&gt;:&lt;account-id&gt;:accesspoint/&lt;access-point-name&gt;/object/&lt;key&gt;</code>.
* For example, to copy the object <code>reports/january.pdf</code> through access
* point <code>my-access-point</code> owned by account <code>123456789012</code> in
@@ -412,14 +422,15 @@ namespace Model
* <code>arn:aws:s3:us-west-2:123456789012:accesspoint/my-access-point/object/reports/january.pdf</code>.
* The value must be URL encoded.</p> <p>Amazon S3 supports copy operations
* using access points only when the source and destination buckets are in the same
- * AWS Region.</p> <p>Alternatively, for objects accessed through Amazon S3
- * on Outposts, specify the ARN of the object as accessed in the format
+ * Amazon Web Services Region.</p> <p>Alternatively, for objects accessed
+ * through Amazon S3 on Outposts, specify the ARN of the object as accessed in the
+ * format
* <code>arn:aws:s3-outposts:&lt;Region&gt;:&lt;account-id&gt;:outpost/&lt;outpost-id&gt;/object/&lt;key&gt;</code>.
* For example, to copy the object <code>reports/january.pdf</code> through outpost
* <code>my-outpost</code> owned by account <code>123456789012</code> in Region
* <code>us-west-2</code>, use the URL encoding of
* <code>arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/object/reports/january.pdf</code>.
- * The value must be URL encoded. </p> </li> </ul> <p>To copy a specific version of
+ * The value must be URL-encoded. </p> </li> </ul> <p>To copy a specific version of
* an object, append <code>?versionId=&lt;version-id&gt;</code> to the value (for
* example,
* <code>awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893</code>).
@@ -437,10 +448,10 @@ namespace Model
* specify the name of the source bucket and key of the source object, separated by
* a slash (/). For example, to copy the object <code>reports/january.pdf</code>
* from the bucket <code>awsexamplebucket</code>, use
- * <code>awsexamplebucket/reports/january.pdf</code>. The value must be URL
- * encoded.</p> </li> <li> <p>For objects accessed through access points, specify
- * the Amazon Resource Name (ARN) of the object as accessed through the access
- * point, in the format
+ * <code>awsexamplebucket/reports/january.pdf</code>. The value must be
+ * URL-encoded.</p> </li> <li> <p>For objects accessed through access points,
+ * specify the Amazon Resource Name (ARN) of the object as accessed through the
+ * access point, in the format
* <code>arn:aws:s3:&lt;Region&gt;:&lt;account-id&gt;:accesspoint/&lt;access-point-name&gt;/object/&lt;key&gt;</code>.
* For example, to copy the object <code>reports/january.pdf</code> through access
* point <code>my-access-point</code> owned by account <code>123456789012</code> in
@@ -448,14 +459,15 @@ namespace Model
* <code>arn:aws:s3:us-west-2:123456789012:accesspoint/my-access-point/object/reports/january.pdf</code>.
* The value must be URL encoded.</p> <p>Amazon S3 supports copy operations
* using access points only when the source and destination buckets are in the same
- * AWS Region.</p> <p>Alternatively, for objects accessed through Amazon S3
- * on Outposts, specify the ARN of the object as accessed in the format
+ * Amazon Web Services Region.</p> <p>Alternatively, for objects accessed
+ * through Amazon S3 on Outposts, specify the ARN of the object as accessed in the
+ * format
* <code>arn:aws:s3-outposts:&lt;Region&gt;:&lt;account-id&gt;:outpost/&lt;outpost-id&gt;/object/&lt;key&gt;</code>.
* For example, to copy the object <code>reports/january.pdf</code> through outpost
* <code>my-outpost</code> owned by account <code>123456789012</code> in Region
* <code>us-west-2</code>, use the URL encoding of
* <code>arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/object/reports/january.pdf</code>.
- * The value must be URL encoded. </p> </li> </ul> <p>To copy a specific version of
+ * The value must be URL-encoded. </p> </li> </ul> <p>To copy a specific version of
* an object, append <code>?versionId=&lt;version-id&gt;</code> to the value (for
* example,
* <code>awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893</code>).
@@ -473,10 +485,10 @@ namespace Model
* specify the name of the source bucket and key of the source object, separated by
* a slash (/). For example, to copy the object <code>reports/january.pdf</code>
* from the bucket <code>awsexamplebucket</code>, use
- * <code>awsexamplebucket/reports/january.pdf</code>. The value must be URL
- * encoded.</p> </li> <li> <p>For objects accessed through access points, specify
- * the Amazon Resource Name (ARN) of the object as accessed through the access
- * point, in the format
+ * <code>awsexamplebucket/reports/january.pdf</code>. The value must be
+ * URL-encoded.</p> </li> <li> <p>For objects accessed through access points,
+ * specify the Amazon Resource Name (ARN) of the object as accessed through the
+ * access point, in the format
* <code>arn:aws:s3:&lt;Region&gt;:&lt;account-id&gt;:accesspoint/&lt;access-point-name&gt;/object/&lt;key&gt;</code>.
* For example, to copy the object <code>reports/january.pdf</code> through access
* point <code>my-access-point</code> owned by account <code>123456789012</code> in
@@ -484,14 +496,15 @@ namespace Model
* <code>arn:aws:s3:us-west-2:123456789012:accesspoint/my-access-point/object/reports/january.pdf</code>.
* The value must be URL encoded.</p> <p>Amazon S3 supports copy operations
* using access points only when the source and destination buckets are in the same
- * AWS Region.</p> <p>Alternatively, for objects accessed through Amazon S3
- * on Outposts, specify the ARN of the object as accessed in the format
+ * Amazon Web Services Region.</p> <p>Alternatively, for objects accessed
+ * through Amazon S3 on Outposts, specify the ARN of the object as accessed in the
+ * format
* <code>arn:aws:s3-outposts:&lt;Region&gt;:&lt;account-id&gt;:outpost/&lt;outpost-id&gt;/object/&lt;key&gt;</code>.
* For example, to copy the object <code>reports/january.pdf</code> through outpost
* <code>my-outpost</code> owned by account <code>123456789012</code> in Region
* <code>us-west-2</code>, use the URL encoding of
* <code>arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/object/reports/january.pdf</code>.
- * The value must be URL encoded. </p> </li> </ul> <p>To copy a specific version of
+ * The value must be URL-encoded. </p> </li> </ul> <p>To copy a specific version of
* an object, append <code>?versionId=&lt;version-id&gt;</code> to the value (for
* example,
* <code>awsexamplebucket/reports/january.pdf?versionId=QUpfdndhfd8438MNFDN93jdnJFkdmqnh893</code>).
@@ -1212,114 +1225,114 @@ namespace Model
/**
* <p>The account ID of the expected destination bucket owner. If the destination
- * bucket is owned by a different account, the request will fail with an HTTP
- * <code>403 (Access Denied)</code> error.</p>
+ * bucket is owned by a different account, the request fails with the HTTP status
+ * code <code>403 Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected destination bucket owner. If the destination
- * bucket is owned by a different account, the request will fail with an HTTP
- * <code>403 (Access Denied)</code> error.</p>
+ * bucket is owned by a different account, the request fails with the HTTP status
+ * code <code>403 Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected destination bucket owner. If the destination
- * bucket is owned by a different account, the request will fail with an HTTP
- * <code>403 (Access Denied)</code> error.</p>
+ * bucket is owned by a different account, the request fails with the HTTP status
+ * code <code>403 Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected destination bucket owner. If the destination
- * bucket is owned by a different account, the request will fail with an HTTP
- * <code>403 (Access Denied)</code> error.</p>
+ * bucket is owned by a different account, the request fails with the HTTP status
+ * code <code>403 Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected destination bucket owner. If the destination
- * bucket is owned by a different account, the request will fail with an HTTP
- * <code>403 (Access Denied)</code> error.</p>
+ * bucket is owned by a different account, the request fails with the HTTP status
+ * code <code>403 Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected destination bucket owner. If the destination
- * bucket is owned by a different account, the request will fail with an HTTP
- * <code>403 (Access Denied)</code> error.</p>
+ * bucket is owned by a different account, the request fails with the HTTP status
+ * code <code>403 Forbidden</code> (access denied).</p>
*/
inline UploadPartCopyRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected destination bucket owner. If the destination
- * bucket is owned by a different account, the request will fail with an HTTP
- * <code>403 (Access Denied)</code> error.</p>
+ * bucket is owned by a different account, the request fails with the HTTP status
+ * code <code>403 Forbidden</code> (access denied).</p>
*/
inline UploadPartCopyRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected destination bucket owner. If the destination
- * bucket is owned by a different account, the request will fail with an HTTP
- * <code>403 (Access Denied)</code> error.</p>
+ * bucket is owned by a different account, the request fails with the HTTP status
+ * code <code>403 Forbidden</code> (access denied).</p>
*/
inline UploadPartCopyRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected source bucket owner. If the source bucket is
- * owned by a different account, the request will fail with an HTTP <code>403
- * (Access Denied)</code> error.</p>
+ * owned by a different account, the request fails with the HTTP status code
+ * <code>403 Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedSourceBucketOwner() const{ return m_expectedSourceBucketOwner; }
/**
* <p>The account ID of the expected source bucket owner. If the source bucket is
- * owned by a different account, the request will fail with an HTTP <code>403
- * (Access Denied)</code> error.</p>
+ * owned by a different account, the request fails with the HTTP status code
+ * <code>403 Forbidden</code> (access denied).</p>
*/
inline bool ExpectedSourceBucketOwnerHasBeenSet() const { return m_expectedSourceBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected source bucket owner. If the source bucket is
- * owned by a different account, the request will fail with an HTTP <code>403
- * (Access Denied)</code> error.</p>
+ * owned by a different account, the request fails with the HTTP status code
+ * <code>403 Forbidden</code> (access denied).</p>
*/
inline void SetExpectedSourceBucketOwner(const Aws::String& value) { m_expectedSourceBucketOwnerHasBeenSet = true; m_expectedSourceBucketOwner = value; }
/**
* <p>The account ID of the expected source bucket owner. If the source bucket is
- * owned by a different account, the request will fail with an HTTP <code>403
- * (Access Denied)</code> error.</p>
+ * owned by a different account, the request fails with the HTTP status code
+ * <code>403 Forbidden</code> (access denied).</p>
*/
inline void SetExpectedSourceBucketOwner(Aws::String&& value) { m_expectedSourceBucketOwnerHasBeenSet = true; m_expectedSourceBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected source bucket owner. If the source bucket is
- * owned by a different account, the request will fail with an HTTP <code>403
- * (Access Denied)</code> error.</p>
+ * owned by a different account, the request fails with the HTTP status code
+ * <code>403 Forbidden</code> (access denied).</p>
*/
inline void SetExpectedSourceBucketOwner(const char* value) { m_expectedSourceBucketOwnerHasBeenSet = true; m_expectedSourceBucketOwner.assign(value); }
/**
* <p>The account ID of the expected source bucket owner. If the source bucket is
- * owned by a different account, the request will fail with an HTTP <code>403
- * (Access Denied)</code> error.</p>
+ * owned by a different account, the request fails with the HTTP status code
+ * <code>403 Forbidden</code> (access denied).</p>
*/
inline UploadPartCopyRequest& WithExpectedSourceBucketOwner(const Aws::String& value) { SetExpectedSourceBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected source bucket owner. If the source bucket is
- * owned by a different account, the request will fail with an HTTP <code>403
- * (Access Denied)</code> error.</p>
+ * owned by a different account, the request fails with the HTTP status code
+ * <code>403 Forbidden</code> (access denied).</p>
*/
inline UploadPartCopyRequest& WithExpectedSourceBucketOwner(Aws::String&& value) { SetExpectedSourceBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected source bucket owner. If the source bucket is
- * owned by a different account, the request will fail with an HTTP <code>403
- * (Access Denied)</code> error.</p>
+ * owned by a different account, the request fails with the HTTP status code
+ * <code>403 Forbidden</code> (access denied).</p>
*/
inline UploadPartCopyRequest& WithExpectedSourceBucketOwner(const char* value) { SetExpectedSourceBucketOwner(value); return *this;}
@@ -1366,64 +1379,64 @@ namespace Model
private:
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
Aws::String m_copySource;
- bool m_copySourceHasBeenSet;
+ bool m_copySourceHasBeenSet = false;
Aws::String m_copySourceIfMatch;
- bool m_copySourceIfMatchHasBeenSet;
+ bool m_copySourceIfMatchHasBeenSet = false;
Aws::Utils::DateTime m_copySourceIfModifiedSince;
- bool m_copySourceIfModifiedSinceHasBeenSet;
+ bool m_copySourceIfModifiedSinceHasBeenSet = false;
Aws::String m_copySourceIfNoneMatch;
- bool m_copySourceIfNoneMatchHasBeenSet;
+ bool m_copySourceIfNoneMatchHasBeenSet = false;
Aws::Utils::DateTime m_copySourceIfUnmodifiedSince;
- bool m_copySourceIfUnmodifiedSinceHasBeenSet;
+ bool m_copySourceIfUnmodifiedSinceHasBeenSet = false;
Aws::String m_copySourceRange;
- bool m_copySourceRangeHasBeenSet;
+ bool m_copySourceRangeHasBeenSet = false;
Aws::String m_key;
- bool m_keyHasBeenSet;
+ bool m_keyHasBeenSet = false;
int m_partNumber;
- bool m_partNumberHasBeenSet;
+ bool m_partNumberHasBeenSet = false;
Aws::String m_uploadId;
- bool m_uploadIdHasBeenSet;
+ bool m_uploadIdHasBeenSet = false;
Aws::String m_sSECustomerAlgorithm;
- bool m_sSECustomerAlgorithmHasBeenSet;
+ bool m_sSECustomerAlgorithmHasBeenSet = false;
Aws::String m_sSECustomerKey;
- bool m_sSECustomerKeyHasBeenSet;
+ bool m_sSECustomerKeyHasBeenSet = false;
Aws::String m_sSECustomerKeyMD5;
- bool m_sSECustomerKeyMD5HasBeenSet;
+ bool m_sSECustomerKeyMD5HasBeenSet = false;
Aws::String m_copySourceSSECustomerAlgorithm;
- bool m_copySourceSSECustomerAlgorithmHasBeenSet;
+ bool m_copySourceSSECustomerAlgorithmHasBeenSet = false;
Aws::String m_copySourceSSECustomerKey;
- bool m_copySourceSSECustomerKeyHasBeenSet;
+ bool m_copySourceSSECustomerKeyHasBeenSet = false;
Aws::String m_copySourceSSECustomerKeyMD5;
- bool m_copySourceSSECustomerKeyMD5HasBeenSet;
+ bool m_copySourceSSECustomerKeyMD5HasBeenSet = false;
RequestPayer m_requestPayer;
- bool m_requestPayerHasBeenSet;
+ bool m_requestPayerHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::String m_expectedSourceBucketOwner;
- bool m_expectedSourceBucketOwnerHasBeenSet;
+ bool m_expectedSourceBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/UploadPartCopyResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/UploadPartCopyResult.h
index ee8933482f..3e2bfc6b45 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/UploadPartCopyResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/UploadPartCopyResult.h
@@ -27,12 +27,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API UploadPartCopyResult
+ class UploadPartCopyResult
{
public:
- UploadPartCopyResult();
- UploadPartCopyResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- UploadPartCopyResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API UploadPartCopyResult();
+ AWS_S3_API UploadPartCopyResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API UploadPartCopyResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
@@ -236,70 +236,70 @@ namespace Model
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline const Aws::String& GetSSEKMSKeyId() const{ return m_sSEKMSKeyId; }
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline void SetSSEKMSKeyId(const Aws::String& value) { m_sSEKMSKeyId = value; }
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline void SetSSEKMSKeyId(Aws::String&& value) { m_sSEKMSKeyId = std::move(value); }
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline void SetSSEKMSKeyId(const char* value) { m_sSEKMSKeyId.assign(value); }
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline UploadPartCopyResult& WithSSEKMSKeyId(const Aws::String& value) { SetSSEKMSKeyId(value); return *this;}
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline UploadPartCopyResult& WithSSEKMSKeyId(Aws::String&& value) { SetSSEKMSKeyId(std::move(value)); return *this;}
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for the object.</p>
*/
inline UploadPartCopyResult& WithSSEKMSKeyId(const char* value) { SetSSEKMSKeyId(value); return *this;}
/**
* <p>Indicates whether the multipart upload uses an S3 Bucket Key for server-side
- * encryption with AWS KMS (SSE-KMS).</p>
+ * encryption with Amazon Web Services KMS (SSE-KMS).</p>
*/
inline bool GetBucketKeyEnabled() const{ return m_bucketKeyEnabled; }
/**
* <p>Indicates whether the multipart upload uses an S3 Bucket Key for server-side
- * encryption with AWS KMS (SSE-KMS).</p>
+ * encryption with Amazon Web Services KMS (SSE-KMS).</p>
*/
inline void SetBucketKeyEnabled(bool value) { m_bucketKeyEnabled = value; }
/**
* <p>Indicates whether the multipart upload uses an S3 Bucket Key for server-side
- * encryption with AWS KMS (SSE-KMS).</p>
+ * encryption with Amazon Web Services KMS (SSE-KMS).</p>
*/
inline UploadPartCopyResult& WithBucketKeyEnabled(bool value) { SetBucketKeyEnabled(value); return *this;}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/UploadPartRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/UploadPartRequest.h
index 49060c0d65..01711b9120 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/UploadPartRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/UploadPartRequest.h
@@ -8,6 +8,7 @@
#include <aws/s3/S3Request.h>
#include <aws/core/utils/Array.h>
#include <aws/core/utils/memory/stl/AWSString.h>
+#include <aws/s3/model/ChecksumAlgorithm.h>
#include <aws/s3/model/RequestPayer.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
#include <utility>
@@ -25,10 +26,10 @@ namespace Model
/**
*/
- class AWS_S3_API UploadPartRequest : public StreamingS3Request
+ class UploadPartRequest : public StreamingS3Request
{
public:
- UploadPartRequest();
+ AWS_S3_API UploadPartRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -36,29 +37,35 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "UploadPart"; }
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::String GetChecksumAlgorithmName() const override;
+
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>The name of the bucket to which the multipart upload was initiated.</p>
* <p>When using this action with an access point, you must direct requests to the
* access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline const Aws::String& GetBucket() const{ return m_bucket; }
@@ -67,19 +74,19 @@ namespace Model
* <p>When using this action with an access point, you must direct requests to the
* access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; }
@@ -88,19 +95,19 @@ namespace Model
* <p>When using this action with an access point, you must direct requests to the
* access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; }
@@ -109,19 +116,19 @@ namespace Model
* <p>When using this action with an access point, you must direct requests to the
* access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); }
@@ -130,19 +137,19 @@ namespace Model
* <p>When using this action with an access point, you must direct requests to the
* access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); }
@@ -151,19 +158,19 @@ namespace Model
* <p>When using this action with an access point, you must direct requests to the
* access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline UploadPartRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;}
@@ -172,19 +179,19 @@ namespace Model
* <p>When using this action with an access point, you must direct requests to the
* access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline UploadPartRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;}
@@ -193,19 +200,19 @@ namespace Model
* <p>When using this action with an access point, you must direct requests to the
* access point hostname. The access point hostname takes the form
* <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com.
- * When using this action with an access point through the AWS SDKs, you provide
- * the access point ARN in place of the bucket name. For more information about
- * access point ARNs, see <a
+ * When using this action with an access point through the Amazon Web Services
+ * SDKs, you provide the access point ARN in place of the bucket name. For more
+ * information about access point ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using
- * Access Points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
+ * access points</a> in the <i>Amazon S3 User Guide</i>.</p> <p>When using this
* action with Amazon S3 on Outposts, you must direct requests to the S3 on
- * Outposts hostname. The S3 on Outposts hostname takes the form
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com.
- * When using this action using S3 on Outposts through the AWS SDKs, you provide
- * the Outposts bucket ARN in place of the bucket name. For more information about
- * S3 on Outposts ARNs, see <a
+ * Outposts hostname. The S3 on Outposts hostname takes the form <code>
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>.
+ * When using this action with S3 on Outposts through the Amazon Web Services SDKs,
+ * you provide the Outposts bucket ARN in place of the bucket name. For more
+ * information about S3 on Outposts ARNs, see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">Using
- * S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
+ * Amazon S3 on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
*/
inline UploadPartRequest& WithBucket(const char* value) { SetBucket(value); return *this;}
@@ -293,6 +300,419 @@ namespace Model
/**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p> <p>This checksum algorithm must be
+ * the same for all parts and it match the checksum value supplied in the
+ * <code>CreateMultipartUpload</code> request.</p>
+ */
+ inline const ChecksumAlgorithm& GetChecksumAlgorithm() const{ return m_checksumAlgorithm; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p> <p>This checksum algorithm must be
+ * the same for all parts and it match the checksum value supplied in the
+ * <code>CreateMultipartUpload</code> request.</p>
+ */
+ inline bool ChecksumAlgorithmHasBeenSet() const { return m_checksumAlgorithmHasBeenSet; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p> <p>This checksum algorithm must be
+ * the same for all parts and it match the checksum value supplied in the
+ * <code>CreateMultipartUpload</code> request.</p>
+ */
+ inline void SetChecksumAlgorithm(const ChecksumAlgorithm& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = value; }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p> <p>This checksum algorithm must be
+ * the same for all parts and it match the checksum value supplied in the
+ * <code>CreateMultipartUpload</code> request.</p>
+ */
+ inline void SetChecksumAlgorithm(ChecksumAlgorithm&& value) { m_checksumAlgorithmHasBeenSet = true; m_checksumAlgorithm = std::move(value); }
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p> <p>This checksum algorithm must be
+ * the same for all parts and it match the checksum value supplied in the
+ * <code>CreateMultipartUpload</code> request.</p>
+ */
+ inline UploadPartRequest& WithChecksumAlgorithm(const ChecksumAlgorithm& value) { SetChecksumAlgorithm(value); return *this;}
+
+ /**
+ * <p>Indicates the algorithm used to create the checksum for the object when using
+ * the SDK. This header will not provide any additional functionality if not using
+ * the SDK. When sending this header, there must be a corresponding
+ * <code>x-amz-checksum</code> or <code>x-amz-trailer</code> header sent.
+ * Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad
+ * Request</code>. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>If you provide
+ * an individual checksum, Amazon S3 ignores any provided
+ * <code>ChecksumAlgorithm</code> parameter.</p> <p>This checksum algorithm must be
+ * the same for all parts and it match the checksum value supplied in the
+ * <code>CreateMultipartUpload</code> request.</p>
+ */
+ inline UploadPartRequest& WithChecksumAlgorithm(ChecksumAlgorithm&& value) { SetChecksumAlgorithm(std::move(value)); return *this;}
+
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumCRC32() const{ return m_checksumCRC32; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool ChecksumCRC32HasBeenSet() const { return m_checksumCRC32HasBeenSet; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(const Aws::String& value) { m_checksumCRC32HasBeenSet = true; m_checksumCRC32 = value; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(Aws::String&& value) { m_checksumCRC32HasBeenSet = true; m_checksumCRC32 = std::move(value); }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(const char* value) { m_checksumCRC32HasBeenSet = true; m_checksumCRC32.assign(value); }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline UploadPartRequest& WithChecksumCRC32(const Aws::String& value) { SetChecksumCRC32(value); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline UploadPartRequest& WithChecksumCRC32(Aws::String&& value) { SetChecksumCRC32(std::move(value)); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline UploadPartRequest& WithChecksumCRC32(const char* value) { SetChecksumCRC32(value); return *this;}
+
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32C checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumCRC32C() const{ return m_checksumCRC32C; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32C checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool ChecksumCRC32CHasBeenSet() const { return m_checksumCRC32CHasBeenSet; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32C checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(const Aws::String& value) { m_checksumCRC32CHasBeenSet = true; m_checksumCRC32C = value; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32C checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(Aws::String&& value) { m_checksumCRC32CHasBeenSet = true; m_checksumCRC32C = std::move(value); }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32C checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(const char* value) { m_checksumCRC32CHasBeenSet = true; m_checksumCRC32C.assign(value); }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32C checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline UploadPartRequest& WithChecksumCRC32C(const Aws::String& value) { SetChecksumCRC32C(value); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32C checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline UploadPartRequest& WithChecksumCRC32C(Aws::String&& value) { SetChecksumCRC32C(std::move(value)); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 32-bit CRC32C checksum of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline UploadPartRequest& WithChecksumCRC32C(const char* value) { SetChecksumCRC32C(value); return *this;}
+
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 160-bit SHA-1 digest of the object. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumSHA1() const{ return m_checksumSHA1; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 160-bit SHA-1 digest of the object. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool ChecksumSHA1HasBeenSet() const { return m_checksumSHA1HasBeenSet; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 160-bit SHA-1 digest of the object. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(const Aws::String& value) { m_checksumSHA1HasBeenSet = true; m_checksumSHA1 = value; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 160-bit SHA-1 digest of the object. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(Aws::String&& value) { m_checksumSHA1HasBeenSet = true; m_checksumSHA1 = std::move(value); }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 160-bit SHA-1 digest of the object. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(const char* value) { m_checksumSHA1HasBeenSet = true; m_checksumSHA1.assign(value); }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 160-bit SHA-1 digest of the object. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline UploadPartRequest& WithChecksumSHA1(const Aws::String& value) { SetChecksumSHA1(value); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 160-bit SHA-1 digest of the object. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline UploadPartRequest& WithChecksumSHA1(Aws::String&& value) { SetChecksumSHA1(std::move(value)); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 160-bit SHA-1 digest of the object. For more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline UploadPartRequest& WithChecksumSHA1(const char* value) { SetChecksumSHA1(value); return *this;}
+
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumSHA256() const{ return m_checksumSHA256; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline bool ChecksumSHA256HasBeenSet() const { return m_checksumSHA256HasBeenSet; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(const Aws::String& value) { m_checksumSHA256HasBeenSet = true; m_checksumSHA256 = value; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(Aws::String&& value) { m_checksumSHA256HasBeenSet = true; m_checksumSHA256 = std::move(value); }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(const char* value) { m_checksumSHA256HasBeenSet = true; m_checksumSHA256.assign(value); }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline UploadPartRequest& WithChecksumSHA256(const Aws::String& value) { SetChecksumSHA256(value); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline UploadPartRequest& WithChecksumSHA256(Aws::String&& value) { SetChecksumSHA256(std::move(value)); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This header specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object. For more information, see
+ * <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline UploadPartRequest& WithChecksumSHA256(const char* value) { SetChecksumSHA256(value); return *this;}
+
+
+ /**
* <p>Object key for which the multipart upload was initiated.</p>
*/
inline const Aws::String& GetKey() const{ return m_key; }
@@ -615,57 +1035,57 @@ namespace Model
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline UploadPartRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline UploadPartRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
/**
* <p>The account ID of the expected bucket owner. If the bucket is owned by a
- * different account, the request will fail with an HTTP <code>403 (Access
- * Denied)</code> error.</p>
+ * different account, the request fails with the HTTP status code <code>403
+ * Forbidden</code> (access denied).</p>
*/
inline UploadPartRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
@@ -713,40 +1133,55 @@ namespace Model
Aws::String m_bucket;
- bool m_bucketHasBeenSet;
+ bool m_bucketHasBeenSet = false;
long long m_contentLength;
- bool m_contentLengthHasBeenSet;
+ bool m_contentLengthHasBeenSet = false;
Aws::String m_contentMD5;
- bool m_contentMD5HasBeenSet;
+ bool m_contentMD5HasBeenSet = false;
+
+ ChecksumAlgorithm m_checksumAlgorithm;
+ bool m_checksumAlgorithmHasBeenSet = false;
+
+ Aws::String m_checksumCRC32;
+ bool m_checksumCRC32HasBeenSet = false;
+
+ Aws::String m_checksumCRC32C;
+ bool m_checksumCRC32CHasBeenSet = false;
+
+ Aws::String m_checksumSHA1;
+ bool m_checksumSHA1HasBeenSet = false;
+
+ Aws::String m_checksumSHA256;
+ bool m_checksumSHA256HasBeenSet = false;
Aws::String m_key;
- bool m_keyHasBeenSet;
+ bool m_keyHasBeenSet = false;
int m_partNumber;
- bool m_partNumberHasBeenSet;
+ bool m_partNumberHasBeenSet = false;
Aws::String m_uploadId;
- bool m_uploadIdHasBeenSet;
+ bool m_uploadIdHasBeenSet = false;
Aws::String m_sSECustomerAlgorithm;
- bool m_sSECustomerAlgorithmHasBeenSet;
+ bool m_sSECustomerAlgorithmHasBeenSet = false;
Aws::String m_sSECustomerKey;
- bool m_sSECustomerKeyHasBeenSet;
+ bool m_sSECustomerKeyHasBeenSet = false;
Aws::String m_sSECustomerKeyMD5;
- bool m_sSECustomerKeyMD5HasBeenSet;
+ bool m_sSECustomerKeyMD5HasBeenSet = false;
RequestPayer m_requestPayer;
- bool m_requestPayerHasBeenSet;
+ bool m_requestPayerHasBeenSet = false;
Aws::String m_expectedBucketOwner;
- bool m_expectedBucketOwnerHasBeenSet;
+ bool m_expectedBucketOwnerHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/UploadPartResult.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/UploadPartResult.h
index 146a25021b..22c25cb6c4 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/UploadPartResult.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/UploadPartResult.h
@@ -26,12 +26,12 @@ namespace S3
{
namespace Model
{
- class AWS_S3_API UploadPartResult
+ class UploadPartResult
{
public:
- UploadPartResult();
- UploadPartResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
- UploadPartResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API UploadPartResult();
+ AWS_S3_API UploadPartResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
+ AWS_S3_API UploadPartResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
/**
@@ -102,6 +102,290 @@ namespace Model
/**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumCRC32() const{ return m_checksumCRC32; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(const Aws::String& value) { m_checksumCRC32 = value; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(Aws::String&& value) { m_checksumCRC32 = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32(const char* value) { m_checksumCRC32.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline UploadPartResult& WithChecksumCRC32(const Aws::String& value) { SetChecksumCRC32(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline UploadPartResult& WithChecksumCRC32(Aws::String&& value) { SetChecksumCRC32(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32 checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline UploadPartResult& WithChecksumCRC32(const char* value) { SetChecksumCRC32(value); return *this;}
+
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumCRC32C() const{ return m_checksumCRC32C; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(const Aws::String& value) { m_checksumCRC32C = value; }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(Aws::String&& value) { m_checksumCRC32C = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumCRC32C(const char* value) { m_checksumCRC32C.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline UploadPartResult& WithChecksumCRC32C(const Aws::String& value) { SetChecksumCRC32C(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline UploadPartResult& WithChecksumCRC32C(Aws::String&& value) { SetChecksumCRC32C(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 32-bit CRC32C checksum of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline UploadPartResult& WithChecksumCRC32C(const char* value) { SetChecksumCRC32C(value); return *this;}
+
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumSHA1() const{ return m_checksumSHA1; }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(const Aws::String& value) { m_checksumSHA1 = value; }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(Aws::String&& value) { m_checksumSHA1 = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA1(const char* value) { m_checksumSHA1.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline UploadPartResult& WithChecksumSHA1(const Aws::String& value) { SetChecksumSHA1(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline UploadPartResult& WithChecksumSHA1(Aws::String&& value) { SetChecksumSHA1(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 160-bit SHA-1 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline UploadPartResult& WithChecksumSHA1(const char* value) { SetChecksumSHA1(value); return *this;}
+
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline const Aws::String& GetChecksumSHA256() const{ return m_checksumSHA256; }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(const Aws::String& value) { m_checksumSHA256 = value; }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(Aws::String&& value) { m_checksumSHA256 = std::move(value); }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline void SetChecksumSHA256(const char* value) { m_checksumSHA256.assign(value); }
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline UploadPartResult& WithChecksumSHA256(const Aws::String& value) { SetChecksumSHA256(value); return *this;}
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline UploadPartResult& WithChecksumSHA256(Aws::String&& value) { SetChecksumSHA256(std::move(value)); return *this;}
+
+ /**
+ * <p>The base64-encoded, 256-bit SHA-256 digest of the object. This will only be
+ * present if it was uploaded with the object. With multipart uploads, this may not
+ * be a checksum value of the object. For more information about how checksums are
+ * calculated with multipart uploads, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
+ */
+ inline UploadPartResult& WithChecksumSHA256(const char* value) { SetChecksumSHA256(value); return *this;}
+
+
+ /**
* <p>If server-side encryption with a customer-provided encryption key was
* requested, the response will include this header confirming the encryption
* algorithm used.</p>
@@ -202,70 +486,70 @@ namespace Model
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key was used for
+ * the object.</p>
*/
inline const Aws::String& GetSSEKMSKeyId() const{ return m_sSEKMSKeyId; }
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key was used for
+ * the object.</p>
*/
inline void SetSSEKMSKeyId(const Aws::String& value) { m_sSEKMSKeyId = value; }
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key was used for
+ * the object.</p>
*/
inline void SetSSEKMSKeyId(Aws::String&& value) { m_sSEKMSKeyId = std::move(value); }
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key was used for
+ * the object.</p>
*/
inline void SetSSEKMSKeyId(const char* value) { m_sSEKMSKeyId.assign(value); }
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key was used for
+ * the object.</p>
*/
inline UploadPartResult& WithSSEKMSKeyId(const Aws::String& value) { SetSSEKMSKeyId(value); return *this;}
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key was used for
+ * the object.</p>
*/
inline UploadPartResult& WithSSEKMSKeyId(Aws::String&& value) { SetSSEKMSKeyId(std::move(value)); return *this;}
/**
- * <p>If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) was used for the
- * object.</p>
+ * <p>If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key was used for
+ * the object.</p>
*/
inline UploadPartResult& WithSSEKMSKeyId(const char* value) { SetSSEKMSKeyId(value); return *this;}
/**
* <p>Indicates whether the multipart upload uses an S3 Bucket Key for server-side
- * encryption with AWS KMS (SSE-KMS).</p>
+ * encryption with Amazon Web Services KMS (SSE-KMS).</p>
*/
inline bool GetBucketKeyEnabled() const{ return m_bucketKeyEnabled; }
/**
* <p>Indicates whether the multipart upload uses an S3 Bucket Key for server-side
- * encryption with AWS KMS (SSE-KMS).</p>
+ * encryption with Amazon Web Services KMS (SSE-KMS).</p>
*/
inline void SetBucketKeyEnabled(bool value) { m_bucketKeyEnabled = value; }
/**
* <p>Indicates whether the multipart upload uses an S3 Bucket Key for server-side
- * encryption with AWS KMS (SSE-KMS).</p>
+ * encryption with Amazon Web Services KMS (SSE-KMS).</p>
*/
inline UploadPartResult& WithBucketKeyEnabled(bool value) { SetBucketKeyEnabled(value); return *this;}
@@ -291,6 +575,14 @@ namespace Model
Aws::String m_eTag;
+ Aws::String m_checksumCRC32;
+
+ Aws::String m_checksumCRC32C;
+
+ Aws::String m_checksumSHA1;
+
+ Aws::String m_checksumSHA256;
+
Aws::String m_sSECustomerAlgorithm;
Aws::String m_sSECustomerKeyMD5;
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/VersioningConfiguration.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/VersioningConfiguration.h
index b30cfbd698..1350a698a3 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/VersioningConfiguration.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/VersioningConfiguration.h
@@ -27,19 +27,19 @@ namespace Model
* <p>Describes the versioning state of an Amazon S3 bucket. For more information,
* see <a
* href="https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTVersioningStatus.html">PUT
- * Bucket versioning</a> in the <i>Amazon Simple Storage Service API
- * Reference</i>.</p><p><h3>See Also:</h3> <a
+ * Bucket versioning</a> in the <i>Amazon S3 API Reference</i>.</p><p><h3>See
+ * Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/VersioningConfiguration">AWS
* API Reference</a></p>
*/
- class AWS_S3_API VersioningConfiguration
+ class VersioningConfiguration
{
public:
- VersioningConfiguration();
- VersioningConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
- VersioningConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API VersioningConfiguration();
+ AWS_S3_API VersioningConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API VersioningConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -124,10 +124,10 @@ namespace Model
private:
MFADelete m_mFADelete;
- bool m_mFADeleteHasBeenSet;
+ bool m_mFADeleteHasBeenSet = false;
BucketVersioningStatus m_status;
- bool m_statusHasBeenSet;
+ bool m_statusHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/WebsiteConfiguration.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/WebsiteConfiguration.h
index d862c3e230..278a2d37ea 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/WebsiteConfiguration.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/WebsiteConfiguration.h
@@ -32,14 +32,14 @@ namespace Model
* href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/WebsiteConfiguration">AWS
* API Reference</a></p>
*/
- class AWS_S3_API WebsiteConfiguration
+ class WebsiteConfiguration
{
public:
- WebsiteConfiguration();
- WebsiteConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
- WebsiteConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API WebsiteConfiguration();
+ AWS_S3_API WebsiteConfiguration(const Aws::Utils::Xml::XmlNode& xmlNode);
+ AWS_S3_API WebsiteConfiguration& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
- void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
+ AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
/**
@@ -190,16 +190,16 @@ namespace Model
private:
ErrorDocument m_errorDocument;
- bool m_errorDocumentHasBeenSet;
+ bool m_errorDocumentHasBeenSet = false;
IndexDocument m_indexDocument;
- bool m_indexDocumentHasBeenSet;
+ bool m_indexDocumentHasBeenSet = false;
RedirectAllRequestsTo m_redirectAllRequestsTo;
- bool m_redirectAllRequestsToHasBeenSet;
+ bool m_redirectAllRequestsToHasBeenSet = false;
Aws::Vector<RoutingRule> m_routingRules;
- bool m_routingRulesHasBeenSet;
+ bool m_routingRulesHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/WriteGetObjectResponseRequest.h b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/WriteGetObjectResponseRequest.h
index 59f0a57d80..58f1deab1c 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/WriteGetObjectResponseRequest.h
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/include/aws/s3/model/WriteGetObjectResponseRequest.h
@@ -31,10 +31,10 @@ namespace Model
/**
*/
- class AWS_S3_API WriteGetObjectResponseRequest : public StreamingS3Request
+ class WriteGetObjectResponseRequest : public StreamingS3Request
{
public:
- WriteGetObjectResponseRequest();
+ AWS_S3_API WriteGetObjectResponseRequest();
// Service request name is the Operation name which will send this request out,
// each operation should has unique request name, so that we can get operation's name from this request.
@@ -42,14 +42,18 @@ namespace Model
// so we can not get operation's name from response.
inline virtual const char* GetServiceRequestName() const override { return "WriteGetObjectResponse"; }
- void AddQueryStringParameters(Aws::Http::URI& uri) const override;
+ AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
- Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
+ AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
- bool SignBody() const override { return false; }
+ AWS_S3_API bool SignBody() const override { return false; }
- bool IsChunked() const override { return true; }
+ AWS_S3_API bool IsChunked() const override { return true; }
+ /**
+ * Helper function to collect parameters (configurable and static hardcoded) required for endpoint computation.
+ */
+ AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
/**
* <p>Route prefix to the HTTP URL generated.</p>
@@ -144,60 +148,64 @@ namespace Model
/**
* <p>The integer status code for an HTTP response of a corresponding
* <code>GetObject</code> request.</p> <p class="title"> <b>Status Codes</b> </p>
- * <ul> <li> <p> <i>200 - OK</i> </p> </li> <li> <p> <i>206 - Partial Content</i>
- * </p> </li> <li> <p> <i>304 - Not Modified</i> </p> </li> <li> <p> <i>400 - Bad
- * Request</i> </p> </li> <li> <p> <i>401 - Unauthorized</i> </p> </li> <li> <p>
- * <i>403 - Forbidden</i> </p> </li> <li> <p> <i>404 - Not Found</i> </p> </li>
- * <li> <p> <i>405 - Method Not Allowed</i> </p> </li> <li> <p> <i>409 -
- * Conflict</i> </p> </li> <li> <p> <i>411 - Length Required</i> </p> </li> <li>
- * <p> <i>412 - Precondition Failed</i> </p> </li> <li> <p> <i>416 - Range Not
- * Satisfiable</i> </p> </li> <li> <p> <i>500 - Internal Server Error</i> </p>
- * </li> <li> <p> <i>503 - Service Unavailable</i> </p> </li> </ul>
+ * <ul> <li> <p> <code>200 - OK</code> </p> </li> <li> <p> <code>206 - Partial
+ * Content</code> </p> </li> <li> <p> <code>304 - Not Modified</code> </p> </li>
+ * <li> <p> <code>400 - Bad Request</code> </p> </li> <li> <p> <code>401 -
+ * Unauthorized</code> </p> </li> <li> <p> <code>403 - Forbidden</code> </p> </li>
+ * <li> <p> <code>404 - Not Found</code> </p> </li> <li> <p> <code>405 - Method Not
+ * Allowed</code> </p> </li> <li> <p> <code>409 - Conflict</code> </p> </li> <li>
+ * <p> <code>411 - Length Required</code> </p> </li> <li> <p> <code>412 -
+ * Precondition Failed</code> </p> </li> <li> <p> <code>416 - Range Not
+ * Satisfiable</code> </p> </li> <li> <p> <code>500 - Internal Server Error</code>
+ * </p> </li> <li> <p> <code>503 - Service Unavailable</code> </p> </li> </ul>
*/
inline int GetStatusCode() const{ return m_statusCode; }
/**
* <p>The integer status code for an HTTP response of a corresponding
* <code>GetObject</code> request.</p> <p class="title"> <b>Status Codes</b> </p>
- * <ul> <li> <p> <i>200 - OK</i> </p> </li> <li> <p> <i>206 - Partial Content</i>
- * </p> </li> <li> <p> <i>304 - Not Modified</i> </p> </li> <li> <p> <i>400 - Bad
- * Request</i> </p> </li> <li> <p> <i>401 - Unauthorized</i> </p> </li> <li> <p>
- * <i>403 - Forbidden</i> </p> </li> <li> <p> <i>404 - Not Found</i> </p> </li>
- * <li> <p> <i>405 - Method Not Allowed</i> </p> </li> <li> <p> <i>409 -
- * Conflict</i> </p> </li> <li> <p> <i>411 - Length Required</i> </p> </li> <li>
- * <p> <i>412 - Precondition Failed</i> </p> </li> <li> <p> <i>416 - Range Not
- * Satisfiable</i> </p> </li> <li> <p> <i>500 - Internal Server Error</i> </p>
- * </li> <li> <p> <i>503 - Service Unavailable</i> </p> </li> </ul>
+ * <ul> <li> <p> <code>200 - OK</code> </p> </li> <li> <p> <code>206 - Partial
+ * Content</code> </p> </li> <li> <p> <code>304 - Not Modified</code> </p> </li>
+ * <li> <p> <code>400 - Bad Request</code> </p> </li> <li> <p> <code>401 -
+ * Unauthorized</code> </p> </li> <li> <p> <code>403 - Forbidden</code> </p> </li>
+ * <li> <p> <code>404 - Not Found</code> </p> </li> <li> <p> <code>405 - Method Not
+ * Allowed</code> </p> </li> <li> <p> <code>409 - Conflict</code> </p> </li> <li>
+ * <p> <code>411 - Length Required</code> </p> </li> <li> <p> <code>412 -
+ * Precondition Failed</code> </p> </li> <li> <p> <code>416 - Range Not
+ * Satisfiable</code> </p> </li> <li> <p> <code>500 - Internal Server Error</code>
+ * </p> </li> <li> <p> <code>503 - Service Unavailable</code> </p> </li> </ul>
*/
inline bool StatusCodeHasBeenSet() const { return m_statusCodeHasBeenSet; }
/**
* <p>The integer status code for an HTTP response of a corresponding
* <code>GetObject</code> request.</p> <p class="title"> <b>Status Codes</b> </p>
- * <ul> <li> <p> <i>200 - OK</i> </p> </li> <li> <p> <i>206 - Partial Content</i>
- * </p> </li> <li> <p> <i>304 - Not Modified</i> </p> </li> <li> <p> <i>400 - Bad
- * Request</i> </p> </li> <li> <p> <i>401 - Unauthorized</i> </p> </li> <li> <p>
- * <i>403 - Forbidden</i> </p> </li> <li> <p> <i>404 - Not Found</i> </p> </li>
- * <li> <p> <i>405 - Method Not Allowed</i> </p> </li> <li> <p> <i>409 -
- * Conflict</i> </p> </li> <li> <p> <i>411 - Length Required</i> </p> </li> <li>
- * <p> <i>412 - Precondition Failed</i> </p> </li> <li> <p> <i>416 - Range Not
- * Satisfiable</i> </p> </li> <li> <p> <i>500 - Internal Server Error</i> </p>
- * </li> <li> <p> <i>503 - Service Unavailable</i> </p> </li> </ul>
+ * <ul> <li> <p> <code>200 - OK</code> </p> </li> <li> <p> <code>206 - Partial
+ * Content</code> </p> </li> <li> <p> <code>304 - Not Modified</code> </p> </li>
+ * <li> <p> <code>400 - Bad Request</code> </p> </li> <li> <p> <code>401 -
+ * Unauthorized</code> </p> </li> <li> <p> <code>403 - Forbidden</code> </p> </li>
+ * <li> <p> <code>404 - Not Found</code> </p> </li> <li> <p> <code>405 - Method Not
+ * Allowed</code> </p> </li> <li> <p> <code>409 - Conflict</code> </p> </li> <li>
+ * <p> <code>411 - Length Required</code> </p> </li> <li> <p> <code>412 -
+ * Precondition Failed</code> </p> </li> <li> <p> <code>416 - Range Not
+ * Satisfiable</code> </p> </li> <li> <p> <code>500 - Internal Server Error</code>
+ * </p> </li> <li> <p> <code>503 - Service Unavailable</code> </p> </li> </ul>
*/
inline void SetStatusCode(int value) { m_statusCodeHasBeenSet = true; m_statusCode = value; }
/**
* <p>The integer status code for an HTTP response of a corresponding
* <code>GetObject</code> request.</p> <p class="title"> <b>Status Codes</b> </p>
- * <ul> <li> <p> <i>200 - OK</i> </p> </li> <li> <p> <i>206 - Partial Content</i>
- * </p> </li> <li> <p> <i>304 - Not Modified</i> </p> </li> <li> <p> <i>400 - Bad
- * Request</i> </p> </li> <li> <p> <i>401 - Unauthorized</i> </p> </li> <li> <p>
- * <i>403 - Forbidden</i> </p> </li> <li> <p> <i>404 - Not Found</i> </p> </li>
- * <li> <p> <i>405 - Method Not Allowed</i> </p> </li> <li> <p> <i>409 -
- * Conflict</i> </p> </li> <li> <p> <i>411 - Length Required</i> </p> </li> <li>
- * <p> <i>412 - Precondition Failed</i> </p> </li> <li> <p> <i>416 - Range Not
- * Satisfiable</i> </p> </li> <li> <p> <i>500 - Internal Server Error</i> </p>
- * </li> <li> <p> <i>503 - Service Unavailable</i> </p> </li> </ul>
+ * <ul> <li> <p> <code>200 - OK</code> </p> </li> <li> <p> <code>206 - Partial
+ * Content</code> </p> </li> <li> <p> <code>304 - Not Modified</code> </p> </li>
+ * <li> <p> <code>400 - Bad Request</code> </p> </li> <li> <p> <code>401 -
+ * Unauthorized</code> </p> </li> <li> <p> <code>403 - Forbidden</code> </p> </li>
+ * <li> <p> <code>404 - Not Found</code> </p> </li> <li> <p> <code>405 - Method Not
+ * Allowed</code> </p> </li> <li> <p> <code>409 - Conflict</code> </p> </li> <li>
+ * <p> <code>411 - Length Required</code> </p> </li> <li> <p> <code>412 -
+ * Precondition Failed</code> </p> </li> <li> <p> <code>416 - Range Not
+ * Satisfiable</code> </p> </li> <li> <p> <code>500 - Internal Server Error</code>
+ * </p> </li> <li> <p> <code>503 - Service Unavailable</code> </p> </li> </ul>
*/
inline WriteGetObjectResponseRequest& WithStatusCode(int value) { SetStatusCode(value); return *this;}
@@ -207,8 +215,8 @@ namespace Model
* &lt;Code&gt; tag of the error XML response for a corresponding
* <code>GetObject</code> call. Cannot be used with a successful
* <code>StatusCode</code> header or when the transformed object is provided in the
- * body. All error codes from S3 are sentence-cased. Regex value is
- * "^[A-Z][a-zA-Z]+$".</p>
+ * body. All error codes from S3 are sentence-cased. The regular expression (regex)
+ * value is <code>"^[A-Z][a-zA-Z]+$"</code>.</p>
*/
inline const Aws::String& GetErrorCode() const{ return m_errorCode; }
@@ -217,8 +225,8 @@ namespace Model
* &lt;Code&gt; tag of the error XML response for a corresponding
* <code>GetObject</code> call. Cannot be used with a successful
* <code>StatusCode</code> header or when the transformed object is provided in the
- * body. All error codes from S3 are sentence-cased. Regex value is
- * "^[A-Z][a-zA-Z]+$".</p>
+ * body. All error codes from S3 are sentence-cased. The regular expression (regex)
+ * value is <code>"^[A-Z][a-zA-Z]+$"</code>.</p>
*/
inline bool ErrorCodeHasBeenSet() const { return m_errorCodeHasBeenSet; }
@@ -227,8 +235,8 @@ namespace Model
* &lt;Code&gt; tag of the error XML response for a corresponding
* <code>GetObject</code> call. Cannot be used with a successful
* <code>StatusCode</code> header or when the transformed object is provided in the
- * body. All error codes from S3 are sentence-cased. Regex value is
- * "^[A-Z][a-zA-Z]+$".</p>
+ * body. All error codes from S3 are sentence-cased. The regular expression (regex)
+ * value is <code>"^[A-Z][a-zA-Z]+$"</code>.</p>
*/
inline void SetErrorCode(const Aws::String& value) { m_errorCodeHasBeenSet = true; m_errorCode = value; }
@@ -237,8 +245,8 @@ namespace Model
* &lt;Code&gt; tag of the error XML response for a corresponding
* <code>GetObject</code> call. Cannot be used with a successful
* <code>StatusCode</code> header or when the transformed object is provided in the
- * body. All error codes from S3 are sentence-cased. Regex value is
- * "^[A-Z][a-zA-Z]+$".</p>
+ * body. All error codes from S3 are sentence-cased. The regular expression (regex)
+ * value is <code>"^[A-Z][a-zA-Z]+$"</code>.</p>
*/
inline void SetErrorCode(Aws::String&& value) { m_errorCodeHasBeenSet = true; m_errorCode = std::move(value); }
@@ -247,8 +255,8 @@ namespace Model
* &lt;Code&gt; tag of the error XML response for a corresponding
* <code>GetObject</code> call. Cannot be used with a successful
* <code>StatusCode</code> header or when the transformed object is provided in the
- * body. All error codes from S3 are sentence-cased. Regex value is
- * "^[A-Z][a-zA-Z]+$".</p>
+ * body. All error codes from S3 are sentence-cased. The regular expression (regex)
+ * value is <code>"^[A-Z][a-zA-Z]+$"</code>.</p>
*/
inline void SetErrorCode(const char* value) { m_errorCodeHasBeenSet = true; m_errorCode.assign(value); }
@@ -257,8 +265,8 @@ namespace Model
* &lt;Code&gt; tag of the error XML response for a corresponding
* <code>GetObject</code> call. Cannot be used with a successful
* <code>StatusCode</code> header or when the transformed object is provided in the
- * body. All error codes from S3 are sentence-cased. Regex value is
- * "^[A-Z][a-zA-Z]+$".</p>
+ * body. All error codes from S3 are sentence-cased. The regular expression (regex)
+ * value is <code>"^[A-Z][a-zA-Z]+$"</code>.</p>
*/
inline WriteGetObjectResponseRequest& WithErrorCode(const Aws::String& value) { SetErrorCode(value); return *this;}
@@ -267,8 +275,8 @@ namespace Model
* &lt;Code&gt; tag of the error XML response for a corresponding
* <code>GetObject</code> call. Cannot be used with a successful
* <code>StatusCode</code> header or when the transformed object is provided in the
- * body. All error codes from S3 are sentence-cased. Regex value is
- * "^[A-Z][a-zA-Z]+$".</p>
+ * body. All error codes from S3 are sentence-cased. The regular expression (regex)
+ * value is <code>"^[A-Z][a-zA-Z]+$"</code>.</p>
*/
inline WriteGetObjectResponseRequest& WithErrorCode(Aws::String&& value) { SetErrorCode(std::move(value)); return *this;}
@@ -277,8 +285,8 @@ namespace Model
* &lt;Code&gt; tag of the error XML response for a corresponding
* <code>GetObject</code> call. Cannot be used with a successful
* <code>StatusCode</code> header or when the transformed object is provided in the
- * body. All error codes from S3 are sentence-cased. Regex value is
- * "^[A-Z][a-zA-Z]+$".</p>
+ * body. All error codes from S3 are sentence-cased. The regular expression (regex)
+ * value is <code>"^[A-Z][a-zA-Z]+$"</code>.</p>
*/
inline WriteGetObjectResponseRequest& WithErrorCode(const char* value) { SetErrorCode(value); return *this;}
@@ -640,6 +648,490 @@ namespace Model
/**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object returned by the Object
+ * Lambda function. This may not match the checksum for the object stored in Amazon
+ * S3. Amazon S3 will perform validation of the checksum values only when the
+ * original <code>GetObject</code> request required checksum validation. For more
+ * information about checksums, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>Only one
+ * checksum header can be specified at a time. If you supply multiple checksum
+ * headers, this request will fail.</p> <p/>
+ */
+ inline const Aws::String& GetChecksumCRC32() const{ return m_checksumCRC32; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object returned by the Object
+ * Lambda function. This may not match the checksum for the object stored in Amazon
+ * S3. Amazon S3 will perform validation of the checksum values only when the
+ * original <code>GetObject</code> request required checksum validation. For more
+ * information about checksums, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>Only one
+ * checksum header can be specified at a time. If you supply multiple checksum
+ * headers, this request will fail.</p> <p/>
+ */
+ inline bool ChecksumCRC32HasBeenSet() const { return m_checksumCRC32HasBeenSet; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object returned by the Object
+ * Lambda function. This may not match the checksum for the object stored in Amazon
+ * S3. Amazon S3 will perform validation of the checksum values only when the
+ * original <code>GetObject</code> request required checksum validation. For more
+ * information about checksums, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>Only one
+ * checksum header can be specified at a time. If you supply multiple checksum
+ * headers, this request will fail.</p> <p/>
+ */
+ inline void SetChecksumCRC32(const Aws::String& value) { m_checksumCRC32HasBeenSet = true; m_checksumCRC32 = value; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object returned by the Object
+ * Lambda function. This may not match the checksum for the object stored in Amazon
+ * S3. Amazon S3 will perform validation of the checksum values only when the
+ * original <code>GetObject</code> request required checksum validation. For more
+ * information about checksums, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>Only one
+ * checksum header can be specified at a time. If you supply multiple checksum
+ * headers, this request will fail.</p> <p/>
+ */
+ inline void SetChecksumCRC32(Aws::String&& value) { m_checksumCRC32HasBeenSet = true; m_checksumCRC32 = std::move(value); }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object returned by the Object
+ * Lambda function. This may not match the checksum for the object stored in Amazon
+ * S3. Amazon S3 will perform validation of the checksum values only when the
+ * original <code>GetObject</code> request required checksum validation. For more
+ * information about checksums, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>Only one
+ * checksum header can be specified at a time. If you supply multiple checksum
+ * headers, this request will fail.</p> <p/>
+ */
+ inline void SetChecksumCRC32(const char* value) { m_checksumCRC32HasBeenSet = true; m_checksumCRC32.assign(value); }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object returned by the Object
+ * Lambda function. This may not match the checksum for the object stored in Amazon
+ * S3. Amazon S3 will perform validation of the checksum values only when the
+ * original <code>GetObject</code> request required checksum validation. For more
+ * information about checksums, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>Only one
+ * checksum header can be specified at a time. If you supply multiple checksum
+ * headers, this request will fail.</p> <p/>
+ */
+ inline WriteGetObjectResponseRequest& WithChecksumCRC32(const Aws::String& value) { SetChecksumCRC32(value); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object returned by the Object
+ * Lambda function. This may not match the checksum for the object stored in Amazon
+ * S3. Amazon S3 will perform validation of the checksum values only when the
+ * original <code>GetObject</code> request required checksum validation. For more
+ * information about checksums, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>Only one
+ * checksum header can be specified at a time. If you supply multiple checksum
+ * headers, this request will fail.</p> <p/>
+ */
+ inline WriteGetObjectResponseRequest& WithChecksumCRC32(Aws::String&& value) { SetChecksumCRC32(std::move(value)); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This specifies the
+ * base64-encoded, 32-bit CRC32 checksum of the object returned by the Object
+ * Lambda function. This may not match the checksum for the object stored in Amazon
+ * S3. Amazon S3 will perform validation of the checksum values only when the
+ * original <code>GetObject</code> request required checksum validation. For more
+ * information about checksums, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>Only one
+ * checksum header can be specified at a time. If you supply multiple checksum
+ * headers, this request will fail.</p> <p/>
+ */
+ inline WriteGetObjectResponseRequest& WithChecksumCRC32(const char* value) { SetChecksumCRC32(value); return *this;}
+
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This specifies the
+ * base64-encoded, 32-bit CRC32C checksum of the object returned by the Object
+ * Lambda function. This may not match the checksum for the object stored in Amazon
+ * S3. Amazon S3 will perform validation of the checksum values only when the
+ * original <code>GetObject</code> request required checksum validation. For more
+ * information about checksums, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>Only one
+ * checksum header can be specified at a time. If you supply multiple checksum
+ * headers, this request will fail.</p>
+ */
+ inline const Aws::String& GetChecksumCRC32C() const{ return m_checksumCRC32C; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This specifies the
+ * base64-encoded, 32-bit CRC32C checksum of the object returned by the Object
+ * Lambda function. This may not match the checksum for the object stored in Amazon
+ * S3. Amazon S3 will perform validation of the checksum values only when the
+ * original <code>GetObject</code> request required checksum validation. For more
+ * information about checksums, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>Only one
+ * checksum header can be specified at a time. If you supply multiple checksum
+ * headers, this request will fail.</p>
+ */
+ inline bool ChecksumCRC32CHasBeenSet() const { return m_checksumCRC32CHasBeenSet; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This specifies the
+ * base64-encoded, 32-bit CRC32C checksum of the object returned by the Object
+ * Lambda function. This may not match the checksum for the object stored in Amazon
+ * S3. Amazon S3 will perform validation of the checksum values only when the
+ * original <code>GetObject</code> request required checksum validation. For more
+ * information about checksums, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>Only one
+ * checksum header can be specified at a time. If you supply multiple checksum
+ * headers, this request will fail.</p>
+ */
+ inline void SetChecksumCRC32C(const Aws::String& value) { m_checksumCRC32CHasBeenSet = true; m_checksumCRC32C = value; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This specifies the
+ * base64-encoded, 32-bit CRC32C checksum of the object returned by the Object
+ * Lambda function. This may not match the checksum for the object stored in Amazon
+ * S3. Amazon S3 will perform validation of the checksum values only when the
+ * original <code>GetObject</code> request required checksum validation. For more
+ * information about checksums, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>Only one
+ * checksum header can be specified at a time. If you supply multiple checksum
+ * headers, this request will fail.</p>
+ */
+ inline void SetChecksumCRC32C(Aws::String&& value) { m_checksumCRC32CHasBeenSet = true; m_checksumCRC32C = std::move(value); }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This specifies the
+ * base64-encoded, 32-bit CRC32C checksum of the object returned by the Object
+ * Lambda function. This may not match the checksum for the object stored in Amazon
+ * S3. Amazon S3 will perform validation of the checksum values only when the
+ * original <code>GetObject</code> request required checksum validation. For more
+ * information about checksums, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>Only one
+ * checksum header can be specified at a time. If you supply multiple checksum
+ * headers, this request will fail.</p>
+ */
+ inline void SetChecksumCRC32C(const char* value) { m_checksumCRC32CHasBeenSet = true; m_checksumCRC32C.assign(value); }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This specifies the
+ * base64-encoded, 32-bit CRC32C checksum of the object returned by the Object
+ * Lambda function. This may not match the checksum for the object stored in Amazon
+ * S3. Amazon S3 will perform validation of the checksum values only when the
+ * original <code>GetObject</code> request required checksum validation. For more
+ * information about checksums, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>Only one
+ * checksum header can be specified at a time. If you supply multiple checksum
+ * headers, this request will fail.</p>
+ */
+ inline WriteGetObjectResponseRequest& WithChecksumCRC32C(const Aws::String& value) { SetChecksumCRC32C(value); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This specifies the
+ * base64-encoded, 32-bit CRC32C checksum of the object returned by the Object
+ * Lambda function. This may not match the checksum for the object stored in Amazon
+ * S3. Amazon S3 will perform validation of the checksum values only when the
+ * original <code>GetObject</code> request required checksum validation. For more
+ * information about checksums, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>Only one
+ * checksum header can be specified at a time. If you supply multiple checksum
+ * headers, this request will fail.</p>
+ */
+ inline WriteGetObjectResponseRequest& WithChecksumCRC32C(Aws::String&& value) { SetChecksumCRC32C(std::move(value)); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This specifies the
+ * base64-encoded, 32-bit CRC32C checksum of the object returned by the Object
+ * Lambda function. This may not match the checksum for the object stored in Amazon
+ * S3. Amazon S3 will perform validation of the checksum values only when the
+ * original <code>GetObject</code> request required checksum validation. For more
+ * information about checksums, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>Only one
+ * checksum header can be specified at a time. If you supply multiple checksum
+ * headers, this request will fail.</p>
+ */
+ inline WriteGetObjectResponseRequest& WithChecksumCRC32C(const char* value) { SetChecksumCRC32C(value); return *this;}
+
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This specifies the
+ * base64-encoded, 160-bit SHA-1 digest of the object returned by the Object Lambda
+ * function. This may not match the checksum for the object stored in Amazon S3.
+ * Amazon S3 will perform validation of the checksum values only when the original
+ * <code>GetObject</code> request required checksum validation. For more
+ * information about checksums, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>Only one
+ * checksum header can be specified at a time. If you supply multiple checksum
+ * headers, this request will fail.</p>
+ */
+ inline const Aws::String& GetChecksumSHA1() const{ return m_checksumSHA1; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This specifies the
+ * base64-encoded, 160-bit SHA-1 digest of the object returned by the Object Lambda
+ * function. This may not match the checksum for the object stored in Amazon S3.
+ * Amazon S3 will perform validation of the checksum values only when the original
+ * <code>GetObject</code> request required checksum validation. For more
+ * information about checksums, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>Only one
+ * checksum header can be specified at a time. If you supply multiple checksum
+ * headers, this request will fail.</p>
+ */
+ inline bool ChecksumSHA1HasBeenSet() const { return m_checksumSHA1HasBeenSet; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This specifies the
+ * base64-encoded, 160-bit SHA-1 digest of the object returned by the Object Lambda
+ * function. This may not match the checksum for the object stored in Amazon S3.
+ * Amazon S3 will perform validation of the checksum values only when the original
+ * <code>GetObject</code> request required checksum validation. For more
+ * information about checksums, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>Only one
+ * checksum header can be specified at a time. If you supply multiple checksum
+ * headers, this request will fail.</p>
+ */
+ inline void SetChecksumSHA1(const Aws::String& value) { m_checksumSHA1HasBeenSet = true; m_checksumSHA1 = value; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This specifies the
+ * base64-encoded, 160-bit SHA-1 digest of the object returned by the Object Lambda
+ * function. This may not match the checksum for the object stored in Amazon S3.
+ * Amazon S3 will perform validation of the checksum values only when the original
+ * <code>GetObject</code> request required checksum validation. For more
+ * information about checksums, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>Only one
+ * checksum header can be specified at a time. If you supply multiple checksum
+ * headers, this request will fail.</p>
+ */
+ inline void SetChecksumSHA1(Aws::String&& value) { m_checksumSHA1HasBeenSet = true; m_checksumSHA1 = std::move(value); }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This specifies the
+ * base64-encoded, 160-bit SHA-1 digest of the object returned by the Object Lambda
+ * function. This may not match the checksum for the object stored in Amazon S3.
+ * Amazon S3 will perform validation of the checksum values only when the original
+ * <code>GetObject</code> request required checksum validation. For more
+ * information about checksums, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>Only one
+ * checksum header can be specified at a time. If you supply multiple checksum
+ * headers, this request will fail.</p>
+ */
+ inline void SetChecksumSHA1(const char* value) { m_checksumSHA1HasBeenSet = true; m_checksumSHA1.assign(value); }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This specifies the
+ * base64-encoded, 160-bit SHA-1 digest of the object returned by the Object Lambda
+ * function. This may not match the checksum for the object stored in Amazon S3.
+ * Amazon S3 will perform validation of the checksum values only when the original
+ * <code>GetObject</code> request required checksum validation. For more
+ * information about checksums, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>Only one
+ * checksum header can be specified at a time. If you supply multiple checksum
+ * headers, this request will fail.</p>
+ */
+ inline WriteGetObjectResponseRequest& WithChecksumSHA1(const Aws::String& value) { SetChecksumSHA1(value); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This specifies the
+ * base64-encoded, 160-bit SHA-1 digest of the object returned by the Object Lambda
+ * function. This may not match the checksum for the object stored in Amazon S3.
+ * Amazon S3 will perform validation of the checksum values only when the original
+ * <code>GetObject</code> request required checksum validation. For more
+ * information about checksums, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>Only one
+ * checksum header can be specified at a time. If you supply multiple checksum
+ * headers, this request will fail.</p>
+ */
+ inline WriteGetObjectResponseRequest& WithChecksumSHA1(Aws::String&& value) { SetChecksumSHA1(std::move(value)); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This specifies the
+ * base64-encoded, 160-bit SHA-1 digest of the object returned by the Object Lambda
+ * function. This may not match the checksum for the object stored in Amazon S3.
+ * Amazon S3 will perform validation of the checksum values only when the original
+ * <code>GetObject</code> request required checksum validation. For more
+ * information about checksums, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>Only one
+ * checksum header can be specified at a time. If you supply multiple checksum
+ * headers, this request will fail.</p>
+ */
+ inline WriteGetObjectResponseRequest& WithChecksumSHA1(const char* value) { SetChecksumSHA1(value); return *this;}
+
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object returned by the Object
+ * Lambda function. This may not match the checksum for the object stored in Amazon
+ * S3. Amazon S3 will perform validation of the checksum values only when the
+ * original <code>GetObject</code> request required checksum validation. For more
+ * information about checksums, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>Only one
+ * checksum header can be specified at a time. If you supply multiple checksum
+ * headers, this request will fail.</p>
+ */
+ inline const Aws::String& GetChecksumSHA256() const{ return m_checksumSHA256; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object returned by the Object
+ * Lambda function. This may not match the checksum for the object stored in Amazon
+ * S3. Amazon S3 will perform validation of the checksum values only when the
+ * original <code>GetObject</code> request required checksum validation. For more
+ * information about checksums, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>Only one
+ * checksum header can be specified at a time. If you supply multiple checksum
+ * headers, this request will fail.</p>
+ */
+ inline bool ChecksumSHA256HasBeenSet() const { return m_checksumSHA256HasBeenSet; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object returned by the Object
+ * Lambda function. This may not match the checksum for the object stored in Amazon
+ * S3. Amazon S3 will perform validation of the checksum values only when the
+ * original <code>GetObject</code> request required checksum validation. For more
+ * information about checksums, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>Only one
+ * checksum header can be specified at a time. If you supply multiple checksum
+ * headers, this request will fail.</p>
+ */
+ inline void SetChecksumSHA256(const Aws::String& value) { m_checksumSHA256HasBeenSet = true; m_checksumSHA256 = value; }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object returned by the Object
+ * Lambda function. This may not match the checksum for the object stored in Amazon
+ * S3. Amazon S3 will perform validation of the checksum values only when the
+ * original <code>GetObject</code> request required checksum validation. For more
+ * information about checksums, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>Only one
+ * checksum header can be specified at a time. If you supply multiple checksum
+ * headers, this request will fail.</p>
+ */
+ inline void SetChecksumSHA256(Aws::String&& value) { m_checksumSHA256HasBeenSet = true; m_checksumSHA256 = std::move(value); }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object returned by the Object
+ * Lambda function. This may not match the checksum for the object stored in Amazon
+ * S3. Amazon S3 will perform validation of the checksum values only when the
+ * original <code>GetObject</code> request required checksum validation. For more
+ * information about checksums, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>Only one
+ * checksum header can be specified at a time. If you supply multiple checksum
+ * headers, this request will fail.</p>
+ */
+ inline void SetChecksumSHA256(const char* value) { m_checksumSHA256HasBeenSet = true; m_checksumSHA256.assign(value); }
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object returned by the Object
+ * Lambda function. This may not match the checksum for the object stored in Amazon
+ * S3. Amazon S3 will perform validation of the checksum values only when the
+ * original <code>GetObject</code> request required checksum validation. For more
+ * information about checksums, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>Only one
+ * checksum header can be specified at a time. If you supply multiple checksum
+ * headers, this request will fail.</p>
+ */
+ inline WriteGetObjectResponseRequest& WithChecksumSHA256(const Aws::String& value) { SetChecksumSHA256(value); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object returned by the Object
+ * Lambda function. This may not match the checksum for the object stored in Amazon
+ * S3. Amazon S3 will perform validation of the checksum values only when the
+ * original <code>GetObject</code> request required checksum validation. For more
+ * information about checksums, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>Only one
+ * checksum header can be specified at a time. If you supply multiple checksum
+ * headers, this request will fail.</p>
+ */
+ inline WriteGetObjectResponseRequest& WithChecksumSHA256(Aws::String&& value) { SetChecksumSHA256(std::move(value)); return *this;}
+
+ /**
+ * <p>This header can be used as a data integrity check to verify that the data
+ * received is the same data that was originally sent. This specifies the
+ * base64-encoded, 256-bit SHA-256 digest of the object returned by the Object
+ * Lambda function. This may not match the checksum for the object stored in Amazon
+ * S3. Amazon S3 will perform validation of the checksum values only when the
+ * original <code>GetObject</code> request required checksum validation. For more
+ * information about checksums, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p> <p>Only one
+ * checksum header can be specified at a time. If you supply multiple checksum
+ * headers, this request will fail.</p>
+ */
+ inline WriteGetObjectResponseRequest& WithChecksumSHA256(const char* value) { SetChecksumSHA256(value); return *this;}
+
+
+ /**
* <p>Specifies whether an object stored in Amazon S3 is (<code>true</code>) or is
* not (<code>false</code>) a delete marker. </p>
*/
@@ -745,58 +1237,66 @@ namespace Model
/**
- * <p>If object stored in Amazon S3 expiration is configured (see PUT Bucket
- * lifecycle) it includes expiry-date and rule-id key-value pairs providing object
- * expiration information. The value of the rule-id is URL encoded. </p>
+ * <p>If the object expiration is configured (see PUT Bucket lifecycle), the
+ * response includes this header. It includes the <code>expiry-date</code> and
+ * <code>rule-id</code> key-value pairs that provide the object expiration
+ * information. The value of the <code>rule-id</code> is URL-encoded. </p>
*/
inline const Aws::String& GetExpiration() const{ return m_expiration; }
/**
- * <p>If object stored in Amazon S3 expiration is configured (see PUT Bucket
- * lifecycle) it includes expiry-date and rule-id key-value pairs providing object
- * expiration information. The value of the rule-id is URL encoded. </p>
+ * <p>If the object expiration is configured (see PUT Bucket lifecycle), the
+ * response includes this header. It includes the <code>expiry-date</code> and
+ * <code>rule-id</code> key-value pairs that provide the object expiration
+ * information. The value of the <code>rule-id</code> is URL-encoded. </p>
*/
inline bool ExpirationHasBeenSet() const { return m_expirationHasBeenSet; }
/**
- * <p>If object stored in Amazon S3 expiration is configured (see PUT Bucket
- * lifecycle) it includes expiry-date and rule-id key-value pairs providing object
- * expiration information. The value of the rule-id is URL encoded. </p>
+ * <p>If the object expiration is configured (see PUT Bucket lifecycle), the
+ * response includes this header. It includes the <code>expiry-date</code> and
+ * <code>rule-id</code> key-value pairs that provide the object expiration
+ * information. The value of the <code>rule-id</code> is URL-encoded. </p>
*/
inline void SetExpiration(const Aws::String& value) { m_expirationHasBeenSet = true; m_expiration = value; }
/**
- * <p>If object stored in Amazon S3 expiration is configured (see PUT Bucket
- * lifecycle) it includes expiry-date and rule-id key-value pairs providing object
- * expiration information. The value of the rule-id is URL encoded. </p>
+ * <p>If the object expiration is configured (see PUT Bucket lifecycle), the
+ * response includes this header. It includes the <code>expiry-date</code> and
+ * <code>rule-id</code> key-value pairs that provide the object expiration
+ * information. The value of the <code>rule-id</code> is URL-encoded. </p>
*/
inline void SetExpiration(Aws::String&& value) { m_expirationHasBeenSet = true; m_expiration = std::move(value); }
/**
- * <p>If object stored in Amazon S3 expiration is configured (see PUT Bucket
- * lifecycle) it includes expiry-date and rule-id key-value pairs providing object
- * expiration information. The value of the rule-id is URL encoded. </p>
+ * <p>If the object expiration is configured (see PUT Bucket lifecycle), the
+ * response includes this header. It includes the <code>expiry-date</code> and
+ * <code>rule-id</code> key-value pairs that provide the object expiration
+ * information. The value of the <code>rule-id</code> is URL-encoded. </p>
*/
inline void SetExpiration(const char* value) { m_expirationHasBeenSet = true; m_expiration.assign(value); }
/**
- * <p>If object stored in Amazon S3 expiration is configured (see PUT Bucket
- * lifecycle) it includes expiry-date and rule-id key-value pairs providing object
- * expiration information. The value of the rule-id is URL encoded. </p>
+ * <p>If the object expiration is configured (see PUT Bucket lifecycle), the
+ * response includes this header. It includes the <code>expiry-date</code> and
+ * <code>rule-id</code> key-value pairs that provide the object expiration
+ * information. The value of the <code>rule-id</code> is URL-encoded. </p>
*/
inline WriteGetObjectResponseRequest& WithExpiration(const Aws::String& value) { SetExpiration(value); return *this;}
/**
- * <p>If object stored in Amazon S3 expiration is configured (see PUT Bucket
- * lifecycle) it includes expiry-date and rule-id key-value pairs providing object
- * expiration information. The value of the rule-id is URL encoded. </p>
+ * <p>If the object expiration is configured (see PUT Bucket lifecycle), the
+ * response includes this header. It includes the <code>expiry-date</code> and
+ * <code>rule-id</code> key-value pairs that provide the object expiration
+ * information. The value of the <code>rule-id</code> is URL-encoded. </p>
*/
inline WriteGetObjectResponseRequest& WithExpiration(Aws::String&& value) { SetExpiration(std::move(value)); return *this;}
/**
- * <p>If object stored in Amazon S3 expiration is configured (see PUT Bucket
- * lifecycle) it includes expiry-date and rule-id key-value pairs providing object
- * expiration information. The value of the rule-id is URL encoded. </p>
+ * <p>If the object expiration is configured (see PUT Bucket lifecycle), the
+ * response includes this header. It includes the <code>expiry-date</code> and
+ * <code>rule-id</code> key-value pairs that provide the object expiration
+ * information. The value of the <code>rule-id</code> is URL-encoded. </p>
*/
inline WriteGetObjectResponseRequest& WithExpiration(const char* value) { SetExpiration(value); return *this;}
@@ -1261,58 +1761,58 @@ namespace Model
/**
- * <p> If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for stored in
- * Amazon S3 object. </p>
+ * <p> If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for stored in Amazon S3 object. </p>
*/
inline const Aws::String& GetSSEKMSKeyId() const{ return m_sSEKMSKeyId; }
/**
- * <p> If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for stored in
- * Amazon S3 object. </p>
+ * <p> If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for stored in Amazon S3 object. </p>
*/
inline bool SSEKMSKeyIdHasBeenSet() const { return m_sSEKMSKeyIdHasBeenSet; }
/**
- * <p> If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for stored in
- * Amazon S3 object. </p>
+ * <p> If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for stored in Amazon S3 object. </p>
*/
inline void SetSSEKMSKeyId(const Aws::String& value) { m_sSEKMSKeyIdHasBeenSet = true; m_sSEKMSKeyId = value; }
/**
- * <p> If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for stored in
- * Amazon S3 object. </p>
+ * <p> If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for stored in Amazon S3 object. </p>
*/
inline void SetSSEKMSKeyId(Aws::String&& value) { m_sSEKMSKeyIdHasBeenSet = true; m_sSEKMSKeyId = std::move(value); }
/**
- * <p> If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for stored in
- * Amazon S3 object. </p>
+ * <p> If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for stored in Amazon S3 object. </p>
*/
inline void SetSSEKMSKeyId(const char* value) { m_sSEKMSKeyIdHasBeenSet = true; m_sSEKMSKeyId.assign(value); }
/**
- * <p> If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for stored in
- * Amazon S3 object. </p>
+ * <p> If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for stored in Amazon S3 object. </p>
*/
inline WriteGetObjectResponseRequest& WithSSEKMSKeyId(const Aws::String& value) { SetSSEKMSKeyId(value); return *this;}
/**
- * <p> If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for stored in
- * Amazon S3 object. </p>
+ * <p> If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for stored in Amazon S3 object. </p>
*/
inline WriteGetObjectResponseRequest& WithSSEKMSKeyId(Aws::String&& value) { SetSSEKMSKeyId(std::move(value)); return *this;}
/**
- * <p> If present, specifies the ID of the AWS Key Management Service (AWS KMS)
- * symmetric customer managed customer master key (CMK) that was used for stored in
- * Amazon S3 object. </p>
+ * <p> If present, specifies the ID of the Amazon Web Services Key Management
+ * Service (Amazon Web Services KMS) symmetric customer managed key that was used
+ * for stored in Amazon S3 object. </p>
*/
inline WriteGetObjectResponseRequest& WithSSEKMSKeyId(const char* value) { SetSSEKMSKeyId(value); return *this;}
@@ -1391,32 +1891,56 @@ namespace Model
/**
- * <p> The class of storage used to store object in Amazon S3.</p>
+ * <p>Provides storage class information of the object. Amazon S3 returns this
+ * header for all objects except for S3 Standard storage class objects.</p> <p>For
+ * more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
+ * Classes</a>.</p>
*/
inline const StorageClass& GetStorageClass() const{ return m_storageClass; }
/**
- * <p> The class of storage used to store object in Amazon S3.</p>
+ * <p>Provides storage class information of the object. Amazon S3 returns this
+ * header for all objects except for S3 Standard storage class objects.</p> <p>For
+ * more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
+ * Classes</a>.</p>
*/
inline bool StorageClassHasBeenSet() const { return m_storageClassHasBeenSet; }
/**
- * <p> The class of storage used to store object in Amazon S3.</p>
+ * <p>Provides storage class information of the object. Amazon S3 returns this
+ * header for all objects except for S3 Standard storage class objects.</p> <p>For
+ * more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
+ * Classes</a>.</p>
*/
inline void SetStorageClass(const StorageClass& value) { m_storageClassHasBeenSet = true; m_storageClass = value; }
/**
- * <p> The class of storage used to store object in Amazon S3.</p>
+ * <p>Provides storage class information of the object. Amazon S3 returns this
+ * header for all objects except for S3 Standard storage class objects.</p> <p>For
+ * more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
+ * Classes</a>.</p>
*/
inline void SetStorageClass(StorageClass&& value) { m_storageClassHasBeenSet = true; m_storageClass = std::move(value); }
/**
- * <p> The class of storage used to store object in Amazon S3.</p>
+ * <p>Provides storage class information of the object. Amazon S3 returns this
+ * header for all objects except for S3 Standard storage class objects.</p> <p>For
+ * more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
+ * Classes</a>.</p>
*/
inline WriteGetObjectResponseRequest& WithStorageClass(const StorageClass& value) { SetStorageClass(value); return *this;}
/**
- * <p> The class of storage used to store object in Amazon S3.</p>
+ * <p>Provides storage class information of the object. Amazon S3 returns this
+ * header for all objects except for S3 Standard storage class objects.</p> <p>For
+ * more information, see <a
+ * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage
+ * Classes</a>.</p>
*/
inline WriteGetObjectResponseRequest& WithStorageClass(StorageClass&& value) { SetStorageClass(std::move(value)); return *this;}
@@ -1485,25 +2009,25 @@ namespace Model
/**
* <p> Indicates whether the object stored in Amazon S3 uses an S3 bucket key for
- * server-side encryption with AWS KMS (SSE-KMS).</p>
+ * server-side encryption with Amazon Web Services KMS (SSE-KMS).</p>
*/
inline bool GetBucketKeyEnabled() const{ return m_bucketKeyEnabled; }
/**
* <p> Indicates whether the object stored in Amazon S3 uses an S3 bucket key for
- * server-side encryption with AWS KMS (SSE-KMS).</p>
+ * server-side encryption with Amazon Web Services KMS (SSE-KMS).</p>
*/
inline bool BucketKeyEnabledHasBeenSet() const { return m_bucketKeyEnabledHasBeenSet; }
/**
* <p> Indicates whether the object stored in Amazon S3 uses an S3 bucket key for
- * server-side encryption with AWS KMS (SSE-KMS).</p>
+ * server-side encryption with Amazon Web Services KMS (SSE-KMS).</p>
*/
inline void SetBucketKeyEnabled(bool value) { m_bucketKeyEnabledHasBeenSet = true; m_bucketKeyEnabled = value; }
/**
* <p> Indicates whether the object stored in Amazon S3 uses an S3 bucket key for
- * server-side encryption with AWS KMS (SSE-KMS).</p>
+ * server-side encryption with Amazon Web Services KMS (SSE-KMS).</p>
*/
inline WriteGetObjectResponseRequest& WithBucketKeyEnabled(bool value) { SetBucketKeyEnabled(value); return *this;}
@@ -1550,110 +2074,122 @@ namespace Model
private:
Aws::String m_requestRoute;
- bool m_requestRouteHasBeenSet;
+ bool m_requestRouteHasBeenSet = false;
Aws::String m_requestToken;
- bool m_requestTokenHasBeenSet;
+ bool m_requestTokenHasBeenSet = false;
int m_statusCode;
- bool m_statusCodeHasBeenSet;
+ bool m_statusCodeHasBeenSet = false;
Aws::String m_errorCode;
- bool m_errorCodeHasBeenSet;
+ bool m_errorCodeHasBeenSet = false;
Aws::String m_errorMessage;
- bool m_errorMessageHasBeenSet;
+ bool m_errorMessageHasBeenSet = false;
Aws::String m_acceptRanges;
- bool m_acceptRangesHasBeenSet;
+ bool m_acceptRangesHasBeenSet = false;
Aws::String m_cacheControl;
- bool m_cacheControlHasBeenSet;
+ bool m_cacheControlHasBeenSet = false;
Aws::String m_contentDisposition;
- bool m_contentDispositionHasBeenSet;
+ bool m_contentDispositionHasBeenSet = false;
Aws::String m_contentEncoding;
- bool m_contentEncodingHasBeenSet;
+ bool m_contentEncodingHasBeenSet = false;
Aws::String m_contentLanguage;
- bool m_contentLanguageHasBeenSet;
+ bool m_contentLanguageHasBeenSet = false;
long long m_contentLength;
- bool m_contentLengthHasBeenSet;
+ bool m_contentLengthHasBeenSet = false;
Aws::String m_contentRange;
- bool m_contentRangeHasBeenSet;
+ bool m_contentRangeHasBeenSet = false;
+
+ Aws::String m_checksumCRC32;
+ bool m_checksumCRC32HasBeenSet = false;
+
+ Aws::String m_checksumCRC32C;
+ bool m_checksumCRC32CHasBeenSet = false;
+
+ Aws::String m_checksumSHA1;
+ bool m_checksumSHA1HasBeenSet = false;
+
+ Aws::String m_checksumSHA256;
+ bool m_checksumSHA256HasBeenSet = false;
bool m_deleteMarker;
- bool m_deleteMarkerHasBeenSet;
+ bool m_deleteMarkerHasBeenSet = false;
Aws::String m_eTag;
- bool m_eTagHasBeenSet;
+ bool m_eTagHasBeenSet = false;
Aws::Utils::DateTime m_expires;
- bool m_expiresHasBeenSet;
+ bool m_expiresHasBeenSet = false;
Aws::String m_expiration;
- bool m_expirationHasBeenSet;
+ bool m_expirationHasBeenSet = false;
Aws::Utils::DateTime m_lastModified;
- bool m_lastModifiedHasBeenSet;
+ bool m_lastModifiedHasBeenSet = false;
int m_missingMeta;
- bool m_missingMetaHasBeenSet;
+ bool m_missingMetaHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_metadata;
- bool m_metadataHasBeenSet;
+ bool m_metadataHasBeenSet = false;
ObjectLockMode m_objectLockMode;
- bool m_objectLockModeHasBeenSet;
+ bool m_objectLockModeHasBeenSet = false;
ObjectLockLegalHoldStatus m_objectLockLegalHoldStatus;
- bool m_objectLockLegalHoldStatusHasBeenSet;
+ bool m_objectLockLegalHoldStatusHasBeenSet = false;
Aws::Utils::DateTime m_objectLockRetainUntilDate;
- bool m_objectLockRetainUntilDateHasBeenSet;
+ bool m_objectLockRetainUntilDateHasBeenSet = false;
int m_partsCount;
- bool m_partsCountHasBeenSet;
+ bool m_partsCountHasBeenSet = false;
ReplicationStatus m_replicationStatus;
- bool m_replicationStatusHasBeenSet;
+ bool m_replicationStatusHasBeenSet = false;
RequestCharged m_requestCharged;
- bool m_requestChargedHasBeenSet;
+ bool m_requestChargedHasBeenSet = false;
Aws::String m_restore;
- bool m_restoreHasBeenSet;
+ bool m_restoreHasBeenSet = false;
ServerSideEncryption m_serverSideEncryption;
- bool m_serverSideEncryptionHasBeenSet;
+ bool m_serverSideEncryptionHasBeenSet = false;
Aws::String m_sSECustomerAlgorithm;
- bool m_sSECustomerAlgorithmHasBeenSet;
+ bool m_sSECustomerAlgorithmHasBeenSet = false;
Aws::String m_sSEKMSKeyId;
- bool m_sSEKMSKeyIdHasBeenSet;
+ bool m_sSEKMSKeyIdHasBeenSet = false;
Aws::String m_sSECustomerKeyMD5;
- bool m_sSECustomerKeyMD5HasBeenSet;
+ bool m_sSECustomerKeyMD5HasBeenSet = false;
StorageClass m_storageClass;
- bool m_storageClassHasBeenSet;
+ bool m_storageClassHasBeenSet = false;
int m_tagCount;
- bool m_tagCountHasBeenSet;
+ bool m_tagCountHasBeenSet = false;
Aws::String m_versionId;
- bool m_versionIdHasBeenSet;
+ bool m_versionIdHasBeenSet = false;
bool m_bucketKeyEnabled;
- bool m_bucketKeyEnabledHasBeenSet;
+ bool m_bucketKeyEnabledHasBeenSet = false;
Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
- bool m_customizedAccessLogTagHasBeenSet;
+ bool m_customizedAccessLogTagHasBeenSet = false;
};
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3ARN.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3ARN.cpp
deleted file mode 100644
index 72bbbc8c7e..0000000000
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3ARN.cpp
+++ /dev/null
@@ -1,210 +0,0 @@
-/**
- * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
- * SPDX-License-Identifier: Apache-2.0.
- */
-
-#include <cassert>
-#include <aws/core/Region.h>
-#include <aws/core/utils/DNS.h>
-#include <aws/core/utils/Outcome.h>
-#include <aws/core/utils/StringUtils.h>
-#include <aws/s3/S3ARN.h>
-
-namespace Aws
-{
- namespace S3
- {
- S3ARN::S3ARN(const Aws::String& arn) : Utils::ARN(arn)
- {
- ParseARNResource();
- }
-
- S3ARNOutcome S3ARN::Validate(const char* clientRegion) const
- {
- // Take pseudo region into consideration here.
- Aws::String region = clientRegion ? clientRegion : "";
- Aws::StringStream ss;
- if (this->GetResourceType() == ARNResourceType::OUTPOST && region.find("fips") != Aws::String::npos)
- {
- ss.str("");
- ss << "Outposts ARN do not support fips regions right now.";
- return S3ARNOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::VALIDATION, "VALIDATION", ss.str(), false));
- }
- else if (this->GetRegion() != Aws::Region::ComputeSignerRegion(clientRegion))
- {
- ss.str("");
- ss << "Region mismatch between \"" << this->GetRegion() << "\" defined in ARN and \""
- << clientRegion << "\" defined in client configuration. "
- << "You can specify AWS_S3_USE_ARN_REGION to ignore region defined in client configuration.";
- return S3ARNOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::VALIDATION, "VALIDATION", ss.str(), false));
- }
- else
- {
- return Validate();
- }
- }
-
- S3ARNOutcome S3ARN::Validate() const
- {
- Aws::String errorMessage;
- bool success = false;
- Aws::StringStream ss;
-
- if (!*this)
- {
- errorMessage = "Invalid ARN.";
- }
- // Validation on partition.
- else if (this->GetPartition().find("aws") != 0)
- {
- ss.str("");
- ss << "Invalid partition in ARN: " << this->GetPartition() << ". Valid options: aws, aws-cn, and etc.";
- }
- // Validation on service.
- else if (this->GetService() != ARNService::S3 && this->GetService() != ARNService::S3_OUTPOSTS && this->GetService() != ARNService::S3_OBJECT_LAMBDA)
- {
- ss.str("");
- ss << "Invalid service in ARN: " << this->GetService() << ". Valid options: " << ARNService::S3 << ", " << ARNService::S3_OUTPOSTS << ", " << ARNService::S3_OBJECT_LAMBDA << ".";
- errorMessage = ss.str();
- }
- // Validation on region.
- // TODO: Failure on different partitions.
- else if (this->GetRegion().empty())
- {
- errorMessage = "Invalid ARN with empty region.";
- }
- else if (!Utils::IsValidDnsLabel(this->GetRegion()))
- {
- ss.str("");
- ss << "Invalid region in ARN: " << this->GetRegion() << ". Region should be a RFC 3986 Host label.";
- errorMessage = ss.str();
- }
- // Validation on account ID
- else if (!Utils::IsValidDnsLabel(this->GetAccountId()))
- {
- ss.str("");
- ss << "Invalid account ID in ARN: " << this->GetAccountId() << ". Account ID should be a RFC 3986 Host label.";
- errorMessage = ss.str();
- }
- // Validation on Access Point ARN and Object Lambda Access Point ARN:
- else if (this->GetResourceType() == ARNResourceType::ACCESSPOINT)
- {
- if (!Utils::IsValidDnsLabel(this->GetResourceId()))
- {
- ss.str("");
- ss << "Invalid resource ID in accesspoint ARN: " << this->GetResourceId() << ". Resource ID should be a RFC 3986 Host label.";
- errorMessage = ss.str();
- }
- else if (!this->GetResourceQualifier().empty())
- {
- ss.str("");
- ss << "Invalid accesspoint ARN with non empty resource qualifier: " << this->GetResourceQualifier();
- errorMessage = ss.str();
- }
- else if (!this->GetSubResourceType().empty() || !this->GetSubResourceId().empty())
- {
- ss.str("");
- ss << "Invalid accesspoint ARN with non empty sub resource type: " << this->GetSubResourceType() << ", sub resource ID: " << this->GetSubResourceId();
- errorMessage = ss.str();
- }
- else
- {
- success = true;
- }
- }
- // Validation on Outposts ARN:
- else if (this->GetResourceType() == ARNResourceType::OUTPOST)
- {
- if (this->GetRegion().find("fips") != Aws::String::npos)
- {
- ss.str("");
- ss << "Outposts ARN do not support fips regions right now.";
- errorMessage = ss.str();
- }
- else if (!Utils::IsValidDnsLabel(this->GetResourceId()))
- {
- ss.str("");
- ss << "Invalid outpost ID in Outposts ARN: " << this->GetResourceId() << ". Outpost ID should be a RFC 3986 Host label.";
- errorMessage = ss.str();
- }
- else if (this->GetSubResourceType() != ARNResourceType::ACCESSPOINT)
- {
- ss.str("");
- ss << "Invalid sub resource type in Outposts ARN: " << this->GetSubResourceType() << ". Valid options: " << ARNResourceType::ACCESSPOINT;
- errorMessage = ss.str();
- }
- else if (!Utils::IsValidDnsLabel(this->GetSubResourceId()))
- {
- ss.str("");
- ss << "Invalid accesspoint name in Outposts ARN: " << this->GetSubResourceId() << ", accesspoint name should be a RFC 3986 Host label.";
- errorMessage = ss.str();
- }
- else
- {
- success = true;
- }
- }
- // ARN with unknown resource type.
- else
- {
- ss.str("");
- ss << "Invalid resource type in ARN: " << this->GetResourceType() << ". Valid options: " << ARNResourceType::ACCESSPOINT << ", " << ARNResourceType::OUTPOST << ".";
- errorMessage = ss.str();
- }
-
- if (success)
- {
- return S3ARNOutcome(success);
- }
- else
- {
- return S3ARNOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::VALIDATION, "VALIDATION", errorMessage, false));
- }
- }
-
- void S3ARN::ParseARNResource()
- {
- if (!*this) return;
-
- Aws::String resource = this->GetResource();
- Aws::Vector<Aws::String> resourceSegments;
- if (resource.find(':') != std::string::npos)
- {
- resourceSegments = Utils::StringUtils::Split(resource, ':', 4, Utils::StringUtils::SplitOptions::INCLUDE_EMPTY_ENTRIES);
- }
- else if (resource.find('/') != std::string::npos)
- {
- resourceSegments = Utils::StringUtils::Split(resource, '/', 4, Utils::StringUtils::SplitOptions::INCLUDE_EMPTY_ENTRIES);
- }
- else
- {
- resourceSegments.emplace_back(resource);
- }
-
- switch (resourceSegments.size())
- {
- case 1:
- m_resourceId = resourceSegments[0];
- break;
- case 2:
- m_resourceType = resourceSegments[0];
- m_resourceId = resourceSegments[1];
- break;
- case 3:
- m_resourceType = resourceSegments[0];
- m_resourceId = resourceSegments[1];
- m_resourceQualifier = resourceSegments[2];
- break;
- case 4:
- m_resourceType = resourceSegments[0];
- m_resourceId = resourceSegments[1];
- m_subResourceType = resourceSegments[2];
- m_subResourceId = resourceSegments[3];
- break;
- default:
- assert(false);
- break;
- }
- }
- }
-}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Client.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Client.cpp
index 7f9eb2b4c6..fa38c023e0 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Client.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Client.cpp
@@ -16,12 +16,13 @@
#include <aws/core/utils/threading/Executor.h>
#include <aws/core/utils/DNS.h>
#include <aws/core/utils/logging/LogMacros.h>
-
+#include <aws/core/utils/logging/ErrorMacros.h>
#include <aws/core/utils/event/EventStream.h>
+#include <aws/core/platform/Environment.h>
+
#include <aws/s3/S3Client.h>
-#include <aws/s3/S3Endpoint.h>
#include <aws/s3/S3ErrorMarshaller.h>
-#include <aws/s3/S3ARN.h>
+#include <aws/s3/S3EndpointProvider.h>
#include <aws/s3/model/AbortMultipartUploadRequest.h>
#include <aws/s3/model/CompleteMultipartUploadRequest.h>
#include <aws/s3/model/CopyObjectRequest.h>
@@ -66,6 +67,7 @@
#include <aws/s3/model/GetBucketWebsiteRequest.h>
#include <aws/s3/model/GetObjectRequest.h>
#include <aws/s3/model/GetObjectAclRequest.h>
+#include <aws/s3/model/GetObjectAttributesRequest.h>
#include <aws/s3/model/GetObjectLegalHoldRequest.h>
#include <aws/s3/model/GetObjectLockConfigurationRequest.h>
#include <aws/s3/model/GetObjectRetentionRequest.h>
@@ -121,88 +123,151 @@ using namespace Aws::S3;
using namespace Aws::S3::Model;
using namespace Aws::Http;
using namespace Aws::Utils::Xml;
+using ResolveEndpointOutcome = Aws::Endpoint::ResolveEndpointOutcome;
-static const char* SERVICE_NAME = "s3";
-static const char* ALLOCATION_TAG = "S3Client";
-
+const char* S3Client::SERVICE_NAME = "s3";
+const char* S3Client::ALLOCATION_TAG = "S3Client";
-S3Client::S3Client(const Client::ClientConfiguration& clientConfiguration, Aws::Client::AWSAuthV4Signer::PayloadSigningPolicy signPayloads, bool useVirtualAddressing, Aws::S3::US_EAST_1_REGIONAL_ENDPOINT_OPTION USEast1RegionalEndPointOption) :
+S3Client::S3Client(const S3::S3ClientConfiguration& clientConfiguration,
+ std::shared_ptr<S3EndpointProviderBase> endpointProvider) :
BASECLASS(clientConfiguration,
- Aws::MakeShared<AWSAuthV4Signer>(ALLOCATION_TAG, Aws::MakeShared<DefaultAWSCredentialsProviderChain>(ALLOCATION_TAG),
- SERVICE_NAME, Aws::Region::ComputeSignerRegion(clientConfiguration.region), signPayloads, false),
- Aws::MakeShared<S3ErrorMarshaller>(ALLOCATION_TAG)),
- m_executor(clientConfiguration.executor), m_useVirtualAddressing(useVirtualAddressing), m_USEast1RegionalEndpointOption(USEast1RegionalEndPointOption)
+ Aws::MakeShared<Aws::Auth::DefaultAuthSignerProvider>(ALLOCATION_TAG,
+ Aws::MakeShared<DefaultAWSCredentialsProviderChain>(ALLOCATION_TAG),
+ SERVICE_NAME,
+ Aws::Region::ComputeSignerRegion(clientConfiguration.region),
+ clientConfiguration.payloadSigningPolicy,
+ /*doubleEncodeValue*/ false),
+ Aws::MakeShared<S3ErrorMarshaller>(ALLOCATION_TAG)),
+ m_clientConfiguration(clientConfiguration),
+ m_executor(clientConfiguration.executor),
+ m_endpointProvider(std::move(endpointProvider))
+{
+ init(m_clientConfiguration);
+}
+
+S3Client::S3Client(const AWSCredentials& credentials,
+ std::shared_ptr<S3EndpointProviderBase> endpointProvider,
+ const S3::S3ClientConfiguration& clientConfiguration) :
+ BASECLASS(clientConfiguration,
+ Aws::MakeShared<Aws::Auth::DefaultAuthSignerProvider>(ALLOCATION_TAG,
+ Aws::MakeShared<SimpleAWSCredentialsProvider>(ALLOCATION_TAG, credentials),
+ SERVICE_NAME,
+ Aws::Region::ComputeSignerRegion(clientConfiguration.region),
+ clientConfiguration.payloadSigningPolicy,
+ /*doubleEncodeValue*/ false),
+ Aws::MakeShared<S3ErrorMarshaller>(ALLOCATION_TAG)),
+ m_clientConfiguration(clientConfiguration),
+ m_executor(clientConfiguration.executor),
+ m_endpointProvider(std::move(endpointProvider))
{
- init(clientConfiguration);
+ init(m_clientConfiguration);
}
-S3Client::S3Client(const AWSCredentials& credentials, const Client::ClientConfiguration& clientConfiguration, Aws::Client::AWSAuthV4Signer::PayloadSigningPolicy signPayloads, bool useVirtualAddressing, Aws::S3::US_EAST_1_REGIONAL_ENDPOINT_OPTION USEast1RegionalEndPointOption) :
+S3Client::S3Client(const std::shared_ptr<AWSCredentialsProvider>& credentialsProvider,
+ std::shared_ptr<S3EndpointProviderBase> endpointProvider,
+ const S3::S3ClientConfiguration& clientConfiguration) :
+ BASECLASS(clientConfiguration,
+ Aws::MakeShared<Aws::Auth::DefaultAuthSignerProvider>(ALLOCATION_TAG,
+ credentialsProvider,
+ SERVICE_NAME,
+ Aws::Region::ComputeSignerRegion(clientConfiguration.region),
+ clientConfiguration.payloadSigningPolicy,
+ /*doubleEncodeValue*/ false),
+ Aws::MakeShared<S3ErrorMarshaller>(ALLOCATION_TAG)),
+ m_clientConfiguration(clientConfiguration),
+ m_executor(clientConfiguration.executor),
+ m_endpointProvider(std::move(endpointProvider))
+{
+ init(m_clientConfiguration);
+}
+
+ /* Legacy constructors due deprecation */
+ S3Client::S3Client(const Client::ClientConfiguration& clientConfiguration,
+ Aws::Client::AWSAuthV4Signer::PayloadSigningPolicy signPayloads /*= Never*/,
+ bool useVirtualAddressing /*= true*/,
+ Aws::S3::US_EAST_1_REGIONAL_ENDPOINT_OPTION USEast1RegionalEndPointOption) :
BASECLASS(clientConfiguration,
- Aws::MakeShared<AWSAuthV4Signer>(ALLOCATION_TAG, Aws::MakeShared<SimpleAWSCredentialsProvider>(ALLOCATION_TAG, credentials),
- SERVICE_NAME, Aws::Region::ComputeSignerRegion(clientConfiguration.region), signPayloads, false),
- Aws::MakeShared<S3ErrorMarshaller>(ALLOCATION_TAG)),
- m_executor(clientConfiguration.executor), m_useVirtualAddressing(useVirtualAddressing), m_USEast1RegionalEndpointOption(USEast1RegionalEndPointOption)
+ Aws::MakeShared<Aws::Auth::DefaultAuthSignerProvider>(ALLOCATION_TAG,
+ Aws::MakeShared<DefaultAWSCredentialsProviderChain>(ALLOCATION_TAG),
+ SERVICE_NAME,
+ Aws::Region::ComputeSignerRegion(clientConfiguration.region),
+ signPayloads,
+ /*doubleEncodeValue*/ false),
+ Aws::MakeShared<S3ErrorMarshaller>(ALLOCATION_TAG)),
+ m_clientConfiguration(clientConfiguration, signPayloads, useVirtualAddressing, USEast1RegionalEndPointOption),
+ m_executor(clientConfiguration.executor),
+ m_endpointProvider(Aws::MakeShared<S3EndpointProvider>(ALLOCATION_TAG))
+{
+ init(m_clientConfiguration);
+}
+
+S3Client::S3Client(const AWSCredentials& credentials,
+ const Client::ClientConfiguration& clientConfiguration,
+ Aws::Client::AWSAuthV4Signer::PayloadSigningPolicy signPayloads /*= Never*/,
+ bool useVirtualAddressing /*= true*/,
+ Aws::S3::US_EAST_1_REGIONAL_ENDPOINT_OPTION USEast1RegionalEndPointOption) :
+ BASECLASS(clientConfiguration,
+ Aws::MakeShared<Aws::Auth::DefaultAuthSignerProvider>(ALLOCATION_TAG,
+ Aws::MakeShared<SimpleAWSCredentialsProvider>(ALLOCATION_TAG, credentials),
+ SERVICE_NAME,
+ Aws::Region::ComputeSignerRegion(clientConfiguration.region),
+ signPayloads,
+ /*doubleEncodeValue*/ false),
+ Aws::MakeShared<S3ErrorMarshaller>(ALLOCATION_TAG)),
+ m_clientConfiguration(clientConfiguration, signPayloads, useVirtualAddressing, USEast1RegionalEndPointOption),
+ m_executor(clientConfiguration.executor),
+ m_endpointProvider(Aws::MakeShared<S3EndpointProvider>(ALLOCATION_TAG))
{
- init(clientConfiguration);
+ init(m_clientConfiguration);
}
S3Client::S3Client(const std::shared_ptr<AWSCredentialsProvider>& credentialsProvider,
- const Client::ClientConfiguration& clientConfiguration, Aws::Client::AWSAuthV4Signer::PayloadSigningPolicy signPayloads, bool useVirtualAddressing, Aws::S3::US_EAST_1_REGIONAL_ENDPOINT_OPTION USEast1RegionalEndPointOption) :
+ const Client::ClientConfiguration& clientConfiguration,
+ Aws::Client::AWSAuthV4Signer::PayloadSigningPolicy signPayloads /*= Never*/,
+ bool useVirtualAddressing /*= true*/,
+ Aws::S3::US_EAST_1_REGIONAL_ENDPOINT_OPTION USEast1RegionalEndPointOption) :
BASECLASS(clientConfiguration,
- Aws::MakeShared<AWSAuthV4Signer>(ALLOCATION_TAG, credentialsProvider,
- SERVICE_NAME, Aws::Region::ComputeSignerRegion(clientConfiguration.region), signPayloads, false),
- Aws::MakeShared<S3ErrorMarshaller>(ALLOCATION_TAG)),
- m_executor(clientConfiguration.executor), m_useVirtualAddressing(useVirtualAddressing), m_USEast1RegionalEndpointOption(USEast1RegionalEndPointOption)
+ Aws::MakeShared<Aws::Auth::DefaultAuthSignerProvider>(ALLOCATION_TAG,
+ credentialsProvider,
+ SERVICE_NAME,
+ Aws::Region::ComputeSignerRegion(clientConfiguration.region),
+ signPayloads,
+ /*doubleEncodeValue*/ false),
+ Aws::MakeShared<S3ErrorMarshaller>(ALLOCATION_TAG)),
+ m_clientConfiguration(clientConfiguration, signPayloads, useVirtualAddressing, USEast1RegionalEndPointOption),
+ m_executor(clientConfiguration.executor),
+ m_endpointProvider(Aws::MakeShared<S3EndpointProvider>(ALLOCATION_TAG))
{
- init(clientConfiguration);
+ init(m_clientConfiguration);
}
+ /* End of legacy constructors due deprecation */
S3Client::~S3Client()
{
}
-void S3Client::init(const ClientConfiguration& config)
+std::shared_ptr<S3EndpointProviderBase>& S3Client::accessEndpointProvider()
{
- SetServiceClientName("S3");
- LoadS3SpecificConfig(config.profileName);
- m_configScheme = SchemeMapper::ToString(config.scheme);
- m_scheme = m_configScheme;
- m_useDualStack = config.useDualStack;
- if (config.endpointOverride.empty())
- {
- m_useCustomEndpoint = false;
- m_baseUri = S3Endpoint::ForRegion(config.region, config.useDualStack, m_USEast1RegionalEndpointOption == Aws::S3::US_EAST_1_REGIONAL_ENDPOINT_OPTION::REGIONAL);
- }
- else
- {
- m_useCustomEndpoint = true;
- OverrideEndpoint(config.endpointOverride);
- }
- m_enableHostPrefixInjection = config.enableHostPrefixInjection;
+ return m_endpointProvider;
+}
+
+void S3Client::init(const S3::S3ClientConfiguration& config)
+{
+ AWSClient::SetServiceClientName("S3");
+ AWS_CHECK_PTR(SERVICE_NAME, m_endpointProvider);
+ m_endpointProvider->InitBuiltInParameters(config);
}
void S3Client::OverrideEndpoint(const Aws::String& endpoint)
{
- if (endpoint.compare(0, 7, "http://") == 0)
- {
- m_scheme = "http";
- m_baseUri = endpoint.substr(7);
- }
- else if (endpoint.compare(0, 8, "https://") == 0)
- {
- m_scheme = "https";
- m_baseUri = endpoint.substr(8);
- }
- else
- {
- m_scheme = m_configScheme;
- m_baseUri = endpoint;
- }
+ AWS_CHECK_PTR(SERVICE_NAME, m_endpointProvider);
+ m_endpointProvider->OverrideEndpoint(endpoint);
}
AbortMultipartUploadOutcome S3Client::AbortMultipartUpload(const AbortMultipartUploadRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, AbortMultipartUpload, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("AbortMultipartUpload", "Required field: Bucket, is not set");
@@ -218,39 +283,15 @@ AbortMultipartUploadOutcome S3Client::AbortMultipartUpload(const AbortMultipartU
AWS_LOGSTREAM_ERROR("AbortMultipartUpload", "Required field: UploadId, is not set");
return AbortMultipartUploadOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [UploadId]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return AbortMultipartUploadOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
- Aws::StringStream ss;
- ss << "/";
- ss << request.GetKey();
- uri.SetPath(uri.GetPath() + ss.str());
- return AbortMultipartUploadOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_DELETE, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-AbortMultipartUploadOutcomeCallable S3Client::AbortMultipartUploadCallable(const AbortMultipartUploadRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< AbortMultipartUploadOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->AbortMultipartUpload(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::AbortMultipartUploadAsync(const AbortMultipartUploadRequest& request, const AbortMultipartUploadResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->AbortMultipartUploadAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::AbortMultipartUploadAsyncHelper(const AbortMultipartUploadRequest& request, const AbortMultipartUploadResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, AbortMultipartUpload(request), context);
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, AbortMultipartUpload, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
+ endpointResolutionOutcome.GetResult().AddPathSegments(request.GetKey());
+ return AbortMultipartUploadOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_DELETE));
}
CompleteMultipartUploadOutcome S3Client::CompleteMultipartUpload(const CompleteMultipartUploadRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, CompleteMultipartUpload, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("CompleteMultipartUpload", "Required field: Bucket, is not set");
@@ -266,39 +307,15 @@ CompleteMultipartUploadOutcome S3Client::CompleteMultipartUpload(const CompleteM
AWS_LOGSTREAM_ERROR("CompleteMultipartUpload", "Required field: UploadId, is not set");
return CompleteMultipartUploadOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [UploadId]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return CompleteMultipartUploadOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
- Aws::StringStream ss;
- ss << "/";
- ss << request.GetKey();
- uri.SetPath(uri.GetPath() + ss.str());
- return CompleteMultipartUploadOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-CompleteMultipartUploadOutcomeCallable S3Client::CompleteMultipartUploadCallable(const CompleteMultipartUploadRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< CompleteMultipartUploadOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->CompleteMultipartUpload(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::CompleteMultipartUploadAsync(const CompleteMultipartUploadRequest& request, const CompleteMultipartUploadResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->CompleteMultipartUploadAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::CompleteMultipartUploadAsyncHelper(const CompleteMultipartUploadRequest& request, const CompleteMultipartUploadResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, CompleteMultipartUpload(request), context);
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, CompleteMultipartUpload, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
+ endpointResolutionOutcome.GetResult().AddPathSegments(request.GetKey());
+ return CompleteMultipartUploadOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_POST));
}
CopyObjectOutcome S3Client::CopyObject(const CopyObjectRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, CopyObject, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("CopyObject", "Required field: Bucket, is not set");
@@ -314,77 +331,28 @@ CopyObjectOutcome S3Client::CopyObject(const CopyObjectRequest& request) const
AWS_LOGSTREAM_ERROR("CopyObject", "Required field: Key, is not set");
return CopyObjectOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Key]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return CopyObjectOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
- Aws::StringStream ss;
- ss << "/";
- ss << request.GetKey();
- uri.SetPath(uri.GetPath() + ss.str());
- return CopyObjectOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_PUT, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-CopyObjectOutcomeCallable S3Client::CopyObjectCallable(const CopyObjectRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< CopyObjectOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->CopyObject(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::CopyObjectAsync(const CopyObjectRequest& request, const CopyObjectResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->CopyObjectAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::CopyObjectAsyncHelper(const CopyObjectRequest& request, const CopyObjectResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, CopyObject(request), context);
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, CopyObject, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
+ endpointResolutionOutcome.GetResult().AddPathSegments(request.GetKey());
+ return CopyObjectOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_PUT));
}
CreateBucketOutcome S3Client::CreateBucket(const CreateBucketRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, CreateBucket, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("CreateBucket", "Required field: Bucket, is not set");
return CreateBucketOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString();
- if (!computeEndpointOutcome.IsSuccess())
- {
- return CreateBucketOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
- Aws::StringStream ss;
- ss << "/";
- ss << request.GetBucket();
- uri.SetPath(uri.GetPath() + ss.str());
- return CreateBucketOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_PUT, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-CreateBucketOutcomeCallable S3Client::CreateBucketCallable(const CreateBucketRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< CreateBucketOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->CreateBucket(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::CreateBucketAsync(const CreateBucketRequest& request, const CreateBucketResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->CreateBucketAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::CreateBucketAsyncHelper(const CreateBucketRequest& request, const CreateBucketResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, CreateBucket(request), context);
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, CreateBucket, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
+ return CreateBucketOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_PUT));
}
CreateMultipartUploadOutcome S3Client::CreateMultipartUpload(const CreateMultipartUploadRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, CreateMultipartUpload, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("CreateMultipartUpload", "Required field: Bucket, is not set");
@@ -395,77 +363,31 @@ CreateMultipartUploadOutcome S3Client::CreateMultipartUpload(const CreateMultipa
AWS_LOGSTREAM_ERROR("CreateMultipartUpload", "Required field: Key, is not set");
return CreateMultipartUploadOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Key]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return CreateMultipartUploadOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, CreateMultipartUpload, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
- ss << "/";
- ss << request.GetKey();
- uri.SetPath(uri.GetPath() + ss.str());
+ endpointResolutionOutcome.GetResult().AddPathSegments(request.GetKey());
ss.str("?uploads");
- uri.SetQueryString(ss.str());
- return CreateMultipartUploadOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-CreateMultipartUploadOutcomeCallable S3Client::CreateMultipartUploadCallable(const CreateMultipartUploadRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< CreateMultipartUploadOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->CreateMultipartUpload(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::CreateMultipartUploadAsync(const CreateMultipartUploadRequest& request, const CreateMultipartUploadResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->CreateMultipartUploadAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::CreateMultipartUploadAsyncHelper(const CreateMultipartUploadRequest& request, const CreateMultipartUploadResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, CreateMultipartUpload(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return CreateMultipartUploadOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_POST));
}
DeleteBucketOutcome S3Client::DeleteBucket(const DeleteBucketRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, DeleteBucket, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("DeleteBucket", "Required field: Bucket, is not set");
return DeleteBucketOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return DeleteBucketOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
- Aws::StringStream ss;
- uri.SetPath(uri.GetPath() + ss.str());
- return DeleteBucketOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_DELETE, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-DeleteBucketOutcomeCallable S3Client::DeleteBucketCallable(const DeleteBucketRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< DeleteBucketOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DeleteBucket(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::DeleteBucketAsync(const DeleteBucketRequest& request, const DeleteBucketResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->DeleteBucketAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::DeleteBucketAsyncHelper(const DeleteBucketRequest& request, const DeleteBucketResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, DeleteBucket(request), context);
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, DeleteBucket, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
+ return DeleteBucketOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_DELETE));
}
DeleteBucketAnalyticsConfigurationOutcome S3Client::DeleteBucketAnalyticsConfiguration(const DeleteBucketAnalyticsConfigurationRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, DeleteBucketAnalyticsConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("DeleteBucketAnalyticsConfiguration", "Required field: Bucket, is not set");
@@ -476,112 +398,49 @@ DeleteBucketAnalyticsConfigurationOutcome S3Client::DeleteBucketAnalyticsConfigu
AWS_LOGSTREAM_ERROR("DeleteBucketAnalyticsConfiguration", "Required field: Id, is not set");
return DeleteBucketAnalyticsConfigurationOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Id]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return DeleteBucketAnalyticsConfigurationOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, DeleteBucketAnalyticsConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?analytics");
- uri.SetQueryString(ss.str());
- return DeleteBucketAnalyticsConfigurationOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_DELETE, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-DeleteBucketAnalyticsConfigurationOutcomeCallable S3Client::DeleteBucketAnalyticsConfigurationCallable(const DeleteBucketAnalyticsConfigurationRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< DeleteBucketAnalyticsConfigurationOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DeleteBucketAnalyticsConfiguration(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::DeleteBucketAnalyticsConfigurationAsync(const DeleteBucketAnalyticsConfigurationRequest& request, const DeleteBucketAnalyticsConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->DeleteBucketAnalyticsConfigurationAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::DeleteBucketAnalyticsConfigurationAsyncHelper(const DeleteBucketAnalyticsConfigurationRequest& request, const DeleteBucketAnalyticsConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, DeleteBucketAnalyticsConfiguration(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return DeleteBucketAnalyticsConfigurationOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_DELETE));
}
DeleteBucketCorsOutcome S3Client::DeleteBucketCors(const DeleteBucketCorsRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, DeleteBucketCors, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("DeleteBucketCors", "Required field: Bucket, is not set");
return DeleteBucketCorsOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return DeleteBucketCorsOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, DeleteBucketCors, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?cors");
- uri.SetQueryString(ss.str());
- return DeleteBucketCorsOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_DELETE, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-DeleteBucketCorsOutcomeCallable S3Client::DeleteBucketCorsCallable(const DeleteBucketCorsRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< DeleteBucketCorsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DeleteBucketCors(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::DeleteBucketCorsAsync(const DeleteBucketCorsRequest& request, const DeleteBucketCorsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->DeleteBucketCorsAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::DeleteBucketCorsAsyncHelper(const DeleteBucketCorsRequest& request, const DeleteBucketCorsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, DeleteBucketCors(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return DeleteBucketCorsOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_DELETE));
}
DeleteBucketEncryptionOutcome S3Client::DeleteBucketEncryption(const DeleteBucketEncryptionRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, DeleteBucketEncryption, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("DeleteBucketEncryption", "Required field: Bucket, is not set");
return DeleteBucketEncryptionOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return DeleteBucketEncryptionOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, DeleteBucketEncryption, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?encryption");
- uri.SetQueryString(ss.str());
- return DeleteBucketEncryptionOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_DELETE, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-DeleteBucketEncryptionOutcomeCallable S3Client::DeleteBucketEncryptionCallable(const DeleteBucketEncryptionRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< DeleteBucketEncryptionOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DeleteBucketEncryption(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::DeleteBucketEncryptionAsync(const DeleteBucketEncryptionRequest& request, const DeleteBucketEncryptionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->DeleteBucketEncryptionAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::DeleteBucketEncryptionAsyncHelper(const DeleteBucketEncryptionRequest& request, const DeleteBucketEncryptionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, DeleteBucketEncryption(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return DeleteBucketEncryptionOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_DELETE));
}
DeleteBucketIntelligentTieringConfigurationOutcome S3Client::DeleteBucketIntelligentTieringConfiguration(const DeleteBucketIntelligentTieringConfigurationRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, DeleteBucketIntelligentTieringConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("DeleteBucketIntelligentTieringConfiguration", "Required field: Bucket, is not set");
@@ -592,38 +451,17 @@ DeleteBucketIntelligentTieringConfigurationOutcome S3Client::DeleteBucketIntelli
AWS_LOGSTREAM_ERROR("DeleteBucketIntelligentTieringConfiguration", "Required field: Id, is not set");
return DeleteBucketIntelligentTieringConfigurationOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Id]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return DeleteBucketIntelligentTieringConfigurationOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, DeleteBucketIntelligentTieringConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?intelligent-tiering");
- uri.SetQueryString(ss.str());
- return DeleteBucketIntelligentTieringConfigurationOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_DELETE, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-DeleteBucketIntelligentTieringConfigurationOutcomeCallable S3Client::DeleteBucketIntelligentTieringConfigurationCallable(const DeleteBucketIntelligentTieringConfigurationRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< DeleteBucketIntelligentTieringConfigurationOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DeleteBucketIntelligentTieringConfiguration(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::DeleteBucketIntelligentTieringConfigurationAsync(const DeleteBucketIntelligentTieringConfigurationRequest& request, const DeleteBucketIntelligentTieringConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->DeleteBucketIntelligentTieringConfigurationAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::DeleteBucketIntelligentTieringConfigurationAsyncHelper(const DeleteBucketIntelligentTieringConfigurationRequest& request, const DeleteBucketIntelligentTieringConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, DeleteBucketIntelligentTieringConfiguration(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return DeleteBucketIntelligentTieringConfigurationOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_DELETE));
}
DeleteBucketInventoryConfigurationOutcome S3Client::DeleteBucketInventoryConfiguration(const DeleteBucketInventoryConfigurationRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, DeleteBucketInventoryConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("DeleteBucketInventoryConfiguration", "Required field: Bucket, is not set");
@@ -634,75 +472,33 @@ DeleteBucketInventoryConfigurationOutcome S3Client::DeleteBucketInventoryConfigu
AWS_LOGSTREAM_ERROR("DeleteBucketInventoryConfiguration", "Required field: Id, is not set");
return DeleteBucketInventoryConfigurationOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Id]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return DeleteBucketInventoryConfigurationOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, DeleteBucketInventoryConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?inventory");
- uri.SetQueryString(ss.str());
- return DeleteBucketInventoryConfigurationOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_DELETE, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-DeleteBucketInventoryConfigurationOutcomeCallable S3Client::DeleteBucketInventoryConfigurationCallable(const DeleteBucketInventoryConfigurationRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< DeleteBucketInventoryConfigurationOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DeleteBucketInventoryConfiguration(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::DeleteBucketInventoryConfigurationAsync(const DeleteBucketInventoryConfigurationRequest& request, const DeleteBucketInventoryConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->DeleteBucketInventoryConfigurationAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::DeleteBucketInventoryConfigurationAsyncHelper(const DeleteBucketInventoryConfigurationRequest& request, const DeleteBucketInventoryConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, DeleteBucketInventoryConfiguration(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return DeleteBucketInventoryConfigurationOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_DELETE));
}
DeleteBucketLifecycleOutcome S3Client::DeleteBucketLifecycle(const DeleteBucketLifecycleRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, DeleteBucketLifecycle, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("DeleteBucketLifecycle", "Required field: Bucket, is not set");
return DeleteBucketLifecycleOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return DeleteBucketLifecycleOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, DeleteBucketLifecycle, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?lifecycle");
- uri.SetQueryString(ss.str());
- return DeleteBucketLifecycleOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_DELETE, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-DeleteBucketLifecycleOutcomeCallable S3Client::DeleteBucketLifecycleCallable(const DeleteBucketLifecycleRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< DeleteBucketLifecycleOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DeleteBucketLifecycle(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::DeleteBucketLifecycleAsync(const DeleteBucketLifecycleRequest& request, const DeleteBucketLifecycleResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->DeleteBucketLifecycleAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::DeleteBucketLifecycleAsyncHelper(const DeleteBucketLifecycleRequest& request, const DeleteBucketLifecycleResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, DeleteBucketLifecycle(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return DeleteBucketLifecycleOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_DELETE));
}
DeleteBucketMetricsConfigurationOutcome S3Client::DeleteBucketMetricsConfiguration(const DeleteBucketMetricsConfigurationRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, DeleteBucketMetricsConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("DeleteBucketMetricsConfiguration", "Required field: Bucket, is not set");
@@ -713,223 +509,97 @@ DeleteBucketMetricsConfigurationOutcome S3Client::DeleteBucketMetricsConfigurati
AWS_LOGSTREAM_ERROR("DeleteBucketMetricsConfiguration", "Required field: Id, is not set");
return DeleteBucketMetricsConfigurationOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Id]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return DeleteBucketMetricsConfigurationOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, DeleteBucketMetricsConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?metrics");
- uri.SetQueryString(ss.str());
- return DeleteBucketMetricsConfigurationOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_DELETE, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-DeleteBucketMetricsConfigurationOutcomeCallable S3Client::DeleteBucketMetricsConfigurationCallable(const DeleteBucketMetricsConfigurationRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< DeleteBucketMetricsConfigurationOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DeleteBucketMetricsConfiguration(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::DeleteBucketMetricsConfigurationAsync(const DeleteBucketMetricsConfigurationRequest& request, const DeleteBucketMetricsConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->DeleteBucketMetricsConfigurationAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::DeleteBucketMetricsConfigurationAsyncHelper(const DeleteBucketMetricsConfigurationRequest& request, const DeleteBucketMetricsConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, DeleteBucketMetricsConfiguration(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return DeleteBucketMetricsConfigurationOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_DELETE));
}
DeleteBucketOwnershipControlsOutcome S3Client::DeleteBucketOwnershipControls(const DeleteBucketOwnershipControlsRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, DeleteBucketOwnershipControls, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("DeleteBucketOwnershipControls", "Required field: Bucket, is not set");
return DeleteBucketOwnershipControlsOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return DeleteBucketOwnershipControlsOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, DeleteBucketOwnershipControls, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?ownershipControls");
- uri.SetQueryString(ss.str());
- return DeleteBucketOwnershipControlsOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_DELETE, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-DeleteBucketOwnershipControlsOutcomeCallable S3Client::DeleteBucketOwnershipControlsCallable(const DeleteBucketOwnershipControlsRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< DeleteBucketOwnershipControlsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DeleteBucketOwnershipControls(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::DeleteBucketOwnershipControlsAsync(const DeleteBucketOwnershipControlsRequest& request, const DeleteBucketOwnershipControlsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->DeleteBucketOwnershipControlsAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::DeleteBucketOwnershipControlsAsyncHelper(const DeleteBucketOwnershipControlsRequest& request, const DeleteBucketOwnershipControlsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, DeleteBucketOwnershipControls(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return DeleteBucketOwnershipControlsOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_DELETE));
}
DeleteBucketPolicyOutcome S3Client::DeleteBucketPolicy(const DeleteBucketPolicyRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, DeleteBucketPolicy, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("DeleteBucketPolicy", "Required field: Bucket, is not set");
return DeleteBucketPolicyOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return DeleteBucketPolicyOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, DeleteBucketPolicy, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?policy");
- uri.SetQueryString(ss.str());
- return DeleteBucketPolicyOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_DELETE, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-DeleteBucketPolicyOutcomeCallable S3Client::DeleteBucketPolicyCallable(const DeleteBucketPolicyRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< DeleteBucketPolicyOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DeleteBucketPolicy(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::DeleteBucketPolicyAsync(const DeleteBucketPolicyRequest& request, const DeleteBucketPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->DeleteBucketPolicyAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::DeleteBucketPolicyAsyncHelper(const DeleteBucketPolicyRequest& request, const DeleteBucketPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, DeleteBucketPolicy(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return DeleteBucketPolicyOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_DELETE));
}
DeleteBucketReplicationOutcome S3Client::DeleteBucketReplication(const DeleteBucketReplicationRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, DeleteBucketReplication, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("DeleteBucketReplication", "Required field: Bucket, is not set");
return DeleteBucketReplicationOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return DeleteBucketReplicationOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, DeleteBucketReplication, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?replication");
- uri.SetQueryString(ss.str());
- return DeleteBucketReplicationOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_DELETE, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-DeleteBucketReplicationOutcomeCallable S3Client::DeleteBucketReplicationCallable(const DeleteBucketReplicationRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< DeleteBucketReplicationOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DeleteBucketReplication(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::DeleteBucketReplicationAsync(const DeleteBucketReplicationRequest& request, const DeleteBucketReplicationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->DeleteBucketReplicationAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::DeleteBucketReplicationAsyncHelper(const DeleteBucketReplicationRequest& request, const DeleteBucketReplicationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, DeleteBucketReplication(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return DeleteBucketReplicationOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_DELETE));
}
DeleteBucketTaggingOutcome S3Client::DeleteBucketTagging(const DeleteBucketTaggingRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, DeleteBucketTagging, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("DeleteBucketTagging", "Required field: Bucket, is not set");
return DeleteBucketTaggingOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return DeleteBucketTaggingOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, DeleteBucketTagging, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?tagging");
- uri.SetQueryString(ss.str());
- return DeleteBucketTaggingOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_DELETE, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-DeleteBucketTaggingOutcomeCallable S3Client::DeleteBucketTaggingCallable(const DeleteBucketTaggingRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< DeleteBucketTaggingOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DeleteBucketTagging(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::DeleteBucketTaggingAsync(const DeleteBucketTaggingRequest& request, const DeleteBucketTaggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->DeleteBucketTaggingAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::DeleteBucketTaggingAsyncHelper(const DeleteBucketTaggingRequest& request, const DeleteBucketTaggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, DeleteBucketTagging(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return DeleteBucketTaggingOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_DELETE));
}
DeleteBucketWebsiteOutcome S3Client::DeleteBucketWebsite(const DeleteBucketWebsiteRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, DeleteBucketWebsite, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("DeleteBucketWebsite", "Required field: Bucket, is not set");
return DeleteBucketWebsiteOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return DeleteBucketWebsiteOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, DeleteBucketWebsite, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?website");
- uri.SetQueryString(ss.str());
- return DeleteBucketWebsiteOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_DELETE, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-DeleteBucketWebsiteOutcomeCallable S3Client::DeleteBucketWebsiteCallable(const DeleteBucketWebsiteRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< DeleteBucketWebsiteOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DeleteBucketWebsite(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::DeleteBucketWebsiteAsync(const DeleteBucketWebsiteRequest& request, const DeleteBucketWebsiteResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->DeleteBucketWebsiteAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::DeleteBucketWebsiteAsyncHelper(const DeleteBucketWebsiteRequest& request, const DeleteBucketWebsiteResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, DeleteBucketWebsite(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return DeleteBucketWebsiteOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_DELETE));
}
DeleteObjectOutcome S3Client::DeleteObject(const DeleteObjectRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, DeleteObject, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("DeleteObject", "Required field: Bucket, is not set");
@@ -940,39 +610,15 @@ DeleteObjectOutcome S3Client::DeleteObject(const DeleteObjectRequest& request) c
AWS_LOGSTREAM_ERROR("DeleteObject", "Required field: Key, is not set");
return DeleteObjectOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Key]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return DeleteObjectOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
- Aws::StringStream ss;
- ss << "/";
- ss << request.GetKey();
- uri.SetPath(uri.GetPath() + ss.str());
- return DeleteObjectOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_DELETE, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-DeleteObjectOutcomeCallable S3Client::DeleteObjectCallable(const DeleteObjectRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< DeleteObjectOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DeleteObject(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::DeleteObjectAsync(const DeleteObjectRequest& request, const DeleteObjectResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->DeleteObjectAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::DeleteObjectAsyncHelper(const DeleteObjectRequest& request, const DeleteObjectResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, DeleteObject(request), context);
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, DeleteObject, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
+ endpointResolutionOutcome.GetResult().AddPathSegments(request.GetKey());
+ return DeleteObjectOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_DELETE));
}
DeleteObjectTaggingOutcome S3Client::DeleteObjectTagging(const DeleteObjectTaggingRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, DeleteObjectTagging, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("DeleteObjectTagging", "Required field: Bucket, is not set");
@@ -983,189 +629,82 @@ DeleteObjectTaggingOutcome S3Client::DeleteObjectTagging(const DeleteObjectTaggi
AWS_LOGSTREAM_ERROR("DeleteObjectTagging", "Required field: Key, is not set");
return DeleteObjectTaggingOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Key]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return DeleteObjectTaggingOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, DeleteObjectTagging, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
- ss << "/";
- ss << request.GetKey();
- uri.SetPath(uri.GetPath() + ss.str());
+ endpointResolutionOutcome.GetResult().AddPathSegments(request.GetKey());
ss.str("?tagging");
- uri.SetQueryString(ss.str());
- return DeleteObjectTaggingOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_DELETE, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-DeleteObjectTaggingOutcomeCallable S3Client::DeleteObjectTaggingCallable(const DeleteObjectTaggingRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< DeleteObjectTaggingOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DeleteObjectTagging(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::DeleteObjectTaggingAsync(const DeleteObjectTaggingRequest& request, const DeleteObjectTaggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->DeleteObjectTaggingAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::DeleteObjectTaggingAsyncHelper(const DeleteObjectTaggingRequest& request, const DeleteObjectTaggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, DeleteObjectTagging(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return DeleteObjectTaggingOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_DELETE));
}
DeleteObjectsOutcome S3Client::DeleteObjects(const DeleteObjectsRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, DeleteObjects, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("DeleteObjects", "Required field: Bucket, is not set");
return DeleteObjectsOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return DeleteObjectsOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, DeleteObjects, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?delete");
- uri.SetQueryString(ss.str());
- return DeleteObjectsOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-DeleteObjectsOutcomeCallable S3Client::DeleteObjectsCallable(const DeleteObjectsRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< DeleteObjectsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DeleteObjects(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::DeleteObjectsAsync(const DeleteObjectsRequest& request, const DeleteObjectsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->DeleteObjectsAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::DeleteObjectsAsyncHelper(const DeleteObjectsRequest& request, const DeleteObjectsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, DeleteObjects(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return DeleteObjectsOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_POST));
}
DeletePublicAccessBlockOutcome S3Client::DeletePublicAccessBlock(const DeletePublicAccessBlockRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, DeletePublicAccessBlock, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("DeletePublicAccessBlock", "Required field: Bucket, is not set");
return DeletePublicAccessBlockOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return DeletePublicAccessBlockOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, DeletePublicAccessBlock, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?publicAccessBlock");
- uri.SetQueryString(ss.str());
- return DeletePublicAccessBlockOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_DELETE, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-DeletePublicAccessBlockOutcomeCallable S3Client::DeletePublicAccessBlockCallable(const DeletePublicAccessBlockRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< DeletePublicAccessBlockOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DeletePublicAccessBlock(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::DeletePublicAccessBlockAsync(const DeletePublicAccessBlockRequest& request, const DeletePublicAccessBlockResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->DeletePublicAccessBlockAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::DeletePublicAccessBlockAsyncHelper(const DeletePublicAccessBlockRequest& request, const DeletePublicAccessBlockResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, DeletePublicAccessBlock(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return DeletePublicAccessBlockOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_DELETE));
}
GetBucketAccelerateConfigurationOutcome S3Client::GetBucketAccelerateConfiguration(const GetBucketAccelerateConfigurationRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, GetBucketAccelerateConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("GetBucketAccelerateConfiguration", "Required field: Bucket, is not set");
return GetBucketAccelerateConfigurationOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return GetBucketAccelerateConfigurationOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, GetBucketAccelerateConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?accelerate");
- uri.SetQueryString(ss.str());
- return GetBucketAccelerateConfigurationOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-GetBucketAccelerateConfigurationOutcomeCallable S3Client::GetBucketAccelerateConfigurationCallable(const GetBucketAccelerateConfigurationRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< GetBucketAccelerateConfigurationOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->GetBucketAccelerateConfiguration(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::GetBucketAccelerateConfigurationAsync(const GetBucketAccelerateConfigurationRequest& request, const GetBucketAccelerateConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->GetBucketAccelerateConfigurationAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::GetBucketAccelerateConfigurationAsyncHelper(const GetBucketAccelerateConfigurationRequest& request, const GetBucketAccelerateConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, GetBucketAccelerateConfiguration(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return GetBucketAccelerateConfigurationOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET));
}
GetBucketAclOutcome S3Client::GetBucketAcl(const GetBucketAclRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, GetBucketAcl, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("GetBucketAcl", "Required field: Bucket, is not set");
return GetBucketAclOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return GetBucketAclOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, GetBucketAcl, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?acl");
- uri.SetQueryString(ss.str());
- return GetBucketAclOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-GetBucketAclOutcomeCallable S3Client::GetBucketAclCallable(const GetBucketAclRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< GetBucketAclOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->GetBucketAcl(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::GetBucketAclAsync(const GetBucketAclRequest& request, const GetBucketAclResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->GetBucketAclAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::GetBucketAclAsyncHelper(const GetBucketAclRequest& request, const GetBucketAclResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, GetBucketAcl(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return GetBucketAclOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET));
}
GetBucketAnalyticsConfigurationOutcome S3Client::GetBucketAnalyticsConfiguration(const GetBucketAnalyticsConfigurationRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, GetBucketAnalyticsConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("GetBucketAnalyticsConfiguration", "Required field: Bucket, is not set");
@@ -1176,112 +715,49 @@ GetBucketAnalyticsConfigurationOutcome S3Client::GetBucketAnalyticsConfiguration
AWS_LOGSTREAM_ERROR("GetBucketAnalyticsConfiguration", "Required field: Id, is not set");
return GetBucketAnalyticsConfigurationOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Id]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return GetBucketAnalyticsConfigurationOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, GetBucketAnalyticsConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?analytics");
- uri.SetQueryString(ss.str());
- return GetBucketAnalyticsConfigurationOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-GetBucketAnalyticsConfigurationOutcomeCallable S3Client::GetBucketAnalyticsConfigurationCallable(const GetBucketAnalyticsConfigurationRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< GetBucketAnalyticsConfigurationOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->GetBucketAnalyticsConfiguration(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::GetBucketAnalyticsConfigurationAsync(const GetBucketAnalyticsConfigurationRequest& request, const GetBucketAnalyticsConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->GetBucketAnalyticsConfigurationAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::GetBucketAnalyticsConfigurationAsyncHelper(const GetBucketAnalyticsConfigurationRequest& request, const GetBucketAnalyticsConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, GetBucketAnalyticsConfiguration(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return GetBucketAnalyticsConfigurationOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET));
}
GetBucketCorsOutcome S3Client::GetBucketCors(const GetBucketCorsRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, GetBucketCors, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("GetBucketCors", "Required field: Bucket, is not set");
return GetBucketCorsOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return GetBucketCorsOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, GetBucketCors, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?cors");
- uri.SetQueryString(ss.str());
- return GetBucketCorsOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-GetBucketCorsOutcomeCallable S3Client::GetBucketCorsCallable(const GetBucketCorsRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< GetBucketCorsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->GetBucketCors(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::GetBucketCorsAsync(const GetBucketCorsRequest& request, const GetBucketCorsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->GetBucketCorsAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::GetBucketCorsAsyncHelper(const GetBucketCorsRequest& request, const GetBucketCorsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, GetBucketCors(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return GetBucketCorsOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET));
}
GetBucketEncryptionOutcome S3Client::GetBucketEncryption(const GetBucketEncryptionRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, GetBucketEncryption, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("GetBucketEncryption", "Required field: Bucket, is not set");
return GetBucketEncryptionOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return GetBucketEncryptionOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, GetBucketEncryption, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?encryption");
- uri.SetQueryString(ss.str());
- return GetBucketEncryptionOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-GetBucketEncryptionOutcomeCallable S3Client::GetBucketEncryptionCallable(const GetBucketEncryptionRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< GetBucketEncryptionOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->GetBucketEncryption(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::GetBucketEncryptionAsync(const GetBucketEncryptionRequest& request, const GetBucketEncryptionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->GetBucketEncryptionAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::GetBucketEncryptionAsyncHelper(const GetBucketEncryptionRequest& request, const GetBucketEncryptionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, GetBucketEncryption(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return GetBucketEncryptionOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET));
}
GetBucketIntelligentTieringConfigurationOutcome S3Client::GetBucketIntelligentTieringConfiguration(const GetBucketIntelligentTieringConfigurationRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, GetBucketIntelligentTieringConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("GetBucketIntelligentTieringConfiguration", "Required field: Bucket, is not set");
@@ -1292,38 +768,17 @@ GetBucketIntelligentTieringConfigurationOutcome S3Client::GetBucketIntelligentTi
AWS_LOGSTREAM_ERROR("GetBucketIntelligentTieringConfiguration", "Required field: Id, is not set");
return GetBucketIntelligentTieringConfigurationOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Id]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return GetBucketIntelligentTieringConfigurationOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, GetBucketIntelligentTieringConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?intelligent-tiering");
- uri.SetQueryString(ss.str());
- return GetBucketIntelligentTieringConfigurationOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-GetBucketIntelligentTieringConfigurationOutcomeCallable S3Client::GetBucketIntelligentTieringConfigurationCallable(const GetBucketIntelligentTieringConfigurationRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< GetBucketIntelligentTieringConfigurationOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->GetBucketIntelligentTieringConfiguration(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::GetBucketIntelligentTieringConfigurationAsync(const GetBucketIntelligentTieringConfigurationRequest& request, const GetBucketIntelligentTieringConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->GetBucketIntelligentTieringConfigurationAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::GetBucketIntelligentTieringConfigurationAsyncHelper(const GetBucketIntelligentTieringConfigurationRequest& request, const GetBucketIntelligentTieringConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, GetBucketIntelligentTieringConfiguration(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return GetBucketIntelligentTieringConfigurationOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET));
}
GetBucketInventoryConfigurationOutcome S3Client::GetBucketInventoryConfiguration(const GetBucketInventoryConfigurationRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, GetBucketInventoryConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("GetBucketInventoryConfiguration", "Required field: Bucket, is not set");
@@ -1334,149 +789,65 @@ GetBucketInventoryConfigurationOutcome S3Client::GetBucketInventoryConfiguration
AWS_LOGSTREAM_ERROR("GetBucketInventoryConfiguration", "Required field: Id, is not set");
return GetBucketInventoryConfigurationOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Id]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return GetBucketInventoryConfigurationOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, GetBucketInventoryConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?inventory");
- uri.SetQueryString(ss.str());
- return GetBucketInventoryConfigurationOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-GetBucketInventoryConfigurationOutcomeCallable S3Client::GetBucketInventoryConfigurationCallable(const GetBucketInventoryConfigurationRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< GetBucketInventoryConfigurationOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->GetBucketInventoryConfiguration(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::GetBucketInventoryConfigurationAsync(const GetBucketInventoryConfigurationRequest& request, const GetBucketInventoryConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->GetBucketInventoryConfigurationAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::GetBucketInventoryConfigurationAsyncHelper(const GetBucketInventoryConfigurationRequest& request, const GetBucketInventoryConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, GetBucketInventoryConfiguration(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return GetBucketInventoryConfigurationOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET));
}
GetBucketLifecycleConfigurationOutcome S3Client::GetBucketLifecycleConfiguration(const GetBucketLifecycleConfigurationRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, GetBucketLifecycleConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("GetBucketLifecycleConfiguration", "Required field: Bucket, is not set");
return GetBucketLifecycleConfigurationOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return GetBucketLifecycleConfigurationOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, GetBucketLifecycleConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?lifecycle");
- uri.SetQueryString(ss.str());
- return GetBucketLifecycleConfigurationOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-GetBucketLifecycleConfigurationOutcomeCallable S3Client::GetBucketLifecycleConfigurationCallable(const GetBucketLifecycleConfigurationRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< GetBucketLifecycleConfigurationOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->GetBucketLifecycleConfiguration(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::GetBucketLifecycleConfigurationAsync(const GetBucketLifecycleConfigurationRequest& request, const GetBucketLifecycleConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->GetBucketLifecycleConfigurationAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::GetBucketLifecycleConfigurationAsyncHelper(const GetBucketLifecycleConfigurationRequest& request, const GetBucketLifecycleConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, GetBucketLifecycleConfiguration(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return GetBucketLifecycleConfigurationOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET));
}
GetBucketLocationOutcome S3Client::GetBucketLocation(const GetBucketLocationRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, GetBucketLocation, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("GetBucketLocation", "Required field: Bucket, is not set");
return GetBucketLocationOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return GetBucketLocationOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, GetBucketLocation, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?location");
- uri.SetQueryString(ss.str());
- return GetBucketLocationOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-GetBucketLocationOutcomeCallable S3Client::GetBucketLocationCallable(const GetBucketLocationRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< GetBucketLocationOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->GetBucketLocation(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::GetBucketLocationAsync(const GetBucketLocationRequest& request, const GetBucketLocationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->GetBucketLocationAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::GetBucketLocationAsyncHelper(const GetBucketLocationRequest& request, const GetBucketLocationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, GetBucketLocation(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return GetBucketLocationOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET));
}
GetBucketLoggingOutcome S3Client::GetBucketLogging(const GetBucketLoggingRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, GetBucketLogging, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("GetBucketLogging", "Required field: Bucket, is not set");
return GetBucketLoggingOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return GetBucketLoggingOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, GetBucketLogging, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?logging");
- uri.SetQueryString(ss.str());
- return GetBucketLoggingOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-GetBucketLoggingOutcomeCallable S3Client::GetBucketLoggingCallable(const GetBucketLoggingRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< GetBucketLoggingOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->GetBucketLogging(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::GetBucketLoggingAsync(const GetBucketLoggingRequest& request, const GetBucketLoggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->GetBucketLoggingAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::GetBucketLoggingAsyncHelper(const GetBucketLoggingRequest& request, const GetBucketLoggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, GetBucketLogging(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return GetBucketLoggingOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET));
}
GetBucketMetricsConfigurationOutcome S3Client::GetBucketMetricsConfiguration(const GetBucketMetricsConfigurationRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, GetBucketMetricsConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("GetBucketMetricsConfiguration", "Required field: Bucket, is not set");
@@ -1487,371 +858,161 @@ GetBucketMetricsConfigurationOutcome S3Client::GetBucketMetricsConfiguration(con
AWS_LOGSTREAM_ERROR("GetBucketMetricsConfiguration", "Required field: Id, is not set");
return GetBucketMetricsConfigurationOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Id]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return GetBucketMetricsConfigurationOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, GetBucketMetricsConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?metrics");
- uri.SetQueryString(ss.str());
- return GetBucketMetricsConfigurationOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-GetBucketMetricsConfigurationOutcomeCallable S3Client::GetBucketMetricsConfigurationCallable(const GetBucketMetricsConfigurationRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< GetBucketMetricsConfigurationOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->GetBucketMetricsConfiguration(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::GetBucketMetricsConfigurationAsync(const GetBucketMetricsConfigurationRequest& request, const GetBucketMetricsConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->GetBucketMetricsConfigurationAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::GetBucketMetricsConfigurationAsyncHelper(const GetBucketMetricsConfigurationRequest& request, const GetBucketMetricsConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, GetBucketMetricsConfiguration(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return GetBucketMetricsConfigurationOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET));
}
GetBucketNotificationConfigurationOutcome S3Client::GetBucketNotificationConfiguration(const GetBucketNotificationConfigurationRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, GetBucketNotificationConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("GetBucketNotificationConfiguration", "Required field: Bucket, is not set");
return GetBucketNotificationConfigurationOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return GetBucketNotificationConfigurationOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, GetBucketNotificationConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?notification");
- uri.SetQueryString(ss.str());
- return GetBucketNotificationConfigurationOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-GetBucketNotificationConfigurationOutcomeCallable S3Client::GetBucketNotificationConfigurationCallable(const GetBucketNotificationConfigurationRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< GetBucketNotificationConfigurationOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->GetBucketNotificationConfiguration(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::GetBucketNotificationConfigurationAsync(const GetBucketNotificationConfigurationRequest& request, const GetBucketNotificationConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->GetBucketNotificationConfigurationAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::GetBucketNotificationConfigurationAsyncHelper(const GetBucketNotificationConfigurationRequest& request, const GetBucketNotificationConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, GetBucketNotificationConfiguration(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return GetBucketNotificationConfigurationOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET));
}
GetBucketOwnershipControlsOutcome S3Client::GetBucketOwnershipControls(const GetBucketOwnershipControlsRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, GetBucketOwnershipControls, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("GetBucketOwnershipControls", "Required field: Bucket, is not set");
return GetBucketOwnershipControlsOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return GetBucketOwnershipControlsOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, GetBucketOwnershipControls, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?ownershipControls");
- uri.SetQueryString(ss.str());
- return GetBucketOwnershipControlsOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-GetBucketOwnershipControlsOutcomeCallable S3Client::GetBucketOwnershipControlsCallable(const GetBucketOwnershipControlsRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< GetBucketOwnershipControlsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->GetBucketOwnershipControls(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::GetBucketOwnershipControlsAsync(const GetBucketOwnershipControlsRequest& request, const GetBucketOwnershipControlsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->GetBucketOwnershipControlsAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::GetBucketOwnershipControlsAsyncHelper(const GetBucketOwnershipControlsRequest& request, const GetBucketOwnershipControlsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, GetBucketOwnershipControls(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return GetBucketOwnershipControlsOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET));
}
GetBucketPolicyOutcome S3Client::GetBucketPolicy(const GetBucketPolicyRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, GetBucketPolicy, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("GetBucketPolicy", "Required field: Bucket, is not set");
return GetBucketPolicyOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return GetBucketPolicyOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, GetBucketPolicy, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?policy");
- uri.SetQueryString(ss.str());
- return GetBucketPolicyOutcome(MakeRequestWithUnparsedResponse(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-GetBucketPolicyOutcomeCallable S3Client::GetBucketPolicyCallable(const GetBucketPolicyRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< GetBucketPolicyOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->GetBucketPolicy(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::GetBucketPolicyAsync(const GetBucketPolicyRequest& request, const GetBucketPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->GetBucketPolicyAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::GetBucketPolicyAsyncHelper(const GetBucketPolicyRequest& request, const GetBucketPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, GetBucketPolicy(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return GetBucketPolicyOutcome(MakeRequestWithUnparsedResponse(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET));
}
GetBucketPolicyStatusOutcome S3Client::GetBucketPolicyStatus(const GetBucketPolicyStatusRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, GetBucketPolicyStatus, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("GetBucketPolicyStatus", "Required field: Bucket, is not set");
return GetBucketPolicyStatusOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return GetBucketPolicyStatusOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, GetBucketPolicyStatus, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?policyStatus");
- uri.SetQueryString(ss.str());
- return GetBucketPolicyStatusOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-GetBucketPolicyStatusOutcomeCallable S3Client::GetBucketPolicyStatusCallable(const GetBucketPolicyStatusRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< GetBucketPolicyStatusOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->GetBucketPolicyStatus(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::GetBucketPolicyStatusAsync(const GetBucketPolicyStatusRequest& request, const GetBucketPolicyStatusResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->GetBucketPolicyStatusAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::GetBucketPolicyStatusAsyncHelper(const GetBucketPolicyStatusRequest& request, const GetBucketPolicyStatusResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, GetBucketPolicyStatus(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return GetBucketPolicyStatusOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET));
}
GetBucketReplicationOutcome S3Client::GetBucketReplication(const GetBucketReplicationRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, GetBucketReplication, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("GetBucketReplication", "Required field: Bucket, is not set");
return GetBucketReplicationOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return GetBucketReplicationOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, GetBucketReplication, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?replication");
- uri.SetQueryString(ss.str());
- return GetBucketReplicationOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-GetBucketReplicationOutcomeCallable S3Client::GetBucketReplicationCallable(const GetBucketReplicationRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< GetBucketReplicationOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->GetBucketReplication(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::GetBucketReplicationAsync(const GetBucketReplicationRequest& request, const GetBucketReplicationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->GetBucketReplicationAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::GetBucketReplicationAsyncHelper(const GetBucketReplicationRequest& request, const GetBucketReplicationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, GetBucketReplication(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return GetBucketReplicationOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET));
}
GetBucketRequestPaymentOutcome S3Client::GetBucketRequestPayment(const GetBucketRequestPaymentRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, GetBucketRequestPayment, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("GetBucketRequestPayment", "Required field: Bucket, is not set");
return GetBucketRequestPaymentOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return GetBucketRequestPaymentOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, GetBucketRequestPayment, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?requestPayment");
- uri.SetQueryString(ss.str());
- return GetBucketRequestPaymentOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-GetBucketRequestPaymentOutcomeCallable S3Client::GetBucketRequestPaymentCallable(const GetBucketRequestPaymentRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< GetBucketRequestPaymentOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->GetBucketRequestPayment(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::GetBucketRequestPaymentAsync(const GetBucketRequestPaymentRequest& request, const GetBucketRequestPaymentResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->GetBucketRequestPaymentAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::GetBucketRequestPaymentAsyncHelper(const GetBucketRequestPaymentRequest& request, const GetBucketRequestPaymentResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, GetBucketRequestPayment(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return GetBucketRequestPaymentOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET));
}
GetBucketTaggingOutcome S3Client::GetBucketTagging(const GetBucketTaggingRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, GetBucketTagging, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("GetBucketTagging", "Required field: Bucket, is not set");
return GetBucketTaggingOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return GetBucketTaggingOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, GetBucketTagging, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?tagging");
- uri.SetQueryString(ss.str());
- return GetBucketTaggingOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-GetBucketTaggingOutcomeCallable S3Client::GetBucketTaggingCallable(const GetBucketTaggingRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< GetBucketTaggingOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->GetBucketTagging(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::GetBucketTaggingAsync(const GetBucketTaggingRequest& request, const GetBucketTaggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->GetBucketTaggingAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::GetBucketTaggingAsyncHelper(const GetBucketTaggingRequest& request, const GetBucketTaggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, GetBucketTagging(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return GetBucketTaggingOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET));
}
GetBucketVersioningOutcome S3Client::GetBucketVersioning(const GetBucketVersioningRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, GetBucketVersioning, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("GetBucketVersioning", "Required field: Bucket, is not set");
return GetBucketVersioningOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return GetBucketVersioningOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, GetBucketVersioning, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?versioning");
- uri.SetQueryString(ss.str());
- return GetBucketVersioningOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-GetBucketVersioningOutcomeCallable S3Client::GetBucketVersioningCallable(const GetBucketVersioningRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< GetBucketVersioningOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->GetBucketVersioning(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::GetBucketVersioningAsync(const GetBucketVersioningRequest& request, const GetBucketVersioningResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->GetBucketVersioningAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::GetBucketVersioningAsyncHelper(const GetBucketVersioningRequest& request, const GetBucketVersioningResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, GetBucketVersioning(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return GetBucketVersioningOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET));
}
GetBucketWebsiteOutcome S3Client::GetBucketWebsite(const GetBucketWebsiteRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, GetBucketWebsite, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("GetBucketWebsite", "Required field: Bucket, is not set");
return GetBucketWebsiteOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return GetBucketWebsiteOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, GetBucketWebsite, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?website");
- uri.SetQueryString(ss.str());
- return GetBucketWebsiteOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-GetBucketWebsiteOutcomeCallable S3Client::GetBucketWebsiteCallable(const GetBucketWebsiteRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< GetBucketWebsiteOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->GetBucketWebsite(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::GetBucketWebsiteAsync(const GetBucketWebsiteRequest& request, const GetBucketWebsiteResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->GetBucketWebsiteAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::GetBucketWebsiteAsyncHelper(const GetBucketWebsiteRequest& request, const GetBucketWebsiteResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, GetBucketWebsite(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return GetBucketWebsiteOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET));
}
GetObjectOutcome S3Client::GetObject(const GetObjectRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, GetObject, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("GetObject", "Required field: Bucket, is not set");
@@ -1862,17 +1023,10 @@ GetObjectOutcome S3Client::GetObject(const GetObjectRequest& request) const
AWS_LOGSTREAM_ERROR("GetObject", "Required field: Key, is not set");
return GetObjectOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Key]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return GetObjectOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
- Aws::StringStream ss;
- ss << "/";
- ss << request.GetKey();
- uri.SetPath(uri.GetPath() + ss.str());
- return GetObjectOutcome(MakeRequestWithUnparsedResponse(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, GetObject, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
+ endpointResolutionOutcome.GetResult().AddPathSegments(request.GetKey());
+ return GetObjectOutcome(MakeRequestWithUnparsedResponse(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET));
}
GetObjectOutcomeCallable S3Client::GetObjectCallable(const GetObjectRequest& request) const
@@ -1885,16 +1039,15 @@ GetObjectOutcomeCallable S3Client::GetObjectCallable(const GetObjectRequest& req
void S3Client::GetObjectAsync(const GetObjectRequest& request, const GetObjectResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
{
- m_executor->Submit( [this, request, handler, context](){ this->GetObjectAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::GetObjectAsyncHelper(const GetObjectRequest& request, const GetObjectResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, GetObject(request), context);
+ m_executor->Submit( [this, request, handler, context]()
+ {
+ handler(this, request, GetObject(request), context);
+ } );
}
GetObjectAclOutcome S3Client::GetObjectAcl(const GetObjectAclRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, GetObjectAcl, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("GetObjectAcl", "Required field: Bucket, is not set");
@@ -1905,41 +1058,45 @@ GetObjectAclOutcome S3Client::GetObjectAcl(const GetObjectAclRequest& request) c
AWS_LOGSTREAM_ERROR("GetObjectAcl", "Required field: Key, is not set");
return GetObjectAclOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Key]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return GetObjectAclOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, GetObjectAcl, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
- ss << "/";
- ss << request.GetKey();
- uri.SetPath(uri.GetPath() + ss.str());
+ endpointResolutionOutcome.GetResult().AddPathSegments(request.GetKey());
ss.str("?acl");
- uri.SetQueryString(ss.str());
- return GetObjectAclOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-GetObjectAclOutcomeCallable S3Client::GetObjectAclCallable(const GetObjectAclRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< GetObjectAclOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->GetObjectAcl(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::GetObjectAclAsync(const GetObjectAclRequest& request, const GetObjectAclResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->GetObjectAclAsyncHelper( request, handler, context ); } );
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return GetObjectAclOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET));
}
-void S3Client::GetObjectAclAsyncHelper(const GetObjectAclRequest& request, const GetObjectAclResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
+GetObjectAttributesOutcome S3Client::GetObjectAttributes(const GetObjectAttributesRequest& request) const
{
- handler(this, request, GetObjectAcl(request), context);
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, GetObjectAttributes, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
+ if (!request.BucketHasBeenSet())
+ {
+ AWS_LOGSTREAM_ERROR("GetObjectAttributes", "Required field: Bucket, is not set");
+ return GetObjectAttributesOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
+ }
+ if (!request.KeyHasBeenSet())
+ {
+ AWS_LOGSTREAM_ERROR("GetObjectAttributes", "Required field: Key, is not set");
+ return GetObjectAttributesOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Key]", false));
+ }
+ if (!request.ObjectAttributesHasBeenSet())
+ {
+ AWS_LOGSTREAM_ERROR("GetObjectAttributes", "Required field: ObjectAttributes, is not set");
+ return GetObjectAttributesOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [ObjectAttributes]", false));
+ }
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, GetObjectAttributes, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
+ Aws::StringStream ss;
+ endpointResolutionOutcome.GetResult().AddPathSegments(request.GetKey());
+ ss.str("?attributes");
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return GetObjectAttributesOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET));
}
GetObjectLegalHoldOutcome S3Client::GetObjectLegalHold(const GetObjectLegalHoldRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, GetObjectLegalHold, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("GetObjectLegalHold", "Required field: Bucket, is not set");
@@ -1950,78 +1107,34 @@ GetObjectLegalHoldOutcome S3Client::GetObjectLegalHold(const GetObjectLegalHoldR
AWS_LOGSTREAM_ERROR("GetObjectLegalHold", "Required field: Key, is not set");
return GetObjectLegalHoldOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Key]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return GetObjectLegalHoldOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, GetObjectLegalHold, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
- ss << "/";
- ss << request.GetKey();
- uri.SetPath(uri.GetPath() + ss.str());
+ endpointResolutionOutcome.GetResult().AddPathSegments(request.GetKey());
ss.str("?legal-hold");
- uri.SetQueryString(ss.str());
- return GetObjectLegalHoldOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-GetObjectLegalHoldOutcomeCallable S3Client::GetObjectLegalHoldCallable(const GetObjectLegalHoldRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< GetObjectLegalHoldOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->GetObjectLegalHold(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::GetObjectLegalHoldAsync(const GetObjectLegalHoldRequest& request, const GetObjectLegalHoldResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->GetObjectLegalHoldAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::GetObjectLegalHoldAsyncHelper(const GetObjectLegalHoldRequest& request, const GetObjectLegalHoldResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, GetObjectLegalHold(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return GetObjectLegalHoldOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET));
}
GetObjectLockConfigurationOutcome S3Client::GetObjectLockConfiguration(const GetObjectLockConfigurationRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, GetObjectLockConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("GetObjectLockConfiguration", "Required field: Bucket, is not set");
return GetObjectLockConfigurationOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return GetObjectLockConfigurationOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, GetObjectLockConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?object-lock");
- uri.SetQueryString(ss.str());
- return GetObjectLockConfigurationOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-GetObjectLockConfigurationOutcomeCallable S3Client::GetObjectLockConfigurationCallable(const GetObjectLockConfigurationRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< GetObjectLockConfigurationOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->GetObjectLockConfiguration(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::GetObjectLockConfigurationAsync(const GetObjectLockConfigurationRequest& request, const GetObjectLockConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->GetObjectLockConfigurationAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::GetObjectLockConfigurationAsyncHelper(const GetObjectLockConfigurationRequest& request, const GetObjectLockConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, GetObjectLockConfiguration(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return GetObjectLockConfigurationOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET));
}
GetObjectRetentionOutcome S3Client::GetObjectRetention(const GetObjectRetentionRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, GetObjectRetention, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("GetObjectRetention", "Required field: Bucket, is not set");
@@ -2032,41 +1145,18 @@ GetObjectRetentionOutcome S3Client::GetObjectRetention(const GetObjectRetentionR
AWS_LOGSTREAM_ERROR("GetObjectRetention", "Required field: Key, is not set");
return GetObjectRetentionOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Key]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return GetObjectRetentionOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, GetObjectRetention, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
- ss << "/";
- ss << request.GetKey();
- uri.SetPath(uri.GetPath() + ss.str());
+ endpointResolutionOutcome.GetResult().AddPathSegments(request.GetKey());
ss.str("?retention");
- uri.SetQueryString(ss.str());
- return GetObjectRetentionOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-GetObjectRetentionOutcomeCallable S3Client::GetObjectRetentionCallable(const GetObjectRetentionRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< GetObjectRetentionOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->GetObjectRetention(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::GetObjectRetentionAsync(const GetObjectRetentionRequest& request, const GetObjectRetentionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->GetObjectRetentionAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::GetObjectRetentionAsyncHelper(const GetObjectRetentionRequest& request, const GetObjectRetentionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, GetObjectRetention(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return GetObjectRetentionOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET));
}
GetObjectTaggingOutcome S3Client::GetObjectTagging(const GetObjectTaggingRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, GetObjectTagging, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("GetObjectTagging", "Required field: Bucket, is not set");
@@ -2077,41 +1167,18 @@ GetObjectTaggingOutcome S3Client::GetObjectTagging(const GetObjectTaggingRequest
AWS_LOGSTREAM_ERROR("GetObjectTagging", "Required field: Key, is not set");
return GetObjectTaggingOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Key]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return GetObjectTaggingOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, GetObjectTagging, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
- ss << "/";
- ss << request.GetKey();
- uri.SetPath(uri.GetPath() + ss.str());
+ endpointResolutionOutcome.GetResult().AddPathSegments(request.GetKey());
ss.str("?tagging");
- uri.SetQueryString(ss.str());
- return GetObjectTaggingOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-GetObjectTaggingOutcomeCallable S3Client::GetObjectTaggingCallable(const GetObjectTaggingRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< GetObjectTaggingOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->GetObjectTagging(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::GetObjectTaggingAsync(const GetObjectTaggingRequest& request, const GetObjectTaggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->GetObjectTaggingAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::GetObjectTaggingAsyncHelper(const GetObjectTaggingRequest& request, const GetObjectTaggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, GetObjectTagging(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return GetObjectTaggingOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET));
}
GetObjectTorrentOutcome S3Client::GetObjectTorrent(const GetObjectTorrentRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, GetObjectTorrent, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("GetObjectTorrent", "Required field: Bucket, is not set");
@@ -2122,114 +1189,47 @@ GetObjectTorrentOutcome S3Client::GetObjectTorrent(const GetObjectTorrentRequest
AWS_LOGSTREAM_ERROR("GetObjectTorrent", "Required field: Key, is not set");
return GetObjectTorrentOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Key]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return GetObjectTorrentOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, GetObjectTorrent, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
- ss << "/";
- ss << request.GetKey();
- uri.SetPath(uri.GetPath() + ss.str());
+ endpointResolutionOutcome.GetResult().AddPathSegments(request.GetKey());
ss.str("?torrent");
- uri.SetQueryString(ss.str());
- return GetObjectTorrentOutcome(MakeRequestWithUnparsedResponse(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-GetObjectTorrentOutcomeCallable S3Client::GetObjectTorrentCallable(const GetObjectTorrentRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< GetObjectTorrentOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->GetObjectTorrent(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::GetObjectTorrentAsync(const GetObjectTorrentRequest& request, const GetObjectTorrentResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->GetObjectTorrentAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::GetObjectTorrentAsyncHelper(const GetObjectTorrentRequest& request, const GetObjectTorrentResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, GetObjectTorrent(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return GetObjectTorrentOutcome(MakeRequestWithUnparsedResponse(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET));
}
GetPublicAccessBlockOutcome S3Client::GetPublicAccessBlock(const GetPublicAccessBlockRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, GetPublicAccessBlock, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("GetPublicAccessBlock", "Required field: Bucket, is not set");
return GetPublicAccessBlockOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return GetPublicAccessBlockOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, GetPublicAccessBlock, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?publicAccessBlock");
- uri.SetQueryString(ss.str());
- return GetPublicAccessBlockOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-GetPublicAccessBlockOutcomeCallable S3Client::GetPublicAccessBlockCallable(const GetPublicAccessBlockRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< GetPublicAccessBlockOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->GetPublicAccessBlock(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::GetPublicAccessBlockAsync(const GetPublicAccessBlockRequest& request, const GetPublicAccessBlockResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->GetPublicAccessBlockAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::GetPublicAccessBlockAsyncHelper(const GetPublicAccessBlockRequest& request, const GetPublicAccessBlockResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, GetPublicAccessBlock(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return GetPublicAccessBlockOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET));
}
HeadBucketOutcome S3Client::HeadBucket(const HeadBucketRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, HeadBucket, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("HeadBucket", "Required field: Bucket, is not set");
return HeadBucketOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return HeadBucketOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
- Aws::StringStream ss;
- uri.SetPath(uri.GetPath() + ss.str());
- return HeadBucketOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_HEAD, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-HeadBucketOutcomeCallable S3Client::HeadBucketCallable(const HeadBucketRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< HeadBucketOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->HeadBucket(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::HeadBucketAsync(const HeadBucketRequest& request, const HeadBucketResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->HeadBucketAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::HeadBucketAsyncHelper(const HeadBucketRequest& request, const HeadBucketResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, HeadBucket(request), context);
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, HeadBucket, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
+ return HeadBucketOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_HEAD));
}
HeadObjectOutcome S3Client::HeadObject(const HeadObjectRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, HeadObject, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("HeadObject", "Required field: Bucket, is not set");
@@ -2240,364 +1240,149 @@ HeadObjectOutcome S3Client::HeadObject(const HeadObjectRequest& request) const
AWS_LOGSTREAM_ERROR("HeadObject", "Required field: Key, is not set");
return HeadObjectOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Key]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return HeadObjectOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
- Aws::StringStream ss;
- ss << "/";
- ss << request.GetKey();
- uri.SetPath(uri.GetPath() + ss.str());
- return HeadObjectOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_HEAD, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-HeadObjectOutcomeCallable S3Client::HeadObjectCallable(const HeadObjectRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< HeadObjectOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->HeadObject(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::HeadObjectAsync(const HeadObjectRequest& request, const HeadObjectResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->HeadObjectAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::HeadObjectAsyncHelper(const HeadObjectRequest& request, const HeadObjectResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, HeadObject(request), context);
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, HeadObject, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
+ endpointResolutionOutcome.GetResult().AddPathSegments(request.GetKey());
+ return HeadObjectOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_HEAD));
}
ListBucketAnalyticsConfigurationsOutcome S3Client::ListBucketAnalyticsConfigurations(const ListBucketAnalyticsConfigurationsRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, ListBucketAnalyticsConfigurations, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("ListBucketAnalyticsConfigurations", "Required field: Bucket, is not set");
return ListBucketAnalyticsConfigurationsOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return ListBucketAnalyticsConfigurationsOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, ListBucketAnalyticsConfigurations, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?analytics");
- uri.SetQueryString(ss.str());
- return ListBucketAnalyticsConfigurationsOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-ListBucketAnalyticsConfigurationsOutcomeCallable S3Client::ListBucketAnalyticsConfigurationsCallable(const ListBucketAnalyticsConfigurationsRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< ListBucketAnalyticsConfigurationsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListBucketAnalyticsConfigurations(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::ListBucketAnalyticsConfigurationsAsync(const ListBucketAnalyticsConfigurationsRequest& request, const ListBucketAnalyticsConfigurationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->ListBucketAnalyticsConfigurationsAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::ListBucketAnalyticsConfigurationsAsyncHelper(const ListBucketAnalyticsConfigurationsRequest& request, const ListBucketAnalyticsConfigurationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, ListBucketAnalyticsConfigurations(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return ListBucketAnalyticsConfigurationsOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET));
}
ListBucketIntelligentTieringConfigurationsOutcome S3Client::ListBucketIntelligentTieringConfigurations(const ListBucketIntelligentTieringConfigurationsRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, ListBucketIntelligentTieringConfigurations, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("ListBucketIntelligentTieringConfigurations", "Required field: Bucket, is not set");
return ListBucketIntelligentTieringConfigurationsOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return ListBucketIntelligentTieringConfigurationsOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, ListBucketIntelligentTieringConfigurations, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?intelligent-tiering");
- uri.SetQueryString(ss.str());
- return ListBucketIntelligentTieringConfigurationsOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-ListBucketIntelligentTieringConfigurationsOutcomeCallable S3Client::ListBucketIntelligentTieringConfigurationsCallable(const ListBucketIntelligentTieringConfigurationsRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< ListBucketIntelligentTieringConfigurationsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListBucketIntelligentTieringConfigurations(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::ListBucketIntelligentTieringConfigurationsAsync(const ListBucketIntelligentTieringConfigurationsRequest& request, const ListBucketIntelligentTieringConfigurationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->ListBucketIntelligentTieringConfigurationsAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::ListBucketIntelligentTieringConfigurationsAsyncHelper(const ListBucketIntelligentTieringConfigurationsRequest& request, const ListBucketIntelligentTieringConfigurationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, ListBucketIntelligentTieringConfigurations(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return ListBucketIntelligentTieringConfigurationsOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET));
}
ListBucketInventoryConfigurationsOutcome S3Client::ListBucketInventoryConfigurations(const ListBucketInventoryConfigurationsRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, ListBucketInventoryConfigurations, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("ListBucketInventoryConfigurations", "Required field: Bucket, is not set");
return ListBucketInventoryConfigurationsOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return ListBucketInventoryConfigurationsOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, ListBucketInventoryConfigurations, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?inventory");
- uri.SetQueryString(ss.str());
- return ListBucketInventoryConfigurationsOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-ListBucketInventoryConfigurationsOutcomeCallable S3Client::ListBucketInventoryConfigurationsCallable(const ListBucketInventoryConfigurationsRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< ListBucketInventoryConfigurationsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListBucketInventoryConfigurations(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::ListBucketInventoryConfigurationsAsync(const ListBucketInventoryConfigurationsRequest& request, const ListBucketInventoryConfigurationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->ListBucketInventoryConfigurationsAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::ListBucketInventoryConfigurationsAsyncHelper(const ListBucketInventoryConfigurationsRequest& request, const ListBucketInventoryConfigurationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, ListBucketInventoryConfigurations(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return ListBucketInventoryConfigurationsOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET));
}
ListBucketMetricsConfigurationsOutcome S3Client::ListBucketMetricsConfigurations(const ListBucketMetricsConfigurationsRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, ListBucketMetricsConfigurations, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("ListBucketMetricsConfigurations", "Required field: Bucket, is not set");
return ListBucketMetricsConfigurationsOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return ListBucketMetricsConfigurationsOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, ListBucketMetricsConfigurations, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?metrics");
- uri.SetQueryString(ss.str());
- return ListBucketMetricsConfigurationsOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-ListBucketMetricsConfigurationsOutcomeCallable S3Client::ListBucketMetricsConfigurationsCallable(const ListBucketMetricsConfigurationsRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< ListBucketMetricsConfigurationsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListBucketMetricsConfigurations(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::ListBucketMetricsConfigurationsAsync(const ListBucketMetricsConfigurationsRequest& request, const ListBucketMetricsConfigurationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->ListBucketMetricsConfigurationsAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::ListBucketMetricsConfigurationsAsyncHelper(const ListBucketMetricsConfigurationsRequest& request, const ListBucketMetricsConfigurationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, ListBucketMetricsConfigurations(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return ListBucketMetricsConfigurationsOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET));
}
ListBucketsOutcome S3Client::ListBuckets() const
{
- Aws::StringStream ss;
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString();
- if (!computeEndpointOutcome.IsSuccess())
- {
- return ListBucketsOutcome(computeEndpointOutcome.GetError());
- }
- ss << computeEndpointOutcome.GetResult().endpoint;
- return ListBucketsOutcome(MakeRequest(ss.str(), Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER, "ListBuckets", computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-ListBucketsOutcomeCallable S3Client::ListBucketsCallable() const
-{
- auto task = Aws::MakeShared< std::packaged_task< ListBucketsOutcome() > >(ALLOCATION_TAG, [this](){ return this->ListBuckets(); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::ListBucketsAsync(const ListBucketsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, handler, context](){ this->ListBucketsAsyncHelper( handler, context ); } );
-}
-
-void S3Client::ListBucketsAsyncHelper(const ListBucketsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, ListBuckets(), context);
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, ListBuckets, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
+ const Aws::Vector<Aws::Endpoint::EndpointParameter> staticEndpointParameters;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(staticEndpointParameters);
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, ListBuckets, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
+ return ListBucketsOutcome(MakeRequest(endpointResolutionOutcome.GetResult(), "ListBuckets", Aws::Http::HttpMethod::HTTP_GET));
}
ListMultipartUploadsOutcome S3Client::ListMultipartUploads(const ListMultipartUploadsRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, ListMultipartUploads, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("ListMultipartUploads", "Required field: Bucket, is not set");
return ListMultipartUploadsOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return ListMultipartUploadsOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, ListMultipartUploads, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?uploads");
- uri.SetQueryString(ss.str());
- return ListMultipartUploadsOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-ListMultipartUploadsOutcomeCallable S3Client::ListMultipartUploadsCallable(const ListMultipartUploadsRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< ListMultipartUploadsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListMultipartUploads(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::ListMultipartUploadsAsync(const ListMultipartUploadsRequest& request, const ListMultipartUploadsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->ListMultipartUploadsAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::ListMultipartUploadsAsyncHelper(const ListMultipartUploadsRequest& request, const ListMultipartUploadsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, ListMultipartUploads(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return ListMultipartUploadsOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET));
}
ListObjectVersionsOutcome S3Client::ListObjectVersions(const ListObjectVersionsRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, ListObjectVersions, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("ListObjectVersions", "Required field: Bucket, is not set");
return ListObjectVersionsOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return ListObjectVersionsOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, ListObjectVersions, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?versions");
- uri.SetQueryString(ss.str());
- return ListObjectVersionsOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-ListObjectVersionsOutcomeCallable S3Client::ListObjectVersionsCallable(const ListObjectVersionsRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< ListObjectVersionsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListObjectVersions(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::ListObjectVersionsAsync(const ListObjectVersionsRequest& request, const ListObjectVersionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->ListObjectVersionsAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::ListObjectVersionsAsyncHelper(const ListObjectVersionsRequest& request, const ListObjectVersionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, ListObjectVersions(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return ListObjectVersionsOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET));
}
ListObjectsOutcome S3Client::ListObjects(const ListObjectsRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, ListObjects, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("ListObjects", "Required field: Bucket, is not set");
return ListObjectsOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return ListObjectsOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
- Aws::StringStream ss;
- uri.SetPath(uri.GetPath() + ss.str());
- return ListObjectsOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-ListObjectsOutcomeCallable S3Client::ListObjectsCallable(const ListObjectsRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< ListObjectsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListObjects(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::ListObjectsAsync(const ListObjectsRequest& request, const ListObjectsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->ListObjectsAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::ListObjectsAsyncHelper(const ListObjectsRequest& request, const ListObjectsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, ListObjects(request), context);
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, ListObjects, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
+ return ListObjectsOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET));
}
ListObjectsV2Outcome S3Client::ListObjectsV2(const ListObjectsV2Request& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, ListObjectsV2, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("ListObjectsV2", "Required field: Bucket, is not set");
return ListObjectsV2Outcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return ListObjectsV2Outcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, ListObjectsV2, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?list-type=2");
- uri.SetQueryString(ss.str());
- return ListObjectsV2Outcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-ListObjectsV2OutcomeCallable S3Client::ListObjectsV2Callable(const ListObjectsV2Request& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< ListObjectsV2Outcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListObjectsV2(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::ListObjectsV2Async(const ListObjectsV2Request& request, const ListObjectsV2ResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->ListObjectsV2AsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::ListObjectsV2AsyncHelper(const ListObjectsV2Request& request, const ListObjectsV2ResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, ListObjectsV2(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return ListObjectsV2Outcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET));
}
ListPartsOutcome S3Client::ListParts(const ListPartsRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, ListParts, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("ListParts", "Required field: Bucket, is not set");
@@ -2613,113 +1398,47 @@ ListPartsOutcome S3Client::ListParts(const ListPartsRequest& request) const
AWS_LOGSTREAM_ERROR("ListParts", "Required field: UploadId, is not set");
return ListPartsOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [UploadId]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return ListPartsOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
- Aws::StringStream ss;
- ss << "/";
- ss << request.GetKey();
- uri.SetPath(uri.GetPath() + ss.str());
- return ListPartsOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-ListPartsOutcomeCallable S3Client::ListPartsCallable(const ListPartsRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< ListPartsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListParts(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::ListPartsAsync(const ListPartsRequest& request, const ListPartsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->ListPartsAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::ListPartsAsyncHelper(const ListPartsRequest& request, const ListPartsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, ListParts(request), context);
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, ListParts, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
+ endpointResolutionOutcome.GetResult().AddPathSegments(request.GetKey());
+ return ListPartsOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_GET));
}
PutBucketAccelerateConfigurationOutcome S3Client::PutBucketAccelerateConfiguration(const PutBucketAccelerateConfigurationRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, PutBucketAccelerateConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("PutBucketAccelerateConfiguration", "Required field: Bucket, is not set");
return PutBucketAccelerateConfigurationOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return PutBucketAccelerateConfigurationOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, PutBucketAccelerateConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?accelerate");
- uri.SetQueryString(ss.str());
- return PutBucketAccelerateConfigurationOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_PUT, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-PutBucketAccelerateConfigurationOutcomeCallable S3Client::PutBucketAccelerateConfigurationCallable(const PutBucketAccelerateConfigurationRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< PutBucketAccelerateConfigurationOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->PutBucketAccelerateConfiguration(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::PutBucketAccelerateConfigurationAsync(const PutBucketAccelerateConfigurationRequest& request, const PutBucketAccelerateConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->PutBucketAccelerateConfigurationAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::PutBucketAccelerateConfigurationAsyncHelper(const PutBucketAccelerateConfigurationRequest& request, const PutBucketAccelerateConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, PutBucketAccelerateConfiguration(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return PutBucketAccelerateConfigurationOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_PUT));
}
PutBucketAclOutcome S3Client::PutBucketAcl(const PutBucketAclRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, PutBucketAcl, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("PutBucketAcl", "Required field: Bucket, is not set");
return PutBucketAclOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return PutBucketAclOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, PutBucketAcl, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?acl");
- uri.SetQueryString(ss.str());
- return PutBucketAclOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_PUT, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-PutBucketAclOutcomeCallable S3Client::PutBucketAclCallable(const PutBucketAclRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< PutBucketAclOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->PutBucketAcl(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::PutBucketAclAsync(const PutBucketAclRequest& request, const PutBucketAclResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->PutBucketAclAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::PutBucketAclAsyncHelper(const PutBucketAclRequest& request, const PutBucketAclResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, PutBucketAcl(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return PutBucketAclOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_PUT));
}
PutBucketAnalyticsConfigurationOutcome S3Client::PutBucketAnalyticsConfiguration(const PutBucketAnalyticsConfigurationRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, PutBucketAnalyticsConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("PutBucketAnalyticsConfiguration", "Required field: Bucket, is not set");
@@ -2730,112 +1449,49 @@ PutBucketAnalyticsConfigurationOutcome S3Client::PutBucketAnalyticsConfiguration
AWS_LOGSTREAM_ERROR("PutBucketAnalyticsConfiguration", "Required field: Id, is not set");
return PutBucketAnalyticsConfigurationOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Id]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return PutBucketAnalyticsConfigurationOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, PutBucketAnalyticsConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?analytics");
- uri.SetQueryString(ss.str());
- return PutBucketAnalyticsConfigurationOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_PUT, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-PutBucketAnalyticsConfigurationOutcomeCallable S3Client::PutBucketAnalyticsConfigurationCallable(const PutBucketAnalyticsConfigurationRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< PutBucketAnalyticsConfigurationOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->PutBucketAnalyticsConfiguration(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::PutBucketAnalyticsConfigurationAsync(const PutBucketAnalyticsConfigurationRequest& request, const PutBucketAnalyticsConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->PutBucketAnalyticsConfigurationAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::PutBucketAnalyticsConfigurationAsyncHelper(const PutBucketAnalyticsConfigurationRequest& request, const PutBucketAnalyticsConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, PutBucketAnalyticsConfiguration(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return PutBucketAnalyticsConfigurationOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_PUT));
}
PutBucketCorsOutcome S3Client::PutBucketCors(const PutBucketCorsRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, PutBucketCors, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("PutBucketCors", "Required field: Bucket, is not set");
return PutBucketCorsOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return PutBucketCorsOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, PutBucketCors, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?cors");
- uri.SetQueryString(ss.str());
- return PutBucketCorsOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_PUT, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-PutBucketCorsOutcomeCallable S3Client::PutBucketCorsCallable(const PutBucketCorsRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< PutBucketCorsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->PutBucketCors(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::PutBucketCorsAsync(const PutBucketCorsRequest& request, const PutBucketCorsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->PutBucketCorsAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::PutBucketCorsAsyncHelper(const PutBucketCorsRequest& request, const PutBucketCorsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, PutBucketCors(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return PutBucketCorsOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_PUT));
}
PutBucketEncryptionOutcome S3Client::PutBucketEncryption(const PutBucketEncryptionRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, PutBucketEncryption, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("PutBucketEncryption", "Required field: Bucket, is not set");
return PutBucketEncryptionOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return PutBucketEncryptionOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, PutBucketEncryption, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?encryption");
- uri.SetQueryString(ss.str());
- return PutBucketEncryptionOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_PUT, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-PutBucketEncryptionOutcomeCallable S3Client::PutBucketEncryptionCallable(const PutBucketEncryptionRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< PutBucketEncryptionOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->PutBucketEncryption(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::PutBucketEncryptionAsync(const PutBucketEncryptionRequest& request, const PutBucketEncryptionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->PutBucketEncryptionAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::PutBucketEncryptionAsyncHelper(const PutBucketEncryptionRequest& request, const PutBucketEncryptionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, PutBucketEncryption(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return PutBucketEncryptionOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_PUT));
}
PutBucketIntelligentTieringConfigurationOutcome S3Client::PutBucketIntelligentTieringConfiguration(const PutBucketIntelligentTieringConfigurationRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, PutBucketIntelligentTieringConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("PutBucketIntelligentTieringConfiguration", "Required field: Bucket, is not set");
@@ -2846,38 +1502,17 @@ PutBucketIntelligentTieringConfigurationOutcome S3Client::PutBucketIntelligentTi
AWS_LOGSTREAM_ERROR("PutBucketIntelligentTieringConfiguration", "Required field: Id, is not set");
return PutBucketIntelligentTieringConfigurationOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Id]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return PutBucketIntelligentTieringConfigurationOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, PutBucketIntelligentTieringConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?intelligent-tiering");
- uri.SetQueryString(ss.str());
- return PutBucketIntelligentTieringConfigurationOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_PUT, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-PutBucketIntelligentTieringConfigurationOutcomeCallable S3Client::PutBucketIntelligentTieringConfigurationCallable(const PutBucketIntelligentTieringConfigurationRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< PutBucketIntelligentTieringConfigurationOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->PutBucketIntelligentTieringConfiguration(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::PutBucketIntelligentTieringConfigurationAsync(const PutBucketIntelligentTieringConfigurationRequest& request, const PutBucketIntelligentTieringConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->PutBucketIntelligentTieringConfigurationAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::PutBucketIntelligentTieringConfigurationAsyncHelper(const PutBucketIntelligentTieringConfigurationRequest& request, const PutBucketIntelligentTieringConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, PutBucketIntelligentTieringConfiguration(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return PutBucketIntelligentTieringConfigurationOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_PUT));
}
PutBucketInventoryConfigurationOutcome S3Client::PutBucketInventoryConfiguration(const PutBucketInventoryConfigurationRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, PutBucketInventoryConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("PutBucketInventoryConfiguration", "Required field: Bucket, is not set");
@@ -2888,112 +1523,49 @@ PutBucketInventoryConfigurationOutcome S3Client::PutBucketInventoryConfiguration
AWS_LOGSTREAM_ERROR("PutBucketInventoryConfiguration", "Required field: Id, is not set");
return PutBucketInventoryConfigurationOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Id]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return PutBucketInventoryConfigurationOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, PutBucketInventoryConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?inventory");
- uri.SetQueryString(ss.str());
- return PutBucketInventoryConfigurationOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_PUT, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-PutBucketInventoryConfigurationOutcomeCallable S3Client::PutBucketInventoryConfigurationCallable(const PutBucketInventoryConfigurationRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< PutBucketInventoryConfigurationOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->PutBucketInventoryConfiguration(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::PutBucketInventoryConfigurationAsync(const PutBucketInventoryConfigurationRequest& request, const PutBucketInventoryConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->PutBucketInventoryConfigurationAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::PutBucketInventoryConfigurationAsyncHelper(const PutBucketInventoryConfigurationRequest& request, const PutBucketInventoryConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, PutBucketInventoryConfiguration(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return PutBucketInventoryConfigurationOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_PUT));
}
PutBucketLifecycleConfigurationOutcome S3Client::PutBucketLifecycleConfiguration(const PutBucketLifecycleConfigurationRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, PutBucketLifecycleConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("PutBucketLifecycleConfiguration", "Required field: Bucket, is not set");
return PutBucketLifecycleConfigurationOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return PutBucketLifecycleConfigurationOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, PutBucketLifecycleConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?lifecycle");
- uri.SetQueryString(ss.str());
- return PutBucketLifecycleConfigurationOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_PUT, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-PutBucketLifecycleConfigurationOutcomeCallable S3Client::PutBucketLifecycleConfigurationCallable(const PutBucketLifecycleConfigurationRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< PutBucketLifecycleConfigurationOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->PutBucketLifecycleConfiguration(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::PutBucketLifecycleConfigurationAsync(const PutBucketLifecycleConfigurationRequest& request, const PutBucketLifecycleConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->PutBucketLifecycleConfigurationAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::PutBucketLifecycleConfigurationAsyncHelper(const PutBucketLifecycleConfigurationRequest& request, const PutBucketLifecycleConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, PutBucketLifecycleConfiguration(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return PutBucketLifecycleConfigurationOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_PUT));
}
PutBucketLoggingOutcome S3Client::PutBucketLogging(const PutBucketLoggingRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, PutBucketLogging, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("PutBucketLogging", "Required field: Bucket, is not set");
return PutBucketLoggingOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return PutBucketLoggingOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, PutBucketLogging, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?logging");
- uri.SetQueryString(ss.str());
- return PutBucketLoggingOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_PUT, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-PutBucketLoggingOutcomeCallable S3Client::PutBucketLoggingCallable(const PutBucketLoggingRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< PutBucketLoggingOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->PutBucketLogging(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::PutBucketLoggingAsync(const PutBucketLoggingRequest& request, const PutBucketLoggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->PutBucketLoggingAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::PutBucketLoggingAsyncHelper(const PutBucketLoggingRequest& request, const PutBucketLoggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, PutBucketLogging(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return PutBucketLoggingOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_PUT));
}
PutBucketMetricsConfigurationOutcome S3Client::PutBucketMetricsConfiguration(const PutBucketMetricsConfigurationRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, PutBucketMetricsConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("PutBucketMetricsConfiguration", "Required field: Bucket, is not set");
@@ -3004,334 +1576,145 @@ PutBucketMetricsConfigurationOutcome S3Client::PutBucketMetricsConfiguration(con
AWS_LOGSTREAM_ERROR("PutBucketMetricsConfiguration", "Required field: Id, is not set");
return PutBucketMetricsConfigurationOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Id]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return PutBucketMetricsConfigurationOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, PutBucketMetricsConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?metrics");
- uri.SetQueryString(ss.str());
- return PutBucketMetricsConfigurationOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_PUT, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-PutBucketMetricsConfigurationOutcomeCallable S3Client::PutBucketMetricsConfigurationCallable(const PutBucketMetricsConfigurationRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< PutBucketMetricsConfigurationOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->PutBucketMetricsConfiguration(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::PutBucketMetricsConfigurationAsync(const PutBucketMetricsConfigurationRequest& request, const PutBucketMetricsConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->PutBucketMetricsConfigurationAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::PutBucketMetricsConfigurationAsyncHelper(const PutBucketMetricsConfigurationRequest& request, const PutBucketMetricsConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, PutBucketMetricsConfiguration(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return PutBucketMetricsConfigurationOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_PUT));
}
PutBucketNotificationConfigurationOutcome S3Client::PutBucketNotificationConfiguration(const PutBucketNotificationConfigurationRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, PutBucketNotificationConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("PutBucketNotificationConfiguration", "Required field: Bucket, is not set");
return PutBucketNotificationConfigurationOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return PutBucketNotificationConfigurationOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, PutBucketNotificationConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?notification");
- uri.SetQueryString(ss.str());
- return PutBucketNotificationConfigurationOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_PUT, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-PutBucketNotificationConfigurationOutcomeCallable S3Client::PutBucketNotificationConfigurationCallable(const PutBucketNotificationConfigurationRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< PutBucketNotificationConfigurationOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->PutBucketNotificationConfiguration(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::PutBucketNotificationConfigurationAsync(const PutBucketNotificationConfigurationRequest& request, const PutBucketNotificationConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->PutBucketNotificationConfigurationAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::PutBucketNotificationConfigurationAsyncHelper(const PutBucketNotificationConfigurationRequest& request, const PutBucketNotificationConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, PutBucketNotificationConfiguration(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return PutBucketNotificationConfigurationOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_PUT));
}
PutBucketOwnershipControlsOutcome S3Client::PutBucketOwnershipControls(const PutBucketOwnershipControlsRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, PutBucketOwnershipControls, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("PutBucketOwnershipControls", "Required field: Bucket, is not set");
return PutBucketOwnershipControlsOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return PutBucketOwnershipControlsOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, PutBucketOwnershipControls, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?ownershipControls");
- uri.SetQueryString(ss.str());
- return PutBucketOwnershipControlsOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_PUT, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-PutBucketOwnershipControlsOutcomeCallable S3Client::PutBucketOwnershipControlsCallable(const PutBucketOwnershipControlsRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< PutBucketOwnershipControlsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->PutBucketOwnershipControls(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::PutBucketOwnershipControlsAsync(const PutBucketOwnershipControlsRequest& request, const PutBucketOwnershipControlsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->PutBucketOwnershipControlsAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::PutBucketOwnershipControlsAsyncHelper(const PutBucketOwnershipControlsRequest& request, const PutBucketOwnershipControlsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, PutBucketOwnershipControls(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return PutBucketOwnershipControlsOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_PUT));
}
PutBucketPolicyOutcome S3Client::PutBucketPolicy(const PutBucketPolicyRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, PutBucketPolicy, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("PutBucketPolicy", "Required field: Bucket, is not set");
return PutBucketPolicyOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return PutBucketPolicyOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, PutBucketPolicy, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?policy");
- uri.SetQueryString(ss.str());
- return PutBucketPolicyOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_PUT, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-PutBucketPolicyOutcomeCallable S3Client::PutBucketPolicyCallable(const PutBucketPolicyRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< PutBucketPolicyOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->PutBucketPolicy(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::PutBucketPolicyAsync(const PutBucketPolicyRequest& request, const PutBucketPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->PutBucketPolicyAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::PutBucketPolicyAsyncHelper(const PutBucketPolicyRequest& request, const PutBucketPolicyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, PutBucketPolicy(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return PutBucketPolicyOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_PUT));
}
PutBucketReplicationOutcome S3Client::PutBucketReplication(const PutBucketReplicationRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, PutBucketReplication, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("PutBucketReplication", "Required field: Bucket, is not set");
return PutBucketReplicationOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return PutBucketReplicationOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, PutBucketReplication, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?replication");
- uri.SetQueryString(ss.str());
- return PutBucketReplicationOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_PUT, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-PutBucketReplicationOutcomeCallable S3Client::PutBucketReplicationCallable(const PutBucketReplicationRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< PutBucketReplicationOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->PutBucketReplication(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::PutBucketReplicationAsync(const PutBucketReplicationRequest& request, const PutBucketReplicationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->PutBucketReplicationAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::PutBucketReplicationAsyncHelper(const PutBucketReplicationRequest& request, const PutBucketReplicationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, PutBucketReplication(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return PutBucketReplicationOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_PUT));
}
PutBucketRequestPaymentOutcome S3Client::PutBucketRequestPayment(const PutBucketRequestPaymentRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, PutBucketRequestPayment, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("PutBucketRequestPayment", "Required field: Bucket, is not set");
return PutBucketRequestPaymentOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return PutBucketRequestPaymentOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, PutBucketRequestPayment, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?requestPayment");
- uri.SetQueryString(ss.str());
- return PutBucketRequestPaymentOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_PUT, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-PutBucketRequestPaymentOutcomeCallable S3Client::PutBucketRequestPaymentCallable(const PutBucketRequestPaymentRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< PutBucketRequestPaymentOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->PutBucketRequestPayment(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::PutBucketRequestPaymentAsync(const PutBucketRequestPaymentRequest& request, const PutBucketRequestPaymentResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->PutBucketRequestPaymentAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::PutBucketRequestPaymentAsyncHelper(const PutBucketRequestPaymentRequest& request, const PutBucketRequestPaymentResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, PutBucketRequestPayment(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return PutBucketRequestPaymentOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_PUT));
}
PutBucketTaggingOutcome S3Client::PutBucketTagging(const PutBucketTaggingRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, PutBucketTagging, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("PutBucketTagging", "Required field: Bucket, is not set");
return PutBucketTaggingOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return PutBucketTaggingOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, PutBucketTagging, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?tagging");
- uri.SetQueryString(ss.str());
- return PutBucketTaggingOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_PUT, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-PutBucketTaggingOutcomeCallable S3Client::PutBucketTaggingCallable(const PutBucketTaggingRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< PutBucketTaggingOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->PutBucketTagging(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::PutBucketTaggingAsync(const PutBucketTaggingRequest& request, const PutBucketTaggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->PutBucketTaggingAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::PutBucketTaggingAsyncHelper(const PutBucketTaggingRequest& request, const PutBucketTaggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, PutBucketTagging(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return PutBucketTaggingOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_PUT));
}
PutBucketVersioningOutcome S3Client::PutBucketVersioning(const PutBucketVersioningRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, PutBucketVersioning, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("PutBucketVersioning", "Required field: Bucket, is not set");
return PutBucketVersioningOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return PutBucketVersioningOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, PutBucketVersioning, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?versioning");
- uri.SetQueryString(ss.str());
- return PutBucketVersioningOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_PUT, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-PutBucketVersioningOutcomeCallable S3Client::PutBucketVersioningCallable(const PutBucketVersioningRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< PutBucketVersioningOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->PutBucketVersioning(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::PutBucketVersioningAsync(const PutBucketVersioningRequest& request, const PutBucketVersioningResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->PutBucketVersioningAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::PutBucketVersioningAsyncHelper(const PutBucketVersioningRequest& request, const PutBucketVersioningResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, PutBucketVersioning(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return PutBucketVersioningOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_PUT));
}
PutBucketWebsiteOutcome S3Client::PutBucketWebsite(const PutBucketWebsiteRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, PutBucketWebsite, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("PutBucketWebsite", "Required field: Bucket, is not set");
return PutBucketWebsiteOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return PutBucketWebsiteOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, PutBucketWebsite, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?website");
- uri.SetQueryString(ss.str());
- return PutBucketWebsiteOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_PUT, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-PutBucketWebsiteOutcomeCallable S3Client::PutBucketWebsiteCallable(const PutBucketWebsiteRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< PutBucketWebsiteOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->PutBucketWebsite(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::PutBucketWebsiteAsync(const PutBucketWebsiteRequest& request, const PutBucketWebsiteResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->PutBucketWebsiteAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::PutBucketWebsiteAsyncHelper(const PutBucketWebsiteRequest& request, const PutBucketWebsiteResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, PutBucketWebsite(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return PutBucketWebsiteOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_PUT));
}
PutObjectOutcome S3Client::PutObject(const PutObjectRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, PutObject, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("PutObject", "Required field: Bucket, is not set");
@@ -3342,17 +1725,10 @@ PutObjectOutcome S3Client::PutObject(const PutObjectRequest& request) const
AWS_LOGSTREAM_ERROR("PutObject", "Required field: Key, is not set");
return PutObjectOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Key]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return PutObjectOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
- Aws::StringStream ss;
- ss << "/";
- ss << request.GetKey();
- uri.SetPath(uri.GetPath() + ss.str());
- return PutObjectOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_PUT, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, PutObject, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
+ endpointResolutionOutcome.GetResult().AddPathSegments(request.GetKey());
+ return PutObjectOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_PUT));
}
PutObjectOutcomeCallable S3Client::PutObjectCallable(const PutObjectRequest& request) const
@@ -3365,16 +1741,15 @@ PutObjectOutcomeCallable S3Client::PutObjectCallable(const PutObjectRequest& req
void S3Client::PutObjectAsync(const PutObjectRequest& request, const PutObjectResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
{
- m_executor->Submit( [this, request, handler, context](){ this->PutObjectAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::PutObjectAsyncHelper(const PutObjectRequest& request, const PutObjectResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, PutObject(request), context);
+ m_executor->Submit( [this, request, handler, context]()
+ {
+ handler(this, request, PutObject(request), context);
+ } );
}
PutObjectAclOutcome S3Client::PutObjectAcl(const PutObjectAclRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, PutObjectAcl, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("PutObjectAcl", "Required field: Bucket, is not set");
@@ -3385,41 +1760,18 @@ PutObjectAclOutcome S3Client::PutObjectAcl(const PutObjectAclRequest& request) c
AWS_LOGSTREAM_ERROR("PutObjectAcl", "Required field: Key, is not set");
return PutObjectAclOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Key]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return PutObjectAclOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, PutObjectAcl, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
- ss << "/";
- ss << request.GetKey();
- uri.SetPath(uri.GetPath() + ss.str());
+ endpointResolutionOutcome.GetResult().AddPathSegments(request.GetKey());
ss.str("?acl");
- uri.SetQueryString(ss.str());
- return PutObjectAclOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_PUT, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-PutObjectAclOutcomeCallable S3Client::PutObjectAclCallable(const PutObjectAclRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< PutObjectAclOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->PutObjectAcl(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::PutObjectAclAsync(const PutObjectAclRequest& request, const PutObjectAclResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->PutObjectAclAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::PutObjectAclAsyncHelper(const PutObjectAclRequest& request, const PutObjectAclResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, PutObjectAcl(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return PutObjectAclOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_PUT));
}
PutObjectLegalHoldOutcome S3Client::PutObjectLegalHold(const PutObjectLegalHoldRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, PutObjectLegalHold, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("PutObjectLegalHold", "Required field: Bucket, is not set");
@@ -3430,78 +1782,34 @@ PutObjectLegalHoldOutcome S3Client::PutObjectLegalHold(const PutObjectLegalHoldR
AWS_LOGSTREAM_ERROR("PutObjectLegalHold", "Required field: Key, is not set");
return PutObjectLegalHoldOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Key]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return PutObjectLegalHoldOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, PutObjectLegalHold, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
- ss << "/";
- ss << request.GetKey();
- uri.SetPath(uri.GetPath() + ss.str());
+ endpointResolutionOutcome.GetResult().AddPathSegments(request.GetKey());
ss.str("?legal-hold");
- uri.SetQueryString(ss.str());
- return PutObjectLegalHoldOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_PUT, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-PutObjectLegalHoldOutcomeCallable S3Client::PutObjectLegalHoldCallable(const PutObjectLegalHoldRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< PutObjectLegalHoldOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->PutObjectLegalHold(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::PutObjectLegalHoldAsync(const PutObjectLegalHoldRequest& request, const PutObjectLegalHoldResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->PutObjectLegalHoldAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::PutObjectLegalHoldAsyncHelper(const PutObjectLegalHoldRequest& request, const PutObjectLegalHoldResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, PutObjectLegalHold(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return PutObjectLegalHoldOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_PUT));
}
PutObjectLockConfigurationOutcome S3Client::PutObjectLockConfiguration(const PutObjectLockConfigurationRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, PutObjectLockConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("PutObjectLockConfiguration", "Required field: Bucket, is not set");
return PutObjectLockConfigurationOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return PutObjectLockConfigurationOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, PutObjectLockConfiguration, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?object-lock");
- uri.SetQueryString(ss.str());
- return PutObjectLockConfigurationOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_PUT, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-PutObjectLockConfigurationOutcomeCallable S3Client::PutObjectLockConfigurationCallable(const PutObjectLockConfigurationRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< PutObjectLockConfigurationOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->PutObjectLockConfiguration(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::PutObjectLockConfigurationAsync(const PutObjectLockConfigurationRequest& request, const PutObjectLockConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->PutObjectLockConfigurationAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::PutObjectLockConfigurationAsyncHelper(const PutObjectLockConfigurationRequest& request, const PutObjectLockConfigurationResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, PutObjectLockConfiguration(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return PutObjectLockConfigurationOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_PUT));
}
PutObjectRetentionOutcome S3Client::PutObjectRetention(const PutObjectRetentionRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, PutObjectRetention, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("PutObjectRetention", "Required field: Bucket, is not set");
@@ -3512,41 +1820,18 @@ PutObjectRetentionOutcome S3Client::PutObjectRetention(const PutObjectRetentionR
AWS_LOGSTREAM_ERROR("PutObjectRetention", "Required field: Key, is not set");
return PutObjectRetentionOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Key]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return PutObjectRetentionOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, PutObjectRetention, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
- ss << "/";
- ss << request.GetKey();
- uri.SetPath(uri.GetPath() + ss.str());
+ endpointResolutionOutcome.GetResult().AddPathSegments(request.GetKey());
ss.str("?retention");
- uri.SetQueryString(ss.str());
- return PutObjectRetentionOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_PUT, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-PutObjectRetentionOutcomeCallable S3Client::PutObjectRetentionCallable(const PutObjectRetentionRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< PutObjectRetentionOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->PutObjectRetention(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::PutObjectRetentionAsync(const PutObjectRetentionRequest& request, const PutObjectRetentionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->PutObjectRetentionAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::PutObjectRetentionAsyncHelper(const PutObjectRetentionRequest& request, const PutObjectRetentionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, PutObjectRetention(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return PutObjectRetentionOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_PUT));
}
PutObjectTaggingOutcome S3Client::PutObjectTagging(const PutObjectTaggingRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, PutObjectTagging, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("PutObjectTagging", "Required field: Bucket, is not set");
@@ -3557,78 +1842,34 @@ PutObjectTaggingOutcome S3Client::PutObjectTagging(const PutObjectTaggingRequest
AWS_LOGSTREAM_ERROR("PutObjectTagging", "Required field: Key, is not set");
return PutObjectTaggingOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Key]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return PutObjectTaggingOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, PutObjectTagging, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
- ss << "/";
- ss << request.GetKey();
- uri.SetPath(uri.GetPath() + ss.str());
+ endpointResolutionOutcome.GetResult().AddPathSegments(request.GetKey());
ss.str("?tagging");
- uri.SetQueryString(ss.str());
- return PutObjectTaggingOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_PUT, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-PutObjectTaggingOutcomeCallable S3Client::PutObjectTaggingCallable(const PutObjectTaggingRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< PutObjectTaggingOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->PutObjectTagging(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::PutObjectTaggingAsync(const PutObjectTaggingRequest& request, const PutObjectTaggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->PutObjectTaggingAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::PutObjectTaggingAsyncHelper(const PutObjectTaggingRequest& request, const PutObjectTaggingResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, PutObjectTagging(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return PutObjectTaggingOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_PUT));
}
PutPublicAccessBlockOutcome S3Client::PutPublicAccessBlock(const PutPublicAccessBlockRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, PutPublicAccessBlock, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("PutPublicAccessBlock", "Required field: Bucket, is not set");
return PutPublicAccessBlockOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Bucket]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return PutPublicAccessBlockOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, PutPublicAccessBlock, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
ss.str("?publicAccessBlock");
- uri.SetQueryString(ss.str());
- return PutPublicAccessBlockOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_PUT, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-PutPublicAccessBlockOutcomeCallable S3Client::PutPublicAccessBlockCallable(const PutPublicAccessBlockRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< PutPublicAccessBlockOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->PutPublicAccessBlock(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::PutPublicAccessBlockAsync(const PutPublicAccessBlockRequest& request, const PutPublicAccessBlockResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->PutPublicAccessBlockAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::PutPublicAccessBlockAsyncHelper(const PutPublicAccessBlockRequest& request, const PutPublicAccessBlockResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, PutPublicAccessBlock(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return PutPublicAccessBlockOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_PUT));
}
RestoreObjectOutcome S3Client::RestoreObject(const RestoreObjectRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, RestoreObject, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("RestoreObject", "Required field: Bucket, is not set");
@@ -3639,41 +1880,18 @@ RestoreObjectOutcome S3Client::RestoreObject(const RestoreObjectRequest& request
AWS_LOGSTREAM_ERROR("RestoreObject", "Required field: Key, is not set");
return RestoreObjectOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Key]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return RestoreObjectOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, RestoreObject, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
- ss << "/";
- ss << request.GetKey();
- uri.SetPath(uri.GetPath() + ss.str());
+ endpointResolutionOutcome.GetResult().AddPathSegments(request.GetKey());
ss.str("?restore");
- uri.SetQueryString(ss.str());
- return RestoreObjectOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-RestoreObjectOutcomeCallable S3Client::RestoreObjectCallable(const RestoreObjectRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< RestoreObjectOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->RestoreObject(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::RestoreObjectAsync(const RestoreObjectRequest& request, const RestoreObjectResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->RestoreObjectAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::RestoreObjectAsyncHelper(const RestoreObjectRequest& request, const RestoreObjectResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, RestoreObject(request), context);
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
+ return RestoreObjectOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_POST));
}
SelectObjectContentOutcome S3Client::SelectObjectContent(SelectObjectContentRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, SelectObjectContent, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("SelectObjectContent", "Required field: Bucket, is not set");
@@ -3684,44 +1902,21 @@ SelectObjectContentOutcome S3Client::SelectObjectContent(SelectObjectContentRequ
AWS_LOGSTREAM_ERROR("SelectObjectContent", "Required field: Key, is not set");
return SelectObjectContentOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Key]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return SelectObjectContentOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, SelectObjectContent, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
Aws::StringStream ss;
- ss << "/";
- ss << request.GetKey();
- uri.SetPath(uri.GetPath() + ss.str());
+ endpointResolutionOutcome.GetResult().AddPathSegments(request.GetKey());
ss.str("?select&select-type=2");
- uri.SetQueryString(ss.str());
+ endpointResolutionOutcome.GetResult().SetQueryString(ss.str());
request.SetResponseStreamFactory(
[&] { request.GetEventStreamDecoder().Reset(); return Aws::New<Aws::Utils::Event::EventDecoderStream>(ALLOCATION_TAG, request.GetEventStreamDecoder()); }
);
- return SelectObjectContentOutcome(MakeRequestWithEventStream(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-SelectObjectContentOutcomeCallable S3Client::SelectObjectContentCallable(SelectObjectContentRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< SelectObjectContentOutcome() > >(ALLOCATION_TAG, [this, &request](){ return this->SelectObjectContent(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::SelectObjectContentAsync(SelectObjectContentRequest& request, const SelectObjectContentResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, &request, handler, context](){ this->SelectObjectContentAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::SelectObjectContentAsyncHelper(SelectObjectContentRequest& request, const SelectObjectContentResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, SelectObjectContent(request), context);
+ return SelectObjectContentOutcome(MakeRequestWithEventStream(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_POST));
}
UploadPartOutcome S3Client::UploadPart(const UploadPartRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, UploadPart, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("UploadPart", "Required field: Bucket, is not set");
@@ -3742,39 +1937,15 @@ UploadPartOutcome S3Client::UploadPart(const UploadPartRequest& request) const
AWS_LOGSTREAM_ERROR("UploadPart", "Required field: UploadId, is not set");
return UploadPartOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [UploadId]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return UploadPartOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
- Aws::StringStream ss;
- ss << "/";
- ss << request.GetKey();
- uri.SetPath(uri.GetPath() + ss.str());
- return UploadPartOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_PUT, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-UploadPartOutcomeCallable S3Client::UploadPartCallable(const UploadPartRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< UploadPartOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->UploadPart(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::UploadPartAsync(const UploadPartRequest& request, const UploadPartResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->UploadPartAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::UploadPartAsyncHelper(const UploadPartRequest& request, const UploadPartResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, UploadPart(request), context);
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, UploadPart, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
+ endpointResolutionOutcome.GetResult().AddPathSegments(request.GetKey());
+ return UploadPartOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_PUT));
}
UploadPartCopyOutcome S3Client::UploadPartCopy(const UploadPartCopyRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, UploadPartCopy, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.BucketHasBeenSet())
{
AWS_LOGSTREAM_ERROR("UploadPartCopy", "Required field: Bucket, is not set");
@@ -3800,39 +1971,15 @@ UploadPartCopyOutcome S3Client::UploadPartCopy(const UploadPartCopyRequest& requ
AWS_LOGSTREAM_ERROR("UploadPartCopy", "Required field: UploadId, is not set");
return UploadPartCopyOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [UploadId]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(request.GetBucket());
- if (!computeEndpointOutcome.IsSuccess())
- {
- return UploadPartCopyOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
- Aws::StringStream ss;
- ss << "/";
- ss << request.GetKey();
- uri.SetPath(uri.GetPath() + ss.str());
- return UploadPartCopyOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_PUT, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
-}
-
-UploadPartCopyOutcomeCallable S3Client::UploadPartCopyCallable(const UploadPartCopyRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< UploadPartCopyOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->UploadPartCopy(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-
-void S3Client::UploadPartCopyAsync(const UploadPartCopyRequest& request, const UploadPartCopyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->UploadPartCopyAsyncHelper( request, handler, context ); } );
-}
-
-void S3Client::UploadPartCopyAsyncHelper(const UploadPartCopyRequest& request, const UploadPartCopyResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, UploadPartCopy(request), context);
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, UploadPartCopy, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
+ endpointResolutionOutcome.GetResult().AddPathSegments(request.GetKey());
+ return UploadPartCopyOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_PUT));
}
WriteGetObjectResponseOutcome S3Client::WriteGetObjectResponse(const WriteGetObjectResponseRequest& request) const
{
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, WriteGetObjectResponse, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
if (!request.RequestRouteHasBeenSet())
{
AWS_LOGSTREAM_ERROR("WriteGetObjectResponse", "Required field: RequestRoute, is not set");
@@ -3843,349 +1990,123 @@ WriteGetObjectResponseOutcome S3Client::WriteGetObjectResponse(const WriteGetObj
AWS_LOGSTREAM_ERROR("WriteGetObjectResponse", "Required field: RequestToken, is not set");
return WriteGetObjectResponseOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [RequestToken]", false));
}
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointStringWithServiceName("s3-object-lambda");
- if (!computeEndpointOutcome.IsSuccess())
- {
- return WriteGetObjectResponseOutcome(computeEndpointOutcome.GetError());
- }
- Aws::Http::URI uri = computeEndpointOutcome.GetResult().endpoint;
- if (m_enableHostPrefixInjection)
- {
- if (request.GetRequestRoute().empty())
- {
- AWS_LOGSTREAM_ERROR("WriteGetObjectResponse", "HostPrefix required field: RequestRoute, is empty");
- return WriteGetObjectResponseOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::INVALID_PARAMETER_VALUE, "INVALID_PARAMETER", "Host prefix field is empty", false));
- }
- uri.SetAuthority("" + request.GetRequestRoute() + "." + uri.GetAuthority());
- if (!Aws::Utils::IsValidHost(uri.GetAuthority()))
- {
- AWS_LOGSTREAM_ERROR("WriteGetObjectResponse", "Invalid DNS host: " << uri.GetAuthority());
- return WriteGetObjectResponseOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::INVALID_PARAMETER_VALUE, "INVALID_PARAMETER", "Host is invalid", false));
- }
- }
- Aws::StringStream ss;
- ss << "/WriteGetObjectResponse";
- uri.SetPath(uri.GetPath() + ss.str());
- return WriteGetObjectResponseOutcome(MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER, computeEndpointOutcome.GetResult().signerRegion.c_str() /*signerRegionOverride*/, computeEndpointOutcome.GetResult().signerServiceName.c_str() /*signerServiceNameOverride*/));
+ ResolveEndpointOutcome endpointResolutionOutcome = m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams());
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, WriteGetObjectResponse, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
+ auto addPrefixErr = endpointResolutionOutcome.GetResult().AddPrefixIfMissing("" + request.GetRequestRoute() + ".");
+ AWS_CHECK(SERVICE_NAME, !addPrefixErr, addPrefixErr->GetMessage(), WriteGetObjectResponseOutcome(addPrefixErr.value()));
+ endpointResolutionOutcome.GetResult().AddPathSegments("/WriteGetObjectResponse");
+ return WriteGetObjectResponseOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_POST));
}
-WriteGetObjectResponseOutcomeCallable S3Client::WriteGetObjectResponseCallable(const WriteGetObjectResponseRequest& request) const
-{
- auto task = Aws::MakeShared< std::packaged_task< WriteGetObjectResponseOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->WriteGetObjectResponse(request); } );
- auto packagedFunction = [task]() { (*task)(); };
- m_executor->Submit(packagedFunction);
- return task->get_future();
-}
-void S3Client::WriteGetObjectResponseAsync(const WriteGetObjectResponseRequest& request, const WriteGetObjectResponseResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- m_executor->Submit( [this, request, handler, context](){ this->WriteGetObjectResponseAsyncHelper( request, handler, context ); } );
-}
-void S3Client::WriteGetObjectResponseAsyncHelper(const WriteGetObjectResponseRequest& request, const WriteGetObjectResponseResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const
-{
- handler(this, request, WriteGetObjectResponse(request), context);
-}
-
-
-
-#include<aws/core/platform/Environment.h>
-
-static const char US_EAST_1_REGIONAL_ENDPOINT_ENV_VAR[] = "AWS_S3_US_EAST_1_REGIONAL_ENDPOINT";
-static const char US_EAST_1_REGIONAL_ENDPOINT_CONFIG_VAR[] = "s3_us_east_1_regional_endpoint";
-static const char S3_USE_ARN_REGION_ENVIRONMENT_VARIABLE[] = "AWS_S3_USE_ARN_REGION";
-static const char S3_USE_ARN_REGION_CONFIG_FILE_OPTION[] = "s3_use_arn_region";
-
-void S3Client::LoadS3SpecificConfig(const Aws::String& profile)
+#include<aws/core/utils/HashingUtils.h>
+Aws::String S3Client::GeneratePresignedUrl(const Aws::String& bucket,
+ const Aws::String& key,
+ Aws::Http::HttpMethod method,
+ uint64_t expirationInSeconds)
{
- if (m_USEast1RegionalEndpointOption == Aws::S3::US_EAST_1_REGIONAL_ENDPOINT_OPTION::NOT_SET)
- {
- Aws::String option = Aws::Environment::GetEnv(US_EAST_1_REGIONAL_ENDPOINT_ENV_VAR);
- if (option.empty())
- {
- option = Aws::Config::GetCachedConfigValue(profile, US_EAST_1_REGIONAL_ENDPOINT_CONFIG_VAR);
- }
-
- if (Aws::Utils::StringUtils::ToLower(option.c_str()) == "legacy")
- {
- m_USEast1RegionalEndpointOption = Aws::S3::US_EAST_1_REGIONAL_ENDPOINT_OPTION::LEGACY;
- }
- else // defaults is regional
- {
- m_USEast1RegionalEndpointOption = Aws::S3::US_EAST_1_REGIONAL_ENDPOINT_OPTION::REGIONAL;
- }
- }
-
- Aws::String s3UseArnRegion = Aws::Environment::GetEnv(S3_USE_ARN_REGION_ENVIRONMENT_VARIABLE);
- if (s3UseArnRegion.empty())
- {
- s3UseArnRegion = Aws::Config::GetCachedConfigValue(profile, S3_USE_ARN_REGION_CONFIG_FILE_OPTION);
- }
-
- if (s3UseArnRegion == "true")
- {
- m_useArnRegion = true;
- }
- else
- {
- if (!s3UseArnRegion.empty() && s3UseArnRegion != "false")
- {
- AWS_LOGSTREAM_WARN("S3Client", "AWS_S3_USE_ARN_REGION in environment variables or s3_use_arn_region in config file"
- << "should either be true of false if specified, otherwise turn off this flag by default.");
- }
- m_useArnRegion = false;
- }
+ return GeneratePresignedUrl(bucket, key, method, {}, expirationInSeconds);
}
-#include<aws/core/utils/HashingUtils.h>
-Aws::String S3Client::GeneratePresignedUrl(const Aws::String& bucket, const Aws::String& key, Aws::Http::HttpMethod method, long long expirationInSeconds)
+Aws::String S3Client::GeneratePresignedUrl(const Aws::String& bucket,
+ const Aws::String& key,
+ Aws::Http::HttpMethod method,
+ const Http::HeaderValueCollection& customizedHeaders,
+ uint64_t expirationInSeconds)
{
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(bucket);
- if (!computeEndpointOutcome.IsSuccess())
+ if (!m_endpointProvider)
{
- AWS_LOGSTREAM_ERROR(ALLOCATION_TAG, "Presigned URL generating failed. Encountered error: " << computeEndpointOutcome.GetError());
+ AWS_LOGSTREAM_ERROR(ALLOCATION_TAG, "Presigned URL generating failed. Endpoint provider is not initialized.");
return {};
}
- Aws::StringStream ss;
- ss << computeEndpointOutcome.GetResult().endpoint << "/" << key;
- URI uri(ss.str());
- return AWSClient::GeneratePresignedUrl(uri, method, computeEndpointOutcome.GetResult().signerRegion.c_str(), computeEndpointOutcome.GetResult().signerServiceName.c_str(), expirationInSeconds);
-}
-
-Aws::String S3Client::GeneratePresignedUrl(const Aws::String& bucket, const Aws::String& key, Aws::Http::HttpMethod method, const Http::HeaderValueCollection& customizedHeaders, long long expirationInSeconds)
-{
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(bucket);
+ ResolveEndpointOutcome computeEndpointOutcome = m_endpointProvider->ResolveEndpoint({{Aws::String("Bucket"), bucket}});
if (!computeEndpointOutcome.IsSuccess())
{
- AWS_LOGSTREAM_ERROR(ALLOCATION_TAG, "Presigned URL generating failed. Encountered error: " << computeEndpointOutcome.GetError());
+ AWS_LOGSTREAM_ERROR(ALLOCATION_TAG, "Presigned URL generating failed. Encountered error: " << computeEndpointOutcome.GetError().GetMessage());
return {};
}
- Aws::StringStream ss;
- ss << computeEndpointOutcome.GetResult().endpoint << "/" << key;
- URI uri(ss.str());
- return AWSClient::GeneratePresignedUrl(uri, method, computeEndpointOutcome.GetResult().signerRegion.c_str(), computeEndpointOutcome.GetResult().signerServiceName.c_str(), customizedHeaders, expirationInSeconds);
+ Aws::Endpoint::AWSEndpoint& endpoint = computeEndpointOutcome.GetResult();
+ URI uri(endpoint.GetURL());
+ uri.SetPath(uri.GetPath() + "/" + key);
+ endpoint.SetURL(uri.GetURIString());
+ return AWSClient::GeneratePresignedUrl(endpoint, method, customizedHeaders, expirationInSeconds);
}
-Aws::String S3Client::GeneratePresignedUrlWithSSES3(const Aws::String& bucket, const Aws::String& key, Aws::Http::HttpMethod method, long long expirationInSeconds)
+Aws::String S3Client::GeneratePresignedUrlWithSSES3(const Aws::String& bucket,
+ const Aws::String& key,
+ Aws::Http::HttpMethod method,
+ uint64_t expirationInSeconds)
{
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(bucket);
- if (!computeEndpointOutcome.IsSuccess())
- {
- AWS_LOGSTREAM_ERROR(ALLOCATION_TAG, "Presigned URL generating failed. Encountered error: " << computeEndpointOutcome.GetError());
- return {};
- }
- Aws::StringStream ss;
- ss << computeEndpointOutcome.GetResult().endpoint << "/" << key;
- URI uri(ss.str());
Aws::Http::HeaderValueCollection headers;
headers.emplace(Aws::S3::SSEHeaders::SERVER_SIDE_ENCRYPTION, Aws::S3::Model::ServerSideEncryptionMapper::GetNameForServerSideEncryption(Aws::S3::Model::ServerSideEncryption::AES256));
- return AWSClient::GeneratePresignedUrl(uri, method, computeEndpointOutcome.GetResult().signerRegion.c_str(), computeEndpointOutcome.GetResult().signerServiceName.c_str(), headers, expirationInSeconds);
+ return GeneratePresignedUrl(bucket, key, method, headers, expirationInSeconds);
}
-Aws::String S3Client::GeneratePresignedUrlWithSSES3(const Aws::String& bucket, const Aws::String& key, Aws::Http::HttpMethod method, Http::HeaderValueCollection customizedHeaders, long long expirationInSeconds)
+Aws::String S3Client::GeneratePresignedUrlWithSSES3(const Aws::String& bucket,
+ const Aws::String& key,
+ Aws::Http::HttpMethod method,
+ Http::HeaderValueCollection customizedHeaders,
+ uint64_t expirationInSeconds)
{
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(bucket);
- if (!computeEndpointOutcome.IsSuccess())
- {
- AWS_LOGSTREAM_ERROR(ALLOCATION_TAG, "Presigned URL generating failed. Encountered error: " << computeEndpointOutcome.GetError());
- return {};
- }
- Aws::StringStream ss;
- ss << computeEndpointOutcome.GetResult().endpoint << "/" << key;
- URI uri(ss.str());
customizedHeaders.emplace(Aws::S3::SSEHeaders::SERVER_SIDE_ENCRYPTION, Aws::S3::Model::ServerSideEncryptionMapper::GetNameForServerSideEncryption(Aws::S3::Model::ServerSideEncryption::AES256));
- return AWSClient::GeneratePresignedUrl(uri, method, computeEndpointOutcome.GetResult().signerRegion.c_str(), computeEndpointOutcome.GetResult().signerServiceName.c_str(), customizedHeaders, expirationInSeconds);
+ return GeneratePresignedUrl(bucket, key, method, customizedHeaders, expirationInSeconds);
}
-Aws::String S3Client::GeneratePresignedUrlWithSSEKMS(const Aws::String& bucket, const Aws::String& key, Aws::Http::HttpMethod method, const Aws::String& kmsMasterKeyId, long long expirationInSeconds)
+Aws::String S3Client::GeneratePresignedUrlWithSSEKMS(const Aws::String& bucket,
+ const Aws::String& key,
+ Aws::Http::HttpMethod method,
+ const Aws::String& kmsMasterKeyId,
+ uint64_t expirationInSeconds)
{
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(bucket);
- if (!computeEndpointOutcome.IsSuccess())
- {
- AWS_LOGSTREAM_ERROR(ALLOCATION_TAG, "Presigned URL generating failed. Encountered error: " << computeEndpointOutcome.GetError());
- return {};
- }
- Aws::StringStream ss;
- ss << computeEndpointOutcome.GetResult().endpoint << "/" << key;
- URI uri(ss.str());
Aws::Http::HeaderValueCollection headers;
headers.emplace(Aws::S3::SSEHeaders::SERVER_SIDE_ENCRYPTION, Aws::S3::Model::ServerSideEncryptionMapper::GetNameForServerSideEncryption(Aws::S3::Model::ServerSideEncryption::aws_kms));
headers.emplace(Aws::S3::SSEHeaders::SERVER_SIDE_ENCRYPTION_AWS_KMS_KEY_ID, kmsMasterKeyId);
- return AWSClient::GeneratePresignedUrl(uri, method, computeEndpointOutcome.GetResult().signerRegion.c_str(), computeEndpointOutcome.GetResult().signerServiceName.c_str(), headers, expirationInSeconds);
+ return GeneratePresignedUrl(bucket, key, method, headers, expirationInSeconds);
}
-Aws::String S3Client::GeneratePresignedUrlWithSSEKMS(const Aws::String& bucket, const Aws::String& key, Aws::Http::HttpMethod method, Http::HeaderValueCollection customizedHeaders, const Aws::String& kmsMasterKeyId, long long expirationInSeconds)
+Aws::String S3Client::GeneratePresignedUrlWithSSEKMS(const Aws::String& bucket,
+ const Aws::String& key,
+ Aws::Http::HttpMethod method,
+ Http::HeaderValueCollection customizedHeaders,
+ const Aws::String& kmsMasterKeyId,
+ uint64_t expirationInSeconds)
{
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(bucket);
- if (!computeEndpointOutcome.IsSuccess())
- {
- AWS_LOGSTREAM_ERROR(ALLOCATION_TAG, "Presigned URL generating failed. Encountered error: " << computeEndpointOutcome.GetError());
- return {};
- }
- Aws::StringStream ss;
- ss << computeEndpointOutcome.GetResult().endpoint << "/" << key;
- URI uri(ss.str());
customizedHeaders.emplace(Aws::S3::SSEHeaders::SERVER_SIDE_ENCRYPTION, Aws::S3::Model::ServerSideEncryptionMapper::GetNameForServerSideEncryption(Aws::S3::Model::ServerSideEncryption::aws_kms));
customizedHeaders.emplace(Aws::S3::SSEHeaders::SERVER_SIDE_ENCRYPTION_AWS_KMS_KEY_ID, kmsMasterKeyId);
- return AWSClient::GeneratePresignedUrl(uri, method, computeEndpointOutcome.GetResult().signerRegion.c_str(), computeEndpointOutcome.GetResult().signerServiceName.c_str(), customizedHeaders, expirationInSeconds);
+ return GeneratePresignedUrl(bucket, key, method, customizedHeaders, expirationInSeconds);
}
-Aws::String S3Client::GeneratePresignedUrlWithSSEC(const Aws::String& bucket, const Aws::String& key, Aws::Http::HttpMethod method, const Aws::String& base64EncodedAES256Key, long long expirationInSeconds)
+Aws::String S3Client::GeneratePresignedUrlWithSSEC(const Aws::String& bucket,
+ const Aws::String& key,
+ Aws::Http::HttpMethod method,
+ const Aws::String& base64EncodedAES256Key,
+ uint64_t expirationInSeconds)
{
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(bucket);
- if (!computeEndpointOutcome.IsSuccess())
- {
- AWS_LOGSTREAM_ERROR(ALLOCATION_TAG, "Presigned URL generating failed. Encountered error: " << computeEndpointOutcome.GetError());
- return {};
- }
- Aws::StringStream ss;
- ss << computeEndpointOutcome.GetResult().endpoint << "/" << key;
- URI uri(ss.str());
Aws::Http::HeaderValueCollection headers;
headers.emplace(Aws::S3::SSEHeaders::SERVER_SIDE_ENCRYPTION_CUSTOMER_ALGORITHM, Aws::S3::Model::ServerSideEncryptionMapper::GetNameForServerSideEncryption(Aws::S3::Model::ServerSideEncryption::AES256));
headers.emplace(Aws::S3::SSEHeaders::SERVER_SIDE_ENCRYPTION_CUSTOMER_KEY, base64EncodedAES256Key);
Aws::Utils::ByteBuffer buffer = Aws::Utils::HashingUtils::Base64Decode(base64EncodedAES256Key);
Aws::String strBuffer(reinterpret_cast<char*>(buffer.GetUnderlyingData()), buffer.GetLength());
headers.emplace(Aws::S3::SSEHeaders::SERVER_SIDE_ENCRYPTION_CUSTOMER_KEY_MD5, Aws::Utils::HashingUtils::Base64Encode(Aws::Utils::HashingUtils::CalculateMD5(strBuffer)));
- return AWSClient::GeneratePresignedUrl(uri, method, computeEndpointOutcome.GetResult().signerRegion.c_str(), computeEndpointOutcome.GetResult().signerServiceName.c_str(), headers, expirationInSeconds);
+ return GeneratePresignedUrl(bucket, key, method, headers, expirationInSeconds);
}
-Aws::String S3Client::GeneratePresignedUrlWithSSEC(const Aws::String& bucket, const Aws::String& key, Aws::Http::HttpMethod method, Http::HeaderValueCollection customizedHeaders, const Aws::String& base64EncodedAES256Key, long long expirationInSeconds)
+Aws::String S3Client::GeneratePresignedUrlWithSSEC(const Aws::String& bucket,
+ const Aws::String& key,
+ Aws::Http::HttpMethod method,
+ Http::HeaderValueCollection customizedHeaders,
+ const Aws::String& base64EncodedAES256Key,
+ uint64_t expirationInSeconds)
{
- ComputeEndpointOutcome computeEndpointOutcome = ComputeEndpointString(bucket);
- if (!computeEndpointOutcome.IsSuccess())
- {
- AWS_LOGSTREAM_ERROR(ALLOCATION_TAG, "Presigned URL generating failed. Encountered error: " << computeEndpointOutcome.GetError());
- return {};
- }
- Aws::StringStream ss;
- ss << computeEndpointOutcome.GetResult().endpoint << "/" << key;
- URI uri(ss.str());
customizedHeaders.emplace(Aws::S3::SSEHeaders::SERVER_SIDE_ENCRYPTION_CUSTOMER_ALGORITHM, Aws::S3::Model::ServerSideEncryptionMapper::GetNameForServerSideEncryption(Aws::S3::Model::ServerSideEncryption::AES256));
customizedHeaders.emplace(Aws::S3::SSEHeaders::SERVER_SIDE_ENCRYPTION_CUSTOMER_KEY, base64EncodedAES256Key);
Aws::Utils::ByteBuffer buffer = Aws::Utils::HashingUtils::Base64Decode(base64EncodedAES256Key);
Aws::String strBuffer(reinterpret_cast<char*>(buffer.GetUnderlyingData()), buffer.GetLength());
customizedHeaders.emplace(Aws::S3::SSEHeaders::SERVER_SIDE_ENCRYPTION_CUSTOMER_KEY_MD5, Aws::Utils::HashingUtils::Base64Encode(Aws::Utils::HashingUtils::CalculateMD5(strBuffer)));
- return AWSClient::GeneratePresignedUrl(uri, method, computeEndpointOutcome.GetResult().signerRegion.c_str(), computeEndpointOutcome.GetResult().signerServiceName.c_str(), customizedHeaders, expirationInSeconds);
+ return GeneratePresignedUrl(bucket, key, method, customizedHeaders, expirationInSeconds);
}
-ComputeEndpointOutcome S3Client::ComputeEndpointString(const Aws::String& bucketOrArn) const
-{
- if (m_useDualStack && m_useCustomEndpoint)
- {
- return ComputeEndpointOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::VALIDATION, "VALIDATION",
- "Dual-stack endpoint is incompatible with a custom endpoint override.", false));
- }
-
- Aws::StringStream ss;
- ss << m_scheme << "://";
- Aws::String bucket = bucketOrArn;
- Aws::String signerRegion = Aws::Region::ComputeSignerRegion(m_region);
- S3ARN arn(bucketOrArn);
-
- if (arn)
- {
- if (!m_useVirtualAddressing)
- {
- return ComputeEndpointOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::VALIDATION, "VALIDATION",
- "Path style addressing is not compatible with Access Point ARN or Outposts ARN in Bucket field, please consider using virtual addressing for this client instead.", false));
- }
-
- S3ARNOutcome s3ArnOutcome = m_useArnRegion ? arn.Validate() : arn.Validate(m_region.c_str());
- if (!s3ArnOutcome.IsSuccess())
- {
- return ComputeEndpointOutcome(s3ArnOutcome.GetError());
- }
- signerRegion = m_useArnRegion ? arn.GetRegion() : signerRegion;
- if (arn.GetService() == ARNService::S3_OBJECT_LAMBDA)
- {
- if (m_useDualStack)
- {
- return ComputeEndpointOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::VALIDATION, "VALIDATION",
- "S3 Object Lambda Access Point ARNs do not support dualstack right now.", false));
- }
- ss << S3Endpoint::ForObjectLambdaAccessPointArn(arn, m_useArnRegion ? "" : m_region, m_useDualStack, m_useCustomEndpoint ? m_baseUri : "");
- return ComputeEndpointOutcome(ComputeEndpointResult(ss.str(), signerRegion, ARNService::S3_OBJECT_LAMBDA));
- }
- else if (arn.GetResourceType() == ARNResourceType::ACCESSPOINT)
- {
- ss << S3Endpoint::ForAccessPointArn(arn, m_useArnRegion ? "" : m_region, m_useDualStack, m_useCustomEndpoint ? m_baseUri : "");
- return ComputeEndpointOutcome(ComputeEndpointResult(ss.str(), signerRegion, SERVICE_NAME));
- }
- else if (arn.GetResourceType() == ARNResourceType::OUTPOST)
- {
- if (m_useDualStack)
- {
- return ComputeEndpointOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::VALIDATION, "VALIDATION",
- "Outposts Access Points do not support dualstack right now.", false));
- }
- ss << S3Endpoint::ForOutpostsArn(arn, m_useArnRegion ? "" : m_region, m_useDualStack, m_useCustomEndpoint ? m_baseUri : "");
- return ComputeEndpointOutcome(ComputeEndpointResult(ss.str(), signerRegion, "s3-outposts"));
- }
- }
-
- // when using virtual hosting of buckets, the bucket name has to follow some rules.
- // Mainly, it has to be a valid DNS label, and it must be lowercase.
- // For more information see http://docs.aws.amazon.com/AmazonS3/latest/dev/VirtualHosting.html#VirtualHostingSpecifyBucket
- if(m_useVirtualAddressing && Aws::Utils::IsValidDnsLabel(bucket) &&
- bucket == Aws::Utils::StringUtils::ToLower(bucket.c_str()))
- {
- ss << bucket << "." << m_baseUri;
- }
- else
- {
- ss << m_baseUri << "/" << bucket;
- }
-
- return ComputeEndpointOutcome(ComputeEndpointResult(ss.str(), signerRegion, SERVICE_NAME));
-}
-
-ComputeEndpointOutcome S3Client::ComputeEndpointString() const
-{
- if (m_useDualStack && m_useCustomEndpoint)
- {
- return ComputeEndpointOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::VALIDATION, "VALIDATION",
- "Dual-stack endpoint is incompatible with a custom endpoint override.", false));
- }
- Aws::StringStream ss;
- ss << m_scheme << "://" << m_baseUri;
- return ComputeEndpointOutcome(ComputeEndpointResult(ss.str(), Aws::Region::ComputeSignerRegion(m_region), SERVICE_NAME));
-}
-
-ComputeEndpointOutcome S3Client::ComputeEndpointStringWithServiceName(const Aws::String& serviceNameOverride) const
-{
- if (serviceNameOverride.empty())
- {
- return ComputeEndpointString();
- }
-
- if (m_useDualStack && m_useCustomEndpoint)
- {
- return ComputeEndpointOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::VALIDATION, "VALIDATION",
- "Dual-stack endpoint is incompatible with a custom endpoint override.", false));
- }
-
- Aws::StringStream ss;
- ss << m_scheme << "://";
- if (m_useCustomEndpoint)
- {
- ss << m_baseUri;
- return ComputeEndpointOutcome(ComputeEndpointResult(ss.str(), Aws::Region::ComputeSignerRegion(m_region), serviceNameOverride));
- }
- else
- {
- if (m_useDualStack)
- {
- return ComputeEndpointOutcome(Aws::Client::AWSError<S3Errors>(S3Errors::VALIDATION, "VALIDATION",
- "S3 Object Lambda endpoints do not support dualstack right now.", false));
- }
- else
- {
- ss << S3Endpoint::ForRegion(m_region, m_useDualStack, true, serviceNameOverride);
- return ComputeEndpointOutcome(ComputeEndpointResult(ss.str(), Aws::Region::ComputeSignerRegion(m_region), serviceNameOverride));
- }
- }
-}
bool S3Client::MultipartUploadSupported() const
{
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3ClientConfiguration.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3ClientConfiguration.cpp
new file mode 100644
index 0000000000..0e379b3dad
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3ClientConfiguration.cpp
@@ -0,0 +1,89 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/S3ClientConfiguration.h>
+
+namespace Aws
+{
+namespace S3
+{
+
+static const char US_EAST_1_REGIONAL_ENDPOINT_ENV_VAR[] = "AWS_S3_US_EAST_1_REGIONAL_ENDPOINT";
+static const char US_EAST_1_REGIONAL_ENDPOINT_CONFIG_VAR[] = "s3_us_east_1_regional_endpoint";
+static const char S3_DISABLE_MULTIREGION_ACCESS_POINTS_ENV_VAR[] = "AWS_S3_DISABLE_MULTIREGION_ACCESS_POINTS";
+static const char S3_DISABLE_MULTIREGION_ACCESS_POINTS_CONFIG_VAR[] = "s3_disable_multiregion_access_points";
+static const char S3_USE_ARN_REGION_ENVIRONMENT_VARIABLE[] = "AWS_S3_USE_ARN_REGION";
+static const char S3_USE_ARN_REGION_CONFIG_FILE_OPTION[] = "s3_use_arn_region";
+
+void S3ClientConfiguration::LoadS3SpecificConfig(const Aws::String& inputProfileName)
+{
+ if (Aws::S3::US_EAST_1_REGIONAL_ENDPOINT_OPTION::NOT_SET == this->useUSEast1RegionalEndPointOption)
+ {
+ const Aws::String& useUSEastOption =
+ BaseClientConfigClass::LoadConfigFromEnvOrProfile(US_EAST_1_REGIONAL_ENDPOINT_ENV_VAR,
+ inputProfileName,
+ US_EAST_1_REGIONAL_ENDPOINT_CONFIG_VAR,
+ {"legacy", "regional"},
+ "regional");
+ if (useUSEastOption == "legacy") {
+ this->useUSEast1RegionalEndPointOption = Aws::S3::US_EAST_1_REGIONAL_ENDPOINT_OPTION::LEGACY;
+ } else {
+ this->useUSEast1RegionalEndPointOption = Aws::S3::US_EAST_1_REGIONAL_ENDPOINT_OPTION::REGIONAL;
+ }
+ }
+
+ Aws::String s3DisableMultiRegionAccessPoints = ClientConfiguration::LoadConfigFromEnvOrProfile(S3_DISABLE_MULTIREGION_ACCESS_POINTS_ENV_VAR,
+ inputProfileName,
+ S3_DISABLE_MULTIREGION_ACCESS_POINTS_CONFIG_VAR,
+ {"true", "false"},
+ "false");
+ if (s3DisableMultiRegionAccessPoints == "true")
+ {
+ disableMultiRegionAccessPoints = true;
+ }
+ Aws::String useArnRegionCfg = ClientConfiguration::LoadConfigFromEnvOrProfile(S3_USE_ARN_REGION_ENVIRONMENT_VARIABLE,
+ inputProfileName,
+ S3_USE_ARN_REGION_CONFIG_FILE_OPTION,
+ {"true", "false"},
+ "false");
+ if (useArnRegionCfg == "true")
+ {
+ useArnRegion = true;
+ }
+}
+
+S3ClientConfiguration::S3ClientConfiguration()
+: BaseClientConfigClass()
+{
+ LoadS3SpecificConfig(this->profileName);
+}
+
+S3ClientConfiguration::S3ClientConfiguration(const char* inputProfileName, bool shouldDisableIMDS)
+: BaseClientConfigClass(inputProfileName, shouldDisableIMDS)
+{
+ LoadS3SpecificConfig(Aws::String(inputProfileName));
+}
+
+S3ClientConfiguration::S3ClientConfiguration(bool useSmartDefaults, const char* defaultMode, bool shouldDisableIMDS)
+: BaseClientConfigClass(useSmartDefaults, defaultMode, shouldDisableIMDS)
+{
+ LoadS3SpecificConfig(this->profileName);
+}
+
+S3ClientConfiguration::S3ClientConfiguration(const Client::ClientConfiguration& config,
+ Client::AWSAuthV4Signer::PayloadSigningPolicy iPayloadSigningPolicy,
+ bool iUseVirtualAddressing,
+ US_EAST_1_REGIONAL_ENDPOINT_OPTION iUseUSEast1RegionalEndPointOption)
+ : BaseClientConfigClass(config),
+ useVirtualAddressing(iUseVirtualAddressing),
+ useUSEast1RegionalEndPointOption(iUseUSEast1RegionalEndPointOption),
+ payloadSigningPolicy(iPayloadSigningPolicy)
+{
+ LoadS3SpecificConfig(this->profileName);
+}
+
+
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Endpoint.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Endpoint.cpp
deleted file mode 100644
index d684a11a44..0000000000
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Endpoint.cpp
+++ /dev/null
@@ -1,221 +0,0 @@
-/**
- * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
- * SPDX-License-Identifier: Apache-2.0.
- */
-
-#include <aws/s3/S3Endpoint.h>
-#include <aws/core/utils/memory/stl/AWSStringStream.h>
-#include <aws/core/utils/HashingUtils.h>
-
-using namespace Aws;
-using namespace Aws::S3;
-
-namespace Aws
-{
-namespace S3
-{
-namespace S3Endpoint
-{
- static const int CN_NORTH_1_HASH = Aws::Utils::HashingUtils::HashString("cn-north-1");
- static const int CN_NORTHWEST_1_HASH = Aws::Utils::HashingUtils::HashString("cn-northwest-1");
- static const int US_ISO_EAST_1_HASH = Aws::Utils::HashingUtils::HashString("us-iso-east-1");
- static const int US_ISOB_EAST_1_HASH = Aws::Utils::HashingUtils::HashString("us-isob-east-1");
-
- static const int FIPS_US_GOV_WEST_1_HASH = Aws::Utils::HashingUtils::HashString("fips-us-gov-west-1");
- static const int US_GOV_WEST_1_HASH = Aws::Utils::HashingUtils::HashString("us-gov-west-1");
- static const int US_GOV_EAST_1_HASH = Aws::Utils::HashingUtils::HashString("us-gov-east-1");
- static const int S3_EXTERNAL_1_HASH = Aws::Utils::HashingUtils::HashString("s3-external-1");
- static const int US_EAST_1_HASH = Aws::Utils::HashingUtils::HashString("us-east-1");
- static const int AWS_GLOBAL_HASH = Aws::Utils::HashingUtils::HashString("aws-global");
-
- Aws::String ForAccessPointArn(const S3ARN& arn, const Aws::String& regionNameOverride, bool useDualStack, const Aws::String& endpointOverride)
- {
- Aws::StringStream ss;
-
- if (!endpointOverride.empty())
- {
- ss << arn.GetResourceId() << "-" << arn.GetAccountId() << "." << endpointOverride;
- return ss.str();
- }
-
- const Aws::String& region = regionNameOverride.empty() ? arn.GetRegion() : regionNameOverride;
- auto hash = Aws::Utils::HashingUtils::HashString(region.c_str());
-
- ss << arn.GetResourceId() << "-" << arn.GetAccountId() << ".s3-accesspoint.";
- if (useDualStack)
- {
- ss << "dualstack.";
- }
- ss << region << "." << "amazonaws.com";
-
- if (hash == CN_NORTH_1_HASH || hash == CN_NORTHWEST_1_HASH)
- {
- ss << ".cn";
- }
-
- return ss.str();
- }
-
- Aws::String ForOutpostsArn(const S3ARN& arn, const Aws::String& regionNameOverride, bool useDualStack, const Aws::String& endpointOverride)
- {
- AWS_UNREFERENCED_PARAM(useDualStack);
- assert(!useDualStack);
- Aws::StringStream ss;
-
- if (!endpointOverride.empty())
- {
- ss << arn.GetSubResourceId() << "-" << arn.GetAccountId() << "." << arn.GetResourceId() << "." << endpointOverride;
- return ss.str();
- }
-
- const Aws::String& region = regionNameOverride.empty() ? arn.GetRegion() : regionNameOverride;
- auto hash = Aws::Utils::HashingUtils::HashString(region.c_str());
-
- ss << arn.GetSubResourceId() << "-" << arn.GetAccountId() << "." << arn.GetResourceId() << "." << ARNService::S3_OUTPOSTS << "." << region << "." << "amazonaws.com";
-
- if (hash == CN_NORTH_1_HASH || hash == CN_NORTHWEST_1_HASH)
- {
- ss << ".cn";
- }
-
- return ss.str();
- }
-
- Aws::String ForObjectLambdaAccessPointArn(const S3ARN& arn, const Aws::String& regionNameOverride, bool useDualStack, const Aws::String& endpointOverride)
- {
- AWS_UNREFERENCED_PARAM(useDualStack);
- assert(!useDualStack);
- Aws::StringStream ss;
-
- if (!endpointOverride.empty())
- {
- ss << arn.GetResourceId() << "-" << arn.GetAccountId() << "." << endpointOverride;
- return ss.str();
- }
-
- Aws::String region = regionNameOverride.empty() ? arn.GetRegion() : regionNameOverride;
- Aws::String fipsSuffix = "";
- if (region.size() >= 5 && region.compare(0, 5, "fips-") == 0)
- {
- region = region.substr(5);
- fipsSuffix = "-fips";
- }
- else if (region.size() >= 5 && region.compare(region.size() - 5, 5, "-fips") == 0)
- {
- region = region.substr(0, region.size() - 5);
- fipsSuffix = "-fips";
- }
-
- ss << arn.GetResourceId() << "-" << arn.GetAccountId() << "." << ARNService::S3_OBJECT_LAMBDA << fipsSuffix << "." << region << "." << "amazonaws.com";
-
- auto hash = Aws::Utils::HashingUtils::HashString(region.c_str());
- if (hash == CN_NORTH_1_HASH || hash == CN_NORTHWEST_1_HASH)
- {
- ss << ".cn";
- }
-
- return ss.str();
- }
-
- Aws::String ForRegion(const Aws::String& regionName, bool useDualStack, bool USEast1UseRegionalEndpoint, const Aws::String& serviceName)
- {
- auto hash = Aws::Utils::HashingUtils::HashString(regionName.c_str());
-
- if (!serviceName.empty())
- {
- assert(!useDualStack);
-
- Aws::StringStream ss;
- ss << serviceName;
-
- if (regionName.size() >= 5 && regionName.compare(0, 5, "fips-") == 0)
- {
- ss << "-fips." << regionName.substr(5);
- }
- else if (regionName.size() >= 5 && regionName.compare(regionName.size() - 5, 5, "-fips") == 0)
- {
- ss << "-fips." << regionName.substr(0, regionName.size() - 5);
- }
- else if (hash == AWS_GLOBAL_HASH || hash == S3_EXTERNAL_1_HASH)
- {
- ss << "." << Aws::Region::US_EAST_1;
- }
- else
- {
- ss << "." << regionName;
- }
- ss << ".amazonaws.com";
- if (hash == CN_NORTH_1_HASH || hash == CN_NORTHWEST_1_HASH)
- {
- ss << ".cn";
- }
- return ss.str();
- }
-
- if(!useDualStack)
- {
- if(hash == FIPS_US_GOV_WEST_1_HASH)
- {
- return "s3-fips-us-gov-west-1.amazonaws.com";
- }
- if(hash == US_GOV_WEST_1_HASH)
- {
- return "s3.us-gov-west-1.amazonaws.com";
- }
- if(hash == US_GOV_EAST_1_HASH)
- {
- return "s3.us-gov-east-1.amazonaws.com";
- }
- if (hash == AWS_GLOBAL_HASH)
- {
- return "s3.amazonaws.com";
- }
- if (hash == S3_EXTERNAL_1_HASH)
- {
- return "s3-external-1.amazonaws.com";
- }
- if(hash == US_EAST_1_HASH)
- {
- if (USEast1UseRegionalEndpoint)
- {
- return "s3.us-east-1.amazonaws.com";
- }
- else
- {
- return "s3.amazonaws.com";
- }
- }
- }
- Aws::StringStream ss;
- ss << "s3" << ".";
-
- if(useDualStack)
- {
- ss << "dualstack.";
- }
-
- ss << regionName;
-
- if (hash == CN_NORTH_1_HASH || hash == CN_NORTHWEST_1_HASH)
- {
- ss << ".amazonaws.com.cn";
- }
- else if (hash == US_ISO_EAST_1_HASH)
- {
- ss << ".c2s.ic.gov";
- }
- else if (hash == US_ISOB_EAST_1_HASH)
- {
- ss << ".sc2s.sgov.gov";
- }
- else
- {
- ss << ".amazonaws.com";
- }
-
- return ss.str();
- }
-
-} // namespace S3Endpoint
-} // namespace S3
-} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3EndpointProvider.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3EndpointProvider.cpp
new file mode 100644
index 0000000000..32803417d4
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3EndpointProvider.cpp
@@ -0,0 +1,72 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/S3EndpointProvider.h>
+
+namespace Aws
+{
+namespace S3
+{
+namespace Endpoint
+{
+ void S3ClientContextParameters::SetForcePathStyle(bool value)
+ {
+ return SetBooleanParameter(Aws::String("ForcePathStyle"), value);
+ }
+ const S3ClientContextParameters::ClientContextParameters::EndpointParameter& S3ClientContextParameters::GetForcePathStyle() const
+ {
+ return GetParameter("ForcePathStyle");
+ }
+ void S3ClientContextParameters::SetDisableMultiRegionAccessPoints(bool value)
+ {
+ return SetBooleanParameter(Aws::String("DisableMultiRegionAccessPoints"), value);
+ }
+ const S3ClientContextParameters::ClientContextParameters::EndpointParameter& S3ClientContextParameters::GetDisableMultiRegionAccessPoints() const
+ {
+ return GetParameter("DisableMultiRegionAccessPoints");
+ }
+ void S3ClientContextParameters::SetUseArnRegion(bool value)
+ {
+ return SetBooleanParameter(Aws::String("UseArnRegion"), value);
+ }
+ const S3ClientContextParameters::ClientContextParameters::EndpointParameter& S3ClientContextParameters::GetUseArnRegion() const
+ {
+ return GetParameter("UseArnRegion");
+ }
+ void S3ClientContextParameters::SetAccelerate(bool value)
+ {
+ return SetBooleanParameter(Aws::String("Accelerate"), value);
+ }
+ const S3ClientContextParameters::ClientContextParameters::EndpointParameter& S3ClientContextParameters::GetAccelerate() const
+ {
+ return GetParameter("Accelerate");
+ }
+ void S3BuiltInParameters::SetFromClientConfiguration(const S3ClientConfiguration& config)
+ {
+ SetFromClientConfiguration(static_cast<const S3ClientConfiguration::BaseClientConfigClass&>(config));
+
+ static const char* AWS_S3_USE_GLOBAL_ENDPOINT = "UseGlobalEndpoint";
+ if (config.useUSEast1RegionalEndPointOption == US_EAST_1_REGIONAL_ENDPOINT_OPTION::LEGACY) {
+ SetBooleanParameter(AWS_S3_USE_GLOBAL_ENDPOINT, true);
+ }
+
+ // Not supported by this SDK:
+ // static const char* AWS_S3_ACCELERATE = "Accelerate";
+ // static const char* AWS_S3_FORCE_PATH_STYLE = "ForcePathStyle";
+
+ static const char* AWS_S3_USE_ARN_REGION = "UseArnRegion";
+ SetBooleanParameter(AWS_S3_USE_ARN_REGION, config.useArnRegion);
+
+ static const char* AWS_S3_DISABLE_MRAP = "DisableMultiRegionAccessPoints";
+ SetBooleanParameter(AWS_S3_DISABLE_MRAP, config.disableMultiRegionAccessPoints);
+
+ static const char* AWS_S3_FORCE_PATH_STYLE = "ForcePathStyle";
+ if (!config.useVirtualAddressing) {
+ SetBooleanParameter(AWS_S3_FORCE_PATH_STYLE, true);
+ }
+ }
+} // namespace Endpoint
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3EndpointRules.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3EndpointRules.cpp
new file mode 100644
index 0000000000..d855b8910f
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3EndpointRules.cpp
@@ -0,0 +1,4191 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/S3EndpointRules.h>
+#include <aws/core/utils/memory/stl/AWSArray.h>
+
+namespace Aws
+{
+namespace S3
+{
+const size_t S3EndpointRules::RulesBlobStrLen = 104103;
+const size_t S3EndpointRules::RulesBlobSize = 104104;
+
+using RulesBlobT = Aws::Array<const char, S3EndpointRules::RulesBlobSize>;
+static constexpr RulesBlobT RulesBlob = {{
+'{','"','v','e','r','s','i','o','n','"',':','"','1','.','0','"',',','"','p','a','r','a','m','e','t',
+'e','r','s','"',':','{','"','B','u','c','k','e','t','"',':','{','"','r','e','q','u','i','r','e','d',
+'"',':','f','a','l','s','e',',','"','d','o','c','u','m','e','n','t','a','t','i','o','n','"',':','"',
+'T','h','e',' ','S','3',' ','b','u','c','k','e','t',' ','u','s','e','d',' ','t','o',' ','s','e','n',
+'d',' ','t','h','e',' ','r','e','q','u','e','s','t','.',' ','T','h','i','s',' ','i','s',' ','a','n',
+' ','o','p','t','i','o','n','a','l',' ','p','a','r','a','m','e','t','e','r',' ','t','h','a','t',' ',
+'w','i','l','l',' ','b','e',' ','s','e','t',' ','a','u','t','o','m','a','t','i','c','a','l','l','y',
+' ','f','o','r',' ','o','p','e','r','a','t','i','o','n','s',' ','t','h','a','t',' ','a','r','e',' ',
+'s','c','o','p','e','d',' ','t','o',' ','a','n',' ','S','3',' ','b','u','c','k','e','t','.','"',',',
+'"','t','y','p','e','"',':','"','S','t','r','i','n','g','"','}',',','"','R','e','g','i','o','n','"',
+':','{','"','b','u','i','l','t','I','n','"',':','"','A','W','S',':',':','R','e','g','i','o','n','"',
+',','"','r','e','q','u','i','r','e','d','"',':','f','a','l','s','e',',','"','d','o','c','u','m','e',
+'n','t','a','t','i','o','n','"',':','"','T','h','e',' ','A','W','S',' ','r','e','g','i','o','n',' ',
+'u','s','e','d',' ','t','o',' ','d','i','s','p','a','t','c','h',' ','t','h','e',' ','r','e','q','u',
+'e','s','t','.','"',',','"','t','y','p','e','"',':','"','S','t','r','i','n','g','"','}',',','"','U',
+'s','e','F','I','P','S','"',':','{','"','b','u','i','l','t','I','n','"',':','"','A','W','S',':',':',
+'U','s','e','F','I','P','S','"',',','"','r','e','q','u','i','r','e','d','"',':','t','r','u','e',',',
+'"','d','e','f','a','u','l','t','"',':','f','a','l','s','e',',','"','d','o','c','u','m','e','n','t',
+'a','t','i','o','n','"',':','"','W','h','e','n',' ','t','r','u','e',',',' ','s','e','n','d',' ','t',
+'h','i','s',' ','r','e','q','u','e','s','t',' ','t','o',' ','t','h','e',' ','F','I','P','S','-','c',
+'o','m','p','l','i','a','n','t',' ','r','e','g','i','o','n','a','l',' ','e','n','d','p','o','i','n',
+'t','.',' ','I','f',' ','t','h','e',' ','c','o','n','f','i','g','u','r','e','d',' ','e','n','d','p',
+'o','i','n','t',' ','d','o','e','s',' ','n','o','t',' ','h','a','v','e',' ','a',' ','F','I','P','S',
+' ','c','o','m','p','l','i','a','n','t',' ','e','n','d','p','o','i','n','t',',',' ','d','i','s','p',
+'a','t','c','h','i','n','g',' ','t','h','e',' ','r','e','q','u','e','s','t',' ','w','i','l','l',' ',
+'r','e','t','u','r','n',' ','a','n',' ','e','r','r','o','r','.','"',',','"','t','y','p','e','"',':',
+'"','B','o','o','l','e','a','n','"','}',',','"','U','s','e','D','u','a','l','S','t','a','c','k','"',
+':','{','"','b','u','i','l','t','I','n','"',':','"','A','W','S',':',':','U','s','e','D','u','a','l',
+'S','t','a','c','k','"',',','"','r','e','q','u','i','r','e','d','"',':','t','r','u','e',',','"','d',
+'e','f','a','u','l','t','"',':','f','a','l','s','e',',','"','d','o','c','u','m','e','n','t','a','t',
+'i','o','n','"',':','"','W','h','e','n',' ','t','r','u','e',',',' ','u','s','e',' ','t','h','e',' ',
+'d','u','a','l','-','s','t','a','c','k',' ','e','n','d','p','o','i','n','t','.',' ','I','f',' ','t',
+'h','e',' ','c','o','n','f','i','g','u','r','e','d',' ','e','n','d','p','o','i','n','t',' ','d','o',
+'e','s',' ','n','o','t',' ','s','u','p','p','o','r','t',' ','d','u','a','l','-','s','t','a','c','k',
+',',' ','d','i','s','p','a','t','c','h','i','n','g',' ','t','h','e',' ','r','e','q','u','e','s','t',
+' ','M','A','Y',' ','r','e','t','u','r','n',' ','a','n',' ','e','r','r','o','r','.','"',',','"','t',
+'y','p','e','"',':','"','B','o','o','l','e','a','n','"','}',',','"','E','n','d','p','o','i','n','t',
+'"',':','{','"','b','u','i','l','t','I','n','"',':','"','S','D','K',':',':','E','n','d','p','o','i',
+'n','t','"',',','"','r','e','q','u','i','r','e','d','"',':','f','a','l','s','e',',','"','d','o','c',
+'u','m','e','n','t','a','t','i','o','n','"',':','"','O','v','e','r','r','i','d','e',' ','t','h','e',
+' ','e','n','d','p','o','i','n','t',' ','u','s','e','d',' ','t','o',' ','s','e','n','d',' ','t','h',
+'i','s',' ','r','e','q','u','e','s','t','"',',','"','t','y','p','e','"',':','"','S','t','r','i','n',
+'g','"','}',',','"','F','o','r','c','e','P','a','t','h','S','t','y','l','e','"',':','{','"','b','u',
+'i','l','t','I','n','"',':','"','A','W','S',':',':','S','3',':',':','F','o','r','c','e','P','a','t',
+'h','S','t','y','l','e','"',',','"','r','e','q','u','i','r','e','d','"',':','f','a','l','s','e',',',
+'"','d','o','c','u','m','e','n','t','a','t','i','o','n','"',':','"','W','h','e','n',' ','t','r','u',
+'e',',',' ','f','o','r','c','e',' ','a',' ','p','a','t','h','-','s','t','y','l','e',' ','e','n','d',
+'p','o','i','n','t',' ','t','o',' ','b','e',' ','u','s','e','d',' ','w','h','e','r','e',' ','t','h',
+'e',' ','b','u','c','k','e','t',' ','n','a','m','e',' ','i','s',' ','p','a','r','t',' ','o','f',' ',
+'t','h','e',' ','p','a','t','h','.','"',',','"','t','y','p','e','"',':','"','B','o','o','l','e','a',
+'n','"','}',',','"','A','c','c','e','l','e','r','a','t','e','"',':','{','"','b','u','i','l','t','I',
+'n','"',':','"','A','W','S',':',':','S','3',':',':','A','c','c','e','l','e','r','a','t','e','"',',',
+'"','r','e','q','u','i','r','e','d','"',':','t','r','u','e',',','"','d','e','f','a','u','l','t','"',
+':','f','a','l','s','e',',','"','d','o','c','u','m','e','n','t','a','t','i','o','n','"',':','"','W',
+'h','e','n',' ','t','r','u','e',',',' ','u','s','e',' ','S','3',' ','A','c','c','e','l','e','r','a',
+'t','e','.',' ','N','O','T','E',':',' ','N','o','t',' ','a','l','l',' ','r','e','g','i','o','n','s',
+' ','s','u','p','p','o','r','t',' ','S','3',' ','a','c','c','e','l','e','r','a','t','e','.','"',',',
+'"','t','y','p','e','"',':','"','B','o','o','l','e','a','n','"','}',',','"','U','s','e','G','l','o',
+'b','a','l','E','n','d','p','o','i','n','t','"',':','{','"','b','u','i','l','t','I','n','"',':','"',
+'A','W','S',':',':','S','3',':',':','U','s','e','G','l','o','b','a','l','E','n','d','p','o','i','n',
+'t','"',',','"','r','e','q','u','i','r','e','d','"',':','t','r','u','e',',','"','d','e','f','a','u',
+'l','t','"',':','f','a','l','s','e',',','"','d','o','c','u','m','e','n','t','a','t','i','o','n','"',
+':','"','W','h','e','t','h','e','r',' ','t','h','e',' ','g','l','o','b','a','l',' ','e','n','d','p',
+'o','i','n','t',' ','s','h','o','u','l','d',' ','b','e',' ','u','s','e','d',',',' ','r','a','t','h',
+'e','r',' ','t','h','e','n',' ','t','h','e',' ','r','e','g','i','o','n','a','l',' ','e','n','d','p',
+'o','i','n','t',' ','f','o','r',' ','u','s','-','e','a','s','t','-','1','.','"',',','"','t','y','p',
+'e','"',':','"','B','o','o','l','e','a','n','"','}',',','"','U','s','e','O','b','j','e','c','t','L',
+'a','m','b','d','a','E','n','d','p','o','i','n','t','"',':','{','"','r','e','q','u','i','r','e','d',
+'"',':','f','a','l','s','e',',','"','d','o','c','u','m','e','n','t','a','t','i','o','n','"',':','"',
+'I','n','t','e','r','n','a','l',' ','p','a','r','a','m','e','t','e','r',' ','t','o',' ','u','s','e',
+' ','o','b','j','e','c','t',' ','l','a','m','b','d','a',' ','e','n','d','p','o','i','n','t',' ','f',
+'o','r',' ','a','n',' ','o','p','e','r','a','t','i','o','n',' ','(','e','g',':',' ','W','r','i','t',
+'e','G','e','t','O','b','j','e','c','t','R','e','s','p','o','n','s','e',')','"',',','"','t','y','p',
+'e','"',':','"','B','o','o','l','e','a','n','"','}',',','"','D','i','s','a','b','l','e','A','c','c',
+'e','s','s','P','o','i','n','t','s','"',':','{','"','r','e','q','u','i','r','e','d','"',':','f','a',
+'l','s','e',',','"','d','o','c','u','m','e','n','t','a','t','i','o','n','"',':','"','I','n','t','e',
+'r','n','a','l',' ','p','a','r','a','m','e','t','e','r',' ','t','o',' ','d','i','s','a','b','l','e',
+' ','A','c','c','e','s','s',' ','P','o','i','n','t',' ','B','u','c','k','e','t','s','"',',','"','t',
+'y','p','e','"',':','"','B','o','o','l','e','a','n','"','}',',','"','D','i','s','a','b','l','e','M',
+'u','l','t','i','R','e','g','i','o','n','A','c','c','e','s','s','P','o','i','n','t','s','"',':','{',
+'"','b','u','i','l','t','I','n','"',':','"','A','W','S',':',':','S','3',':',':','D','i','s','a','b',
+'l','e','M','u','l','t','i','R','e','g','i','o','n','A','c','c','e','s','s','P','o','i','n','t','s',
+'"',',','"','r','e','q','u','i','r','e','d','"',':','t','r','u','e',',','"','d','e','f','a','u','l',
+'t','"',':','f','a','l','s','e',',','"','d','o','c','u','m','e','n','t','a','t','i','o','n','"',':',
+'"','W','h','e','t','h','e','r',' ','m','u','l','t','i','-','r','e','g','i','o','n',' ','a','c','c',
+'e','s','s',' ','p','o','i','n','t','s',' ','(','M','R','A','P',')',' ','s','h','o','u','l','d',' ',
+'b','e',' ','d','i','s','a','b','l','e','d','.','"',',','"','t','y','p','e','"',':','"','B','o','o',
+'l','e','a','n','"','}',',','"','U','s','e','A','r','n','R','e','g','i','o','n','"',':','{','"','b',
+'u','i','l','t','I','n','"',':','"','A','W','S',':',':','S','3',':',':','U','s','e','A','r','n','R',
+'e','g','i','o','n','"',',','"','r','e','q','u','i','r','e','d','"',':','f','a','l','s','e',',','"',
+'d','o','c','u','m','e','n','t','a','t','i','o','n','"',':','"','W','h','e','n',' ','a','n',' ','A',
+'c','c','e','s','s',' ','P','o','i','n','t',' ','A','R','N',' ','i','s',' ','p','r','o','v','i','d',
+'e','d',' ','a','n','d',' ','t','h','i','s',' ','f','l','a','g',' ','i','s',' ','e','n','a','b','l',
+'e','d',',',' ','t','h','e',' ','S','D','K',' ','M','U','S','T',' ','u','s','e',' ','t','h','e',' ',
+'A','R','N','\'','s',' ','r','e','g','i','o','n',' ','w','h','e','n',' ','c','o','n','s','t','r','u',
+'c','t','i','n','g',' ','t','h','e',' ','e','n','d','p','o','i','n','t',' ','i','n','s','t','e','a',
+'d',' ','o','f',' ','t','h','e',' ','c','l','i','e','n','t','\'','s',' ','c','o','n','f','i','g','u',
+'r','e','d',' ','r','e','g','i','o','n','.','"',',','"','t','y','p','e','"',':','"','B','o','o','l',
+'e','a','n','"','}','}',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i',
+'o','n','s','"',':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u',
+'l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n',
+'"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':',
+'"','R','e','g','i','o','n','"','}',']','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e',
+'"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':',
+'[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':',
+'[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','i','s',
+'S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','B','u','c','k',
+'e','t','"','}',']','}',',','{','"','f','n','"',':','"','s','u','b','s','t','r','i','n','g','"',',',
+'"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','B','u','c','k','e','t','"','}',',',
+'4','9',',','5','0',',','t','r','u','e',']',',','"','a','s','s','i','g','n','"',':','"','h','a','r',
+'d','w','a','r','e','T','y','p','e','"','}',',','{','"','f','n','"',':','"','s','u','b','s','t','r',
+'i','n','g','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','B','u','c','k',
+'e','t','"','}',',','8',',','1','2',',','t','r','u','e',']',',','"','a','s','s','i','g','n','"',':',
+'"','r','e','g','i','o','n','P','r','e','f','i','x','"','}',',','{','"','f','n','"',':','"','s','u',
+'b','s','t','r','i','n','g','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"',
+'B','u','c','k','e','t','"','}',',','0',',','7',',','t','r','u','e',']',',','"','a','s','s','i','g',
+'n','"',':','"','a','b','b','a','S','u','f','f','i','x','"','}',',','{','"','f','n','"',':','"','s',
+'u','b','s','t','r','i','n','g','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':',
+'"','B','u','c','k','e','t','"','}',',','3','2',',','4','9',',','t','r','u','e',']',',','"','a','s',
+'s','i','g','n','"',':','"','o','u','t','p','o','s','t','I','d','"','}',',','{','"','f','n','"',':',
+'"','a','w','s','.','p','a','r','t','i','t','i','o','n','"',',','"','a','r','g','v','"',':','[','{',
+'"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',']',',','"','a','s','s','i','g','n','"',
+':','"','r','e','g','i','o','n','P','a','r','t','i','t','i','o','n','"','}',',','{','"','f','n','"',
+':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{',
+'"','r','e','f','"',':','"','a','b','b','a','S','u','f','f','i','x','"','}',',','"','-','-','o','p',
+'-','s','3','"',']','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u',
+'l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n',
+'"',':','"','i','s','V','a','l','i','d','H','o','s','t','L','a','b','e','l','"',',','"','a','r','g',
+'v','"',':','[','{','"','r','e','f','"',':','"','o','u','t','p','o','s','t','I','d','"','}',',','f',
+'a','l','s','e',']','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u',
+'l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','t',
+'y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o',
+'n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','s','t','r','i','n','g','E',
+'q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','h','a',
+'r','d','w','a','r','e','T','y','p','e','"','}',',','"','e','"',']','}',']',',','"','t','y','p','e',
+'"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i',
+'t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a',
+'l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','r','e','g','i','o',
+'n','P','r','e','f','i','x','"','}',',','"','b','e','t','a','"',']','}',']',',','"','t','y','p','e',
+'"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i',
+'t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v',
+'"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[',
+'{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',']','}',']',',','"',
+'e','r','r','o','r','"',':','"','E','x','p','e','c','t','e','d',' ','a',' ','e','n','d','p','o','i',
+'n','t',' ','t','o',' ','b','e',' ','s','p','e','c','i','f','i','e','d',' ','b','u','t',' ','n','o',
+' ','e','n','d','p','o','i','n','t',' ','w','a','s',' ','f','o','u','n','d','"',',','"','t','y','p',
+'e','"',':','"','e','r','r','o','r','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',
+':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{',
+'"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',',','{','"','f','n','"',
+':','"','p','a','r','s','e','U','R','L','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f',
+'"',':','"','E','n','d','p','o','i','n','t','"','}',']',',','"','a','s','s','i','g','n','"',':','"',
+'u','r','l','"','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':',
+'"','h','t','t','p','s',':','/','/','{','B','u','c','k','e','t','}','.','e','c','2','.','{','u','r',
+'l','#','a','u','t','h','o','r','i','t','y','}','"',',','"','p','r','o','p','e','r','t','i','e','s',
+'"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',
+':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':',
+'"','{','R','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':',
+'"','s','3','-','o','u','t','p','o','s','t','s','"',',','"','d','i','s','a','b','l','e','D','o','u',
+'b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a',
+'d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n',
+'t','"','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e',
+'n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/',
+'{','B','u','c','k','e','t','}','.','e','c','2','.','s','3','-','o','u','t','p','o','s','t','s','.',
+'{','R','e','g','i','o','n','}','.','{','r','e','g','i','o','n','P','a','r','t','i','t','i','o','n',
+'#','d','n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',
+':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':',
+'"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"',
+'{','R','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"',
+'s','3','-','o','u','t','p','o','s','t','s','"',',','"','d','i','s','a','b','l','e','D','o','u','b',
+'l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d',
+'e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t',
+'"','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',
+':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{',
+'"','r','e','f','"',':','"','h','a','r','d','w','a','r','e','T','y','p','e','"','}',',','"','o','"',
+']','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',
+':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','s',
+'t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e',
+'f','"',':','"','r','e','g','i','o','n','P','r','e','f','i','x','"','}',',','"','b','e','t','a','"',
+']','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',
+':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','n',
+'o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',
+',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t',
+'"','}',']','}',']','}',']',',','"','e','r','r','o','r','"',':','"','E','x','p','e','c','t','e','d',
+' ','a',' ','e','n','d','p','o','i','n','t',' ','t','o',' ','b','e',' ','s','p','e','c','i','f','i',
+'e','d',' ','b','u','t',' ','n','o',' ','e','n','d','p','o','i','n','t',' ','w','a','s',' ','f','o',
+'u','n','d','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',',','{','"','c','o',
+'n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',',
+'"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"',
+'}',']','}',',','{','"','f','n','"',':','"','p','a','r','s','e','U','R','L','"',',','"','a','r','g',
+'v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']',',','"',
+'a','s','s','i','g','n','"',':','"','u','r','l','"','}',']',',','"','e','n','d','p','o','i','n','t',
+'"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','{','B','u','c','k','e','t',
+'}','.','o','p','-','{','o','u','t','p','o','s','t','I','d','}','.','{','u','r','l','#','a','u','t',
+'h','o','r','i','t','y','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a',
+'u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g',
+'v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','{','R','e','g',
+'i','o','n','}','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','-','o',
+'u','t','p','o','s','t','s','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n',
+'c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',
+':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',']','}',
+',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','n','d','p','o','i',
+'n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','{','B','u','c','k',
+'e','t','}','.','o','p','-','{','o','u','t','p','o','s','t','I','d','}','.','s','3','-','o','u','t',
+'p','o','s','t','s','.','{','R','e','g','i','o','n','}','.','{','r','e','g','i','o','n','P','a','r',
+'t','i','t','i','o','n','#','d','n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e',
+'r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"',
+'n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g',
+'i','o','n','"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n','g','N',
+'a','m','e','"',':','"','s','3','-','o','u','t','p','o','s','t','s','"',',','"','d','i','s','a','b',
+'l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',
+',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n',
+'d','p','o','i','n','t','"','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':',
+'[',']',',','"','e','r','r','o','r','"',':','"','U','n','r','e','c','o','g','n','i','z','e','d',' ',
+'h','a','r','d','w','a','r','e',' ','t','y','p','e',':',' ','\\','"','E','x','p','e','c','t','e','d',
+' ','h','a','r','d','w','a','r','e',' ','t','y','p','e',' ','o',' ','o','r',' ','e',' ','b','u','t',
+' ','g','o','t',' ','{','h','a','r','d','w','a','r','e','T','y','p','e','}','\\','"','"',',','"','t',
+'y','p','e','"',':','"','e','r','r','o','r','"','}',']','}',']','}',',','{','"','c','o','n','d','i',
+'t','i','o','n','s','"',':','[',']',',','"','e','r','r','o','r','"',':','"','I','n','v','a','l','i',
+'d',' ','A','R','N',':',' ','T','h','e',' ','o','u','t','p','o','s','t',' ','I','d',' ','m','u','s',
+'t',' ','o','n','l','y',' ','c','o','n','t','a','i','n',' ','a','-','z',',',' ','A','-','Z',',',' ',
+'0','-','9',' ','a','n','d',' ','`','-','`','.','"',',','"','t','y','p','e','"',':','"','e','r','r',
+'o','r','"','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f',
+'n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','B','u','c','k','e','t','"','}',']','}',']',',','"','t','y','p','e','"',':','"','t','r','e',
+'e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',
+':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{',
+'"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',',','{','"','f','n','"',
+':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','i','s','S',
+'e','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','p','a','r','s','e','U',
+'R','L','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o',
+'i','n','t','"','}',']','}',']','}',']','}',']',',','"','e','r','r','o','r','"',':','"','C','u','s',
+'t','o','m',' ','e','n','d','p','o','i','n','t',' ','`','{','E','n','d','p','o','i','n','t','}','`',
+' ','w','a','s',' ','n','o','t',' ','a',' ','v','a','l','i','d',' ','U','R','I','"',',','"','t','y',
+'p','e','"',':','"','e','r','r','o','r','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s',
+'"',':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s',
+'"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"',
+'i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','F','o',
+'r','c','e','P','a','t','h','S','t','y','l','e','"','}',']','}',',','{','"','f','n','"',':','"','b',
+'o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r',
+'e','f','"',':','"','F','o','r','c','e','P','a','t','h','S','t','y','l','e','"','}',',','t','r','u',
+'e',']','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s',
+'"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','t','y','p','e',
+'"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i',
+'t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','a','w','s','.','p','a','r','s','e','A',
+'r','n','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','B','u','c','k','e',
+'t','"','}',']','}',']',',','"','e','r','r','o','r','"',':','"','P','a','t','h','-','s','t','y','l',
+'e',' ','a','d','d','r','e','s','s','i','n','g',' ','c','a','n','n','o','t',' ','b','e',' ','u','s',
+'e','d',' ','w','i','t','h',' ','A','R','N',' ','b','u','c','k','e','t','s','"',',','"','t','y','p',
+'e','"',':','"','e','r','r','o','r','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',
+':','[','{','"','f','n','"',':','"','u','r','i','E','n','c','o','d','e','"',',','"','a','r','g','v',
+'"',':','[','{','"','r','e','f','"',':','"','B','u','c','k','e','t','"','}',']',',','"','a','s','s',
+'i','g','n','"',':','"','u','r','i','_','e','n','c','o','d','e','d','_','b','u','c','k','e','t','"',
+'}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':',
+'[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o',
+'o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e',
+'f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t','r','u','e',']','}',
+',','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',']',',','"','e','r','r','o',
+'r','"',':','"','C','a','n','n','o','t',' ','s','e','t',' ','d','u','a','l','-','s','t','a','c','k',
+' ','i','n',' ','c','o','m','b','i','n','a','t','i','o','n',' ','w','i','t','h',' ','a',' ','c','u',
+'s','t','o','m',' ','e','n','d','p','o','i','n','t','.','"',',','"','t','y','p','e','"',':','"','e',
+'r','r','o','r','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"',
+'t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c',
+'o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','a','w','s','.','p','a',
+'r','t','i','t','i','o','n','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"',
+'R','e','g','i','o','n','"','}',']',',','"','a','s','s','i','g','n','"',':','"','p','a','r','t','i',
+'t','i','o','n','R','e','s','u','l','t','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e',
+'e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',
+':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',
+':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b',
+'o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r',
+'e','f','"',':','"','A','c','c','e','l','e','r','a','t','e','"','}',',','f','a','l','s','e',']','}',
+']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[',
+'{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','t','y','p','e','"',':','"',
+'t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o',
+'n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s',
+'"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l',
+'S','t','a','c','k','"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','n','o','t',
+'"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"',
+'a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',
+']','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s',
+'"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S',
+'"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q',
+'u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g',
+'i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']',',','"','e','n',
+'d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','s',
+'3','-','f','i','p','s','.','d','u','a','l','s','t','a','c','k','.','u','s','-','e','a','s','t','-',
+'1','.','{','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f',
+'f','i','x','}','/','{','u','r','i','_','e','n','c','o','d','e','d','_','b','u','c','k','e','t','}',
+'"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e',
+'m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i',
+'g','n','i','n','g','R','e','g','i','o','n','"',':','"','u','s','-','e','a','s','t','-','1','"',',',
+'"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b',
+'l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',
+',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n',
+'d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{',
+'"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g',
+'v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"',
+'}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g',
+'v','"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':',
+'[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',']','}',',','{',
+'"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g',
+'v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r','u',
+'e',']','}',',','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',',
+'"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',',
+'"','a','w','s','-','g','l','o','b','a','l','"',']','}',']',',','"','e','n','d','p','o','i','n','t',
+'"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','s','3','-','f','i','p','s',
+'.','d','u','a','l','s','t','a','c','k','.','u','s','-','e','a','s','t','-','1','.','{','p','a','r',
+'t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}','/','{',
+'u','r','i','_','e','n','c','o','d','e','d','_','b','u','c','k','e','t','}','"',',','"','p','r','o',
+'p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[',
+'{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R',
+'e','g','i','o','n','"',':','"','u','s','-','e','a','s','t','-','1','"',',','"','s','i','g','n','i',
+'n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b',
+'l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d',
+'e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t',
+'"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"',
+'b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t','r','u','e',
+']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"',
+'f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f',
+'"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',']','}',',','{','"','f','n','"',':','"',
+'b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r','u','e',']','}',',','{','"',
+'f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"',
+'s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r',
+'e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l',
+'"',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l',
+'s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','G','l','o',
+'b','a','l','E','n','d','p','o','i','n','t','"','}',',','t','r','u','e',']','}',']',',','"','t','y',
+'p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n',
+'d','i','t','i','o','n','s','"',':','[',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"',
+'u','r','l','"',':','"','h','t','t','p','s',':','/','/','s','3','-','f','i','p','s','.','d','u','a',
+'l','s','t','a','c','k','.','{','R','e','g','i','o','n','}','.','{','p','a','r','t','i','t','i','o',
+'n','R','e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}','/','{','u','r','i','_','e',
+'n','c','o','d','e','d','_','b','u','c','k','e','t','}','"',',','"','p','r','o','p','e','r','t','i',
+'e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m',
+'e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n',
+'"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n','g','N','a','m','e',
+'"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o',
+'d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{',
+'}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',']','}',',','{',
+'"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l',
+'e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t','r','u','e',']','}',',','{',
+'"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':',
+'"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E',
+'n','d','p','o','i','n','t','"','}',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l',
+'e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','U','s','e','F','I','P','S','"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':',
+'"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','s','t','r','i',
+'n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':',
+'"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']',
+'}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"',
+'a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','G','l','o','b','a','l','E',
+'n','d','p','o','i','n','t','"','}',',','f','a','l','s','e',']','}',']',',','"','e','n','d','p','o',
+'i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','s','3','-','f',
+'i','p','s','.','d','u','a','l','s','t','a','c','k','.','{','R','e','g','i','o','n','}','.','{','p',
+'a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}',
+'/','{','u','r','i','_','e','n','c','o','d','e','d','_','b','u','c','k','e','t','}','"',',','"','p',
+'r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',
+':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n',
+'g','R','e','g','i','o','n','"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i','g','n',
+'i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u',
+'b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a',
+'d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n',
+'t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':',
+'"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{',
+'"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','f','a','l',
+'s','e',']','}',',','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',
+':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',',','{','"',
+'f','n','"',':','"','p','a','r','s','e','U','R','L','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']',',','"','a','s','s','i','g','n',
+'"',':','"','u','r','l','"','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q',
+'u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e',
+'F','I','P','S','"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','s','t','r','i',
+'n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':',
+'"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']',
+',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','{','u','r','l','#',
+'s','c','h','e','m','e','}',':','/','/','{','u','r','l','#','a','u','t','h','o','r','i','t','y','}',
+'{','u','r','l','#','n','o','r','m','a','l','i','z','e','d','P','a','t','h','}','{','u','r','i','_',
+'e','n','c','o','d','e','d','_','b','u','c','k','e','t','}','"',',','"','p','r','o','p','e','r','t',
+'i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a',
+'m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o',
+'n','"',':','"','u','s','-','e','a','s','t','-','1','"',',','"','s','i','g','n','i','n','g','N','a',
+'m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n',
+'c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',
+':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{',
+'"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l',
+'e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',',',
+'{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r',
+'e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',',','{','"','f','n','"',':','"',
+'p','a','r','s','e','U','R','L','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':',
+'"','E','n','d','p','o','i','n','t','"','}',']',',','"','a','s','s','i','g','n','"',':','"','u','r',
+'l','"','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',
+',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"',
+'}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u',
+'a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i',
+'o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']',',','"','e','n','d',
+'p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','{','u','r','l','#','s','c','h','e','m',
+'e','}',':','/','/','{','u','r','l','#','a','u','t','h','o','r','i','t','y','}','{','u','r','l','#',
+'n','o','r','m','a','l','i','z','e','d','P','a','t','h','}','{','u','r','i','_','e','n','c','o','d',
+'e','d','_','b','u','c','k','e','t','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':',
+'{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"',
+'s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','u',
+'s','-','e','a','s','t','-','1','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"',
+'s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n',
+'g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',',
+'"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d',
+'i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q',
+'u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e',
+'D','u','a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',
+':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"',
+'E','n','d','p','o','i','n','t','"','}',']','}',',','{','"','f','n','"',':','"','p','a','r','s','e',
+'U','R','L','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p',
+'o','i','n','t','"','}',']',',','"','a','s','s','i','g','n','"',':','"','u','r','l','"','}',',','{',
+'"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g',
+'v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r','u',
+'e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{',
+'"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v',
+'"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-',
+'g','l','o','b','a','l','"',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a',
+'n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"',
+'U','s','e','G','l','o','b','a','l','E','n','d','p','o','i','n','t','"','}',',','t','r','u','e',']',
+'}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':',
+'[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','n','d','p','o','i',
+'n','t','"',':','{','"','u','r','l','"',':','"','{','u','r','l','#','s','c','h','e','m','e','}',':',
+'/','/','{','u','r','l','#','a','u','t','h','o','r','i','t','y','}','{','u','r','l','#','n','o','r',
+'m','a','l','i','z','e','d','P','a','t','h','}','{','u','r','i','_','e','n','c','o','d','e','d','_',
+'b','u','c','k','e','t','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a',
+'u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g',
+'v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','{','R','e','g',
+'i','o','n','}','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',',
+'"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t',
+'r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p',
+'e','"',':','"','e','n','d','p','o','i','n','t','"','}',']','}',',','{','"','c','o','n','d','i','t',
+'i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a',
+'l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u',
+'a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"',
+'i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n',
+'d','p','o','i','n','t','"','}',']','}',',','{','"','f','n','"',':','"','p','a','r','s','e','U','R',
+'L','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i',
+'n','t','"','}',']',',','"','a','s','s','i','g','n','"',':','"','u','r','l','"','}',',','{','"','f',
+'n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',
+':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r','u','e',']',
+'}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f',
+'n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':',
+'[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l',
+'o','b','a','l','"',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E',
+'q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s',
+'e','G','l','o','b','a','l','E','n','d','p','o','i','n','t','"','}',',','f','a','l','s','e',']','}',
+']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','{','u','r','l',
+'#','s','c','h','e','m','e','}',':','/','/','{','u','r','l','#','a','u','t','h','o','r','i','t','y',
+'}','{','u','r','l','#','n','o','r','m','a','l','i','z','e','d','P','a','t','h','}','{','u','r','i',
+'_','e','n','c','o','d','e','d','_','b','u','c','k','e','t','}','"',',','"','p','r','o','p','e','r',
+'t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n',
+'a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i',
+'o','n','"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n','g','N','a',
+'m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n',
+'c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',
+':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{',
+'"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l',
+'e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',',',
+'{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',
+':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"',
+'E','n','d','p','o','i','n','t','"','}',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o',
+'l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f',
+'"',':','"','U','s','e','F','I','P','S','"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',
+':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{',
+'"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b',
+'a','l','"',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':',
+'"','h','t','t','p','s',':','/','/','s','3','-','f','i','p','s','.','u','s','-','e','a','s','t','-',
+'1','.','{','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f',
+'f','i','x','}','/','{','u','r','i','_','e','n','c','o','d','e','d','_','b','u','c','k','e','t','}',
+'"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e',
+'m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i',
+'g','n','i','n','g','R','e','g','i','o','n','"',':','"','u','s','-','e','a','s','t','-','1','"',',',
+'"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b',
+'l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',
+',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n',
+'d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{',
+'"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g',
+'v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"',
+'}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r',
+'g','v','"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',
+':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',']','}',',',
+'{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r',
+'g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r',
+'u','e',']','}',',','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',
+',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',
+',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']',',','"','e','n','d','p','o','i','n',
+'t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','s','3','-','f','i','p',
+'s','.','u','s','-','e','a','s','t','-','1','.','{','p','a','r','t','i','t','i','o','n','R','e','s',
+'u','l','t','#','d','n','s','S','u','f','f','i','x','}','/','{','u','r','i','_','e','n','c','o','d',
+'e','d','_','b','u','c','k','e','t','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':',
+'{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"',
+'s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','u',
+'s','-','e','a','s','t','-','1','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"',
+'s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n',
+'g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',',
+'"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d',
+'i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q',
+'u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e',
+'D','u','a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',
+':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','i','s','S',
+'e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o',
+'i','n','t','"','}',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E',
+'q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s',
+'e','F','I','P','S','"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','n','o','t',
+'"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q',
+'u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g',
+'i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']','}',',','{','"',
+'f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v',
+'"',':','[','{','"','r','e','f','"',':','"','U','s','e','G','l','o','b','a','l','E','n','d','p','o',
+'i','n','t','"','}',',','t','r','u','e',']','}',']',',','"','t','y','p','e','"',':','"','t','r','e',
+'e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',
+':','[',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t',
+'t','p','s',':','/','/','s','3','-','f','i','p','s','.','{','R','e','g','i','o','n','}','.','{','p',
+'a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}',
+'/','{','u','r','i','_','e','n','c','o','d','e','d','_','b','u','c','k','e','t','}','"',',','"','p',
+'r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',
+':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n',
+'g','R','e','g','i','o','n','"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i','g','n',
+'i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u',
+'b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a',
+'d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n',
+'t','"','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n',
+'"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':',
+'[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','f',
+'a','l','s','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',
+':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{',
+'"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',']','}',',','{','"','f',
+'n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',
+':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r','u','e',']',
+'}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f',
+'n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':',
+'[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l',
+'o','b','a','l','"',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E',
+'q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s',
+'e','G','l','o','b','a','l','E','n','d','p','o','i','n','t','"','}',',','f','a','l','s','e',']','}',
+']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p',
+'s',':','/','/','s','3','-','f','i','p','s','.','{','R','e','g','i','o','n','}','.','{','p','a','r',
+'t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}','/','{',
+'u','r','i','_','e','n','c','o','d','e','d','_','b','u','c','k','e','t','}','"',',','"','p','r','o',
+'p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[',
+'{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R',
+'e','g','i','o','n','"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n',
+'g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l',
+'e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e',
+'r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"',
+'}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b',
+'o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r',
+'e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t','r','u','e',']',
+'}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f',
+'n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','E','n','d','p','o','i','n','t','"','}',']','}',']','}',',','{','"','f','n','"',':','"','b',
+'o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r',
+'e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','f','a','l','s','e',']','}',',','{','"',
+'f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',
+':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g',
+'l','o','b','a','l','"',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r',
+'l','"',':','"','h','t','t','p','s',':','/','/','s','3','.','d','u','a','l','s','t','a','c','k','.',
+'u','s','-','e','a','s','t','-','1','.','{','p','a','r','t','i','t','i','o','n','R','e','s','u','l',
+'t','#','d','n','s','S','u','f','f','i','x','}','/','{','u','r','i','_','e','n','c','o','d','e','d',
+'_','b','u','c','k','e','t','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"',
+'a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i',
+'g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','u','s','-',
+'e','a','s','t','-','1','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3',
+'"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',
+':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t',
+'y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t',
+'i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a',
+'l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u',
+'a','l','S','t','a','c','k','"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','n',
+'o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',
+',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t',
+'"','}',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a',
+'l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I',
+'P','S','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','s','t','r','i','n',
+'g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"',
+'R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']',',',
+'"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':',
+'/','/','s','3','.','d','u','a','l','s','t','a','c','k','.','u','s','-','e','a','s','t','-','1','.',
+'{','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f','f','i',
+'x','}','/','{','u','r','i','_','e','n','c','o','d','e','d','_','b','u','c','k','e','t','}','"',',',
+'"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e',
+'s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n',
+'i','n','g','R','e','g','i','o','n','"',':','"','u','s','-','e','a','s','t','-','1','"',',','"','s',
+'i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e',
+'D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"',
+'h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p',
+'o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f',
+'n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',
+':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',',
+'t','r','u','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',
+':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{',
+'"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',']','}',',','{','"','f',
+'n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',
+':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','f','a','l','s','e',
+']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"',
+'f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',
+':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g',
+'l','o','b','a','l','"',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n',
+'E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U',
+'s','e','G','l','o','b','a','l','E','n','d','p','o','i','n','t','"','}',',','t','r','u','e',']','}',
+']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[',
+'{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','n','d','p','o','i','n',
+'t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','s','3','.','d','u','a',
+'l','s','t','a','c','k','.','{','R','e','g','i','o','n','}','.','{','p','a','r','t','i','t','i','o',
+'n','R','e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}','/','{','u','r','i','_','e',
+'n','c','o','d','e','d','_','b','u','c','k','e','t','}','"',',','"','p','r','o','p','e','r','t','i',
+'e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m',
+'e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n',
+'"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n','g','N','a','m','e',
+'"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o',
+'d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{',
+'}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',']','}',',','{',
+'"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l',
+'e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t','r','u','e',']','}',',','{',
+'"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':',
+'"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E',
+'n','d','p','o','i','n','t','"','}',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l',
+'e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','U','s','e','F','I','P','S','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',
+':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','s','t','r',
+'i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',
+']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',',
+'"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','G','l','o','b','a','l',
+'E','n','d','p','o','i','n','t','"','}',',','f','a','l','s','e',']','}',']',',','"','e','n','d','p',
+'o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','s','3','.',
+'d','u','a','l','s','t','a','c','k','.','{','R','e','g','i','o','n','}','.','{','p','a','r','t','i',
+'t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}','/','{','u','r',
+'i','_','e','n','c','o','d','e','d','_','b','u','c','k','e','t','}','"',',','"','p','r','o','p','e',
+'r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"',
+'n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g',
+'i','o','n','"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n','g','N',
+'a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E',
+'n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s',
+'"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',',
+'{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o',
+'l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f',
+'"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',
+',','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',',','{','"','f','n','"',':',
+'"','p','a','r','s','e','U','R','L','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','E','n','d','p','o','i','n','t','"','}',']',',','"','a','s','s','i','g','n','"',':','"','u',
+'r','l','"','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s',
+'"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S',
+'"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','s','t','r','i','n','g','E',
+'q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e',
+'g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']',',','"','e',
+'n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','{','u','r','l','#','s','c','h',
+'e','m','e','}',':','/','/','{','u','r','l','#','a','u','t','h','o','r','i','t','y','}','{','u','r',
+'l','#','n','o','r','m','a','l','i','z','e','d','P','a','t','h','}','{','u','r','i','_','e','n','c',
+'o','d','e','d','_','b','u','c','k','e','t','}','"',',','"','p','r','o','p','e','r','t','i','e','s',
+'"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',
+':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':',
+'"','u','s','-','e','a','s','t','-','1','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',
+':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d',
+'i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}',
+'}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o',
+'n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n',
+'E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U',
+'s','e','D','u','a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',',','{','"','f',
+'n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','E','n','d','p','o','i','n','t','"','}',']','}',',','{','"','f','n','"',':','"','p','a','r',
+'s','e','U','R','L','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n',
+'d','p','o','i','n','t','"','}',']',',','"','a','s','s','i','g','n','"',':','"','u','r','l','"','}',
+',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','f',
+'a','l','s','e',']','}',',','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l',
+'s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n',
+'"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']',',','"','e','n','d','p','o',
+'i','n','t','"',':','{','"','u','r','l','"',':','"','{','u','r','l','#','s','c','h','e','m','e','}',
+':','/','/','{','u','r','l','#','a','u','t','h','o','r','i','t','y','}','{','u','r','l','#','n','o',
+'r','m','a','l','i','z','e','d','P','a','t','h','}','{','u','r','i','_','e','n','c','o','d','e','d',
+'_','b','u','c','k','e','t','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"',
+'a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i',
+'g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','u','s','-',
+'e','a','s','t','-','1','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3',
+'"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',
+':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t',
+'y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t',
+'i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a',
+'l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u',
+'a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"',
+'i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n',
+'d','p','o','i','n','t','"','}',']','}',',','{','"','f','n','"',':','"','p','a','r','s','e','U','R',
+'L','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i',
+'n','t','"','}',']',',','"','a','s','s','i','g','n','"',':','"','u','r','l','"','}',',','{','"','f',
+'n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',
+':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','f','a','l','s','e',
+']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"',
+'f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',
+':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g',
+'l','o','b','a','l','"',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n',
+'E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U',
+'s','e','G','l','o','b','a','l','E','n','d','p','o','i','n','t','"','}',',','t','r','u','e',']','}',
+']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[',
+'{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','s','t','r',
+'i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','R','e','g','i','o','n','"','}',',','"','u','s','-','e','a','s','t','-','1','"',']','}',']',
+',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','{','u','r','l','#',
+'s','c','h','e','m','e','}',':','/','/','{','u','r','l','#','a','u','t','h','o','r','i','t','y','}',
+'{','u','r','l','#','n','o','r','m','a','l','i','z','e','d','P','a','t','h','}','{','u','r','i','_',
+'e','n','c','o','d','e','d','_','b','u','c','k','e','t','}','"',',','"','p','r','o','p','e','r','t',
+'i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a',
+'m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o',
+'n','"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n','g','N','a','m',
+'e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c',
+'o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':',
+'{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"',
+'c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','n','d','p','o','i','n','t','"',
+':','{','"','u','r','l','"',':','"','{','u','r','l','#','s','c','h','e','m','e','}',':','/','/','{',
+'u','r','l','#','a','u','t','h','o','r','i','t','y','}','{','u','r','l','#','n','o','r','m','a','l',
+'i','z','e','d','P','a','t','h','}','{','u','r','i','_','e','n','c','o','d','e','d','_','b','u','c',
+'k','e','t','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h',
+'S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',
+',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','{','R','e','g','i','o','n',
+'}','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i',
+'s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e',
+'}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':',
+'"','e','n','d','p','o','i','n','t','"','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n',
+'s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',
+',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S',
+'t','a','c','k','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','i','s','S',
+'e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o',
+'i','n','t','"','}',']','}',',','{','"','f','n','"',':','"','p','a','r','s','e','U','R','L','"',',',
+'"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"',
+'}',']',',','"','a','s','s','i','g','n','"',':','"','u','r','l','"','}',',','{','"','f','n','"',':',
+'"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{',
+'"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','f','a','l','s','e',']','}',',',
+'{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',
+':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{',
+'"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b',
+'a','l','"',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u',
+'a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','G',
+'l','o','b','a','l','E','n','d','p','o','i','n','t','"','}',',','f','a','l','s','e',']','}',']',',',
+'"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','{','u','r','l','#','s',
+'c','h','e','m','e','}',':','/','/','{','u','r','l','#','a','u','t','h','o','r','i','t','y','}','{',
+'u','r','l','#','n','o','r','m','a','l','i','z','e','d','P','a','t','h','}','{','u','r','i','_','e',
+'n','c','o','d','e','d','_','b','u','c','k','e','t','}','"',',','"','p','r','o','p','e','r','t','i',
+'e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m',
+'e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n',
+'"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n','g','N','a','m','e',
+'"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o',
+'d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{',
+'}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c',
+'o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a',
+'n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"',
+'U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',',','{','"',
+'f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"',
+'i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n',
+'d','p','o','i','n','t','"','}',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e',
+'a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':',
+'"','U','s','e','F','I','P','S','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':',
+'"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a',
+'l','"',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"',
+'h','t','t','p','s',':','/','/','s','3','.','{','p','a','r','t','i','t','i','o','n','R','e','s','u',
+'l','t','#','d','n','s','S','u','f','f','i','x','}','/','{','u','r','i','_','e','n','c','o','d','e',
+'d','_','b','u','c','k','e','t','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{',
+'"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s',
+'i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','u','s',
+'-','e','a','s','t','-','1','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s',
+'3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g',
+'"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"',
+'t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i',
+'t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u',
+'a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D',
+'u','a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':',
+'"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','i','s','S','e',
+'t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i',
+'n','t','"','}',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q',
+'u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e',
+'F','I','P','S','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','s','t','r',
+'i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',
+']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p',
+'s',':','/','/','s','3','.','{','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d',
+'n','s','S','u','f','f','i','x','}','/','{','u','r','i','_','e','n','c','o','d','e','d','_','b','u',
+'c','k','e','t','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t',
+'h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4',
+'"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','u','s','-','e','a','s',
+'t','-','1','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"',
+'d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r',
+'u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e',
+'"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n',
+'s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',
+',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S',
+'t','a','c','k','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','n','o','t',
+'"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"',
+'a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',
+']','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s',
+'"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S',
+'"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a',
+'r','g','v','"',':','[','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s',
+'"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"',
+'}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']','}',',','{','"','f','n','"',':',
+'"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{',
+'"','r','e','f','"',':','"','U','s','e','G','l','o','b','a','l','E','n','d','p','o','i','n','t','"',
+'}',',','t','r','u','e',']','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"',
+'r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"',
+'f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',
+':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','u','s','-','e','a',
+'s','t','-','1','"',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l',
+'"',':','"','h','t','t','p','s',':','/','/','s','3','.','{','p','a','r','t','i','t','i','o','n','R',
+'e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}','/','{','u','r','i','_','e','n','c',
+'o','d','e','d','_','b','u','c','k','e','t','}','"',',','"','p','r','o','p','e','r','t','i','e','s',
+'"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',
+':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':',
+'"','{','R','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':',
+'"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i',
+'n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',
+',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n',
+'d','i','t','i','o','n','s','"',':','[',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"',
+'u','r','l','"',':','"','h','t','t','p','s',':','/','/','s','3','.','{','R','e','g','i','o','n','}',
+'.','{','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f','f',
+'i','x','}','/','{','u','r','i','_','e','n','c','o','d','e','d','_','b','u','c','k','e','t','}','"',
+',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m',
+'e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g',
+'n','i','n','g','R','e','g','i','o','n','"',':','"','{','R','e','g','i','o','n','}','"',',','"','s',
+'i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e',
+'D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"',
+'h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p',
+'o','i','n','t','"','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{',
+'"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g',
+'v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"',
+'}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r',
+'g','v','"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',
+':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',']','}',',',
+'{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r',
+'g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','f','a',
+'l','s','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':',
+'[','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r',
+'g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w',
+'s','-','g','l','o','b','a','l','"',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l',
+'e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','U','s','e','G','l','o','b','a','l','E','n','d','p','o','i','n','t','"','}',',','f','a','l',
+'s','e',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"',
+'h','t','t','p','s',':','/','/','s','3','.','{','R','e','g','i','o','n','}','.','{','p','a','r','t',
+'i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}','/','{','u',
+'r','i','_','e','n','c','o','d','e','d','_','b','u','c','k','e','t','}','"',',','"','p','r','o','p',
+'e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{',
+'"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e',
+'g','i','o','n','"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n','g',
+'N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e',
+'E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r',
+'s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',
+']','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','r',
+'r','o','r','"',':','"','P','a','t','h','-','s','t','y','l','e',' ','a','d','d','r','e','s','s','i',
+'n','g',' ','c','a','n','n','o','t',' ','b','e',' ','u','s','e','d',' ','w','i','t','h',' ','S','3',
+' ','A','c','c','e','l','e','r','a','t','e','"',',','"','t','y','p','e','"',':','"','e','r','r','o',
+'r','"','}',']','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',',
+'"','e','r','r','o','r','"',':','"','A',' ','v','a','l','i','d',' ','p','a','r','t','i','t','i','o',
+'n',' ','c','o','u','l','d',' ','n','o','t',' ','b','e',' ','d','e','t','e','r','m','i','n','e','d',
+'"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',']','}',']','}',']','}',']','}',
+',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','a','w',
+'s','.','i','s','V','i','r','t','u','a','l','H','o','s','t','a','b','l','e','S','3','B','u','c','k',
+'e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','B','u','c','k','e',
+'t','"','}',',','f','a','l','s','e',']','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e',
+'"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':',
+'[','{','"','f','n','"',':','"','a','w','s','.','p','a','r','t','i','t','i','o','n','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',']',',','"',
+'a','s','s','i','g','n','"',':','"','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','"',
+'}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':',
+'[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','t','y','p','e','"',':',
+'"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i',
+'o','n','s','"',':','[','{','"','f','n','"',':','"','i','s','V','a','l','i','d','H','o','s','t','L',
+'a','b','e','l','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g',
+'i','o','n','"','}',',','f','a','l','s','e',']','}',']',',','"','t','y','p','e','"',':','"','t','r',
+'e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s',
+'"',':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s',
+'"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"',
+'b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r','u','e',']','}',',','{','"',
+'f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',
+':','[','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v','"',':',
+'[','{','"','r','e','f','"',':','"','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','"',
+'}',',','"','n','a','m','e','"',']','}',',','"','a','w','s','-','c','n','"',']','}',']',',','"','e',
+'r','r','o','r','"',':','"','P','a','r','t','i','t','i','o','n',' ','d','o','e','s',' ','n','o','t',
+' ','s','u','p','p','o','r','t',' ','F','I','P','S','"',',','"','t','y','p','e','"',':','"','e','r',
+'r','o','r','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','t',
+'y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o',
+'n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n',
+'E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','A',
+'c','c','e','l','e','r','a','t','e','"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':',
+'"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{',
+'"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r','u','e',']','}',']',',',
+'"','e','r','r','o','r','"',':','"','A','c','c','e','l','e','r','a','t','e',' ','c','a','n','n','o',
+'t',' ','b','e',' ','u','s','e','d',' ','w','i','t','h',' ','F','I','P','S','"',',','"','t','y','p',
+'e','"',':','"','e','r','r','o','r','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',
+':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',
+':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b',
+'o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r',
+'e','f','"',':','"','A','c','c','e','l','e','r','a','t','e','"','}',',','t','r','u','e',']','}',',',
+'{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g',
+'v','"',':','[','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v',
+'"',':','[','{','"','r','e','f','"',':','"','p','a','r','t','i','t','i','o','n','R','e','s','u','l',
+'t','"','}',',','"','n','a','m','e','"',']','}',',','"','a','w','s','-','c','n','"',']','}',']',',',
+'"','e','r','r','o','r','"',':','"','S','3',' ','A','c','c','e','l','e','r','a','t','e',' ','c','a',
+'n','n','o','t',' ','b','e',' ','u','s','e','d',' ','i','n',' ','t','h','i','s',' ','r','e','g','i',
+'o','n','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',',','{','"','c','o','n',
+'d','i','t','i','o','n','s','"',':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',
+',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',
+'{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r',
+'e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',',','{','"','f','n','"',':','"',
+'b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t','r','u','e',
+']','}',']',',','"','e','r','r','o','r','"',':','"','H','o','s','t',' ','o','v','e','r','r','i','d',
+'e',' ','c','a','n','n','o','t',' ','b','e',' ','c','o','m','b','i','n','e','d',' ','w','i','t','h',
+' ','D','u','a','l','s','t','a','c','k',',',' ','F','I','P','S',',',' ','o','r',' ','S','3',' ','A',
+'c','c','e','l','e','r','a','t','e','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"',
+'}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','t','y','p','e','"',
+':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t',
+'i','o','n','s','"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g',
+'v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',',',
+'{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r',
+'g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r',
+'u','e',']','}',']',',','"','e','r','r','o','r','"',':','"','H','o','s','t',' ','o','v','e','r','r',
+'i','d','e',' ','c','a','n','n','o','t',' ','b','e',' ','c','o','m','b','i','n','e','d',' ','w','i',
+'t','h',' ','D','u','a','l','s','t','a','c','k',',',' ','F','I','P','S',',',' ','o','r',' ','S','3',
+' ','A','c','c','e','l','e','r','a','t','e','"',',','"','t','y','p','e','"',':','"','e','r','r','o',
+'r','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','t','y','p',
+'e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d',
+'i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']',
+'}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"',
+'a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','A','c','c','e','l','e','r','a','t','e',
+'"','}',',','t','r','u','e',']','}',']',',','"','e','r','r','o','r','"',':','"','H','o','s','t',' ',
+'o','v','e','r','r','i','d','e',' ','c','a','n','n','o','t',' ','b','e',' ','c','o','m','b','i','n',
+'e','d',' ','w','i','t','h',' ','D','u','a','l','s','t','a','c','k',',',' ','F','I','P','S',',',' ',
+'o','r',' ','S','3',' ','A','c','c','e','l','e','r','a','t','e','"',',','"','t','y','p','e','"',':',
+'"','e','r','r','o','r','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',
+',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{',
+'"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l',
+'e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t','r','u','e',']','}',',','{',
+'"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g',
+'v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r','u',
+'e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',
+',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','A','c','c','e','l','e','r','a',
+'t','e','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',',
+'"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r',
+'g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',
+']','}',',','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"',
+'a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"',
+'a','w','s','-','g','l','o','b','a','l','"',']','}',']',',','"','e','n','d','p','o','i','n','t','"',
+':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','{','B','u','c','k','e','t','}',
+'.','s','3','-','f','i','p','s','.','d','u','a','l','s','t','a','c','k','.','u','s','-','e','a','s',
+'t','-','1','.','{','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S',
+'u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u',
+'t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v',
+'4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','u','s','-','e','a',
+'s','t','-','1','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',',
+'"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t',
+'r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p',
+'e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o',
+'n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s',
+'"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l',
+'S','t','a','c','k','"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','b','o','o',
+'l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f',
+'"',':','"','U','s','e','F','I','P','S','"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',
+':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[',
+'{','"','r','e','f','"',':','"','A','c','c','e','l','e','r','a','t','e','"','}',',','f','a','l','s',
+'e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{',
+'"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e',
+'f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',']','}',',','{','"','f','n','"',':',
+'"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a',
+'l','"',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"',
+'h','t','t','p','s',':','/','/','{','B','u','c','k','e','t','}','.','s','3','-','f','i','p','s','.',
+'d','u','a','l','s','t','a','c','k','.','u','s','-','e','a','s','t','-','1','.','{','p','a','r','t',
+'i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}','"',',','"',
+'p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s',
+'"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i',
+'n','g','R','e','g','i','o','n','"',':','"','u','s','-','e','a','s','t','-','1','"',',','"','s','i',
+'g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D',
+'o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h',
+'e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o',
+'i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n',
+'"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':',
+'[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t',
+'r','u','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l',
+'s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P',
+'S','"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n',
+'E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','A',
+'c','c','e','l','e','r','a','t','e','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',
+':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','i','s','S',
+'e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o',
+'i','n','t','"','}',']','}',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r',
+'g','v','"',':','[','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',
+',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',
+',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']','}',',','{','"','f','n','"',':','"',
+'b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','U','s','e','G','l','o','b','a','l','E','n','d','p','o','i','n','t','"','}',
+',','t','r','u','e',']','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r',
+'u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"',
+'e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/',
+'/','{','B','u','c','k','e','t','}','.','s','3','-','f','i','p','s','.','d','u','a','l','s','t','a',
+'c','k','.','{','R','e','g','i','o','n','}','.','{','p','a','r','t','i','t','i','o','n','R','e','s',
+'u','l','t','#','d','n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i',
+'e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m',
+'e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n',
+'"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n','g','N','a','m','e',
+'"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o',
+'d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{',
+'}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',']','}',',','{',
+'"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l',
+'e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t','r','u','e',']','}',',','{',
+'"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g',
+'v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r','u',
+'e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',
+',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','A','c','c','e','l','e','r','a',
+'t','e','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',',
+'"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r',
+'g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',
+']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"',
+'f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',
+':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g',
+'l','o','b','a','l','"',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n',
+'E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U',
+'s','e','G','l','o','b','a','l','E','n','d','p','o','i','n','t','"','}',',','f','a','l','s','e',']',
+'}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t',
+'p','s',':','/','/','{','B','u','c','k','e','t','}','.','s','3','-','f','i','p','s','.','d','u','a',
+'l','s','t','a','c','k','.','{','R','e','g','i','o','n','}','.','{','p','a','r','t','i','t','i','o',
+'n','R','e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p',
+'e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{',
+'"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e',
+'g','i','o','n','"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n','g',
+'N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e',
+'E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r',
+'s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',
+',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o',
+'o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e',
+'f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']',
+'}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"',
+'a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',',
+'t','r','u','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a',
+'l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','A','c','c','e','l',
+'e','r','a','t','e','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','n','o',
+'t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',',
+'"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"',
+'}',']','}',']','}',',','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s',
+'"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"',
+'}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']',',','"','e','n','d','p','o','i',
+'n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','{','B','u','c','k',
+'e','t','}','.','s','3','-','f','i','p','s','.','u','s','-','e','a','s','t','-','1','.','{','p','a',
+'r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}','"',
+',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m',
+'e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g',
+'n','i','n','g','R','e','g','i','o','n','"',':','"','u','s','-','e','a','s','t','-','1','"',',','"',
+'s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l',
+'e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',',
+'"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d',
+'p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"',
+'f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v',
+'"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',
+',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q',
+'u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e',
+'F','I','P','S','"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l',
+'e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','A','c','c','e','l','e','r','a','t','e','"','}',',','f','a','l','s','e',']','}',',','{','"',
+'f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"',
+'i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n',
+'d','p','o','i','n','t','"','}',']','}',']','}',',','{','"','f','n','"',':','"','s','t','r','i','n',
+'g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"',
+'R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']',',',
+'"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':',
+'/','/','{','B','u','c','k','e','t','}','.','s','3','-','f','i','p','s','.','u','s','-','e','a','s',
+'t','-','1','.','{','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S',
+'u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u',
+'t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v',
+'4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','u','s','-','e','a',
+'s','t','-','1','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',',
+'"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t',
+'r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p',
+'e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o',
+'n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s',
+'"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l',
+'S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','b','o',
+'o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e',
+'f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r','u','e',']','}',',','{','"','f','n',
+'"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':',
+'[','{','"','r','e','f','"',':','"','A','c','c','e','l','e','r','a','t','e','"','}',',','f','a','l',
+'s','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[',
+'{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r',
+'e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',']','}',',','{','"','f','n','"',
+':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','s','t','r',
+'i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',
+']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',',
+'"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','G','l','o','b','a','l',
+'E','n','d','p','o','i','n','t','"','}',',','t','r','u','e',']','}',']',',','"','t','y','p','e','"',
+':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t',
+'i','o','n','s','"',':','[',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l',
+'"',':','"','h','t','t','p','s',':','/','/','{','B','u','c','k','e','t','}','.','s','3','-','f','i',
+'p','s','.','{','R','e','g','i','o','n','}','.','{','p','a','r','t','i','t','i','o','n','R','e','s',
+'u','l','t','#','d','n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i',
+'e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m',
+'e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n',
+'"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n','g','N','a','m','e',
+'"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o',
+'d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{',
+'}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',']','}',',','{',
+'"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l',
+'e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',',',
+'{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r',
+'g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r',
+'u','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s',
+'"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','A','c','c','e','l','e','r',
+'a','t','e','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',
+',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']',
+'}',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{',
+'"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v',
+'"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-',
+'g','l','o','b','a','l','"',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a',
+'n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"',
+'U','s','e','G','l','o','b','a','l','E','n','d','p','o','i','n','t','"','}',',','f','a','l','s','e',
+']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t',
+'t','p','s',':','/','/','{','B','u','c','k','e','t','}','.','s','3','-','f','i','p','s','.','{','R',
+'e','g','i','o','n','}','.','{','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d',
+'n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{',
+'"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s',
+'i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','{','R',
+'e','g','i','o','n','}','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3',
+'"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',
+':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t',
+'y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t',
+'i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a',
+'l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u',
+'a','l','S','t','a','c','k','"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','b',
+'o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r',
+'e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','f','a','l','s','e',']','}',',','{','"',
+'f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v',
+'"',':','[','{','"','r','e','f','"',':','"','A','c','c','e','l','e','r','a','t','e','"','}',',','t',
+'r','u','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':',
+'[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',']','}',',','{','"','f','n',
+'"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[',
+'{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o',
+'b','a','l','"',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',
+':','"','h','t','t','p','s',':','/','/','{','B','u','c','k','e','t','}','.','s','3','-','a','c','c',
+'e','l','e','r','a','t','e','.','d','u','a','l','s','t','a','c','k','.','u','s','-','e','a','s','t',
+'-','1','.','{','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u',
+'f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t',
+'h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4',
+'"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','u','s','-','e','a','s',
+'t','-','1','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"',
+'d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r',
+'u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e',
+'"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n',
+'s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',
+',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S',
+'t','a','c','k','"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l',
+'e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','U','s','e','F','I','P','S','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',
+':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[',
+'{','"','r','e','f','"',':','"','A','c','c','e','l','e','r','a','t','e','"','}',',','t','r','u','e',
+']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"',
+'f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f',
+'"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',']','}',',','{','"','f','n','"',':','"',
+'s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r',
+'e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l',
+'"',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h',
+'t','t','p','s',':','/','/','{','B','u','c','k','e','t','}','.','s','3','-','a','c','c','e','l','e',
+'r','a','t','e','.','d','u','a','l','s','t','a','c','k','.','u','s','-','e','a','s','t','-','1','.',
+'{','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f','f','i',
+'x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c',
+'h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"',
+'s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','u','s','-','e','a','s','t','-','1',
+'"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s',
+'a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',
+']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"',
+'e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':',
+'[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c',
+'k','"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n',
+'E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U',
+'s','e','F','I','P','S','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','b',
+'o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r',
+'e','f','"',':','"','A','c','c','e','l','e','r','a','t','e','"','}',',','t','r','u','e',']','}',',',
+'{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',
+':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"',
+'E','n','d','p','o','i','n','t','"','}',']','}',']','}',',','{','"','f','n','"',':','"','n','o','t',
+'"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q',
+'u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g',
+'i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']','}',',','{','"',
+'f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v',
+'"',':','[','{','"','r','e','f','"',':','"','U','s','e','G','l','o','b','a','l','E','n','d','p','o',
+'i','n','t','"','}',',','t','r','u','e',']','}',']',',','"','t','y','p','e','"',':','"','t','r','e',
+'e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',
+':','[',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t',
+'t','p','s',':','/','/','{','B','u','c','k','e','t','}','.','s','3','-','a','c','c','e','l','e','r',
+'a','t','e','.','d','u','a','l','s','t','a','c','k','.','{','p','a','r','t','i','t','i','o','n','R',
+'e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e','r',
+'t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n',
+'a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i',
+'o','n','"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n','g','N','a',
+'m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n',
+'c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',
+':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',']','}',
+',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o',
+'o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e',
+'f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t','r','u','e',']','}',
+',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','f',
+'a','l','s','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a',
+'l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','A','c','c','e','l',
+'e','r','a','t','e','"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','n','o','t',
+'"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"',
+'a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',
+']','}',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[',
+'{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g',
+'v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s',
+'-','g','l','o','b','a','l','"',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e',
+'a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':',
+'"','U','s','e','G','l','o','b','a','l','E','n','d','p','o','i','n','t','"','}',',','f','a','l','s',
+'e',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h',
+'t','t','p','s',':','/','/','{','B','u','c','k','e','t','}','.','s','3','-','a','c','c','e','l','e',
+'r','a','t','e','.','d','u','a','l','s','t','a','c','k','.','{','p','a','r','t','i','t','i','o','n',
+'R','e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e',
+'r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"',
+'n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g',
+'i','o','n','"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n','g','N',
+'a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E',
+'n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s',
+'"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',',
+'{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o',
+'l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f',
+'"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t','r','u','e',']','}',',',
+'{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r',
+'g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','f','a',
+'l','s','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l',
+'s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','A','c','c','e','l','e',
+'r','a','t','e','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','n','o','t',
+'"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"',
+'a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',
+']','}',']','}',',','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',
+',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',
+',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']',',','"','e','n','d','p','o','i','n',
+'t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','{','B','u','c','k','e',
+'t','}','.','s','3','.','d','u','a','l','s','t','a','c','k','.','u','s','-','e','a','s','t','-','1',
+'.','{','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f','f',
+'i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S',
+'c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',',
+'"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','u','s','-','e','a','s','t','-',
+'1','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i',
+'s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e',
+'}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':',
+'"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',
+':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"',
+'a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a',
+'c','k','"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a',
+'n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"',
+'U','s','e','F','I','P','S','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"',
+'b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','A','c','c','e','l','e','r','a','t','e','"','}',',','f','a','l','s','e',']',
+'}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f',
+'n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','E','n','d','p','o','i','n','t','"','}',']','}',']','}',',','{','"','f','n','"',':','"','s',
+'t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e',
+'f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',
+']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t',
+'t','p','s',':','/','/','{','B','u','c','k','e','t','}','.','s','3','.','d','u','a','l','s','t','a',
+'c','k','.','u','s','-','e','a','s','t','-','1','.','{','p','a','r','t','i','t','i','o','n','R','e',
+'s','u','l','t','#','d','n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t',
+'i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a',
+'m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o',
+'n','"',':','"','u','s','-','e','a','s','t','-','1','"',',','"','s','i','g','n','i','n','g','N','a',
+'m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n',
+'c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',
+':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{',
+'"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l',
+'e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t','r','u','e',']','}',',','{',
+'"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g',
+'v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','f','a','l',
+'s','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s',
+'"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','A','c','c','e','l','e','r',
+'a','t','e','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',
+',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']',
+'}',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{',
+'"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v',
+'"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-',
+'g','l','o','b','a','l','"',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a',
+'n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"',
+'U','s','e','G','l','o','b','a','l','E','n','d','p','o','i','n','t','"','}',',','t','r','u','e',']',
+'}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':',
+'[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','n','d','p','o','i',
+'n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','{','B','u','c','k',
+'e','t','}','.','s','3','.','d','u','a','l','s','t','a','c','k','.','{','R','e','g','i','o','n','}',
+'.','{','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f','f',
+'i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S',
+'c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',',
+'"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','{','R','e','g','i','o','n','}',
+'"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s',
+'a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',
+']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"',
+'e','n','d','p','o','i','n','t','"','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s',
+'"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',',
+'"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t',
+'a','c','k','"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e',
+'a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':',
+'"','U','s','e','F','I','P','S','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':',
+'"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{',
+'"','r','e','f','"',':','"','A','c','c','e','l','e','r','a','t','e','"','}',',','f','a','l','s','e',
+']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"',
+'f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f',
+'"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',']','}',',','{','"','f','n','"',':','"',
+'n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','s','t','r','i','n',
+'g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"',
+'R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']','}',
+',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','G','l','o','b','a','l','E','n',
+'d','p','o','i','n','t','"','}',',','f','a','l','s','e',']','}',']',',','"','e','n','d','p','o','i',
+'n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','{','B','u','c','k',
+'e','t','}','.','s','3','.','d','u','a','l','s','t','a','c','k','.','{','R','e','g','i','o','n','}',
+'.','{','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f','f',
+'i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S',
+'c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',',
+'"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','{','R','e','g','i','o','n','}',
+'"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s',
+'a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',
+']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"',
+'e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':',
+'[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c',
+'k','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a',
+'n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"',
+'U','s','e','F','I','P','S','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"',
+'b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','A','c','c','e','l','e','r','a','t','e','"','}',',','f','a','l','s','e',']',
+'}',',','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{',
+'"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',',','{','"','f','n','"',
+':','"','p','a','r','s','e','U','R','L','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f',
+'"',':','"','E','n','d','p','o','i','n','t','"','}',']',',','"','a','s','s','i','g','n','"',':','"',
+'u','r','l','"','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l',
+'s','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','g','e','t','A','t','t','r',
+'"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','u','r','l','"','}',',','"',
+'i','s','I','p','"',']','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','s','t','r',
+'i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',
+']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','{','u','r','l',
+'#','s','c','h','e','m','e','}',':','/','/','{','u','r','l','#','a','u','t','h','o','r','i','t','y',
+'}','{','u','r','l','#','n','o','r','m','a','l','i','z','e','d','P','a','t','h','}','{','B','u','c',
+'k','e','t','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h',
+'S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',
+',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','u','s','-','e','a','s','t',
+'-','1','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d',
+'i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u',
+'e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',
+':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s',
+'"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',',
+'"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t',
+'a','c','k','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l',
+'e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','U','s','e','F','I','P','S','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',
+':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[',
+'{','"','r','e','f','"',':','"','A','c','c','e','l','e','r','a','t','e','"','}',',','f','a','l','s',
+'e',']','}',',','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':',
+'[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',',','{','"','f',
+'n','"',':','"','p','a','r','s','e','U','R','L','"',',','"','a','r','g','v','"',':','[','{','"','r',
+'e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']',',','"','a','s','s','i','g','n','"',
+':','"','u','r','l','"','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u',
+'a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','g','e','t','A','t',
+'t','r','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','u','r','l','"','}',
+',','"','i','s','I','p','"',']','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"',
+'s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r',
+'e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l',
+'"',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','{',
+'u','r','l','#','s','c','h','e','m','e','}',':','/','/','{','B','u','c','k','e','t','}','.','{','u',
+'r','l','#','a','u','t','h','o','r','i','t','y','}','{','u','r','l','#','p','a','t','h','}','"',',',
+'"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e',
+'s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n',
+'i','n','g','R','e','g','i','o','n','"',':','"','u','s','-','e','a','s','t','-','1','"',',','"','s',
+'i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e',
+'D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"',
+'h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p',
+'o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f',
+'n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',
+':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',',
+'f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u',
+'a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F',
+'I','P','S','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l',
+'e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','A','c','c','e','l','e','r','a','t','e','"','}',',','f','a','l','s','e',']','}',',','{','"',
+'f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f',
+'"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',',','{','"','f','n','"',':','"','p','a',
+'r','s','e','U','R','L','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E',
+'n','d','p','o','i','n','t','"','}',']',',','"','a','s','s','i','g','n','"',':','"','u','r','l','"',
+'}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"',
+'a','r','g','v','"',':','[','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','u','r','l','"','}',',','"','i','s','I','p',
+'"',']','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','s','t','r','i','n','g','E',
+'q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e',
+'g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']',',','"','e',
+'n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','{','u','r','l','#','s','c','h',
+'e','m','e','}',':','/','/','{','u','r','l','#','a','u','t','h','o','r','i','t','y','}','{','u','r',
+'l','#','n','o','r','m','a','l','i','z','e','d','P','a','t','h','}','{','B','u','c','k','e','t','}',
+'"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e',
+'m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i',
+'g','n','i','n','g','R','e','g','i','o','n','"',':','"','u','s','-','e','a','s','t','-','1','"',',',
+'"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b',
+'l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',
+',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n',
+'d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{',
+'"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g',
+'v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"',
+'}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E',
+'q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s',
+'e','F','I','P','S','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','b','o',
+'o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e',
+'f','"',':','"','A','c','c','e','l','e','r','a','t','e','"','}',',','f','a','l','s','e',']','}',',',
+'{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r',
+'e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',',','{','"','f','n','"',':','"',
+'p','a','r','s','e','U','R','L','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':',
+'"','E','n','d','p','o','i','n','t','"','}',']',',','"','a','s','s','i','g','n','"',':','"','u','r',
+'l','"','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',
+',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',',
+'"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','u','r','l','"','}',',','"','i','s',
+'I','p','"',']','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','s','t','r','i',
+'n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':',
+'"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']',
+',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','{','u','r','l','#',
+'s','c','h','e','m','e','}',':','/','/','{','B','u','c','k','e','t','}','.','{','u','r','l','#','a',
+'u','t','h','o','r','i','t','y','}','{','u','r','l','#','p','a','t','h','}','"',',','"','p','r','o',
+'p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[',
+'{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R',
+'e','g','i','o','n','"',':','"','u','s','-','e','a','s','t','-','1','"',',','"','s','i','g','n','i',
+'n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b',
+'l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d',
+'e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t',
+'"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"',
+'b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','f','a','l','s',
+'e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',
+',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"',
+'}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E',
+'q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','A','c',
+'c','e','l','e','r','a','t','e','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':',
+'"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E',
+'n','d','p','o','i','n','t','"','}',']','}',',','{','"','f','n','"',':','"','p','a','r','s','e','U',
+'R','L','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o',
+'i','n','t','"','}',']',',','"','a','s','s','i','g','n','"',':','"','u','r','l','"','}',',','{','"',
+'f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v',
+'"',':','[','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v','"',
+':','[','{','"','r','e','f','"',':','"','u','r','l','"','}',',','"','i','s','I','p','"',']','}',',',
+'t','r','u','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',
+':','[','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a',
+'w','s','-','g','l','o','b','a','l','"',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o',
+'l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f',
+'"',':','"','U','s','e','G','l','o','b','a','l','E','n','d','p','o','i','n','t','"','}',',','t','r',
+'u','e',']','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e',
+'s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':',
+'"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','u','s','-','e','a','s','t','-','1',
+'"',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','{',
+'u','r','l','#','s','c','h','e','m','e','}',':','/','/','{','u','r','l','#','a','u','t','h','o','r',
+'i','t','y','}','{','u','r','l','#','n','o','r','m','a','l','i','z','e','d','P','a','t','h','}','{',
+'B','u','c','k','e','t','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a',
+'u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g',
+'v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','{','R','e','g',
+'i','o','n','}','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',',
+'"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t',
+'r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p',
+'e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o',
+'n','s','"',':','[',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':',
+'"','{','u','r','l','#','s','c','h','e','m','e','}',':','/','/','{','u','r','l','#','a','u','t','h',
+'o','r','i','t','y','}','{','u','r','l','#','n','o','r','m','a','l','i','z','e','d','P','a','t','h',
+'}','{','B','u','c','k','e','t','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{',
+'"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s',
+'i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','{','R',
+'e','g','i','o','n','}','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3',
+'"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',
+':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t',
+'y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',']','}',',','{','"','c','o','n','d',
+'i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q',
+'u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e',
+'D','u','a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',
+':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[',
+'{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','f','a','l','s','e',']','}',
+',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','A','c','c','e','l','e','r','a','t','e','"',
+'}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"',
+'a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',
+']','}',',','{','"','f','n','"',':','"','p','a','r','s','e','U','R','L','"',',','"','a','r','g','v',
+'"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']',',','"','a',
+'s','s','i','g','n','"',':','"','u','r','l','"','}',',','{','"','f','n','"',':','"','b','o','o','l',
+'e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':',
+'"','g','e','t','A','t','t','r','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':',
+'"','u','r','l','"','}',',','"','i','s','I','p','"',']','}',',','f','a','l','s','e',']','}',',','{',
+'"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':',
+'"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a',
+'l','"',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a',
+'l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','G','l',
+'o','b','a','l','E','n','d','p','o','i','n','t','"','}',',','t','r','u','e',']','}',']',',','"','t',
+'y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o',
+'n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','s','t','r','i','n','g','E',
+'q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e',
+'g','i','o','n','"','}',',','"','u','s','-','e','a','s','t','-','1','"',']','}',']',',','"','e','n',
+'d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','{','u','r','l','#','s','c','h','e',
+'m','e','}',':','/','/','{','B','u','c','k','e','t','}','.','{','u','r','l','#','a','u','t','h','o',
+'r','i','t','y','}','{','u','r','l','#','p','a','t','h','}','"',',','"','p','r','o','p','e','r','t',
+'i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a',
+'m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o',
+'n','"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n','g','N','a','m',
+'e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c',
+'o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':',
+'{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"',
+'c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','n','d','p','o','i','n','t','"',
+':','{','"','u','r','l','"',':','"','{','u','r','l','#','s','c','h','e','m','e','}',':','/','/','{',
+'B','u','c','k','e','t','}','.','{','u','r','l','#','a','u','t','h','o','r','i','t','y','}','{','u',
+'r','l','#','p','a','t','h','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"',
+'a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i',
+'g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','{','R','e',
+'g','i','o','n','}','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',
+',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':',
+'t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y',
+'p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',']','}',',','{','"','c','o','n','d','i',
+'t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u',
+'a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D',
+'u','a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':',
+'"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{',
+'"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','f','a','l','s','e',']','}',',',
+'{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r',
+'g','v','"',':','[','{','"','r','e','f','"',':','"','A','c','c','e','l','e','r','a','t','e','"','}',
+',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']',
+'}',',','{','"','f','n','"',':','"','p','a','r','s','e','U','R','L','"',',','"','a','r','g','v','"',
+':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']',',','"','a','s',
+'s','i','g','n','"',':','"','u','r','l','"','}',',','{','"','f','n','"',':','"','b','o','o','l','e',
+'a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"',
+'g','e','t','A','t','t','r','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"',
+'u','r','l','"','}',',','"','i','s','I','p','"',']','}',',','t','r','u','e',']','}',',','{','"','f',
+'n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','s',
+'t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e',
+'f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',
+']','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s',
+'"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','G','l','o','b',
+'a','l','E','n','d','p','o','i','n','t','"','}',',','f','a','l','s','e',']','}',']',',','"','e','n',
+'d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','{','u','r','l','#','s','c','h','e',
+'m','e','}',':','/','/','{','u','r','l','#','a','u','t','h','o','r','i','t','y','}','{','u','r','l',
+'#','n','o','r','m','a','l','i','z','e','d','P','a','t','h','}','{','B','u','c','k','e','t','}','"',
+',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m',
+'e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g',
+'n','i','n','g','R','e','g','i','o','n','"',':','"','{','R','e','g','i','o','n','}','"',',','"','s',
+'i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e',
+'D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"',
+'h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p',
+'o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f',
+'n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',
+':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',',
+'f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u',
+'a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F',
+'I','P','S','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l',
+'e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','A','c','c','e','l','e','r','a','t','e','"','}',',','f','a','l','s','e',']','}',',','{','"',
+'f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f',
+'"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',',','{','"','f','n','"',':','"','p','a',
+'r','s','e','U','R','L','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E',
+'n','d','p','o','i','n','t','"','}',']',',','"','a','s','s','i','g','n','"',':','"','u','r','l','"',
+'}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"',
+'a','r','g','v','"',':','[','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','u','r','l','"','}',',','"','i','s','I','p',
+'"',']','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"',
+'a','r','g','v','"',':','[','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l',
+'s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n',
+'"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']','}',',','{','"','f','n','"',
+':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[',
+'{','"','r','e','f','"',':','"','U','s','e','G','l','o','b','a','l','E','n','d','p','o','i','n','t',
+'"','}',',','f','a','l','s','e',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"',
+'u','r','l','"',':','"','{','u','r','l','#','s','c','h','e','m','e','}',':','/','/','{','B','u','c',
+'k','e','t','}','.','{','u','r','l','#','a','u','t','h','o','r','i','t','y','}','{','u','r','l','#',
+'p','a','t','h','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t',
+'h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4',
+'"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','{','R','e','g','i','o',
+'n','}','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d',
+'i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u',
+'e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',
+':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s',
+'"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',',
+'"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t',
+'a','c','k','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l',
+'e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','U','s','e','F','I','P','S','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',
+':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[',
+'{','"','r','e','f','"',':','"','A','c','c','e','l','e','r','a','t','e','"','}',',','t','r','u','e',
+']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"',
+'f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f',
+'"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',']','}',',','{','"','f','n','"',':','"',
+'s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r',
+'e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l',
+'"',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h',
+'t','t','p','s',':','/','/','{','B','u','c','k','e','t','}','.','s','3','-','a','c','c','e','l','e',
+'r','a','t','e','.','{','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s',
+'S','u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a',
+'u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g',
+'v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','u','s','-','e',
+'a','s','t','-','1','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',
+',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':',
+'t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y',
+'p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i',
+'o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l',
+'s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a',
+'l','S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','b',
+'o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r',
+'e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','f','a','l','s','e',']','}',',','{','"',
+'f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v',
+'"',':','[','{','"','r','e','f','"',':','"','A','c','c','e','l','e','r','a','t','e','"','}',',','t',
+'r','u','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':',
+'[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',']','}',',','{','"','f','n',
+'"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[',
+'{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o',
+'b','a','l','"',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',
+':','"','h','t','t','p','s',':','/','/','{','B','u','c','k','e','t','}','.','s','3','-','a','c','c',
+'e','l','e','r','a','t','e','.','{','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#',
+'d','n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':',
+'{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"',
+'s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','u',
+'s','-','e','a','s','t','-','1','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"',
+'s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n',
+'g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',',
+'"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d',
+'i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q',
+'u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e',
+'D','u','a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',
+':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[',
+'{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','f','a','l','s','e',']','}',
+',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','A','c','c','e','l','e','r','a','t','e','"',
+'}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g',
+'v','"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':',
+'[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',']','}',',','{',
+'"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':',
+'"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a',
+'l','"',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a',
+'l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','G','l',
+'o','b','a','l','E','n','d','p','o','i','n','t','"','}',',','t','r','u','e',']','}',']',',','"','t',
+'y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o',
+'n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','s','t','r','i','n','g','E',
+'q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e',
+'g','i','o','n','"','}',',','"','u','s','-','e','a','s','t','-','1','"',']','}',']',',','"','e','n',
+'d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','{',
+'B','u','c','k','e','t','}','.','s','3','-','a','c','c','e','l','e','r','a','t','e','.','{','p','a',
+'r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}','"',
+',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m',
+'e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g',
+'n','i','n','g','R','e','g','i','o','n','"',':','"','{','R','e','g','i','o','n','}','"',',','"','s',
+'i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e',
+'D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"',
+'h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p',
+'o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"',
+'e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/',
+'/','{','B','u','c','k','e','t','}','.','s','3','-','a','c','c','e','l','e','r','a','t','e','.','{',
+'p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f','f','i','x',
+'}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h',
+'e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s',
+'i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','{','R','e','g','i','o','n','}','"',',',
+'"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b',
+'l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',
+',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n',
+'d','p','o','i','n','t','"','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':',
+'[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c',
+'k','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a',
+'n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"',
+'U','s','e','F','I','P','S','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"',
+'b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','A','c','c','e','l','e','r','a','t','e','"','}',',','t','r','u','e',']','}',
+',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n',
+'"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':',
+'"','E','n','d','p','o','i','n','t','"','}',']','}',']','}',',','{','"','f','n','"',':','"','n','o',
+'t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','s','t','r','i','n','g','E',
+'q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e',
+'g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']','}',',','{',
+'"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g',
+'v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','G','l','o','b','a','l','E','n','d','p',
+'o','i','n','t','"','}',',','f','a','l','s','e',']','}',']',',','"','e','n','d','p','o','i','n','t',
+'"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','{','B','u','c','k','e','t',
+'}','.','s','3','-','a','c','c','e','l','e','r','a','t','e','.','{','p','a','r','t','i','t','i','o',
+'n','R','e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p',
+'e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{',
+'"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e',
+'g','i','o','n','"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n','g',
+'N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e',
+'E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r',
+'s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',
+',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o',
+'o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e',
+'f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']',
+'}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"',
+'a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',',
+'f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u',
+'a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','A','c','c','e',
+'l','e','r','a','t','e','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','n',
+'o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',
+',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t',
+'"','}',']','}',']','}',',','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l',
+'s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n',
+'"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']',',','"','e','n','d','p','o',
+'i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','{','B','u','c',
+'k','e','t','}','.','s','3','.','{','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#',
+'d','n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':',
+'{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"',
+'s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','u',
+'s','-','e','a','s','t','-','1','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"',
+'s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n',
+'g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',',
+'"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d',
+'i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q',
+'u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e',
+'D','u','a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',
+':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[',
+'{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','f','a','l','s','e',']','}',
+',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','A','c','c','e','l','e','r','a','t','e','"',
+'}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r',
+'g','v','"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',
+':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',']','}',',',
+'{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g',
+'v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s',
+'-','g','l','o','b','a','l','"',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"',
+'u','r','l','"',':','"','h','t','t','p','s',':','/','/','{','B','u','c','k','e','t','}','.','s','3',
+'.','{','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f','f',
+'i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S',
+'c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',',
+'"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','u','s','-','e','a','s','t','-',
+'1','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i',
+'s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e',
+'}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':',
+'"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',
+':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"',
+'a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a',
+'c','k','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e',
+'a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':',
+'"','U','s','e','F','I','P','S','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':',
+'"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{',
+'"','r','e','f','"',':','"','A','c','c','e','l','e','r','a','t','e','"','}',',','f','a','l','s','e',
+']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"',
+'f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f',
+'"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',']','}',',','{','"','f','n','"',':','"',
+'n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','s','t','r','i','n',
+'g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"',
+'R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']','}',
+',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','G','l','o','b','a','l','E','n',
+'d','p','o','i','n','t','"','}',',','t','r','u','e',']','}',']',',','"','t','y','p','e','"',':','"',
+'t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o',
+'n','s','"',':','[','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',
+',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',
+',','"','u','s','-','e','a','s','t','-','1','"',']','}',']',',','"','e','n','d','p','o','i','n','t',
+'"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','{','B','u','c','k','e','t',
+'}','.','s','3','.','{','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s',
+'S','u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a',
+'u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g',
+'v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','{','R','e','g',
+'i','o','n','}','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',',
+'"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t',
+'r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p',
+'e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o',
+'n','s','"',':','[',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':',
+'"','h','t','t','p','s',':','/','/','{','B','u','c','k','e','t','}','.','s','3','.','{','R','e','g',
+'i','o','n','}','.','{','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s',
+'S','u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a',
+'u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g',
+'v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','{','R','e','g',
+'i','o','n','}','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',',
+'"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t',
+'r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p',
+'e','"',':','"','e','n','d','p','o','i','n','t','"','}',']','}',',','{','"','c','o','n','d','i','t',
+'i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a',
+'l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u',
+'a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"',
+'b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','f','a','l','s','e',']','}',',','{',
+'"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g',
+'v','"',':','[','{','"','r','e','f','"',':','"','A','c','c','e','l','e','r','a','t','e','"','}',',',
+'f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v',
+'"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[',
+'{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',']','}',',','{','"',
+'f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"',
+'s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r',
+'e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l',
+'"',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l',
+'s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','G','l','o',
+'b','a','l','E','n','d','p','o','i','n','t','"','}',',','f','a','l','s','e',']','}',']',',','"','e',
+'n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/',
+'{','B','u','c','k','e','t','}','.','s','3','.','{','R','e','g','i','o','n','}','.','{','p','a','r',
+'t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}','"',',',
+'"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e',
+'s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n',
+'i','n','g','R','e','g','i','o','n','"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i',
+'g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D',
+'o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h',
+'e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o',
+'i','n','t','"','}',']','}',']','}',']','}',']','}',']','}',']','}',']','}',']','}',',','{','"','c',
+'o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','r','r','o','r','"',':','"','I','n',
+'v','a','l','i','d',' ','r','e','g','i','o','n',':',' ','r','e','g','i','o','n',' ','w','a','s',' ',
+'n','o','t',' ','a',' ','v','a','l','i','d',' ','D','N','S',' ','n','a','m','e','.','"',',','"','t',
+'y','p','e','"',':','"','e','r','r','o','r','"','}',']','}',']','}',',','{','"','c','o','n','d','i',
+'t','i','o','n','s','"',':','[',']',',','"','e','r','r','o','r','"',':','"','A',' ','v','a','l','i',
+'d',' ','p','a','r','t','i','t','i','o','n',' ','c','o','u','l','d',' ','n','o','t',' ','b','e',' ',
+'d','e','t','e','r','m','i','n','e','d','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r',
+'"','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',
+':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"',
+'E','n','d','p','o','i','n','t','"','}',']','}',',','{','"','f','n','"',':','"','p','a','r','s','e',
+'U','R','L','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p',
+'o','i','n','t','"','}',']',',','"','a','s','s','i','g','n','"',':','"','u','r','l','"','}',',','{',
+'"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v',
+'"',':','[','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v','"',
+':','[','{','"','r','e','f','"',':','"','u','r','l','"','}',',','"','s','c','h','e','m','e','"',']',
+'}',',','"','h','t','t','p','"',']','}',',','{','"','f','n','"',':','"','a','w','s','.','i','s','V',
+'i','r','t','u','a','l','H','o','s','t','a','b','l','e','S','3','B','u','c','k','e','t','"',',','"',
+'a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','B','u','c','k','e','t','"','}',',','t',
+'r','u','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l',
+'s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P',
+'S','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a',
+'n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"',
+'U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',',','{','"',
+'f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v',
+'"',':','[','{','"','r','e','f','"',':','"','A','c','c','e','l','e','r','a','t','e','"','}',',','f',
+'a','l','s','e',']','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u',
+'l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n',
+'"',':','"','a','w','s','.','p','a','r','t','i','t','i','o','n','"',',','"','a','r','g','v','"',':',
+'[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',']',',','"','a','s','s','i','g',
+'n','"',':','"','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','"','}',']',',','"','t',
+'y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o',
+'n','d','i','t','i','o','n','s','"',':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e',
+'"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':',
+'[','{','"','f','n','"',':','"','i','s','V','a','l','i','d','H','o','s','t','L','a','b','e','l','"',
+',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',
+',','f','a','l','s','e',']','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"',
+'r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',',
+'"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','{','u','r','l','#','s',
+'c','h','e','m','e','}',':','/','/','{','B','u','c','k','e','t','}','.','{','u','r','l','#','a','u',
+'t','h','o','r','i','t','y','}','{','u','r','l','#','p','a','t','h','}','"',',','"','p','r','o','p',
+'e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{',
+'"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e',
+'g','i','o','n','"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n','g',
+'N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e',
+'E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r',
+'s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',
+']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','r','r','o',
+'r','"',':','"','I','n','v','a','l','i','d',' ','r','e','g','i','o','n',':',' ','r','e','g','i','o',
+'n',' ','w','a','s',' ','n','o','t',' ','a',' ','v','a','l','i','d',' ','D','N','S',' ','n','a','m',
+'e','.','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',']','}',']','}',',','{',
+'"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','r','r','o','r','"',':','"',
+'A',' ','v','a','l','i','d',' ','p','a','r','t','i','t','i','o','n',' ','c','o','u','l','d',' ','n',
+'o','t',' ','b','e',' ','d','e','t','e','r','m','i','n','e','d','"',',','"','t','y','p','e','"',':',
+'"','e','r','r','o','r','"','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':',
+'[','{','"','f','n','"',':','"','a','w','s','.','p','a','r','s','e','A','r','n','"',',','"','a','r',
+'g','v','"',':','[','{','"','r','e','f','"',':','"','B','u','c','k','e','t','"','}',']',',','"','a',
+'s','s','i','g','n','"',':','"','b','u','c','k','e','t','A','r','n','"','}',']',',','"','t','y','p',
+'e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d',
+'i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',',
+'"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','b','u','c','k','e','t','A','r','n',
+'"','}',',','"','r','e','s','o','u','r','c','e','I','d','[','0',']','"',']',',','"','a','s','s','i',
+'g','n','"',':','"','a','r','n','T','y','p','e','"','}',',','{','"','f','n','"',':','"','n','o','t',
+'"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q',
+'u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','a','r','n',
+'T','y','p','e','"','}',',','"','"',']','}',']','}',']',',','"','t','y','p','e','"',':','"','t','r',
+'e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s',
+'"',':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s',
+'"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"',
+'s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','f',
+'n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v','"',':','[','{','"','r','e',
+'f','"',':','"','b','u','c','k','e','t','A','r','n','"','}',',','"','s','e','r','v','i','c','e','"',
+']','}',',','"','s','3','-','o','b','j','e','c','t','-','l','a','m','b','d','a','"',']','}',']',',',
+'"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"',
+'c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','s','t','r','i','n',
+'g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"',
+'a','r','n','T','y','p','e','"','}',',','"','a','c','c','e','s','s','p','o','i','n','t','"',']','}',
+']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[',
+'{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','t','y','p','e','"',':','"',
+'t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o',
+'n','s','"',':','[','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g',
+'v','"',':','[','{','"','r','e','f','"',':','"','b','u','c','k','e','t','A','r','n','"','}',',','"',
+'r','e','s','o','u','r','c','e','I','d','[','1',']','"',']',',','"','a','s','s','i','g','n','"',':',
+'"','a','c','c','e','s','s','P','o','i','n','t','N','a','m','e','"','}',',','{','"','f','n','"',':',
+'"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','s','t','r','i',
+'n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':',
+'"','a','c','c','e','s','s','P','o','i','n','t','N','a','m','e','"','}',',','"','"',']','}',']','}',
+']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[',
+'{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','t','y','p','e','"',':','"',
+'t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o',
+'n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s',
+'"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l',
+'S','t','a','c','k','"','}',',','t','r','u','e',']','}',']',',','"','e','r','r','o','r','"',':','"',
+'S','3',' ','O','b','j','e','c','t',' ','L','a','m','b','d','a',' ','d','o','e','s',' ','n','o','t',
+' ','s','u','p','p','o','r','t',' ','D','u','a','l','-','s','t','a','c','k','"',',','"','t','y','p',
+'e','"',':','"','e','r','r','o','r','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',
+':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',
+':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b',
+'o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r',
+'e','f','"',':','"','A','c','c','e','l','e','r','a','t','e','"','}',',','t','r','u','e',']','}',']',
+',','"','e','r','r','o','r','"',':','"','S','3',' ','O','b','j','e','c','t',' ','L','a','m','b','d',
+'a',' ','d','o','e','s',' ','n','o','t',' ','s','u','p','p','o','r','t',' ','S','3',' ','A','c','c',
+'e','l','e','r','a','t','e','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',',',
+'{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','t','y','p','e','"',':','"',
+'t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o',
+'n','s','"',':','[','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[',
+'{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g',
+'v','"',':','[','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v',
+'"',':','[','{','"','r','e','f','"',':','"','b','u','c','k','e','t','A','r','n','"','}',',','"','r',
+'e','g','i','o','n','"',']','}',',','"','"',']','}',']','}',']',',','"','t','y','p','e','"',':','"',
+'t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o',
+'n','s','"',':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l',
+'e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',
+':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"',
+'D','i','s','a','b','l','e','A','c','c','e','s','s','P','o','i','n','t','s','"','}',']','}',',','{',
+'"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g',
+'v','"',':','[','{','"','r','e','f','"',':','"','D','i','s','a','b','l','e','A','c','c','e','s','s',
+'P','o','i','n','t','s','"','}',',','t','r','u','e',']','}',']',',','"','e','r','r','o','r','"',':',
+'"','A','c','c','e','s','s',' ','p','o','i','n','t','s',' ','a','r','e',' ','n','o','t',' ','s','u',
+'p','p','o','r','t','e','d',' ','f','o','r',' ','t','h','i','s',' ','o','p','e','r','a','t','i','o',
+'n','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',',','{','"','c','o','n','d',
+'i','t','i','o','n','s','"',':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',',
+'"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{',
+'"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':',
+'"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','g','e',
+'t','A','t','t','r','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','b','u',
+'c','k','e','t','A','r','n','"','}',',','"','r','e','s','o','u','r','c','e','I','d','[','2',']','"',
+']','}',']','}',']','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u',
+'l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','t',
+'y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o',
+'n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',',
+'"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','A','r','n','R','e','g',
+'i','o','n','"','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u',
+'a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','A',
+'r','n','R','e','g','i','o','n','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':',
+'"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','s','t','r','i',
+'n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"',
+'g','e','t','A','t','t','r','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"',
+'b','u','c','k','e','t','A','r','n','"','}',',','"','r','e','g','i','o','n','"',']','}',',','"','{',
+'R','e','g','i','o','n','}','"',']','}',']','}',']',',','"','e','r','r','o','r','"',':','"','I','n',
+'v','a','l','i','d',' ','c','o','n','f','i','g','u','r','a','t','i','o','n',':',' ','r','e','g','i',
+'o','n',' ','f','r','o','m',' ','A','R','N',' ','`','{','b','u','c','k','e','t','A','r','n','#','r',
+'e','g','i','o','n','}','`',' ','d','o','e','s',' ','n','o','t',' ','m','a','t','c','h',' ','c','l',
+'i','e','n','t',' ','r','e','g','i','o','n',' ','`','{','R','e','g','i','o','n','}','`',' ','a','n',
+'d',' ','U','s','e','A','r','n','R','e','g','i','o','n',' ','i','s',' ','`','f','a','l','s','e','`',
+'"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',',','{','"','c','o','n','d','i',
+'t','i','o','n','s','"',':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"',
+'r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"',
+'f','n','"',':','"','a','w','s','.','p','a','r','t','i','t','i','o','n','"',',','"','a','r','g','v',
+'"',':','[','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v','"',
+':','[','{','"','r','e','f','"',':','"','b','u','c','k','e','t','A','r','n','"','}',',','"','r','e',
+'g','i','o','n','"',']','}',']',',','"','a','s','s','i','g','n','"',':','"','b','u','c','k','e','t',
+'P','a','r','t','i','t','i','o','n','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e',
+'"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':',
+'[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':',
+'[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','a','w',
+'s','.','p','a','r','t','i','t','i','o','n','"',',','"','a','r','g','v','"',':','[','{','"','r','e',
+'f','"',':','"','R','e','g','i','o','n','"','}',']',',','"','a','s','s','i','g','n','"',':','"','p',
+'a','r','t','i','t','i','o','n','R','e','s','u','l','t','"','}',']',',','"','t','y','p','e','"',':',
+'"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i',
+'o','n','s','"',':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u',
+'l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n',
+'"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[',
+'{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v','"',':','[','{',
+'"','r','e','f','"',':','"','b','u','c','k','e','t','P','a','r','t','i','t','i','o','n','"','}',',',
+'"','n','a','m','e','"',']','}',',','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',',
+'"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','p','a','r','t','i','t','i','o','n',
+'R','e','s','u','l','t','"','}',',','"','n','a','m','e','"',']','}',']','}',']',',','"','t','y','p',
+'e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d',
+'i','t','i','o','n','s','"',':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',',
+'"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{',
+'"','f','n','"',':','"','i','s','V','a','l','i','d','H','o','s','t','L','a','b','e','l','"',',','"',
+'a','r','g','v','"',':','[','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','b','u','c','k','e','t','A','r','n','"','}',
+',','"','r','e','g','i','o','n','"',']','}',',','t','r','u','e',']','}',']',',','"','t','y','p','e',
+'"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i',
+'t','i','o','n','s','"',':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"',
+'r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"',
+'f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',
+':','[','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v','"',':',
+'[','{','"','r','e','f','"',':','"','b','u','c','k','e','t','A','r','n','"','}',',','"','a','c','c',
+'o','u','n','t','I','d','"',']','}',',','"','"',']','}',']',',','"','e','r','r','o','r','"',':','"',
+'I','n','v','a','l','i','d',' ','A','R','N',':',' ','M','i','s','s','i','n','g',' ','a','c','c','o',
+'u','n','t',' ','i','d','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',',','{',
+'"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','t','y','p','e','"',':','"','t',
+'r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n',
+'s','"',':','[','{','"','f','n','"',':','"','i','s','V','a','l','i','d','H','o','s','t','L','a','b',
+'e','l','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','g','e','t','A','t','t',
+'r','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','b','u','c','k','e','t',
+'A','r','n','"','}',',','"','a','c','c','o','u','n','t','I','d','"',']','}',',','f','a','l','s','e',
+']','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',
+':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','t','y','p','e','"',
+':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t',
+'i','o','n','s','"',':','[','{','"','f','n','"',':','"','i','s','V','a','l','i','d','H','o','s','t',
+'L','a','b','e','l','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','a','c',
+'c','e','s','s','P','o','i','n','t','N','a','m','e','"','}',',','f','a','l','s','e',']','}',']',',',
+'"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"',
+'c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','t','y','p','e','"',':','"','t','r',
+'e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s',
+'"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',',
+'"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',
+',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a',
+'l','s','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','g','e','t','A','t','t',
+'r','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','b','u','c','k','e','t',
+'P','a','r','t','i','t','i','o','n','"','}',',','"','n','a','m','e','"',']','}',',','"','a','w','s',
+'-','c','n','"',']','}',']',',','"','e','r','r','o','r','"',':','"','P','a','r','t','i','t','i','o',
+'n',' ','d','o','e','s',' ','n','o','t',' ','s','u','p','p','o','r','t',' ','F','I','P','S','"',',',
+'"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',',','{','"','c','o','n','d','i','t','i',
+'o','n','s','"',':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u',
+'l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n',
+'"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':',
+'"','E','n','d','p','o','i','n','t','"','}',']','}',',','{','"','f','n','"',':','"','p','a','r','s',
+'e','U','R','L','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d',
+'p','o','i','n','t','"','}',']',',','"','a','s','s','i','g','n','"',':','"','u','r','l','"','}',']',
+',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','{','u','r','l','#',
+'s','c','h','e','m','e','}',':','/','/','{','a','c','c','e','s','s','P','o','i','n','t','N','a','m',
+'e','}','-','{','b','u','c','k','e','t','A','r','n','#','a','c','c','o','u','n','t','I','d','}','.',
+'{','u','r','l','#','a','u','t','h','o','r','i','t','y','}','{','u','r','l','#','p','a','t','h','}',
+'"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e',
+'m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i',
+'g','n','i','n','g','R','e','g','i','o','n','"',':','"','{','b','u','c','k','e','t','A','r','n','#',
+'r','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s',
+'3','-','o','b','j','e','c','t','-','l','a','m','b','d','a','"',',','"','d','i','s','a','b','l','e',
+'D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"',
+'h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p',
+'o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f',
+'n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',
+':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r','u','e',']',
+'}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t',
+'p','s',':','/','/','{','a','c','c','e','s','s','P','o','i','n','t','N','a','m','e','}','-','{','b',
+'u','c','k','e','t','A','r','n','#','a','c','c','o','u','n','t','I','d','}','.','s','3','-','o','b',
+'j','e','c','t','-','l','a','m','b','d','a','-','f','i','p','s','.','{','b','u','c','k','e','t','A',
+'r','n','#','r','e','g','i','o','n','}','.','{','b','u','c','k','e','t','P','a','r','t','i','t','i',
+'o','n','#','d','n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i','e',
+'s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e',
+'"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',
+':','"','{','b','u','c','k','e','t','A','r','n','#','r','e','g','i','o','n','}','"',',','"','s','i',
+'g','n','i','n','g','N','a','m','e','"',':','"','s','3','-','o','b','j','e','c','t','-','l','a','m',
+'b','d','a','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i',
+'n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',
+',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n',
+'d','i','t','i','o','n','s','"',':','[',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"',
+'u','r','l','"',':','"','h','t','t','p','s',':','/','/','{','a','c','c','e','s','s','P','o','i','n',
+'t','N','a','m','e','}','-','{','b','u','c','k','e','t','A','r','n','#','a','c','c','o','u','n','t',
+'I','d','}','.','s','3','-','o','b','j','e','c','t','-','l','a','m','b','d','a','.','{','b','u','c',
+'k','e','t','A','r','n','#','r','e','g','i','o','n','}','.','{','b','u','c','k','e','t','P','a','r',
+'t','i','t','i','o','n','#','d','n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e',
+'r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"',
+'n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g',
+'i','o','n','"',':','"','{','b','u','c','k','e','t','A','r','n','#','r','e','g','i','o','n','}','"',
+',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','-','o','b','j','e','c','t',
+'-','l','a','m','b','d','a','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n',
+'c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',
+':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',']','}',
+']','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','r',
+'r','o','r','"',':','"','I','n','v','a','l','i','d',' ','A','R','N',':',' ','T','h','e',' ','a','c',
+'c','e','s','s',' ','p','o','i','n','t',' ','n','a','m','e',' ','m','a','y',' ','o','n','l','y',' ',
+'c','o','n','t','a','i','n',' ','a','-','z',',',' ','A','-','Z',',',' ','0','-','9',' ','a','n','d',
+' ','`','-','`','.',' ','F','o','u','n','d',':',' ','`','{','a','c','c','e','s','s','P','o','i','n',
+'t','N','a','m','e','}','`','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',']',
+'}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','r','r',
+'o','r','"',':','"','I','n','v','a','l','i','d',' ','A','R','N',':',' ','T','h','e',' ','a','c','c',
+'o','u','n','t',' ','i','d',' ','m','a','y',' ','o','n','l','y',' ','c','o','n','t','a','i','n',' ',
+'a','-','z',',',' ','A','-','Z',',',' ','0','-','9',' ','a','n','d',' ','`','-','`','.',' ','F','o',
+'u','n','d',':',' ','`','{','b','u','c','k','e','t','A','r','n','#','a','c','c','o','u','n','t','I',
+'d','}','`','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',']','}',']','}',']',
+'}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','r','r','o','r',
+'"',':','"','I','n','v','a','l','i','d',' ','r','e','g','i','o','n',' ','i','n',' ','A','R','N',':',
+' ','`','{','b','u','c','k','e','t','A','r','n','#','r','e','g','i','o','n','}','`',' ','(','i','n',
+'v','a','l','i','d',' ','D','N','S',' ','n','a','m','e',')','"',',','"','t','y','p','e','"',':','"',
+'e','r','r','o','r','"','}',']','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',
+':','[',']',',','"','e','r','r','o','r','"',':','"','C','l','i','e','n','t',' ','w','a','s',' ','c',
+'o','n','f','i','g','u','r','e','d',' ','f','o','r',' ','p','a','r','t','i','t','i','o','n',' ','`',
+'{','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','n','a','m','e','}','`',' ','b',
+'u','t',' ','A','R','N',' ','(','`','{','B','u','c','k','e','t','}','`',')',' ','h','a','s',' ','`',
+'{','b','u','c','k','e','t','P','a','r','t','i','t','i','o','n','#','n','a','m','e','}','`','"',',',
+'"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',']','}',']','}',',','{','"','c','o','n',
+'d','i','t','i','o','n','s','"',':','[',']',',','"','e','r','r','o','r','"',':','"','A',' ','v','a',
+'l','i','d',' ','p','a','r','t','i','t','i','o','n',' ','c','o','u','l','d',' ','n','o','t',' ','b',
+'e',' ','d','e','t','e','r','m','i','n','e','d','"',',','"','t','y','p','e','"',':','"','e','r','r',
+'o','r','"','}',']','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',
+',','"','e','r','r','o','r','"',':','"','C','o','u','l','d',' ','n','o','t',' ','l','o','a','d',' ',
+'p','a','r','t','i','t','i','o','n',' ','f','o','r',' ','A','R','N',' ','r','e','g','i','o','n',' ',
+'`','{','b','u','c','k','e','t','A','r','n','#','r','e','g','i','o','n','}','`','"',',','"','t','y',
+'p','e','"',':','"','e','r','r','o','r','"','}',']','}',']','}',']','}',',','{','"','c','o','n','d',
+'i','t','i','o','n','s','"',':','[',']',',','"','e','r','r','o','r','"',':','"','I','n','v','a','l',
+'i','d',' ','A','R','N',':',' ','T','h','e',' ','A','R','N',' ','m','a','y',' ','o','n','l','y',' ',
+'c','o','n','t','a','i','n',' ','a',' ','s','i','n','g','l','e',' ','r','e','s','o','u','r','c','e',
+' ','c','o','m','p','o','n','e','n','t',' ','a','f','t','e','r',' ','`','a','c','c','e','s','s','p',
+'o','i','n','t','`','.','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',']','}',
+']','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','r',
+'r','o','r','"',':','"','I','n','v','a','l','i','d',' ','A','R','N',':',' ','b','u','c','k','e','t',
+' ','A','R','N',' ','i','s',' ','m','i','s','s','i','n','g',' ','a',' ','r','e','g','i','o','n','"',
+',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',']','}',']','}',']','}',']','}',',',
+'{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','r','r','o','r','"',':',
+'"','I','n','v','a','l','i','d',' ','A','R','N',':',' ','E','x','p','e','c','t','e','d',' ','a',' ',
+'r','e','s','o','u','r','c','e',' ','o','f',' ','t','h','e',' ','f','o','r','m','a','t',' ','`','a',
+'c','c','e','s','s','p','o','i','n','t',':','<','a','c','c','e','s','s','p','o','i','n','t',' ','n',
+'a','m','e','>','`',' ','b','u','t',' ','n','o',' ','n','a','m','e',' ','w','a','s',' ','p','r','o',
+'v','i','d','e','d','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',']','}',']',
+'}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','r','r','o','r',
+'"',':','"','I','n','v','a','l','i','d',' ','A','R','N',':',' ','O','b','j','e','c','t',' ','L','a',
+'m','b','d','a',' ','A','R','N','s',' ','o','n','l','y',' ','s','u','p','p','o','r','t',' ','`','a',
+'c','c','e','s','s','p','o','i','n','t','`',' ','a','r','n',' ','t','y','p','e','s',',',' ','b','u',
+'t',' ','f','o','u','n','d',':',' ','`','{','a','r','n','T','y','p','e','}','`','"',',','"','t','y',
+'p','e','"',':','"','e','r','r','o','r','"','}',']','}',',','{','"','c','o','n','d','i','t','i','o',
+'n','s','"',':','[','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',
+',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','a','r','n','T','y','p','e','"',
+'}',',','"','a','c','c','e','s','s','p','o','i','n','t','"',']','}',']',',','"','t','y','p','e','"',
+':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t',
+'i','o','n','s','"',':','[','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','b','u','c','k','e','t','A','r','n','"','}',
+',','"','r','e','s','o','u','r','c','e','I','d','[','1',']','"',']',',','"','a','s','s','i','g','n',
+'"',':','"','a','c','c','e','s','s','P','o','i','n','t','N','a','m','e','"','}',',','{','"','f','n',
+'"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','s','t',
+'r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f',
+'"',':','"','a','c','c','e','s','s','P','o','i','n','t','N','a','m','e','"','}',',','"','"',']','}',
+']','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',
+':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','t','y','p','e','"',
+':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t',
+'i','o','n','s','"',':','[','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',
+':','[','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a',
+'r','g','v','"',':','[','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r',
+'g','v','"',':','[','{','"','r','e','f','"',':','"','b','u','c','k','e','t','A','r','n','"','}',',',
+'"','r','e','g','i','o','n','"',']','}',',','"','"',']','}',']','}',']',',','"','t','y','p','e','"',
+':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t',
+'i','o','n','s','"',':','[','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l',
+'s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','a','r','n','T','y','p',
+'e','"','}',',','"','a','c','c','e','s','s','p','o','i','n','t','"',']','}',']',',','"','t','y','p',
+'e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d',
+'i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g',
+'v','"',':','[','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',',
+'"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"',
+'a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','b','u','c','k','e','t','A','r','n','"',
+'}',',','"','r','e','g','i','o','n','"',']','}',',','"','"',']','}',']','}',']',',','"','t','y','p',
+'e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d',
+'i','t','i','o','n','s','"',':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',',
+'"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{',
+'"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e',
+'f','"',':','"','D','i','s','a','b','l','e','A','c','c','e','s','s','P','o','i','n','t','s','"','}',
+']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',',
+'"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','D','i','s','a','b','l','e','A','c',
+'c','e','s','s','P','o','i','n','t','s','"','}',',','t','r','u','e',']','}',']',',','"','e','r','r',
+'o','r','"',':','"','A','c','c','e','s','s',' ','p','o','i','n','t','s',' ','a','r','e',' ','n','o',
+'t',' ','s','u','p','p','o','r','t','e','d',' ','f','o','r',' ','t','h','i','s',' ','o','p','e','r',
+'a','t','i','o','n','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',',','{','"',
+'c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','t','y','p','e','"',':','"','t','r',
+'e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s',
+'"',':','[','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"',
+'f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',
+':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','b','u','c','k','e','t','A','r','n','"','}',',','"','r','e','s','o','u','r','c','e','I','d',
+'[','2',']','"',']','}',']','}',']','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',
+',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',
+']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[',
+'{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','i','s','S',
+'e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','A','r',
+'n','R','e','g','i','o','n','"','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a',
+'n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"',
+'U','s','e','A','r','n','R','e','g','i','o','n','"','}',',','f','a','l','s','e',']','}',',','{','"',
+'f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"',
+'s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','f',
+'n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v','"',':','[','{','"','r','e',
+'f','"',':','"','b','u','c','k','e','t','A','r','n','"','}',',','"','r','e','g','i','o','n','"',']',
+'}',',','"','{','R','e','g','i','o','n','}','"',']','}',']','}',']',',','"','e','r','r','o','r','"',
+':','"','I','n','v','a','l','i','d',' ','c','o','n','f','i','g','u','r','a','t','i','o','n',':',' ',
+'r','e','g','i','o','n',' ','f','r','o','m',' ','A','R','N',' ','`','{','b','u','c','k','e','t','A',
+'r','n','#','r','e','g','i','o','n','}','`',' ','d','o','e','s',' ','n','o','t',' ','m','a','t','c',
+'h',' ','c','l','i','e','n','t',' ','r','e','g','i','o','n',' ','`','{','R','e','g','i','o','n','}',
+'`',' ','a','n','d',' ','U','s','e','A','r','n','R','e','g','i','o','n',' ','i','s',' ','`','f','a',
+'l','s','e','`','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',',','{','"','c',
+'o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','t','y','p','e','"',':','"','t','r','e',
+'e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',
+':','[','{','"','f','n','"',':','"','a','w','s','.','p','a','r','t','i','t','i','o','n','"',',','"',
+'a','r','g','v','"',':','[','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','b','u','c','k','e','t','A','r','n','"','}',
+',','"','r','e','g','i','o','n','"',']','}',']',',','"','a','s','s','i','g','n','"',':','"','b','u',
+'c','k','e','t','P','a','r','t','i','t','i','o','n','"','}',']',',','"','t','y','p','e','"',':','"',
+'t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o',
+'n','s','"',':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l',
+'e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',
+':','"','a','w','s','.','p','a','r','t','i','t','i','o','n','"',',','"','a','r','g','v','"',':','[',
+'{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',']',',','"','a','s','s','i','g','n',
+'"',':','"','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','"','}',']',',','"','t','y',
+'p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n',
+'d','i','t','i','o','n','s','"',':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',
+',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',
+'{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g',
+'v','"',':','[','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v',
+'"',':','[','{','"','r','e','f','"',':','"','b','u','c','k','e','t','P','a','r','t','i','t','i','o',
+'n','"','}',',','"','n','a','m','e','"',']','}',',','"','{','p','a','r','t','i','t','i','o','n','R',
+'e','s','u','l','t','#','n','a','m','e','}','"',']','}',']',',','"','t','y','p','e','"',':','"','t',
+'r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n',
+'s','"',':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e',
+'s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':',
+'"','i','s','V','a','l','i','d','H','o','s','t','L','a','b','e','l','"',',','"','a','r','g','v','"',
+':','[','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v','"',':',
+'[','{','"','r','e','f','"',':','"','b','u','c','k','e','t','A','r','n','"','}',',','"','r','e','g',
+'i','o','n','"',']','}',',','t','r','u','e',']','}',']',',','"','t','y','p','e','"',':','"','t','r',
+'e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s',
+'"',':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s',
+'"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"',
+'s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','f',
+'n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v','"',':','[','{','"','r','e',
+'f','"',':','"','b','u','c','k','e','t','A','r','n','"','}',',','"','s','e','r','v','i','c','e','"',
+']','}',',','"','s','3','"',']','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',',
+'"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',
+',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{',
+'"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','i','s','V','a',
+'l','i','d','H','o','s','t','L','a','b','e','l','"',',','"','a','r','g','v','"',':','[','{','"','f',
+'n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v','"',':','[','{','"','r','e',
+'f','"',':','"','b','u','c','k','e','t','A','r','n','"','}',',','"','a','c','c','o','u','n','t','I',
+'d','"',']','}',',','f','a','l','s','e',']','}',']',',','"','t','y','p','e','"',':','"','t','r','e',
+'e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',
+':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',
+':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','i',
+'s','V','a','l','i','d','H','o','s','t','L','a','b','e','l','"',',','"','a','r','g','v','"',':','[',
+'{','"','r','e','f','"',':','"','a','c','c','e','s','s','P','o','i','n','t','N','a','m','e','"','}',
+',','f','a','l','s','e',']','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"',
+'r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',',
+'"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"',
+'c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e',
+'a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':',
+'"','A','c','c','e','l','e','r','a','t','e','"','}',',','t','r','u','e',']','}',']',',','"','e','r',
+'r','o','r','"',':','"','A','c','c','e','s','s',' ','P','o','i','n','t','s',' ','d','o',' ','n','o',
+'t',' ','s','u','p','p','o','r','t',' ','S','3',' ','A','c','c','e','l','e','r','a','t','e','"',',',
+'"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',',','{','"','c','o','n','d','i','t','i',
+'o','n','s','"',':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u',
+'l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n',
+'"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':',
+'[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r','u','e',']','}',
+',','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r',
+'g','v','"',':','[','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g',
+'v','"',':','[','{','"','r','e','f','"',':','"','b','u','c','k','e','t','P','a','r','t','i','t','i',
+'o','n','"','}',',','"','n','a','m','e','"',']','}',',','"','a','w','s','-','c','n','"',']','}',']',
+',','"','e','r','r','o','r','"',':','"','P','a','r','t','i','t','i','o','n',' ','d','o','e','s',' ',
+'n','o','t',' ','s','u','p','p','o','r','t',' ','F','I','P','S','"',',','"','t','y','p','e','"',':',
+'"','e','r','r','o','r','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',
+',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{',
+'"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l',
+'e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t','r','u','e',']','}',',','{',
+'"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e',
+'f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',']',',','"','e','r','r','o','r','"',
+':','"','D','u','a','l','S','t','a','c','k',' ','c','a','n','n','o','t',' ','b','e',' ','c','o','m',
+'b','i','n','e','d',' ','w','i','t','h',' ','a',' ','H','o','s','t',' ','o','v','e','r','r','i','d',
+'e',' ','(','P','r','i','v','a','t','e','L','i','n','k',')','"',',','"','t','y','p','e','"',':','"',
+'e','r','r','o','r','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',',
+'"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"',
+'c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e',
+'a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':',
+'"','U','s','e','F','I','P','S','"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"',
+'b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t','r','u','e',
+']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t',
+'t','p','s',':','/','/','{','a','c','c','e','s','s','P','o','i','n','t','N','a','m','e','}','-','{',
+'b','u','c','k','e','t','A','r','n','#','a','c','c','o','u','n','t','I','d','}','.','s','3','-','a',
+'c','c','e','s','s','p','o','i','n','t','-','f','i','p','s','.','d','u','a','l','s','t','a','c','k',
+'.','{','b','u','c','k','e','t','A','r','n','#','r','e','g','i','o','n','}','.','{','b','u','c','k',
+'e','t','P','a','r','t','i','t','i','o','n','#','d','n','s','S','u','f','f','i','x','}','"',',','"',
+'p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s',
+'"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i',
+'n','g','R','e','g','i','o','n','"',':','"','{','b','u','c','k','e','t','A','r','n','#','r','e','g',
+'i','o','n','}','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',',
+'"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t',
+'r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p',
+'e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o',
+'n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s',
+'"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S',
+'"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E',
+'q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s',
+'e','D','u','a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',']',',','"','e','n',
+'d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','{',
+'a','c','c','e','s','s','P','o','i','n','t','N','a','m','e','}','-','{','b','u','c','k','e','t','A',
+'r','n','#','a','c','c','o','u','n','t','I','d','}','.','s','3','-','a','c','c','e','s','s','p','o',
+'i','n','t','-','f','i','p','s','.','{','b','u','c','k','e','t','A','r','n','#','r','e','g','i','o',
+'n','}','.','{','b','u','c','k','e','t','P','a','r','t','i','t','i','o','n','#','d','n','s','S','u',
+'f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t',
+'h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4',
+'"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','{','b','u','c','k','e',
+'t','A','r','n','#','r','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n','g','N','a','m',
+'e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c',
+'o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':',
+'{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"',
+'c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e',
+'a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':',
+'"','U','s','e','F','I','P','S','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':',
+'"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{',
+'"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t','r','u',
+'e',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h',
+'t','t','p','s',':','/','/','{','a','c','c','e','s','s','P','o','i','n','t','N','a','m','e','}','-',
+'{','b','u','c','k','e','t','A','r','n','#','a','c','c','o','u','n','t','I','d','}','.','s','3','-',
+'a','c','c','e','s','s','p','o','i','n','t','.','d','u','a','l','s','t','a','c','k','.','{','b','u',
+'c','k','e','t','A','r','n','#','r','e','g','i','o','n','}','.','{','b','u','c','k','e','t','P','a',
+'r','t','i','t','i','o','n','#','d','n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p',
+'e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{',
+'"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e',
+'g','i','o','n','"',':','"','{','b','u','c','k','e','t','A','r','n','#','r','e','g','i','o','n','}',
+'"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s',
+'a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',
+']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"',
+'e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':',
+'[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','f',
+'a','l','s','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a',
+'l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u',
+'a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"',
+'i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n',
+'d','p','o','i','n','t','"','}',']','}',',','{','"','f','n','"',':','"','p','a','r','s','e','U','R',
+'L','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i',
+'n','t','"','}',']',',','"','a','s','s','i','g','n','"',':','"','u','r','l','"','}',']',',','"','e',
+'n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','{','u','r','l','#','s','c','h',
+'e','m','e','}',':','/','/','{','a','c','c','e','s','s','P','o','i','n','t','N','a','m','e','}','-',
+'{','b','u','c','k','e','t','A','r','n','#','a','c','c','o','u','n','t','I','d','}','.','{','u','r',
+'l','#','a','u','t','h','o','r','i','t','y','}','{','u','r','l','#','p','a','t','h','}','"',',','"',
+'p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s',
+'"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i',
+'n','g','R','e','g','i','o','n','"',':','"','{','b','u','c','k','e','t','A','r','n','#','r','e','g',
+'i','o','n','}','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',',
+'"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t',
+'r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p',
+'e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o',
+'n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s',
+'"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S',
+'"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n',
+'E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U',
+'s','e','D','u','a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',']',',','"','e',
+'n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/',
+'{','a','c','c','e','s','s','P','o','i','n','t','N','a','m','e','}','-','{','b','u','c','k','e','t',
+'A','r','n','#','a','c','c','o','u','n','t','I','d','}','.','s','3','-','a','c','c','e','s','s','p',
+'o','i','n','t','.','{','b','u','c','k','e','t','A','r','n','#','r','e','g','i','o','n','}','.','{',
+'b','u','c','k','e','t','P','a','r','t','i','t','i','o','n','#','d','n','s','S','u','f','f','i','x',
+'}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h',
+'e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s',
+'i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','{','b','u','c','k','e','t','A','r','n',
+'#','r','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"',
+'s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n',
+'g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',',
+'"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',']','}',']','}',']','}',']',
+'}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','r','r',
+'o','r','"',':','"','I','n','v','a','l','i','d',' ','A','R','N',':',' ','T','h','e',' ','a','c','c',
+'e','s','s',' ','p','o','i','n','t',' ','n','a','m','e',' ','m','a','y',' ','o','n','l','y',' ','c',
+'o','n','t','a','i','n',' ','a','-','z',',',' ','A','-','Z',',',' ','0','-','9',' ','a','n','d',' ',
+'`','-','`','.',' ','F','o','u','n','d',':',' ','`','{','a','c','c','e','s','s','P','o','i','n','t',
+'N','a','m','e','}','`','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',']','}',
+']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','r','r','o',
+'r','"',':','"','I','n','v','a','l','i','d',' ','A','R','N',':',' ','T','h','e',' ','a','c','c','o',
+'u','n','t',' ','i','d',' ','m','a','y',' ','o','n','l','y',' ','c','o','n','t','a','i','n',' ','a',
+'-','z',',',' ','A','-','Z',',',' ','0','-','9',' ','a','n','d',' ','`','-','`','.',' ','F','o','u',
+'n','d',':',' ','`','{','b','u','c','k','e','t','A','r','n','#','a','c','c','o','u','n','t','I','d',
+'}','`','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',']','}',']','}',',','{',
+'"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','r','r','o','r','"',':','"',
+'I','n','v','a','l','i','d',' ','A','R','N',':',' ','T','h','e',' ','A','R','N',' ','w','a','s',' ',
+'n','o','t',' ','f','o','r',' ','t','h','e',' ','S','3',' ','s','e','r','v','i','c','e',',',' ','f',
+'o','u','n','d',':',' ','{','b','u','c','k','e','t','A','r','n','#','s','e','r','v','i','c','e','}',
+'"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',']','}',']','}',',','{','"','c',
+'o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','r','r','o','r','"',':','"','I','n',
+'v','a','l','i','d',' ','r','e','g','i','o','n',' ','i','n',' ','A','R','N',':',' ','`','{','b','u',
+'c','k','e','t','A','r','n','#','r','e','g','i','o','n','}','`',' ','(','i','n','v','a','l','i','d',
+' ','D','N','S',' ','n','a','m','e',')','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r',
+'"','}',']','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"',
+'e','r','r','o','r','"',':','"','C','l','i','e','n','t',' ','w','a','s',' ','c','o','n','f','i','g',
+'u','r','e','d',' ','f','o','r',' ','p','a','r','t','i','t','i','o','n',' ','`','{','p','a','r','t',
+'i','t','i','o','n','R','e','s','u','l','t','#','n','a','m','e','}','`',' ','b','u','t',' ','A','R',
+'N',' ','(','`','{','B','u','c','k','e','t','}','`',')',' ','h','a','s',' ','`','{','b','u','c','k',
+'e','t','P','a','r','t','i','t','i','o','n','#','n','a','m','e','}','`','"',',','"','t','y','p','e',
+'"',':','"','e','r','r','o','r','"','}',']','}',']','}',',','{','"','c','o','n','d','i','t','i','o',
+'n','s','"',':','[',']',',','"','e','r','r','o','r','"',':','"','A',' ','v','a','l','i','d',' ','p',
+'a','r','t','i','t','i','o','n',' ','c','o','u','l','d',' ','n','o','t',' ','b','e',' ','d','e','t',
+'e','r','m','i','n','e','d','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',']',
+'}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','r','r',
+'o','r','"',':','"','C','o','u','l','d',' ','n','o','t',' ','l','o','a','d',' ','p','a','r','t','i',
+'t','i','o','n',' ','f','o','r',' ','A','R','N',' ','r','e','g','i','o','n',' ','`','{','b','u','c',
+'k','e','t','A','r','n','#','r','e','g','i','o','n','}','`','"',',','"','t','y','p','e','"',':','"',
+'e','r','r','o','r','"','}',']','}',']','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n',
+'s','"',':','[',']',',','"','e','r','r','o','r','"',':','"','I','n','v','a','l','i','d',' ','A','R',
+'N',':',' ','T','h','e',' ','A','R','N',' ','m','a','y',' ','o','n','l','y',' ','c','o','n','t','a',
+'i','n',' ','a',' ','s','i','n','g','l','e',' ','r','e','s','o','u','r','c','e',' ','c','o','m','p',
+'o','n','e','n','t',' ','a','f','t','e','r',' ','`','a','c','c','e','s','s','p','o','i','n','t','`',
+'.','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',']','}',']','}',']','}',',',
+'{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','r','r','o','r','"',':',
+'"','I','n','v','a','l','i','d',' ','A','R','N',':',' ','b','u','c','k','e','t',' ','A','R','N',' ',
+'i','s',' ','m','i','s','s','i','n','g',' ','a',' ','r','e','g','i','o','n','"',',','"','t','y','p',
+'e','"',':','"','e','r','r','o','r','"','}',']','}',']','}',',','{','"','c','o','n','d','i','t','i',
+'o','n','s','"',':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u',
+'l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n',
+'"',':','"','i','s','V','a','l','i','d','H','o','s','t','L','a','b','e','l','"',',','"','a','r','g',
+'v','"',':','[','{','"','r','e','f','"',':','"','a','c','c','e','s','s','P','o','i','n','t','N','a',
+'m','e','"','}',',','t','r','u','e',']','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e',
+'"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':',
+'[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':',
+'[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o',
+'o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e',
+'f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t','r','u','e',']','}',
+']',',','"','e','r','r','o','r','"',':','"','S','3',' ','M','R','A','P',' ','d','o','e','s',' ','n',
+'o','t',' ','s','u','p','p','o','r','t',' ','d','u','a','l','-','s','t','a','c','k','"',',','"','t',
+'y','p','e','"',':','"','e','r','r','o','r','"','}',',','{','"','c','o','n','d','i','t','i','o','n',
+'s','"',':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e',
+'s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':',
+'"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{',
+'"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r','u','e',']','}',']',',',
+'"','e','r','r','o','r','"',':','"','S','3',' ','M','R','A','P',' ','d','o','e','s',' ','n','o','t',
+' ','s','u','p','p','o','r','t',' ','F','I','P','S','"',',','"','t','y','p','e','"',':','"','e','r',
+'r','o','r','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','t',
+'y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o',
+'n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n',
+'E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','A',
+'c','c','e','l','e','r','a','t','e','"','}',',','t','r','u','e',']','}',']',',','"','e','r','r','o',
+'r','"',':','"','S','3',' ','M','R','A','P',' ','d','o','e','s',' ','n','o','t',' ','s','u','p','p',
+'o','r','t',' ','S','3',' ','A','c','c','e','l','e','r','a','t','e','"',',','"','t','y','p','e','"',
+':','"','e','r','r','o','r','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',
+']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[',
+'{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o',
+'l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f',
+'"',':','"','D','i','s','a','b','l','e','M','u','l','t','i','R','e','g','i','o','n','A','c','c','e',
+'s','s','P','o','i','n','t','s','"','}',',','t','r','u','e',']','}',']',',','"','e','r','r','o','r',
+'"',':','"','I','n','v','a','l','i','d',' ','c','o','n','f','i','g','u','r','a','t','i','o','n',':',
+' ','M','u','l','t','i','-','R','e','g','i','o','n',' ','A','c','c','e','s','s',' ','P','o','i','n',
+'t',' ','A','R','N','s',' ','a','r','e',' ','d','i','s','a','b','l','e','d','.','"',',','"','t','y',
+'p','e','"',':','"','e','r','r','o','r','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s',
+'"',':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s',
+'"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"',
+'a','w','s','.','p','a','r','t','i','t','i','o','n','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','R','e','g','i','o','n','"','}',']',',','"','a','s','s','i','g','n','"',':',
+'"','m','r','a','p','P','a','r','t','i','t','i','o','n','"','}',']',',','"','t','y','p','e','"',':',
+'"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i',
+'o','n','s','"',':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u',
+'l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n',
+'"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[',
+'{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v','"',':','[','{',
+'"','r','e','f','"',':','"','m','r','a','p','P','a','r','t','i','t','i','o','n','"','}',',','"','n',
+'a','m','e','"',']','}',',','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','b','u','c','k','e','t','A','r','n','"','}',
+',','"','p','a','r','t','i','t','i','o','n','"',']','}',']','}',']',',','"','t','y','p','e','"',':',
+'"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i',
+'o','n','s','"',':','[',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',
+':','"','h','t','t','p','s',':','/','/','{','a','c','c','e','s','s','P','o','i','n','t','N','a','m',
+'e','}','.','a','c','c','e','s','s','p','o','i','n','t','.','s','3','-','g','l','o','b','a','l','.',
+'{','m','r','a','p','P','a','r','t','i','t','i','o','n','#','d','n','s','S','u','f','f','i','x','}',
+'"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e',
+'m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','a','"',',','"','s',
+'i','g','n','i','n','g','R','e','g','i','o','n','S','e','t','"',':','[','"','*','"',']',',','"','s',
+'i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e',
+'D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"',
+'h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p',
+'o','i','n','t','"','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',
+',','"','e','r','r','o','r','"',':','"','C','l','i','e','n','t',' ','w','a','s',' ','c','o','n','f',
+'i','g','u','r','e','d',' ','f','o','r',' ','p','a','r','t','i','t','i','o','n',' ','`','{','m','r',
+'a','p','P','a','r','t','i','t','i','o','n','#','n','a','m','e','}','`',' ','b','u','t',' ','b','u',
+'c','k','e','t',' ','r','e','f','e','r','r','e','d',' ','t','o',' ','p','a','r','t','i','t','i','o',
+'n',' ','`','{','b','u','c','k','e','t','A','r','n','#','p','a','r','t','i','t','i','o','n','}','`',
+'"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',']','}',']','}',',','{','"','c',
+'o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','r','r','o','r','"',':','"','{','R',
+'e','g','i','o','n','}',' ','w','a','s',' ','n','o','t',' ','a',' ','v','a','l','i','d',' ','r','e',
+'g','i','o','n','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',']','}',']','}',
+']','}',']','}',']','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',
+',','"','e','r','r','o','r','"',':','"','I','n','v','a','l','i','d',' ','A','c','c','e','s','s',' ',
+'P','o','i','n','t',' ','N','a','m','e','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r',
+'"','}',']','}',']','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',
+',','"','e','r','r','o','r','"',':','"','I','n','v','a','l','i','d',' ','A','R','N',':',' ','E','x',
+'p','e','c','t','e','d',' ','a',' ','r','e','s','o','u','r','c','e',' ','o','f',' ','t','h','e',' ',
+'f','o','r','m','a','t',' ','`','a','c','c','e','s','s','p','o','i','n','t',':','<','a','c','c','e',
+'s','s','p','o','i','n','t',' ','n','a','m','e','>','`',' ','b','u','t',' ','n','o',' ','n','a','m',
+'e',' ','w','a','s',' ','p','r','o','v','i','d','e','d','"',',','"','t','y','p','e','"',':','"','e',
+'r','r','o','r','"','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{',
+'"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v',
+'"',':','[','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v','"',
+':','[','{','"','r','e','f','"',':','"','b','u','c','k','e','t','A','r','n','"','}',',','"','s','e',
+'r','v','i','c','e','"',']','}',',','"','s','3','-','o','u','t','p','o','s','t','s','"',']','}',']',
+',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{',
+'"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l',
+'e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t','r','u','e',']','}',']',',',
+'"','e','r','r','o','r','"',':','"','S','3',' ','O','u','t','p','o','s','t','s',' ','d','o','e','s',
+' ','n','o','t',' ','s','u','p','p','o','r','t',' ','D','u','a','l','-','s','t','a','c','k','"',',',
+'"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',',','{','"','c','o','n','d','i','t','i',
+'o','n','s','"',':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u',
+'l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n',
+'"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':',
+'[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r','u','e',']','}',
+']',',','"','e','r','r','o','r','"',':','"','S','3',' ','O','u','t','p','o','s','t','s',' ','d','o',
+'e','s',' ','n','o','t',' ','s','u','p','p','o','r','t',' ','F','I','P','S','"',',','"','t','y','p',
+'e','"',':','"','e','r','r','o','r','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',
+':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',
+':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b',
+'o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r',
+'e','f','"',':','"','A','c','c','e','l','e','r','a','t','e','"','}',',','t','r','u','e',']','}',']',
+',','"','e','r','r','o','r','"',':','"','S','3',' ','O','u','t','p','o','s','t','s',' ','d','o','e',
+'s',' ','n','o','t',' ','s','u','p','p','o','r','t',' ','S','3',' ','A','c','c','e','l','e','r','a',
+'t','e','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',',','{','"','c','o','n',
+'d','i','t','i','o','n','s','"',':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',
+',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',
+'{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','f',
+'n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v','"',':','[','{','"','r','e',
+'f','"',':','"','b','u','c','k','e','t','A','r','n','"','}',',','"','r','e','s','o','u','r','c','e',
+'I','d','[','4',']','"',']','}',']','}',']',',','"','e','r','r','o','r','"',':','"','I','n','v','a',
+'l','i','d',' ','A','r','n',':',' ','O','u','t','p','o','s','t',' ','A','c','c','e','s','s',' ','P',
+'o','i','n','t',' ','A','R','N',' ','c','o','n','t','a','i','n','s',' ','s','u','b',' ','r','e','s',
+'o','u','r','c','e','s','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',',','{',
+'"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','t','y','p','e','"',':','"','t',
+'r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n',
+'s','"',':','[','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v',
+'"',':','[','{','"','r','e','f','"',':','"','b','u','c','k','e','t','A','r','n','"','}',',','"','r',
+'e','s','o','u','r','c','e','I','d','[','1',']','"',']',',','"','a','s','s','i','g','n','"',':','"',
+'o','u','t','p','o','s','t','I','d','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e',
+'"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':',
+'[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':',
+'[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','i','s',
+'V','a','l','i','d','H','o','s','t','L','a','b','e','l','"',',','"','a','r','g','v','"',':','[','{',
+'"','r','e','f','"',':','"','o','u','t','p','o','s','t','I','d','"','}',',','f','a','l','s','e',']',
+'}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':',
+'[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','t','y','p','e','"',':',
+'"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i',
+'o','n','s','"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v',
+'"',':','[','{','"','r','e','f','"',':','"','U','s','e','A','r','n','R','e','g','i','o','n','"','}',
+']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',',
+'"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','A','r','n','R','e','g',
+'i','o','n','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',
+',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u',
+'a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','g','e','t','A','t',
+'t','r','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','b','u','c','k','e',
+'t','A','r','n','"','}',',','"','r','e','g','i','o','n','"',']','}',',','"','{','R','e','g','i','o',
+'n','}','"',']','}',']','}',']',',','"','e','r','r','o','r','"',':','"','I','n','v','a','l','i','d',
+' ','c','o','n','f','i','g','u','r','a','t','i','o','n',':',' ','r','e','g','i','o','n',' ','f','r',
+'o','m',' ','A','R','N',' ','`','{','b','u','c','k','e','t','A','r','n','#','r','e','g','i','o','n',
+'}','`',' ','d','o','e','s',' ','n','o','t',' ','m','a','t','c','h',' ','c','l','i','e','n','t',' ',
+'r','e','g','i','o','n',' ','`','{','R','e','g','i','o','n','}','`',' ','a','n','d',' ','U','s','e',
+'A','r','n','R','e','g','i','o','n',' ','i','s',' ','`','f','a','l','s','e','`','"',',','"','t','y',
+'p','e','"',':','"','e','r','r','o','r','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s',
+'"',':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s',
+'"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"',
+'a','w','s','.','p','a','r','t','i','t','i','o','n','"',',','"','a','r','g','v','"',':','[','{','"',
+'f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v','"',':','[','{','"','r',
+'e','f','"',':','"','b','u','c','k','e','t','A','r','n','"','}',',','"','r','e','g','i','o','n','"',
+']','}',']',',','"','a','s','s','i','g','n','"',':','"','b','u','c','k','e','t','P','a','r','t','i',
+'t','i','o','n','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u',
+'l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','t',
+'y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o',
+'n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','a','w','s','.','p','a','r',
+'t','i','t','i','o','n','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R',
+'e','g','i','o','n','"','}',']',',','"','a','s','s','i','g','n','"',':','"','p','a','r','t','i','t',
+'i','o','n','R','e','s','u','l','t','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e',
+'"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':',
+'[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':',
+'[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','s','t',
+'r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',
+':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','b','u','c','k','e','t','P','a','r','t','i','t','i','o','n','"','}',',','"','n','a','m','e',
+'"',']','}',',','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v',
+'"',':','[','{','"','r','e','f','"',':','"','p','a','r','t','i','t','i','o','n','R','e','s','u','l',
+'t','"','}',',','"','n','a','m','e','"',']','}',']','}',']',',','"','t','y','p','e','"',':','"','t',
+'r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n',
+'s','"',':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e',
+'s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':',
+'"','i','s','V','a','l','i','d','H','o','s','t','L','a','b','e','l','"',',','"','a','r','g','v','"',
+':','[','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v','"',':',
+'[','{','"','r','e','f','"',':','"','b','u','c','k','e','t','A','r','n','"','}',',','"','r','e','g',
+'i','o','n','"',']','}',',','t','r','u','e',']','}',']',',','"','t','y','p','e','"',':','"','t','r',
+'e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s',
+'"',':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s',
+'"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"',
+'i','s','V','a','l','i','d','H','o','s','t','L','a','b','e','l','"',',','"','a','r','g','v','"',':',
+'[','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v','"',':','[',
+'{','"','r','e','f','"',':','"','b','u','c','k','e','t','A','r','n','"','}',',','"','a','c','c','o',
+'u','n','t','I','d','"',']','}',',','f','a','l','s','e',']','}',']',',','"','t','y','p','e','"',':',
+'"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i',
+'o','n','s','"',':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u',
+'l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n',
+'"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f',
+'"',':','"','b','u','c','k','e','t','A','r','n','"','}',',','"','r','e','s','o','u','r','c','e','I',
+'d','[','2',']','"',']',',','"','a','s','s','i','g','n','"',':','"','o','u','t','p','o','s','t','T',
+'y','p','e','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l',
+'e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','t','y',
+'p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n',
+'d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',
+',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','b','u','c','k','e','t','A','r',
+'n','"','}',',','"','r','e','s','o','u','r','c','e','I','d','[','3',']','"',']',',','"','a','s','s',
+'i','g','n','"',':','"','a','c','c','e','s','s','P','o','i','n','t','N','a','m','e','"','}',']',',',
+'"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"',
+'c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','t','y','p','e','"',':','"','t','r',
+'e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s',
+'"',':','[','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"',
+'a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','o','u','t','p','o','s','t','T','y','p',
+'e','"','}',',','"','a','c','c','e','s','s','p','o','i','n','t','"',']','}',']',',','"','t','y','p',
+'e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d',
+'i','t','i','o','n','s','"',':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',',
+'"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{',
+'"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e',
+'f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',',','{','"','f','n','"',':','"','p',
+'a','r','s','e','U','R','L','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"',
+'E','n','d','p','o','i','n','t','"','}',']',',','"','a','s','s','i','g','n','"',':','"','u','r','l',
+'"','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t',
+'t','p','s',':','/','/','{','a','c','c','e','s','s','P','o','i','n','t','N','a','m','e','}','-','{',
+'b','u','c','k','e','t','A','r','n','#','a','c','c','o','u','n','t','I','d','}','.','{','o','u','t',
+'p','o','s','t','I','d','}','.','{','u','r','l','#','a','u','t','h','o','r','i','t','y','}','"',',',
+'"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e',
+'s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n',
+'i','n','g','R','e','g','i','o','n','"',':','"','{','b','u','c','k','e','t','A','r','n','#','r','e',
+'g','i','o','n','}','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','-',
+'o','u','t','p','o','s','t','s','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E',
+'n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s',
+'"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',',
+'{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','n','d','p','o','i','n',
+'t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','{','a','c','c','e','s',
+'s','P','o','i','n','t','N','a','m','e','}','-','{','b','u','c','k','e','t','A','r','n','#','a','c',
+'c','o','u','n','t','I','d','}','.','{','o','u','t','p','o','s','t','I','d','}','.','s','3','-','o',
+'u','t','p','o','s','t','s','.','{','b','u','c','k','e','t','A','r','n','#','r','e','g','i','o','n',
+'}','.','{','b','u','c','k','e','t','P','a','r','t','i','t','i','o','n','#','d','n','s','S','u','f',
+'f','i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h',
+'S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',
+',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','{','b','u','c','k','e','t',
+'A','r','n','#','r','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n','g','N','a','m','e',
+'"',':','"','s','3','-','o','u','t','p','o','s','t','s','"',',','"','d','i','s','a','b','l','e','D',
+'o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h',
+'e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o',
+'i','n','t','"','}',']','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',
+']',',','"','e','r','r','o','r','"',':','"','E','x','p','e','c','t','e','d',' ','a','n',' ','o','u',
+'t','p','o','s','t',' ','t','y','p','e',' ','`','a','c','c','e','s','s','p','o','i','n','t','`',',',
+' ','f','o','u','n','d',' ','{','o','u','t','p','o','s','t','T','y','p','e','}','"',',','"','t','y',
+'p','e','"',':','"','e','r','r','o','r','"','}',']','}',']','}',',','{','"','c','o','n','d','i','t',
+'i','o','n','s','"',':','[',']',',','"','e','r','r','o','r','"',':','"','I','n','v','a','l','i','d',
+' ','A','R','N',':',' ','e','x','p','e','c','t','e','d',' ','a','n',' ','a','c','c','e','s','s',' ',
+'p','o','i','n','t',' ','n','a','m','e','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r',
+'"','}',']','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"',
+'e','r','r','o','r','"',':','"','I','n','v','a','l','i','d',' ','A','R','N',':',' ','E','x','p','e',
+'c','t','e','d',' ','a',' ','4','-','c','o','m','p','o','n','e','n','t',' ','r','e','s','o','u','r',
+'c','e','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',']','}',']','}',',','{',
+'"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','r','r','o','r','"',':','"',
+'I','n','v','a','l','i','d',' ','A','R','N',':',' ','T','h','e',' ','a','c','c','o','u','n','t',' ',
+'i','d',' ','m','a','y',' ','o','n','l','y',' ','c','o','n','t','a','i','n',' ','a','-','z',',',' ',
+'A','-','Z',',',' ','0','-','9',' ','a','n','d',' ','`','-','`','.',' ','F','o','u','n','d',':',' ',
+'`','{','b','u','c','k','e','t','A','r','n','#','a','c','c','o','u','n','t','I','d','}','`','"',',',
+'"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',']','}',']','}',',','{','"','c','o','n',
+'d','i','t','i','o','n','s','"',':','[',']',',','"','e','r','r','o','r','"',':','"','I','n','v','a',
+'l','i','d',' ','r','e','g','i','o','n',' ','i','n',' ','A','R','N',':',' ','`','{','b','u','c','k',
+'e','t','A','r','n','#','r','e','g','i','o','n','}','`',' ','(','i','n','v','a','l','i','d',' ','D',
+'N','S',' ','n','a','m','e',')','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',
+']','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','r',
+'r','o','r','"',':','"','C','l','i','e','n','t',' ','w','a','s',' ','c','o','n','f','i','g','u','r',
+'e','d',' ','f','o','r',' ','p','a','r','t','i','t','i','o','n',' ','`','{','p','a','r','t','i','t',
+'i','o','n','R','e','s','u','l','t','#','n','a','m','e','}','`',' ','b','u','t',' ','A','R','N',' ',
+'(','`','{','B','u','c','k','e','t','}','`',')',' ','h','a','s',' ','`','{','b','u','c','k','e','t',
+'P','a','r','t','i','t','i','o','n','#','n','a','m','e','}','`','"',',','"','t','y','p','e','"',':',
+'"','e','r','r','o','r','"','}',']','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s',
+'"',':','[',']',',','"','e','r','r','o','r','"',':','"','A',' ','v','a','l','i','d',' ','p','a','r',
+'t','i','t','i','o','n',' ','c','o','u','l','d',' ','n','o','t',' ','b','e',' ','d','e','t','e','r',
+'m','i','n','e','d','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',']','}',']',
+'}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','r','r','o','r',
+'"',':','"','C','o','u','l','d',' ','n','o','t',' ','l','o','a','d',' ','p','a','r','t','i','t','i',
+'o','n',' ','f','o','r',' ','A','R','N',' ','r','e','g','i','o','n',' ','{','b','u','c','k','e','t',
+'A','r','n','#','r','e','g','i','o','n','}','"',',','"','t','y','p','e','"',':','"','e','r','r','o',
+'r','"','}',']','}',']','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',
+']',',','"','e','r','r','o','r','"',':','"','I','n','v','a','l','i','d',' ','A','R','N',':',' ','T',
+'h','e',' ','o','u','t','p','o','s','t',' ','I','d',' ','m','a','y',' ','o','n','l','y',' ','c','o',
+'n','t','a','i','n',' ','a','-','z',',',' ','A','-','Z',',',' ','0','-','9',' ','a','n','d',' ','`',
+'-','`','.',' ','F','o','u','n','d',':',' ','`','{','o','u','t','p','o','s','t','I','d','}','`','"',
+',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',']','}',']','}',',','{','"','c','o',
+'n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','r','r','o','r','"',':','"','I','n','v',
+'a','l','i','d',' ','A','R','N',':',' ','T','h','e',' ','O','u','t','p','o','s','t',' ','I','d',' ',
+'w','a','s',' ','n','o','t',' ','s','e','t','"',',','"','t','y','p','e','"',':','"','e','r','r','o',
+'r','"','}',']','}',']','}',']','}',']','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n',
+'s','"',':','[',']',',','"','e','r','r','o','r','"',':','"','I','n','v','a','l','i','d',' ','A','R',
+'N',':',' ','U','n','r','e','c','o','g','n','i','z','e','d',' ','f','o','r','m','a','t',':',' ','{',
+'B','u','c','k','e','t','}',' ','(','t','y','p','e',':',' ','{','a','r','n','T','y','p','e','}',')',
+'"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',']','}',']','}',',','{','"','c',
+'o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','r','r','o','r','"',':','"','I','n',
+'v','a','l','i','d',' ','A','R','N',':',' ','N','o',' ','A','R','N',' ','t','y','p','e',' ','s','p',
+'e','c','i','f','i','e','d','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',']',
+'}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','s',
+'u','b','s','t','r','i','n','g','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':',
+'"','B','u','c','k','e','t','"','}',',','0',',','4',',','f','a','l','s','e',']',',','"','a','s','s',
+'i','g','n','"',':','"','a','r','n','P','r','e','f','i','x','"','}',',','{','"','f','n','"',':','"',
+'s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r',
+'e','f','"',':','"','a','r','n','P','r','e','f','i','x','"','}',',','"','a','r','n',':','"',']','}',
+',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n',
+'"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"',
+'a','w','s','.','p','a','r','s','e','A','r','n','"',',','"','a','r','g','v','"',':','[','{','"','r',
+'e','f','"',':','"','B','u','c','k','e','t','"','}',']','}',']','}',']','}',']',',','"','e','r','r',
+'o','r','"',':','"','I','n','v','a','l','i','d',' ','A','R','N',':',' ','`','{','B','u','c','k','e',
+'t','}','`',' ','w','a','s',' ','n','o','t',' ','a',' ','v','a','l','i','d',' ','A','R','N','"',',',
+'"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',',','{','"','c','o','n','d','i','t','i',
+'o','n','s','"',':','[','{','"','f','n','"',':','"','u','r','i','E','n','c','o','d','e','"',',','"',
+'a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','B','u','c','k','e','t','"','}',']',',',
+'"','a','s','s','i','g','n','"',':','"','u','r','i','_','e','n','c','o','d','e','d','_','b','u','c',
+'k','e','t','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l',
+'e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',
+':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[',
+'{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t','r',
+'u','e',']','}',',','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',
+':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',']',',','"',
+'e','r','r','o','r','"',':','"','C','a','n','n','o','t',' ','s','e','t',' ','d','u','a','l','-','s',
+'t','a','c','k',' ','i','n',' ','c','o','m','b','i','n','a','t','i','o','n',' ','w','i','t','h',' ',
+'a',' ','c','u','s','t','o','m',' ','e','n','d','p','o','i','n','t','.','"',',','"','t','y','p','e',
+'"',':','"','e','r','r','o','r','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':',
+'[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':',
+'[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','a','w',
+'s','.','p','a','r','t','i','t','i','o','n','"',',','"','a','r','g','v','"',':','[','{','"','r','e',
+'f','"',':','"','R','e','g','i','o','n','"','}',']',',','"','a','s','s','i','g','n','"',':','"','p',
+'a','r','t','i','t','i','o','n','R','e','s','u','l','t','"','}',']',',','"','t','y','p','e','"',':',
+'"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i',
+'o','n','s','"',':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u',
+'l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n',
+'"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':',
+'[','{','"','r','e','f','"',':','"','A','c','c','e','l','e','r','a','t','e','"','}',',','f','a','l',
+'s','e',']','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e',
+'s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','t','y','p',
+'e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d',
+'i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q',
+'u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e',
+'D','u','a','l','S','t','a','c','k','"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':',
+'"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','i','s','S','e',
+'t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i',
+'n','t','"','}',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q',
+'u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e',
+'F','I','P','S','"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','s','t','r','i',
+'n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':',
+'"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']',
+',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',
+':','/','/','s','3','-','f','i','p','s','.','d','u','a','l','s','t','a','c','k','.','u','s','-','e',
+'a','s','t','-','1','.','{','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n',
+'s','S','u','f','f','i','x','}','/','{','u','r','i','_','e','n','c','o','d','e','d','_','b','u','c',
+'k','e','t','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h',
+'S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',
+',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','u','s','-','e','a','s','t',
+'-','1','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d',
+'i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u',
+'e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',
+':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s',
+'"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',',
+'"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t',
+'a','c','k','"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',',
+'"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r',
+'g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',
+']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',',
+'"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',
+',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a',
+'l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o',
+'n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']',',','"','e','n','d','p',
+'o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','s','3','-',
+'f','i','p','s','.','d','u','a','l','s','t','a','c','k','.','u','s','-','e','a','s','t','-','1','.',
+'{','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f','f','i',
+'x','}','/','{','u','r','i','_','e','n','c','o','d','e','d','_','b','u','c','k','e','t','}','"',',',
+'"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e',
+'s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n',
+'i','n','g','R','e','g','i','o','n','"',':','"','u','s','-','e','a','s','t','-','1','"',',','"','s',
+'i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e',
+'D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"',
+'h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p',
+'o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f',
+'n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',
+':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',',
+'t','r','u','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',
+':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{',
+'"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',']','}',',','{','"','f',
+'n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',
+':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r','u','e',']',
+'}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f',
+'n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':',
+'[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l',
+'o','b','a','l','"',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E',
+'q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s',
+'e','G','l','o','b','a','l','E','n','d','p','o','i','n','t','"','}',',','t','r','u','e',']','}',']',
+',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{',
+'"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','n','d','p','o','i','n','t',
+'"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','s','3','-','f','i','p','s',
+'.','d','u','a','l','s','t','a','c','k','.','{','R','e','g','i','o','n','}','.','{','p','a','r','t',
+'i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}','/','{','u',
+'r','i','_','e','n','c','o','d','e','d','_','b','u','c','k','e','t','}','"',',','"','p','r','o','p',
+'e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{',
+'"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e',
+'g','i','o','n','"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n','g',
+'N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e',
+'E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r',
+'s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',
+']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"',
+'b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t','r','u','e',
+']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"',
+'f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f',
+'"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',']','}',',','{','"','f','n','"',':','"',
+'b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r','u','e',']','}',',','{','"',
+'f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"',
+'s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r',
+'e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l',
+'"',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l',
+'s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','G','l','o',
+'b','a','l','E','n','d','p','o','i','n','t','"','}',',','f','a','l','s','e',']','}',']',',','"','e',
+'n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/',
+'s','3','-','f','i','p','s','.','d','u','a','l','s','t','a','c','k','.','{','R','e','g','i','o','n',
+'}','.','{','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f',
+'f','i','x','}','/','{','u','r','i','_','e','n','c','o','d','e','d','_','b','u','c','k','e','t','}',
+'"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e',
+'m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i',
+'g','n','i','n','g','R','e','g','i','o','n','"',':','"','{','R','e','g','i','o','n','}','"',',','"',
+'s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l',
+'e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',',
+'"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d',
+'p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"',
+'f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v',
+'"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',
+',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']',
+'}',',','{','"','f','n','"',':','"','p','a','r','s','e','U','R','L','"',',','"','a','r','g','v','"',
+':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']',',','"','a','s',
+'s','i','g','n','"',':','"','u','r','l','"','}',',','{','"','f','n','"',':','"','b','o','o','l','e',
+'a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':',
+'"','U','s','e','F','I','P','S','"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"',
+'s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r',
+'e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l',
+'"',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','{',
+'u','r','l','#','s','c','h','e','m','e','}',':','/','/','{','u','r','l','#','a','u','t','h','o','r',
+'i','t','y','}','{','u','r','l','#','n','o','r','m','a','l','i','z','e','d','P','a','t','h','}','{',
+'u','r','i','_','e','n','c','o','d','e','d','_','b','u','c','k','e','t','}','"',',','"','p','r','o',
+'p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[',
+'{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R',
+'e','g','i','o','n','"',':','"','u','s','-','e','a','s','t','-','1','"',',','"','s','i','g','n','i',
+'n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b',
+'l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d',
+'e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t',
+'"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"',
+'b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','f','a','l','s',
+'e',']','}',',','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':',
+'[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',',','{','"','f',
+'n','"',':','"','p','a','r','s','e','U','R','L','"',',','"','a','r','g','v','"',':','[','{','"','r',
+'e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']',',','"','a','s','s','i','g','n','"',
+':','"','u','r','l','"','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u',
+'a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F',
+'I','P','S','"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','s','t','r','i','n',
+'g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"',
+'R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']',',',
+'"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','{','u','r','l','#','s',
+'c','h','e','m','e','}',':','/','/','{','u','r','l','#','a','u','t','h','o','r','i','t','y','}','{',
+'u','r','l','#','n','o','r','m','a','l','i','z','e','d','P','a','t','h','}','{','u','r','i','_','e',
+'n','c','o','d','e','d','_','b','u','c','k','e','t','}','"',',','"','p','r','o','p','e','r','t','i',
+'e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m',
+'e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n',
+'"',':','"','u','s','-','e','a','s','t','-','1','"',',','"','s','i','g','n','i','n','g','N','a','m',
+'e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c',
+'o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':',
+'{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"',
+'c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e',
+'a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':',
+'"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',',','{',
+'"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e',
+'f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',',','{','"','f','n','"',':','"','p',
+'a','r','s','e','U','R','L','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"',
+'E','n','d','p','o','i','n','t','"','}',']',',','"','a','s','s','i','g','n','"',':','"','u','r','l',
+'"','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',',
+'"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',
+',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v',
+'"',':','[','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"',
+'a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"',
+'a','w','s','-','g','l','o','b','a','l','"',']','}',']','}',',','{','"','f','n','"',':','"','b','o',
+'o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e',
+'f','"',':','"','U','s','e','G','l','o','b','a','l','E','n','d','p','o','i','n','t','"','}',',','t',
+'r','u','e',']','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l',
+'e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','n',
+'d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','{','u','r','l','#','s','c','h','e',
+'m','e','}',':','/','/','{','u','r','l','#','a','u','t','h','o','r','i','t','y','}','{','u','r','l',
+'#','n','o','r','m','a','l','i','z','e','d','P','a','t','h','}','{','u','r','i','_','e','n','c','o',
+'d','e','d','_','b','u','c','k','e','t','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',
+':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':',
+'"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"',
+'{','R','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"',
+'s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n',
+'g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',',
+'"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',']','}',',','{','"','c','o',
+'n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n',
+'E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U',
+'s','e','D','u','a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',',','{','"','f',
+'n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','E','n','d','p','o','i','n','t','"','}',']','}',',','{','"','f','n','"',':','"','p','a','r',
+'s','e','U','R','L','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n',
+'d','p','o','i','n','t','"','}',']',',','"','a','s','s','i','g','n','"',':','"','u','r','l','"','}',
+',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t',
+'r','u','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':',
+'[','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r',
+'g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w',
+'s','-','g','l','o','b','a','l','"',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l',
+'e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','U','s','e','G','l','o','b','a','l','E','n','d','p','o','i','n','t','"','}',',','f','a','l',
+'s','e',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"',
+'{','u','r','l','#','s','c','h','e','m','e','}',':','/','/','{','u','r','l','#','a','u','t','h','o',
+'r','i','t','y','}','{','u','r','l','#','n','o','r','m','a','l','i','z','e','d','P','a','t','h','}',
+'{','u','r','i','_','e','n','c','o','d','e','d','_','b','u','c','k','e','t','}','"',',','"','p','r',
+'o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':',
+'[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g',
+'R','e','g','i','o','n','"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i','g','n','i',
+'n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b',
+'l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d',
+'e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t',
+'"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"',
+'b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','f','a','l','s',
+'e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{',
+'"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e',
+'f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',']','}',',','{','"','f','n','"',':',
+'"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{',
+'"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r','u','e',']','}',',','{',
+'"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v',
+'"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-',
+'g','l','o','b','a','l','"',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u',
+'r','l','"',':','"','h','t','t','p','s',':','/','/','s','3','-','f','i','p','s','.','u','s','-','e',
+'a','s','t','-','1','.','{','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n',
+'s','S','u','f','f','i','x','}','/','{','u','r','i','_','e','n','c','o','d','e','d','_','b','u','c',
+'k','e','t','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h',
+'S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',
+',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','u','s','-','e','a','s','t',
+'-','1','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d',
+'i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u',
+'e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',
+':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s',
+'"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',',
+'"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t',
+'a','c','k','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',
+',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']',
+'}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',
+',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"',
+'}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u',
+'a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i',
+'o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']',',','"','e','n','d',
+'p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','s','3',
+'-','f','i','p','s','.','u','s','-','e','a','s','t','-','1','.','{','p','a','r','t','i','t','i','o',
+'n','R','e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}','/','{','u','r','i','_','e',
+'n','c','o','d','e','d','_','b','u','c','k','e','t','}','"',',','"','p','r','o','p','e','r','t','i',
+'e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m',
+'e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n',
+'"',':','"','u','s','-','e','a','s','t','-','1','"',',','"','s','i','g','n','i','n','g','N','a','m',
+'e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c',
+'o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':',
+'{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"',
+'c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e',
+'a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':',
+'"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',',','{',
+'"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':',
+'"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E',
+'n','d','p','o','i','n','t','"','}',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l',
+'e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','U','s','e','F','I','P','S','"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':',
+'"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','s','t','r','i',
+'n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':',
+'"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']',
+'}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"',
+'a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','G','l','o','b','a','l','E',
+'n','d','p','o','i','n','t','"','}',',','t','r','u','e',']','}',']',',','"','t','y','p','e','"',':',
+'"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i',
+'o','n','s','"',':','[',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',
+':','"','h','t','t','p','s',':','/','/','s','3','-','f','i','p','s','.','{','R','e','g','i','o','n',
+'}','.','{','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f',
+'f','i','x','}','/','{','u','r','i','_','e','n','c','o','d','e','d','_','b','u','c','k','e','t','}',
+'"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e',
+'m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i',
+'g','n','i','n','g','R','e','g','i','o','n','"',':','"','{','R','e','g','i','o','n','}','"',',','"',
+'s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l',
+'e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',',
+'"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d',
+'p','o','i','n','t','"','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',
+'{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r',
+'g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k',
+'"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a',
+'r','g','v','"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v',
+'"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',']','}',
+',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t',
+'r','u','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':',
+'[','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r',
+'g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w',
+'s','-','g','l','o','b','a','l','"',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l',
+'e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','U','s','e','G','l','o','b','a','l','E','n','d','p','o','i','n','t','"','}',',','f','a','l',
+'s','e',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"',
+'h','t','t','p','s',':','/','/','s','3','-','f','i','p','s','.','{','R','e','g','i','o','n','}','.',
+'{','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f','f','i',
+'x','}','/','{','u','r','i','_','e','n','c','o','d','e','d','_','b','u','c','k','e','t','}','"',',',
+'"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e',
+'s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n',
+'i','n','g','R','e','g','i','o','n','"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i',
+'g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D',
+'o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h',
+'e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o',
+'i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n',
+'"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':',
+'[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t',
+'r','u','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':',
+'[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',']','}',',','{','"','f','n',
+'"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':',
+'[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','f','a','l','s','e',']',
+'}',',','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a',
+'w','s','-','g','l','o','b','a','l','"',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':',
+'{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','s','3','.','d','u','a','l','s','t',
+'a','c','k','.','u','s','-','e','a','s','t','-','1','.','{','p','a','r','t','i','t','i','o','n','R',
+'e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}','/','{','u','r','i','_','e','n','c',
+'o','d','e','d','_','b','u','c','k','e','t','}','"',',','"','p','r','o','p','e','r','t','i','e','s',
+'"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',
+':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':',
+'"','u','s','-','e','a','s','t','-','1','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',
+':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d',
+'i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}',
+'}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o',
+'n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n',
+'E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U',
+'s','e','D','u','a','l','S','t','a','c','k','"','}',',','t','r','u','e',']','}',',','{','"','f','n',
+'"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','i','s',
+'S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p',
+'o','i','n','t','"','}',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n',
+'E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U',
+'s','e','F','I','P','S','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','s',
+'t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e',
+'f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',
+']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t',
+'t','p','s',':','/','/','s','3','.','d','u','a','l','s','t','a','c','k','.','u','s','-','e','a','s',
+'t','-','1','.','{','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S',
+'u','f','f','i','x','}','/','{','u','r','i','_','e','n','c','o','d','e','d','_','b','u','c','k','e',
+'t','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c',
+'h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"',
+'s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','u','s','-','e','a','s','t','-','1',
+'"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s',
+'a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',
+']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"',
+'e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':',
+'[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c',
+'k','"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a',
+'r','g','v','"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v',
+'"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',']','}',
+',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','f',
+'a','l','s','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',
+':','[','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a',
+'w','s','-','g','l','o','b','a','l','"',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o',
+'l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f',
+'"',':','"','U','s','e','G','l','o','b','a','l','E','n','d','p','o','i','n','t','"','}',',','t','r',
+'u','e',']','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e',
+'s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','n','d',
+'p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','s','3',
+'.','d','u','a','l','s','t','a','c','k','.','{','R','e','g','i','o','n','}','.','{','p','a','r','t',
+'i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}','/','{','u',
+'r','i','_','e','n','c','o','d','e','d','_','b','u','c','k','e','t','}','"',',','"','p','r','o','p',
+'e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{',
+'"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e',
+'g','i','o','n','"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n','g',
+'N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e',
+'E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r',
+'s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',
+']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"',
+'b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t','r','u','e',
+']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"',
+'f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f',
+'"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',']','}',',','{','"','f','n','"',':','"',
+'b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','f','a','l','s','e',']','}',',','{',
+'"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':',
+'"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a',
+'l','"',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a',
+'l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','G','l',
+'o','b','a','l','E','n','d','p','o','i','n','t','"','}',',','f','a','l','s','e',']','}',']',',','"',
+'e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/',
+'/','s','3','.','d','u','a','l','s','t','a','c','k','.','{','R','e','g','i','o','n','}','.','{','p',
+'a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}',
+'/','{','u','r','i','_','e','n','c','o','d','e','d','_','b','u','c','k','e','t','}','"',',','"','p',
+'r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',
+':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n',
+'g','R','e','g','i','o','n','"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i','g','n',
+'i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u',
+'b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a',
+'d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n',
+'t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':',
+'"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{',
+'"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','f','a','l',
+'s','e',']','}',',','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',
+':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',',','{','"',
+'f','n','"',':','"','p','a','r','s','e','U','R','L','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']',',','"','a','s','s','i','g','n',
+'"',':','"','u','r','l','"','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q',
+'u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e',
+'F','I','P','S','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','s','t','r',
+'i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',
+']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','{','u','r','l',
+'#','s','c','h','e','m','e','}',':','/','/','{','u','r','l','#','a','u','t','h','o','r','i','t','y',
+'}','{','u','r','l','#','n','o','r','m','a','l','i','z','e','d','P','a','t','h','}','{','u','r','i',
+'_','e','n','c','o','d','e','d','_','b','u','c','k','e','t','}','"',',','"','p','r','o','p','e','r',
+'t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n',
+'a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i',
+'o','n','"',':','"','u','s','-','e','a','s','t','-','1','"',',','"','s','i','g','n','i','n','g','N',
+'a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E',
+'n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s',
+'"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',',
+'{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o',
+'l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f',
+'"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',
+',','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',',','{','"','f','n','"',':',
+'"','p','a','r','s','e','U','R','L','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','E','n','d','p','o','i','n','t','"','}',']',',','"','a','s','s','i','g','n','"',':','"','u',
+'r','l','"','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s',
+'"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S',
+'"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','s','t','r','i','n','g','E',
+'q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e',
+'g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']',',','"','e',
+'n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','{','u','r','l','#','s','c','h',
+'e','m','e','}',':','/','/','{','u','r','l','#','a','u','t','h','o','r','i','t','y','}','{','u','r',
+'l','#','n','o','r','m','a','l','i','z','e','d','P','a','t','h','}','{','u','r','i','_','e','n','c',
+'o','d','e','d','_','b','u','c','k','e','t','}','"',',','"','p','r','o','p','e','r','t','i','e','s',
+'"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',
+':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':',
+'"','u','s','-','e','a','s','t','-','1','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',
+':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d',
+'i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}',
+'}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o',
+'n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n',
+'E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U',
+'s','e','D','u','a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',',','{','"','f',
+'n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','E','n','d','p','o','i','n','t','"','}',']','}',',','{','"','f','n','"',':','"','p','a','r',
+'s','e','U','R','L','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n',
+'d','p','o','i','n','t','"','}',']',',','"','a','s','s','i','g','n','"',':','"','u','r','l','"','}',
+',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','f',
+'a','l','s','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',
+':','[','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a',
+'w','s','-','g','l','o','b','a','l','"',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o',
+'l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f',
+'"',':','"','U','s','e','G','l','o','b','a','l','E','n','d','p','o','i','n','t','"','}',',','t','r',
+'u','e',']','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e',
+'s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':',
+'"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','u','s','-','e','a','s','t','-','1',
+'"',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','{',
+'u','r','l','#','s','c','h','e','m','e','}',':','/','/','{','u','r','l','#','a','u','t','h','o','r',
+'i','t','y','}','{','u','r','l','#','n','o','r','m','a','l','i','z','e','d','P','a','t','h','}','{',
+'u','r','i','_','e','n','c','o','d','e','d','_','b','u','c','k','e','t','}','"',',','"','p','r','o',
+'p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[',
+'{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R',
+'e','g','i','o','n','"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n',
+'g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l',
+'e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e',
+'r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"',
+'}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','n','d','p','o',
+'i','n','t','"',':','{','"','u','r','l','"',':','"','{','u','r','l','#','s','c','h','e','m','e','}',
+':','/','/','{','u','r','l','#','a','u','t','h','o','r','i','t','y','}','{','u','r','l','#','n','o',
+'r','m','a','l','i','z','e','d','P','a','t','h','}','{','u','r','i','_','e','n','c','o','d','e','d',
+'_','b','u','c','k','e','t','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"',
+'a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i',
+'g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','{','R','e',
+'g','i','o','n','}','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',
+',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':',
+'t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y',
+'p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',']','}',',','{','"','c','o','n','d','i',
+'t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u',
+'a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D',
+'u','a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':',
+'"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E',
+'n','d','p','o','i','n','t','"','}',']','}',',','{','"','f','n','"',':','"','p','a','r','s','e','U',
+'R','L','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o',
+'i','n','t','"','}',']',',','"','a','s','s','i','g','n','"',':','"','u','r','l','"','}',',','{','"',
+'f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v',
+'"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','f','a','l','s',
+'e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{',
+'"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v',
+'"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-',
+'g','l','o','b','a','l','"',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a',
+'n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"',
+'U','s','e','G','l','o','b','a','l','E','n','d','p','o','i','n','t','"','}',',','f','a','l','s','e',
+']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','{','u',
+'r','l','#','s','c','h','e','m','e','}',':','/','/','{','u','r','l','#','a','u','t','h','o','r','i',
+'t','y','}','{','u','r','l','#','n','o','r','m','a','l','i','z','e','d','P','a','t','h','}','{','u',
+'r','i','_','e','n','c','o','d','e','d','_','b','u','c','k','e','t','}','"',',','"','p','r','o','p',
+'e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{',
+'"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e',
+'g','i','o','n','"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n','g',
+'N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e',
+'E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r',
+'s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',
+',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o',
+'o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e',
+'f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']',
+'}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f',
+'n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','E','n','d','p','o','i','n','t','"','}',']','}',']','}',',','{','"','f','n','"',':','"','b',
+'o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r',
+'e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','f','a','l','s','e',']','}',',','{','"',
+'f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',
+':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g',
+'l','o','b','a','l','"',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r',
+'l','"',':','"','h','t','t','p','s',':','/','/','s','3','.','{','p','a','r','t','i','t','i','o','n',
+'R','e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}','/','{','u','r','i','_','e','n',
+'c','o','d','e','d','_','b','u','c','k','e','t','}','"',',','"','p','r','o','p','e','r','t','i','e',
+'s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e',
+'"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',
+':','"','u','s','-','e','a','s','t','-','1','"',',','"','s','i','g','n','i','n','g','N','a','m','e',
+'"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o',
+'d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{',
+'}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c',
+'o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a',
+'n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"',
+'U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',',','{','"',
+'f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"',
+'i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n',
+'d','p','o','i','n','t','"','}',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e',
+'a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':',
+'"','U','s','e','F','I','P','S','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':',
+'"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a',
+'l','"',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"',
+'h','t','t','p','s',':','/','/','s','3','.','{','p','a','r','t','i','t','i','o','n','R','e','s','u',
+'l','t','#','d','n','s','S','u','f','f','i','x','}','/','{','u','r','i','_','e','n','c','o','d','e',
+'d','_','b','u','c','k','e','t','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{',
+'"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s',
+'i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','u','s',
+'-','e','a','s','t','-','1','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s',
+'3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g',
+'"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"',
+'t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i',
+'t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u',
+'a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D',
+'u','a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':',
+'"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','i','s','S','e',
+'t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i',
+'n','t','"','}',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q',
+'u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e',
+'F','I','P','S','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','n','o','t',
+'"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q',
+'u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g',
+'i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']','}',',','{','"',
+'f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v',
+'"',':','[','{','"','r','e','f','"',':','"','U','s','e','G','l','o','b','a','l','E','n','d','p','o',
+'i','n','t','"','}',',','t','r','u','e',']','}',']',',','"','t','y','p','e','"',':','"','t','r','e',
+'e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',
+':','[','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','u',
+'s','-','e','a','s','t','-','1','"',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{',
+'"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','s','3','.','{','p','a','r','t','i','t',
+'i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}','/','{','u','r','i',
+'_','e','n','c','o','d','e','d','_','b','u','c','k','e','t','}','"',',','"','p','r','o','p','e','r',
+'t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n',
+'a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i',
+'o','n','"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n','g','N','a',
+'m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n',
+'c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',
+':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{',
+'"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','n','d','p','o','i','n','t',
+'"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','s','3','.','{','R','e','g',
+'i','o','n','}','.','{','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s',
+'S','u','f','f','i','x','}','/','{','u','r','i','_','e','n','c','o','d','e','d','_','b','u','c','k',
+'e','t','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S',
+'c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',',
+'"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','{','R','e','g','i','o','n','}',
+'"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s',
+'a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',
+']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"',
+'e','n','d','p','o','i','n','t','"','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s',
+'"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',',
+'"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t',
+'a','c','k','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',
+',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']',
+'}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',
+',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"',
+'}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r',
+'g','v','"',':','[','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',
+',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',
+',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']','}',',','{','"','f','n','"',':','"',
+'b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','U','s','e','G','l','o','b','a','l','E','n','d','p','o','i','n','t','"','}',
+',','f','a','l','s','e',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r',
+'l','"',':','"','h','t','t','p','s',':','/','/','s','3','.','{','R','e','g','i','o','n','}','.','{',
+'p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f','f','i','x',
+'}','/','{','u','r','i','_','e','n','c','o','d','e','d','_','b','u','c','k','e','t','}','"',',','"',
+'p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s',
+'"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i',
+'n','g','R','e','g','i','o','n','"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i','g',
+'n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o',
+'u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e',
+'a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i',
+'n','t','"','}',']','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',
+',','"','e','r','r','o','r','"',':','"','P','a','t','h','-','s','t','y','l','e',' ','a','d','d','r',
+'e','s','s','i','n','g',' ','c','a','n','n','o','t',' ','b','e',' ','u','s','e','d',' ','w','i','t',
+'h',' ','S','3',' ','A','c','c','e','l','e','r','a','t','e','"',',','"','t','y','p','e','"',':','"',
+'e','r','r','o','r','"','}',']','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',
+':','[',']',',','"','e','r','r','o','r','"',':','"','A',' ','v','a','l','i','d',' ','p','a','r','t',
+'i','t','i','o','n',' ','c','o','u','l','d',' ','n','o','t',' ','b','e',' ','d','e','t','e','r','m',
+'i','n','e','d','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',']','}',']','}',
+']','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',
+':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"',
+'U','s','e','O','b','j','e','c','t','L','a','m','b','d','a','E','n','d','p','o','i','n','t','"','}',
+']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',',
+'"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','O','b','j','e','c','t',
+'L','a','m','b','d','a','E','n','d','p','o','i','n','t','"','}',',','t','r','u','e',']','}',']',',',
+'"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"',
+'c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','a','w','s','.','p',
+'a','r','t','i','t','i','o','n','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':',
+'"','R','e','g','i','o','n','"','}',']',',','"','a','s','s','i','g','n','"',':','"','p','a','r','t',
+'i','t','i','o','n','R','e','s','u','l','t','"','}',']',',','"','t','y','p','e','"',':','"','t','r',
+'e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s',
+'"',':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s',
+'"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"',
+'i','s','V','a','l','i','d','H','o','s','t','L','a','b','e','l','"',',','"','a','r','g','v','"',':',
+'[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','t','r','u','e',']','}',']',
+',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{',
+'"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','t','y','p','e','"',':','"','t',
+'r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n',
+'s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',
+',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S',
+'t','a','c','k','"','}',',','t','r','u','e',']','}',']',',','"','e','r','r','o','r','"',':','"','S',
+'3',' ','O','b','j','e','c','t',' ','L','a','m','b','d','a',' ','d','o','e','s',' ','n','o','t',' ',
+'s','u','p','p','o','r','t',' ','D','u','a','l','-','s','t','a','c','k','"',',','"','t','y','p','e',
+'"',':','"','e','r','r','o','r','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':',
+'[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':',
+'[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o',
+'o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e',
+'f','"',':','"','A','c','c','e','l','e','r','a','t','e','"','}',',','t','r','u','e',']','}',']',',',
+'"','e','r','r','o','r','"',':','"','S','3',' ','O','b','j','e','c','t',' ','L','a','m','b','d','a',
+' ','d','o','e','s',' ','n','o','t',' ','s','u','p','p','o','r','t',' ','S','3',' ','A','c','c','e',
+'l','e','r','a','t','e','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',',','{',
+'"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','t','y','p','e','"',':','"','t',
+'r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n',
+'s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',
+',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"',
+'}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u',
+'a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','g','e','t','A','t',
+'t','r','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','p','a','r','t','i',
+'t','i','o','n','R','e','s','u','l','t','"','}',',','"','n','a','m','e','"',']','}',',','"','a','w',
+'s','-','c','n','"',']','}',']',',','"','e','r','r','o','r','"',':','"','P','a','r','t','i','t','i',
+'o','n',' ','d','o','e','s',' ','n','o','t',' ','s','u','p','p','o','r','t',' ','F','I','P','S','"',
+',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',',','{','"','c','o','n','d','i','t',
+'i','o','n','s','"',':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r',
+'u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f',
+'n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','E','n','d','p','o','i','n','t','"','}',']','}',',','{','"','f','n','"',':','"','p','a','r',
+'s','e','U','R','L','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n',
+'d','p','o','i','n','t','"','}',']',',','"','a','s','s','i','g','n','"',':','"','u','r','l','"','}',
+']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','{','u','r','l',
+'#','s','c','h','e','m','e','}',':','/','/','{','u','r','l','#','a','u','t','h','o','r','i','t','y',
+'}','{','u','r','l','#','p','a','t','h','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',
+':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':',
+'"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"',
+'{','R','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"',
+'s','3','-','o','b','j','e','c','t','-','l','a','m','b','d','a','"',',','"','d','i','s','a','b','l',
+'e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',',
+'"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d',
+'p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"',
+'f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v',
+'"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r','u','e',
+']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t',
+'t','p','s',':','/','/','s','3','-','o','b','j','e','c','t','-','l','a','m','b','d','a','-','f','i',
+'p','s','.','{','R','e','g','i','o','n','}','.','{','p','a','r','t','i','t','i','o','n','R','e','s',
+'u','l','t','#','d','n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i',
+'e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m',
+'e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n',
+'"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n','g','N','a','m','e',
+'"',':','"','s','3','-','o','b','j','e','c','t','-','l','a','m','b','d','a','"',',','"','d','i','s',
+'a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',
+']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"',
+'e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':',
+'[',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t',
+'p','s',':','/','/','s','3','-','o','b','j','e','c','t','-','l','a','m','b','d','a','.','{','R','e',
+'g','i','o','n','}','.','{','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n',
+'s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"',
+'a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i',
+'g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','{','R','e',
+'g','i','o','n','}','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','-',
+'o','b','j','e','c','t','-','l','a','m','b','d','a','"',',','"','d','i','s','a','b','l','e','D','o',
+'u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e',
+'a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i',
+'n','t','"','}',']','}',']','}',']','}',']','}',']','}',',','{','"','c','o','n','d','i','t','i','o',
+'n','s','"',':','[',']',',','"','e','r','r','o','r','"',':','"','I','n','v','a','l','i','d',' ','r',
+'e','g','i','o','n',':',' ','r','e','g','i','o','n',' ','w','a','s',' ','n','o','t',' ','a',' ','v',
+'a','l','i','d',' ','D','N','S',' ','n','a','m','e','.','"',',','"','t','y','p','e','"',':','"','e',
+'r','r','o','r','"','}',']','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':',
+'[',']',',','"','e','r','r','o','r','"',':','"','A',' ','v','a','l','i','d',' ','p','a','r','t','i',
+'t','i','o','n',' ','c','o','u','l','d',' ','n','o','t',' ','b','e',' ','d','e','t','e','r','m','i',
+'n','e','d','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',']','}',',','{','"',
+'c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','n','o','t','"',',',
+'"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r',
+'g','v','"',':','[','{','"','r','e','f','"',':','"','B','u','c','k','e','t','"','}',']','}',']','}',
+']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[',
+'{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','a','w','s',
+'.','p','a','r','t','i','t','i','o','n','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f',
+'"',':','"','R','e','g','i','o','n','"','}',']',',','"','a','s','s','i','g','n','"',':','"','p','a',
+'r','t','i','t','i','o','n','R','e','s','u','l','t','"','}',']',',','"','t','y','p','e','"',':','"',
+'t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o',
+'n','s','"',':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l',
+'e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',
+':','"','i','s','V','a','l','i','d','H','o','s','t','L','a','b','e','l','"',',','"','a','r','g','v',
+'"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','t','r','u','e',']',
+'}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':',
+'[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','t','y','p','e','"',':',
+'"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i',
+'o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l',
+'s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P',
+'S','"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','s','t','r','i','n','g','E',
+'q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','g','e','t',
+'A','t','t','r','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','p','a','r',
+'t','i','t','i','o','n','R','e','s','u','l','t','"','}',',','"','n','a','m','e','"',']','}',',','"',
+'a','w','s','-','c','n','"',']','}',']',',','"','e','r','r','o','r','"',':','"','P','a','r','t','i',
+'t','i','o','n',' ','d','o','e','s',' ','n','o','t',' ','s','u','p','p','o','r','t',' ','F','I','P',
+'S','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',',','{','"','c','o','n','d',
+'i','t','i','o','n','s','"',':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',',
+'"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{',
+'"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g',
+'v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r','u',
+'e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',
+',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S',
+'t','a','c','k','"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','i','s','S','e',
+'t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i',
+'n','t','"','}',']','}',',','{','"','f','n','"',':','"','p','a','r','s','e','U','R','L','"',',','"',
+'a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',
+']',',','"','a','s','s','i','g','n','"',':','"','u','r','l','"','}',',','{','"','f','n','"',':','"',
+'s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r',
+'e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l',
+'"',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','{',
+'u','r','l','#','s','c','h','e','m','e','}',':','/','/','{','u','r','l','#','a','u','t','h','o','r',
+'i','t','y','}','{','u','r','l','#','p','a','t','h','}','"',',','"','p','r','o','p','e','r','t','i',
+'e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m',
+'e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n',
+'"',':','"','u','s','-','e','a','s','t','-','1','"',',','"','s','i','g','n','i','n','g','N','a','m',
+'e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c',
+'o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':',
+'{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"',
+'c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e',
+'a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':',
+'"','U','s','e','F','I','P','S','"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"',
+'b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t','r','u','e',
+']','}',',','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[',
+'{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',',','{','"','f','n',
+'"',':','"','p','a','r','s','e','U','R','L','"',',','"','a','r','g','v','"',':','[','{','"','r','e',
+'f','"',':','"','E','n','d','p','o','i','n','t','"','}',']',',','"','a','s','s','i','g','n','"',':',
+'"','u','r','l','"','}',',','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l',
+'s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n',
+'"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']',',','"','e','n','d','p','o',
+'i','n','t','"',':','{','"','u','r','l','"',':','"','{','u','r','l','#','s','c','h','e','m','e','}',
+':','/','/','{','u','r','l','#','a','u','t','h','o','r','i','t','y','}','{','u','r','l','#','p','a',
+'t','h','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S',
+'c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',',
+'"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','u','s','-','e','a','s','t','-',
+'1','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i',
+'s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e',
+'}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':',
+'"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',
+':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"',
+'a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',',
+'t','r','u','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a',
+'l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u',
+'a','l','S','t','a','c','k','"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','i',
+'s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d',
+'p','o','i','n','t','"','}',']','}',',','{','"','f','n','"',':','"','p','a','r','s','e','U','R','L',
+'"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n',
+'t','"','}',']',',','"','a','s','s','i','g','n','"',':','"','u','r','l','"','}',',','{','"','f','n',
+'"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','s','t',
+'r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f',
+'"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']',
+'}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',
+',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','G','l','o','b','a',
+'l','E','n','d','p','o','i','n','t','"','}',',','t','r','u','e',']','}',']',',','"','t','y','p','e',
+'"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i',
+'t','i','o','n','s','"',':','[',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r',
+'l','"',':','"','{','u','r','l','#','s','c','h','e','m','e','}',':','/','/','{','u','r','l','#','a',
+'u','t','h','o','r','i','t','y','}','{','u','r','l','#','p','a','t','h','}','"',',','"','p','r','o',
+'p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[',
+'{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R',
+'e','g','i','o','n','"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n',
+'g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l',
+'e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e',
+'r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"',
+'}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':',
+'"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{',
+'"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r','u','e',']','}',',','{',
+'"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g',
+'v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"',
+'}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']',
+'}',',','{','"','f','n','"',':','"','p','a','r','s','e','U','R','L','"',',','"','a','r','g','v','"',
+':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']',',','"','a','s',
+'s','i','g','n','"',':','"','u','r','l','"','}',',','{','"','f','n','"',':','"','n','o','t','"',',',
+'"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a',
+'l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o',
+'n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']','}',',','{','"','f','n',
+'"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':',
+'[','{','"','r','e','f','"',':','"','U','s','e','G','l','o','b','a','l','E','n','d','p','o','i','n',
+'t','"','}',',','f','a','l','s','e',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{',
+'"','u','r','l','"',':','"','{','u','r','l','#','s','c','h','e','m','e','}',':','/','/','{','u','r',
+'l','#','a','u','t','h','o','r','i','t','y','}','{','u','r','l','#','p','a','t','h','}','"',',','"',
+'p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s',
+'"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i',
+'n','g','R','e','g','i','o','n','"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i','g',
+'n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o',
+'u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e',
+'a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i',
+'n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',
+':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[',
+'{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r','u','e',']','}',',',
+'{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r',
+'g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k',
+'"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r',
+'g','v','"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',
+':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',']','}',',',
+'{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g',
+'v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s',
+'-','g','l','o','b','a','l','"',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"',
+'u','r','l','"',':','"','h','t','t','p','s',':','/','/','s','3','-','f','i','p','s','.','d','u','a',
+'l','s','t','a','c','k','.','u','s','-','e','a','s','t','-','1','.','{','p','a','r','t','i','t','i',
+'o','n','R','e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}','"',',','"','p','r','o',
+'p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[',
+'{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R',
+'e','g','i','o','n','"',':','"','u','s','-','e','a','s','t','-','1','"',',','"','s','i','g','n','i',
+'n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b',
+'l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d',
+'e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t',
+'"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"',
+'b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r','u','e',']','}',',','{','"',
+'f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v',
+'"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',
+',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v',
+'"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[',
+'{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',']','}',',','{','"',
+'f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',
+':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g',
+'l','o','b','a','l','"',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r',
+'l','"',':','"','h','t','t','p','s',':','/','/','s','3','-','f','i','p','s','.','d','u','a','l','s',
+'t','a','c','k','.','u','s','-','e','a','s','t','-','1','.','{','p','a','r','t','i','t','i','o','n',
+'R','e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e',
+'r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"',
+'n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g',
+'i','o','n','"',':','"','u','s','-','e','a','s','t','-','1','"',',','"','s','i','g','n','i','n','g',
+'N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e',
+'E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r',
+'s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',
+',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o',
+'o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e',
+'f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r','u','e',']','}',',','{','"','f','n',
+'"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':',
+'[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t',
+'r','u','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':',
+'[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',']','}',',','{','"','f','n',
+'"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','s','t',
+'r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f',
+'"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']',
+'}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',
+',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','G','l','o','b','a',
+'l','E','n','d','p','o','i','n','t','"','}',',','t','r','u','e',']','}',']',',','"','t','y','p','e',
+'"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i',
+'t','i','o','n','s','"',':','[',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r',
+'l','"',':','"','h','t','t','p','s',':','/','/','s','3','-','f','i','p','s','.','d','u','a','l','s',
+'t','a','c','k','.','{','R','e','g','i','o','n','}','.','{','p','a','r','t','i','t','i','o','n','R',
+'e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e','r',
+'t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n',
+'a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i',
+'o','n','"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n','g','N','a',
+'m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n',
+'c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',
+':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',']','}',
+',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o',
+'o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e',
+'f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r','u','e',']','}',',','{','"','f','n',
+'"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':',
+'[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t',
+'r','u','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':',
+'[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',']','}',',','{','"','f','n',
+'"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','s','t',
+'r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f',
+'"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']',
+'}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',
+',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','G','l','o','b','a',
+'l','E','n','d','p','o','i','n','t','"','}',',','f','a','l','s','e',']','}',']',',','"','e','n','d',
+'p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','s','3',
+'-','f','i','p','s','.','d','u','a','l','s','t','a','c','k','.','{','R','e','g','i','o','n','}','.',
+'{','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f','f','i',
+'x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c',
+'h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"',
+'s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','{','R','e','g','i','o','n','}','"',
+',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a',
+'b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']',
+'}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e',
+'n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',
+'{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r',
+'g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r',
+'u','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s',
+'"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l',
+'S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','i','s',
+'S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p',
+'o','i','n','t','"','}',']','}',',','{','"','f','n','"',':','"','p','a','r','s','e','U','R','L','"',
+',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t',
+'"','}',']',',','"','a','s','s','i','g','n','"',':','"','u','r','l','"','}',',','{','"','f','n','"',
+':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{',
+'"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b',
+'a','l','"',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':',
+'"','{','u','r','l','#','s','c','h','e','m','e','}',':','/','/','{','u','r','l','#','a','u','t','h',
+'o','r','i','t','y','}','{','u','r','l','#','p','a','t','h','}','"',',','"','p','r','o','p','e','r',
+'t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n',
+'a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i',
+'o','n','"',':','"','u','s','-','e','a','s','t','-','1','"',',','"','s','i','g','n','i','n','g','N',
+'a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E',
+'n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s',
+'"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',',
+'{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o',
+'l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f',
+'"',':','"','U','s','e','F','I','P','S','"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',
+':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[',
+'{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','f','a',
+'l','s','e',']','}',',','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v',
+'"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',',','{',
+'"','f','n','"',':','"','p','a','r','s','e','U','R','L','"',',','"','a','r','g','v','"',':','[','{',
+'"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']',',','"','a','s','s','i','g',
+'n','"',':','"','u','r','l','"','}',',','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q',
+'u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g',
+'i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']',',','"','e','n',
+'d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','{','u','r','l','#','s','c','h','e',
+'m','e','}',':','/','/','{','u','r','l','#','a','u','t','h','o','r','i','t','y','}','{','u','r','l',
+'#','p','a','t','h','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u',
+'t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v',
+'4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','u','s','-','e','a',
+'s','t','-','1','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',',
+'"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t',
+'r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p',
+'e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o',
+'n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s',
+'"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S',
+'"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E',
+'q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s',
+'e','D','u','a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n',
+'"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':',
+'"','E','n','d','p','o','i','n','t','"','}',']','}',',','{','"','f','n','"',':','"','p','a','r','s',
+'e','U','R','L','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d',
+'p','o','i','n','t','"','}',']',',','"','a','s','s','i','g','n','"',':','"','u','r','l','"','}',',',
+'{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',
+':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{',
+'"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b',
+'a','l','"',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u',
+'a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','G',
+'l','o','b','a','l','E','n','d','p','o','i','n','t','"','}',',','t','r','u','e',']','}',']',',','"',
+'t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c',
+'o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','n','d','p','o','i','n','t','"',':',
+'{','"','u','r','l','"',':','"','{','u','r','l','#','s','c','h','e','m','e','}',':','/','/','{','u',
+'r','l','#','a','u','t','h','o','r','i','t','y','}','{','u','r','l','#','p','a','t','h','}','"',',',
+'"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e',
+'s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n',
+'i','n','g','R','e','g','i','o','n','"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i',
+'g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D',
+'o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h',
+'e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o',
+'i','n','t','"','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"',
+'f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v',
+'"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r','u','e',
+']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',',
+'"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t',
+'a','c','k','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','i','s','S','e',
+'t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i',
+'n','t','"','}',']','}',',','{','"','f','n','"',':','"','p','a','r','s','e','U','R','L','"',',','"',
+'a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',
+']',',','"','a','s','s','i','g','n','"',':','"','u','r','l','"','}',',','{','"','f','n','"',':','"',
+'n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','s','t','r','i','n',
+'g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"',
+'R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']','}',
+',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','G','l','o','b','a','l','E','n',
+'d','p','o','i','n','t','"','}',',','f','a','l','s','e',']','}',']',',','"','e','n','d','p','o','i',
+'n','t','"',':','{','"','u','r','l','"',':','"','{','u','r','l','#','s','c','h','e','m','e','}',':',
+'/','/','{','u','r','l','#','a','u','t','h','o','r','i','t','y','}','{','u','r','l','#','p','a','t',
+'h','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c',
+'h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"',
+'s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','{','R','e','g','i','o','n','}','"',
+',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a',
+'b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']',
+'}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e',
+'n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',
+'{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r',
+'g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r',
+'u','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s',
+'"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l',
+'S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','n','o',
+'t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',',
+'"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"',
+'}',']','}',']','}',',','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s',
+'"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"',
+'}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']',',','"','e','n','d','p','o','i',
+'n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','s','3','-','f','i',
+'p','s','.','u','s','-','e','a','s','t','-','1','.','{','p','a','r','t','i','t','i','o','n','R','e',
+'s','u','l','t','#','d','n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t',
+'i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a',
+'m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o',
+'n','"',':','"','u','s','-','e','a','s','t','-','1','"',',','"','s','i','g','n','i','n','g','N','a',
+'m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n',
+'c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',
+':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{',
+'"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l',
+'e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','U','s','e','F','I','P','S','"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':',
+'"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{',
+'"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','f','a','l',
+'s','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[',
+'{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r',
+'e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',']','}',',','{','"','f','n','"',
+':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{',
+'"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b',
+'a','l','"',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':',
+'"','h','t','t','p','s',':','/','/','s','3','-','f','i','p','s','.','u','s','-','e','a','s','t','-',
+'1','.','{','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f',
+'f','i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h',
+'S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',
+',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','u','s','-','e','a','s','t',
+'-','1','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d',
+'i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u',
+'e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',
+':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s',
+'"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',',
+'"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',
+',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u',
+'a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D',
+'u','a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':',
+'"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','i','s','S','e',
+'t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i',
+'n','t','"','}',']','}',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g',
+'v','"',':','[','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',',
+'"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',',
+'"','a','w','s','-','g','l','o','b','a','l','"',']','}',']','}',',','{','"','f','n','"',':','"','b',
+'o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r',
+'e','f','"',':','"','U','s','e','G','l','o','b','a','l','E','n','d','p','o','i','n','t','"','}',',',
+'t','r','u','e',']','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u',
+'l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e',
+'n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/',
+'s','3','-','f','i','p','s','.','{','R','e','g','i','o','n','}','.','{','p','a','r','t','i','t','i',
+'o','n','R','e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}','"',',','"','p','r','o',
+'p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[',
+'{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R',
+'e','g','i','o','n','"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n',
+'g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l',
+'e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e',
+'r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"',
+'}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':',
+'"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{',
+'"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r','u','e',']','}',',','{',
+'"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g',
+'v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"',
+'}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r',
+'g','v','"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',
+':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',']','}',',',
+'{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',
+':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{',
+'"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b',
+'a','l','"',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u',
+'a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','G',
+'l','o','b','a','l','E','n','d','p','o','i','n','t','"','}',',','f','a','l','s','e',']','}',']',',',
+'"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':',
+'/','/','s','3','-','f','i','p','s','.','{','R','e','g','i','o','n','}','.','{','p','a','r','t','i',
+'t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}','"',',','"','p',
+'r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',
+':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n',
+'g','R','e','g','i','o','n','"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i','g','n',
+'i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u',
+'b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a',
+'d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n',
+'t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':',
+'"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{',
+'"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','f','a','l','s','e',']','}',',',
+'{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r',
+'g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k',
+'"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"',
+'a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',
+']','}',',','{','"','f','n','"',':','"','p','a','r','s','e','U','R','L','"',',','"','a','r','g','v',
+'"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']',',','"','a',
+'s','s','i','g','n','"',':','"','u','r','l','"','}',',','{','"','f','n','"',':','"','s','t','r','i',
+'n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':',
+'"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']',
+',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','{','u','r','l','#',
+'s','c','h','e','m','e','}',':','/','/','{','u','r','l','#','a','u','t','h','o','r','i','t','y','}',
+'{','u','r','l','#','p','a','t','h','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':',
+'{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"',
+'s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','u',
+'s','-','e','a','s','t','-','1','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"',
+'s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n',
+'g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',',
+'"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d',
+'i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q',
+'u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e',
+'F','I','P','S','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','b','o','o',
+'l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f',
+'"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t','r','u','e',']','}',',',
+'{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r',
+'e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',',','{','"','f','n','"',':','"',
+'p','a','r','s','e','U','R','L','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':',
+'"','E','n','d','p','o','i','n','t','"','}',']',',','"','a','s','s','i','g','n','"',':','"','u','r',
+'l','"','}',',','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',',
+'"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',',
+'"','a','w','s','-','g','l','o','b','a','l','"',']','}',']',',','"','e','n','d','p','o','i','n','t',
+'"',':','{','"','u','r','l','"',':','"','{','u','r','l','#','s','c','h','e','m','e','}',':','/','/',
+'{','u','r','l','#','a','u','t','h','o','r','i','t','y','}','{','u','r','l','#','p','a','t','h','}',
+'"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e',
+'m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i',
+'g','n','i','n','g','R','e','g','i','o','n','"',':','"','u','s','-','e','a','s','t','-','1','"',',',
+'"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b',
+'l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',
+',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n',
+'d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{',
+'"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g',
+'v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','f','a','l',
+'s','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s',
+'"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l',
+'S','t','a','c','k','"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','i','s','S',
+'e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o',
+'i','n','t','"','}',']','}',',','{','"','f','n','"',':','"','p','a','r','s','e','U','R','L','"',',',
+'"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"',
+'}',']',',','"','a','s','s','i','g','n','"',':','"','u','r','l','"','}',',','{','"','f','n','"',':',
+'"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','s','t','r','i',
+'n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':',
+'"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']',
+'}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"',
+'a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','G','l','o','b','a','l','E',
+'n','d','p','o','i','n','t','"','}',',','t','r','u','e',']','}',']',',','"','t','y','p','e','"',':',
+'"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i',
+'o','n','s','"',':','[',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',
+':','"','{','u','r','l','#','s','c','h','e','m','e','}',':','/','/','{','u','r','l','#','a','u','t',
+'h','o','r','i','t','y','}','{','u','r','l','#','p','a','t','h','}','"',',','"','p','r','o','p','e',
+'r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"',
+'n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g',
+'i','o','n','"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n','g','N',
+'a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E',
+'n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s',
+'"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',']',
+'}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b',
+'o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r',
+'e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','f','a','l','s','e',']','}',',','{','"',
+'f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v',
+'"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',
+',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r',
+'g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',
+',','{','"','f','n','"',':','"','p','a','r','s','e','U','R','L','"',',','"','a','r','g','v','"',':',
+'[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']',',','"','a','s','s',
+'i','g','n','"',':','"','u','r','l','"','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"',
+'a','r','g','v','"',':','[','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l',
+'s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n',
+'"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']','}',',','{','"','f','n','"',
+':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[',
+'{','"','r','e','f','"',':','"','U','s','e','G','l','o','b','a','l','E','n','d','p','o','i','n','t',
+'"','}',',','f','a','l','s','e',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"',
+'u','r','l','"',':','"','{','u','r','l','#','s','c','h','e','m','e','}',':','/','/','{','u','r','l',
+'#','a','u','t','h','o','r','i','t','y','}','{','u','r','l','#','p','a','t','h','}','"',',','"','p',
+'r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',
+':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n',
+'g','R','e','g','i','o','n','"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i','g','n',
+'i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u',
+'b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a',
+'d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n',
+'t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':',
+'"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{',
+'"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','f','a','l','s','e',']','}',',',
+'{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r',
+'g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k',
+'"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r',
+'g','v','"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',
+':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',']','}',',',
+'{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g',
+'v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s',
+'-','g','l','o','b','a','l','"',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"',
+'u','r','l','"',':','"','h','t','t','p','s',':','/','/','s','3','.','d','u','a','l','s','t','a','c',
+'k','.','u','s','-','e','a','s','t','-','1','.','{','p','a','r','t','i','t','i','o','n','R','e','s',
+'u','l','t','#','d','n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i',
+'e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m',
+'e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n',
+'"',':','"','u','s','-','e','a','s','t','-','1','"',',','"','s','i','g','n','i','n','g','N','a','m',
+'e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c',
+'o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':',
+'{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"',
+'c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e',
+'a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':',
+'"','U','s','e','F','I','P','S','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':',
+'"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{',
+'"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t','r','u',
+'e',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{',
+'"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e',
+'f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',']','}',',','{','"','f','n','"',':',
+'"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a',
+'l','"',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"',
+'h','t','t','p','s',':','/','/','s','3','.','d','u','a','l','s','t','a','c','k','.','u','s','-','e',
+'a','s','t','-','1','.','{','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n',
+'s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"',
+'a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i',
+'g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','u','s','-',
+'e','a','s','t','-','1','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3',
+'"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',
+':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t',
+'y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t',
+'i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a',
+'l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I',
+'P','S','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e',
+'a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':',
+'"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t','r','u','e',']','}',',','{','"',
+'f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"',
+'i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n',
+'d','p','o','i','n','t','"','}',']','}',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',',
+'"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a',
+'l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o',
+'n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']','}',',','{','"','f','n',
+'"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':',
+'[','{','"','r','e','f','"',':','"','U','s','e','G','l','o','b','a','l','E','n','d','p','o','i','n',
+'t','"','}',',','t','r','u','e',']','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',
+',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',
+']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p',
+'s',':','/','/','s','3','.','d','u','a','l','s','t','a','c','k','.','{','R','e','g','i','o','n','}',
+'.','{','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f','f',
+'i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S',
+'c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',',
+'"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','{','R','e','g','i','o','n','}',
+'"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s',
+'a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',
+']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"',
+'e','n','d','p','o','i','n','t','"','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s',
+'"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',',
+'"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',
+',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q',
+'u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e',
+'D','u','a','l','S','t','a','c','k','"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':',
+'"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','i','s','S','e',
+'t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i',
+'n','t','"','}',']','}',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g',
+'v','"',':','[','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',',
+'"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',',
+'"','a','w','s','-','g','l','o','b','a','l','"',']','}',']','}',',','{','"','f','n','"',':','"','b',
+'o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r',
+'e','f','"',':','"','U','s','e','G','l','o','b','a','l','E','n','d','p','o','i','n','t','"','}',',',
+'f','a','l','s','e',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l',
+'"',':','"','h','t','t','p','s',':','/','/','s','3','.','d','u','a','l','s','t','a','c','k','.','{',
+'R','e','g','i','o','n','}','.','{','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#',
+'d','n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':',
+'{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"',
+'s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','{',
+'R','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s',
+'3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g',
+'"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"',
+'t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i',
+'t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u',
+'a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F',
+'I','P','S','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l',
+'e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',',',
+'{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r',
+'e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',',','{','"','f','n','"',':','"',
+'p','a','r','s','e','U','R','L','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':',
+'"','E','n','d','p','o','i','n','t','"','}',']',',','"','a','s','s','i','g','n','"',':','"','u','r',
+'l','"','}',',','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',',
+'"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',',
+'"','a','w','s','-','g','l','o','b','a','l','"',']','}',']',',','"','e','n','d','p','o','i','n','t',
+'"',':','{','"','u','r','l','"',':','"','{','u','r','l','#','s','c','h','e','m','e','}',':','/','/',
+'{','u','r','l','#','a','u','t','h','o','r','i','t','y','}','{','u','r','l','#','p','a','t','h','}',
+'"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e',
+'m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i',
+'g','n','i','n','g','R','e','g','i','o','n','"',':','"','u','s','-','e','a','s','t','-','1','"',',',
+'"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b',
+'l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',
+',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n',
+'d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{',
+'"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g',
+'v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','f','a','l',
+'s','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s',
+'"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l',
+'S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','i','s',
+'S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p',
+'o','i','n','t','"','}',']','}',',','{','"','f','n','"',':','"','p','a','r','s','e','U','R','L','"',
+',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t',
+'"','}',']',',','"','a','s','s','i','g','n','"',':','"','u','r','l','"','}',',','{','"','f','n','"',
+':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{',
+'"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b',
+'a','l','"',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':',
+'"','{','u','r','l','#','s','c','h','e','m','e','}',':','/','/','{','u','r','l','#','a','u','t','h',
+'o','r','i','t','y','}','{','u','r','l','#','p','a','t','h','}','"',',','"','p','r','o','p','e','r',
+'t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n',
+'a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i',
+'o','n','"',':','"','u','s','-','e','a','s','t','-','1','"',',','"','s','i','g','n','i','n','g','N',
+'a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E',
+'n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s',
+'"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',',
+'{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o',
+'l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f',
+'"',':','"','U','s','e','F','I','P','S','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n',
+'"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':',
+'[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','f',
+'a','l','s','e',']','}',',','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g',
+'v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',',',
+'{','"','f','n','"',':','"','p','a','r','s','e','U','R','L','"',',','"','a','r','g','v','"',':','[',
+'{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']',',','"','a','s','s','i',
+'g','n','"',':','"','u','r','l','"','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a',
+'r','g','v','"',':','[','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s',
+'"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"',
+'}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']','}',',','{','"','f','n','"',':',
+'"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{',
+'"','r','e','f','"',':','"','U','s','e','G','l','o','b','a','l','E','n','d','p','o','i','n','t','"',
+'}',',','t','r','u','e',']','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"',
+'r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"',
+'f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',
+':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','u','s','-','e','a',
+'s','t','-','1','"',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l',
+'"',':','"','{','u','r','l','#','s','c','h','e','m','e','}',':','/','/','{','u','r','l','#','a','u',
+'t','h','o','r','i','t','y','}','{','u','r','l','#','p','a','t','h','}','"',',','"','p','r','o','p',
+'e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{',
+'"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e',
+'g','i','o','n','"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n','g',
+'N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e',
+'E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r',
+'s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',
+',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','n','d','p','o','i',
+'n','t','"',':','{','"','u','r','l','"',':','"','{','u','r','l','#','s','c','h','e','m','e','}',':',
+'/','/','{','u','r','l','#','a','u','t','h','o','r','i','t','y','}','{','u','r','l','#','p','a','t',
+'h','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c',
+'h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"',
+'s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','{','R','e','g','i','o','n','}','"',
+',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"','d','i','s','a',
+'b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r','u','e','}',']',
+'}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e',
+'n','d','p','o','i','n','t','"','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',
+':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"',
+'a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',',
+'f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u',
+'a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D',
+'u','a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':',
+'"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E',
+'n','d','p','o','i','n','t','"','}',']','}',',','{','"','f','n','"',':','"','p','a','r','s','e','U',
+'R','L','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o',
+'i','n','t','"','}',']',',','"','a','s','s','i','g','n','"',':','"','u','r','l','"','}',',','{','"',
+'f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"',
+'s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r',
+'e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l',
+'"',']','}',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l',
+'s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','G','l','o',
+'b','a','l','E','n','d','p','o','i','n','t','"','}',',','f','a','l','s','e',']','}',']',',','"','e',
+'n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','{','u','r','l','#','s','c','h',
+'e','m','e','}',':','/','/','{','u','r','l','#','a','u','t','h','o','r','i','t','y','}','{','u','r',
+'l','#','p','a','t','h','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a',
+'u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g',
+'v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','{','R','e','g',
+'i','o','n','}','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',',
+'"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t',
+'r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p',
+'e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o',
+'n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s',
+'"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S',
+'"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n',
+'E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U',
+'s','e','D','u','a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',',','{','"','f',
+'n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','i',
+'s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d',
+'p','o','i','n','t','"','}',']','}',']','}',',','{','"','f','n','"',':','"','s','t','r','i','n','g',
+'E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R',
+'e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']',',','"',
+'e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/',
+'/','s','3','.','{','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S',
+'u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u',
+'t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v',
+'4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','u','s','-','e','a',
+'s','t','-','1','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',',
+'"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t',
+'r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p',
+'e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o',
+'n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s',
+'"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S',
+'"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n',
+'E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U',
+'s','e','D','u','a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',',','{','"','f',
+'n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','i',
+'s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d',
+'p','o','i','n','t','"','}',']','}',']','}',',','{','"','f','n','"',':','"','s','t','r','i','n','g',
+'E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R',
+'e','g','i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']',',','"',
+'e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/',
+'/','s','3','.','{','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S',
+'u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u',
+'t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v',
+'4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','u','s','-','e','a',
+'s','t','-','1','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',',
+'"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t',
+'r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p',
+'e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o',
+'n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s',
+'"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S',
+'"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n',
+'E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U',
+'s','e','D','u','a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',',','{','"','f',
+'n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','i',
+'s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n','d',
+'p','o','i','n','t','"','}',']','}',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"',
+'a','r','g','v','"',':','[','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l',
+'s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n',
+'"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']','}',',','{','"','f','n','"',
+':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[',
+'{','"','r','e','f','"',':','"','U','s','e','G','l','o','b','a','l','E','n','d','p','o','i','n','t',
+'"','}',',','t','r','u','e',']','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',',
+'"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{',
+'"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v',
+'"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','u','s','-','e',
+'a','s','t','-','1','"',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r',
+'l','"',':','"','h','t','t','p','s',':','/','/','s','3','.','{','p','a','r','t','i','t','i','o','n',
+'R','e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e',
+'r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"',
+'n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g',
+'i','o','n','"',':','"','{','R','e','g','i','o','n','}','"',',','"','s','i','g','n','i','n','g','N',
+'a','m','e','"',':','"','s','3','"',',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E',
+'n','c','o','d','i','n','g','"',':','t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s',
+'"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',',
+'{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','n','d','p','o','i','n',
+'t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','s','3','.','{','R','e',
+'g','i','o','n','}','.','{','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n',
+'s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"',
+'a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i',
+'g','v','4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','{','R','e',
+'g','i','o','n','}','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',
+',','"','d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':',
+'t','r','u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y',
+'p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',']','}',',','{','"','c','o','n','d','i',
+'t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u',
+'a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F',
+'I','P','S','"','}',',','f','a','l','s','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l',
+'e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','f','a','l','s','e',']','}',',',
+'{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',
+':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"',
+'E','n','d','p','o','i','n','t','"','}',']','}',']','}',',','{','"','f','n','"',':','"','n','o','t',
+'"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q',
+'u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g',
+'i','o','n','"','}',',','"','a','w','s','-','g','l','o','b','a','l','"',']','}',']','}',',','{','"',
+'f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v',
+'"',':','[','{','"','r','e','f','"',':','"','U','s','e','G','l','o','b','a','l','E','n','d','p','o',
+'i','n','t','"','}',',','f','a','l','s','e',']','}',']',',','"','e','n','d','p','o','i','n','t','"',
+':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','s','3','.','{','R','e','g','i',
+'o','n','}','.','{','p','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S',
+'u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u',
+'t','h','S','c','h','e','m','e','s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v',
+'4','"',',','"','s','i','g','n','i','n','g','R','e','g','i','o','n','"',':','"','{','R','e','g','i',
+'o','n','}','"',',','"','s','i','g','n','i','n','g','N','a','m','e','"',':','"','s','3','"',',','"',
+'d','i','s','a','b','l','e','D','o','u','b','l','e','E','n','c','o','d','i','n','g','"',':','t','r',
+'u','e','}',']','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e',
+'"',':','"','e','n','d','p','o','i','n','t','"','}',']','}',']','}',']','}',',','{','"','c','o','n',
+'d','i','t','i','o','n','s','"',':','[',']',',','"','e','r','r','o','r','"',':','"','I','n','v','a',
+'l','i','d',' ','r','e','g','i','o','n',':',' ','r','e','g','i','o','n',' ','w','a','s',' ','n','o',
+'t',' ','a',' ','v','a','l','i','d',' ','D','N','S',' ','n','a','m','e','.','"',',','"','t','y','p',
+'e','"',':','"','e','r','r','o','r','"','}',']','}',']','}',',','{','"','c','o','n','d','i','t','i',
+'o','n','s','"',':','[',']',',','"','e','r','r','o','r','"',':','"','A',' ','v','a','l','i','d',' ',
+'p','a','r','t','i','t','i','o','n',' ','c','o','u','l','d',' ','n','o','t',' ','b','e',' ','d','e',
+'t','e','r','m','i','n','e','d','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',
+']','}',']','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"',
+'e','r','r','o','r','"',':','"','A',' ','r','e','g','i','o','n',' ','m','u','s','t',' ','b','e',' ',
+'s','e','t',' ','w','h','e','n',' ','s','e','n','d','i','n','g',' ','r','e','q','u','e','s','t','s',
+' ','t','o',' ','S','3','.','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',']',
+'}',']','}','\0'
+}};
+
+const char* S3EndpointRules::GetRulesBlob()
+{
+ return RulesBlob.data();
+}
+
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Request.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Request.cpp
new file mode 100644
index 0000000000..1b93c81846
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/S3Request.cpp
@@ -0,0 +1,14 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+
+#include <aws/s3/S3Request.h>
+
+namespace Aws
+{
+namespace S3
+{
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AbortMultipartUploadRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AbortMultipartUploadRequest.cpp
index 4d8645caab..299825faff 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AbortMultipartUploadRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AbortMultipartUploadRequest.cpp
@@ -79,3 +79,13 @@ Aws::Http::HeaderValueCollection AbortMultipartUploadRequest::GetRequestSpecific
return headers;
}
+
+AbortMultipartUploadRequest::EndpointParameters AbortMultipartUploadRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Bucket.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Bucket.cpp
index 1ad9b5f310..cf66979ae2 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Bucket.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Bucket.cpp
@@ -48,7 +48,7 @@ Bucket& Bucket::operator =(const XmlNode& xmlNode)
XmlNode creationDateNode = resultNode.FirstChild("CreationDate");
if(!creationDateNode.IsNull())
{
- m_creationDate = DateTime(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(creationDateNode.GetText()).c_str()).c_str(), DateFormat::ISO_8601);
+ m_creationDate = DateTime(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(creationDateNode.GetText()).c_str()).c_str(), Aws::Utils::DateFormat::ISO_8601);
m_creationDateHasBeenSet = true;
}
}
@@ -68,7 +68,7 @@ void Bucket::AddToNode(XmlNode& parentNode) const
if(m_creationDateHasBeenSet)
{
XmlNode creationDateNode = parentNode.CreateChildElement("CreationDate");
- creationDateNode.SetText(m_creationDate.ToGmtString(DateFormat::ISO_8601));
+ creationDateNode.SetText(m_creationDate.ToGmtString(Aws::Utils::DateFormat::ISO_8601));
}
}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/BucketLocationConstraint.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/BucketLocationConstraint.cpp
index 1bcdd2b471..4b83e3bad1 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/BucketLocationConstraint.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/BucketLocationConstraint.cpp
@@ -28,6 +28,7 @@ namespace Aws
static const int ap_south_1_HASH = HashingUtils::HashString("ap-south-1");
static const int ap_southeast_1_HASH = HashingUtils::HashString("ap-southeast-1");
static const int ap_southeast_2_HASH = HashingUtils::HashString("ap-southeast-2");
+ static const int ap_southeast_3_HASH = HashingUtils::HashString("ap-southeast-3");
static const int ca_central_1_HASH = HashingUtils::HashString("ca-central-1");
static const int cn_north_1_HASH = HashingUtils::HashString("cn-north-1");
static const int cn_northwest_1_HASH = HashingUtils::HashString("cn-northwest-1");
@@ -45,6 +46,7 @@ namespace Aws
static const int us_gov_west_1_HASH = HashingUtils::HashString("us-gov-west-1");
static const int us_west_1_HASH = HashingUtils::HashString("us-west-1");
static const int us_west_2_HASH = HashingUtils::HashString("us-west-2");
+ static const int us_iso_west_1_HASH = HashingUtils::HashString("us-iso-west-1");
static const int us_east_1_HASH = HashingUtils::HashString("us-east-1");
@@ -83,6 +85,10 @@ namespace Aws
{
return BucketLocationConstraint::ap_southeast_2;
}
+ else if (hashCode == ap_southeast_3_HASH)
+ {
+ return BucketLocationConstraint::ap_southeast_3;
+ }
else if (hashCode == ca_central_1_HASH)
{
return BucketLocationConstraint::ca_central_1;
@@ -151,6 +157,10 @@ namespace Aws
{
return BucketLocationConstraint::us_west_2;
}
+ else if (hashCode == us_iso_west_1_HASH)
+ {
+ return BucketLocationConstraint::us_iso_west_1;
+ }
else if (hashCode == us_east_1_HASH)
{
return BucketLocationConstraint::us_east_1;
@@ -185,6 +195,8 @@ namespace Aws
return "ap-southeast-1";
case BucketLocationConstraint::ap_southeast_2:
return "ap-southeast-2";
+ case BucketLocationConstraint::ap_southeast_3:
+ return "ap-southeast-3";
case BucketLocationConstraint::ca_central_1:
return "ca-central-1";
case BucketLocationConstraint::cn_north_1:
@@ -219,6 +231,8 @@ namespace Aws
return "us-west-1";
case BucketLocationConstraint::us_west_2:
return "us-west-2";
+ case BucketLocationConstraint::us_iso_west_1:
+ return "us-iso-west-1";
case BucketLocationConstraint::us_east_1:
return "us-east-1";
default:
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Checksum.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Checksum.cpp
new file mode 100644
index 0000000000..bd4e0f4dc4
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Checksum.cpp
@@ -0,0 +1,106 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/Checksum.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+#include <aws/core/utils/StringUtils.h>
+#include <aws/core/utils/memory/stl/AWSStringStream.h>
+
+#include <utility>
+
+using namespace Aws::Utils::Xml;
+using namespace Aws::Utils;
+
+namespace Aws
+{
+namespace S3
+{
+namespace Model
+{
+
+Checksum::Checksum() :
+ m_checksumCRC32HasBeenSet(false),
+ m_checksumCRC32CHasBeenSet(false),
+ m_checksumSHA1HasBeenSet(false),
+ m_checksumSHA256HasBeenSet(false)
+{
+}
+
+Checksum::Checksum(const XmlNode& xmlNode) :
+ m_checksumCRC32HasBeenSet(false),
+ m_checksumCRC32CHasBeenSet(false),
+ m_checksumSHA1HasBeenSet(false),
+ m_checksumSHA256HasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+Checksum& Checksum::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode checksumCRC32Node = resultNode.FirstChild("ChecksumCRC32");
+ if(!checksumCRC32Node.IsNull())
+ {
+ m_checksumCRC32 = Aws::Utils::Xml::DecodeEscapedXmlText(checksumCRC32Node.GetText());
+ m_checksumCRC32HasBeenSet = true;
+ }
+ XmlNode checksumCRC32CNode = resultNode.FirstChild("ChecksumCRC32C");
+ if(!checksumCRC32CNode.IsNull())
+ {
+ m_checksumCRC32C = Aws::Utils::Xml::DecodeEscapedXmlText(checksumCRC32CNode.GetText());
+ m_checksumCRC32CHasBeenSet = true;
+ }
+ XmlNode checksumSHA1Node = resultNode.FirstChild("ChecksumSHA1");
+ if(!checksumSHA1Node.IsNull())
+ {
+ m_checksumSHA1 = Aws::Utils::Xml::DecodeEscapedXmlText(checksumSHA1Node.GetText());
+ m_checksumSHA1HasBeenSet = true;
+ }
+ XmlNode checksumSHA256Node = resultNode.FirstChild("ChecksumSHA256");
+ if(!checksumSHA256Node.IsNull())
+ {
+ m_checksumSHA256 = Aws::Utils::Xml::DecodeEscapedXmlText(checksumSHA256Node.GetText());
+ m_checksumSHA256HasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void Checksum::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_checksumCRC32HasBeenSet)
+ {
+ XmlNode checksumCRC32Node = parentNode.CreateChildElement("ChecksumCRC32");
+ checksumCRC32Node.SetText(m_checksumCRC32);
+ }
+
+ if(m_checksumCRC32CHasBeenSet)
+ {
+ XmlNode checksumCRC32CNode = parentNode.CreateChildElement("ChecksumCRC32C");
+ checksumCRC32CNode.SetText(m_checksumCRC32C);
+ }
+
+ if(m_checksumSHA1HasBeenSet)
+ {
+ XmlNode checksumSHA1Node = parentNode.CreateChildElement("ChecksumSHA1");
+ checksumSHA1Node.SetText(m_checksumSHA1);
+ }
+
+ if(m_checksumSHA256HasBeenSet)
+ {
+ XmlNode checksumSHA256Node = parentNode.CreateChildElement("ChecksumSHA256");
+ checksumSHA256Node.SetText(m_checksumSHA256);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ChecksumAlgorithm.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ChecksumAlgorithm.cpp
new file mode 100644
index 0000000000..674e726dd7
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ChecksumAlgorithm.cpp
@@ -0,0 +1,84 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ChecksumAlgorithm.h>
+#include <aws/core/utils/HashingUtils.h>
+#include <aws/core/Globals.h>
+#include <aws/core/utils/EnumParseOverflowContainer.h>
+
+using namespace Aws::Utils;
+
+
+namespace Aws
+{
+ namespace S3
+ {
+ namespace Model
+ {
+ namespace ChecksumAlgorithmMapper
+ {
+
+ static const int CRC32_HASH = HashingUtils::HashString("CRC32");
+ static const int CRC32C_HASH = HashingUtils::HashString("CRC32C");
+ static const int SHA1_HASH = HashingUtils::HashString("SHA1");
+ static const int SHA256_HASH = HashingUtils::HashString("SHA256");
+
+
+ ChecksumAlgorithm GetChecksumAlgorithmForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == CRC32_HASH)
+ {
+ return ChecksumAlgorithm::CRC32;
+ }
+ else if (hashCode == CRC32C_HASH)
+ {
+ return ChecksumAlgorithm::CRC32C;
+ }
+ else if (hashCode == SHA1_HASH)
+ {
+ return ChecksumAlgorithm::SHA1;
+ }
+ else if (hashCode == SHA256_HASH)
+ {
+ return ChecksumAlgorithm::SHA256;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<ChecksumAlgorithm>(hashCode);
+ }
+
+ return ChecksumAlgorithm::NOT_SET;
+ }
+
+ Aws::String GetNameForChecksumAlgorithm(ChecksumAlgorithm enumValue)
+ {
+ switch(enumValue)
+ {
+ case ChecksumAlgorithm::CRC32:
+ return "CRC32";
+ case ChecksumAlgorithm::CRC32C:
+ return "CRC32C";
+ case ChecksumAlgorithm::SHA1:
+ return "SHA1";
+ case ChecksumAlgorithm::SHA256:
+ return "SHA256";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace ChecksumAlgorithmMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ChecksumMode.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ChecksumMode.cpp
new file mode 100644
index 0000000000..d3085bfb8a
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ChecksumMode.cpp
@@ -0,0 +1,63 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ChecksumMode.h>
+#include <aws/core/utils/HashingUtils.h>
+#include <aws/core/Globals.h>
+#include <aws/core/utils/EnumParseOverflowContainer.h>
+
+using namespace Aws::Utils;
+
+
+namespace Aws
+{
+ namespace S3
+ {
+ namespace Model
+ {
+ namespace ChecksumModeMapper
+ {
+
+ static const int ENABLED_HASH = HashingUtils::HashString("ENABLED");
+
+
+ ChecksumMode GetChecksumModeForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == ENABLED_HASH)
+ {
+ return ChecksumMode::ENABLED;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<ChecksumMode>(hashCode);
+ }
+
+ return ChecksumMode::NOT_SET;
+ }
+
+ Aws::String GetNameForChecksumMode(ChecksumMode enumValue)
+ {
+ switch(enumValue)
+ {
+ case ChecksumMode::ENABLED:
+ return "ENABLED";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace ChecksumModeMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CompleteMultipartUploadRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CompleteMultipartUploadRequest.cpp
index 8c058ba507..03a8a23f96 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CompleteMultipartUploadRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CompleteMultipartUploadRequest.cpp
@@ -21,13 +21,42 @@ CompleteMultipartUploadRequest::CompleteMultipartUploadRequest() :
m_keyHasBeenSet(false),
m_multipartUploadHasBeenSet(false),
m_uploadIdHasBeenSet(false),
+ m_checksumCRC32HasBeenSet(false),
+ m_checksumCRC32CHasBeenSet(false),
+ m_checksumSHA1HasBeenSet(false),
+ m_checksumSHA256HasBeenSet(false),
m_requestPayer(RequestPayer::NOT_SET),
m_requestPayerHasBeenSet(false),
m_expectedBucketOwnerHasBeenSet(false),
+ m_sSECustomerAlgorithmHasBeenSet(false),
+ m_sSECustomerKeyHasBeenSet(false),
+ m_sSECustomerKeyMD5HasBeenSet(false),
m_customizedAccessLogTagHasBeenSet(false)
{
}
+bool CompleteMultipartUploadRequest::HasEmbeddedError(Aws::IOStream &body,
+ const Aws::Http::HeaderValueCollection &header) const
+{
+ // Header is unused
+ (void) header;
+
+ auto readPointer = body.tellg();
+ XmlDocument doc = XmlDocument::CreateFromXmlStream(body);
+
+ if (!doc.WasParseSuccessful()) {
+ body.seekg(readPointer);
+ return false;
+ }
+
+ if (doc.GetRootElement().GetName() == "Error") {
+ body.seekg(readPointer);
+ return true;
+ }
+ body.seekg(readPointer);
+ return false;
+}
+
Aws::String CompleteMultipartUploadRequest::SerializePayload() const
{
XmlDocument payloadDoc = XmlDocument::CreateWithRootNode("CompleteMultipartUpload");
@@ -77,6 +106,34 @@ Aws::Http::HeaderValueCollection CompleteMultipartUploadRequest::GetRequestSpeci
{
Aws::Http::HeaderValueCollection headers;
Aws::StringStream ss;
+ if(m_checksumCRC32HasBeenSet)
+ {
+ ss << m_checksumCRC32;
+ headers.emplace("x-amz-checksum-crc32", ss.str());
+ ss.str("");
+ }
+
+ if(m_checksumCRC32CHasBeenSet)
+ {
+ ss << m_checksumCRC32C;
+ headers.emplace("x-amz-checksum-crc32c", ss.str());
+ ss.str("");
+ }
+
+ if(m_checksumSHA1HasBeenSet)
+ {
+ ss << m_checksumSHA1;
+ headers.emplace("x-amz-checksum-sha1", ss.str());
+ ss.str("");
+ }
+
+ if(m_checksumSHA256HasBeenSet)
+ {
+ ss << m_checksumSHA256;
+ headers.emplace("x-amz-checksum-sha256", ss.str());
+ ss.str("");
+ }
+
if(m_requestPayerHasBeenSet)
{
headers.emplace("x-amz-request-payer", RequestPayerMapper::GetNameForRequestPayer(m_requestPayer));
@@ -89,5 +146,36 @@ Aws::Http::HeaderValueCollection CompleteMultipartUploadRequest::GetRequestSpeci
ss.str("");
}
+ if(m_sSECustomerAlgorithmHasBeenSet)
+ {
+ ss << m_sSECustomerAlgorithm;
+ headers.emplace("x-amz-server-side-encryption-customer-algorithm", ss.str());
+ ss.str("");
+ }
+
+ if(m_sSECustomerKeyHasBeenSet)
+ {
+ ss << m_sSECustomerKey;
+ headers.emplace("x-amz-server-side-encryption-customer-key", ss.str());
+ ss.str("");
+ }
+
+ if(m_sSECustomerKeyMD5HasBeenSet)
+ {
+ ss << m_sSECustomerKeyMD5;
+ headers.emplace("x-amz-server-side-encryption-customer-key-md5", ss.str());
+ ss.str("");
+ }
+
return headers;
}
+
+CompleteMultipartUploadRequest::EndpointParameters CompleteMultipartUploadRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CompleteMultipartUploadResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CompleteMultipartUploadResult.cpp
index da3f191993..ad87777a2c 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CompleteMultipartUploadResult.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CompleteMultipartUploadResult.cpp
@@ -58,6 +58,26 @@ CompleteMultipartUploadResult& CompleteMultipartUploadResult::operator =(const A
{
m_eTag = Aws::Utils::Xml::DecodeEscapedXmlText(eTagNode.GetText());
}
+ XmlNode checksumCRC32Node = resultNode.FirstChild("ChecksumCRC32");
+ if(!checksumCRC32Node.IsNull())
+ {
+ m_checksumCRC32 = Aws::Utils::Xml::DecodeEscapedXmlText(checksumCRC32Node.GetText());
+ }
+ XmlNode checksumCRC32CNode = resultNode.FirstChild("ChecksumCRC32C");
+ if(!checksumCRC32CNode.IsNull())
+ {
+ m_checksumCRC32C = Aws::Utils::Xml::DecodeEscapedXmlText(checksumCRC32CNode.GetText());
+ }
+ XmlNode checksumSHA1Node = resultNode.FirstChild("ChecksumSHA1");
+ if(!checksumSHA1Node.IsNull())
+ {
+ m_checksumSHA1 = Aws::Utils::Xml::DecodeEscapedXmlText(checksumSHA1Node.GetText());
+ }
+ XmlNode checksumSHA256Node = resultNode.FirstChild("ChecksumSHA256");
+ if(!checksumSHA256Node.IsNull())
+ {
+ m_checksumSHA256 = Aws::Utils::Xml::DecodeEscapedXmlText(checksumSHA256Node.GetText());
+ }
}
const auto& headers = result.GetHeaderValueCollection();
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CompletedPart.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CompletedPart.cpp
index 8fb63ee1f3..a6bce6a9f4 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CompletedPart.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CompletedPart.cpp
@@ -22,6 +22,10 @@ namespace Model
CompletedPart::CompletedPart() :
m_eTagHasBeenSet(false),
+ m_checksumCRC32HasBeenSet(false),
+ m_checksumCRC32CHasBeenSet(false),
+ m_checksumSHA1HasBeenSet(false),
+ m_checksumSHA256HasBeenSet(false),
m_partNumber(0),
m_partNumberHasBeenSet(false)
{
@@ -29,6 +33,10 @@ CompletedPart::CompletedPart() :
CompletedPart::CompletedPart(const XmlNode& xmlNode) :
m_eTagHasBeenSet(false),
+ m_checksumCRC32HasBeenSet(false),
+ m_checksumCRC32CHasBeenSet(false),
+ m_checksumSHA1HasBeenSet(false),
+ m_checksumSHA256HasBeenSet(false),
m_partNumber(0),
m_partNumberHasBeenSet(false)
{
@@ -47,6 +55,30 @@ CompletedPart& CompletedPart::operator =(const XmlNode& xmlNode)
m_eTag = Aws::Utils::Xml::DecodeEscapedXmlText(eTagNode.GetText());
m_eTagHasBeenSet = true;
}
+ XmlNode checksumCRC32Node = resultNode.FirstChild("ChecksumCRC32");
+ if(!checksumCRC32Node.IsNull())
+ {
+ m_checksumCRC32 = Aws::Utils::Xml::DecodeEscapedXmlText(checksumCRC32Node.GetText());
+ m_checksumCRC32HasBeenSet = true;
+ }
+ XmlNode checksumCRC32CNode = resultNode.FirstChild("ChecksumCRC32C");
+ if(!checksumCRC32CNode.IsNull())
+ {
+ m_checksumCRC32C = Aws::Utils::Xml::DecodeEscapedXmlText(checksumCRC32CNode.GetText());
+ m_checksumCRC32CHasBeenSet = true;
+ }
+ XmlNode checksumSHA1Node = resultNode.FirstChild("ChecksumSHA1");
+ if(!checksumSHA1Node.IsNull())
+ {
+ m_checksumSHA1 = Aws::Utils::Xml::DecodeEscapedXmlText(checksumSHA1Node.GetText());
+ m_checksumSHA1HasBeenSet = true;
+ }
+ XmlNode checksumSHA256Node = resultNode.FirstChild("ChecksumSHA256");
+ if(!checksumSHA256Node.IsNull())
+ {
+ m_checksumSHA256 = Aws::Utils::Xml::DecodeEscapedXmlText(checksumSHA256Node.GetText());
+ m_checksumSHA256HasBeenSet = true;
+ }
XmlNode partNumberNode = resultNode.FirstChild("PartNumber");
if(!partNumberNode.IsNull())
{
@@ -67,6 +99,30 @@ void CompletedPart::AddToNode(XmlNode& parentNode) const
eTagNode.SetText(m_eTag);
}
+ if(m_checksumCRC32HasBeenSet)
+ {
+ XmlNode checksumCRC32Node = parentNode.CreateChildElement("ChecksumCRC32");
+ checksumCRC32Node.SetText(m_checksumCRC32);
+ }
+
+ if(m_checksumCRC32CHasBeenSet)
+ {
+ XmlNode checksumCRC32CNode = parentNode.CreateChildElement("ChecksumCRC32C");
+ checksumCRC32CNode.SetText(m_checksumCRC32C);
+ }
+
+ if(m_checksumSHA1HasBeenSet)
+ {
+ XmlNode checksumSHA1Node = parentNode.CreateChildElement("ChecksumSHA1");
+ checksumSHA1Node.SetText(m_checksumSHA1);
+ }
+
+ if(m_checksumSHA256HasBeenSet)
+ {
+ XmlNode checksumSHA256Node = parentNode.CreateChildElement("ChecksumSHA256");
+ checksumSHA256Node.SetText(m_checksumSHA256);
+ }
+
if(m_partNumberHasBeenSet)
{
XmlNode partNumberNode = parentNode.CreateChildElement("PartNumber");
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CopyObjectRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CopyObjectRequest.cpp
index 94493cfdcf..e4e1b52819 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CopyObjectRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CopyObjectRequest.cpp
@@ -21,6 +21,8 @@ CopyObjectRequest::CopyObjectRequest() :
m_aCLHasBeenSet(false),
m_bucketHasBeenSet(false),
m_cacheControlHasBeenSet(false),
+ m_checksumAlgorithm(ChecksumAlgorithm::NOT_SET),
+ m_checksumAlgorithmHasBeenSet(false),
m_contentDispositionHasBeenSet(false),
m_contentEncodingHasBeenSet(false),
m_contentLanguageHasBeenSet(false),
@@ -70,6 +72,28 @@ CopyObjectRequest::CopyObjectRequest() :
{
}
+bool CopyObjectRequest::HasEmbeddedError(Aws::IOStream &body,
+ const Aws::Http::HeaderValueCollection &header) const
+{
+ // Header is unused
+ (void) header;
+
+ auto readPointer = body.tellg();
+ XmlDocument doc = XmlDocument::CreateFromXmlStream(body);
+
+ if (!doc.WasParseSuccessful()) {
+ body.seekg(readPointer);
+ return false;
+ }
+
+ if (doc.GetRootElement().GetName() == "Error") {
+ body.seekg(readPointer);
+ return true;
+ }
+ body.seekg(readPointer);
+ return false;
+}
+
Aws::String CopyObjectRequest::SerializePayload() const
{
return {};
@@ -113,6 +137,11 @@ Aws::Http::HeaderValueCollection CopyObjectRequest::GetRequestSpecificHeaders()
ss.str("");
}
+ if(m_checksumAlgorithmHasBeenSet)
+ {
+ headers.emplace("x-amz-checksum-algorithm", ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm));
+ }
+
if(m_contentDispositionHasBeenSet)
{
ss << m_contentDisposition;
@@ -157,7 +186,7 @@ Aws::Http::HeaderValueCollection CopyObjectRequest::GetRequestSpecificHeaders()
if(m_copySourceIfModifiedSinceHasBeenSet)
{
- headers.emplace("x-amz-copy-source-if-modified-since", m_copySourceIfModifiedSince.ToGmtString(DateFormat::RFC822));
+ headers.emplace("x-amz-copy-source-if-modified-since", m_copySourceIfModifiedSince.ToGmtString(Aws::Utils::DateFormat::RFC822));
}
if(m_copySourceIfNoneMatchHasBeenSet)
@@ -169,12 +198,12 @@ Aws::Http::HeaderValueCollection CopyObjectRequest::GetRequestSpecificHeaders()
if(m_copySourceIfUnmodifiedSinceHasBeenSet)
{
- headers.emplace("x-amz-copy-source-if-unmodified-since", m_copySourceIfUnmodifiedSince.ToGmtString(DateFormat::RFC822));
+ headers.emplace("x-amz-copy-source-if-unmodified-since", m_copySourceIfUnmodifiedSince.ToGmtString(Aws::Utils::DateFormat::RFC822));
}
if(m_expiresHasBeenSet)
{
- headers.emplace("expires", m_expires.ToGmtString(DateFormat::RFC822));
+ headers.emplace("expires", m_expires.ToGmtString(Aws::Utils::DateFormat::RFC822));
}
if(m_grantFullControlHasBeenSet)
@@ -324,7 +353,7 @@ Aws::Http::HeaderValueCollection CopyObjectRequest::GetRequestSpecificHeaders()
if(m_objectLockRetainUntilDateHasBeenSet)
{
- headers.emplace("x-amz-object-lock-retain-until-date", m_objectLockRetainUntilDate.ToGmtString(DateFormat::ISO_8601));
+ headers.emplace("x-amz-object-lock-retain-until-date", m_objectLockRetainUntilDate.ToGmtString(Aws::Utils::DateFormat::ISO_8601));
}
if(m_objectLockLegalHoldStatusHasBeenSet)
@@ -348,3 +377,13 @@ Aws::Http::HeaderValueCollection CopyObjectRequest::GetRequestSpecificHeaders()
return headers;
}
+
+CopyObjectRequest::EndpointParameters CopyObjectRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CopyObjectResultDetails.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CopyObjectResultDetails.cpp
index 6e03159046..313d2cde14 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CopyObjectResultDetails.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CopyObjectResultDetails.cpp
@@ -22,13 +22,21 @@ namespace Model
CopyObjectResultDetails::CopyObjectResultDetails() :
m_eTagHasBeenSet(false),
- m_lastModifiedHasBeenSet(false)
+ m_lastModifiedHasBeenSet(false),
+ m_checksumCRC32HasBeenSet(false),
+ m_checksumCRC32CHasBeenSet(false),
+ m_checksumSHA1HasBeenSet(false),
+ m_checksumSHA256HasBeenSet(false)
{
}
CopyObjectResultDetails::CopyObjectResultDetails(const XmlNode& xmlNode) :
m_eTagHasBeenSet(false),
- m_lastModifiedHasBeenSet(false)
+ m_lastModifiedHasBeenSet(false),
+ m_checksumCRC32HasBeenSet(false),
+ m_checksumCRC32CHasBeenSet(false),
+ m_checksumSHA1HasBeenSet(false),
+ m_checksumSHA256HasBeenSet(false)
{
*this = xmlNode;
}
@@ -48,9 +56,33 @@ CopyObjectResultDetails& CopyObjectResultDetails::operator =(const XmlNode& xmlN
XmlNode lastModifiedNode = resultNode.FirstChild("LastModified");
if(!lastModifiedNode.IsNull())
{
- m_lastModified = DateTime(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(lastModifiedNode.GetText()).c_str()).c_str(), DateFormat::ISO_8601);
+ m_lastModified = DateTime(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(lastModifiedNode.GetText()).c_str()).c_str(), Aws::Utils::DateFormat::ISO_8601);
m_lastModifiedHasBeenSet = true;
}
+ XmlNode checksumCRC32Node = resultNode.FirstChild("ChecksumCRC32");
+ if(!checksumCRC32Node.IsNull())
+ {
+ m_checksumCRC32 = Aws::Utils::Xml::DecodeEscapedXmlText(checksumCRC32Node.GetText());
+ m_checksumCRC32HasBeenSet = true;
+ }
+ XmlNode checksumCRC32CNode = resultNode.FirstChild("ChecksumCRC32C");
+ if(!checksumCRC32CNode.IsNull())
+ {
+ m_checksumCRC32C = Aws::Utils::Xml::DecodeEscapedXmlText(checksumCRC32CNode.GetText());
+ m_checksumCRC32CHasBeenSet = true;
+ }
+ XmlNode checksumSHA1Node = resultNode.FirstChild("ChecksumSHA1");
+ if(!checksumSHA1Node.IsNull())
+ {
+ m_checksumSHA1 = Aws::Utils::Xml::DecodeEscapedXmlText(checksumSHA1Node.GetText());
+ m_checksumSHA1HasBeenSet = true;
+ }
+ XmlNode checksumSHA256Node = resultNode.FirstChild("ChecksumSHA256");
+ if(!checksumSHA256Node.IsNull())
+ {
+ m_checksumSHA256 = Aws::Utils::Xml::DecodeEscapedXmlText(checksumSHA256Node.GetText());
+ m_checksumSHA256HasBeenSet = true;
+ }
}
return *this;
@@ -68,7 +100,31 @@ void CopyObjectResultDetails::AddToNode(XmlNode& parentNode) const
if(m_lastModifiedHasBeenSet)
{
XmlNode lastModifiedNode = parentNode.CreateChildElement("LastModified");
- lastModifiedNode.SetText(m_lastModified.ToGmtString(DateFormat::ISO_8601));
+ lastModifiedNode.SetText(m_lastModified.ToGmtString(Aws::Utils::DateFormat::ISO_8601));
+ }
+
+ if(m_checksumCRC32HasBeenSet)
+ {
+ XmlNode checksumCRC32Node = parentNode.CreateChildElement("ChecksumCRC32");
+ checksumCRC32Node.SetText(m_checksumCRC32);
+ }
+
+ if(m_checksumCRC32CHasBeenSet)
+ {
+ XmlNode checksumCRC32CNode = parentNode.CreateChildElement("ChecksumCRC32C");
+ checksumCRC32CNode.SetText(m_checksumCRC32C);
+ }
+
+ if(m_checksumSHA1HasBeenSet)
+ {
+ XmlNode checksumSHA1Node = parentNode.CreateChildElement("ChecksumSHA1");
+ checksumSHA1Node.SetText(m_checksumSHA1);
+ }
+
+ if(m_checksumSHA256HasBeenSet)
+ {
+ XmlNode checksumSHA256Node = parentNode.CreateChildElement("ChecksumSHA256");
+ checksumSHA256Node.SetText(m_checksumSHA256);
}
}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CopyPartResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CopyPartResult.cpp
index f8f5c9809c..6c8f942caf 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CopyPartResult.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CopyPartResult.cpp
@@ -22,13 +22,21 @@ namespace Model
CopyPartResult::CopyPartResult() :
m_eTagHasBeenSet(false),
- m_lastModifiedHasBeenSet(false)
+ m_lastModifiedHasBeenSet(false),
+ m_checksumCRC32HasBeenSet(false),
+ m_checksumCRC32CHasBeenSet(false),
+ m_checksumSHA1HasBeenSet(false),
+ m_checksumSHA256HasBeenSet(false)
{
}
CopyPartResult::CopyPartResult(const XmlNode& xmlNode) :
m_eTagHasBeenSet(false),
- m_lastModifiedHasBeenSet(false)
+ m_lastModifiedHasBeenSet(false),
+ m_checksumCRC32HasBeenSet(false),
+ m_checksumCRC32CHasBeenSet(false),
+ m_checksumSHA1HasBeenSet(false),
+ m_checksumSHA256HasBeenSet(false)
{
*this = xmlNode;
}
@@ -48,9 +56,33 @@ CopyPartResult& CopyPartResult::operator =(const XmlNode& xmlNode)
XmlNode lastModifiedNode = resultNode.FirstChild("LastModified");
if(!lastModifiedNode.IsNull())
{
- m_lastModified = DateTime(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(lastModifiedNode.GetText()).c_str()).c_str(), DateFormat::ISO_8601);
+ m_lastModified = DateTime(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(lastModifiedNode.GetText()).c_str()).c_str(), Aws::Utils::DateFormat::ISO_8601);
m_lastModifiedHasBeenSet = true;
}
+ XmlNode checksumCRC32Node = resultNode.FirstChild("ChecksumCRC32");
+ if(!checksumCRC32Node.IsNull())
+ {
+ m_checksumCRC32 = Aws::Utils::Xml::DecodeEscapedXmlText(checksumCRC32Node.GetText());
+ m_checksumCRC32HasBeenSet = true;
+ }
+ XmlNode checksumCRC32CNode = resultNode.FirstChild("ChecksumCRC32C");
+ if(!checksumCRC32CNode.IsNull())
+ {
+ m_checksumCRC32C = Aws::Utils::Xml::DecodeEscapedXmlText(checksumCRC32CNode.GetText());
+ m_checksumCRC32CHasBeenSet = true;
+ }
+ XmlNode checksumSHA1Node = resultNode.FirstChild("ChecksumSHA1");
+ if(!checksumSHA1Node.IsNull())
+ {
+ m_checksumSHA1 = Aws::Utils::Xml::DecodeEscapedXmlText(checksumSHA1Node.GetText());
+ m_checksumSHA1HasBeenSet = true;
+ }
+ XmlNode checksumSHA256Node = resultNode.FirstChild("ChecksumSHA256");
+ if(!checksumSHA256Node.IsNull())
+ {
+ m_checksumSHA256 = Aws::Utils::Xml::DecodeEscapedXmlText(checksumSHA256Node.GetText());
+ m_checksumSHA256HasBeenSet = true;
+ }
}
return *this;
@@ -68,7 +100,31 @@ void CopyPartResult::AddToNode(XmlNode& parentNode) const
if(m_lastModifiedHasBeenSet)
{
XmlNode lastModifiedNode = parentNode.CreateChildElement("LastModified");
- lastModifiedNode.SetText(m_lastModified.ToGmtString(DateFormat::ISO_8601));
+ lastModifiedNode.SetText(m_lastModified.ToGmtString(Aws::Utils::DateFormat::ISO_8601));
+ }
+
+ if(m_checksumCRC32HasBeenSet)
+ {
+ XmlNode checksumCRC32Node = parentNode.CreateChildElement("ChecksumCRC32");
+ checksumCRC32Node.SetText(m_checksumCRC32);
+ }
+
+ if(m_checksumCRC32CHasBeenSet)
+ {
+ XmlNode checksumCRC32CNode = parentNode.CreateChildElement("ChecksumCRC32C");
+ checksumCRC32CNode.SetText(m_checksumCRC32C);
+ }
+
+ if(m_checksumSHA1HasBeenSet)
+ {
+ XmlNode checksumSHA1Node = parentNode.CreateChildElement("ChecksumSHA1");
+ checksumSHA1Node.SetText(m_checksumSHA1);
+ }
+
+ if(m_checksumSHA256HasBeenSet)
+ {
+ XmlNode checksumSHA256Node = parentNode.CreateChildElement("ChecksumSHA256");
+ checksumSHA256Node.SetText(m_checksumSHA256);
}
}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CreateBucketRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CreateBucketRequest.cpp
index 0bc3641a33..5e8ade4bdf 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CreateBucketRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CreateBucketRequest.cpp
@@ -28,6 +28,8 @@ CreateBucketRequest::CreateBucketRequest() :
m_grantWriteACPHasBeenSet(false),
m_objectLockEnabledForBucket(false),
m_objectLockEnabledForBucketHasBeenSet(false),
+ m_objectOwnership(ObjectOwnership::NOT_SET),
+ m_objectOwnershipHasBeenSet(false),
m_customizedAccessLogTagHasBeenSet(false)
{
}
@@ -121,5 +123,22 @@ Aws::Http::HeaderValueCollection CreateBucketRequest::GetRequestSpecificHeaders(
ss.str("");
}
+ if(m_objectOwnershipHasBeenSet)
+ {
+ headers.emplace("x-amz-object-ownership", ObjectOwnershipMapper::GetNameForObjectOwnership(m_objectOwnership));
+ }
+
return headers;
}
+
+CreateBucketRequest::EndpointParameters CreateBucketRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Static context parameters
+ parameters.emplace_back(Aws::String("DisableAccessPoints"), true, Aws::Endpoint::EndpointParameter::ParameterOrigin::STATIC_CONTEXT);
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CreateMultipartUploadRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CreateMultipartUploadRequest.cpp
index 73a88bf2dc..2db712e113 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CreateMultipartUploadRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CreateMultipartUploadRequest.cpp
@@ -53,6 +53,8 @@ CreateMultipartUploadRequest::CreateMultipartUploadRequest() :
m_objectLockLegalHoldStatus(ObjectLockLegalHoldStatus::NOT_SET),
m_objectLockLegalHoldStatusHasBeenSet(false),
m_expectedBucketOwnerHasBeenSet(false),
+ m_checksumAlgorithm(ChecksumAlgorithm::NOT_SET),
+ m_checksumAlgorithmHasBeenSet(false),
m_customizedAccessLogTagHasBeenSet(false)
{
}
@@ -130,7 +132,7 @@ Aws::Http::HeaderValueCollection CreateMultipartUploadRequest::GetRequestSpecifi
if(m_expiresHasBeenSet)
{
- headers.emplace("expires", m_expires.ToGmtString(DateFormat::RFC822));
+ headers.emplace("expires", m_expires.ToGmtString(Aws::Utils::DateFormat::RFC822));
}
if(m_grantFullControlHasBeenSet)
@@ -249,7 +251,7 @@ Aws::Http::HeaderValueCollection CreateMultipartUploadRequest::GetRequestSpecifi
if(m_objectLockRetainUntilDateHasBeenSet)
{
- headers.emplace("x-amz-object-lock-retain-until-date", m_objectLockRetainUntilDate.ToGmtString(DateFormat::ISO_8601));
+ headers.emplace("x-amz-object-lock-retain-until-date", m_objectLockRetainUntilDate.ToGmtString(Aws::Utils::DateFormat::ISO_8601));
}
if(m_objectLockLegalHoldStatusHasBeenSet)
@@ -264,5 +266,20 @@ Aws::Http::HeaderValueCollection CreateMultipartUploadRequest::GetRequestSpecifi
ss.str("");
}
+ if(m_checksumAlgorithmHasBeenSet)
+ {
+ headers.emplace("x-amz-checksum-algorithm", ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm));
+ }
+
return headers;
}
+
+CreateMultipartUploadRequest::EndpointParameters CreateMultipartUploadRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CreateMultipartUploadResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CreateMultipartUploadResult.cpp
index 4a2772c9ef..d77d44d362 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CreateMultipartUploadResult.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CreateMultipartUploadResult.cpp
@@ -19,14 +19,16 @@ using namespace Aws;
CreateMultipartUploadResult::CreateMultipartUploadResult() :
m_serverSideEncryption(ServerSideEncryption::NOT_SET),
m_bucketKeyEnabled(false),
- m_requestCharged(RequestCharged::NOT_SET)
+ m_requestCharged(RequestCharged::NOT_SET),
+ m_checksumAlgorithm(ChecksumAlgorithm::NOT_SET)
{
}
CreateMultipartUploadResult::CreateMultipartUploadResult(const Aws::AmazonWebServiceResult<XmlDocument>& result) :
m_serverSideEncryption(ServerSideEncryption::NOT_SET),
m_bucketKeyEnabled(false),
- m_requestCharged(RequestCharged::NOT_SET)
+ m_requestCharged(RequestCharged::NOT_SET),
+ m_checksumAlgorithm(ChecksumAlgorithm::NOT_SET)
{
*this = result;
}
@@ -59,7 +61,7 @@ CreateMultipartUploadResult& CreateMultipartUploadResult::operator =(const Aws::
const auto& abortDateIter = headers.find("x-amz-abort-date");
if(abortDateIter != headers.end())
{
- m_abortDate = DateTime(abortDateIter->second, DateFormat::RFC822);
+ m_abortDate = DateTime(abortDateIter->second, Aws::Utils::DateFormat::RFC822);
}
const auto& abortRuleIdIter = headers.find("x-amz-abort-rule-id");
@@ -110,5 +112,11 @@ CreateMultipartUploadResult& CreateMultipartUploadResult::operator =(const Aws::
m_requestCharged = RequestChargedMapper::GetRequestChargedForName(requestChargedIter->second);
}
+ const auto& checksumAlgorithmIter = headers.find("x-amz-checksum-algorithm");
+ if(checksumAlgorithmIter != headers.end())
+ {
+ m_checksumAlgorithm = ChecksumAlgorithmMapper::GetChecksumAlgorithmForName(checksumAlgorithmIter->second);
+ }
+
return *this;
}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketAnalyticsConfigurationRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketAnalyticsConfigurationRequest.cpp
index bcd1e8f320..721721bf25 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketAnalyticsConfigurationRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketAnalyticsConfigurationRequest.cpp
@@ -71,3 +71,13 @@ Aws::Http::HeaderValueCollection DeleteBucketAnalyticsConfigurationRequest::GetR
return headers;
}
+
+DeleteBucketAnalyticsConfigurationRequest::EndpointParameters DeleteBucketAnalyticsConfigurationRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketCorsRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketCorsRequest.cpp
index b52d99571a..9eb64d50c1 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketCorsRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketCorsRequest.cpp
@@ -63,3 +63,13 @@ Aws::Http::HeaderValueCollection DeleteBucketCorsRequest::GetRequestSpecificHead
return headers;
}
+
+DeleteBucketCorsRequest::EndpointParameters DeleteBucketCorsRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketEncryptionRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketEncryptionRequest.cpp
index 3e01a0b9dc..cbd8f93536 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketEncryptionRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketEncryptionRequest.cpp
@@ -63,3 +63,13 @@ Aws::Http::HeaderValueCollection DeleteBucketEncryptionRequest::GetRequestSpecif
return headers;
}
+
+DeleteBucketEncryptionRequest::EndpointParameters DeleteBucketEncryptionRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketIntelligentTieringConfigurationRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketIntelligentTieringConfigurationRequest.cpp
index b48d573ee6..52855aeaa7 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketIntelligentTieringConfigurationRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketIntelligentTieringConfigurationRequest.cpp
@@ -57,3 +57,13 @@ void DeleteBucketIntelligentTieringConfigurationRequest::AddQueryStringParameter
}
}
+
+DeleteBucketIntelligentTieringConfigurationRequest::EndpointParameters DeleteBucketIntelligentTieringConfigurationRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketInventoryConfigurationRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketInventoryConfigurationRequest.cpp
index 7bc2d179d6..2f421dac17 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketInventoryConfigurationRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketInventoryConfigurationRequest.cpp
@@ -71,3 +71,13 @@ Aws::Http::HeaderValueCollection DeleteBucketInventoryConfigurationRequest::GetR
return headers;
}
+
+DeleteBucketInventoryConfigurationRequest::EndpointParameters DeleteBucketInventoryConfigurationRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketLifecycleRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketLifecycleRequest.cpp
index 54311cff3e..b8afa094ff 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketLifecycleRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketLifecycleRequest.cpp
@@ -63,3 +63,13 @@ Aws::Http::HeaderValueCollection DeleteBucketLifecycleRequest::GetRequestSpecifi
return headers;
}
+
+DeleteBucketLifecycleRequest::EndpointParameters DeleteBucketLifecycleRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketMetricsConfigurationRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketMetricsConfigurationRequest.cpp
index 631dee94a7..29f50338ab 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketMetricsConfigurationRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketMetricsConfigurationRequest.cpp
@@ -71,3 +71,13 @@ Aws::Http::HeaderValueCollection DeleteBucketMetricsConfigurationRequest::GetReq
return headers;
}
+
+DeleteBucketMetricsConfigurationRequest::EndpointParameters DeleteBucketMetricsConfigurationRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketOwnershipControlsRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketOwnershipControlsRequest.cpp
index 5b18b12424..4ed933cda9 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketOwnershipControlsRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketOwnershipControlsRequest.cpp
@@ -63,3 +63,13 @@ Aws::Http::HeaderValueCollection DeleteBucketOwnershipControlsRequest::GetReques
return headers;
}
+
+DeleteBucketOwnershipControlsRequest::EndpointParameters DeleteBucketOwnershipControlsRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketPolicyRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketPolicyRequest.cpp
index 33bb2cef34..b9bda713ca 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketPolicyRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketPolicyRequest.cpp
@@ -63,3 +63,13 @@ Aws::Http::HeaderValueCollection DeleteBucketPolicyRequest::GetRequestSpecificHe
return headers;
}
+
+DeleteBucketPolicyRequest::EndpointParameters DeleteBucketPolicyRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketReplicationRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketReplicationRequest.cpp
index af6092ee6c..0bcdf577cf 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketReplicationRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketReplicationRequest.cpp
@@ -63,3 +63,13 @@ Aws::Http::HeaderValueCollection DeleteBucketReplicationRequest::GetRequestSpeci
return headers;
}
+
+DeleteBucketReplicationRequest::EndpointParameters DeleteBucketReplicationRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketRequest.cpp
index 3cfa02d882..fe34195378 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketRequest.cpp
@@ -63,3 +63,13 @@ Aws::Http::HeaderValueCollection DeleteBucketRequest::GetRequestSpecificHeaders(
return headers;
}
+
+DeleteBucketRequest::EndpointParameters DeleteBucketRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketTaggingRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketTaggingRequest.cpp
index 7d61b959f5..5df949880a 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketTaggingRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketTaggingRequest.cpp
@@ -63,3 +63,13 @@ Aws::Http::HeaderValueCollection DeleteBucketTaggingRequest::GetRequestSpecificH
return headers;
}
+
+DeleteBucketTaggingRequest::EndpointParameters DeleteBucketTaggingRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketWebsiteRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketWebsiteRequest.cpp
index 59bc58a8d7..2a7b23cfb6 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketWebsiteRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketWebsiteRequest.cpp
@@ -63,3 +63,13 @@ Aws::Http::HeaderValueCollection DeleteBucketWebsiteRequest::GetRequestSpecificH
return headers;
}
+
+DeleteBucketWebsiteRequest::EndpointParameters DeleteBucketWebsiteRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteMarkerEntry.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteMarkerEntry.cpp
index 05766bb960..25ea77fa9b 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteMarkerEntry.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteMarkerEntry.cpp
@@ -74,7 +74,7 @@ DeleteMarkerEntry& DeleteMarkerEntry::operator =(const XmlNode& xmlNode)
XmlNode lastModifiedNode = resultNode.FirstChild("LastModified");
if(!lastModifiedNode.IsNull())
{
- m_lastModified = DateTime(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(lastModifiedNode.GetText()).c_str()).c_str(), DateFormat::ISO_8601);
+ m_lastModified = DateTime(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(lastModifiedNode.GetText()).c_str()).c_str(), Aws::Utils::DateFormat::ISO_8601);
m_lastModifiedHasBeenSet = true;
}
}
@@ -114,7 +114,7 @@ void DeleteMarkerEntry::AddToNode(XmlNode& parentNode) const
if(m_lastModifiedHasBeenSet)
{
XmlNode lastModifiedNode = parentNode.CreateChildElement("LastModified");
- lastModifiedNode.SetText(m_lastModified.ToGmtString(DateFormat::ISO_8601));
+ lastModifiedNode.SetText(m_lastModified.ToGmtString(Aws::Utils::DateFormat::ISO_8601));
}
}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectRequest.cpp
index 6bd83e7cbe..6a27dbf097 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectRequest.cpp
@@ -96,3 +96,13 @@ Aws::Http::HeaderValueCollection DeleteObjectRequest::GetRequestSpecificHeaders(
return headers;
}
+
+DeleteObjectRequest::EndpointParameters DeleteObjectRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectTaggingRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectTaggingRequest.cpp
index 580a7fa70b..5d19b31c49 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectTaggingRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectTaggingRequest.cpp
@@ -72,3 +72,13 @@ Aws::Http::HeaderValueCollection DeleteObjectTaggingRequest::GetRequestSpecificH
return headers;
}
+
+DeleteObjectTaggingRequest::EndpointParameters DeleteObjectTaggingRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectsRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectsRequest.cpp
index 3f7759ca0a..1b1841fe8b 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectsRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectsRequest.cpp
@@ -25,6 +25,8 @@ DeleteObjectsRequest::DeleteObjectsRequest() :
m_bypassGovernanceRetention(false),
m_bypassGovernanceRetentionHasBeenSet(false),
m_expectedBucketOwnerHasBeenSet(false),
+ m_checksumAlgorithm(ChecksumAlgorithm::NOT_SET),
+ m_checksumAlgorithmHasBeenSet(false),
m_customizedAccessLogTagHasBeenSet(false)
{
}
@@ -97,5 +99,33 @@ Aws::Http::HeaderValueCollection DeleteObjectsRequest::GetRequestSpecificHeaders
ss.str("");
}
+ if(m_checksumAlgorithmHasBeenSet)
+ {
+ headers.emplace("x-amz-sdk-checksum-algorithm", ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm));
+ }
+
return headers;
}
+
+DeleteObjectsRequest::EndpointParameters DeleteObjectsRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
+
+Aws::String DeleteObjectsRequest::GetChecksumAlgorithmName() const
+{
+ if (m_checksumAlgorithm == ChecksumAlgorithm::NOT_SET)
+ {
+ return "md5";
+ }
+ else
+ {
+ return ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm);
+ }
+}
+
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeletePublicAccessBlockRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeletePublicAccessBlockRequest.cpp
index 750457f594..0f087377a7 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeletePublicAccessBlockRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeletePublicAccessBlockRequest.cpp
@@ -63,3 +63,13 @@ Aws::Http::HeaderValueCollection DeletePublicAccessBlockRequest::GetRequestSpeci
return headers;
}
+
+DeletePublicAccessBlockRequest::EndpointParameters DeletePublicAccessBlockRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Event.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Event.cpp
index c6e779ab06..e6aa390f59 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Event.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Event.cpp
@@ -37,6 +37,16 @@ namespace Aws
static const int s3_Replication_OperationNotTracked_HASH = HashingUtils::HashString("s3:Replication:OperationNotTracked");
static const int s3_Replication_OperationMissedThreshold_HASH = HashingUtils::HashString("s3:Replication:OperationMissedThreshold");
static const int s3_Replication_OperationReplicatedAfterThreshold_HASH = HashingUtils::HashString("s3:Replication:OperationReplicatedAfterThreshold");
+ static const int s3_ObjectRestore_Delete_HASH = HashingUtils::HashString("s3:ObjectRestore:Delete");
+ static const int s3_LifecycleTransition_HASH = HashingUtils::HashString("s3:LifecycleTransition");
+ static const int s3_IntelligentTiering_HASH = HashingUtils::HashString("s3:IntelligentTiering");
+ static const int s3_ObjectAcl_Put_HASH = HashingUtils::HashString("s3:ObjectAcl:Put");
+ static const int s3_LifecycleExpiration_HASH = HashingUtils::HashString("s3:LifecycleExpiration:*");
+ static const int s3_LifecycleExpiration_Delete_HASH = HashingUtils::HashString("s3:LifecycleExpiration:Delete");
+ static const int s3_LifecycleExpiration_DeleteMarkerCreated_HASH = HashingUtils::HashString("s3:LifecycleExpiration:DeleteMarkerCreated");
+ static const int s3_ObjectTagging_HASH = HashingUtils::HashString("s3:ObjectTagging:*");
+ static const int s3_ObjectTagging_Put_HASH = HashingUtils::HashString("s3:ObjectTagging:Put");
+ static const int s3_ObjectTagging_Delete_HASH = HashingUtils::HashString("s3:ObjectTagging:Delete");
Event GetEventForName(const Aws::String& name)
@@ -110,6 +120,46 @@ namespace Aws
{
return Event::s3_Replication_OperationReplicatedAfterThreshold;
}
+ else if (hashCode == s3_ObjectRestore_Delete_HASH)
+ {
+ return Event::s3_ObjectRestore_Delete;
+ }
+ else if (hashCode == s3_LifecycleTransition_HASH)
+ {
+ return Event::s3_LifecycleTransition;
+ }
+ else if (hashCode == s3_IntelligentTiering_HASH)
+ {
+ return Event::s3_IntelligentTiering;
+ }
+ else if (hashCode == s3_ObjectAcl_Put_HASH)
+ {
+ return Event::s3_ObjectAcl_Put;
+ }
+ else if (hashCode == s3_LifecycleExpiration_HASH)
+ {
+ return Event::s3_LifecycleExpiration;
+ }
+ else if (hashCode == s3_LifecycleExpiration_Delete_HASH)
+ {
+ return Event::s3_LifecycleExpiration_Delete;
+ }
+ else if (hashCode == s3_LifecycleExpiration_DeleteMarkerCreated_HASH)
+ {
+ return Event::s3_LifecycleExpiration_DeleteMarkerCreated;
+ }
+ else if (hashCode == s3_ObjectTagging_HASH)
+ {
+ return Event::s3_ObjectTagging;
+ }
+ else if (hashCode == s3_ObjectTagging_Put_HASH)
+ {
+ return Event::s3_ObjectTagging_Put;
+ }
+ else if (hashCode == s3_ObjectTagging_Delete_HASH)
+ {
+ return Event::s3_ObjectTagging_Delete;
+ }
EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
if(overflowContainer)
{
@@ -158,6 +208,26 @@ namespace Aws
return "s3:Replication:OperationMissedThreshold";
case Event::s3_Replication_OperationReplicatedAfterThreshold:
return "s3:Replication:OperationReplicatedAfterThreshold";
+ case Event::s3_ObjectRestore_Delete:
+ return "s3:ObjectRestore:Delete";
+ case Event::s3_LifecycleTransition:
+ return "s3:LifecycleTransition";
+ case Event::s3_IntelligentTiering:
+ return "s3:IntelligentTiering";
+ case Event::s3_ObjectAcl_Put:
+ return "s3:ObjectAcl:Put";
+ case Event::s3_LifecycleExpiration:
+ return "s3:LifecycleExpiration:*";
+ case Event::s3_LifecycleExpiration_Delete:
+ return "s3:LifecycleExpiration:Delete";
+ case Event::s3_LifecycleExpiration_DeleteMarkerCreated:
+ return "s3:LifecycleExpiration:DeleteMarkerCreated";
+ case Event::s3_ObjectTagging:
+ return "s3:ObjectTagging:*";
+ case Event::s3_ObjectTagging_Put:
+ return "s3:ObjectTagging:Put";
+ case Event::s3_ObjectTagging_Delete:
+ return "s3:ObjectTagging:Delete";
default:
EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
if(overflowContainer)
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/EventBridgeConfiguration.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/EventBridgeConfiguration.cpp
new file mode 100644
index 0000000000..ebf1ca13d9
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/EventBridgeConfiguration.cpp
@@ -0,0 +1,51 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/EventBridgeConfiguration.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+#include <aws/core/utils/StringUtils.h>
+#include <aws/core/utils/memory/stl/AWSStringStream.h>
+
+#include <utility>
+
+using namespace Aws::Utils::Xml;
+using namespace Aws::Utils;
+
+namespace Aws
+{
+namespace S3
+{
+namespace Model
+{
+
+EventBridgeConfiguration::EventBridgeConfiguration()
+{
+}
+
+EventBridgeConfiguration::EventBridgeConfiguration(const XmlNode& xmlNode)
+{
+ *this = xmlNode;
+}
+
+EventBridgeConfiguration& EventBridgeConfiguration::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ }
+
+ return *this;
+}
+
+void EventBridgeConfiguration::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ AWS_UNREFERENCED_PARAM(parentNode);
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketAccelerateConfigurationRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketAccelerateConfigurationRequest.cpp
index 3bc67a43cc..f144bc0c22 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketAccelerateConfigurationRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketAccelerateConfigurationRequest.cpp
@@ -63,3 +63,13 @@ Aws::Http::HeaderValueCollection GetBucketAccelerateConfigurationRequest::GetReq
return headers;
}
+
+GetBucketAccelerateConfigurationRequest::EndpointParameters GetBucketAccelerateConfigurationRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketAclRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketAclRequest.cpp
index df77a9e7f6..962a4eb555 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketAclRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketAclRequest.cpp
@@ -63,3 +63,13 @@ Aws::Http::HeaderValueCollection GetBucketAclRequest::GetRequestSpecificHeaders(
return headers;
}
+
+GetBucketAclRequest::EndpointParameters GetBucketAclRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketAnalyticsConfigurationRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketAnalyticsConfigurationRequest.cpp
index 5e3d792e2c..8dde64a2b2 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketAnalyticsConfigurationRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketAnalyticsConfigurationRequest.cpp
@@ -71,3 +71,13 @@ Aws::Http::HeaderValueCollection GetBucketAnalyticsConfigurationRequest::GetRequ
return headers;
}
+
+GetBucketAnalyticsConfigurationRequest::EndpointParameters GetBucketAnalyticsConfigurationRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketCorsRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketCorsRequest.cpp
index 92cc762080..2f3e70a8eb 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketCorsRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketCorsRequest.cpp
@@ -63,3 +63,13 @@ Aws::Http::HeaderValueCollection GetBucketCorsRequest::GetRequestSpecificHeaders
return headers;
}
+
+GetBucketCorsRequest::EndpointParameters GetBucketCorsRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketEncryptionRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketEncryptionRequest.cpp
index ad69f94035..1d679807c7 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketEncryptionRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketEncryptionRequest.cpp
@@ -63,3 +63,13 @@ Aws::Http::HeaderValueCollection GetBucketEncryptionRequest::GetRequestSpecificH
return headers;
}
+
+GetBucketEncryptionRequest::EndpointParameters GetBucketEncryptionRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketIntelligentTieringConfigurationRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketIntelligentTieringConfigurationRequest.cpp
index ac5e664e69..1aeb94e440 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketIntelligentTieringConfigurationRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketIntelligentTieringConfigurationRequest.cpp
@@ -57,3 +57,13 @@ void GetBucketIntelligentTieringConfigurationRequest::AddQueryStringParameters(U
}
}
+
+GetBucketIntelligentTieringConfigurationRequest::EndpointParameters GetBucketIntelligentTieringConfigurationRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketInventoryConfigurationRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketInventoryConfigurationRequest.cpp
index f3ec3acdc5..cf462b3fa9 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketInventoryConfigurationRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketInventoryConfigurationRequest.cpp
@@ -71,3 +71,13 @@ Aws::Http::HeaderValueCollection GetBucketInventoryConfigurationRequest::GetRequ
return headers;
}
+
+GetBucketInventoryConfigurationRequest::EndpointParameters GetBucketInventoryConfigurationRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketLifecycleConfigurationRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketLifecycleConfigurationRequest.cpp
index 5abc090ac4..019d5457a9 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketLifecycleConfigurationRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketLifecycleConfigurationRequest.cpp
@@ -63,3 +63,13 @@ Aws::Http::HeaderValueCollection GetBucketLifecycleConfigurationRequest::GetRequ
return headers;
}
+
+GetBucketLifecycleConfigurationRequest::EndpointParameters GetBucketLifecycleConfigurationRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketLocationRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketLocationRequest.cpp
index 68e7f366f6..6958be9895 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketLocationRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketLocationRequest.cpp
@@ -63,3 +63,13 @@ Aws::Http::HeaderValueCollection GetBucketLocationRequest::GetRequestSpecificHea
return headers;
}
+
+GetBucketLocationRequest::EndpointParameters GetBucketLocationRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketLocationResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketLocationResult.cpp
index 24fc4e62b0..f748617711 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketLocationResult.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketLocationResult.cpp
@@ -36,6 +36,5 @@ GetBucketLocationResult& GetBucketLocationResult::operator =(const AmazonWebServ
m_locationConstraint = BucketLocationConstraintMapper::GetBucketLocationConstraintForName(StringUtils::Trim(resultNode.GetText().c_str()).c_str());
}
- return *this;
+ return *this;
}
-
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketLoggingRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketLoggingRequest.cpp
index ee141ec35c..38a1cbd48b 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketLoggingRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketLoggingRequest.cpp
@@ -63,3 +63,13 @@ Aws::Http::HeaderValueCollection GetBucketLoggingRequest::GetRequestSpecificHead
return headers;
}
+
+GetBucketLoggingRequest::EndpointParameters GetBucketLoggingRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketMetricsConfigurationRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketMetricsConfigurationRequest.cpp
index c384ad6f1e..11f5eacbb6 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketMetricsConfigurationRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketMetricsConfigurationRequest.cpp
@@ -71,3 +71,13 @@ Aws::Http::HeaderValueCollection GetBucketMetricsConfigurationRequest::GetReques
return headers;
}
+
+GetBucketMetricsConfigurationRequest::EndpointParameters GetBucketMetricsConfigurationRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketNotificationConfigurationRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketNotificationConfigurationRequest.cpp
index 6e892ead3b..dd672659eb 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketNotificationConfigurationRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketNotificationConfigurationRequest.cpp
@@ -63,3 +63,13 @@ Aws::Http::HeaderValueCollection GetBucketNotificationConfigurationRequest::GetR
return headers;
}
+
+GetBucketNotificationConfigurationRequest::EndpointParameters GetBucketNotificationConfigurationRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketNotificationConfigurationResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketNotificationConfigurationResult.cpp
index de68f4316a..9e7ff9481f 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketNotificationConfigurationResult.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketNotificationConfigurationResult.cpp
@@ -64,6 +64,11 @@ GetBucketNotificationConfigurationResult& GetBucketNotificationConfigurationResu
}
}
+ XmlNode eventBridgeConfigurationNode = resultNode.FirstChild("EventBridgeConfiguration");
+ if(!eventBridgeConfigurationNode.IsNull())
+ {
+ m_eventBridgeConfiguration = eventBridgeConfigurationNode;
+ }
}
return *this;
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketOwnershipControlsRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketOwnershipControlsRequest.cpp
index efaa529d2e..b3f153a9b5 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketOwnershipControlsRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketOwnershipControlsRequest.cpp
@@ -63,3 +63,13 @@ Aws::Http::HeaderValueCollection GetBucketOwnershipControlsRequest::GetRequestSp
return headers;
}
+
+GetBucketOwnershipControlsRequest::EndpointParameters GetBucketOwnershipControlsRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketPolicyRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketPolicyRequest.cpp
index e41b1fe0c5..e6571c8a6f 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketPolicyRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketPolicyRequest.cpp
@@ -63,3 +63,13 @@ Aws::Http::HeaderValueCollection GetBucketPolicyRequest::GetRequestSpecificHeade
return headers;
}
+
+GetBucketPolicyRequest::EndpointParameters GetBucketPolicyRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketPolicyStatusRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketPolicyStatusRequest.cpp
index 3c487f9634..c3af674bbd 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketPolicyStatusRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketPolicyStatusRequest.cpp
@@ -63,3 +63,13 @@ Aws::Http::HeaderValueCollection GetBucketPolicyStatusRequest::GetRequestSpecifi
return headers;
}
+
+GetBucketPolicyStatusRequest::EndpointParameters GetBucketPolicyStatusRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketReplicationRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketReplicationRequest.cpp
index 3dcadfa2be..7ef6b8a1b2 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketReplicationRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketReplicationRequest.cpp
@@ -63,3 +63,13 @@ Aws::Http::HeaderValueCollection GetBucketReplicationRequest::GetRequestSpecific
return headers;
}
+
+GetBucketReplicationRequest::EndpointParameters GetBucketReplicationRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketRequestPaymentRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketRequestPaymentRequest.cpp
index 7f3e734b70..e369ccaab7 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketRequestPaymentRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketRequestPaymentRequest.cpp
@@ -63,3 +63,13 @@ Aws::Http::HeaderValueCollection GetBucketRequestPaymentRequest::GetRequestSpeci
return headers;
}
+
+GetBucketRequestPaymentRequest::EndpointParameters GetBucketRequestPaymentRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketTaggingRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketTaggingRequest.cpp
index 72373deaf1..f3e5ea4b74 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketTaggingRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketTaggingRequest.cpp
@@ -63,3 +63,13 @@ Aws::Http::HeaderValueCollection GetBucketTaggingRequest::GetRequestSpecificHead
return headers;
}
+
+GetBucketTaggingRequest::EndpointParameters GetBucketTaggingRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketVersioningRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketVersioningRequest.cpp
index 7583f79117..830ab5425d 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketVersioningRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketVersioningRequest.cpp
@@ -63,3 +63,13 @@ Aws::Http::HeaderValueCollection GetBucketVersioningRequest::GetRequestSpecificH
return headers;
}
+
+GetBucketVersioningRequest::EndpointParameters GetBucketVersioningRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketWebsiteRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketWebsiteRequest.cpp
index 067a281fa9..73510697c2 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketWebsiteRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketWebsiteRequest.cpp
@@ -63,3 +63,13 @@ Aws::Http::HeaderValueCollection GetBucketWebsiteRequest::GetRequestSpecificHead
return headers;
}
+
+GetBucketWebsiteRequest::EndpointParameters GetBucketWebsiteRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAclRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAclRequest.cpp
index 9019eea1c7..f0ee229d60 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAclRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAclRequest.cpp
@@ -79,3 +79,13 @@ Aws::Http::HeaderValueCollection GetObjectAclRequest::GetRequestSpecificHeaders(
return headers;
}
+
+GetObjectAclRequest::EndpointParameters GetObjectAclRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAttributesParts.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAttributesParts.cpp
new file mode 100644
index 0000000000..14b9a8ac28
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAttributesParts.cpp
@@ -0,0 +1,163 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetObjectAttributesParts.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+#include <aws/core/utils/StringUtils.h>
+#include <aws/core/utils/memory/stl/AWSStringStream.h>
+
+#include <utility>
+
+using namespace Aws::Utils::Xml;
+using namespace Aws::Utils;
+
+namespace Aws
+{
+namespace S3
+{
+namespace Model
+{
+
+GetObjectAttributesParts::GetObjectAttributesParts() :
+ m_totalPartsCount(0),
+ m_totalPartsCountHasBeenSet(false),
+ m_partNumberMarker(0),
+ m_partNumberMarkerHasBeenSet(false),
+ m_nextPartNumberMarker(0),
+ m_nextPartNumberMarkerHasBeenSet(false),
+ m_maxParts(0),
+ m_maxPartsHasBeenSet(false),
+ m_isTruncated(false),
+ m_isTruncatedHasBeenSet(false),
+ m_partsHasBeenSet(false)
+{
+}
+
+GetObjectAttributesParts::GetObjectAttributesParts(const XmlNode& xmlNode) :
+ m_totalPartsCount(0),
+ m_totalPartsCountHasBeenSet(false),
+ m_partNumberMarker(0),
+ m_partNumberMarkerHasBeenSet(false),
+ m_nextPartNumberMarker(0),
+ m_nextPartNumberMarkerHasBeenSet(false),
+ m_maxParts(0),
+ m_maxPartsHasBeenSet(false),
+ m_isTruncated(false),
+ m_isTruncatedHasBeenSet(false),
+ m_partsHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+GetObjectAttributesParts& GetObjectAttributesParts::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode totalPartsCountNode = resultNode.FirstChild("PartsCount");
+ if(!totalPartsCountNode.IsNull())
+ {
+ m_totalPartsCount = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(totalPartsCountNode.GetText()).c_str()).c_str());
+ m_totalPartsCountHasBeenSet = true;
+ }
+ XmlNode partNumberMarkerNode = resultNode.FirstChild("PartNumberMarker");
+ if(!partNumberMarkerNode.IsNull())
+ {
+ m_partNumberMarker = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(partNumberMarkerNode.GetText()).c_str()).c_str());
+ m_partNumberMarkerHasBeenSet = true;
+ }
+ XmlNode nextPartNumberMarkerNode = resultNode.FirstChild("NextPartNumberMarker");
+ if(!nextPartNumberMarkerNode.IsNull())
+ {
+ m_nextPartNumberMarker = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(nextPartNumberMarkerNode.GetText()).c_str()).c_str());
+ m_nextPartNumberMarkerHasBeenSet = true;
+ }
+ XmlNode maxPartsNode = resultNode.FirstChild("MaxParts");
+ if(!maxPartsNode.IsNull())
+ {
+ m_maxParts = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(maxPartsNode.GetText()).c_str()).c_str());
+ m_maxPartsHasBeenSet = true;
+ }
+ XmlNode isTruncatedNode = resultNode.FirstChild("IsTruncated");
+ if(!isTruncatedNode.IsNull())
+ {
+ m_isTruncated = StringUtils::ConvertToBool(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(isTruncatedNode.GetText()).c_str()).c_str());
+ m_isTruncatedHasBeenSet = true;
+ }
+ XmlNode partsNode = resultNode.FirstChild("Part");
+ if(!partsNode.IsNull())
+ {
+ XmlNode partMember = partsNode;
+ while(!partMember.IsNull())
+ {
+ m_parts.push_back(partMember);
+ partMember = partMember.NextNode("Part");
+ }
+
+ m_partsHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void GetObjectAttributesParts::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_totalPartsCountHasBeenSet)
+ {
+ XmlNode totalPartsCountNode = parentNode.CreateChildElement("PartsCount");
+ ss << m_totalPartsCount;
+ totalPartsCountNode.SetText(ss.str());
+ ss.str("");
+ }
+
+ if(m_partNumberMarkerHasBeenSet)
+ {
+ XmlNode partNumberMarkerNode = parentNode.CreateChildElement("PartNumberMarker");
+ ss << m_partNumberMarker;
+ partNumberMarkerNode.SetText(ss.str());
+ ss.str("");
+ }
+
+ if(m_nextPartNumberMarkerHasBeenSet)
+ {
+ XmlNode nextPartNumberMarkerNode = parentNode.CreateChildElement("NextPartNumberMarker");
+ ss << m_nextPartNumberMarker;
+ nextPartNumberMarkerNode.SetText(ss.str());
+ ss.str("");
+ }
+
+ if(m_maxPartsHasBeenSet)
+ {
+ XmlNode maxPartsNode = parentNode.CreateChildElement("MaxParts");
+ ss << m_maxParts;
+ maxPartsNode.SetText(ss.str());
+ ss.str("");
+ }
+
+ if(m_isTruncatedHasBeenSet)
+ {
+ XmlNode isTruncatedNode = parentNode.CreateChildElement("IsTruncated");
+ ss << std::boolalpha << m_isTruncated;
+ isTruncatedNode.SetText(ss.str());
+ ss.str("");
+ }
+
+ if(m_partsHasBeenSet)
+ {
+ for(const auto& item : m_parts)
+ {
+ XmlNode partsNode = parentNode.CreateChildElement("Part");
+ item.AddToNode(partsNode);
+ }
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAttributesRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAttributesRequest.cpp
new file mode 100644
index 0000000000..87e567b7d5
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAttributesRequest.cpp
@@ -0,0 +1,144 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetObjectAttributesRequest.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+#include <aws/core/utils/memory/stl/AWSStringStream.h>
+#include <aws/core/http/URI.h>
+#include <aws/core/utils/memory/stl/AWSStringStream.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Xml;
+using namespace Aws::Utils;
+using namespace Aws::Http;
+
+GetObjectAttributesRequest::GetObjectAttributesRequest() :
+ m_bucketHasBeenSet(false),
+ m_keyHasBeenSet(false),
+ m_versionIdHasBeenSet(false),
+ m_maxParts(0),
+ m_maxPartsHasBeenSet(false),
+ m_partNumberMarker(0),
+ m_partNumberMarkerHasBeenSet(false),
+ m_sSECustomerAlgorithmHasBeenSet(false),
+ m_sSECustomerKeyHasBeenSet(false),
+ m_sSECustomerKeyMD5HasBeenSet(false),
+ m_requestPayer(RequestPayer::NOT_SET),
+ m_requestPayerHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_objectAttributesHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String GetObjectAttributesRequest::SerializePayload() const
+{
+ return {};
+}
+
+void GetObjectAttributesRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ if(m_versionIdHasBeenSet)
+ {
+ ss << m_versionId;
+ uri.AddQueryStringParameter("versionId", ss.str());
+ ss.str("");
+ }
+
+ if(!m_customizedAccessLogTag.empty())
+ {
+ // only accept customized LogTag which starts with "x-"
+ Aws::Map<Aws::String, Aws::String> collectedLogTags;
+ for(const auto& entry: m_customizedAccessLogTag)
+ {
+ if (!entry.first.empty() && !entry.second.empty() && entry.first.substr(0, 2) == "x-")
+ {
+ collectedLogTags.emplace(entry.first, entry.second);
+ }
+ }
+
+ if (!collectedLogTags.empty())
+ {
+ uri.AddQueryStringParameter(collectedLogTags);
+ }
+ }
+}
+
+Aws::Http::HeaderValueCollection GetObjectAttributesRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_maxPartsHasBeenSet)
+ {
+ ss << m_maxParts;
+ headers.emplace("x-amz-max-parts", ss.str());
+ ss.str("");
+ }
+
+ if(m_partNumberMarkerHasBeenSet)
+ {
+ ss << m_partNumberMarker;
+ headers.emplace("x-amz-part-number-marker", ss.str());
+ ss.str("");
+ }
+
+ if(m_sSECustomerAlgorithmHasBeenSet)
+ {
+ ss << m_sSECustomerAlgorithm;
+ headers.emplace("x-amz-server-side-encryption-customer-algorithm", ss.str());
+ ss.str("");
+ }
+
+ if(m_sSECustomerKeyHasBeenSet)
+ {
+ ss << m_sSECustomerKey;
+ headers.emplace("x-amz-server-side-encryption-customer-key", ss.str());
+ ss.str("");
+ }
+
+ if(m_sSECustomerKeyMD5HasBeenSet)
+ {
+ ss << m_sSECustomerKeyMD5;
+ headers.emplace("x-amz-server-side-encryption-customer-key-md5", ss.str());
+ ss.str("");
+ }
+
+ if(m_requestPayerHasBeenSet)
+ {
+ headers.emplace("x-amz-request-payer", RequestPayerMapper::GetNameForRequestPayer(m_requestPayer));
+ }
+
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ if(m_objectAttributesHasBeenSet)
+ {
+ for(const auto& item : m_objectAttributes)
+ {
+ ss << ObjectAttributesMapper::GetNameForObjectAttributes(item);
+ headers.emplace("x-amz-object-attributes", ss.str());
+ ss.str("");
+ }
+ }
+
+ return headers;
+}
+
+GetObjectAttributesRequest::EndpointParameters GetObjectAttributesRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAttributesResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAttributesResult.cpp
new file mode 100644
index 0000000000..2cb06ee5fe
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAttributesResult.cpp
@@ -0,0 +1,96 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetObjectAttributesResult.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+#include <aws/core/AmazonWebServiceResult.h>
+#include <aws/core/utils/StringUtils.h>
+#include <aws/core/utils/memory/stl/AWSStringStream.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Xml;
+using namespace Aws::Utils;
+using namespace Aws;
+
+GetObjectAttributesResult::GetObjectAttributesResult() :
+ m_deleteMarker(false),
+ m_requestCharged(RequestCharged::NOT_SET),
+ m_storageClass(StorageClass::NOT_SET),
+ m_objectSize(0)
+{
+}
+
+GetObjectAttributesResult::GetObjectAttributesResult(const Aws::AmazonWebServiceResult<XmlDocument>& result) :
+ m_deleteMarker(false),
+ m_requestCharged(RequestCharged::NOT_SET),
+ m_storageClass(StorageClass::NOT_SET),
+ m_objectSize(0)
+{
+ *this = result;
+}
+
+GetObjectAttributesResult& GetObjectAttributesResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode eTagNode = resultNode.FirstChild("ETag");
+ if(!eTagNode.IsNull())
+ {
+ m_eTag = Aws::Utils::Xml::DecodeEscapedXmlText(eTagNode.GetText());
+ }
+ XmlNode checksumNode = resultNode.FirstChild("Checksum");
+ if(!checksumNode.IsNull())
+ {
+ m_checksum = checksumNode;
+ }
+ XmlNode objectPartsNode = resultNode.FirstChild("ObjectParts");
+ if(!objectPartsNode.IsNull())
+ {
+ m_objectParts = objectPartsNode;
+ }
+ XmlNode storageClassNode = resultNode.FirstChild("StorageClass");
+ if(!storageClassNode.IsNull())
+ {
+ m_storageClass = StorageClassMapper::GetStorageClassForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(storageClassNode.GetText()).c_str()).c_str());
+ }
+ XmlNode objectSizeNode = resultNode.FirstChild("ObjectSize");
+ if(!objectSizeNode.IsNull())
+ {
+ m_objectSize = StringUtils::ConvertToInt64(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(objectSizeNode.GetText()).c_str()).c_str());
+ }
+ }
+
+ const auto& headers = result.GetHeaderValueCollection();
+ const auto& deleteMarkerIter = headers.find("x-amz-delete-marker");
+ if(deleteMarkerIter != headers.end())
+ {
+ m_deleteMarker = StringUtils::ConvertToBool(deleteMarkerIter->second.c_str());
+ }
+
+ const auto& lastModifiedIter = headers.find("last-modified");
+ if(lastModifiedIter != headers.end())
+ {
+ m_lastModified = DateTime(lastModifiedIter->second, Aws::Utils::DateFormat::RFC822);
+ }
+
+ const auto& versionIdIter = headers.find("x-amz-version-id");
+ if(versionIdIter != headers.end())
+ {
+ m_versionId = versionIdIter->second;
+ }
+
+ const auto& requestChargedIter = headers.find("x-amz-request-charged");
+ if(requestChargedIter != headers.end())
+ {
+ m_requestCharged = RequestChargedMapper::GetRequestChargedForName(requestChargedIter->second);
+ }
+
+ return *this;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectLegalHoldRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectLegalHoldRequest.cpp
index 6a3ba662dc..f6b41c0e8f 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectLegalHoldRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectLegalHoldRequest.cpp
@@ -79,3 +79,13 @@ Aws::Http::HeaderValueCollection GetObjectLegalHoldRequest::GetRequestSpecificHe
return headers;
}
+
+GetObjectLegalHoldRequest::EndpointParameters GetObjectLegalHoldRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectLockConfigurationRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectLockConfigurationRequest.cpp
index d1cf37a030..59ebdb725e 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectLockConfigurationRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectLockConfigurationRequest.cpp
@@ -63,3 +63,13 @@ Aws::Http::HeaderValueCollection GetObjectLockConfigurationRequest::GetRequestSp
return headers;
}
+
+GetObjectLockConfigurationRequest::EndpointParameters GetObjectLockConfigurationRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectRequest.cpp
index a1939e2471..94dcf96673 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectRequest.cpp
@@ -39,6 +39,8 @@ GetObjectRequest::GetObjectRequest() :
m_partNumber(0),
m_partNumberHasBeenSet(false),
m_expectedBucketOwnerHasBeenSet(false),
+ m_checksumMode(ChecksumMode::NOT_SET),
+ m_checksumModeHasBeenSet(false),
m_customizedAccessLogTagHasBeenSet(false)
{
}
@@ -88,7 +90,7 @@ void GetObjectRequest::AddQueryStringParameters(URI& uri) const
if(m_responseExpiresHasBeenSet)
{
- ss << m_responseExpires.ToGmtString(DateFormat::RFC822);
+ ss << m_responseExpires.ToGmtString(Aws::Utils::DateFormat::RFC822);
uri.AddQueryStringParameter("response-expires", ss.str());
ss.str("");
}
@@ -139,7 +141,7 @@ Aws::Http::HeaderValueCollection GetObjectRequest::GetRequestSpecificHeaders() c
if(m_ifModifiedSinceHasBeenSet)
{
- headers.emplace("if-modified-since", m_ifModifiedSince.ToGmtString(DateFormat::RFC822));
+ headers.emplace("if-modified-since", m_ifModifiedSince.ToGmtString(Aws::Utils::DateFormat::RFC822));
}
if(m_ifNoneMatchHasBeenSet)
@@ -151,7 +153,7 @@ Aws::Http::HeaderValueCollection GetObjectRequest::GetRequestSpecificHeaders() c
if(m_ifUnmodifiedSinceHasBeenSet)
{
- headers.emplace("if-unmodified-since", m_ifUnmodifiedSince.ToGmtString(DateFormat::RFC822));
+ headers.emplace("if-unmodified-since", m_ifUnmodifiedSince.ToGmtString(Aws::Utils::DateFormat::RFC822));
}
if(m_rangeHasBeenSet)
@@ -194,5 +196,35 @@ Aws::Http::HeaderValueCollection GetObjectRequest::GetRequestSpecificHeaders() c
ss.str("");
}
+ if(m_checksumModeHasBeenSet)
+ {
+ headers.emplace("x-amz-checksum-mode", ChecksumModeMapper::GetNameForChecksumMode(m_checksumMode));
+ }
+
return headers;
}
+
+GetObjectRequest::EndpointParameters GetObjectRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
+bool GetObjectRequest::ShouldValidateResponseChecksum() const
+{
+ return m_checksumMode == ChecksumMode::ENABLED;
+}
+
+Aws::Vector<Aws::String> GetObjectRequest::GetResponseChecksumAlgorithmNames() const
+{
+ Aws::Vector<Aws::String> responseChecksumAlgorithmNames;
+ responseChecksumAlgorithmNames.push_back("CRC32");
+ responseChecksumAlgorithmNames.push_back("CRC32C");
+ responseChecksumAlgorithmNames.push_back("SHA256");
+ responseChecksumAlgorithmNames.push_back("SHA1");
+ return responseChecksumAlgorithmNames;
+}
+
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectResult.cpp
index f0959a570a..50be648cd6 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectResult.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectResult.cpp
@@ -41,6 +41,10 @@ GetObjectResult::GetObjectResult(GetObjectResult&& toMove) :
m_lastModified(std::move(toMove.m_lastModified)),
m_contentLength(toMove.m_contentLength),
m_eTag(std::move(toMove.m_eTag)),
+ m_checksumCRC32(std::move(toMove.m_checksumCRC32)),
+ m_checksumCRC32C(std::move(toMove.m_checksumCRC32C)),
+ m_checksumSHA1(std::move(toMove.m_checksumSHA1)),
+ m_checksumSHA256(std::move(toMove.m_checksumSHA256)),
m_missingMeta(toMove.m_missingMeta),
m_versionId(std::move(toMove.m_versionId)),
m_cacheControl(std::move(toMove.m_cacheControl)),
@@ -85,6 +89,10 @@ GetObjectResult& GetObjectResult::operator=(GetObjectResult&& toMove)
m_lastModified = std::move(toMove.m_lastModified);
m_contentLength = toMove.m_contentLength;
m_eTag = std::move(toMove.m_eTag);
+ m_checksumCRC32 = std::move(toMove.m_checksumCRC32);
+ m_checksumCRC32C = std::move(toMove.m_checksumCRC32C);
+ m_checksumSHA1 = std::move(toMove.m_checksumSHA1);
+ m_checksumSHA256 = std::move(toMove.m_checksumSHA256);
m_missingMeta = toMove.m_missingMeta;
m_versionId = std::move(toMove.m_versionId);
m_cacheControl = std::move(toMove.m_cacheControl);
@@ -164,7 +172,7 @@ GetObjectResult& GetObjectResult::operator =(Aws::AmazonWebServiceResult<Respons
const auto& lastModifiedIter = headers.find("last-modified");
if(lastModifiedIter != headers.end())
{
- m_lastModified = DateTime(lastModifiedIter->second, DateFormat::RFC822);
+ m_lastModified = DateTime(lastModifiedIter->second, Aws::Utils::DateFormat::RFC822);
}
const auto& contentLengthIter = headers.find("content-length");
@@ -179,6 +187,30 @@ GetObjectResult& GetObjectResult::operator =(Aws::AmazonWebServiceResult<Respons
m_eTag = eTagIter->second;
}
+ const auto& checksumCRC32Iter = headers.find("x-amz-checksum-crc32");
+ if(checksumCRC32Iter != headers.end())
+ {
+ m_checksumCRC32 = checksumCRC32Iter->second;
+ }
+
+ const auto& checksumCRC32CIter = headers.find("x-amz-checksum-crc32c");
+ if(checksumCRC32CIter != headers.end())
+ {
+ m_checksumCRC32C = checksumCRC32CIter->second;
+ }
+
+ const auto& checksumSHA1Iter = headers.find("x-amz-checksum-sha1");
+ if(checksumSHA1Iter != headers.end())
+ {
+ m_checksumSHA1 = checksumSHA1Iter->second;
+ }
+
+ const auto& checksumSHA256Iter = headers.find("x-amz-checksum-sha256");
+ if(checksumSHA256Iter != headers.end())
+ {
+ m_checksumSHA256 = checksumSHA256Iter->second;
+ }
+
const auto& missingMetaIter = headers.find("x-amz-missing-meta");
if(missingMetaIter != headers.end())
{
@@ -230,7 +262,7 @@ GetObjectResult& GetObjectResult::operator =(Aws::AmazonWebServiceResult<Respons
const auto& expiresIter = headers.find("expires");
if(expiresIter != headers.end())
{
- m_expires = DateTime(expiresIter->second, DateFormat::RFC822);
+ m_expires = DateTime(expiresIter->second, Aws::Utils::DateFormat::RFC822);
}
const auto& websiteRedirectLocationIter = headers.find("x-amz-website-redirect-location");
@@ -319,7 +351,7 @@ GetObjectResult& GetObjectResult::operator =(Aws::AmazonWebServiceResult<Respons
const auto& objectLockRetainUntilDateIter = headers.find("x-amz-object-lock-retain-until-date");
if(objectLockRetainUntilDateIter != headers.end())
{
- m_objectLockRetainUntilDate = DateTime(objectLockRetainUntilDateIter->second, DateFormat::ISO_8601);
+ m_objectLockRetainUntilDate = DateTime(objectLockRetainUntilDateIter->second, Aws::Utils::DateFormat::ISO_8601);
}
const auto& objectLockLegalHoldStatusIter = headers.find("x-amz-object-lock-legal-hold");
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectRetentionRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectRetentionRequest.cpp
index d1917da723..a825b3ba4c 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectRetentionRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectRetentionRequest.cpp
@@ -79,3 +79,13 @@ Aws::Http::HeaderValueCollection GetObjectRetentionRequest::GetRequestSpecificHe
return headers;
}
+
+GetObjectRetentionRequest::EndpointParameters GetObjectRetentionRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectTaggingRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectTaggingRequest.cpp
index fb9a5d55e4..d2f2fa1127 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectTaggingRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectTaggingRequest.cpp
@@ -79,3 +79,13 @@ Aws::Http::HeaderValueCollection GetObjectTaggingRequest::GetRequestSpecificHead
return headers;
}
+
+GetObjectTaggingRequest::EndpointParameters GetObjectTaggingRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectTorrentRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectTorrentRequest.cpp
index 05aae88aa2..f0975e6b60 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectTorrentRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectTorrentRequest.cpp
@@ -71,3 +71,13 @@ Aws::Http::HeaderValueCollection GetObjectTorrentRequest::GetRequestSpecificHead
return headers;
}
+
+GetObjectTorrentRequest::EndpointParameters GetObjectTorrentRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetPublicAccessBlockRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetPublicAccessBlockRequest.cpp
index 6616e19c0b..137a2d2a36 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetPublicAccessBlockRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetPublicAccessBlockRequest.cpp
@@ -63,3 +63,13 @@ Aws::Http::HeaderValueCollection GetPublicAccessBlockRequest::GetRequestSpecific
return headers;
}
+
+GetPublicAccessBlockRequest::EndpointParameters GetPublicAccessBlockRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/HeadBucketRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/HeadBucketRequest.cpp
index b503f37b81..9cc24f6e14 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/HeadBucketRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/HeadBucketRequest.cpp
@@ -63,3 +63,13 @@ Aws::Http::HeaderValueCollection HeadBucketRequest::GetRequestSpecificHeaders()
return headers;
}
+
+HeadBucketRequest::EndpointParameters HeadBucketRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/HeadObjectRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/HeadObjectRequest.cpp
index 7bf7b7239e..e40ec1f7cf 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/HeadObjectRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/HeadObjectRequest.cpp
@@ -33,6 +33,8 @@ HeadObjectRequest::HeadObjectRequest() :
m_partNumber(0),
m_partNumberHasBeenSet(false),
m_expectedBucketOwnerHasBeenSet(false),
+ m_checksumMode(ChecksumMode::NOT_SET),
+ m_checksumModeHasBeenSet(false),
m_customizedAccessLogTagHasBeenSet(false)
{
}
@@ -91,7 +93,7 @@ Aws::Http::HeaderValueCollection HeadObjectRequest::GetRequestSpecificHeaders()
if(m_ifModifiedSinceHasBeenSet)
{
- headers.emplace("if-modified-since", m_ifModifiedSince.ToGmtString(DateFormat::RFC822));
+ headers.emplace("if-modified-since", m_ifModifiedSince.ToGmtString(Aws::Utils::DateFormat::RFC822));
}
if(m_ifNoneMatchHasBeenSet)
@@ -103,7 +105,7 @@ Aws::Http::HeaderValueCollection HeadObjectRequest::GetRequestSpecificHeaders()
if(m_ifUnmodifiedSinceHasBeenSet)
{
- headers.emplace("if-unmodified-since", m_ifUnmodifiedSince.ToGmtString(DateFormat::RFC822));
+ headers.emplace("if-unmodified-since", m_ifUnmodifiedSince.ToGmtString(Aws::Utils::DateFormat::RFC822));
}
if(m_rangeHasBeenSet)
@@ -146,5 +148,20 @@ Aws::Http::HeaderValueCollection HeadObjectRequest::GetRequestSpecificHeaders()
ss.str("");
}
+ if(m_checksumModeHasBeenSet)
+ {
+ headers.emplace("x-amz-checksum-mode", ChecksumModeMapper::GetNameForChecksumMode(m_checksumMode));
+ }
+
return headers;
}
+
+HeadObjectRequest::EndpointParameters HeadObjectRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/HeadObjectResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/HeadObjectResult.cpp
index f498d56aab..f68958d355 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/HeadObjectResult.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/HeadObjectResult.cpp
@@ -92,7 +92,7 @@ HeadObjectResult& HeadObjectResult::operator =(const Aws::AmazonWebServiceResult
const auto& lastModifiedIter = headers.find("last-modified");
if(lastModifiedIter != headers.end())
{
- m_lastModified = DateTime(lastModifiedIter->second, DateFormat::RFC822);
+ m_lastModified = DateTime(lastModifiedIter->second, Aws::Utils::DateFormat::RFC822);
}
const auto& contentLengthIter = headers.find("content-length");
@@ -101,6 +101,30 @@ HeadObjectResult& HeadObjectResult::operator =(const Aws::AmazonWebServiceResult
m_contentLength = StringUtils::ConvertToInt64(contentLengthIter->second.c_str());
}
+ const auto& checksumCRC32Iter = headers.find("x-amz-checksum-crc32");
+ if(checksumCRC32Iter != headers.end())
+ {
+ m_checksumCRC32 = checksumCRC32Iter->second;
+ }
+
+ const auto& checksumCRC32CIter = headers.find("x-amz-checksum-crc32c");
+ if(checksumCRC32CIter != headers.end())
+ {
+ m_checksumCRC32C = checksumCRC32CIter->second;
+ }
+
+ const auto& checksumSHA1Iter = headers.find("x-amz-checksum-sha1");
+ if(checksumSHA1Iter != headers.end())
+ {
+ m_checksumSHA1 = checksumSHA1Iter->second;
+ }
+
+ const auto& checksumSHA256Iter = headers.find("x-amz-checksum-sha256");
+ if(checksumSHA256Iter != headers.end())
+ {
+ m_checksumSHA256 = checksumSHA256Iter->second;
+ }
+
const auto& eTagIter = headers.find("etag");
if(eTagIter != headers.end())
{
@@ -152,7 +176,7 @@ HeadObjectResult& HeadObjectResult::operator =(const Aws::AmazonWebServiceResult
const auto& expiresIter = headers.find("expires");
if(expiresIter != headers.end())
{
- m_expires = DateTime(expiresIter->second, DateFormat::RFC822);
+ m_expires = DateTime(expiresIter->second, Aws::Utils::DateFormat::RFC822);
}
const auto& websiteRedirectLocationIter = headers.find("x-amz-website-redirect-location");
@@ -235,7 +259,7 @@ HeadObjectResult& HeadObjectResult::operator =(const Aws::AmazonWebServiceResult
const auto& objectLockRetainUntilDateIter = headers.find("x-amz-object-lock-retain-until-date");
if(objectLockRetainUntilDateIter != headers.end())
{
- m_objectLockRetainUntilDate = DateTime(objectLockRetainUntilDateIter->second, DateFormat::ISO_8601);
+ m_objectLockRetainUntilDate = DateTime(objectLockRetainUntilDateIter->second, Aws::Utils::DateFormat::ISO_8601);
}
const auto& objectLockLegalHoldStatusIter = headers.find("x-amz-object-lock-legal-hold");
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryOptionalField.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryOptionalField.cpp
index 00ae5fda49..a9b64dd1f1 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryOptionalField.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryOptionalField.cpp
@@ -31,6 +31,8 @@ namespace Aws
static const int ObjectLockMode_HASH = HashingUtils::HashString("ObjectLockMode");
static const int ObjectLockLegalHoldStatus_HASH = HashingUtils::HashString("ObjectLockLegalHoldStatus");
static const int IntelligentTieringAccessTier_HASH = HashingUtils::HashString("IntelligentTieringAccessTier");
+ static const int BucketKeyStatus_HASH = HashingUtils::HashString("BucketKeyStatus");
+ static const int ChecksumAlgorithm_HASH = HashingUtils::HashString("ChecksumAlgorithm");
InventoryOptionalField GetInventoryOptionalFieldForName(const Aws::String& name)
@@ -80,6 +82,14 @@ namespace Aws
{
return InventoryOptionalField::IntelligentTieringAccessTier;
}
+ else if (hashCode == BucketKeyStatus_HASH)
+ {
+ return InventoryOptionalField::BucketKeyStatus;
+ }
+ else if (hashCode == ChecksumAlgorithm_HASH)
+ {
+ return InventoryOptionalField::ChecksumAlgorithm;
+ }
EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
if(overflowContainer)
{
@@ -116,6 +126,10 @@ namespace Aws
return "ObjectLockLegalHoldStatus";
case InventoryOptionalField::IntelligentTieringAccessTier:
return "IntelligentTieringAccessTier";
+ case InventoryOptionalField::BucketKeyStatus:
+ return "BucketKeyStatus";
+ case InventoryOptionalField::ChecksumAlgorithm:
+ return "ChecksumAlgorithm";
default:
EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
if(overflowContainer)
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/LifecycleExpiration.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/LifecycleExpiration.cpp
index be347d18f0..9d579d1c5c 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/LifecycleExpiration.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/LifecycleExpiration.cpp
@@ -48,7 +48,7 @@ LifecycleExpiration& LifecycleExpiration::operator =(const XmlNode& xmlNode)
XmlNode dateNode = resultNode.FirstChild("Date");
if(!dateNode.IsNull())
{
- m_date = DateTime(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(dateNode.GetText()).c_str()).c_str(), DateFormat::ISO_8601);
+ m_date = DateTime(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(dateNode.GetText()).c_str()).c_str(), Aws::Utils::DateFormat::ISO_8601);
m_dateHasBeenSet = true;
}
XmlNode daysNode = resultNode.FirstChild("Days");
@@ -74,7 +74,7 @@ void LifecycleExpiration::AddToNode(XmlNode& parentNode) const
if(m_dateHasBeenSet)
{
XmlNode dateNode = parentNode.CreateChildElement("Date");
- dateNode.SetText(m_date.ToGmtString(DateFormat::ISO_8601));
+ dateNode.SetText(m_date.ToGmtString(Aws::Utils::DateFormat::ISO_8601));
}
if(m_daysHasBeenSet)
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/LifecycleRuleAndOperator.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/LifecycleRuleAndOperator.cpp
index 833c1d99ea..b3358b10c3 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/LifecycleRuleAndOperator.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/LifecycleRuleAndOperator.cpp
@@ -22,13 +22,21 @@ namespace Model
LifecycleRuleAndOperator::LifecycleRuleAndOperator() :
m_prefixHasBeenSet(false),
- m_tagsHasBeenSet(false)
+ m_tagsHasBeenSet(false),
+ m_objectSizeGreaterThan(0),
+ m_objectSizeGreaterThanHasBeenSet(false),
+ m_objectSizeLessThan(0),
+ m_objectSizeLessThanHasBeenSet(false)
{
}
LifecycleRuleAndOperator::LifecycleRuleAndOperator(const XmlNode& xmlNode) :
m_prefixHasBeenSet(false),
- m_tagsHasBeenSet(false)
+ m_tagsHasBeenSet(false),
+ m_objectSizeGreaterThan(0),
+ m_objectSizeGreaterThanHasBeenSet(false),
+ m_objectSizeLessThan(0),
+ m_objectSizeLessThanHasBeenSet(false)
{
*this = xmlNode;
}
@@ -57,6 +65,18 @@ LifecycleRuleAndOperator& LifecycleRuleAndOperator::operator =(const XmlNode& xm
m_tagsHasBeenSet = true;
}
+ XmlNode objectSizeGreaterThanNode = resultNode.FirstChild("ObjectSizeGreaterThan");
+ if(!objectSizeGreaterThanNode.IsNull())
+ {
+ m_objectSizeGreaterThan = StringUtils::ConvertToInt64(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(objectSizeGreaterThanNode.GetText()).c_str()).c_str());
+ m_objectSizeGreaterThanHasBeenSet = true;
+ }
+ XmlNode objectSizeLessThanNode = resultNode.FirstChild("ObjectSizeLessThan");
+ if(!objectSizeLessThanNode.IsNull())
+ {
+ m_objectSizeLessThan = StringUtils::ConvertToInt64(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(objectSizeLessThanNode.GetText()).c_str()).c_str());
+ m_objectSizeLessThanHasBeenSet = true;
+ }
}
return *this;
@@ -81,6 +101,22 @@ void LifecycleRuleAndOperator::AddToNode(XmlNode& parentNode) const
}
}
+ if(m_objectSizeGreaterThanHasBeenSet)
+ {
+ XmlNode objectSizeGreaterThanNode = parentNode.CreateChildElement("ObjectSizeGreaterThan");
+ ss << m_objectSizeGreaterThan;
+ objectSizeGreaterThanNode.SetText(ss.str());
+ ss.str("");
+ }
+
+ if(m_objectSizeLessThanHasBeenSet)
+ {
+ XmlNode objectSizeLessThanNode = parentNode.CreateChildElement("ObjectSizeLessThan");
+ ss << m_objectSizeLessThan;
+ objectSizeLessThanNode.SetText(ss.str());
+ ss.str("");
+ }
+
}
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/LifecycleRuleFilter.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/LifecycleRuleFilter.cpp
index 0f56fb9044..ee9aedeed5 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/LifecycleRuleFilter.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/LifecycleRuleFilter.cpp
@@ -23,6 +23,10 @@ namespace Model
LifecycleRuleFilter::LifecycleRuleFilter() :
m_prefixHasBeenSet(false),
m_tagHasBeenSet(false),
+ m_objectSizeGreaterThan(0),
+ m_objectSizeGreaterThanHasBeenSet(false),
+ m_objectSizeLessThan(0),
+ m_objectSizeLessThanHasBeenSet(false),
m_andHasBeenSet(false)
{
}
@@ -30,6 +34,10 @@ LifecycleRuleFilter::LifecycleRuleFilter() :
LifecycleRuleFilter::LifecycleRuleFilter(const XmlNode& xmlNode) :
m_prefixHasBeenSet(false),
m_tagHasBeenSet(false),
+ m_objectSizeGreaterThan(0),
+ m_objectSizeGreaterThanHasBeenSet(false),
+ m_objectSizeLessThan(0),
+ m_objectSizeLessThanHasBeenSet(false),
m_andHasBeenSet(false)
{
*this = xmlNode;
@@ -53,6 +61,18 @@ LifecycleRuleFilter& LifecycleRuleFilter::operator =(const XmlNode& xmlNode)
m_tag = tagNode;
m_tagHasBeenSet = true;
}
+ XmlNode objectSizeGreaterThanNode = resultNode.FirstChild("ObjectSizeGreaterThan");
+ if(!objectSizeGreaterThanNode.IsNull())
+ {
+ m_objectSizeGreaterThan = StringUtils::ConvertToInt64(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(objectSizeGreaterThanNode.GetText()).c_str()).c_str());
+ m_objectSizeGreaterThanHasBeenSet = true;
+ }
+ XmlNode objectSizeLessThanNode = resultNode.FirstChild("ObjectSizeLessThan");
+ if(!objectSizeLessThanNode.IsNull())
+ {
+ m_objectSizeLessThan = StringUtils::ConvertToInt64(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(objectSizeLessThanNode.GetText()).c_str()).c_str());
+ m_objectSizeLessThanHasBeenSet = true;
+ }
XmlNode andNode = resultNode.FirstChild("And");
if(!andNode.IsNull())
{
@@ -79,6 +99,22 @@ void LifecycleRuleFilter::AddToNode(XmlNode& parentNode) const
m_tag.AddToNode(tagNode);
}
+ if(m_objectSizeGreaterThanHasBeenSet)
+ {
+ XmlNode objectSizeGreaterThanNode = parentNode.CreateChildElement("ObjectSizeGreaterThan");
+ ss << m_objectSizeGreaterThan;
+ objectSizeGreaterThanNode.SetText(ss.str());
+ ss.str("");
+ }
+
+ if(m_objectSizeLessThanHasBeenSet)
+ {
+ XmlNode objectSizeLessThanNode = parentNode.CreateChildElement("ObjectSizeLessThan");
+ ss << m_objectSizeLessThan;
+ objectSizeLessThanNode.SetText(ss.str());
+ ss.str("");
+ }
+
if(m_andHasBeenSet)
{
XmlNode andNode = parentNode.CreateChildElement("And");
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketAnalyticsConfigurationsRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketAnalyticsConfigurationsRequest.cpp
index 5b114920e1..3c79cd9684 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketAnalyticsConfigurationsRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketAnalyticsConfigurationsRequest.cpp
@@ -71,3 +71,13 @@ Aws::Http::HeaderValueCollection ListBucketAnalyticsConfigurationsRequest::GetRe
return headers;
}
+
+ListBucketAnalyticsConfigurationsRequest::EndpointParameters ListBucketAnalyticsConfigurationsRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketIntelligentTieringConfigurationsRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketIntelligentTieringConfigurationsRequest.cpp
index 8e83bdec35..80991f96d3 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketIntelligentTieringConfigurationsRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketIntelligentTieringConfigurationsRequest.cpp
@@ -57,3 +57,13 @@ void ListBucketIntelligentTieringConfigurationsRequest::AddQueryStringParameters
}
}
+
+ListBucketIntelligentTieringConfigurationsRequest::EndpointParameters ListBucketIntelligentTieringConfigurationsRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketInventoryConfigurationsRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketInventoryConfigurationsRequest.cpp
index fbd8f9ff83..4487984600 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketInventoryConfigurationsRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketInventoryConfigurationsRequest.cpp
@@ -71,3 +71,13 @@ Aws::Http::HeaderValueCollection ListBucketInventoryConfigurationsRequest::GetRe
return headers;
}
+
+ListBucketInventoryConfigurationsRequest::EndpointParameters ListBucketInventoryConfigurationsRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketMetricsConfigurationsRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketMetricsConfigurationsRequest.cpp
index 3978ec46f8..db5bd39a59 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketMetricsConfigurationsRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketMetricsConfigurationsRequest.cpp
@@ -71,3 +71,13 @@ Aws::Http::HeaderValueCollection ListBucketMetricsConfigurationsRequest::GetRequ
return headers;
}
+
+ListBucketMetricsConfigurationsRequest::EndpointParameters ListBucketMetricsConfigurationsRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListMultipartUploadsRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListMultipartUploadsRequest.cpp
index 9723e16a9d..528104a503 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListMultipartUploadsRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListMultipartUploadsRequest.cpp
@@ -113,3 +113,13 @@ Aws::Http::HeaderValueCollection ListMultipartUploadsRequest::GetRequestSpecific
return headers;
}
+
+ListMultipartUploadsRequest::EndpointParameters ListMultipartUploadsRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListObjectVersionsRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListObjectVersionsRequest.cpp
index 2336f09ef8..471cb4a33d 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListObjectVersionsRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListObjectVersionsRequest.cpp
@@ -113,3 +113,13 @@ Aws::Http::HeaderValueCollection ListObjectVersionsRequest::GetRequestSpecificHe
return headers;
}
+
+ListObjectVersionsRequest::EndpointParameters ListObjectVersionsRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListObjectsRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListObjectsRequest.cpp
index 33abec092f..a32047ac5f 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListObjectsRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListObjectsRequest.cpp
@@ -112,3 +112,13 @@ Aws::Http::HeaderValueCollection ListObjectsRequest::GetRequestSpecificHeaders()
return headers;
}
+
+ListObjectsRequest::EndpointParameters ListObjectsRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListObjectsV2Request.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListObjectsV2Request.cpp
index 2feb9b83c1..68a4ddc2df 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListObjectsV2Request.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListObjectsV2Request.cpp
@@ -129,3 +129,13 @@ Aws::Http::HeaderValueCollection ListObjectsV2Request::GetRequestSpecificHeaders
return headers;
}
+
+ListObjectsV2Request::EndpointParameters ListObjectsV2Request::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListPartsRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListPartsRequest.cpp
index 59ff12e4d1..2ddc183789 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListPartsRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListPartsRequest.cpp
@@ -27,6 +27,9 @@ ListPartsRequest::ListPartsRequest() :
m_requestPayer(RequestPayer::NOT_SET),
m_requestPayerHasBeenSet(false),
m_expectedBucketOwnerHasBeenSet(false),
+ m_sSECustomerAlgorithmHasBeenSet(false),
+ m_sSECustomerKeyHasBeenSet(false),
+ m_sSECustomerKeyMD5HasBeenSet(false),
m_customizedAccessLogTagHasBeenSet(false)
{
}
@@ -95,5 +98,36 @@ Aws::Http::HeaderValueCollection ListPartsRequest::GetRequestSpecificHeaders() c
ss.str("");
}
+ if(m_sSECustomerAlgorithmHasBeenSet)
+ {
+ ss << m_sSECustomerAlgorithm;
+ headers.emplace("x-amz-server-side-encryption-customer-algorithm", ss.str());
+ ss.str("");
+ }
+
+ if(m_sSECustomerKeyHasBeenSet)
+ {
+ ss << m_sSECustomerKey;
+ headers.emplace("x-amz-server-side-encryption-customer-key", ss.str());
+ ss.str("");
+ }
+
+ if(m_sSECustomerKeyMD5HasBeenSet)
+ {
+ ss << m_sSECustomerKeyMD5;
+ headers.emplace("x-amz-server-side-encryption-customer-key-md5", ss.str());
+ ss.str("");
+ }
+
return headers;
}
+
+ListPartsRequest::EndpointParameters ListPartsRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListPartsResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListPartsResult.cpp
index f4638f2a06..d61990cf1b 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListPartsResult.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListPartsResult.cpp
@@ -22,7 +22,8 @@ ListPartsResult::ListPartsResult() :
m_maxParts(0),
m_isTruncated(false),
m_storageClass(StorageClass::NOT_SET),
- m_requestCharged(RequestCharged::NOT_SET)
+ m_requestCharged(RequestCharged::NOT_SET),
+ m_checksumAlgorithm(ChecksumAlgorithm::NOT_SET)
{
}
@@ -32,7 +33,8 @@ ListPartsResult::ListPartsResult(const Aws::AmazonWebServiceResult<XmlDocument>&
m_maxParts(0),
m_isTruncated(false),
m_storageClass(StorageClass::NOT_SET),
- m_requestCharged(RequestCharged::NOT_SET)
+ m_requestCharged(RequestCharged::NOT_SET),
+ m_checksumAlgorithm(ChecksumAlgorithm::NOT_SET)
{
*this = result;
}
@@ -105,13 +107,18 @@ ListPartsResult& ListPartsResult::operator =(const Aws::AmazonWebServiceResult<X
{
m_storageClass = StorageClassMapper::GetStorageClassForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(storageClassNode.GetText()).c_str()).c_str());
}
+ XmlNode checksumAlgorithmNode = resultNode.FirstChild("ChecksumAlgorithm");
+ if(!checksumAlgorithmNode.IsNull())
+ {
+ m_checksumAlgorithm = ChecksumAlgorithmMapper::GetChecksumAlgorithmForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(checksumAlgorithmNode.GetText()).c_str()).c_str());
+ }
}
const auto& headers = result.GetHeaderValueCollection();
const auto& abortDateIter = headers.find("x-amz-abort-date");
if(abortDateIter != headers.end())
{
- m_abortDate = DateTime(abortDateIter->second, DateFormat::RFC822);
+ m_abortDate = DateTime(abortDateIter->second, Aws::Utils::DateFormat::RFC822);
}
const auto& abortRuleIdIter = headers.find("x-amz-abort-rule-id");
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MetricsAndOperator.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MetricsAndOperator.cpp
index 74951cd0eb..711740443b 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MetricsAndOperator.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MetricsAndOperator.cpp
@@ -22,13 +22,15 @@ namespace Model
MetricsAndOperator::MetricsAndOperator() :
m_prefixHasBeenSet(false),
- m_tagsHasBeenSet(false)
+ m_tagsHasBeenSet(false),
+ m_accessPointArnHasBeenSet(false)
{
}
MetricsAndOperator::MetricsAndOperator(const XmlNode& xmlNode) :
m_prefixHasBeenSet(false),
- m_tagsHasBeenSet(false)
+ m_tagsHasBeenSet(false),
+ m_accessPointArnHasBeenSet(false)
{
*this = xmlNode;
}
@@ -57,6 +59,12 @@ MetricsAndOperator& MetricsAndOperator::operator =(const XmlNode& xmlNode)
m_tagsHasBeenSet = true;
}
+ XmlNode accessPointArnNode = resultNode.FirstChild("AccessPointArn");
+ if(!accessPointArnNode.IsNull())
+ {
+ m_accessPointArn = Aws::Utils::Xml::DecodeEscapedXmlText(accessPointArnNode.GetText());
+ m_accessPointArnHasBeenSet = true;
+ }
}
return *this;
@@ -81,6 +89,12 @@ void MetricsAndOperator::AddToNode(XmlNode& parentNode) const
}
}
+ if(m_accessPointArnHasBeenSet)
+ {
+ XmlNode accessPointArnNode = parentNode.CreateChildElement("AccessPointArn");
+ accessPointArnNode.SetText(m_accessPointArn);
+ }
+
}
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MetricsFilter.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MetricsFilter.cpp
index fa7ade5849..90cda86e09 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MetricsFilter.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MetricsFilter.cpp
@@ -23,6 +23,7 @@ namespace Model
MetricsFilter::MetricsFilter() :
m_prefixHasBeenSet(false),
m_tagHasBeenSet(false),
+ m_accessPointArnHasBeenSet(false),
m_andHasBeenSet(false)
{
}
@@ -30,6 +31,7 @@ MetricsFilter::MetricsFilter() :
MetricsFilter::MetricsFilter(const XmlNode& xmlNode) :
m_prefixHasBeenSet(false),
m_tagHasBeenSet(false),
+ m_accessPointArnHasBeenSet(false),
m_andHasBeenSet(false)
{
*this = xmlNode;
@@ -53,6 +55,12 @@ MetricsFilter& MetricsFilter::operator =(const XmlNode& xmlNode)
m_tag = tagNode;
m_tagHasBeenSet = true;
}
+ XmlNode accessPointArnNode = resultNode.FirstChild("AccessPointArn");
+ if(!accessPointArnNode.IsNull())
+ {
+ m_accessPointArn = Aws::Utils::Xml::DecodeEscapedXmlText(accessPointArnNode.GetText());
+ m_accessPointArnHasBeenSet = true;
+ }
XmlNode andNode = resultNode.FirstChild("And");
if(!andNode.IsNull())
{
@@ -79,6 +87,12 @@ void MetricsFilter::AddToNode(XmlNode& parentNode) const
m_tag.AddToNode(tagNode);
}
+ if(m_accessPointArnHasBeenSet)
+ {
+ XmlNode accessPointArnNode = parentNode.CreateChildElement("AccessPointArn");
+ accessPointArnNode.SetText(m_accessPointArn);
+ }
+
if(m_andHasBeenSet)
{
XmlNode andNode = parentNode.CreateChildElement("And");
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MultipartUpload.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MultipartUpload.cpp
index 6d92ea2cb6..c64926a272 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MultipartUpload.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MultipartUpload.cpp
@@ -27,7 +27,9 @@ MultipartUpload::MultipartUpload() :
m_storageClass(StorageClass::NOT_SET),
m_storageClassHasBeenSet(false),
m_ownerHasBeenSet(false),
- m_initiatorHasBeenSet(false)
+ m_initiatorHasBeenSet(false),
+ m_checksumAlgorithm(ChecksumAlgorithm::NOT_SET),
+ m_checksumAlgorithmHasBeenSet(false)
{
}
@@ -38,7 +40,9 @@ MultipartUpload::MultipartUpload(const XmlNode& xmlNode) :
m_storageClass(StorageClass::NOT_SET),
m_storageClassHasBeenSet(false),
m_ownerHasBeenSet(false),
- m_initiatorHasBeenSet(false)
+ m_initiatorHasBeenSet(false),
+ m_checksumAlgorithm(ChecksumAlgorithm::NOT_SET),
+ m_checksumAlgorithmHasBeenSet(false)
{
*this = xmlNode;
}
@@ -64,7 +68,7 @@ MultipartUpload& MultipartUpload::operator =(const XmlNode& xmlNode)
XmlNode initiatedNode = resultNode.FirstChild("Initiated");
if(!initiatedNode.IsNull())
{
- m_initiated = DateTime(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(initiatedNode.GetText()).c_str()).c_str(), DateFormat::ISO_8601);
+ m_initiated = DateTime(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(initiatedNode.GetText()).c_str()).c_str(), Aws::Utils::DateFormat::ISO_8601);
m_initiatedHasBeenSet = true;
}
XmlNode storageClassNode = resultNode.FirstChild("StorageClass");
@@ -85,6 +89,12 @@ MultipartUpload& MultipartUpload::operator =(const XmlNode& xmlNode)
m_initiator = initiatorNode;
m_initiatorHasBeenSet = true;
}
+ XmlNode checksumAlgorithmNode = resultNode.FirstChild("ChecksumAlgorithm");
+ if(!checksumAlgorithmNode.IsNull())
+ {
+ m_checksumAlgorithm = ChecksumAlgorithmMapper::GetChecksumAlgorithmForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(checksumAlgorithmNode.GetText()).c_str()).c_str());
+ m_checksumAlgorithmHasBeenSet = true;
+ }
}
return *this;
@@ -108,7 +118,7 @@ void MultipartUpload::AddToNode(XmlNode& parentNode) const
if(m_initiatedHasBeenSet)
{
XmlNode initiatedNode = parentNode.CreateChildElement("Initiated");
- initiatedNode.SetText(m_initiated.ToGmtString(DateFormat::ISO_8601));
+ initiatedNode.SetText(m_initiated.ToGmtString(Aws::Utils::DateFormat::ISO_8601));
}
if(m_storageClassHasBeenSet)
@@ -129,6 +139,12 @@ void MultipartUpload::AddToNode(XmlNode& parentNode) const
m_initiator.AddToNode(initiatorNode);
}
+ if(m_checksumAlgorithmHasBeenSet)
+ {
+ XmlNode checksumAlgorithmNode = parentNode.CreateChildElement("ChecksumAlgorithm");
+ checksumAlgorithmNode.SetText(ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm));
+ }
+
}
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NoncurrentVersionExpiration.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NoncurrentVersionExpiration.cpp
index ab6db39f61..a3282e5fc9 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NoncurrentVersionExpiration.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NoncurrentVersionExpiration.cpp
@@ -22,13 +22,17 @@ namespace Model
NoncurrentVersionExpiration::NoncurrentVersionExpiration() :
m_noncurrentDays(0),
- m_noncurrentDaysHasBeenSet(false)
+ m_noncurrentDaysHasBeenSet(false),
+ m_newerNoncurrentVersions(0),
+ m_newerNoncurrentVersionsHasBeenSet(false)
{
}
NoncurrentVersionExpiration::NoncurrentVersionExpiration(const XmlNode& xmlNode) :
m_noncurrentDays(0),
- m_noncurrentDaysHasBeenSet(false)
+ m_noncurrentDaysHasBeenSet(false),
+ m_newerNoncurrentVersions(0),
+ m_newerNoncurrentVersionsHasBeenSet(false)
{
*this = xmlNode;
}
@@ -45,6 +49,12 @@ NoncurrentVersionExpiration& NoncurrentVersionExpiration::operator =(const XmlNo
m_noncurrentDays = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(noncurrentDaysNode.GetText()).c_str()).c_str());
m_noncurrentDaysHasBeenSet = true;
}
+ XmlNode newerNoncurrentVersionsNode = resultNode.FirstChild("NewerNoncurrentVersions");
+ if(!newerNoncurrentVersionsNode.IsNull())
+ {
+ m_newerNoncurrentVersions = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(newerNoncurrentVersionsNode.GetText()).c_str()).c_str());
+ m_newerNoncurrentVersionsHasBeenSet = true;
+ }
}
return *this;
@@ -61,6 +71,14 @@ void NoncurrentVersionExpiration::AddToNode(XmlNode& parentNode) const
ss.str("");
}
+ if(m_newerNoncurrentVersionsHasBeenSet)
+ {
+ XmlNode newerNoncurrentVersionsNode = parentNode.CreateChildElement("NewerNoncurrentVersions");
+ ss << m_newerNoncurrentVersions;
+ newerNoncurrentVersionsNode.SetText(ss.str());
+ ss.str("");
+ }
+
}
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NoncurrentVersionTransition.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NoncurrentVersionTransition.cpp
index e7027d679b..71d5880890 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NoncurrentVersionTransition.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NoncurrentVersionTransition.cpp
@@ -24,7 +24,9 @@ NoncurrentVersionTransition::NoncurrentVersionTransition() :
m_noncurrentDays(0),
m_noncurrentDaysHasBeenSet(false),
m_storageClass(TransitionStorageClass::NOT_SET),
- m_storageClassHasBeenSet(false)
+ m_storageClassHasBeenSet(false),
+ m_newerNoncurrentVersions(0),
+ m_newerNoncurrentVersionsHasBeenSet(false)
{
}
@@ -32,7 +34,9 @@ NoncurrentVersionTransition::NoncurrentVersionTransition(const XmlNode& xmlNode)
m_noncurrentDays(0),
m_noncurrentDaysHasBeenSet(false),
m_storageClass(TransitionStorageClass::NOT_SET),
- m_storageClassHasBeenSet(false)
+ m_storageClassHasBeenSet(false),
+ m_newerNoncurrentVersions(0),
+ m_newerNoncurrentVersionsHasBeenSet(false)
{
*this = xmlNode;
}
@@ -55,6 +59,12 @@ NoncurrentVersionTransition& NoncurrentVersionTransition::operator =(const XmlNo
m_storageClass = TransitionStorageClassMapper::GetTransitionStorageClassForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(storageClassNode.GetText()).c_str()).c_str());
m_storageClassHasBeenSet = true;
}
+ XmlNode newerNoncurrentVersionsNode = resultNode.FirstChild("NewerNoncurrentVersions");
+ if(!newerNoncurrentVersionsNode.IsNull())
+ {
+ m_newerNoncurrentVersions = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(newerNoncurrentVersionsNode.GetText()).c_str()).c_str());
+ m_newerNoncurrentVersionsHasBeenSet = true;
+ }
}
return *this;
@@ -77,6 +87,14 @@ void NoncurrentVersionTransition::AddToNode(XmlNode& parentNode) const
storageClassNode.SetText(TransitionStorageClassMapper::GetNameForTransitionStorageClass(m_storageClass));
}
+ if(m_newerNoncurrentVersionsHasBeenSet)
+ {
+ XmlNode newerNoncurrentVersionsNode = parentNode.CreateChildElement("NewerNoncurrentVersions");
+ ss << m_newerNoncurrentVersions;
+ newerNoncurrentVersionsNode.SetText(ss.str());
+ ss.str("");
+ }
+
}
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NotificationConfiguration.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NotificationConfiguration.cpp
index bb62ecb84d..b3b79d4a5f 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NotificationConfiguration.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NotificationConfiguration.cpp
@@ -23,14 +23,16 @@ namespace Model
NotificationConfiguration::NotificationConfiguration() :
m_topicConfigurationsHasBeenSet(false),
m_queueConfigurationsHasBeenSet(false),
- m_lambdaFunctionConfigurationsHasBeenSet(false)
+ m_lambdaFunctionConfigurationsHasBeenSet(false),
+ m_eventBridgeConfigurationHasBeenSet(false)
{
}
NotificationConfiguration::NotificationConfiguration(const XmlNode& xmlNode) :
m_topicConfigurationsHasBeenSet(false),
m_queueConfigurationsHasBeenSet(false),
- m_lambdaFunctionConfigurationsHasBeenSet(false)
+ m_lambdaFunctionConfigurationsHasBeenSet(false),
+ m_eventBridgeConfigurationHasBeenSet(false)
{
*this = xmlNode;
}
@@ -77,6 +79,12 @@ NotificationConfiguration& NotificationConfiguration::operator =(const XmlNode&
m_lambdaFunctionConfigurationsHasBeenSet = true;
}
+ XmlNode eventBridgeConfigurationNode = resultNode.FirstChild("EventBridgeConfiguration");
+ if(!eventBridgeConfigurationNode.IsNull())
+ {
+ m_eventBridgeConfiguration = eventBridgeConfigurationNode;
+ m_eventBridgeConfigurationHasBeenSet = true;
+ }
}
return *this;
@@ -112,6 +120,12 @@ void NotificationConfiguration::AddToNode(XmlNode& parentNode) const
}
}
+ if(m_eventBridgeConfigurationHasBeenSet)
+ {
+ XmlNode eventBridgeConfigurationNode = parentNode.CreateChildElement("EventBridgeConfiguration");
+ m_eventBridgeConfiguration.AddToNode(eventBridgeConfigurationNode);
+ }
+
}
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Object.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Object.cpp
index d7d963fc21..41f985e168 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Object.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Object.cpp
@@ -24,6 +24,7 @@ Object::Object() :
m_keyHasBeenSet(false),
m_lastModifiedHasBeenSet(false),
m_eTagHasBeenSet(false),
+ m_checksumAlgorithmHasBeenSet(false),
m_size(0),
m_sizeHasBeenSet(false),
m_storageClass(ObjectStorageClass::NOT_SET),
@@ -36,6 +37,7 @@ Object::Object(const XmlNode& xmlNode) :
m_keyHasBeenSet(false),
m_lastModifiedHasBeenSet(false),
m_eTagHasBeenSet(false),
+ m_checksumAlgorithmHasBeenSet(false),
m_size(0),
m_sizeHasBeenSet(false),
m_storageClass(ObjectStorageClass::NOT_SET),
@@ -60,7 +62,7 @@ Object& Object::operator =(const XmlNode& xmlNode)
XmlNode lastModifiedNode = resultNode.FirstChild("LastModified");
if(!lastModifiedNode.IsNull())
{
- m_lastModified = DateTime(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(lastModifiedNode.GetText()).c_str()).c_str(), DateFormat::ISO_8601);
+ m_lastModified = DateTime(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(lastModifiedNode.GetText()).c_str()).c_str(), Aws::Utils::DateFormat::ISO_8601);
m_lastModifiedHasBeenSet = true;
}
XmlNode eTagNode = resultNode.FirstChild("ETag");
@@ -69,6 +71,18 @@ Object& Object::operator =(const XmlNode& xmlNode)
m_eTag = Aws::Utils::Xml::DecodeEscapedXmlText(eTagNode.GetText());
m_eTagHasBeenSet = true;
}
+ XmlNode checksumAlgorithmNode = resultNode.FirstChild("ChecksumAlgorithm");
+ if(!checksumAlgorithmNode.IsNull())
+ {
+ XmlNode checksumAlgorithmMember = checksumAlgorithmNode;
+ while(!checksumAlgorithmMember.IsNull())
+ {
+ m_checksumAlgorithm.push_back(ChecksumAlgorithmMapper::GetChecksumAlgorithmForName(StringUtils::Trim(checksumAlgorithmMember.GetText().c_str())));
+ checksumAlgorithmMember = checksumAlgorithmMember.NextNode("ChecksumAlgorithm");
+ }
+
+ m_checksumAlgorithmHasBeenSet = true;
+ }
XmlNode sizeNode = resultNode.FirstChild("Size");
if(!sizeNode.IsNull())
{
@@ -104,7 +118,7 @@ void Object::AddToNode(XmlNode& parentNode) const
if(m_lastModifiedHasBeenSet)
{
XmlNode lastModifiedNode = parentNode.CreateChildElement("LastModified");
- lastModifiedNode.SetText(m_lastModified.ToGmtString(DateFormat::ISO_8601));
+ lastModifiedNode.SetText(m_lastModified.ToGmtString(Aws::Utils::DateFormat::ISO_8601));
}
if(m_eTagHasBeenSet)
@@ -113,6 +127,16 @@ void Object::AddToNode(XmlNode& parentNode) const
eTagNode.SetText(m_eTag);
}
+ if(m_checksumAlgorithmHasBeenSet)
+ {
+ XmlNode checksumAlgorithmParentNode = parentNode.CreateChildElement("ChecksumAlgorithm");
+ for(const auto& item : m_checksumAlgorithm)
+ {
+ XmlNode checksumAlgorithmNode = checksumAlgorithmParentNode.CreateChildElement("ChecksumAlgorithm");
+ checksumAlgorithmNode.SetText(ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(item));
+ }
+ }
+
if(m_sizeHasBeenSet)
{
XmlNode sizeNode = parentNode.CreateChildElement("Size");
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectAttributes.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectAttributes.cpp
new file mode 100644
index 0000000000..c4159dcde2
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectAttributes.cpp
@@ -0,0 +1,91 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ObjectAttributes.h>
+#include <aws/core/utils/HashingUtils.h>
+#include <aws/core/Globals.h>
+#include <aws/core/utils/EnumParseOverflowContainer.h>
+
+using namespace Aws::Utils;
+
+
+namespace Aws
+{
+ namespace S3
+ {
+ namespace Model
+ {
+ namespace ObjectAttributesMapper
+ {
+
+ static const int ETag_HASH = HashingUtils::HashString("ETag");
+ static const int Checksum_HASH = HashingUtils::HashString("Checksum");
+ static const int ObjectParts_HASH = HashingUtils::HashString("ObjectParts");
+ static const int StorageClass_HASH = HashingUtils::HashString("StorageClass");
+ static const int ObjectSize_HASH = HashingUtils::HashString("ObjectSize");
+
+
+ ObjectAttributes GetObjectAttributesForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == ETag_HASH)
+ {
+ return ObjectAttributes::ETag;
+ }
+ else if (hashCode == Checksum_HASH)
+ {
+ return ObjectAttributes::Checksum;
+ }
+ else if (hashCode == ObjectParts_HASH)
+ {
+ return ObjectAttributes::ObjectParts;
+ }
+ else if (hashCode == StorageClass_HASH)
+ {
+ return ObjectAttributes::StorageClass;
+ }
+ else if (hashCode == ObjectSize_HASH)
+ {
+ return ObjectAttributes::ObjectSize;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<ObjectAttributes>(hashCode);
+ }
+
+ return ObjectAttributes::NOT_SET;
+ }
+
+ Aws::String GetNameForObjectAttributes(ObjectAttributes enumValue)
+ {
+ switch(enumValue)
+ {
+ case ObjectAttributes::ETag:
+ return "ETag";
+ case ObjectAttributes::Checksum:
+ return "Checksum";
+ case ObjectAttributes::ObjectParts:
+ return "ObjectParts";
+ case ObjectAttributes::StorageClass:
+ return "StorageClass";
+ case ObjectAttributes::ObjectSize:
+ return "ObjectSize";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace ObjectAttributesMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockRetention.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockRetention.cpp
index 3ba5d5590e..f9b3d70c7f 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockRetention.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockRetention.cpp
@@ -50,7 +50,7 @@ ObjectLockRetention& ObjectLockRetention::operator =(const XmlNode& xmlNode)
XmlNode retainUntilDateNode = resultNode.FirstChild("RetainUntilDate");
if(!retainUntilDateNode.IsNull())
{
- m_retainUntilDate = DateTime(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(retainUntilDateNode.GetText()).c_str()).c_str(), DateFormat::ISO_8601);
+ m_retainUntilDate = DateTime(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(retainUntilDateNode.GetText()).c_str()).c_str(), Aws::Utils::DateFormat::ISO_8601);
m_retainUntilDateHasBeenSet = true;
}
}
@@ -70,7 +70,7 @@ void ObjectLockRetention::AddToNode(XmlNode& parentNode) const
if(m_retainUntilDateHasBeenSet)
{
XmlNode retainUntilDateNode = parentNode.CreateChildElement("RetainUntilDate");
- retainUntilDateNode.SetText(m_retainUntilDate.ToGmtString(DateFormat::ISO_8601));
+ retainUntilDateNode.SetText(m_retainUntilDate.ToGmtString(Aws::Utils::DateFormat::ISO_8601));
}
}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectOwnership.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectOwnership.cpp
index 4e2a106c8e..7fba54e6c8 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectOwnership.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectOwnership.cpp
@@ -22,6 +22,7 @@ namespace Aws
static const int BucketOwnerPreferred_HASH = HashingUtils::HashString("BucketOwnerPreferred");
static const int ObjectWriter_HASH = HashingUtils::HashString("ObjectWriter");
+ static const int BucketOwnerEnforced_HASH = HashingUtils::HashString("BucketOwnerEnforced");
ObjectOwnership GetObjectOwnershipForName(const Aws::String& name)
@@ -35,6 +36,10 @@ namespace Aws
{
return ObjectOwnership::ObjectWriter;
}
+ else if (hashCode == BucketOwnerEnforced_HASH)
+ {
+ return ObjectOwnership::BucketOwnerEnforced;
+ }
EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
if(overflowContainer)
{
@@ -53,6 +58,8 @@ namespace Aws
return "BucketOwnerPreferred";
case ObjectOwnership::ObjectWriter:
return "ObjectWriter";
+ case ObjectOwnership::BucketOwnerEnforced:
+ return "BucketOwnerEnforced";
default:
EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
if(overflowContainer)
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectPart.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectPart.cpp
new file mode 100644
index 0000000000..fdbd9eebc0
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectPart.cpp
@@ -0,0 +1,142 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ObjectPart.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+#include <aws/core/utils/StringUtils.h>
+#include <aws/core/utils/memory/stl/AWSStringStream.h>
+
+#include <utility>
+
+using namespace Aws::Utils::Xml;
+using namespace Aws::Utils;
+
+namespace Aws
+{
+namespace S3
+{
+namespace Model
+{
+
+ObjectPart::ObjectPart() :
+ m_partNumber(0),
+ m_partNumberHasBeenSet(false),
+ m_size(0),
+ m_sizeHasBeenSet(false),
+ m_checksumCRC32HasBeenSet(false),
+ m_checksumCRC32CHasBeenSet(false),
+ m_checksumSHA1HasBeenSet(false),
+ m_checksumSHA256HasBeenSet(false)
+{
+}
+
+ObjectPart::ObjectPart(const XmlNode& xmlNode) :
+ m_partNumber(0),
+ m_partNumberHasBeenSet(false),
+ m_size(0),
+ m_sizeHasBeenSet(false),
+ m_checksumCRC32HasBeenSet(false),
+ m_checksumCRC32CHasBeenSet(false),
+ m_checksumSHA1HasBeenSet(false),
+ m_checksumSHA256HasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+ObjectPart& ObjectPart::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode partNumberNode = resultNode.FirstChild("PartNumber");
+ if(!partNumberNode.IsNull())
+ {
+ m_partNumber = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(partNumberNode.GetText()).c_str()).c_str());
+ m_partNumberHasBeenSet = true;
+ }
+ XmlNode sizeNode = resultNode.FirstChild("Size");
+ if(!sizeNode.IsNull())
+ {
+ m_size = StringUtils::ConvertToInt64(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(sizeNode.GetText()).c_str()).c_str());
+ m_sizeHasBeenSet = true;
+ }
+ XmlNode checksumCRC32Node = resultNode.FirstChild("ChecksumCRC32");
+ if(!checksumCRC32Node.IsNull())
+ {
+ m_checksumCRC32 = Aws::Utils::Xml::DecodeEscapedXmlText(checksumCRC32Node.GetText());
+ m_checksumCRC32HasBeenSet = true;
+ }
+ XmlNode checksumCRC32CNode = resultNode.FirstChild("ChecksumCRC32C");
+ if(!checksumCRC32CNode.IsNull())
+ {
+ m_checksumCRC32C = Aws::Utils::Xml::DecodeEscapedXmlText(checksumCRC32CNode.GetText());
+ m_checksumCRC32CHasBeenSet = true;
+ }
+ XmlNode checksumSHA1Node = resultNode.FirstChild("ChecksumSHA1");
+ if(!checksumSHA1Node.IsNull())
+ {
+ m_checksumSHA1 = Aws::Utils::Xml::DecodeEscapedXmlText(checksumSHA1Node.GetText());
+ m_checksumSHA1HasBeenSet = true;
+ }
+ XmlNode checksumSHA256Node = resultNode.FirstChild("ChecksumSHA256");
+ if(!checksumSHA256Node.IsNull())
+ {
+ m_checksumSHA256 = Aws::Utils::Xml::DecodeEscapedXmlText(checksumSHA256Node.GetText());
+ m_checksumSHA256HasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void ObjectPart::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_partNumberHasBeenSet)
+ {
+ XmlNode partNumberNode = parentNode.CreateChildElement("PartNumber");
+ ss << m_partNumber;
+ partNumberNode.SetText(ss.str());
+ ss.str("");
+ }
+
+ if(m_sizeHasBeenSet)
+ {
+ XmlNode sizeNode = parentNode.CreateChildElement("Size");
+ ss << m_size;
+ sizeNode.SetText(ss.str());
+ ss.str("");
+ }
+
+ if(m_checksumCRC32HasBeenSet)
+ {
+ XmlNode checksumCRC32Node = parentNode.CreateChildElement("ChecksumCRC32");
+ checksumCRC32Node.SetText(m_checksumCRC32);
+ }
+
+ if(m_checksumCRC32CHasBeenSet)
+ {
+ XmlNode checksumCRC32CNode = parentNode.CreateChildElement("ChecksumCRC32C");
+ checksumCRC32CNode.SetText(m_checksumCRC32C);
+ }
+
+ if(m_checksumSHA1HasBeenSet)
+ {
+ XmlNode checksumSHA1Node = parentNode.CreateChildElement("ChecksumSHA1");
+ checksumSHA1Node.SetText(m_checksumSHA1);
+ }
+
+ if(m_checksumSHA256HasBeenSet)
+ {
+ XmlNode checksumSHA256Node = parentNode.CreateChildElement("ChecksumSHA256");
+ checksumSHA256Node.SetText(m_checksumSHA256);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectStorageClass.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectStorageClass.cpp
index 572041c798..fd0e06fbc4 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectStorageClass.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectStorageClass.cpp
@@ -28,6 +28,7 @@ namespace Aws
static const int INTELLIGENT_TIERING_HASH = HashingUtils::HashString("INTELLIGENT_TIERING");
static const int DEEP_ARCHIVE_HASH = HashingUtils::HashString("DEEP_ARCHIVE");
static const int OUTPOSTS_HASH = HashingUtils::HashString("OUTPOSTS");
+ static const int GLACIER_IR_HASH = HashingUtils::HashString("GLACIER_IR");
ObjectStorageClass GetObjectStorageClassForName(const Aws::String& name)
@@ -65,6 +66,10 @@ namespace Aws
{
return ObjectStorageClass::OUTPOSTS;
}
+ else if (hashCode == GLACIER_IR_HASH)
+ {
+ return ObjectStorageClass::GLACIER_IR;
+ }
EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
if(overflowContainer)
{
@@ -95,6 +100,8 @@ namespace Aws
return "DEEP_ARCHIVE";
case ObjectStorageClass::OUTPOSTS:
return "OUTPOSTS";
+ case ObjectStorageClass::GLACIER_IR:
+ return "GLACIER_IR";
default:
EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
if(overflowContainer)
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectVersion.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectVersion.cpp
index c7b720f252..11a8542a02 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectVersion.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectVersion.cpp
@@ -22,6 +22,7 @@ namespace Model
ObjectVersion::ObjectVersion() :
m_eTagHasBeenSet(false),
+ m_checksumAlgorithmHasBeenSet(false),
m_size(0),
m_sizeHasBeenSet(false),
m_storageClass(ObjectVersionStorageClass::NOT_SET),
@@ -37,6 +38,7 @@ ObjectVersion::ObjectVersion() :
ObjectVersion::ObjectVersion(const XmlNode& xmlNode) :
m_eTagHasBeenSet(false),
+ m_checksumAlgorithmHasBeenSet(false),
m_size(0),
m_sizeHasBeenSet(false),
m_storageClass(ObjectVersionStorageClass::NOT_SET),
@@ -63,6 +65,18 @@ ObjectVersion& ObjectVersion::operator =(const XmlNode& xmlNode)
m_eTag = Aws::Utils::Xml::DecodeEscapedXmlText(eTagNode.GetText());
m_eTagHasBeenSet = true;
}
+ XmlNode checksumAlgorithmNode = resultNode.FirstChild("ChecksumAlgorithm");
+ if(!checksumAlgorithmNode.IsNull())
+ {
+ XmlNode checksumAlgorithmMember = checksumAlgorithmNode;
+ while(!checksumAlgorithmMember.IsNull())
+ {
+ m_checksumAlgorithm.push_back(ChecksumAlgorithmMapper::GetChecksumAlgorithmForName(StringUtils::Trim(checksumAlgorithmMember.GetText().c_str())));
+ checksumAlgorithmMember = checksumAlgorithmMember.NextNode("ChecksumAlgorithm");
+ }
+
+ m_checksumAlgorithmHasBeenSet = true;
+ }
XmlNode sizeNode = resultNode.FirstChild("Size");
if(!sizeNode.IsNull())
{
@@ -96,7 +110,7 @@ ObjectVersion& ObjectVersion::operator =(const XmlNode& xmlNode)
XmlNode lastModifiedNode = resultNode.FirstChild("LastModified");
if(!lastModifiedNode.IsNull())
{
- m_lastModified = DateTime(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(lastModifiedNode.GetText()).c_str()).c_str(), DateFormat::ISO_8601);
+ m_lastModified = DateTime(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(lastModifiedNode.GetText()).c_str()).c_str(), Aws::Utils::DateFormat::ISO_8601);
m_lastModifiedHasBeenSet = true;
}
XmlNode ownerNode = resultNode.FirstChild("Owner");
@@ -119,6 +133,16 @@ void ObjectVersion::AddToNode(XmlNode& parentNode) const
eTagNode.SetText(m_eTag);
}
+ if(m_checksumAlgorithmHasBeenSet)
+ {
+ XmlNode checksumAlgorithmParentNode = parentNode.CreateChildElement("ChecksumAlgorithm");
+ for(const auto& item : m_checksumAlgorithm)
+ {
+ XmlNode checksumAlgorithmNode = checksumAlgorithmParentNode.CreateChildElement("ChecksumAlgorithm");
+ checksumAlgorithmNode.SetText(ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(item));
+ }
+ }
+
if(m_sizeHasBeenSet)
{
XmlNode sizeNode = parentNode.CreateChildElement("Size");
@@ -156,7 +180,7 @@ void ObjectVersion::AddToNode(XmlNode& parentNode) const
if(m_lastModifiedHasBeenSet)
{
XmlNode lastModifiedNode = parentNode.CreateChildElement("LastModified");
- lastModifiedNode.SetText(m_lastModified.ToGmtString(DateFormat::ISO_8601));
+ lastModifiedNode.SetText(m_lastModified.ToGmtString(Aws::Utils::DateFormat::ISO_8601));
}
if(m_ownerHasBeenSet)
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Part.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Part.cpp
index a243f72d10..d0cd0f01cf 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Part.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Part.cpp
@@ -26,7 +26,11 @@ Part::Part() :
m_lastModifiedHasBeenSet(false),
m_eTagHasBeenSet(false),
m_size(0),
- m_sizeHasBeenSet(false)
+ m_sizeHasBeenSet(false),
+ m_checksumCRC32HasBeenSet(false),
+ m_checksumCRC32CHasBeenSet(false),
+ m_checksumSHA1HasBeenSet(false),
+ m_checksumSHA256HasBeenSet(false)
{
}
@@ -36,7 +40,11 @@ Part::Part(const XmlNode& xmlNode) :
m_lastModifiedHasBeenSet(false),
m_eTagHasBeenSet(false),
m_size(0),
- m_sizeHasBeenSet(false)
+ m_sizeHasBeenSet(false),
+ m_checksumCRC32HasBeenSet(false),
+ m_checksumCRC32CHasBeenSet(false),
+ m_checksumSHA1HasBeenSet(false),
+ m_checksumSHA256HasBeenSet(false)
{
*this = xmlNode;
}
@@ -56,7 +64,7 @@ Part& Part::operator =(const XmlNode& xmlNode)
XmlNode lastModifiedNode = resultNode.FirstChild("LastModified");
if(!lastModifiedNode.IsNull())
{
- m_lastModified = DateTime(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(lastModifiedNode.GetText()).c_str()).c_str(), DateFormat::ISO_8601);
+ m_lastModified = DateTime(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(lastModifiedNode.GetText()).c_str()).c_str(), Aws::Utils::DateFormat::ISO_8601);
m_lastModifiedHasBeenSet = true;
}
XmlNode eTagNode = resultNode.FirstChild("ETag");
@@ -71,6 +79,30 @@ Part& Part::operator =(const XmlNode& xmlNode)
m_size = StringUtils::ConvertToInt64(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(sizeNode.GetText()).c_str()).c_str());
m_sizeHasBeenSet = true;
}
+ XmlNode checksumCRC32Node = resultNode.FirstChild("ChecksumCRC32");
+ if(!checksumCRC32Node.IsNull())
+ {
+ m_checksumCRC32 = Aws::Utils::Xml::DecodeEscapedXmlText(checksumCRC32Node.GetText());
+ m_checksumCRC32HasBeenSet = true;
+ }
+ XmlNode checksumCRC32CNode = resultNode.FirstChild("ChecksumCRC32C");
+ if(!checksumCRC32CNode.IsNull())
+ {
+ m_checksumCRC32C = Aws::Utils::Xml::DecodeEscapedXmlText(checksumCRC32CNode.GetText());
+ m_checksumCRC32CHasBeenSet = true;
+ }
+ XmlNode checksumSHA1Node = resultNode.FirstChild("ChecksumSHA1");
+ if(!checksumSHA1Node.IsNull())
+ {
+ m_checksumSHA1 = Aws::Utils::Xml::DecodeEscapedXmlText(checksumSHA1Node.GetText());
+ m_checksumSHA1HasBeenSet = true;
+ }
+ XmlNode checksumSHA256Node = resultNode.FirstChild("ChecksumSHA256");
+ if(!checksumSHA256Node.IsNull())
+ {
+ m_checksumSHA256 = Aws::Utils::Xml::DecodeEscapedXmlText(checksumSHA256Node.GetText());
+ m_checksumSHA256HasBeenSet = true;
+ }
}
return *this;
@@ -90,7 +122,7 @@ void Part::AddToNode(XmlNode& parentNode) const
if(m_lastModifiedHasBeenSet)
{
XmlNode lastModifiedNode = parentNode.CreateChildElement("LastModified");
- lastModifiedNode.SetText(m_lastModified.ToGmtString(DateFormat::ISO_8601));
+ lastModifiedNode.SetText(m_lastModified.ToGmtString(Aws::Utils::DateFormat::ISO_8601));
}
if(m_eTagHasBeenSet)
@@ -107,6 +139,30 @@ void Part::AddToNode(XmlNode& parentNode) const
ss.str("");
}
+ if(m_checksumCRC32HasBeenSet)
+ {
+ XmlNode checksumCRC32Node = parentNode.CreateChildElement("ChecksumCRC32");
+ checksumCRC32Node.SetText(m_checksumCRC32);
+ }
+
+ if(m_checksumCRC32CHasBeenSet)
+ {
+ XmlNode checksumCRC32CNode = parentNode.CreateChildElement("ChecksumCRC32C");
+ checksumCRC32CNode.SetText(m_checksumCRC32C);
+ }
+
+ if(m_checksumSHA1HasBeenSet)
+ {
+ XmlNode checksumSHA1Node = parentNode.CreateChildElement("ChecksumSHA1");
+ checksumSHA1Node.SetText(m_checksumSHA1);
+ }
+
+ if(m_checksumSHA256HasBeenSet)
+ {
+ XmlNode checksumSHA256Node = parentNode.CreateChildElement("ChecksumSHA256");
+ checksumSHA256Node.SetText(m_checksumSHA256);
+ }
+
}
} // namespace Model
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketAccelerateConfigurationRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketAccelerateConfigurationRequest.cpp
index 15da0c32a1..c58ed72a04 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketAccelerateConfigurationRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketAccelerateConfigurationRequest.cpp
@@ -20,6 +20,8 @@ PutBucketAccelerateConfigurationRequest::PutBucketAccelerateConfigurationRequest
m_bucketHasBeenSet(false),
m_accelerateConfigurationHasBeenSet(false),
m_expectedBucketOwnerHasBeenSet(false),
+ m_checksumAlgorithm(ChecksumAlgorithm::NOT_SET),
+ m_checksumAlgorithmHasBeenSet(false),
m_customizedAccessLogTagHasBeenSet(false)
{
}
@@ -73,5 +75,33 @@ Aws::Http::HeaderValueCollection PutBucketAccelerateConfigurationRequest::GetReq
ss.str("");
}
+ if(m_checksumAlgorithmHasBeenSet)
+ {
+ headers.emplace("x-amz-sdk-checksum-algorithm", ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm));
+ }
+
return headers;
}
+
+PutBucketAccelerateConfigurationRequest::EndpointParameters PutBucketAccelerateConfigurationRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
+
+Aws::String PutBucketAccelerateConfigurationRequest::GetChecksumAlgorithmName() const
+{
+ if (m_checksumAlgorithm == ChecksumAlgorithm::NOT_SET)
+ {
+ return "md5";
+ }
+ else
+ {
+ return ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm);
+ }
+}
+
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketAclRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketAclRequest.cpp
index 5a3efcac19..a7273a85a4 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketAclRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketAclRequest.cpp
@@ -22,6 +22,8 @@ PutBucketAclRequest::PutBucketAclRequest() :
m_accessControlPolicyHasBeenSet(false),
m_bucketHasBeenSet(false),
m_contentMD5HasBeenSet(false),
+ m_checksumAlgorithm(ChecksumAlgorithm::NOT_SET),
+ m_checksumAlgorithmHasBeenSet(false),
m_grantFullControlHasBeenSet(false),
m_grantReadHasBeenSet(false),
m_grantReadACPHasBeenSet(false),
@@ -86,6 +88,11 @@ Aws::Http::HeaderValueCollection PutBucketAclRequest::GetRequestSpecificHeaders(
ss.str("");
}
+ if(m_checksumAlgorithmHasBeenSet)
+ {
+ headers.emplace("x-amz-sdk-checksum-algorithm", ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm));
+ }
+
if(m_grantFullControlHasBeenSet)
{
ss << m_grantFullControl;
@@ -130,3 +137,26 @@ Aws::Http::HeaderValueCollection PutBucketAclRequest::GetRequestSpecificHeaders(
return headers;
}
+
+PutBucketAclRequest::EndpointParameters PutBucketAclRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
+
+Aws::String PutBucketAclRequest::GetChecksumAlgorithmName() const
+{
+ if (m_checksumAlgorithm == ChecksumAlgorithm::NOT_SET)
+ {
+ return "md5";
+ }
+ else
+ {
+ return ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm);
+ }
+}
+
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketAnalyticsConfigurationRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketAnalyticsConfigurationRequest.cpp
index 73f9111f63..29d6e03e59 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketAnalyticsConfigurationRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketAnalyticsConfigurationRequest.cpp
@@ -83,3 +83,13 @@ Aws::Http::HeaderValueCollection PutBucketAnalyticsConfigurationRequest::GetRequ
return headers;
}
+
+PutBucketAnalyticsConfigurationRequest::EndpointParameters PutBucketAnalyticsConfigurationRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketCorsRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketCorsRequest.cpp
index 6f90824e2c..4e8ee9730f 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketCorsRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketCorsRequest.cpp
@@ -20,6 +20,8 @@ PutBucketCorsRequest::PutBucketCorsRequest() :
m_bucketHasBeenSet(false),
m_cORSConfigurationHasBeenSet(false),
m_contentMD5HasBeenSet(false),
+ m_checksumAlgorithm(ChecksumAlgorithm::NOT_SET),
+ m_checksumAlgorithmHasBeenSet(false),
m_expectedBucketOwnerHasBeenSet(false),
m_customizedAccessLogTagHasBeenSet(false)
{
@@ -74,6 +76,11 @@ Aws::Http::HeaderValueCollection PutBucketCorsRequest::GetRequestSpecificHeaders
ss.str("");
}
+ if(m_checksumAlgorithmHasBeenSet)
+ {
+ headers.emplace("x-amz-sdk-checksum-algorithm", ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm));
+ }
+
if(m_expectedBucketOwnerHasBeenSet)
{
ss << m_expectedBucketOwner;
@@ -83,3 +90,26 @@ Aws::Http::HeaderValueCollection PutBucketCorsRequest::GetRequestSpecificHeaders
return headers;
}
+
+PutBucketCorsRequest::EndpointParameters PutBucketCorsRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
+
+Aws::String PutBucketCorsRequest::GetChecksumAlgorithmName() const
+{
+ if (m_checksumAlgorithm == ChecksumAlgorithm::NOT_SET)
+ {
+ return "md5";
+ }
+ else
+ {
+ return ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm);
+ }
+}
+
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketEncryptionRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketEncryptionRequest.cpp
index 26b60f385e..7a9e14da68 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketEncryptionRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketEncryptionRequest.cpp
@@ -19,6 +19,8 @@ using namespace Aws::Http;
PutBucketEncryptionRequest::PutBucketEncryptionRequest() :
m_bucketHasBeenSet(false),
m_contentMD5HasBeenSet(false),
+ m_checksumAlgorithm(ChecksumAlgorithm::NOT_SET),
+ m_checksumAlgorithmHasBeenSet(false),
m_serverSideEncryptionConfigurationHasBeenSet(false),
m_expectedBucketOwnerHasBeenSet(false),
m_customizedAccessLogTagHasBeenSet(false)
@@ -74,6 +76,11 @@ Aws::Http::HeaderValueCollection PutBucketEncryptionRequest::GetRequestSpecificH
ss.str("");
}
+ if(m_checksumAlgorithmHasBeenSet)
+ {
+ headers.emplace("x-amz-sdk-checksum-algorithm", ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm));
+ }
+
if(m_expectedBucketOwnerHasBeenSet)
{
ss << m_expectedBucketOwner;
@@ -83,3 +90,26 @@ Aws::Http::HeaderValueCollection PutBucketEncryptionRequest::GetRequestSpecificH
return headers;
}
+
+PutBucketEncryptionRequest::EndpointParameters PutBucketEncryptionRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
+
+Aws::String PutBucketEncryptionRequest::GetChecksumAlgorithmName() const
+{
+ if (m_checksumAlgorithm == ChecksumAlgorithm::NOT_SET)
+ {
+ return "md5";
+ }
+ else
+ {
+ return ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm);
+ }
+}
+
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketIntelligentTieringConfigurationRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketIntelligentTieringConfigurationRequest.cpp
index 24bc947b71..17c63d7456 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketIntelligentTieringConfigurationRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketIntelligentTieringConfigurationRequest.cpp
@@ -69,3 +69,13 @@ void PutBucketIntelligentTieringConfigurationRequest::AddQueryStringParameters(U
}
}
+
+PutBucketIntelligentTieringConfigurationRequest::EndpointParameters PutBucketIntelligentTieringConfigurationRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketInventoryConfigurationRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketInventoryConfigurationRequest.cpp
index 31f0365528..5ec6f7d24f 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketInventoryConfigurationRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketInventoryConfigurationRequest.cpp
@@ -83,3 +83,13 @@ Aws::Http::HeaderValueCollection PutBucketInventoryConfigurationRequest::GetRequ
return headers;
}
+
+PutBucketInventoryConfigurationRequest::EndpointParameters PutBucketInventoryConfigurationRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketLifecycleConfigurationRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketLifecycleConfigurationRequest.cpp
index 2d8b5471f2..a197ebe9fb 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketLifecycleConfigurationRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketLifecycleConfigurationRequest.cpp
@@ -18,6 +18,8 @@ using namespace Aws::Http;
PutBucketLifecycleConfigurationRequest::PutBucketLifecycleConfigurationRequest() :
m_bucketHasBeenSet(false),
+ m_checksumAlgorithm(ChecksumAlgorithm::NOT_SET),
+ m_checksumAlgorithmHasBeenSet(false),
m_lifecycleConfigurationHasBeenSet(false),
m_expectedBucketOwnerHasBeenSet(false),
m_customizedAccessLogTagHasBeenSet(false)
@@ -66,6 +68,11 @@ Aws::Http::HeaderValueCollection PutBucketLifecycleConfigurationRequest::GetRequ
{
Aws::Http::HeaderValueCollection headers;
Aws::StringStream ss;
+ if(m_checksumAlgorithmHasBeenSet)
+ {
+ headers.emplace("x-amz-sdk-checksum-algorithm", ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm));
+ }
+
if(m_expectedBucketOwnerHasBeenSet)
{
ss << m_expectedBucketOwner;
@@ -75,3 +82,26 @@ Aws::Http::HeaderValueCollection PutBucketLifecycleConfigurationRequest::GetRequ
return headers;
}
+
+PutBucketLifecycleConfigurationRequest::EndpointParameters PutBucketLifecycleConfigurationRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
+
+Aws::String PutBucketLifecycleConfigurationRequest::GetChecksumAlgorithmName() const
+{
+ if (m_checksumAlgorithm == ChecksumAlgorithm::NOT_SET)
+ {
+ return "md5";
+ }
+ else
+ {
+ return ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm);
+ }
+}
+
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketLoggingRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketLoggingRequest.cpp
index 1057a8f122..34ca2d83ca 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketLoggingRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketLoggingRequest.cpp
@@ -20,6 +20,8 @@ PutBucketLoggingRequest::PutBucketLoggingRequest() :
m_bucketHasBeenSet(false),
m_bucketLoggingStatusHasBeenSet(false),
m_contentMD5HasBeenSet(false),
+ m_checksumAlgorithm(ChecksumAlgorithm::NOT_SET),
+ m_checksumAlgorithmHasBeenSet(false),
m_expectedBucketOwnerHasBeenSet(false),
m_customizedAccessLogTagHasBeenSet(false)
{
@@ -74,6 +76,11 @@ Aws::Http::HeaderValueCollection PutBucketLoggingRequest::GetRequestSpecificHead
ss.str("");
}
+ if(m_checksumAlgorithmHasBeenSet)
+ {
+ headers.emplace("x-amz-sdk-checksum-algorithm", ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm));
+ }
+
if(m_expectedBucketOwnerHasBeenSet)
{
ss << m_expectedBucketOwner;
@@ -83,3 +90,26 @@ Aws::Http::HeaderValueCollection PutBucketLoggingRequest::GetRequestSpecificHead
return headers;
}
+
+PutBucketLoggingRequest::EndpointParameters PutBucketLoggingRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
+
+Aws::String PutBucketLoggingRequest::GetChecksumAlgorithmName() const
+{
+ if (m_checksumAlgorithm == ChecksumAlgorithm::NOT_SET)
+ {
+ return "md5";
+ }
+ else
+ {
+ return ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm);
+ }
+}
+
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketMetricsConfigurationRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketMetricsConfigurationRequest.cpp
index 48e5714b3a..0f8ac13170 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketMetricsConfigurationRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketMetricsConfigurationRequest.cpp
@@ -83,3 +83,13 @@ Aws::Http::HeaderValueCollection PutBucketMetricsConfigurationRequest::GetReques
return headers;
}
+
+PutBucketMetricsConfigurationRequest::EndpointParameters PutBucketMetricsConfigurationRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketNotificationConfigurationRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketNotificationConfigurationRequest.cpp
index 52f921af4f..0a2e9ba847 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketNotificationConfigurationRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketNotificationConfigurationRequest.cpp
@@ -20,6 +20,8 @@ PutBucketNotificationConfigurationRequest::PutBucketNotificationConfigurationReq
m_bucketHasBeenSet(false),
m_notificationConfigurationHasBeenSet(false),
m_expectedBucketOwnerHasBeenSet(false),
+ m_skipDestinationValidation(false),
+ m_skipDestinationValidationHasBeenSet(false),
m_customizedAccessLogTagHasBeenSet(false)
{
}
@@ -69,5 +71,22 @@ Aws::Http::HeaderValueCollection PutBucketNotificationConfigurationRequest::GetR
ss.str("");
}
+ if(m_skipDestinationValidationHasBeenSet)
+ {
+ ss << std::boolalpha << m_skipDestinationValidation;
+ headers.emplace("x-amz-skip-destination-validation", ss.str());
+ ss.str("");
+ }
+
return headers;
}
+
+PutBucketNotificationConfigurationRequest::EndpointParameters PutBucketNotificationConfigurationRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketOwnershipControlsRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketOwnershipControlsRequest.cpp
index 5a6119e233..46dde75d47 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketOwnershipControlsRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketOwnershipControlsRequest.cpp
@@ -83,3 +83,13 @@ Aws::Http::HeaderValueCollection PutBucketOwnershipControlsRequest::GetRequestSp
return headers;
}
+
+PutBucketOwnershipControlsRequest::EndpointParameters PutBucketOwnershipControlsRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketPolicyRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketPolicyRequest.cpp
index d7fc444c2d..92f16a6381 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketPolicyRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketPolicyRequest.cpp
@@ -19,6 +19,8 @@ using namespace Aws;
PutBucketPolicyRequest::PutBucketPolicyRequest() :
m_bucketHasBeenSet(false),
m_contentMD5HasBeenSet(false),
+ m_checksumAlgorithm(ChecksumAlgorithm::NOT_SET),
+ m_checksumAlgorithmHasBeenSet(false),
m_confirmRemoveSelfBucketAccess(false),
m_confirmRemoveSelfBucketAccessHasBeenSet(false),
m_expectedBucketOwnerHasBeenSet(false),
@@ -60,6 +62,11 @@ Aws::Http::HeaderValueCollection PutBucketPolicyRequest::GetRequestSpecificHeade
ss.str("");
}
+ if(m_checksumAlgorithmHasBeenSet)
+ {
+ headers.emplace("x-amz-sdk-checksum-algorithm", ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm));
+ }
+
if(m_confirmRemoveSelfBucketAccessHasBeenSet)
{
ss << std::boolalpha << m_confirmRemoveSelfBucketAccess;
@@ -77,3 +84,26 @@ Aws::Http::HeaderValueCollection PutBucketPolicyRequest::GetRequestSpecificHeade
return headers;
}
+
+PutBucketPolicyRequest::EndpointParameters PutBucketPolicyRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
+
+Aws::String PutBucketPolicyRequest::GetChecksumAlgorithmName() const
+{
+ if (m_checksumAlgorithm == ChecksumAlgorithm::NOT_SET)
+ {
+ return "md5";
+ }
+ else
+ {
+ return ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm);
+ }
+}
+
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketReplicationRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketReplicationRequest.cpp
index 44244a8560..50b1abbebd 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketReplicationRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketReplicationRequest.cpp
@@ -19,6 +19,8 @@ using namespace Aws::Http;
PutBucketReplicationRequest::PutBucketReplicationRequest() :
m_bucketHasBeenSet(false),
m_contentMD5HasBeenSet(false),
+ m_checksumAlgorithm(ChecksumAlgorithm::NOT_SET),
+ m_checksumAlgorithmHasBeenSet(false),
m_replicationConfigurationHasBeenSet(false),
m_tokenHasBeenSet(false),
m_expectedBucketOwnerHasBeenSet(false),
@@ -75,6 +77,11 @@ Aws::Http::HeaderValueCollection PutBucketReplicationRequest::GetRequestSpecific
ss.str("");
}
+ if(m_checksumAlgorithmHasBeenSet)
+ {
+ headers.emplace("x-amz-sdk-checksum-algorithm", ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm));
+ }
+
if(m_tokenHasBeenSet)
{
ss << m_token;
@@ -91,3 +98,26 @@ Aws::Http::HeaderValueCollection PutBucketReplicationRequest::GetRequestSpecific
return headers;
}
+
+PutBucketReplicationRequest::EndpointParameters PutBucketReplicationRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
+
+Aws::String PutBucketReplicationRequest::GetChecksumAlgorithmName() const
+{
+ if (m_checksumAlgorithm == ChecksumAlgorithm::NOT_SET)
+ {
+ return "md5";
+ }
+ else
+ {
+ return ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm);
+ }
+}
+
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketRequestPaymentRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketRequestPaymentRequest.cpp
index f6be9cc855..643f26b8f1 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketRequestPaymentRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketRequestPaymentRequest.cpp
@@ -19,6 +19,8 @@ using namespace Aws::Http;
PutBucketRequestPaymentRequest::PutBucketRequestPaymentRequest() :
m_bucketHasBeenSet(false),
m_contentMD5HasBeenSet(false),
+ m_checksumAlgorithm(ChecksumAlgorithm::NOT_SET),
+ m_checksumAlgorithmHasBeenSet(false),
m_requestPaymentConfigurationHasBeenSet(false),
m_expectedBucketOwnerHasBeenSet(false),
m_customizedAccessLogTagHasBeenSet(false)
@@ -74,6 +76,11 @@ Aws::Http::HeaderValueCollection PutBucketRequestPaymentRequest::GetRequestSpeci
ss.str("");
}
+ if(m_checksumAlgorithmHasBeenSet)
+ {
+ headers.emplace("x-amz-sdk-checksum-algorithm", ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm));
+ }
+
if(m_expectedBucketOwnerHasBeenSet)
{
ss << m_expectedBucketOwner;
@@ -83,3 +90,26 @@ Aws::Http::HeaderValueCollection PutBucketRequestPaymentRequest::GetRequestSpeci
return headers;
}
+
+PutBucketRequestPaymentRequest::EndpointParameters PutBucketRequestPaymentRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
+
+Aws::String PutBucketRequestPaymentRequest::GetChecksumAlgorithmName() const
+{
+ if (m_checksumAlgorithm == ChecksumAlgorithm::NOT_SET)
+ {
+ return "md5";
+ }
+ else
+ {
+ return ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm);
+ }
+}
+
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketTaggingRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketTaggingRequest.cpp
index 748ede6e75..fa0861e2cd 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketTaggingRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketTaggingRequest.cpp
@@ -19,6 +19,8 @@ using namespace Aws::Http;
PutBucketTaggingRequest::PutBucketTaggingRequest() :
m_bucketHasBeenSet(false),
m_contentMD5HasBeenSet(false),
+ m_checksumAlgorithm(ChecksumAlgorithm::NOT_SET),
+ m_checksumAlgorithmHasBeenSet(false),
m_taggingHasBeenSet(false),
m_expectedBucketOwnerHasBeenSet(false),
m_customizedAccessLogTagHasBeenSet(false)
@@ -74,6 +76,11 @@ Aws::Http::HeaderValueCollection PutBucketTaggingRequest::GetRequestSpecificHead
ss.str("");
}
+ if(m_checksumAlgorithmHasBeenSet)
+ {
+ headers.emplace("x-amz-sdk-checksum-algorithm", ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm));
+ }
+
if(m_expectedBucketOwnerHasBeenSet)
{
ss << m_expectedBucketOwner;
@@ -83,3 +90,26 @@ Aws::Http::HeaderValueCollection PutBucketTaggingRequest::GetRequestSpecificHead
return headers;
}
+
+PutBucketTaggingRequest::EndpointParameters PutBucketTaggingRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
+
+Aws::String PutBucketTaggingRequest::GetChecksumAlgorithmName() const
+{
+ if (m_checksumAlgorithm == ChecksumAlgorithm::NOT_SET)
+ {
+ return "md5";
+ }
+ else
+ {
+ return ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm);
+ }
+}
+
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketVersioningRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketVersioningRequest.cpp
index 5e72efb1e1..6dbcd39433 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketVersioningRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketVersioningRequest.cpp
@@ -19,6 +19,8 @@ using namespace Aws::Http;
PutBucketVersioningRequest::PutBucketVersioningRequest() :
m_bucketHasBeenSet(false),
m_contentMD5HasBeenSet(false),
+ m_checksumAlgorithm(ChecksumAlgorithm::NOT_SET),
+ m_checksumAlgorithmHasBeenSet(false),
m_mFAHasBeenSet(false),
m_versioningConfigurationHasBeenSet(false),
m_expectedBucketOwnerHasBeenSet(false),
@@ -75,6 +77,11 @@ Aws::Http::HeaderValueCollection PutBucketVersioningRequest::GetRequestSpecificH
ss.str("");
}
+ if(m_checksumAlgorithmHasBeenSet)
+ {
+ headers.emplace("x-amz-sdk-checksum-algorithm", ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm));
+ }
+
if(m_mFAHasBeenSet)
{
ss << m_mFA;
@@ -91,3 +98,26 @@ Aws::Http::HeaderValueCollection PutBucketVersioningRequest::GetRequestSpecificH
return headers;
}
+
+PutBucketVersioningRequest::EndpointParameters PutBucketVersioningRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
+
+Aws::String PutBucketVersioningRequest::GetChecksumAlgorithmName() const
+{
+ if (m_checksumAlgorithm == ChecksumAlgorithm::NOT_SET)
+ {
+ return "md5";
+ }
+ else
+ {
+ return ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm);
+ }
+}
+
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketWebsiteRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketWebsiteRequest.cpp
index d20032e466..adea6161f5 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketWebsiteRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketWebsiteRequest.cpp
@@ -19,6 +19,8 @@ using namespace Aws::Http;
PutBucketWebsiteRequest::PutBucketWebsiteRequest() :
m_bucketHasBeenSet(false),
m_contentMD5HasBeenSet(false),
+ m_checksumAlgorithm(ChecksumAlgorithm::NOT_SET),
+ m_checksumAlgorithmHasBeenSet(false),
m_websiteConfigurationHasBeenSet(false),
m_expectedBucketOwnerHasBeenSet(false),
m_customizedAccessLogTagHasBeenSet(false)
@@ -74,6 +76,11 @@ Aws::Http::HeaderValueCollection PutBucketWebsiteRequest::GetRequestSpecificHead
ss.str("");
}
+ if(m_checksumAlgorithmHasBeenSet)
+ {
+ headers.emplace("x-amz-sdk-checksum-algorithm", ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm));
+ }
+
if(m_expectedBucketOwnerHasBeenSet)
{
ss << m_expectedBucketOwner;
@@ -83,3 +90,26 @@ Aws::Http::HeaderValueCollection PutBucketWebsiteRequest::GetRequestSpecificHead
return headers;
}
+
+PutBucketWebsiteRequest::EndpointParameters PutBucketWebsiteRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
+
+Aws::String PutBucketWebsiteRequest::GetChecksumAlgorithmName() const
+{
+ if (m_checksumAlgorithm == ChecksumAlgorithm::NOT_SET)
+ {
+ return "md5";
+ }
+ else
+ {
+ return ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm);
+ }
+}
+
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectAclRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectAclRequest.cpp
index 5dbd1a3fa6..fb859d91e4 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectAclRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectAclRequest.cpp
@@ -22,6 +22,8 @@ PutObjectAclRequest::PutObjectAclRequest() :
m_accessControlPolicyHasBeenSet(false),
m_bucketHasBeenSet(false),
m_contentMD5HasBeenSet(false),
+ m_checksumAlgorithm(ChecksumAlgorithm::NOT_SET),
+ m_checksumAlgorithmHasBeenSet(false),
m_grantFullControlHasBeenSet(false),
m_grantReadHasBeenSet(false),
m_grantReadACPHasBeenSet(false),
@@ -97,6 +99,11 @@ Aws::Http::HeaderValueCollection PutObjectAclRequest::GetRequestSpecificHeaders(
ss.str("");
}
+ if(m_checksumAlgorithmHasBeenSet)
+ {
+ headers.emplace("x-amz-sdk-checksum-algorithm", ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm));
+ }
+
if(m_grantFullControlHasBeenSet)
{
ss << m_grantFullControl;
@@ -146,3 +153,26 @@ Aws::Http::HeaderValueCollection PutObjectAclRequest::GetRequestSpecificHeaders(
return headers;
}
+
+PutObjectAclRequest::EndpointParameters PutObjectAclRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
+
+Aws::String PutObjectAclRequest::GetChecksumAlgorithmName() const
+{
+ if (m_checksumAlgorithm == ChecksumAlgorithm::NOT_SET)
+ {
+ return "md5";
+ }
+ else
+ {
+ return ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm);
+ }
+}
+
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectLegalHoldRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectLegalHoldRequest.cpp
index 8c07b952d7..4ecc41790e 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectLegalHoldRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectLegalHoldRequest.cpp
@@ -24,6 +24,8 @@ PutObjectLegalHoldRequest::PutObjectLegalHoldRequest() :
m_requestPayerHasBeenSet(false),
m_versionIdHasBeenSet(false),
m_contentMD5HasBeenSet(false),
+ m_checksumAlgorithm(ChecksumAlgorithm::NOT_SET),
+ m_checksumAlgorithmHasBeenSet(false),
m_expectedBucketOwnerHasBeenSet(false),
m_customizedAccessLogTagHasBeenSet(false)
{
@@ -90,6 +92,11 @@ Aws::Http::HeaderValueCollection PutObjectLegalHoldRequest::GetRequestSpecificHe
ss.str("");
}
+ if(m_checksumAlgorithmHasBeenSet)
+ {
+ headers.emplace("x-amz-sdk-checksum-algorithm", ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm));
+ }
+
if(m_expectedBucketOwnerHasBeenSet)
{
ss << m_expectedBucketOwner;
@@ -99,3 +106,26 @@ Aws::Http::HeaderValueCollection PutObjectLegalHoldRequest::GetRequestSpecificHe
return headers;
}
+
+PutObjectLegalHoldRequest::EndpointParameters PutObjectLegalHoldRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
+
+Aws::String PutObjectLegalHoldRequest::GetChecksumAlgorithmName() const
+{
+ if (m_checksumAlgorithm == ChecksumAlgorithm::NOT_SET)
+ {
+ return "md5";
+ }
+ else
+ {
+ return ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm);
+ }
+}
+
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectLockConfigurationRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectLockConfigurationRequest.cpp
index 347b9e668d..b0e89445dc 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectLockConfigurationRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectLockConfigurationRequest.cpp
@@ -23,6 +23,8 @@ PutObjectLockConfigurationRequest::PutObjectLockConfigurationRequest() :
m_requestPayerHasBeenSet(false),
m_tokenHasBeenSet(false),
m_contentMD5HasBeenSet(false),
+ m_checksumAlgorithm(ChecksumAlgorithm::NOT_SET),
+ m_checksumAlgorithmHasBeenSet(false),
m_expectedBucketOwnerHasBeenSet(false),
m_customizedAccessLogTagHasBeenSet(false)
{
@@ -89,6 +91,11 @@ Aws::Http::HeaderValueCollection PutObjectLockConfigurationRequest::GetRequestSp
ss.str("");
}
+ if(m_checksumAlgorithmHasBeenSet)
+ {
+ headers.emplace("x-amz-sdk-checksum-algorithm", ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm));
+ }
+
if(m_expectedBucketOwnerHasBeenSet)
{
ss << m_expectedBucketOwner;
@@ -98,3 +105,26 @@ Aws::Http::HeaderValueCollection PutObjectLockConfigurationRequest::GetRequestSp
return headers;
}
+
+PutObjectLockConfigurationRequest::EndpointParameters PutObjectLockConfigurationRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
+
+Aws::String PutObjectLockConfigurationRequest::GetChecksumAlgorithmName() const
+{
+ if (m_checksumAlgorithm == ChecksumAlgorithm::NOT_SET)
+ {
+ return "md5";
+ }
+ else
+ {
+ return ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm);
+ }
+}
+
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectRequest.cpp
index 18cdc3866f..1c2aa6e34f 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectRequest.cpp
@@ -28,6 +28,12 @@ PutObjectRequest::PutObjectRequest() :
m_contentLength(0),
m_contentLengthHasBeenSet(false),
m_contentMD5HasBeenSet(false),
+ m_checksumAlgorithm(ChecksumAlgorithm::NOT_SET),
+ m_checksumAlgorithmHasBeenSet(false),
+ m_checksumCRC32HasBeenSet(false),
+ m_checksumCRC32CHasBeenSet(false),
+ m_checksumSHA1HasBeenSet(false),
+ m_checksumSHA256HasBeenSet(false),
m_expiresHasBeenSet(false),
m_grantFullControlHasBeenSet(false),
m_grantReadHasBeenSet(false),
@@ -134,9 +140,42 @@ Aws::Http::HeaderValueCollection PutObjectRequest::GetRequestSpecificHeaders() c
ss.str("");
}
+ if(m_checksumAlgorithmHasBeenSet)
+ {
+ headers.emplace("x-amz-sdk-checksum-algorithm", ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm));
+ }
+
+ if(m_checksumCRC32HasBeenSet)
+ {
+ ss << m_checksumCRC32;
+ headers.emplace("x-amz-checksum-crc32", ss.str());
+ ss.str("");
+ }
+
+ if(m_checksumCRC32CHasBeenSet)
+ {
+ ss << m_checksumCRC32C;
+ headers.emplace("x-amz-checksum-crc32c", ss.str());
+ ss.str("");
+ }
+
+ if(m_checksumSHA1HasBeenSet)
+ {
+ ss << m_checksumSHA1;
+ headers.emplace("x-amz-checksum-sha1", ss.str());
+ ss.str("");
+ }
+
+ if(m_checksumSHA256HasBeenSet)
+ {
+ ss << m_checksumSHA256;
+ headers.emplace("x-amz-checksum-sha256", ss.str());
+ ss.str("");
+ }
+
if(m_expiresHasBeenSet)
{
- headers.emplace("expires", m_expires.ToGmtString(DateFormat::RFC822));
+ headers.emplace("expires", m_expires.ToGmtString(Aws::Utils::DateFormat::RFC822));
}
if(m_grantFullControlHasBeenSet)
@@ -255,7 +294,7 @@ Aws::Http::HeaderValueCollection PutObjectRequest::GetRequestSpecificHeaders() c
if(m_objectLockRetainUntilDateHasBeenSet)
{
- headers.emplace("x-amz-object-lock-retain-until-date", m_objectLockRetainUntilDate.ToGmtString(DateFormat::ISO_8601));
+ headers.emplace("x-amz-object-lock-retain-until-date", m_objectLockRetainUntilDate.ToGmtString(Aws::Utils::DateFormat::ISO_8601));
}
if(m_objectLockLegalHoldStatusHasBeenSet)
@@ -273,3 +312,26 @@ Aws::Http::HeaderValueCollection PutObjectRequest::GetRequestSpecificHeaders() c
return headers;
}
+
+PutObjectRequest::EndpointParameters PutObjectRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
+
+Aws::String PutObjectRequest::GetChecksumAlgorithmName() const
+{
+ if (m_checksumAlgorithm == ChecksumAlgorithm::NOT_SET)
+ {
+ return "md5";
+ }
+ else
+ {
+ return ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm);
+ }
+}
+
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectResult.cpp
index 0dfcb17280..21a34122e5 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectResult.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectResult.cpp
@@ -53,6 +53,30 @@ PutObjectResult& PutObjectResult::operator =(const Aws::AmazonWebServiceResult<X
m_eTag = eTagIter->second;
}
+ const auto& checksumCRC32Iter = headers.find("x-amz-checksum-crc32");
+ if(checksumCRC32Iter != headers.end())
+ {
+ m_checksumCRC32 = checksumCRC32Iter->second;
+ }
+
+ const auto& checksumCRC32CIter = headers.find("x-amz-checksum-crc32c");
+ if(checksumCRC32CIter != headers.end())
+ {
+ m_checksumCRC32C = checksumCRC32CIter->second;
+ }
+
+ const auto& checksumSHA1Iter = headers.find("x-amz-checksum-sha1");
+ if(checksumSHA1Iter != headers.end())
+ {
+ m_checksumSHA1 = checksumSHA1Iter->second;
+ }
+
+ const auto& checksumSHA256Iter = headers.find("x-amz-checksum-sha256");
+ if(checksumSHA256Iter != headers.end())
+ {
+ m_checksumSHA256 = checksumSHA256Iter->second;
+ }
+
const auto& serverSideEncryptionIter = headers.find("x-amz-server-side-encryption");
if(serverSideEncryptionIter != headers.end())
{
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectRetentionRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectRetentionRequest.cpp
index 779ac68bd3..47e0cd7039 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectRetentionRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectRetentionRequest.cpp
@@ -26,6 +26,8 @@ PutObjectRetentionRequest::PutObjectRetentionRequest() :
m_bypassGovernanceRetention(false),
m_bypassGovernanceRetentionHasBeenSet(false),
m_contentMD5HasBeenSet(false),
+ m_checksumAlgorithm(ChecksumAlgorithm::NOT_SET),
+ m_checksumAlgorithmHasBeenSet(false),
m_expectedBucketOwnerHasBeenSet(false),
m_customizedAccessLogTagHasBeenSet(false)
{
@@ -99,6 +101,11 @@ Aws::Http::HeaderValueCollection PutObjectRetentionRequest::GetRequestSpecificHe
ss.str("");
}
+ if(m_checksumAlgorithmHasBeenSet)
+ {
+ headers.emplace("x-amz-sdk-checksum-algorithm", ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm));
+ }
+
if(m_expectedBucketOwnerHasBeenSet)
{
ss << m_expectedBucketOwner;
@@ -108,3 +115,26 @@ Aws::Http::HeaderValueCollection PutObjectRetentionRequest::GetRequestSpecificHe
return headers;
}
+
+PutObjectRetentionRequest::EndpointParameters PutObjectRetentionRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
+
+Aws::String PutObjectRetentionRequest::GetChecksumAlgorithmName() const
+{
+ if (m_checksumAlgorithm == ChecksumAlgorithm::NOT_SET)
+ {
+ return "md5";
+ }
+ else
+ {
+ return ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm);
+ }
+}
+
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectTaggingRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectTaggingRequest.cpp
index 612eb0eb8e..a2da55ab0e 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectTaggingRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectTaggingRequest.cpp
@@ -21,6 +21,8 @@ PutObjectTaggingRequest::PutObjectTaggingRequest() :
m_keyHasBeenSet(false),
m_versionIdHasBeenSet(false),
m_contentMD5HasBeenSet(false),
+ m_checksumAlgorithm(ChecksumAlgorithm::NOT_SET),
+ m_checksumAlgorithmHasBeenSet(false),
m_taggingHasBeenSet(false),
m_expectedBucketOwnerHasBeenSet(false),
m_requestPayer(RequestPayer::NOT_SET),
@@ -85,6 +87,11 @@ Aws::Http::HeaderValueCollection PutObjectTaggingRequest::GetRequestSpecificHead
ss.str("");
}
+ if(m_checksumAlgorithmHasBeenSet)
+ {
+ headers.emplace("x-amz-sdk-checksum-algorithm", ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm));
+ }
+
if(m_expectedBucketOwnerHasBeenSet)
{
ss << m_expectedBucketOwner;
@@ -99,3 +106,26 @@ Aws::Http::HeaderValueCollection PutObjectTaggingRequest::GetRequestSpecificHead
return headers;
}
+
+PutObjectTaggingRequest::EndpointParameters PutObjectTaggingRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
+
+Aws::String PutObjectTaggingRequest::GetChecksumAlgorithmName() const
+{
+ if (m_checksumAlgorithm == ChecksumAlgorithm::NOT_SET)
+ {
+ return "md5";
+ }
+ else
+ {
+ return ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm);
+ }
+}
+
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutPublicAccessBlockRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutPublicAccessBlockRequest.cpp
index f06ab1ed3a..f8479fbe44 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutPublicAccessBlockRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutPublicAccessBlockRequest.cpp
@@ -19,6 +19,8 @@ using namespace Aws::Http;
PutPublicAccessBlockRequest::PutPublicAccessBlockRequest() :
m_bucketHasBeenSet(false),
m_contentMD5HasBeenSet(false),
+ m_checksumAlgorithm(ChecksumAlgorithm::NOT_SET),
+ m_checksumAlgorithmHasBeenSet(false),
m_publicAccessBlockConfigurationHasBeenSet(false),
m_expectedBucketOwnerHasBeenSet(false),
m_customizedAccessLogTagHasBeenSet(false)
@@ -74,6 +76,11 @@ Aws::Http::HeaderValueCollection PutPublicAccessBlockRequest::GetRequestSpecific
ss.str("");
}
+ if(m_checksumAlgorithmHasBeenSet)
+ {
+ headers.emplace("x-amz-sdk-checksum-algorithm", ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm));
+ }
+
if(m_expectedBucketOwnerHasBeenSet)
{
ss << m_expectedBucketOwner;
@@ -83,3 +90,26 @@ Aws::Http::HeaderValueCollection PutPublicAccessBlockRequest::GetRequestSpecific
return headers;
}
+
+PutPublicAccessBlockRequest::EndpointParameters PutPublicAccessBlockRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
+
+Aws::String PutPublicAccessBlockRequest::GetChecksumAlgorithmName() const
+{
+ if (m_checksumAlgorithm == ChecksumAlgorithm::NOT_SET)
+ {
+ return "md5";
+ }
+ else
+ {
+ return ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm);
+ }
+}
+
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RestoreObjectRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RestoreObjectRequest.cpp
index a755fc7828..85f5f73706 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RestoreObjectRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RestoreObjectRequest.cpp
@@ -23,6 +23,8 @@ RestoreObjectRequest::RestoreObjectRequest() :
m_restoreRequestHasBeenSet(false),
m_requestPayer(RequestPayer::NOT_SET),
m_requestPayerHasBeenSet(false),
+ m_checksumAlgorithm(ChecksumAlgorithm::NOT_SET),
+ m_checksumAlgorithmHasBeenSet(false),
m_expectedBucketOwnerHasBeenSet(false),
m_customizedAccessLogTagHasBeenSet(false)
{
@@ -82,6 +84,11 @@ Aws::Http::HeaderValueCollection RestoreObjectRequest::GetRequestSpecificHeaders
headers.emplace("x-amz-request-payer", RequestPayerMapper::GetNameForRequestPayer(m_requestPayer));
}
+ if(m_checksumAlgorithmHasBeenSet)
+ {
+ headers.emplace("x-amz-sdk-checksum-algorithm", ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm));
+ }
+
if(m_expectedBucketOwnerHasBeenSet)
{
ss << m_expectedBucketOwner;
@@ -91,3 +98,26 @@ Aws::Http::HeaderValueCollection RestoreObjectRequest::GetRequestSpecificHeaders
return headers;
}
+
+RestoreObjectRequest::EndpointParameters RestoreObjectRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
+
+Aws::String RestoreObjectRequest::GetChecksumAlgorithmName() const
+{
+ if (m_checksumAlgorithm == ChecksumAlgorithm::NOT_SET)
+ {
+ return "md5";
+ }
+ else
+ {
+ return ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm);
+ }
+}
+
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/SelectObjectContentRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/SelectObjectContentRequest.cpp
index f3443311dd..20f0007fd9 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/SelectObjectContentRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/SelectObjectContentRequest.cpp
@@ -31,7 +31,7 @@ SelectObjectContentRequest::SelectObjectContentRequest() :
m_scanRangeHasBeenSet(false),
m_expectedBucketOwnerHasBeenSet(false),
m_customizedAccessLogTagHasBeenSet(false),
- m_decoder(Aws::Utils::Event::EventStreamDecoder(&m_handler))
+ m_handler(), m_decoder(Aws::Utils::Event::EventStreamDecoder(&m_handler))
{
}
@@ -138,3 +138,13 @@ Aws::Http::HeaderValueCollection SelectObjectContentRequest::GetRequestSpecificH
return headers;
}
+
+SelectObjectContentRequest::EndpointParameters SelectObjectContentRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/StorageClass.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/StorageClass.cpp
index 0ab7edd5de..886777a137 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/StorageClass.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/StorageClass.cpp
@@ -28,6 +28,7 @@ namespace Aws
static const int GLACIER_HASH = HashingUtils::HashString("GLACIER");
static const int DEEP_ARCHIVE_HASH = HashingUtils::HashString("DEEP_ARCHIVE");
static const int OUTPOSTS_HASH = HashingUtils::HashString("OUTPOSTS");
+ static const int GLACIER_IR_HASH = HashingUtils::HashString("GLACIER_IR");
StorageClass GetStorageClassForName(const Aws::String& name)
@@ -65,6 +66,10 @@ namespace Aws
{
return StorageClass::OUTPOSTS;
}
+ else if (hashCode == GLACIER_IR_HASH)
+ {
+ return StorageClass::GLACIER_IR;
+ }
EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
if(overflowContainer)
{
@@ -95,6 +100,8 @@ namespace Aws
return "DEEP_ARCHIVE";
case StorageClass::OUTPOSTS:
return "OUTPOSTS";
+ case StorageClass::GLACIER_IR:
+ return "GLACIER_IR";
default:
EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
if(overflowContainer)
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Transition.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Transition.cpp
index 8dcefe5df2..e837cd964e 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Transition.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Transition.cpp
@@ -48,7 +48,7 @@ Transition& Transition::operator =(const XmlNode& xmlNode)
XmlNode dateNode = resultNode.FirstChild("Date");
if(!dateNode.IsNull())
{
- m_date = DateTime(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(dateNode.GetText()).c_str()).c_str(), DateFormat::ISO_8601);
+ m_date = DateTime(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(dateNode.GetText()).c_str()).c_str(), Aws::Utils::DateFormat::ISO_8601);
m_dateHasBeenSet = true;
}
XmlNode daysNode = resultNode.FirstChild("Days");
@@ -74,7 +74,7 @@ void Transition::AddToNode(XmlNode& parentNode) const
if(m_dateHasBeenSet)
{
XmlNode dateNode = parentNode.CreateChildElement("Date");
- dateNode.SetText(m_date.ToGmtString(DateFormat::ISO_8601));
+ dateNode.SetText(m_date.ToGmtString(Aws::Utils::DateFormat::ISO_8601));
}
if(m_daysHasBeenSet)
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/TransitionStorageClass.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/TransitionStorageClass.cpp
index 2149177071..59cc36b0b7 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/TransitionStorageClass.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/TransitionStorageClass.cpp
@@ -25,6 +25,7 @@ namespace Aws
static const int ONEZONE_IA_HASH = HashingUtils::HashString("ONEZONE_IA");
static const int INTELLIGENT_TIERING_HASH = HashingUtils::HashString("INTELLIGENT_TIERING");
static const int DEEP_ARCHIVE_HASH = HashingUtils::HashString("DEEP_ARCHIVE");
+ static const int GLACIER_IR_HASH = HashingUtils::HashString("GLACIER_IR");
TransitionStorageClass GetTransitionStorageClassForName(const Aws::String& name)
@@ -50,6 +51,10 @@ namespace Aws
{
return TransitionStorageClass::DEEP_ARCHIVE;
}
+ else if (hashCode == GLACIER_IR_HASH)
+ {
+ return TransitionStorageClass::GLACIER_IR;
+ }
EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
if(overflowContainer)
{
@@ -74,6 +79,8 @@ namespace Aws
return "INTELLIGENT_TIERING";
case TransitionStorageClass::DEEP_ARCHIVE:
return "DEEP_ARCHIVE";
+ case TransitionStorageClass::GLACIER_IR:
+ return "GLACIER_IR";
default:
EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
if(overflowContainer)
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/UploadPartCopyRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/UploadPartCopyRequest.cpp
index 364af9b8fc..f45d88ac80 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/UploadPartCopyRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/UploadPartCopyRequest.cpp
@@ -42,6 +42,28 @@ UploadPartCopyRequest::UploadPartCopyRequest() :
{
}
+bool UploadPartCopyRequest::HasEmbeddedError(Aws::IOStream &body,
+ const Aws::Http::HeaderValueCollection &header) const
+{
+ // Header is unused
+ (void) header;
+
+ auto readPointer = body.tellg();
+ XmlDocument doc = XmlDocument::CreateFromXmlStream(body);
+
+ if (!doc.WasParseSuccessful()) {
+ body.seekg(readPointer);
+ return false;
+ }
+
+ if (doc.GetRootElement().GetName() == "Error") {
+ body.seekg(readPointer);
+ return true;
+ }
+ body.seekg(readPointer);
+ return false;
+}
+
Aws::String UploadPartCopyRequest::SerializePayload() const
{
return {};
@@ -103,7 +125,7 @@ Aws::Http::HeaderValueCollection UploadPartCopyRequest::GetRequestSpecificHeader
if(m_copySourceIfModifiedSinceHasBeenSet)
{
- headers.emplace("x-amz-copy-source-if-modified-since", m_copySourceIfModifiedSince.ToGmtString(DateFormat::RFC822));
+ headers.emplace("x-amz-copy-source-if-modified-since", m_copySourceIfModifiedSince.ToGmtString(Aws::Utils::DateFormat::RFC822));
}
if(m_copySourceIfNoneMatchHasBeenSet)
@@ -115,7 +137,7 @@ Aws::Http::HeaderValueCollection UploadPartCopyRequest::GetRequestSpecificHeader
if(m_copySourceIfUnmodifiedSinceHasBeenSet)
{
- headers.emplace("x-amz-copy-source-if-unmodified-since", m_copySourceIfUnmodifiedSince.ToGmtString(DateFormat::RFC822));
+ headers.emplace("x-amz-copy-source-if-unmodified-since", m_copySourceIfUnmodifiedSince.ToGmtString(Aws::Utils::DateFormat::RFC822));
}
if(m_copySourceRangeHasBeenSet)
@@ -188,3 +210,13 @@ Aws::Http::HeaderValueCollection UploadPartCopyRequest::GetRequestSpecificHeader
return headers;
}
+
+UploadPartCopyRequest::EndpointParameters UploadPartCopyRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/UploadPartRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/UploadPartRequest.cpp
index ee4a67ee07..59edcc90e0 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/UploadPartRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/UploadPartRequest.cpp
@@ -22,6 +22,12 @@ UploadPartRequest::UploadPartRequest() :
m_contentLength(0),
m_contentLengthHasBeenSet(false),
m_contentMD5HasBeenSet(false),
+ m_checksumAlgorithm(ChecksumAlgorithm::NOT_SET),
+ m_checksumAlgorithmHasBeenSet(false),
+ m_checksumCRC32HasBeenSet(false),
+ m_checksumCRC32CHasBeenSet(false),
+ m_checksumSHA1HasBeenSet(false),
+ m_checksumSHA256HasBeenSet(false),
m_keyHasBeenSet(false),
m_partNumber(0),
m_partNumberHasBeenSet(false),
@@ -91,6 +97,39 @@ Aws::Http::HeaderValueCollection UploadPartRequest::GetRequestSpecificHeaders()
ss.str("");
}
+ if(m_checksumAlgorithmHasBeenSet)
+ {
+ headers.emplace("x-amz-sdk-checksum-algorithm", ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm));
+ }
+
+ if(m_checksumCRC32HasBeenSet)
+ {
+ ss << m_checksumCRC32;
+ headers.emplace("x-amz-checksum-crc32", ss.str());
+ ss.str("");
+ }
+
+ if(m_checksumCRC32CHasBeenSet)
+ {
+ ss << m_checksumCRC32C;
+ headers.emplace("x-amz-checksum-crc32c", ss.str());
+ ss.str("");
+ }
+
+ if(m_checksumSHA1HasBeenSet)
+ {
+ ss << m_checksumSHA1;
+ headers.emplace("x-amz-checksum-sha1", ss.str());
+ ss.str("");
+ }
+
+ if(m_checksumSHA256HasBeenSet)
+ {
+ ss << m_checksumSHA256;
+ headers.emplace("x-amz-checksum-sha256", ss.str());
+ ss.str("");
+ }
+
if(m_sSECustomerAlgorithmHasBeenSet)
{
ss << m_sSECustomerAlgorithm;
@@ -127,3 +166,26 @@ Aws::Http::HeaderValueCollection UploadPartRequest::GetRequestSpecificHeaders()
return headers;
}
+
+UploadPartRequest::EndpointParameters UploadPartRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Operation context parameters
+ if (BucketHasBeenSet()) {
+ parameters.emplace_back(Aws::String("Bucket"), this->GetBucket(), Aws::Endpoint::EndpointParameter::ParameterOrigin::OPERATION_CONTEXT);
+ }
+ return parameters;
+}
+
+Aws::String UploadPartRequest::GetChecksumAlgorithmName() const
+{
+ if (m_checksumAlgorithm == ChecksumAlgorithm::NOT_SET)
+ {
+ return "md5";
+ }
+ else
+ {
+ return ChecksumAlgorithmMapper::GetNameForChecksumAlgorithm(m_checksumAlgorithm);
+ }
+}
+
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/UploadPartResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/UploadPartResult.cpp
index 13ad60a463..fa24c00520 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/UploadPartResult.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/UploadPartResult.cpp
@@ -53,6 +53,30 @@ UploadPartResult& UploadPartResult::operator =(const Aws::AmazonWebServiceResult
m_eTag = eTagIter->second;
}
+ const auto& checksumCRC32Iter = headers.find("x-amz-checksum-crc32");
+ if(checksumCRC32Iter != headers.end())
+ {
+ m_checksumCRC32 = checksumCRC32Iter->second;
+ }
+
+ const auto& checksumCRC32CIter = headers.find("x-amz-checksum-crc32c");
+ if(checksumCRC32CIter != headers.end())
+ {
+ m_checksumCRC32C = checksumCRC32CIter->second;
+ }
+
+ const auto& checksumSHA1Iter = headers.find("x-amz-checksum-sha1");
+ if(checksumSHA1Iter != headers.end())
+ {
+ m_checksumSHA1 = checksumSHA1Iter->second;
+ }
+
+ const auto& checksumSHA256Iter = headers.find("x-amz-checksum-sha256");
+ if(checksumSHA256Iter != headers.end())
+ {
+ m_checksumSHA256 = checksumSHA256Iter->second;
+ }
+
const auto& sSECustomerAlgorithmIter = headers.find("x-amz-server-side-encryption-customer-algorithm");
if(sSECustomerAlgorithmIter != headers.end())
{
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/WriteGetObjectResponseRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/WriteGetObjectResponseRequest.cpp
index 49893d5823..fd1a33573c 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/WriteGetObjectResponseRequest.cpp
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/WriteGetObjectResponseRequest.cpp
@@ -32,6 +32,10 @@ WriteGetObjectResponseRequest::WriteGetObjectResponseRequest() :
m_contentLength(0),
m_contentLengthHasBeenSet(false),
m_contentRangeHasBeenSet(false),
+ m_checksumCRC32HasBeenSet(false),
+ m_checksumCRC32CHasBeenSet(false),
+ m_checksumSHA1HasBeenSet(false),
+ m_checksumSHA256HasBeenSet(false),
m_deleteMarker(false),
m_deleteMarkerHasBeenSet(false),
m_eTagHasBeenSet(false),
@@ -180,6 +184,34 @@ Aws::Http::HeaderValueCollection WriteGetObjectResponseRequest::GetRequestSpecif
ss.str("");
}
+ if(m_checksumCRC32HasBeenSet)
+ {
+ ss << m_checksumCRC32;
+ headers.emplace("x-amz-fwd-header-x-amz-checksum-crc32", ss.str());
+ ss.str("");
+ }
+
+ if(m_checksumCRC32CHasBeenSet)
+ {
+ ss << m_checksumCRC32C;
+ headers.emplace("x-amz-fwd-header-x-amz-checksum-crc32c", ss.str());
+ ss.str("");
+ }
+
+ if(m_checksumSHA1HasBeenSet)
+ {
+ ss << m_checksumSHA1;
+ headers.emplace("x-amz-fwd-header-x-amz-checksum-sha1", ss.str());
+ ss.str("");
+ }
+
+ if(m_checksumSHA256HasBeenSet)
+ {
+ ss << m_checksumSHA256;
+ headers.emplace("x-amz-fwd-header-x-amz-checksum-sha256", ss.str());
+ ss.str("");
+ }
+
if(m_deleteMarkerHasBeenSet)
{
ss << std::boolalpha << m_deleteMarker;
@@ -196,7 +228,7 @@ Aws::Http::HeaderValueCollection WriteGetObjectResponseRequest::GetRequestSpecif
if(m_expiresHasBeenSet)
{
- headers.emplace("x-amz-fwd-header-expires", m_expires.ToGmtString(DateFormat::RFC822));
+ headers.emplace("x-amz-fwd-header-expires", m_expires.ToGmtString(Aws::Utils::DateFormat::RFC822));
}
if(m_expirationHasBeenSet)
@@ -208,7 +240,7 @@ Aws::Http::HeaderValueCollection WriteGetObjectResponseRequest::GetRequestSpecif
if(m_lastModifiedHasBeenSet)
{
- headers.emplace("x-amz-fwd-header-last-modified", m_lastModified.ToGmtString(DateFormat::RFC822));
+ headers.emplace("x-amz-fwd-header-last-modified", m_lastModified.ToGmtString(Aws::Utils::DateFormat::RFC822));
}
if(m_missingMetaHasBeenSet)
@@ -240,7 +272,7 @@ Aws::Http::HeaderValueCollection WriteGetObjectResponseRequest::GetRequestSpecif
if(m_objectLockRetainUntilDateHasBeenSet)
{
- headers.emplace("x-amz-fwd-header-x-amz-object-lock-retain-until-date", m_objectLockRetainUntilDate.ToGmtString(DateFormat::ISO_8601));
+ headers.emplace("x-amz-fwd-header-x-amz-object-lock-retain-until-date", m_objectLockRetainUntilDate.ToGmtString(Aws::Utils::DateFormat::ISO_8601));
}
if(m_partsCountHasBeenSet)
@@ -322,3 +354,11 @@ Aws::Http::HeaderValueCollection WriteGetObjectResponseRequest::GetRequestSpecif
return headers;
}
+
+WriteGetObjectResponseRequest::EndpointParameters WriteGetObjectResponseRequest::GetEndpointContextParams() const
+{
+ EndpointParameters parameters;
+ // Static context parameters
+ parameters.emplace_back(Aws::String("UseObjectLambdaEndpoint"), true, Aws::Endpoint::EndpointParameter::ParameterOrigin::STATIC_CONTEXT);
+ return parameters;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/ya.make b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/ya.make
index 154df74f77..88082e0010 100644
--- a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/ya.make
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/ya.make
@@ -8,8 +8,13 @@ LICENSE_TEXTS(.yandex_meta/licenses.list.txt)
PEERDIR(
contrib/libs/aws-sdk-cpp/aws-cpp-sdk-core
+ contrib/restricted/aws/aws-c-auth
contrib/restricted/aws/aws-c-common
contrib/restricted/aws/aws-c-event-stream
+ contrib/restricted/aws/aws-c-io
+ contrib/restricted/aws/aws-c-mqtt
+ contrib/restricted/aws/aws-c-sdkutils
+ contrib/restricted/aws/aws-crt-cpp
)
ADDINCL(
@@ -22,38 +27,52 @@ NO_COMPILER_WARNINGS()
NO_UTIL()
CFLAGS(
+ -DAWS_AUTH_USE_IMPORT_EXPORT
-DAWS_CAL_USE_IMPORT_EXPORT
-DAWS_CHECKSUMS_USE_IMPORT_EXPORT
-DAWS_COMMON_USE_IMPORT_EXPORT
+ -DAWS_COMPRESSION_USE_IMPORT_EXPORT
+ -DAWS_CRT_CPP_USE_IMPORT_EXPORT
-DAWS_EVENT_STREAM_USE_IMPORT_EXPORT
+ -DAWS_HTTP_USE_IMPORT_EXPORT
-DAWS_IO_USE_IMPORT_EXPORT
+ -DAWS_MQTT_USE_IMPORT_EXPORT
+ -DAWS_MQTT_WITH_WEBSOCKETS
+ -DAWS_S3_USE_IMPORT_EXPORT
+ -DAWS_SDKUTILS_USE_IMPORT_EXPORT
-DAWS_SDK_VERSION_MAJOR=1
- -DAWS_SDK_VERSION_MINOR=8
- -DAWS_SDK_VERSION_PATCH=186
+ -DAWS_SDK_VERSION_MINOR=11
+ -DAWS_SDK_VERSION_PATCH=37
+ -DAWS_TEST_REGION=US_EAST_1
-DAWS_USE_EPOLL
+ -DENABLED_REQUEST_COMPRESSION
+ -DENABLED_ZLIB_REQUEST_COMPRESSION
-DENABLE_CURL_CLIENT
-DENABLE_OPENSSL_ENCRYPTION
-DHAS_PATHCONF
-DHAS_UMASK
- -DS2N_ADX
- -DS2N_BIKE_R3_AVX2
- -DS2N_BIKE_R3_AVX512
- -DS2N_BIKE_R3_PCLMUL
- -DS2N_BIKE_R3_VPCLMUL
+ -DS2N_CLONE_SUPPORTED
-DS2N_CPUID_AVAILABLE
-DS2N_FALL_THROUGH_SUPPORTED
- -DS2N_HAVE_EXECINFO
+ -DS2N_FEATURES_AVAILABLE
-DS2N_KYBER512R3_AVX2_BMI2
- -DS2N_SIKE_P434_R3_ASM
+ -DS2N_LIBCRYPTO_SUPPORTS_EVP_MD5_SHA1_HASH
+ -DS2N_LIBCRYPTO_SUPPORTS_EVP_MD_CTX_SET_PKEY_CTX
+ -DS2N_LIBCRYPTO_SUPPORTS_EVP_RC4
+ -DS2N_MADVISE_SUPPORTED
+ -DS2N_PLATFORM_SUPPORTS_KTLS
+ -DS2N_STACKTRACE
-DS2N___RESTRICT__SUPPORTED
)
SRCS(
- source/S3ARN.cpp
source/S3Client.cpp
- source/S3Endpoint.cpp
+ source/S3ClientConfiguration.cpp
+ source/S3EndpointProvider.cpp
+ source/S3EndpointRules.cpp
source/S3ErrorMarshaller.cpp
source/S3Errors.cpp
+ source/S3Request.cpp
source/model/AbortIncompleteMultipartUpload.cpp
source/model/AbortMultipartUploadRequest.cpp
source/model/AbortMultipartUploadResult.cpp
@@ -79,6 +98,9 @@ SRCS(
source/model/CORSRule.cpp
source/model/CSVInput.cpp
source/model/CSVOutput.cpp
+ source/model/Checksum.cpp
+ source/model/ChecksumAlgorithm.cpp
+ source/model/ChecksumMode.cpp
source/model/CloudFunctionConfiguration.cpp
source/model/CommonPrefix.cpp
source/model/CompleteMultipartUploadRequest.cpp
@@ -129,6 +151,7 @@ SRCS(
source/model/Error.cpp
source/model/ErrorDocument.cpp
source/model/Event.cpp
+ source/model/EventBridgeConfiguration.cpp
source/model/ExistingObjectReplication.cpp
source/model/ExistingObjectReplicationStatus.cpp
source/model/ExpirationStatus.cpp
@@ -178,6 +201,9 @@ SRCS(
source/model/GetBucketWebsiteResult.cpp
source/model/GetObjectAclRequest.cpp
source/model/GetObjectAclResult.cpp
+ source/model/GetObjectAttributesParts.cpp
+ source/model/GetObjectAttributesRequest.cpp
+ source/model/GetObjectAttributesResult.cpp
source/model/GetObjectLegalHoldRequest.cpp
source/model/GetObjectLegalHoldResult.cpp
source/model/GetObjectLockConfigurationRequest.cpp
@@ -262,6 +288,7 @@ SRCS(
source/model/NotificationConfigurationDeprecated.cpp
source/model/NotificationConfigurationFilter.cpp
source/model/Object.cpp
+ source/model/ObjectAttributes.cpp
source/model/ObjectCannedACL.cpp
source/model/ObjectIdentifier.cpp
source/model/ObjectLockConfiguration.cpp
@@ -273,6 +300,7 @@ SRCS(
source/model/ObjectLockRetentionMode.cpp
source/model/ObjectLockRule.cpp
source/model/ObjectOwnership.cpp
+ source/model/ObjectPart.cpp
source/model/ObjectStorageClass.cpp
source/model/ObjectVersion.cpp
source/model/ObjectVersionStorageClass.cpp