aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model
diff options
context:
space:
mode:
authorDevtools Arcadia <arcadia-devtools@yandex-team.ru>2022-02-07 18:08:42 +0300
committerDevtools Arcadia <arcadia-devtools@mous.vla.yp-c.yandex.net>2022-02-07 18:08:42 +0300
commit1110808a9d39d4b808aef724c861a2e1a38d2a69 (patch)
treee26c9fed0de5d9873cce7e00bc214573dc2195b7 /contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model
downloadydb-1110808a9d39d4b808aef724c861a2e1a38d2a69.tar.gz
intermediate changes
ref:cde9a383711a11544ce7e107a78147fb96cc4029
Diffstat (limited to 'contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model')
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AbortIncompleteMultipartUpload.cpp68
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AbortMultipartUploadRequest.cpp81
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AbortMultipartUploadResult.cpp47
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AccelerateConfiguration.cpp66
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AccessControlPolicy.cpp88
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AccessControlTranslation.cpp66
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AnalyticsAndOperator.cpp88
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AnalyticsConfiguration.cpp92
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AnalyticsExportDestination.cpp64
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AnalyticsFilter.cpp92
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AnalyticsS3BucketDestination.cpp108
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AnalyticsS3ExportFileFormat.cpp63
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ArchiveStatus.cpp70
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Bucket.cpp78
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/BucketAccelerateStatus.cpp70
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/BucketCannedACL.cpp84
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/BucketLifecycleConfiguration.cpp73
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/BucketLocationConstraint.cpp238
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/BucketLoggingStatus.cpp64
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/BucketLogsPermission.cpp77
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/BucketVersioningStatus.cpp70
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CORSConfiguration.cpp73
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CORSRule.cpp160
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CSVInput.cpp154
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CSVOutput.cpp122
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CloudFunctionConfiguration.cpp115
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CommonPrefix.cpp64
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CompleteMultipartUploadRequest.cpp93
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CompleteMultipartUploadResult.cpp101
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CompletedMultipartUpload.cpp73
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CompletedPart.cpp82
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CompressionType.cpp77
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Condition.cpp78
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CopyObjectRequest.cpp350
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CopyObjectResult.cpp106
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CopyObjectResultDetails.cpp78
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CopyPartResult.cpp78
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CreateBucketConfiguration.cpp66
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CreateBucketRequest.cpp125
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CreateBucketResult.cpp45
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CreateMultipartUploadRequest.cpp268
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CreateMultipartUploadResult.cpp114
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DefaultRetention.cpp102
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Delete.cpp91
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketAnalyticsConfigurationRequest.cpp73
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketCorsRequest.cpp65
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketEncryptionRequest.cpp65
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketIntelligentTieringConfigurationRequest.cpp59
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketInventoryConfigurationRequest.cpp73
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketLifecycleRequest.cpp65
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketMetricsConfigurationRequest.cpp73
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketOwnershipControlsRequest.cpp65
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketPolicyRequest.cpp65
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketReplicationRequest.cpp65
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketRequest.cpp65
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketTaggingRequest.cpp65
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketWebsiteRequest.cpp65
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteMarkerEntry.cpp124
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteMarkerReplication.cpp66
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteMarkerReplicationStatus.cpp70
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectRequest.cpp98
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectResult.cpp61
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectTaggingRequest.cpp74
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectTaggingResult.cpp45
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectsRequest.cpp101
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectsResult.cpp69
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeletePublicAccessBlockRequest.cpp65
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeletedObject.cpp110
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Destination.cpp150
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/EncodingType.cpp63
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Encryption.cpp94
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/EncryptionConfiguration.cpp64
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Error.cpp106
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ErrorDocument.cpp64
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Event.cpp175
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ExistingObjectReplication.cpp66
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ExistingObjectReplicationStatus.cpp70
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ExpirationStatus.cpp70
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ExpressionType.cpp63
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/FileHeaderInfo.cpp77
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/FilterRule.cpp80
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/FilterRuleName.cpp70
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketAccelerateConfigurationRequest.cpp65
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketAccelerateConfigurationResult.cpp44
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketAclRequest.cpp65
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketAclResult.cpp53
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketAnalyticsConfigurationRequest.cpp73
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketAnalyticsConfigurationResult.cpp38
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketCorsRequest.cpp65
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketCorsResult.cpp48
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketEncryptionRequest.cpp65
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketEncryptionResult.cpp38
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketIntelligentTieringConfigurationRequest.cpp59
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketIntelligentTieringConfigurationResult.cpp38
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketInventoryConfigurationRequest.cpp73
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketInventoryConfigurationResult.cpp38
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketLifecycleConfigurationRequest.cpp65
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketLifecycleConfigurationResult.cpp48
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketLocationRequest.cpp65
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketLocationResult.cpp41
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketLoggingRequest.cpp65
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketLoggingResult.cpp42
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketMetricsConfigurationRequest.cpp73
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketMetricsConfigurationResult.cpp38
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketNotificationConfigurationRequest.cpp65
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketNotificationConfigurationResult.cpp70
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketOwnershipControlsRequest.cpp65
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketOwnershipControlsResult.cpp38
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketPolicyRequest.cpp65
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketPolicyResult.cpp48
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketPolicyStatusRequest.cpp65
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketPolicyStatusResult.cpp38
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketReplicationRequest.cpp65
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketReplicationResult.cpp38
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketRequestPaymentRequest.cpp65
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketRequestPaymentResult.cpp44
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketTaggingRequest.cpp65
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketTaggingResult.cpp48
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketVersioningRequest.cpp65
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketVersioningResult.cpp51
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketWebsiteRequest.cpp65
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketWebsiteResult.cpp63
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAclRequest.cpp81
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAclResult.cpp63
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectLegalHoldRequest.cpp81
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectLegalHoldResult.cpp38
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectLockConfigurationRequest.cpp65
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectLockConfigurationResult.cpp38
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectRequest.cpp198
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectResult.cpp344
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectRetentionRequest.cpp81
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectRetentionResult.cpp38
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectTaggingRequest.cpp74
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectTaggingResult.cpp56
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectTorrentRequest.cpp73
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectTorrentResult.cpp61
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetPublicAccessBlockRequest.cpp65
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetPublicAccessBlockResult.cpp38
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GlacierJobParameters.cpp66
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Grant.cpp80
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Grantee.cpp122
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/HeadBucketRequest.cpp65
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/HeadObjectRequest.cpp150
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/HeadObjectResult.cpp248
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/IndexDocument.cpp64
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Initiator.cpp78
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InputSerialization.cpp108
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/IntelligentTieringAccessTier.cpp70
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/IntelligentTieringAndOperator.cpp88
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/IntelligentTieringConfiguration.cpp117
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/IntelligentTieringFilter.cpp92
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/IntelligentTieringStatus.cpp70
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InvalidObjectState.cpp82
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryConfiguration.cpp164
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryDestination.cpp64
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryEncryption.cpp78
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryFilter.cpp64
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryFormat.cpp77
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryFrequency.cpp70
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryIncludedObjectVersions.cpp70
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryOptionalField.cpp133
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryS3BucketDestination.cpp122
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventorySchedule.cpp66
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/JSONInput.cpp66
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/JSONOutput.cpp64
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/JSONType.cpp70
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/LambdaFunctionConfiguration.cpp115
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/LifecycleConfiguration.cpp73
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/LifecycleExpiration.cpp100
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/LifecycleRule.cpp182
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/LifecycleRuleAndOperator.cpp88
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/LifecycleRuleFilter.cpp92
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketAnalyticsConfigurationsRequest.cpp73
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketAnalyticsConfigurationsResult.cpp65
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketIntelligentTieringConfigurationsRequest.cpp59
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketIntelligentTieringConfigurationsResult.cpp65
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketInventoryConfigurationsRequest.cpp73
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketInventoryConfigurationsResult.cpp65
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketMetricsConfigurationsRequest.cpp73
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketMetricsConfigurationsResult.cpp65
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketsResult.cpp53
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListMultipartUploadsRequest.cpp115
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListMultipartUploadsResult.cpp115
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListObjectVersionsRequest.cpp115
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListObjectVersionsResult.cpp126
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListObjectsRequest.cpp114
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListObjectsResult.cpp105
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListObjectsV2Request.cpp131
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListObjectsV2Result.cpp117
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListPartsRequest.cpp99
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListPartsResult.cpp130
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/LoggingEnabled.cpp102
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MFADelete.cpp70
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MFADeleteStatus.cpp70
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MetadataDirective.cpp70
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MetadataEntry.cpp78
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Metrics.cpp80
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MetricsAndOperator.cpp88
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MetricsConfiguration.cpp78
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MetricsFilter.cpp92
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MetricsStatus.cpp70
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MultipartUpload.cpp136
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NoncurrentVersionExpiration.cpp68
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NoncurrentVersionTransition.cpp84
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NotificationConfiguration.cpp119
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NotificationConfigurationDeprecated.cpp92
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NotificationConfigurationFilter.cpp64
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Object.cpp140
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectCannedACL.cpp105
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectIdentifier.cpp78
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockConfiguration.cpp80
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockEnabled.cpp63
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockLegalHold.cpp66
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockLegalHoldStatus.cpp70
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockMode.cpp70
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockRetention.cpp80
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockRetentionMode.cpp70
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockRule.cpp64
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectOwnership.cpp70
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectStorageClass.cpp112
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectVersion.cpp172
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectVersionStorageClass.cpp63
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/OutputLocation.cpp64
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/OutputSerialization.cpp78
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Owner.cpp78
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/OwnerOverride.cpp63
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/OwnershipControls.cpp73
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/OwnershipControlsRule.cpp66
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ParquetInput.cpp51
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Part.cpp114
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Payer.cpp70
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Permission.cpp91
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PolicyStatus.cpp68
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Progress.cpp104
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ProgressEvent.cpp64
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Protocol.cpp70
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PublicAccessBlockConfiguration.cpp122
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketAccelerateConfigurationRequest.cpp77
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketAclRequest.cpp132
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketAnalyticsConfigurationRequest.cpp85
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketCorsRequest.cpp85
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketEncryptionRequest.cpp85
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketIntelligentTieringConfigurationRequest.cpp71
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketInventoryConfigurationRequest.cpp85
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketLifecycleConfigurationRequest.cpp77
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketLoggingRequest.cpp85
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketMetricsConfigurationRequest.cpp85
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketNotificationConfigurationRequest.cpp73
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketOwnershipControlsRequest.cpp85
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketPolicyRequest.cpp79
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketReplicationRequest.cpp93
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketRequestPaymentRequest.cpp85
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketTaggingRequest.cpp85
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketVersioningRequest.cpp93
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketWebsiteRequest.cpp85
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectAclRequest.cpp148
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectAclResult.cpp47
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectLegalHoldRequest.cpp101
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectLegalHoldResult.cpp47
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectLockConfigurationRequest.cpp100
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectLockConfigurationResult.cpp47
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectRequest.cpp275
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectResult.cpp105
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectRetentionRequest.cpp110
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectRetentionResult.cpp47
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectTaggingRequest.cpp94
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectTaggingResult.cpp45
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutPublicAccessBlockRequest.cpp85
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/QueueConfiguration.cpp115
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/QueueConfigurationDeprecated.cpp101
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/QuoteFields.cpp70
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Redirect.cpp122
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RedirectAllRequestsTo.cpp80
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicaModifications.cpp66
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicaModificationsStatus.cpp70
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicationConfiguration.cpp87
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicationRule.cpp168
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicationRuleAndOperator.cpp88
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicationRuleFilter.cpp92
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicationRuleStatus.cpp70
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicationStatus.cpp84
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicationTime.cpp80
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicationTimeStatus.cpp70
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicationTimeValue.cpp68
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RequestCharged.cpp63
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RequestPayer.cpp63
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RequestPaymentConfiguration.cpp66
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RequestProgress.cpp68
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RestoreObjectRequest.cpp93
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RestoreObjectResult.cpp53
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RestoreRequest.cpp156
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RestoreRequestType.cpp63
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RoutingRule.cpp78
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Rule.cpp164
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/S3KeyFilter.cpp73
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/S3Location.cpp186
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/SSEKMS.cpp64
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/SSES3.cpp51
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ScanRange.cpp86
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/SelectObjectContentHandler.cpp271
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/SelectObjectContentRequest.cpp140
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/SelectParameters.cpp108
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ServerSideEncryption.cpp70
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ServerSideEncryptionByDefault.cpp80
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ServerSideEncryptionConfiguration.cpp73
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ServerSideEncryptionRule.cpp82
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/SourceSelectionCriteria.cpp78
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/SseKmsEncryptedObjects.cpp66
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/SseKmsEncryptedObjectsStatus.cpp70
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Stats.cpp104
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/StatsEvent.cpp64
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/StorageClass.cpp112
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/StorageClassAnalysis.cpp64
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/StorageClassAnalysisDataExport.cpp80
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/StorageClassAnalysisSchemaVersion.cpp63
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Tag.cpp78
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Tagging.cpp74
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/TaggingDirective.cpp70
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/TargetGrant.cpp80
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Tier.cpp77
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Tiering.cpp84
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/TopicConfiguration.cpp115
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/TopicConfigurationDeprecated.cpp101
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Transition.cpp98
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/TransitionStorageClass.cpp91
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Type.cpp77
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/UploadPartCopyRequest.cpp190
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/UploadPartCopyResult.cpp88
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/UploadPartRequest.cpp129
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/UploadPartResult.cpp87
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/VersioningConfiguration.cpp82
-rw-r--r--contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/WebsiteConfiguration.cpp116
332 files changed, 28508 insertions, 0 deletions
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AbortIncompleteMultipartUpload.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AbortIncompleteMultipartUpload.cpp
new file mode 100644
index 0000000000..983062c170
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AbortIncompleteMultipartUpload.cpp
@@ -0,0 +1,68 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/AbortIncompleteMultipartUpload.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
+{
+
+AbortIncompleteMultipartUpload::AbortIncompleteMultipartUpload() :
+ m_daysAfterInitiation(0),
+ m_daysAfterInitiationHasBeenSet(false)
+{
+}
+
+AbortIncompleteMultipartUpload::AbortIncompleteMultipartUpload(const XmlNode& xmlNode) :
+ m_daysAfterInitiation(0),
+ m_daysAfterInitiationHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+AbortIncompleteMultipartUpload& AbortIncompleteMultipartUpload::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode daysAfterInitiationNode = resultNode.FirstChild("DaysAfterInitiation");
+ if(!daysAfterInitiationNode.IsNull())
+ {
+ m_daysAfterInitiation = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(daysAfterInitiationNode.GetText()).c_str()).c_str());
+ m_daysAfterInitiationHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void AbortIncompleteMultipartUpload::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_daysAfterInitiationHasBeenSet)
+ {
+ XmlNode daysAfterInitiationNode = parentNode.CreateChildElement("DaysAfterInitiation");
+ ss << m_daysAfterInitiation;
+ daysAfterInitiationNode.SetText(ss.str());
+ ss.str("");
+ }
+
+}
+
+} // namespace Model
+} // 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
new file mode 100644
index 0000000000..4d8645caab
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AbortMultipartUploadRequest.cpp
@@ -0,0 +1,81 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/AbortMultipartUploadRequest.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;
+
+AbortMultipartUploadRequest::AbortMultipartUploadRequest() :
+ m_bucketHasBeenSet(false),
+ m_keyHasBeenSet(false),
+ m_uploadIdHasBeenSet(false),
+ m_requestPayer(RequestPayer::NOT_SET),
+ m_requestPayerHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String AbortMultipartUploadRequest::SerializePayload() const
+{
+ return {};
+}
+
+void AbortMultipartUploadRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ if(m_uploadIdHasBeenSet)
+ {
+ ss << m_uploadId;
+ uri.AddQueryStringParameter("uploadId", 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 AbortMultipartUploadRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ 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("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AbortMultipartUploadResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AbortMultipartUploadResult.cpp
new file mode 100644
index 0000000000..5372be5cc7
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AbortMultipartUploadResult.cpp
@@ -0,0 +1,47 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/AbortMultipartUploadResult.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;
+
+AbortMultipartUploadResult::AbortMultipartUploadResult() :
+ m_requestCharged(RequestCharged::NOT_SET)
+{
+}
+
+AbortMultipartUploadResult::AbortMultipartUploadResult(const Aws::AmazonWebServiceResult<XmlDocument>& result) :
+ m_requestCharged(RequestCharged::NOT_SET)
+{
+ *this = result;
+}
+
+AbortMultipartUploadResult& AbortMultipartUploadResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ }
+
+ const auto& headers = result.GetHeaderValueCollection();
+ 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/AccelerateConfiguration.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AccelerateConfiguration.cpp
new file mode 100644
index 0000000000..67a01a288d
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AccelerateConfiguration.cpp
@@ -0,0 +1,66 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/AccelerateConfiguration.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
+{
+
+AccelerateConfiguration::AccelerateConfiguration() :
+ m_status(BucketAccelerateStatus::NOT_SET),
+ m_statusHasBeenSet(false)
+{
+}
+
+AccelerateConfiguration::AccelerateConfiguration(const XmlNode& xmlNode) :
+ m_status(BucketAccelerateStatus::NOT_SET),
+ m_statusHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+AccelerateConfiguration& AccelerateConfiguration::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode statusNode = resultNode.FirstChild("Status");
+ if(!statusNode.IsNull())
+ {
+ m_status = BucketAccelerateStatusMapper::GetBucketAccelerateStatusForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(statusNode.GetText()).c_str()).c_str());
+ m_statusHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void AccelerateConfiguration::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_statusHasBeenSet)
+ {
+ XmlNode statusNode = parentNode.CreateChildElement("Status");
+ statusNode.SetText(BucketAccelerateStatusMapper::GetNameForBucketAccelerateStatus(m_status));
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AccessControlPolicy.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AccessControlPolicy.cpp
new file mode 100644
index 0000000000..78efb9809c
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AccessControlPolicy.cpp
@@ -0,0 +1,88 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/AccessControlPolicy.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
+{
+
+AccessControlPolicy::AccessControlPolicy() :
+ m_grantsHasBeenSet(false),
+ m_ownerHasBeenSet(false)
+{
+}
+
+AccessControlPolicy::AccessControlPolicy(const XmlNode& xmlNode) :
+ m_grantsHasBeenSet(false),
+ m_ownerHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+AccessControlPolicy& AccessControlPolicy::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode grantsNode = resultNode.FirstChild("AccessControlList");
+ if(!grantsNode.IsNull())
+ {
+ XmlNode grantsMember = grantsNode.FirstChild("Grant");
+ while(!grantsMember.IsNull())
+ {
+ m_grants.push_back(grantsMember);
+ grantsMember = grantsMember.NextNode("Grant");
+ }
+
+ m_grantsHasBeenSet = true;
+ }
+ XmlNode ownerNode = resultNode.FirstChild("Owner");
+ if(!ownerNode.IsNull())
+ {
+ m_owner = ownerNode;
+ m_ownerHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void AccessControlPolicy::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_grantsHasBeenSet)
+ {
+ XmlNode grantsParentNode = parentNode.CreateChildElement("AccessControlList");
+ for(const auto& item : m_grants)
+ {
+ XmlNode grantsNode = grantsParentNode.CreateChildElement("Grant");
+ item.AddToNode(grantsNode);
+ }
+ }
+
+ if(m_ownerHasBeenSet)
+ {
+ XmlNode ownerNode = parentNode.CreateChildElement("Owner");
+ m_owner.AddToNode(ownerNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AccessControlTranslation.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AccessControlTranslation.cpp
new file mode 100644
index 0000000000..de34b1189b
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AccessControlTranslation.cpp
@@ -0,0 +1,66 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/AccessControlTranslation.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
+{
+
+AccessControlTranslation::AccessControlTranslation() :
+ m_owner(OwnerOverride::NOT_SET),
+ m_ownerHasBeenSet(false)
+{
+}
+
+AccessControlTranslation::AccessControlTranslation(const XmlNode& xmlNode) :
+ m_owner(OwnerOverride::NOT_SET),
+ m_ownerHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+AccessControlTranslation& AccessControlTranslation::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode ownerNode = resultNode.FirstChild("Owner");
+ if(!ownerNode.IsNull())
+ {
+ m_owner = OwnerOverrideMapper::GetOwnerOverrideForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(ownerNode.GetText()).c_str()).c_str());
+ m_ownerHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void AccessControlTranslation::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_ownerHasBeenSet)
+ {
+ XmlNode ownerNode = parentNode.CreateChildElement("Owner");
+ ownerNode.SetText(OwnerOverrideMapper::GetNameForOwnerOverride(m_owner));
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AnalyticsAndOperator.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AnalyticsAndOperator.cpp
new file mode 100644
index 0000000000..8c25c4e75f
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AnalyticsAndOperator.cpp
@@ -0,0 +1,88 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/AnalyticsAndOperator.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
+{
+
+AnalyticsAndOperator::AnalyticsAndOperator() :
+ m_prefixHasBeenSet(false),
+ m_tagsHasBeenSet(false)
+{
+}
+
+AnalyticsAndOperator::AnalyticsAndOperator(const XmlNode& xmlNode) :
+ m_prefixHasBeenSet(false),
+ m_tagsHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+AnalyticsAndOperator& AnalyticsAndOperator::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode prefixNode = resultNode.FirstChild("Prefix");
+ if(!prefixNode.IsNull())
+ {
+ m_prefix = Aws::Utils::Xml::DecodeEscapedXmlText(prefixNode.GetText());
+ m_prefixHasBeenSet = true;
+ }
+ XmlNode tagsNode = resultNode.FirstChild("Tag");
+ if(!tagsNode.IsNull())
+ {
+ XmlNode tagMember = tagsNode;
+ while(!tagMember.IsNull())
+ {
+ m_tags.push_back(tagMember);
+ tagMember = tagMember.NextNode("Tag");
+ }
+
+ m_tagsHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void AnalyticsAndOperator::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_prefixHasBeenSet)
+ {
+ XmlNode prefixNode = parentNode.CreateChildElement("Prefix");
+ prefixNode.SetText(m_prefix);
+ }
+
+ if(m_tagsHasBeenSet)
+ {
+ XmlNode tagsParentNode = parentNode.CreateChildElement("Tags");
+ for(const auto& item : m_tags)
+ {
+ XmlNode tagsNode = tagsParentNode.CreateChildElement("Tag");
+ item.AddToNode(tagsNode);
+ }
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AnalyticsConfiguration.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AnalyticsConfiguration.cpp
new file mode 100644
index 0000000000..0ca8b9fef4
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AnalyticsConfiguration.cpp
@@ -0,0 +1,92 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/AnalyticsConfiguration.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
+{
+
+AnalyticsConfiguration::AnalyticsConfiguration() :
+ m_idHasBeenSet(false),
+ m_filterHasBeenSet(false),
+ m_storageClassAnalysisHasBeenSet(false)
+{
+}
+
+AnalyticsConfiguration::AnalyticsConfiguration(const XmlNode& xmlNode) :
+ m_idHasBeenSet(false),
+ m_filterHasBeenSet(false),
+ m_storageClassAnalysisHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+AnalyticsConfiguration& AnalyticsConfiguration::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode idNode = resultNode.FirstChild("Id");
+ if(!idNode.IsNull())
+ {
+ m_id = Aws::Utils::Xml::DecodeEscapedXmlText(idNode.GetText());
+ m_idHasBeenSet = true;
+ }
+ XmlNode filterNode = resultNode.FirstChild("Filter");
+ if(!filterNode.IsNull())
+ {
+ m_filter = filterNode;
+ m_filterHasBeenSet = true;
+ }
+ XmlNode storageClassAnalysisNode = resultNode.FirstChild("StorageClassAnalysis");
+ if(!storageClassAnalysisNode.IsNull())
+ {
+ m_storageClassAnalysis = storageClassAnalysisNode;
+ m_storageClassAnalysisHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void AnalyticsConfiguration::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_idHasBeenSet)
+ {
+ XmlNode idNode = parentNode.CreateChildElement("Id");
+ idNode.SetText(m_id);
+ }
+
+ if(m_filterHasBeenSet)
+ {
+ XmlNode filterNode = parentNode.CreateChildElement("Filter");
+ m_filter.AddToNode(filterNode);
+ }
+
+ if(m_storageClassAnalysisHasBeenSet)
+ {
+ XmlNode storageClassAnalysisNode = parentNode.CreateChildElement("StorageClassAnalysis");
+ m_storageClassAnalysis.AddToNode(storageClassAnalysisNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AnalyticsExportDestination.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AnalyticsExportDestination.cpp
new file mode 100644
index 0000000000..0993bf28b9
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AnalyticsExportDestination.cpp
@@ -0,0 +1,64 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/AnalyticsExportDestination.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
+{
+
+AnalyticsExportDestination::AnalyticsExportDestination() :
+ m_s3BucketDestinationHasBeenSet(false)
+{
+}
+
+AnalyticsExportDestination::AnalyticsExportDestination(const XmlNode& xmlNode) :
+ m_s3BucketDestinationHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+AnalyticsExportDestination& AnalyticsExportDestination::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode s3BucketDestinationNode = resultNode.FirstChild("S3BucketDestination");
+ if(!s3BucketDestinationNode.IsNull())
+ {
+ m_s3BucketDestination = s3BucketDestinationNode;
+ m_s3BucketDestinationHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void AnalyticsExportDestination::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_s3BucketDestinationHasBeenSet)
+ {
+ XmlNode s3BucketDestinationNode = parentNode.CreateChildElement("S3BucketDestination");
+ m_s3BucketDestination.AddToNode(s3BucketDestinationNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AnalyticsFilter.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AnalyticsFilter.cpp
new file mode 100644
index 0000000000..f4428f1ad1
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AnalyticsFilter.cpp
@@ -0,0 +1,92 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/AnalyticsFilter.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
+{
+
+AnalyticsFilter::AnalyticsFilter() :
+ m_prefixHasBeenSet(false),
+ m_tagHasBeenSet(false),
+ m_andHasBeenSet(false)
+{
+}
+
+AnalyticsFilter::AnalyticsFilter(const XmlNode& xmlNode) :
+ m_prefixHasBeenSet(false),
+ m_tagHasBeenSet(false),
+ m_andHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+AnalyticsFilter& AnalyticsFilter::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode prefixNode = resultNode.FirstChild("Prefix");
+ if(!prefixNode.IsNull())
+ {
+ m_prefix = Aws::Utils::Xml::DecodeEscapedXmlText(prefixNode.GetText());
+ m_prefixHasBeenSet = true;
+ }
+ XmlNode tagNode = resultNode.FirstChild("Tag");
+ if(!tagNode.IsNull())
+ {
+ m_tag = tagNode;
+ m_tagHasBeenSet = true;
+ }
+ XmlNode andNode = resultNode.FirstChild("And");
+ if(!andNode.IsNull())
+ {
+ m_and = andNode;
+ m_andHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void AnalyticsFilter::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_prefixHasBeenSet)
+ {
+ XmlNode prefixNode = parentNode.CreateChildElement("Prefix");
+ prefixNode.SetText(m_prefix);
+ }
+
+ if(m_tagHasBeenSet)
+ {
+ XmlNode tagNode = parentNode.CreateChildElement("Tag");
+ m_tag.AddToNode(tagNode);
+ }
+
+ if(m_andHasBeenSet)
+ {
+ XmlNode andNode = parentNode.CreateChildElement("And");
+ m_and.AddToNode(andNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AnalyticsS3BucketDestination.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AnalyticsS3BucketDestination.cpp
new file mode 100644
index 0000000000..6722b20888
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AnalyticsS3BucketDestination.cpp
@@ -0,0 +1,108 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/AnalyticsS3BucketDestination.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
+{
+
+AnalyticsS3BucketDestination::AnalyticsS3BucketDestination() :
+ m_format(AnalyticsS3ExportFileFormat::NOT_SET),
+ m_formatHasBeenSet(false),
+ m_bucketAccountIdHasBeenSet(false),
+ m_bucketHasBeenSet(false),
+ m_prefixHasBeenSet(false)
+{
+}
+
+AnalyticsS3BucketDestination::AnalyticsS3BucketDestination(const XmlNode& xmlNode) :
+ m_format(AnalyticsS3ExportFileFormat::NOT_SET),
+ m_formatHasBeenSet(false),
+ m_bucketAccountIdHasBeenSet(false),
+ m_bucketHasBeenSet(false),
+ m_prefixHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+AnalyticsS3BucketDestination& AnalyticsS3BucketDestination::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode formatNode = resultNode.FirstChild("Format");
+ if(!formatNode.IsNull())
+ {
+ m_format = AnalyticsS3ExportFileFormatMapper::GetAnalyticsS3ExportFileFormatForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(formatNode.GetText()).c_str()).c_str());
+ m_formatHasBeenSet = true;
+ }
+ XmlNode bucketAccountIdNode = resultNode.FirstChild("BucketAccountId");
+ if(!bucketAccountIdNode.IsNull())
+ {
+ m_bucketAccountId = Aws::Utils::Xml::DecodeEscapedXmlText(bucketAccountIdNode.GetText());
+ m_bucketAccountIdHasBeenSet = true;
+ }
+ XmlNode bucketNode = resultNode.FirstChild("Bucket");
+ if(!bucketNode.IsNull())
+ {
+ m_bucket = Aws::Utils::Xml::DecodeEscapedXmlText(bucketNode.GetText());
+ m_bucketHasBeenSet = true;
+ }
+ XmlNode prefixNode = resultNode.FirstChild("Prefix");
+ if(!prefixNode.IsNull())
+ {
+ m_prefix = Aws::Utils::Xml::DecodeEscapedXmlText(prefixNode.GetText());
+ m_prefixHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void AnalyticsS3BucketDestination::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_formatHasBeenSet)
+ {
+ XmlNode formatNode = parentNode.CreateChildElement("Format");
+ formatNode.SetText(AnalyticsS3ExportFileFormatMapper::GetNameForAnalyticsS3ExportFileFormat(m_format));
+ }
+
+ if(m_bucketAccountIdHasBeenSet)
+ {
+ XmlNode bucketAccountIdNode = parentNode.CreateChildElement("BucketAccountId");
+ bucketAccountIdNode.SetText(m_bucketAccountId);
+ }
+
+ if(m_bucketHasBeenSet)
+ {
+ XmlNode bucketNode = parentNode.CreateChildElement("Bucket");
+ bucketNode.SetText(m_bucket);
+ }
+
+ if(m_prefixHasBeenSet)
+ {
+ XmlNode prefixNode = parentNode.CreateChildElement("Prefix");
+ prefixNode.SetText(m_prefix);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AnalyticsS3ExportFileFormat.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AnalyticsS3ExportFileFormat.cpp
new file mode 100644
index 0000000000..50160ef573
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/AnalyticsS3ExportFileFormat.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/AnalyticsS3ExportFileFormat.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 AnalyticsS3ExportFileFormatMapper
+ {
+
+ static const int CSV_HASH = HashingUtils::HashString("CSV");
+
+
+ AnalyticsS3ExportFileFormat GetAnalyticsS3ExportFileFormatForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == CSV_HASH)
+ {
+ return AnalyticsS3ExportFileFormat::CSV;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<AnalyticsS3ExportFileFormat>(hashCode);
+ }
+
+ return AnalyticsS3ExportFileFormat::NOT_SET;
+ }
+
+ Aws::String GetNameForAnalyticsS3ExportFileFormat(AnalyticsS3ExportFileFormat enumValue)
+ {
+ switch(enumValue)
+ {
+ case AnalyticsS3ExportFileFormat::CSV:
+ return "CSV";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace AnalyticsS3ExportFileFormatMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ArchiveStatus.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ArchiveStatus.cpp
new file mode 100644
index 0000000000..65ebaa5232
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ArchiveStatus.cpp
@@ -0,0 +1,70 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ArchiveStatus.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 ArchiveStatusMapper
+ {
+
+ static const int ARCHIVE_ACCESS_HASH = HashingUtils::HashString("ARCHIVE_ACCESS");
+ static const int DEEP_ARCHIVE_ACCESS_HASH = HashingUtils::HashString("DEEP_ARCHIVE_ACCESS");
+
+
+ ArchiveStatus GetArchiveStatusForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == ARCHIVE_ACCESS_HASH)
+ {
+ return ArchiveStatus::ARCHIVE_ACCESS;
+ }
+ else if (hashCode == DEEP_ARCHIVE_ACCESS_HASH)
+ {
+ return ArchiveStatus::DEEP_ARCHIVE_ACCESS;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<ArchiveStatus>(hashCode);
+ }
+
+ return ArchiveStatus::NOT_SET;
+ }
+
+ Aws::String GetNameForArchiveStatus(ArchiveStatus enumValue)
+ {
+ switch(enumValue)
+ {
+ case ArchiveStatus::ARCHIVE_ACCESS:
+ return "ARCHIVE_ACCESS";
+ case ArchiveStatus::DEEP_ARCHIVE_ACCESS:
+ return "DEEP_ARCHIVE_ACCESS";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace ArchiveStatusMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
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
new file mode 100644
index 0000000000..1ad9b5f310
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Bucket.cpp
@@ -0,0 +1,78 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/Bucket.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
+{
+
+Bucket::Bucket() :
+ m_nameHasBeenSet(false),
+ m_creationDateHasBeenSet(false)
+{
+}
+
+Bucket::Bucket(const XmlNode& xmlNode) :
+ m_nameHasBeenSet(false),
+ m_creationDateHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+Bucket& Bucket::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode nameNode = resultNode.FirstChild("Name");
+ if(!nameNode.IsNull())
+ {
+ m_name = Aws::Utils::Xml::DecodeEscapedXmlText(nameNode.GetText());
+ m_nameHasBeenSet = true;
+ }
+ 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_creationDateHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void Bucket::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_nameHasBeenSet)
+ {
+ XmlNode nameNode = parentNode.CreateChildElement("Name");
+ nameNode.SetText(m_name);
+ }
+
+ if(m_creationDateHasBeenSet)
+ {
+ XmlNode creationDateNode = parentNode.CreateChildElement("CreationDate");
+ creationDateNode.SetText(m_creationDate.ToGmtString(DateFormat::ISO_8601));
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/BucketAccelerateStatus.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/BucketAccelerateStatus.cpp
new file mode 100644
index 0000000000..8de8e5085d
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/BucketAccelerateStatus.cpp
@@ -0,0 +1,70 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/BucketAccelerateStatus.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 BucketAccelerateStatusMapper
+ {
+
+ static const int Enabled_HASH = HashingUtils::HashString("Enabled");
+ static const int Suspended_HASH = HashingUtils::HashString("Suspended");
+
+
+ BucketAccelerateStatus GetBucketAccelerateStatusForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == Enabled_HASH)
+ {
+ return BucketAccelerateStatus::Enabled;
+ }
+ else if (hashCode == Suspended_HASH)
+ {
+ return BucketAccelerateStatus::Suspended;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<BucketAccelerateStatus>(hashCode);
+ }
+
+ return BucketAccelerateStatus::NOT_SET;
+ }
+
+ Aws::String GetNameForBucketAccelerateStatus(BucketAccelerateStatus enumValue)
+ {
+ switch(enumValue)
+ {
+ case BucketAccelerateStatus::Enabled:
+ return "Enabled";
+ case BucketAccelerateStatus::Suspended:
+ return "Suspended";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace BucketAccelerateStatusMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/BucketCannedACL.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/BucketCannedACL.cpp
new file mode 100644
index 0000000000..d00069a78f
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/BucketCannedACL.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/BucketCannedACL.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 BucketCannedACLMapper
+ {
+
+ static const int private__HASH = HashingUtils::HashString("private");
+ static const int public_read_HASH = HashingUtils::HashString("public-read");
+ static const int public_read_write_HASH = HashingUtils::HashString("public-read-write");
+ static const int authenticated_read_HASH = HashingUtils::HashString("authenticated-read");
+
+
+ BucketCannedACL GetBucketCannedACLForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == private__HASH)
+ {
+ return BucketCannedACL::private_;
+ }
+ else if (hashCode == public_read_HASH)
+ {
+ return BucketCannedACL::public_read;
+ }
+ else if (hashCode == public_read_write_HASH)
+ {
+ return BucketCannedACL::public_read_write;
+ }
+ else if (hashCode == authenticated_read_HASH)
+ {
+ return BucketCannedACL::authenticated_read;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<BucketCannedACL>(hashCode);
+ }
+
+ return BucketCannedACL::NOT_SET;
+ }
+
+ Aws::String GetNameForBucketCannedACL(BucketCannedACL enumValue)
+ {
+ switch(enumValue)
+ {
+ case BucketCannedACL::private_:
+ return "private";
+ case BucketCannedACL::public_read:
+ return "public-read";
+ case BucketCannedACL::public_read_write:
+ return "public-read-write";
+ case BucketCannedACL::authenticated_read:
+ return "authenticated-read";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace BucketCannedACLMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/BucketLifecycleConfiguration.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/BucketLifecycleConfiguration.cpp
new file mode 100644
index 0000000000..ffec873f64
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/BucketLifecycleConfiguration.cpp
@@ -0,0 +1,73 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/BucketLifecycleConfiguration.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
+{
+
+BucketLifecycleConfiguration::BucketLifecycleConfiguration() :
+ m_rulesHasBeenSet(false)
+{
+}
+
+BucketLifecycleConfiguration::BucketLifecycleConfiguration(const XmlNode& xmlNode) :
+ m_rulesHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+BucketLifecycleConfiguration& BucketLifecycleConfiguration::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode rulesNode = resultNode.FirstChild("Rule");
+ if(!rulesNode.IsNull())
+ {
+ XmlNode ruleMember = rulesNode;
+ while(!ruleMember.IsNull())
+ {
+ m_rules.push_back(ruleMember);
+ ruleMember = ruleMember.NextNode("Rule");
+ }
+
+ m_rulesHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void BucketLifecycleConfiguration::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_rulesHasBeenSet)
+ {
+ for(const auto& item : m_rules)
+ {
+ XmlNode rulesNode = parentNode.CreateChildElement("Rule");
+ item.AddToNode(rulesNode);
+ }
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
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
new file mode 100644
index 0000000000..1bcdd2b471
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/BucketLocationConstraint.cpp
@@ -0,0 +1,238 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/BucketLocationConstraint.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 BucketLocationConstraintMapper
+ {
+
+ static const int af_south_1_HASH = HashingUtils::HashString("af-south-1");
+ static const int ap_east_1_HASH = HashingUtils::HashString("ap-east-1");
+ static const int ap_northeast_1_HASH = HashingUtils::HashString("ap-northeast-1");
+ static const int ap_northeast_2_HASH = HashingUtils::HashString("ap-northeast-2");
+ static const int ap_northeast_3_HASH = HashingUtils::HashString("ap-northeast-3");
+ 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 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");
+ static const int EU_HASH = HashingUtils::HashString("EU");
+ static const int eu_central_1_HASH = HashingUtils::HashString("eu-central-1");
+ static const int eu_north_1_HASH = HashingUtils::HashString("eu-north-1");
+ static const int eu_south_1_HASH = HashingUtils::HashString("eu-south-1");
+ static const int eu_west_1_HASH = HashingUtils::HashString("eu-west-1");
+ static const int eu_west_2_HASH = HashingUtils::HashString("eu-west-2");
+ static const int eu_west_3_HASH = HashingUtils::HashString("eu-west-3");
+ static const int me_south_1_HASH = HashingUtils::HashString("me-south-1");
+ static const int sa_east_1_HASH = HashingUtils::HashString("sa-east-1");
+ static const int us_east_2_HASH = HashingUtils::HashString("us-east-2");
+ static const int us_gov_east_1_HASH = HashingUtils::HashString("us-gov-east-1");
+ 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_east_1_HASH = HashingUtils::HashString("us-east-1");
+
+
+ BucketLocationConstraint GetBucketLocationConstraintForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == af_south_1_HASH)
+ {
+ return BucketLocationConstraint::af_south_1;
+ }
+ else if (hashCode == ap_east_1_HASH)
+ {
+ return BucketLocationConstraint::ap_east_1;
+ }
+ else if (hashCode == ap_northeast_1_HASH)
+ {
+ return BucketLocationConstraint::ap_northeast_1;
+ }
+ else if (hashCode == ap_northeast_2_HASH)
+ {
+ return BucketLocationConstraint::ap_northeast_2;
+ }
+ else if (hashCode == ap_northeast_3_HASH)
+ {
+ return BucketLocationConstraint::ap_northeast_3;
+ }
+ else if (hashCode == ap_south_1_HASH)
+ {
+ return BucketLocationConstraint::ap_south_1;
+ }
+ else if (hashCode == ap_southeast_1_HASH)
+ {
+ return BucketLocationConstraint::ap_southeast_1;
+ }
+ else if (hashCode == ap_southeast_2_HASH)
+ {
+ return BucketLocationConstraint::ap_southeast_2;
+ }
+ else if (hashCode == ca_central_1_HASH)
+ {
+ return BucketLocationConstraint::ca_central_1;
+ }
+ else if (hashCode == cn_north_1_HASH)
+ {
+ return BucketLocationConstraint::cn_north_1;
+ }
+ else if (hashCode == cn_northwest_1_HASH)
+ {
+ return BucketLocationConstraint::cn_northwest_1;
+ }
+ else if (hashCode == EU_HASH)
+ {
+ return BucketLocationConstraint::EU;
+ }
+ else if (hashCode == eu_central_1_HASH)
+ {
+ return BucketLocationConstraint::eu_central_1;
+ }
+ else if (hashCode == eu_north_1_HASH)
+ {
+ return BucketLocationConstraint::eu_north_1;
+ }
+ else if (hashCode == eu_south_1_HASH)
+ {
+ return BucketLocationConstraint::eu_south_1;
+ }
+ else if (hashCode == eu_west_1_HASH)
+ {
+ return BucketLocationConstraint::eu_west_1;
+ }
+ else if (hashCode == eu_west_2_HASH)
+ {
+ return BucketLocationConstraint::eu_west_2;
+ }
+ else if (hashCode == eu_west_3_HASH)
+ {
+ return BucketLocationConstraint::eu_west_3;
+ }
+ else if (hashCode == me_south_1_HASH)
+ {
+ return BucketLocationConstraint::me_south_1;
+ }
+ else if (hashCode == sa_east_1_HASH)
+ {
+ return BucketLocationConstraint::sa_east_1;
+ }
+ else if (hashCode == us_east_2_HASH)
+ {
+ return BucketLocationConstraint::us_east_2;
+ }
+ else if (hashCode == us_gov_east_1_HASH)
+ {
+ return BucketLocationConstraint::us_gov_east_1;
+ }
+ else if (hashCode == us_gov_west_1_HASH)
+ {
+ return BucketLocationConstraint::us_gov_west_1;
+ }
+ else if (hashCode == us_west_1_HASH)
+ {
+ return BucketLocationConstraint::us_west_1;
+ }
+ else if (hashCode == us_west_2_HASH)
+ {
+ return BucketLocationConstraint::us_west_2;
+ }
+ else if (hashCode == us_east_1_HASH)
+ {
+ return BucketLocationConstraint::us_east_1;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<BucketLocationConstraint>(hashCode);
+ }
+
+ return BucketLocationConstraint::NOT_SET;
+ }
+
+ Aws::String GetNameForBucketLocationConstraint(BucketLocationConstraint enumValue)
+ {
+ switch(enumValue)
+ {
+ case BucketLocationConstraint::af_south_1:
+ return "af-south-1";
+ case BucketLocationConstraint::ap_east_1:
+ return "ap-east-1";
+ case BucketLocationConstraint::ap_northeast_1:
+ return "ap-northeast-1";
+ case BucketLocationConstraint::ap_northeast_2:
+ return "ap-northeast-2";
+ case BucketLocationConstraint::ap_northeast_3:
+ return "ap-northeast-3";
+ case BucketLocationConstraint::ap_south_1:
+ return "ap-south-1";
+ case BucketLocationConstraint::ap_southeast_1:
+ return "ap-southeast-1";
+ case BucketLocationConstraint::ap_southeast_2:
+ return "ap-southeast-2";
+ case BucketLocationConstraint::ca_central_1:
+ return "ca-central-1";
+ case BucketLocationConstraint::cn_north_1:
+ return "cn-north-1";
+ case BucketLocationConstraint::cn_northwest_1:
+ return "cn-northwest-1";
+ case BucketLocationConstraint::EU:
+ return "EU";
+ case BucketLocationConstraint::eu_central_1:
+ return "eu-central-1";
+ case BucketLocationConstraint::eu_north_1:
+ return "eu-north-1";
+ case BucketLocationConstraint::eu_south_1:
+ return "eu-south-1";
+ case BucketLocationConstraint::eu_west_1:
+ return "eu-west-1";
+ case BucketLocationConstraint::eu_west_2:
+ return "eu-west-2";
+ case BucketLocationConstraint::eu_west_3:
+ return "eu-west-3";
+ case BucketLocationConstraint::me_south_1:
+ return "me-south-1";
+ case BucketLocationConstraint::sa_east_1:
+ return "sa-east-1";
+ case BucketLocationConstraint::us_east_2:
+ return "us-east-2";
+ case BucketLocationConstraint::us_gov_east_1:
+ return "us-gov-east-1";
+ case BucketLocationConstraint::us_gov_west_1:
+ return "us-gov-west-1";
+ case BucketLocationConstraint::us_west_1:
+ return "us-west-1";
+ case BucketLocationConstraint::us_west_2:
+ return "us-west-2";
+ case BucketLocationConstraint::us_east_1:
+ return "us-east-1";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace BucketLocationConstraintMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/BucketLoggingStatus.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/BucketLoggingStatus.cpp
new file mode 100644
index 0000000000..fba5c076d7
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/BucketLoggingStatus.cpp
@@ -0,0 +1,64 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/BucketLoggingStatus.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
+{
+
+BucketLoggingStatus::BucketLoggingStatus() :
+ m_loggingEnabledHasBeenSet(false)
+{
+}
+
+BucketLoggingStatus::BucketLoggingStatus(const XmlNode& xmlNode) :
+ m_loggingEnabledHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+BucketLoggingStatus& BucketLoggingStatus::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode loggingEnabledNode = resultNode.FirstChild("LoggingEnabled");
+ if(!loggingEnabledNode.IsNull())
+ {
+ m_loggingEnabled = loggingEnabledNode;
+ m_loggingEnabledHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void BucketLoggingStatus::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_loggingEnabledHasBeenSet)
+ {
+ XmlNode loggingEnabledNode = parentNode.CreateChildElement("LoggingEnabled");
+ m_loggingEnabled.AddToNode(loggingEnabledNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/BucketLogsPermission.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/BucketLogsPermission.cpp
new file mode 100644
index 0000000000..f419f46bdc
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/BucketLogsPermission.cpp
@@ -0,0 +1,77 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/BucketLogsPermission.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 BucketLogsPermissionMapper
+ {
+
+ static const int FULL_CONTROL_HASH = HashingUtils::HashString("FULL_CONTROL");
+ static const int READ_HASH = HashingUtils::HashString("READ");
+ static const int WRITE_HASH = HashingUtils::HashString("WRITE");
+
+
+ BucketLogsPermission GetBucketLogsPermissionForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == FULL_CONTROL_HASH)
+ {
+ return BucketLogsPermission::FULL_CONTROL;
+ }
+ else if (hashCode == READ_HASH)
+ {
+ return BucketLogsPermission::READ;
+ }
+ else if (hashCode == WRITE_HASH)
+ {
+ return BucketLogsPermission::WRITE;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<BucketLogsPermission>(hashCode);
+ }
+
+ return BucketLogsPermission::NOT_SET;
+ }
+
+ Aws::String GetNameForBucketLogsPermission(BucketLogsPermission enumValue)
+ {
+ switch(enumValue)
+ {
+ case BucketLogsPermission::FULL_CONTROL:
+ return "FULL_CONTROL";
+ case BucketLogsPermission::READ:
+ return "READ";
+ case BucketLogsPermission::WRITE:
+ return "WRITE";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace BucketLogsPermissionMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/BucketVersioningStatus.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/BucketVersioningStatus.cpp
new file mode 100644
index 0000000000..d561ddb8a9
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/BucketVersioningStatus.cpp
@@ -0,0 +1,70 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/BucketVersioningStatus.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 BucketVersioningStatusMapper
+ {
+
+ static const int Enabled_HASH = HashingUtils::HashString("Enabled");
+ static const int Suspended_HASH = HashingUtils::HashString("Suspended");
+
+
+ BucketVersioningStatus GetBucketVersioningStatusForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == Enabled_HASH)
+ {
+ return BucketVersioningStatus::Enabled;
+ }
+ else if (hashCode == Suspended_HASH)
+ {
+ return BucketVersioningStatus::Suspended;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<BucketVersioningStatus>(hashCode);
+ }
+
+ return BucketVersioningStatus::NOT_SET;
+ }
+
+ Aws::String GetNameForBucketVersioningStatus(BucketVersioningStatus enumValue)
+ {
+ switch(enumValue)
+ {
+ case BucketVersioningStatus::Enabled:
+ return "Enabled";
+ case BucketVersioningStatus::Suspended:
+ return "Suspended";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace BucketVersioningStatusMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CORSConfiguration.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CORSConfiguration.cpp
new file mode 100644
index 0000000000..e9adaac563
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CORSConfiguration.cpp
@@ -0,0 +1,73 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/CORSConfiguration.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
+{
+
+CORSConfiguration::CORSConfiguration() :
+ m_cORSRulesHasBeenSet(false)
+{
+}
+
+CORSConfiguration::CORSConfiguration(const XmlNode& xmlNode) :
+ m_cORSRulesHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+CORSConfiguration& CORSConfiguration::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode cORSRulesNode = resultNode.FirstChild("CORSRule");
+ if(!cORSRulesNode.IsNull())
+ {
+ XmlNode cORSRuleMember = cORSRulesNode;
+ while(!cORSRuleMember.IsNull())
+ {
+ m_cORSRules.push_back(cORSRuleMember);
+ cORSRuleMember = cORSRuleMember.NextNode("CORSRule");
+ }
+
+ m_cORSRulesHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void CORSConfiguration::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_cORSRulesHasBeenSet)
+ {
+ for(const auto& item : m_cORSRules)
+ {
+ XmlNode cORSRulesNode = parentNode.CreateChildElement("CORSRule");
+ item.AddToNode(cORSRulesNode);
+ }
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CORSRule.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CORSRule.cpp
new file mode 100644
index 0000000000..dd1b40db2f
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CORSRule.cpp
@@ -0,0 +1,160 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/CORSRule.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
+{
+
+CORSRule::CORSRule() :
+ m_allowedHeadersHasBeenSet(false),
+ m_allowedMethodsHasBeenSet(false),
+ m_allowedOriginsHasBeenSet(false),
+ m_exposeHeadersHasBeenSet(false),
+ m_maxAgeSeconds(0),
+ m_maxAgeSecondsHasBeenSet(false)
+{
+}
+
+CORSRule::CORSRule(const XmlNode& xmlNode) :
+ m_allowedHeadersHasBeenSet(false),
+ m_allowedMethodsHasBeenSet(false),
+ m_allowedOriginsHasBeenSet(false),
+ m_exposeHeadersHasBeenSet(false),
+ m_maxAgeSeconds(0),
+ m_maxAgeSecondsHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+CORSRule& CORSRule::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode allowedHeadersNode = resultNode.FirstChild("AllowedHeader");
+ if(!allowedHeadersNode.IsNull())
+ {
+ XmlNode allowedHeaderMember = allowedHeadersNode;
+ while(!allowedHeaderMember.IsNull())
+ {
+ m_allowedHeaders.push_back(allowedHeaderMember.GetText());
+ allowedHeaderMember = allowedHeaderMember.NextNode("AllowedHeader");
+ }
+
+ m_allowedHeadersHasBeenSet = true;
+ }
+ XmlNode allowedMethodsNode = resultNode.FirstChild("AllowedMethod");
+ if(!allowedMethodsNode.IsNull())
+ {
+ XmlNode allowedMethodMember = allowedMethodsNode;
+ while(!allowedMethodMember.IsNull())
+ {
+ m_allowedMethods.push_back(allowedMethodMember.GetText());
+ allowedMethodMember = allowedMethodMember.NextNode("AllowedMethod");
+ }
+
+ m_allowedMethodsHasBeenSet = true;
+ }
+ XmlNode allowedOriginsNode = resultNode.FirstChild("AllowedOrigin");
+ if(!allowedOriginsNode.IsNull())
+ {
+ XmlNode allowedOriginMember = allowedOriginsNode;
+ while(!allowedOriginMember.IsNull())
+ {
+ m_allowedOrigins.push_back(allowedOriginMember.GetText());
+ allowedOriginMember = allowedOriginMember.NextNode("AllowedOrigin");
+ }
+
+ m_allowedOriginsHasBeenSet = true;
+ }
+ XmlNode exposeHeadersNode = resultNode.FirstChild("ExposeHeader");
+ if(!exposeHeadersNode.IsNull())
+ {
+ XmlNode exposeHeaderMember = exposeHeadersNode;
+ while(!exposeHeaderMember.IsNull())
+ {
+ m_exposeHeaders.push_back(exposeHeaderMember.GetText());
+ exposeHeaderMember = exposeHeaderMember.NextNode("ExposeHeader");
+ }
+
+ m_exposeHeadersHasBeenSet = true;
+ }
+ XmlNode maxAgeSecondsNode = resultNode.FirstChild("MaxAgeSeconds");
+ if(!maxAgeSecondsNode.IsNull())
+ {
+ m_maxAgeSeconds = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(maxAgeSecondsNode.GetText()).c_str()).c_str());
+ m_maxAgeSecondsHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void CORSRule::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_allowedHeadersHasBeenSet)
+ {
+ for(const auto& item : m_allowedHeaders)
+ {
+ XmlNode allowedHeadersNode = parentNode.CreateChildElement("AllowedHeader");
+ allowedHeadersNode.SetText(item);
+ }
+ }
+
+ if(m_allowedMethodsHasBeenSet)
+ {
+ for(const auto& item : m_allowedMethods)
+ {
+ XmlNode allowedMethodsNode = parentNode.CreateChildElement("AllowedMethod");
+ allowedMethodsNode.SetText(item);
+ }
+ }
+
+ if(m_allowedOriginsHasBeenSet)
+ {
+ for(const auto& item : m_allowedOrigins)
+ {
+ XmlNode allowedOriginsNode = parentNode.CreateChildElement("AllowedOrigin");
+ allowedOriginsNode.SetText(item);
+ }
+ }
+
+ if(m_exposeHeadersHasBeenSet)
+ {
+ for(const auto& item : m_exposeHeaders)
+ {
+ XmlNode exposeHeadersNode = parentNode.CreateChildElement("ExposeHeader");
+ exposeHeadersNode.SetText(item);
+ }
+ }
+
+ if(m_maxAgeSecondsHasBeenSet)
+ {
+ XmlNode maxAgeSecondsNode = parentNode.CreateChildElement("MaxAgeSeconds");
+ ss << m_maxAgeSeconds;
+ maxAgeSecondsNode.SetText(ss.str());
+ ss.str("");
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CSVInput.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CSVInput.cpp
new file mode 100644
index 0000000000..fb0fe5b4c8
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CSVInput.cpp
@@ -0,0 +1,154 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/CSVInput.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
+{
+
+CSVInput::CSVInput() :
+ m_fileHeaderInfo(FileHeaderInfo::NOT_SET),
+ m_fileHeaderInfoHasBeenSet(false),
+ m_commentsHasBeenSet(false),
+ m_quoteEscapeCharacterHasBeenSet(false),
+ m_recordDelimiterHasBeenSet(false),
+ m_fieldDelimiterHasBeenSet(false),
+ m_quoteCharacterHasBeenSet(false),
+ m_allowQuotedRecordDelimiter(false),
+ m_allowQuotedRecordDelimiterHasBeenSet(false)
+{
+}
+
+CSVInput::CSVInput(const XmlNode& xmlNode) :
+ m_fileHeaderInfo(FileHeaderInfo::NOT_SET),
+ m_fileHeaderInfoHasBeenSet(false),
+ m_commentsHasBeenSet(false),
+ m_quoteEscapeCharacterHasBeenSet(false),
+ m_recordDelimiterHasBeenSet(false),
+ m_fieldDelimiterHasBeenSet(false),
+ m_quoteCharacterHasBeenSet(false),
+ m_allowQuotedRecordDelimiter(false),
+ m_allowQuotedRecordDelimiterHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+CSVInput& CSVInput::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode fileHeaderInfoNode = resultNode.FirstChild("FileHeaderInfo");
+ if(!fileHeaderInfoNode.IsNull())
+ {
+ m_fileHeaderInfo = FileHeaderInfoMapper::GetFileHeaderInfoForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(fileHeaderInfoNode.GetText()).c_str()).c_str());
+ m_fileHeaderInfoHasBeenSet = true;
+ }
+ XmlNode commentsNode = resultNode.FirstChild("Comments");
+ if(!commentsNode.IsNull())
+ {
+ m_comments = Aws::Utils::Xml::DecodeEscapedXmlText(commentsNode.GetText());
+ m_commentsHasBeenSet = true;
+ }
+ XmlNode quoteEscapeCharacterNode = resultNode.FirstChild("QuoteEscapeCharacter");
+ if(!quoteEscapeCharacterNode.IsNull())
+ {
+ m_quoteEscapeCharacter = Aws::Utils::Xml::DecodeEscapedXmlText(quoteEscapeCharacterNode.GetText());
+ m_quoteEscapeCharacterHasBeenSet = true;
+ }
+ XmlNode recordDelimiterNode = resultNode.FirstChild("RecordDelimiter");
+ if(!recordDelimiterNode.IsNull())
+ {
+ m_recordDelimiter = Aws::Utils::Xml::DecodeEscapedXmlText(recordDelimiterNode.GetText());
+ m_recordDelimiterHasBeenSet = true;
+ }
+ XmlNode fieldDelimiterNode = resultNode.FirstChild("FieldDelimiter");
+ if(!fieldDelimiterNode.IsNull())
+ {
+ m_fieldDelimiter = Aws::Utils::Xml::DecodeEscapedXmlText(fieldDelimiterNode.GetText());
+ m_fieldDelimiterHasBeenSet = true;
+ }
+ XmlNode quoteCharacterNode = resultNode.FirstChild("QuoteCharacter");
+ if(!quoteCharacterNode.IsNull())
+ {
+ m_quoteCharacter = Aws::Utils::Xml::DecodeEscapedXmlText(quoteCharacterNode.GetText());
+ m_quoteCharacterHasBeenSet = true;
+ }
+ XmlNode allowQuotedRecordDelimiterNode = resultNode.FirstChild("AllowQuotedRecordDelimiter");
+ if(!allowQuotedRecordDelimiterNode.IsNull())
+ {
+ m_allowQuotedRecordDelimiter = StringUtils::ConvertToBool(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(allowQuotedRecordDelimiterNode.GetText()).c_str()).c_str());
+ m_allowQuotedRecordDelimiterHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void CSVInput::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_fileHeaderInfoHasBeenSet)
+ {
+ XmlNode fileHeaderInfoNode = parentNode.CreateChildElement("FileHeaderInfo");
+ fileHeaderInfoNode.SetText(FileHeaderInfoMapper::GetNameForFileHeaderInfo(m_fileHeaderInfo));
+ }
+
+ if(m_commentsHasBeenSet)
+ {
+ XmlNode commentsNode = parentNode.CreateChildElement("Comments");
+ commentsNode.SetText(m_comments);
+ }
+
+ if(m_quoteEscapeCharacterHasBeenSet)
+ {
+ XmlNode quoteEscapeCharacterNode = parentNode.CreateChildElement("QuoteEscapeCharacter");
+ quoteEscapeCharacterNode.SetText(m_quoteEscapeCharacter);
+ }
+
+ if(m_recordDelimiterHasBeenSet)
+ {
+ XmlNode recordDelimiterNode = parentNode.CreateChildElement("RecordDelimiter");
+ recordDelimiterNode.SetText(m_recordDelimiter);
+ }
+
+ if(m_fieldDelimiterHasBeenSet)
+ {
+ XmlNode fieldDelimiterNode = parentNode.CreateChildElement("FieldDelimiter");
+ fieldDelimiterNode.SetText(m_fieldDelimiter);
+ }
+
+ if(m_quoteCharacterHasBeenSet)
+ {
+ XmlNode quoteCharacterNode = parentNode.CreateChildElement("QuoteCharacter");
+ quoteCharacterNode.SetText(m_quoteCharacter);
+ }
+
+ if(m_allowQuotedRecordDelimiterHasBeenSet)
+ {
+ XmlNode allowQuotedRecordDelimiterNode = parentNode.CreateChildElement("AllowQuotedRecordDelimiter");
+ ss << std::boolalpha << m_allowQuotedRecordDelimiter;
+ allowQuotedRecordDelimiterNode.SetText(ss.str());
+ ss.str("");
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CSVOutput.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CSVOutput.cpp
new file mode 100644
index 0000000000..e48e8184f2
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CSVOutput.cpp
@@ -0,0 +1,122 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/CSVOutput.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
+{
+
+CSVOutput::CSVOutput() :
+ m_quoteFields(QuoteFields::NOT_SET),
+ m_quoteFieldsHasBeenSet(false),
+ m_quoteEscapeCharacterHasBeenSet(false),
+ m_recordDelimiterHasBeenSet(false),
+ m_fieldDelimiterHasBeenSet(false),
+ m_quoteCharacterHasBeenSet(false)
+{
+}
+
+CSVOutput::CSVOutput(const XmlNode& xmlNode) :
+ m_quoteFields(QuoteFields::NOT_SET),
+ m_quoteFieldsHasBeenSet(false),
+ m_quoteEscapeCharacterHasBeenSet(false),
+ m_recordDelimiterHasBeenSet(false),
+ m_fieldDelimiterHasBeenSet(false),
+ m_quoteCharacterHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+CSVOutput& CSVOutput::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode quoteFieldsNode = resultNode.FirstChild("QuoteFields");
+ if(!quoteFieldsNode.IsNull())
+ {
+ m_quoteFields = QuoteFieldsMapper::GetQuoteFieldsForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(quoteFieldsNode.GetText()).c_str()).c_str());
+ m_quoteFieldsHasBeenSet = true;
+ }
+ XmlNode quoteEscapeCharacterNode = resultNode.FirstChild("QuoteEscapeCharacter");
+ if(!quoteEscapeCharacterNode.IsNull())
+ {
+ m_quoteEscapeCharacter = Aws::Utils::Xml::DecodeEscapedXmlText(quoteEscapeCharacterNode.GetText());
+ m_quoteEscapeCharacterHasBeenSet = true;
+ }
+ XmlNode recordDelimiterNode = resultNode.FirstChild("RecordDelimiter");
+ if(!recordDelimiterNode.IsNull())
+ {
+ m_recordDelimiter = Aws::Utils::Xml::DecodeEscapedXmlText(recordDelimiterNode.GetText());
+ m_recordDelimiterHasBeenSet = true;
+ }
+ XmlNode fieldDelimiterNode = resultNode.FirstChild("FieldDelimiter");
+ if(!fieldDelimiterNode.IsNull())
+ {
+ m_fieldDelimiter = Aws::Utils::Xml::DecodeEscapedXmlText(fieldDelimiterNode.GetText());
+ m_fieldDelimiterHasBeenSet = true;
+ }
+ XmlNode quoteCharacterNode = resultNode.FirstChild("QuoteCharacter");
+ if(!quoteCharacterNode.IsNull())
+ {
+ m_quoteCharacter = Aws::Utils::Xml::DecodeEscapedXmlText(quoteCharacterNode.GetText());
+ m_quoteCharacterHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void CSVOutput::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_quoteFieldsHasBeenSet)
+ {
+ XmlNode quoteFieldsNode = parentNode.CreateChildElement("QuoteFields");
+ quoteFieldsNode.SetText(QuoteFieldsMapper::GetNameForQuoteFields(m_quoteFields));
+ }
+
+ if(m_quoteEscapeCharacterHasBeenSet)
+ {
+ XmlNode quoteEscapeCharacterNode = parentNode.CreateChildElement("QuoteEscapeCharacter");
+ quoteEscapeCharacterNode.SetText(m_quoteEscapeCharacter);
+ }
+
+ if(m_recordDelimiterHasBeenSet)
+ {
+ XmlNode recordDelimiterNode = parentNode.CreateChildElement("RecordDelimiter");
+ recordDelimiterNode.SetText(m_recordDelimiter);
+ }
+
+ if(m_fieldDelimiterHasBeenSet)
+ {
+ XmlNode fieldDelimiterNode = parentNode.CreateChildElement("FieldDelimiter");
+ fieldDelimiterNode.SetText(m_fieldDelimiter);
+ }
+
+ if(m_quoteCharacterHasBeenSet)
+ {
+ XmlNode quoteCharacterNode = parentNode.CreateChildElement("QuoteCharacter");
+ quoteCharacterNode.SetText(m_quoteCharacter);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CloudFunctionConfiguration.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CloudFunctionConfiguration.cpp
new file mode 100644
index 0000000000..66656947f8
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CloudFunctionConfiguration.cpp
@@ -0,0 +1,115 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/CloudFunctionConfiguration.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
+{
+
+CloudFunctionConfiguration::CloudFunctionConfiguration() :
+ m_idHasBeenSet(false),
+ m_eventsHasBeenSet(false),
+ m_cloudFunctionHasBeenSet(false),
+ m_invocationRoleHasBeenSet(false)
+{
+}
+
+CloudFunctionConfiguration::CloudFunctionConfiguration(const XmlNode& xmlNode) :
+ m_idHasBeenSet(false),
+ m_eventsHasBeenSet(false),
+ m_cloudFunctionHasBeenSet(false),
+ m_invocationRoleHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+CloudFunctionConfiguration& CloudFunctionConfiguration::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode idNode = resultNode.FirstChild("Id");
+ if(!idNode.IsNull())
+ {
+ m_id = Aws::Utils::Xml::DecodeEscapedXmlText(idNode.GetText());
+ m_idHasBeenSet = true;
+ }
+ XmlNode eventsNode = resultNode.FirstChild("Event");
+ if(!eventsNode.IsNull())
+ {
+ XmlNode eventMember = eventsNode;
+ while(!eventMember.IsNull())
+ {
+ m_events.push_back(EventMapper::GetEventForName(StringUtils::Trim(eventMember.GetText().c_str())));
+ eventMember = eventMember.NextNode("Event");
+ }
+
+ m_eventsHasBeenSet = true;
+ }
+ XmlNode cloudFunctionNode = resultNode.FirstChild("CloudFunction");
+ if(!cloudFunctionNode.IsNull())
+ {
+ m_cloudFunction = Aws::Utils::Xml::DecodeEscapedXmlText(cloudFunctionNode.GetText());
+ m_cloudFunctionHasBeenSet = true;
+ }
+ XmlNode invocationRoleNode = resultNode.FirstChild("InvocationRole");
+ if(!invocationRoleNode.IsNull())
+ {
+ m_invocationRole = Aws::Utils::Xml::DecodeEscapedXmlText(invocationRoleNode.GetText());
+ m_invocationRoleHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void CloudFunctionConfiguration::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_idHasBeenSet)
+ {
+ XmlNode idNode = parentNode.CreateChildElement("Id");
+ idNode.SetText(m_id);
+ }
+
+ if(m_eventsHasBeenSet)
+ {
+ for(const auto& item : m_events)
+ {
+ XmlNode eventsNode = parentNode.CreateChildElement("Event");
+ eventsNode.SetText(EventMapper::GetNameForEvent(item));
+ }
+ }
+
+ if(m_cloudFunctionHasBeenSet)
+ {
+ XmlNode cloudFunctionNode = parentNode.CreateChildElement("CloudFunction");
+ cloudFunctionNode.SetText(m_cloudFunction);
+ }
+
+ if(m_invocationRoleHasBeenSet)
+ {
+ XmlNode invocationRoleNode = parentNode.CreateChildElement("InvocationRole");
+ invocationRoleNode.SetText(m_invocationRole);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CommonPrefix.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CommonPrefix.cpp
new file mode 100644
index 0000000000..bef4ebd40c
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CommonPrefix.cpp
@@ -0,0 +1,64 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/CommonPrefix.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
+{
+
+CommonPrefix::CommonPrefix() :
+ m_prefixHasBeenSet(false)
+{
+}
+
+CommonPrefix::CommonPrefix(const XmlNode& xmlNode) :
+ m_prefixHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+CommonPrefix& CommonPrefix::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode prefixNode = resultNode.FirstChild("Prefix");
+ if(!prefixNode.IsNull())
+ {
+ m_prefix = Aws::Utils::Xml::DecodeEscapedXmlText(prefixNode.GetText());
+ m_prefixHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void CommonPrefix::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_prefixHasBeenSet)
+ {
+ XmlNode prefixNode = parentNode.CreateChildElement("Prefix");
+ prefixNode.SetText(m_prefix);
+ }
+
+}
+
+} // 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
new file mode 100644
index 0000000000..8c058ba507
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CompleteMultipartUploadRequest.cpp
@@ -0,0 +1,93 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/CompleteMultipartUploadRequest.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;
+
+CompleteMultipartUploadRequest::CompleteMultipartUploadRequest() :
+ m_bucketHasBeenSet(false),
+ m_keyHasBeenSet(false),
+ m_multipartUploadHasBeenSet(false),
+ m_uploadIdHasBeenSet(false),
+ m_requestPayer(RequestPayer::NOT_SET),
+ m_requestPayerHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String CompleteMultipartUploadRequest::SerializePayload() const
+{
+ XmlDocument payloadDoc = XmlDocument::CreateWithRootNode("CompleteMultipartUpload");
+
+ XmlNode parentNode = payloadDoc.GetRootElement();
+ parentNode.SetAttributeValue("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/");
+
+ m_multipartUpload.AddToNode(parentNode);
+ if(parentNode.HasChildren())
+ {
+ return payloadDoc.ConvertToString();
+ }
+
+ return {};
+}
+
+void CompleteMultipartUploadRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ if(m_uploadIdHasBeenSet)
+ {
+ ss << m_uploadId;
+ uri.AddQueryStringParameter("uploadId", 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 CompleteMultipartUploadRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ 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("");
+ }
+
+ return headers;
+}
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
new file mode 100644
index 0000000000..da3f191993
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CompleteMultipartUploadResult.cpp
@@ -0,0 +1,101 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/CompleteMultipartUploadResult.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;
+
+CompleteMultipartUploadResult::CompleteMultipartUploadResult() :
+ m_serverSideEncryption(ServerSideEncryption::NOT_SET),
+ m_bucketKeyEnabled(false),
+ m_requestCharged(RequestCharged::NOT_SET)
+{
+}
+
+CompleteMultipartUploadResult::CompleteMultipartUploadResult(const Aws::AmazonWebServiceResult<XmlDocument>& result) :
+ m_serverSideEncryption(ServerSideEncryption::NOT_SET),
+ m_bucketKeyEnabled(false),
+ m_requestCharged(RequestCharged::NOT_SET)
+{
+ *this = result;
+}
+
+CompleteMultipartUploadResult& CompleteMultipartUploadResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode locationNode = resultNode.FirstChild("Location");
+ if(!locationNode.IsNull())
+ {
+ m_location = Aws::Utils::Xml::DecodeEscapedXmlText(locationNode.GetText());
+ }
+ XmlNode bucketNode = resultNode.FirstChild("Bucket");
+ if(!bucketNode.IsNull())
+ {
+ m_bucket = Aws::Utils::Xml::DecodeEscapedXmlText(bucketNode.GetText());
+ }
+ XmlNode keyNode = resultNode.FirstChild("Key");
+ if(!keyNode.IsNull())
+ {
+ m_key = Aws::Utils::Xml::DecodeEscapedXmlText(keyNode.GetText());
+ }
+ XmlNode eTagNode = resultNode.FirstChild("ETag");
+ if(!eTagNode.IsNull())
+ {
+ m_eTag = Aws::Utils::Xml::DecodeEscapedXmlText(eTagNode.GetText());
+ }
+ }
+
+ const auto& headers = result.GetHeaderValueCollection();
+ const auto& expirationIter = headers.find("x-amz-expiration");
+ if(expirationIter != headers.end())
+ {
+ m_expiration = expirationIter->second;
+ }
+
+ const auto& serverSideEncryptionIter = headers.find("x-amz-server-side-encryption");
+ if(serverSideEncryptionIter != headers.end())
+ {
+ m_serverSideEncryption = ServerSideEncryptionMapper::GetServerSideEncryptionForName(serverSideEncryptionIter->second);
+ }
+
+ const auto& versionIdIter = headers.find("x-amz-version-id");
+ if(versionIdIter != headers.end())
+ {
+ m_versionId = versionIdIter->second;
+ }
+
+ const auto& sSEKMSKeyIdIter = headers.find("x-amz-server-side-encryption-aws-kms-key-id");
+ if(sSEKMSKeyIdIter != headers.end())
+ {
+ m_sSEKMSKeyId = sSEKMSKeyIdIter->second;
+ }
+
+ const auto& bucketKeyEnabledIter = headers.find("x-amz-server-side-encryption-bucket-key-enabled");
+ if(bucketKeyEnabledIter != headers.end())
+ {
+ m_bucketKeyEnabled = StringUtils::ConvertToBool(bucketKeyEnabledIter->second.c_str());
+ }
+
+ 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/CompletedMultipartUpload.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CompletedMultipartUpload.cpp
new file mode 100644
index 0000000000..350f482fa7
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CompletedMultipartUpload.cpp
@@ -0,0 +1,73 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/CompletedMultipartUpload.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
+{
+
+CompletedMultipartUpload::CompletedMultipartUpload() :
+ m_partsHasBeenSet(false)
+{
+}
+
+CompletedMultipartUpload::CompletedMultipartUpload(const XmlNode& xmlNode) :
+ m_partsHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+CompletedMultipartUpload& CompletedMultipartUpload::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ 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 CompletedMultipartUpload::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ 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/CompletedPart.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CompletedPart.cpp
new file mode 100644
index 0000000000..8fb63ee1f3
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CompletedPart.cpp
@@ -0,0 +1,82 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/CompletedPart.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
+{
+
+CompletedPart::CompletedPart() :
+ m_eTagHasBeenSet(false),
+ m_partNumber(0),
+ m_partNumberHasBeenSet(false)
+{
+}
+
+CompletedPart::CompletedPart(const XmlNode& xmlNode) :
+ m_eTagHasBeenSet(false),
+ m_partNumber(0),
+ m_partNumberHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+CompletedPart& CompletedPart::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode eTagNode = resultNode.FirstChild("ETag");
+ if(!eTagNode.IsNull())
+ {
+ m_eTag = Aws::Utils::Xml::DecodeEscapedXmlText(eTagNode.GetText());
+ m_eTagHasBeenSet = true;
+ }
+ 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;
+ }
+ }
+
+ return *this;
+}
+
+void CompletedPart::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_eTagHasBeenSet)
+ {
+ XmlNode eTagNode = parentNode.CreateChildElement("ETag");
+ eTagNode.SetText(m_eTag);
+ }
+
+ if(m_partNumberHasBeenSet)
+ {
+ XmlNode partNumberNode = parentNode.CreateChildElement("PartNumber");
+ ss << m_partNumber;
+ partNumberNode.SetText(ss.str());
+ ss.str("");
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CompressionType.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CompressionType.cpp
new file mode 100644
index 0000000000..84b6ee5250
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CompressionType.cpp
@@ -0,0 +1,77 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/CompressionType.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 CompressionTypeMapper
+ {
+
+ static const int NONE_HASH = HashingUtils::HashString("NONE");
+ static const int GZIP_HASH = HashingUtils::HashString("GZIP");
+ static const int BZIP2_HASH = HashingUtils::HashString("BZIP2");
+
+
+ CompressionType GetCompressionTypeForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == NONE_HASH)
+ {
+ return CompressionType::NONE;
+ }
+ else if (hashCode == GZIP_HASH)
+ {
+ return CompressionType::GZIP;
+ }
+ else if (hashCode == BZIP2_HASH)
+ {
+ return CompressionType::BZIP2;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<CompressionType>(hashCode);
+ }
+
+ return CompressionType::NOT_SET;
+ }
+
+ Aws::String GetNameForCompressionType(CompressionType enumValue)
+ {
+ switch(enumValue)
+ {
+ case CompressionType::NONE:
+ return "NONE";
+ case CompressionType::GZIP:
+ return "GZIP";
+ case CompressionType::BZIP2:
+ return "BZIP2";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace CompressionTypeMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Condition.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Condition.cpp
new file mode 100644
index 0000000000..a97e68bffc
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Condition.cpp
@@ -0,0 +1,78 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/Condition.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
+{
+
+Condition::Condition() :
+ m_httpErrorCodeReturnedEqualsHasBeenSet(false),
+ m_keyPrefixEqualsHasBeenSet(false)
+{
+}
+
+Condition::Condition(const XmlNode& xmlNode) :
+ m_httpErrorCodeReturnedEqualsHasBeenSet(false),
+ m_keyPrefixEqualsHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+Condition& Condition::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode httpErrorCodeReturnedEqualsNode = resultNode.FirstChild("HttpErrorCodeReturnedEquals");
+ if(!httpErrorCodeReturnedEqualsNode.IsNull())
+ {
+ m_httpErrorCodeReturnedEquals = Aws::Utils::Xml::DecodeEscapedXmlText(httpErrorCodeReturnedEqualsNode.GetText());
+ m_httpErrorCodeReturnedEqualsHasBeenSet = true;
+ }
+ XmlNode keyPrefixEqualsNode = resultNode.FirstChild("KeyPrefixEquals");
+ if(!keyPrefixEqualsNode.IsNull())
+ {
+ m_keyPrefixEquals = Aws::Utils::Xml::DecodeEscapedXmlText(keyPrefixEqualsNode.GetText());
+ m_keyPrefixEqualsHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void Condition::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_httpErrorCodeReturnedEqualsHasBeenSet)
+ {
+ XmlNode httpErrorCodeReturnedEqualsNode = parentNode.CreateChildElement("HttpErrorCodeReturnedEquals");
+ httpErrorCodeReturnedEqualsNode.SetText(m_httpErrorCodeReturnedEquals);
+ }
+
+ if(m_keyPrefixEqualsHasBeenSet)
+ {
+ XmlNode keyPrefixEqualsNode = parentNode.CreateChildElement("KeyPrefixEquals");
+ keyPrefixEqualsNode.SetText(m_keyPrefixEquals);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
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
new file mode 100644
index 0000000000..bd9f656890
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CopyObjectRequest.cpp
@@ -0,0 +1,350 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/CopyObjectRequest.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;
+
+CopyObjectRequest::CopyObjectRequest() :
+ m_aCL(ObjectCannedACL::NOT_SET),
+ m_aCLHasBeenSet(false),
+ m_bucketHasBeenSet(false),
+ m_cacheControlHasBeenSet(false),
+ m_contentDispositionHasBeenSet(false),
+ m_contentEncodingHasBeenSet(false),
+ m_contentLanguageHasBeenSet(false),
+ m_contentTypeHasBeenSet(false),
+ m_copySourceHasBeenSet(false),
+ m_copySourceIfMatchHasBeenSet(false),
+ m_copySourceIfModifiedSinceHasBeenSet(false),
+ m_copySourceIfNoneMatchHasBeenSet(false),
+ m_copySourceIfUnmodifiedSinceHasBeenSet(false),
+ m_expiresHasBeenSet(false),
+ m_grantFullControlHasBeenSet(false),
+ m_grantReadHasBeenSet(false),
+ m_grantReadACPHasBeenSet(false),
+ m_grantWriteACPHasBeenSet(false),
+ m_keyHasBeenSet(false),
+ m_metadataHasBeenSet(false),
+ m_metadataDirective(MetadataDirective::NOT_SET),
+ m_metadataDirectiveHasBeenSet(false),
+ m_taggingDirective(TaggingDirective::NOT_SET),
+ m_taggingDirectiveHasBeenSet(false),
+ m_serverSideEncryption(ServerSideEncryption::NOT_SET),
+ m_serverSideEncryptionHasBeenSet(false),
+ m_storageClass(StorageClass::NOT_SET),
+ m_storageClassHasBeenSet(false),
+ m_websiteRedirectLocationHasBeenSet(false),
+ m_sSECustomerAlgorithmHasBeenSet(false),
+ m_sSECustomerKeyHasBeenSet(false),
+ m_sSECustomerKeyMD5HasBeenSet(false),
+ m_sSEKMSKeyIdHasBeenSet(false),
+ m_sSEKMSEncryptionContextHasBeenSet(false),
+ m_bucketKeyEnabled(false),
+ m_bucketKeyEnabledHasBeenSet(false),
+ m_copySourceSSECustomerAlgorithmHasBeenSet(false),
+ m_copySourceSSECustomerKeyHasBeenSet(false),
+ m_copySourceSSECustomerKeyMD5HasBeenSet(false),
+ m_requestPayer(RequestPayer::NOT_SET),
+ m_requestPayerHasBeenSet(false),
+ m_taggingHasBeenSet(false),
+ m_objectLockMode(ObjectLockMode::NOT_SET),
+ m_objectLockModeHasBeenSet(false),
+ m_objectLockRetainUntilDateHasBeenSet(false),
+ m_objectLockLegalHoldStatus(ObjectLockLegalHoldStatus::NOT_SET),
+ m_objectLockLegalHoldStatusHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_expectedSourceBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String CopyObjectRequest::SerializePayload() const
+{
+ return {};
+}
+
+void CopyObjectRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 CopyObjectRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_aCLHasBeenSet)
+ {
+ headers.emplace("x-amz-acl", ObjectCannedACLMapper::GetNameForObjectCannedACL(m_aCL));
+ }
+
+ if(m_cacheControlHasBeenSet)
+ {
+ ss << m_cacheControl;
+ headers.emplace("cache-control", ss.str());
+ ss.str("");
+ }
+
+ if(m_contentDispositionHasBeenSet)
+ {
+ ss << m_contentDisposition;
+ headers.emplace("content-disposition", ss.str());
+ ss.str("");
+ }
+
+ if(m_contentEncodingHasBeenSet)
+ {
+ ss << m_contentEncoding;
+ headers.emplace("content-encoding", ss.str());
+ ss.str("");
+ }
+
+ if(m_contentLanguageHasBeenSet)
+ {
+ ss << m_contentLanguage;
+ headers.emplace("content-language", ss.str());
+ ss.str("");
+ }
+
+ if(m_contentTypeHasBeenSet)
+ {
+ ss << m_contentType;
+ headers.emplace("content-type", ss.str());
+ ss.str("");
+ }
+
+ if(m_copySourceHasBeenSet)
+ {
+ ss << m_copySource;
+ headers.emplace("x-amz-copy-source", URI::URLEncodePath(ss.str()));
+ ss.str("");
+ }
+
+ if(m_copySourceIfMatchHasBeenSet)
+ {
+ ss << m_copySourceIfMatch;
+ headers.emplace("x-amz-copy-source-if-match", ss.str());
+ ss.str("");
+ }
+
+ if(m_copySourceIfModifiedSinceHasBeenSet)
+ {
+ headers.emplace("x-amz-copy-source-if-modified-since", m_copySourceIfModifiedSince.ToGmtString(DateFormat::RFC822));
+ }
+
+ if(m_copySourceIfNoneMatchHasBeenSet)
+ {
+ ss << m_copySourceIfNoneMatch;
+ headers.emplace("x-amz-copy-source-if-none-match", ss.str());
+ ss.str("");
+ }
+
+ if(m_copySourceIfUnmodifiedSinceHasBeenSet)
+ {
+ headers.emplace("x-amz-copy-source-if-unmodified-since", m_copySourceIfUnmodifiedSince.ToGmtString(DateFormat::RFC822));
+ }
+
+ if(m_expiresHasBeenSet)
+ {
+ headers.emplace("expires", m_expires.ToGmtString(DateFormat::RFC822));
+ }
+
+ if(m_grantFullControlHasBeenSet)
+ {
+ ss << m_grantFullControl;
+ headers.emplace("x-amz-grant-full-control", ss.str());
+ ss.str("");
+ }
+
+ if(m_grantReadHasBeenSet)
+ {
+ ss << m_grantRead;
+ headers.emplace("x-amz-grant-read", ss.str());
+ ss.str("");
+ }
+
+ if(m_grantReadACPHasBeenSet)
+ {
+ ss << m_grantReadACP;
+ headers.emplace("x-amz-grant-read-acp", ss.str());
+ ss.str("");
+ }
+
+ if(m_grantWriteACPHasBeenSet)
+ {
+ ss << m_grantWriteACP;
+ headers.emplace("x-amz-grant-write-acp", ss.str());
+ ss.str("");
+ }
+
+ if(m_metadataHasBeenSet)
+ {
+ for(const auto& item : m_metadata)
+ {
+ ss << "x-amz-meta-" << item.first;
+ headers.emplace(ss.str(), item.second);
+ ss.str("");
+ }
+ }
+
+ if(m_metadataDirectiveHasBeenSet)
+ {
+ headers.emplace("x-amz-metadata-directive", MetadataDirectiveMapper::GetNameForMetadataDirective(m_metadataDirective));
+ }
+
+ if(m_taggingDirectiveHasBeenSet)
+ {
+ headers.emplace("x-amz-tagging-directive", TaggingDirectiveMapper::GetNameForTaggingDirective(m_taggingDirective));
+ }
+
+ if(m_serverSideEncryptionHasBeenSet)
+ {
+ headers.emplace("x-amz-server-side-encryption", ServerSideEncryptionMapper::GetNameForServerSideEncryption(m_serverSideEncryption));
+ }
+
+ if(m_storageClassHasBeenSet)
+ {
+ headers.emplace("x-amz-storage-class", StorageClassMapper::GetNameForStorageClass(m_storageClass));
+ }
+
+ if(m_websiteRedirectLocationHasBeenSet)
+ {
+ ss << m_websiteRedirectLocation;
+ headers.emplace("x-amz-website-redirect-location", 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_sSEKMSKeyIdHasBeenSet)
+ {
+ ss << m_sSEKMSKeyId;
+ headers.emplace("x-amz-server-side-encryption-aws-kms-key-id", ss.str());
+ ss.str("");
+ }
+
+ if(m_sSEKMSEncryptionContextHasBeenSet)
+ {
+ ss << m_sSEKMSEncryptionContext;
+ headers.emplace("x-amz-server-side-encryption-context", ss.str());
+ ss.str("");
+ }
+
+ if(m_bucketKeyEnabledHasBeenSet)
+ {
+ ss << m_bucketKeyEnabled;
+ headers.emplace("x-amz-server-side-encryption-bucket-key-enabled", ss.str());
+ ss.str("");
+ }
+
+ if(m_copySourceSSECustomerAlgorithmHasBeenSet)
+ {
+ ss << m_copySourceSSECustomerAlgorithm;
+ headers.emplace("x-amz-copy-source-server-side-encryption-customer-algorithm", ss.str());
+ ss.str("");
+ }
+
+ if(m_copySourceSSECustomerKeyHasBeenSet)
+ {
+ ss << m_copySourceSSECustomerKey;
+ headers.emplace("x-amz-copy-source-server-side-encryption-customer-key", ss.str());
+ ss.str("");
+ }
+
+ if(m_copySourceSSECustomerKeyMD5HasBeenSet)
+ {
+ ss << m_copySourceSSECustomerKeyMD5;
+ headers.emplace("x-amz-copy-source-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_taggingHasBeenSet)
+ {
+ ss << m_tagging;
+ headers.emplace("x-amz-tagging", ss.str());
+ ss.str("");
+ }
+
+ if(m_objectLockModeHasBeenSet)
+ {
+ headers.emplace("x-amz-object-lock-mode", ObjectLockModeMapper::GetNameForObjectLockMode(m_objectLockMode));
+ }
+
+ if(m_objectLockRetainUntilDateHasBeenSet)
+ {
+ headers.emplace("x-amz-object-lock-retain-until-date", m_objectLockRetainUntilDate.ToGmtString(DateFormat::RFC822));
+ }
+
+ if(m_objectLockLegalHoldStatusHasBeenSet)
+ {
+ headers.emplace("x-amz-object-lock-legal-hold", ObjectLockLegalHoldStatusMapper::GetNameForObjectLockLegalHoldStatus(m_objectLockLegalHoldStatus));
+ }
+
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ if(m_expectedSourceBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedSourceBucketOwner;
+ headers.emplace("x-amz-source-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CopyObjectResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CopyObjectResult.cpp
new file mode 100644
index 0000000000..a24fe26498
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CopyObjectResult.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/CopyObjectResult.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;
+
+CopyObjectResult::CopyObjectResult() :
+ m_serverSideEncryption(ServerSideEncryption::NOT_SET),
+ m_bucketKeyEnabled(false),
+ m_requestCharged(RequestCharged::NOT_SET)
+{
+}
+
+CopyObjectResult::CopyObjectResult(const Aws::AmazonWebServiceResult<XmlDocument>& result) :
+ m_serverSideEncryption(ServerSideEncryption::NOT_SET),
+ m_bucketKeyEnabled(false),
+ m_requestCharged(RequestCharged::NOT_SET)
+{
+ *this = result;
+}
+
+CopyObjectResult& CopyObjectResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ m_copyObjectResultDetails = resultNode;
+ }
+
+ const auto& headers = result.GetHeaderValueCollection();
+ const auto& expirationIter = headers.find("x-amz-expiration");
+ if(expirationIter != headers.end())
+ {
+ m_expiration = expirationIter->second;
+ }
+
+ const auto& copySourceVersionIdIter = headers.find("x-amz-copy-source-version-id");
+ if(copySourceVersionIdIter != headers.end())
+ {
+ m_copySourceVersionId = copySourceVersionIdIter->second;
+ }
+
+ const auto& versionIdIter = headers.find("x-amz-version-id");
+ if(versionIdIter != headers.end())
+ {
+ m_versionId = versionIdIter->second;
+ }
+
+ const auto& serverSideEncryptionIter = headers.find("x-amz-server-side-encryption");
+ if(serverSideEncryptionIter != headers.end())
+ {
+ m_serverSideEncryption = ServerSideEncryptionMapper::GetServerSideEncryptionForName(serverSideEncryptionIter->second);
+ }
+
+ const auto& sSECustomerAlgorithmIter = headers.find("x-amz-server-side-encryption-customer-algorithm");
+ if(sSECustomerAlgorithmIter != headers.end())
+ {
+ m_sSECustomerAlgorithm = sSECustomerAlgorithmIter->second;
+ }
+
+ const auto& sSECustomerKeyMD5Iter = headers.find("x-amz-server-side-encryption-customer-key-md5");
+ if(sSECustomerKeyMD5Iter != headers.end())
+ {
+ m_sSECustomerKeyMD5 = sSECustomerKeyMD5Iter->second;
+ }
+
+ const auto& sSEKMSKeyIdIter = headers.find("x-amz-server-side-encryption-aws-kms-key-id");
+ if(sSEKMSKeyIdIter != headers.end())
+ {
+ m_sSEKMSKeyId = sSEKMSKeyIdIter->second;
+ }
+
+ const auto& sSEKMSEncryptionContextIter = headers.find("x-amz-server-side-encryption-context");
+ if(sSEKMSEncryptionContextIter != headers.end())
+ {
+ m_sSEKMSEncryptionContext = sSEKMSEncryptionContextIter->second;
+ }
+
+ const auto& bucketKeyEnabledIter = headers.find("x-amz-server-side-encryption-bucket-key-enabled");
+ if(bucketKeyEnabledIter != headers.end())
+ {
+ m_bucketKeyEnabled = StringUtils::ConvertToBool(bucketKeyEnabledIter->second.c_str());
+ }
+
+ 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/CopyObjectResultDetails.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CopyObjectResultDetails.cpp
new file mode 100644
index 0000000000..6e03159046
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CopyObjectResultDetails.cpp
@@ -0,0 +1,78 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/CopyObjectResultDetails.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
+{
+
+CopyObjectResultDetails::CopyObjectResultDetails() :
+ m_eTagHasBeenSet(false),
+ m_lastModifiedHasBeenSet(false)
+{
+}
+
+CopyObjectResultDetails::CopyObjectResultDetails(const XmlNode& xmlNode) :
+ m_eTagHasBeenSet(false),
+ m_lastModifiedHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+CopyObjectResultDetails& CopyObjectResultDetails::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode eTagNode = resultNode.FirstChild("ETag");
+ if(!eTagNode.IsNull())
+ {
+ m_eTag = Aws::Utils::Xml::DecodeEscapedXmlText(eTagNode.GetText());
+ m_eTagHasBeenSet = true;
+ }
+ 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_lastModifiedHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void CopyObjectResultDetails::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_eTagHasBeenSet)
+ {
+ XmlNode eTagNode = parentNode.CreateChildElement("ETag");
+ eTagNode.SetText(m_eTag);
+ }
+
+ if(m_lastModifiedHasBeenSet)
+ {
+ XmlNode lastModifiedNode = parentNode.CreateChildElement("LastModified");
+ lastModifiedNode.SetText(m_lastModified.ToGmtString(DateFormat::ISO_8601));
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
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
new file mode 100644
index 0000000000..f8f5c9809c
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CopyPartResult.cpp
@@ -0,0 +1,78 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/CopyPartResult.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
+{
+
+CopyPartResult::CopyPartResult() :
+ m_eTagHasBeenSet(false),
+ m_lastModifiedHasBeenSet(false)
+{
+}
+
+CopyPartResult::CopyPartResult(const XmlNode& xmlNode) :
+ m_eTagHasBeenSet(false),
+ m_lastModifiedHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+CopyPartResult& CopyPartResult::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode eTagNode = resultNode.FirstChild("ETag");
+ if(!eTagNode.IsNull())
+ {
+ m_eTag = Aws::Utils::Xml::DecodeEscapedXmlText(eTagNode.GetText());
+ m_eTagHasBeenSet = true;
+ }
+ 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_lastModifiedHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void CopyPartResult::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_eTagHasBeenSet)
+ {
+ XmlNode eTagNode = parentNode.CreateChildElement("ETag");
+ eTagNode.SetText(m_eTag);
+ }
+
+ if(m_lastModifiedHasBeenSet)
+ {
+ XmlNode lastModifiedNode = parentNode.CreateChildElement("LastModified");
+ lastModifiedNode.SetText(m_lastModified.ToGmtString(DateFormat::ISO_8601));
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CreateBucketConfiguration.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CreateBucketConfiguration.cpp
new file mode 100644
index 0000000000..d29cbaa9bb
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CreateBucketConfiguration.cpp
@@ -0,0 +1,66 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/CreateBucketConfiguration.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
+{
+
+CreateBucketConfiguration::CreateBucketConfiguration() :
+ m_locationConstraint(BucketLocationConstraint::NOT_SET),
+ m_locationConstraintHasBeenSet(false)
+{
+}
+
+CreateBucketConfiguration::CreateBucketConfiguration(const XmlNode& xmlNode) :
+ m_locationConstraint(BucketLocationConstraint::NOT_SET),
+ m_locationConstraintHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+CreateBucketConfiguration& CreateBucketConfiguration::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode locationConstraintNode = resultNode.FirstChild("LocationConstraint");
+ if(!locationConstraintNode.IsNull())
+ {
+ m_locationConstraint = BucketLocationConstraintMapper::GetBucketLocationConstraintForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(locationConstraintNode.GetText()).c_str()).c_str());
+ m_locationConstraintHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void CreateBucketConfiguration::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_locationConstraintHasBeenSet)
+ {
+ XmlNode locationConstraintNode = parentNode.CreateChildElement("LocationConstraint");
+ locationConstraintNode.SetText(BucketLocationConstraintMapper::GetNameForBucketLocationConstraint(m_locationConstraint));
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
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
new file mode 100644
index 0000000000..0cd50dbf6d
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CreateBucketRequest.cpp
@@ -0,0 +1,125 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/CreateBucketRequest.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;
+
+CreateBucketRequest::CreateBucketRequest() :
+ m_aCL(BucketCannedACL::NOT_SET),
+ m_aCLHasBeenSet(false),
+ m_bucketHasBeenSet(false),
+ m_createBucketConfigurationHasBeenSet(false),
+ m_grantFullControlHasBeenSet(false),
+ m_grantReadHasBeenSet(false),
+ m_grantReadACPHasBeenSet(false),
+ m_grantWriteHasBeenSet(false),
+ m_grantWriteACPHasBeenSet(false),
+ m_objectLockEnabledForBucket(false),
+ m_objectLockEnabledForBucketHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String CreateBucketRequest::SerializePayload() const
+{
+ XmlDocument payloadDoc = XmlDocument::CreateWithRootNode("CreateBucketConfiguration");
+
+ XmlNode parentNode = payloadDoc.GetRootElement();
+ parentNode.SetAttributeValue("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/");
+
+ m_createBucketConfiguration.AddToNode(parentNode);
+ if(parentNode.HasChildren())
+ {
+ return payloadDoc.ConvertToString();
+ }
+
+ return {};
+}
+
+void CreateBucketRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 CreateBucketRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_aCLHasBeenSet)
+ {
+ headers.emplace("x-amz-acl", BucketCannedACLMapper::GetNameForBucketCannedACL(m_aCL));
+ }
+
+ if(m_grantFullControlHasBeenSet)
+ {
+ ss << m_grantFullControl;
+ headers.emplace("x-amz-grant-full-control", ss.str());
+ ss.str("");
+ }
+
+ if(m_grantReadHasBeenSet)
+ {
+ ss << m_grantRead;
+ headers.emplace("x-amz-grant-read", ss.str());
+ ss.str("");
+ }
+
+ if(m_grantReadACPHasBeenSet)
+ {
+ ss << m_grantReadACP;
+ headers.emplace("x-amz-grant-read-acp", ss.str());
+ ss.str("");
+ }
+
+ if(m_grantWriteHasBeenSet)
+ {
+ ss << m_grantWrite;
+ headers.emplace("x-amz-grant-write", ss.str());
+ ss.str("");
+ }
+
+ if(m_grantWriteACPHasBeenSet)
+ {
+ ss << m_grantWriteACP;
+ headers.emplace("x-amz-grant-write-acp", ss.str());
+ ss.str("");
+ }
+
+ if(m_objectLockEnabledForBucketHasBeenSet)
+ {
+ ss << m_objectLockEnabledForBucket;
+ headers.emplace("x-amz-bucket-object-lock-enabled", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CreateBucketResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CreateBucketResult.cpp
new file mode 100644
index 0000000000..a6f72b616a
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CreateBucketResult.cpp
@@ -0,0 +1,45 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/CreateBucketResult.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;
+
+CreateBucketResult::CreateBucketResult()
+{
+}
+
+CreateBucketResult::CreateBucketResult(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ *this = result;
+}
+
+CreateBucketResult& CreateBucketResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ }
+
+ const auto& headers = result.GetHeaderValueCollection();
+ const auto& locationIter = headers.find("location");
+ if(locationIter != headers.end())
+ {
+ m_location = locationIter->second;
+ }
+
+ return *this;
+}
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
new file mode 100644
index 0000000000..2347045761
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CreateMultipartUploadRequest.cpp
@@ -0,0 +1,268 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/CreateMultipartUploadRequest.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;
+
+CreateMultipartUploadRequest::CreateMultipartUploadRequest() :
+ m_aCL(ObjectCannedACL::NOT_SET),
+ m_aCLHasBeenSet(false),
+ m_bucketHasBeenSet(false),
+ m_cacheControlHasBeenSet(false),
+ m_contentDispositionHasBeenSet(false),
+ m_contentEncodingHasBeenSet(false),
+ m_contentLanguageHasBeenSet(false),
+ m_contentTypeHasBeenSet(false),
+ m_expiresHasBeenSet(false),
+ m_grantFullControlHasBeenSet(false),
+ m_grantReadHasBeenSet(false),
+ m_grantReadACPHasBeenSet(false),
+ m_grantWriteACPHasBeenSet(false),
+ m_keyHasBeenSet(false),
+ m_metadataHasBeenSet(false),
+ m_serverSideEncryption(ServerSideEncryption::NOT_SET),
+ m_serverSideEncryptionHasBeenSet(false),
+ m_storageClass(StorageClass::NOT_SET),
+ m_storageClassHasBeenSet(false),
+ m_websiteRedirectLocationHasBeenSet(false),
+ m_sSECustomerAlgorithmHasBeenSet(false),
+ m_sSECustomerKeyHasBeenSet(false),
+ m_sSECustomerKeyMD5HasBeenSet(false),
+ m_sSEKMSKeyIdHasBeenSet(false),
+ m_sSEKMSEncryptionContextHasBeenSet(false),
+ m_bucketKeyEnabled(false),
+ m_bucketKeyEnabledHasBeenSet(false),
+ m_requestPayer(RequestPayer::NOT_SET),
+ m_requestPayerHasBeenSet(false),
+ m_taggingHasBeenSet(false),
+ m_objectLockMode(ObjectLockMode::NOT_SET),
+ m_objectLockModeHasBeenSet(false),
+ m_objectLockRetainUntilDateHasBeenSet(false),
+ m_objectLockLegalHoldStatus(ObjectLockLegalHoldStatus::NOT_SET),
+ m_objectLockLegalHoldStatusHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String CreateMultipartUploadRequest::SerializePayload() const
+{
+ return {};
+}
+
+void CreateMultipartUploadRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 CreateMultipartUploadRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_aCLHasBeenSet)
+ {
+ headers.emplace("x-amz-acl", ObjectCannedACLMapper::GetNameForObjectCannedACL(m_aCL));
+ }
+
+ if(m_cacheControlHasBeenSet)
+ {
+ ss << m_cacheControl;
+ headers.emplace("cache-control", ss.str());
+ ss.str("");
+ }
+
+ if(m_contentDispositionHasBeenSet)
+ {
+ ss << m_contentDisposition;
+ headers.emplace("content-disposition", ss.str());
+ ss.str("");
+ }
+
+ if(m_contentEncodingHasBeenSet)
+ {
+ ss << m_contentEncoding;
+ headers.emplace("content-encoding", ss.str());
+ ss.str("");
+ }
+
+ if(m_contentLanguageHasBeenSet)
+ {
+ ss << m_contentLanguage;
+ headers.emplace("content-language", ss.str());
+ ss.str("");
+ }
+
+ if(m_contentTypeHasBeenSet)
+ {
+ ss << m_contentType;
+ headers.emplace("content-type", ss.str());
+ ss.str("");
+ }
+
+ if(m_expiresHasBeenSet)
+ {
+ headers.emplace("expires", m_expires.ToGmtString(DateFormat::RFC822));
+ }
+
+ if(m_grantFullControlHasBeenSet)
+ {
+ ss << m_grantFullControl;
+ headers.emplace("x-amz-grant-full-control", ss.str());
+ ss.str("");
+ }
+
+ if(m_grantReadHasBeenSet)
+ {
+ ss << m_grantRead;
+ headers.emplace("x-amz-grant-read", ss.str());
+ ss.str("");
+ }
+
+ if(m_grantReadACPHasBeenSet)
+ {
+ ss << m_grantReadACP;
+ headers.emplace("x-amz-grant-read-acp", ss.str());
+ ss.str("");
+ }
+
+ if(m_grantWriteACPHasBeenSet)
+ {
+ ss << m_grantWriteACP;
+ headers.emplace("x-amz-grant-write-acp", ss.str());
+ ss.str("");
+ }
+
+ if(m_metadataHasBeenSet)
+ {
+ for(const auto& item : m_metadata)
+ {
+ ss << "x-amz-meta-" << item.first;
+ headers.emplace(ss.str(), item.second);
+ ss.str("");
+ }
+ }
+
+ if(m_serverSideEncryptionHasBeenSet)
+ {
+ headers.emplace("x-amz-server-side-encryption", ServerSideEncryptionMapper::GetNameForServerSideEncryption(m_serverSideEncryption));
+ }
+
+ if(m_storageClassHasBeenSet)
+ {
+ headers.emplace("x-amz-storage-class", StorageClassMapper::GetNameForStorageClass(m_storageClass));
+ }
+
+ if(m_websiteRedirectLocationHasBeenSet)
+ {
+ ss << m_websiteRedirectLocation;
+ headers.emplace("x-amz-website-redirect-location", 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_sSEKMSKeyIdHasBeenSet)
+ {
+ ss << m_sSEKMSKeyId;
+ headers.emplace("x-amz-server-side-encryption-aws-kms-key-id", ss.str());
+ ss.str("");
+ }
+
+ if(m_sSEKMSEncryptionContextHasBeenSet)
+ {
+ ss << m_sSEKMSEncryptionContext;
+ headers.emplace("x-amz-server-side-encryption-context", ss.str());
+ ss.str("");
+ }
+
+ if(m_bucketKeyEnabledHasBeenSet)
+ {
+ ss << m_bucketKeyEnabled;
+ headers.emplace("x-amz-server-side-encryption-bucket-key-enabled", ss.str());
+ ss.str("");
+ }
+
+ if(m_requestPayerHasBeenSet)
+ {
+ headers.emplace("x-amz-request-payer", RequestPayerMapper::GetNameForRequestPayer(m_requestPayer));
+ }
+
+ if(m_taggingHasBeenSet)
+ {
+ ss << m_tagging;
+ headers.emplace("x-amz-tagging", ss.str());
+ ss.str("");
+ }
+
+ if(m_objectLockModeHasBeenSet)
+ {
+ headers.emplace("x-amz-object-lock-mode", ObjectLockModeMapper::GetNameForObjectLockMode(m_objectLockMode));
+ }
+
+ if(m_objectLockRetainUntilDateHasBeenSet)
+ {
+ headers.emplace("x-amz-object-lock-retain-until-date", m_objectLockRetainUntilDate.ToGmtString(DateFormat::RFC822));
+ }
+
+ if(m_objectLockLegalHoldStatusHasBeenSet)
+ {
+ headers.emplace("x-amz-object-lock-legal-hold", ObjectLockLegalHoldStatusMapper::GetNameForObjectLockLegalHoldStatus(m_objectLockLegalHoldStatus));
+ }
+
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
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
new file mode 100644
index 0000000000..4a2772c9ef
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/CreateMultipartUploadResult.cpp
@@ -0,0 +1,114 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/CreateMultipartUploadResult.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;
+
+CreateMultipartUploadResult::CreateMultipartUploadResult() :
+ m_serverSideEncryption(ServerSideEncryption::NOT_SET),
+ m_bucketKeyEnabled(false),
+ m_requestCharged(RequestCharged::NOT_SET)
+{
+}
+
+CreateMultipartUploadResult::CreateMultipartUploadResult(const Aws::AmazonWebServiceResult<XmlDocument>& result) :
+ m_serverSideEncryption(ServerSideEncryption::NOT_SET),
+ m_bucketKeyEnabled(false),
+ m_requestCharged(RequestCharged::NOT_SET)
+{
+ *this = result;
+}
+
+CreateMultipartUploadResult& CreateMultipartUploadResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode bucketNode = resultNode.FirstChild("Bucket");
+ if(!bucketNode.IsNull())
+ {
+ m_bucket = Aws::Utils::Xml::DecodeEscapedXmlText(bucketNode.GetText());
+ }
+ XmlNode keyNode = resultNode.FirstChild("Key");
+ if(!keyNode.IsNull())
+ {
+ m_key = Aws::Utils::Xml::DecodeEscapedXmlText(keyNode.GetText());
+ }
+ XmlNode uploadIdNode = resultNode.FirstChild("UploadId");
+ if(!uploadIdNode.IsNull())
+ {
+ m_uploadId = Aws::Utils::Xml::DecodeEscapedXmlText(uploadIdNode.GetText());
+ }
+ }
+
+ 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);
+ }
+
+ const auto& abortRuleIdIter = headers.find("x-amz-abort-rule-id");
+ if(abortRuleIdIter != headers.end())
+ {
+ m_abortRuleId = abortRuleIdIter->second;
+ }
+
+ const auto& serverSideEncryptionIter = headers.find("x-amz-server-side-encryption");
+ if(serverSideEncryptionIter != headers.end())
+ {
+ m_serverSideEncryption = ServerSideEncryptionMapper::GetServerSideEncryptionForName(serverSideEncryptionIter->second);
+ }
+
+ const auto& sSECustomerAlgorithmIter = headers.find("x-amz-server-side-encryption-customer-algorithm");
+ if(sSECustomerAlgorithmIter != headers.end())
+ {
+ m_sSECustomerAlgorithm = sSECustomerAlgorithmIter->second;
+ }
+
+ const auto& sSECustomerKeyMD5Iter = headers.find("x-amz-server-side-encryption-customer-key-md5");
+ if(sSECustomerKeyMD5Iter != headers.end())
+ {
+ m_sSECustomerKeyMD5 = sSECustomerKeyMD5Iter->second;
+ }
+
+ const auto& sSEKMSKeyIdIter = headers.find("x-amz-server-side-encryption-aws-kms-key-id");
+ if(sSEKMSKeyIdIter != headers.end())
+ {
+ m_sSEKMSKeyId = sSEKMSKeyIdIter->second;
+ }
+
+ const auto& sSEKMSEncryptionContextIter = headers.find("x-amz-server-side-encryption-context");
+ if(sSEKMSEncryptionContextIter != headers.end())
+ {
+ m_sSEKMSEncryptionContext = sSEKMSEncryptionContextIter->second;
+ }
+
+ const auto& bucketKeyEnabledIter = headers.find("x-amz-server-side-encryption-bucket-key-enabled");
+ if(bucketKeyEnabledIter != headers.end())
+ {
+ m_bucketKeyEnabled = StringUtils::ConvertToBool(bucketKeyEnabledIter->second.c_str());
+ }
+
+ 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/DefaultRetention.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DefaultRetention.cpp
new file mode 100644
index 0000000000..63cddad838
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DefaultRetention.cpp
@@ -0,0 +1,102 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/DefaultRetention.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
+{
+
+DefaultRetention::DefaultRetention() :
+ m_mode(ObjectLockRetentionMode::NOT_SET),
+ m_modeHasBeenSet(false),
+ m_days(0),
+ m_daysHasBeenSet(false),
+ m_years(0),
+ m_yearsHasBeenSet(false)
+{
+}
+
+DefaultRetention::DefaultRetention(const XmlNode& xmlNode) :
+ m_mode(ObjectLockRetentionMode::NOT_SET),
+ m_modeHasBeenSet(false),
+ m_days(0),
+ m_daysHasBeenSet(false),
+ m_years(0),
+ m_yearsHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+DefaultRetention& DefaultRetention::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode modeNode = resultNode.FirstChild("Mode");
+ if(!modeNode.IsNull())
+ {
+ m_mode = ObjectLockRetentionModeMapper::GetObjectLockRetentionModeForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(modeNode.GetText()).c_str()).c_str());
+ m_modeHasBeenSet = true;
+ }
+ XmlNode daysNode = resultNode.FirstChild("Days");
+ if(!daysNode.IsNull())
+ {
+ m_days = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(daysNode.GetText()).c_str()).c_str());
+ m_daysHasBeenSet = true;
+ }
+ XmlNode yearsNode = resultNode.FirstChild("Years");
+ if(!yearsNode.IsNull())
+ {
+ m_years = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(yearsNode.GetText()).c_str()).c_str());
+ m_yearsHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void DefaultRetention::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_modeHasBeenSet)
+ {
+ XmlNode modeNode = parentNode.CreateChildElement("Mode");
+ modeNode.SetText(ObjectLockRetentionModeMapper::GetNameForObjectLockRetentionMode(m_mode));
+ }
+
+ if(m_daysHasBeenSet)
+ {
+ XmlNode daysNode = parentNode.CreateChildElement("Days");
+ ss << m_days;
+ daysNode.SetText(ss.str());
+ ss.str("");
+ }
+
+ if(m_yearsHasBeenSet)
+ {
+ XmlNode yearsNode = parentNode.CreateChildElement("Years");
+ ss << m_years;
+ yearsNode.SetText(ss.str());
+ ss.str("");
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Delete.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Delete.cpp
new file mode 100644
index 0000000000..9789ee2140
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Delete.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/Delete.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
+{
+
+Delete::Delete() :
+ m_objectsHasBeenSet(false),
+ m_quiet(false),
+ m_quietHasBeenSet(false)
+{
+}
+
+Delete::Delete(const XmlNode& xmlNode) :
+ m_objectsHasBeenSet(false),
+ m_quiet(false),
+ m_quietHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+Delete& Delete::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode objectsNode = resultNode.FirstChild("Object");
+ if(!objectsNode.IsNull())
+ {
+ XmlNode objectMember = objectsNode;
+ while(!objectMember.IsNull())
+ {
+ m_objects.push_back(objectMember);
+ objectMember = objectMember.NextNode("Object");
+ }
+
+ m_objectsHasBeenSet = true;
+ }
+ XmlNode quietNode = resultNode.FirstChild("Quiet");
+ if(!quietNode.IsNull())
+ {
+ m_quiet = StringUtils::ConvertToBool(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(quietNode.GetText()).c_str()).c_str());
+ m_quietHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void Delete::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_objectsHasBeenSet)
+ {
+ for(const auto& item : m_objects)
+ {
+ XmlNode objectsNode = parentNode.CreateChildElement("Object");
+ item.AddToNode(objectsNode);
+ }
+ }
+
+ if(m_quietHasBeenSet)
+ {
+ XmlNode quietNode = parentNode.CreateChildElement("Quiet");
+ ss << std::boolalpha << m_quiet;
+ quietNode.SetText(ss.str());
+ ss.str("");
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
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
new file mode 100644
index 0000000000..bcd1e8f320
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketAnalyticsConfigurationRequest.cpp
@@ -0,0 +1,73 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/DeleteBucketAnalyticsConfigurationRequest.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;
+
+DeleteBucketAnalyticsConfigurationRequest::DeleteBucketAnalyticsConfigurationRequest() :
+ m_bucketHasBeenSet(false),
+ m_idHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String DeleteBucketAnalyticsConfigurationRequest::SerializePayload() const
+{
+ return {};
+}
+
+void DeleteBucketAnalyticsConfigurationRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ if(m_idHasBeenSet)
+ {
+ ss << m_id;
+ uri.AddQueryStringParameter("id", 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 DeleteBucketAnalyticsConfigurationRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
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
new file mode 100644
index 0000000000..b52d99571a
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketCorsRequest.cpp
@@ -0,0 +1,65 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/DeleteBucketCorsRequest.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;
+
+DeleteBucketCorsRequest::DeleteBucketCorsRequest() :
+ m_bucketHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String DeleteBucketCorsRequest::SerializePayload() const
+{
+ return {};
+}
+
+void DeleteBucketCorsRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 DeleteBucketCorsRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
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
new file mode 100644
index 0000000000..3e01a0b9dc
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketEncryptionRequest.cpp
@@ -0,0 +1,65 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/DeleteBucketEncryptionRequest.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;
+
+DeleteBucketEncryptionRequest::DeleteBucketEncryptionRequest() :
+ m_bucketHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String DeleteBucketEncryptionRequest::SerializePayload() const
+{
+ return {};
+}
+
+void DeleteBucketEncryptionRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 DeleteBucketEncryptionRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
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
new file mode 100644
index 0000000000..b48d573ee6
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketIntelligentTieringConfigurationRequest.cpp
@@ -0,0 +1,59 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/DeleteBucketIntelligentTieringConfigurationRequest.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;
+
+DeleteBucketIntelligentTieringConfigurationRequest::DeleteBucketIntelligentTieringConfigurationRequest() :
+ m_bucketHasBeenSet(false),
+ m_idHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String DeleteBucketIntelligentTieringConfigurationRequest::SerializePayload() const
+{
+ return {};
+}
+
+void DeleteBucketIntelligentTieringConfigurationRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ if(m_idHasBeenSet)
+ {
+ ss << m_id;
+ uri.AddQueryStringParameter("id", 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);
+ }
+ }
+}
+
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
new file mode 100644
index 0000000000..7bc2d179d6
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketInventoryConfigurationRequest.cpp
@@ -0,0 +1,73 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/DeleteBucketInventoryConfigurationRequest.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;
+
+DeleteBucketInventoryConfigurationRequest::DeleteBucketInventoryConfigurationRequest() :
+ m_bucketHasBeenSet(false),
+ m_idHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String DeleteBucketInventoryConfigurationRequest::SerializePayload() const
+{
+ return {};
+}
+
+void DeleteBucketInventoryConfigurationRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ if(m_idHasBeenSet)
+ {
+ ss << m_id;
+ uri.AddQueryStringParameter("id", 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 DeleteBucketInventoryConfigurationRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
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
new file mode 100644
index 0000000000..54311cff3e
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketLifecycleRequest.cpp
@@ -0,0 +1,65 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/DeleteBucketLifecycleRequest.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;
+
+DeleteBucketLifecycleRequest::DeleteBucketLifecycleRequest() :
+ m_bucketHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String DeleteBucketLifecycleRequest::SerializePayload() const
+{
+ return {};
+}
+
+void DeleteBucketLifecycleRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 DeleteBucketLifecycleRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
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
new file mode 100644
index 0000000000..631dee94a7
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketMetricsConfigurationRequest.cpp
@@ -0,0 +1,73 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/DeleteBucketMetricsConfigurationRequest.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;
+
+DeleteBucketMetricsConfigurationRequest::DeleteBucketMetricsConfigurationRequest() :
+ m_bucketHasBeenSet(false),
+ m_idHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String DeleteBucketMetricsConfigurationRequest::SerializePayload() const
+{
+ return {};
+}
+
+void DeleteBucketMetricsConfigurationRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ if(m_idHasBeenSet)
+ {
+ ss << m_id;
+ uri.AddQueryStringParameter("id", 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 DeleteBucketMetricsConfigurationRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
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
new file mode 100644
index 0000000000..5b18b12424
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketOwnershipControlsRequest.cpp
@@ -0,0 +1,65 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/DeleteBucketOwnershipControlsRequest.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;
+
+DeleteBucketOwnershipControlsRequest::DeleteBucketOwnershipControlsRequest() :
+ m_bucketHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String DeleteBucketOwnershipControlsRequest::SerializePayload() const
+{
+ return {};
+}
+
+void DeleteBucketOwnershipControlsRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 DeleteBucketOwnershipControlsRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
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
new file mode 100644
index 0000000000..33bb2cef34
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketPolicyRequest.cpp
@@ -0,0 +1,65 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/DeleteBucketPolicyRequest.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;
+
+DeleteBucketPolicyRequest::DeleteBucketPolicyRequest() :
+ m_bucketHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String DeleteBucketPolicyRequest::SerializePayload() const
+{
+ return {};
+}
+
+void DeleteBucketPolicyRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 DeleteBucketPolicyRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
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
new file mode 100644
index 0000000000..af6092ee6c
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketReplicationRequest.cpp
@@ -0,0 +1,65 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/DeleteBucketReplicationRequest.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;
+
+DeleteBucketReplicationRequest::DeleteBucketReplicationRequest() :
+ m_bucketHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String DeleteBucketReplicationRequest::SerializePayload() const
+{
+ return {};
+}
+
+void DeleteBucketReplicationRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 DeleteBucketReplicationRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
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
new file mode 100644
index 0000000000..3cfa02d882
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketRequest.cpp
@@ -0,0 +1,65 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/DeleteBucketRequest.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;
+
+DeleteBucketRequest::DeleteBucketRequest() :
+ m_bucketHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String DeleteBucketRequest::SerializePayload() const
+{
+ return {};
+}
+
+void DeleteBucketRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 DeleteBucketRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
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
new file mode 100644
index 0000000000..7d61b959f5
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketTaggingRequest.cpp
@@ -0,0 +1,65 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/DeleteBucketTaggingRequest.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;
+
+DeleteBucketTaggingRequest::DeleteBucketTaggingRequest() :
+ m_bucketHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String DeleteBucketTaggingRequest::SerializePayload() const
+{
+ return {};
+}
+
+void DeleteBucketTaggingRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 DeleteBucketTaggingRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
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
new file mode 100644
index 0000000000..59bc58a8d7
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteBucketWebsiteRequest.cpp
@@ -0,0 +1,65 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/DeleteBucketWebsiteRequest.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;
+
+DeleteBucketWebsiteRequest::DeleteBucketWebsiteRequest() :
+ m_bucketHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String DeleteBucketWebsiteRequest::SerializePayload() const
+{
+ return {};
+}
+
+void DeleteBucketWebsiteRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 DeleteBucketWebsiteRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
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
new file mode 100644
index 0000000000..05766bb960
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteMarkerEntry.cpp
@@ -0,0 +1,124 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/DeleteMarkerEntry.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
+{
+
+DeleteMarkerEntry::DeleteMarkerEntry() :
+ m_ownerHasBeenSet(false),
+ m_keyHasBeenSet(false),
+ m_versionIdHasBeenSet(false),
+ m_isLatest(false),
+ m_isLatestHasBeenSet(false),
+ m_lastModifiedHasBeenSet(false)
+{
+}
+
+DeleteMarkerEntry::DeleteMarkerEntry(const XmlNode& xmlNode) :
+ m_ownerHasBeenSet(false),
+ m_keyHasBeenSet(false),
+ m_versionIdHasBeenSet(false),
+ m_isLatest(false),
+ m_isLatestHasBeenSet(false),
+ m_lastModifiedHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+DeleteMarkerEntry& DeleteMarkerEntry::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode ownerNode = resultNode.FirstChild("Owner");
+ if(!ownerNode.IsNull())
+ {
+ m_owner = ownerNode;
+ m_ownerHasBeenSet = true;
+ }
+ XmlNode keyNode = resultNode.FirstChild("Key");
+ if(!keyNode.IsNull())
+ {
+ m_key = Aws::Utils::Xml::DecodeEscapedXmlText(keyNode.GetText());
+ m_keyHasBeenSet = true;
+ }
+ XmlNode versionIdNode = resultNode.FirstChild("VersionId");
+ if(!versionIdNode.IsNull())
+ {
+ m_versionId = Aws::Utils::Xml::DecodeEscapedXmlText(versionIdNode.GetText());
+ m_versionIdHasBeenSet = true;
+ }
+ XmlNode isLatestNode = resultNode.FirstChild("IsLatest");
+ if(!isLatestNode.IsNull())
+ {
+ m_isLatest = StringUtils::ConvertToBool(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(isLatestNode.GetText()).c_str()).c_str());
+ m_isLatestHasBeenSet = true;
+ }
+ 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_lastModifiedHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void DeleteMarkerEntry::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_ownerHasBeenSet)
+ {
+ XmlNode ownerNode = parentNode.CreateChildElement("Owner");
+ m_owner.AddToNode(ownerNode);
+ }
+
+ if(m_keyHasBeenSet)
+ {
+ XmlNode keyNode = parentNode.CreateChildElement("Key");
+ keyNode.SetText(m_key);
+ }
+
+ if(m_versionIdHasBeenSet)
+ {
+ XmlNode versionIdNode = parentNode.CreateChildElement("VersionId");
+ versionIdNode.SetText(m_versionId);
+ }
+
+ if(m_isLatestHasBeenSet)
+ {
+ XmlNode isLatestNode = parentNode.CreateChildElement("IsLatest");
+ ss << std::boolalpha << m_isLatest;
+ isLatestNode.SetText(ss.str());
+ ss.str("");
+ }
+
+ if(m_lastModifiedHasBeenSet)
+ {
+ XmlNode lastModifiedNode = parentNode.CreateChildElement("LastModified");
+ lastModifiedNode.SetText(m_lastModified.ToGmtString(DateFormat::ISO_8601));
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteMarkerReplication.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteMarkerReplication.cpp
new file mode 100644
index 0000000000..3337521fa5
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteMarkerReplication.cpp
@@ -0,0 +1,66 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/DeleteMarkerReplication.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
+{
+
+DeleteMarkerReplication::DeleteMarkerReplication() :
+ m_status(DeleteMarkerReplicationStatus::NOT_SET),
+ m_statusHasBeenSet(false)
+{
+}
+
+DeleteMarkerReplication::DeleteMarkerReplication(const XmlNode& xmlNode) :
+ m_status(DeleteMarkerReplicationStatus::NOT_SET),
+ m_statusHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+DeleteMarkerReplication& DeleteMarkerReplication::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode statusNode = resultNode.FirstChild("Status");
+ if(!statusNode.IsNull())
+ {
+ m_status = DeleteMarkerReplicationStatusMapper::GetDeleteMarkerReplicationStatusForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(statusNode.GetText()).c_str()).c_str());
+ m_statusHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void DeleteMarkerReplication::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_statusHasBeenSet)
+ {
+ XmlNode statusNode = parentNode.CreateChildElement("Status");
+ statusNode.SetText(DeleteMarkerReplicationStatusMapper::GetNameForDeleteMarkerReplicationStatus(m_status));
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteMarkerReplicationStatus.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteMarkerReplicationStatus.cpp
new file mode 100644
index 0000000000..c5ec052949
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteMarkerReplicationStatus.cpp
@@ -0,0 +1,70 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/DeleteMarkerReplicationStatus.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 DeleteMarkerReplicationStatusMapper
+ {
+
+ static const int Enabled_HASH = HashingUtils::HashString("Enabled");
+ static const int Disabled_HASH = HashingUtils::HashString("Disabled");
+
+
+ DeleteMarkerReplicationStatus GetDeleteMarkerReplicationStatusForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == Enabled_HASH)
+ {
+ return DeleteMarkerReplicationStatus::Enabled;
+ }
+ else if (hashCode == Disabled_HASH)
+ {
+ return DeleteMarkerReplicationStatus::Disabled;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<DeleteMarkerReplicationStatus>(hashCode);
+ }
+
+ return DeleteMarkerReplicationStatus::NOT_SET;
+ }
+
+ Aws::String GetNameForDeleteMarkerReplicationStatus(DeleteMarkerReplicationStatus enumValue)
+ {
+ switch(enumValue)
+ {
+ case DeleteMarkerReplicationStatus::Enabled:
+ return "Enabled";
+ case DeleteMarkerReplicationStatus::Disabled:
+ return "Disabled";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace DeleteMarkerReplicationStatusMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
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
new file mode 100644
index 0000000000..08da25d567
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectRequest.cpp
@@ -0,0 +1,98 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/DeleteObjectRequest.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;
+
+DeleteObjectRequest::DeleteObjectRequest() :
+ m_bucketHasBeenSet(false),
+ m_keyHasBeenSet(false),
+ m_mFAHasBeenSet(false),
+ m_versionIdHasBeenSet(false),
+ m_requestPayer(RequestPayer::NOT_SET),
+ m_requestPayerHasBeenSet(false),
+ m_bypassGovernanceRetention(false),
+ m_bypassGovernanceRetentionHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String DeleteObjectRequest::SerializePayload() const
+{
+ return {};
+}
+
+void DeleteObjectRequest::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 DeleteObjectRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_mFAHasBeenSet)
+ {
+ ss << m_mFA;
+ headers.emplace("x-amz-mfa", ss.str());
+ ss.str("");
+ }
+
+ if(m_requestPayerHasBeenSet)
+ {
+ headers.emplace("x-amz-request-payer", RequestPayerMapper::GetNameForRequestPayer(m_requestPayer));
+ }
+
+ if(m_bypassGovernanceRetentionHasBeenSet)
+ {
+ ss << m_bypassGovernanceRetention;
+ headers.emplace("x-amz-bypass-governance-retention", ss.str());
+ ss.str("");
+ }
+
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectResult.cpp
new file mode 100644
index 0000000000..ee540456dc
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectResult.cpp
@@ -0,0 +1,61 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/DeleteObjectResult.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;
+
+DeleteObjectResult::DeleteObjectResult() :
+ m_deleteMarker(false),
+ m_requestCharged(RequestCharged::NOT_SET)
+{
+}
+
+DeleteObjectResult::DeleteObjectResult(const Aws::AmazonWebServiceResult<XmlDocument>& result) :
+ m_deleteMarker(false),
+ m_requestCharged(RequestCharged::NOT_SET)
+{
+ *this = result;
+}
+
+DeleteObjectResult& DeleteObjectResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ }
+
+ 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& 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/DeleteObjectTaggingRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectTaggingRequest.cpp
new file mode 100644
index 0000000000..580a7fa70b
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectTaggingRequest.cpp
@@ -0,0 +1,74 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/DeleteObjectTaggingRequest.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;
+
+DeleteObjectTaggingRequest::DeleteObjectTaggingRequest() :
+ m_bucketHasBeenSet(false),
+ m_keyHasBeenSet(false),
+ m_versionIdHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String DeleteObjectTaggingRequest::SerializePayload() const
+{
+ return {};
+}
+
+void DeleteObjectTaggingRequest::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 DeleteObjectTaggingRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectTaggingResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectTaggingResult.cpp
new file mode 100644
index 0000000000..251d63ee55
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectTaggingResult.cpp
@@ -0,0 +1,45 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/DeleteObjectTaggingResult.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;
+
+DeleteObjectTaggingResult::DeleteObjectTaggingResult()
+{
+}
+
+DeleteObjectTaggingResult::DeleteObjectTaggingResult(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ *this = result;
+}
+
+DeleteObjectTaggingResult& DeleteObjectTaggingResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ }
+
+ const auto& headers = result.GetHeaderValueCollection();
+ const auto& versionIdIter = headers.find("x-amz-version-id");
+ if(versionIdIter != headers.end())
+ {
+ m_versionId = versionIdIter->second;
+ }
+
+ return *this;
+}
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
new file mode 100644
index 0000000000..42118cc4b5
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectsRequest.cpp
@@ -0,0 +1,101 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/DeleteObjectsRequest.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;
+
+DeleteObjectsRequest::DeleteObjectsRequest() :
+ m_bucketHasBeenSet(false),
+ m_deleteHasBeenSet(false),
+ m_mFAHasBeenSet(false),
+ m_requestPayer(RequestPayer::NOT_SET),
+ m_requestPayerHasBeenSet(false),
+ m_bypassGovernanceRetention(false),
+ m_bypassGovernanceRetentionHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String DeleteObjectsRequest::SerializePayload() const
+{
+ XmlDocument payloadDoc = XmlDocument::CreateWithRootNode("Delete");
+
+ XmlNode parentNode = payloadDoc.GetRootElement();
+ parentNode.SetAttributeValue("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/");
+
+ m_delete.AddToNode(parentNode);
+ if(parentNode.HasChildren())
+ {
+ return payloadDoc.ConvertToString();
+ }
+
+ return {};
+}
+
+void DeleteObjectsRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 DeleteObjectsRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_mFAHasBeenSet)
+ {
+ ss << m_mFA;
+ headers.emplace("x-amz-mfa", ss.str());
+ ss.str("");
+ }
+
+ if(m_requestPayerHasBeenSet)
+ {
+ headers.emplace("x-amz-request-payer", RequestPayerMapper::GetNameForRequestPayer(m_requestPayer));
+ }
+
+ if(m_bypassGovernanceRetentionHasBeenSet)
+ {
+ ss << m_bypassGovernanceRetention;
+ headers.emplace("x-amz-bypass-governance-retention", ss.str());
+ ss.str("");
+ }
+
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectsResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectsResult.cpp
new file mode 100644
index 0000000000..1af34a1d46
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeleteObjectsResult.cpp
@@ -0,0 +1,69 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/DeleteObjectsResult.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;
+
+DeleteObjectsResult::DeleteObjectsResult() :
+ m_requestCharged(RequestCharged::NOT_SET)
+{
+}
+
+DeleteObjectsResult::DeleteObjectsResult(const Aws::AmazonWebServiceResult<XmlDocument>& result) :
+ m_requestCharged(RequestCharged::NOT_SET)
+{
+ *this = result;
+}
+
+DeleteObjectsResult& DeleteObjectsResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode deletedNode = resultNode.FirstChild("Deleted");
+ if(!deletedNode.IsNull())
+ {
+ XmlNode deletedMember = deletedNode;
+ while(!deletedMember.IsNull())
+ {
+ m_deleted.push_back(deletedMember);
+ deletedMember = deletedMember.NextNode("Deleted");
+ }
+
+ }
+ XmlNode errorsNode = resultNode.FirstChild("Error");
+ if(!errorsNode.IsNull())
+ {
+ XmlNode errorMember = errorsNode;
+ while(!errorMember.IsNull())
+ {
+ m_errors.push_back(errorMember);
+ errorMember = errorMember.NextNode("Error");
+ }
+
+ }
+ }
+
+ const auto& headers = result.GetHeaderValueCollection();
+ 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/DeletePublicAccessBlockRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeletePublicAccessBlockRequest.cpp
new file mode 100644
index 0000000000..750457f594
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeletePublicAccessBlockRequest.cpp
@@ -0,0 +1,65 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/DeletePublicAccessBlockRequest.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;
+
+DeletePublicAccessBlockRequest::DeletePublicAccessBlockRequest() :
+ m_bucketHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String DeletePublicAccessBlockRequest::SerializePayload() const
+{
+ return {};
+}
+
+void DeletePublicAccessBlockRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 DeletePublicAccessBlockRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeletedObject.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeletedObject.cpp
new file mode 100644
index 0000000000..b883421480
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/DeletedObject.cpp
@@ -0,0 +1,110 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/DeletedObject.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
+{
+
+DeletedObject::DeletedObject() :
+ m_keyHasBeenSet(false),
+ m_versionIdHasBeenSet(false),
+ m_deleteMarker(false),
+ m_deleteMarkerHasBeenSet(false),
+ m_deleteMarkerVersionIdHasBeenSet(false)
+{
+}
+
+DeletedObject::DeletedObject(const XmlNode& xmlNode) :
+ m_keyHasBeenSet(false),
+ m_versionIdHasBeenSet(false),
+ m_deleteMarker(false),
+ m_deleteMarkerHasBeenSet(false),
+ m_deleteMarkerVersionIdHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+DeletedObject& DeletedObject::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode keyNode = resultNode.FirstChild("Key");
+ if(!keyNode.IsNull())
+ {
+ m_key = Aws::Utils::Xml::DecodeEscapedXmlText(keyNode.GetText());
+ m_keyHasBeenSet = true;
+ }
+ XmlNode versionIdNode = resultNode.FirstChild("VersionId");
+ if(!versionIdNode.IsNull())
+ {
+ m_versionId = Aws::Utils::Xml::DecodeEscapedXmlText(versionIdNode.GetText());
+ m_versionIdHasBeenSet = true;
+ }
+ XmlNode deleteMarkerNode = resultNode.FirstChild("DeleteMarker");
+ if(!deleteMarkerNode.IsNull())
+ {
+ m_deleteMarker = StringUtils::ConvertToBool(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(deleteMarkerNode.GetText()).c_str()).c_str());
+ m_deleteMarkerHasBeenSet = true;
+ }
+ XmlNode deleteMarkerVersionIdNode = resultNode.FirstChild("DeleteMarkerVersionId");
+ if(!deleteMarkerVersionIdNode.IsNull())
+ {
+ m_deleteMarkerVersionId = Aws::Utils::Xml::DecodeEscapedXmlText(deleteMarkerVersionIdNode.GetText());
+ m_deleteMarkerVersionIdHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void DeletedObject::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_keyHasBeenSet)
+ {
+ XmlNode keyNode = parentNode.CreateChildElement("Key");
+ keyNode.SetText(m_key);
+ }
+
+ if(m_versionIdHasBeenSet)
+ {
+ XmlNode versionIdNode = parentNode.CreateChildElement("VersionId");
+ versionIdNode.SetText(m_versionId);
+ }
+
+ if(m_deleteMarkerHasBeenSet)
+ {
+ XmlNode deleteMarkerNode = parentNode.CreateChildElement("DeleteMarker");
+ ss << std::boolalpha << m_deleteMarker;
+ deleteMarkerNode.SetText(ss.str());
+ ss.str("");
+ }
+
+ if(m_deleteMarkerVersionIdHasBeenSet)
+ {
+ XmlNode deleteMarkerVersionIdNode = parentNode.CreateChildElement("DeleteMarkerVersionId");
+ deleteMarkerVersionIdNode.SetText(m_deleteMarkerVersionId);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Destination.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Destination.cpp
new file mode 100644
index 0000000000..abffe638b4
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Destination.cpp
@@ -0,0 +1,150 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/Destination.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
+{
+
+Destination::Destination() :
+ m_bucketHasBeenSet(false),
+ m_accountHasBeenSet(false),
+ m_storageClass(StorageClass::NOT_SET),
+ m_storageClassHasBeenSet(false),
+ m_accessControlTranslationHasBeenSet(false),
+ m_encryptionConfigurationHasBeenSet(false),
+ m_replicationTimeHasBeenSet(false),
+ m_metricsHasBeenSet(false)
+{
+}
+
+Destination::Destination(const XmlNode& xmlNode) :
+ m_bucketHasBeenSet(false),
+ m_accountHasBeenSet(false),
+ m_storageClass(StorageClass::NOT_SET),
+ m_storageClassHasBeenSet(false),
+ m_accessControlTranslationHasBeenSet(false),
+ m_encryptionConfigurationHasBeenSet(false),
+ m_replicationTimeHasBeenSet(false),
+ m_metricsHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+Destination& Destination::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode bucketNode = resultNode.FirstChild("Bucket");
+ if(!bucketNode.IsNull())
+ {
+ m_bucket = Aws::Utils::Xml::DecodeEscapedXmlText(bucketNode.GetText());
+ m_bucketHasBeenSet = true;
+ }
+ XmlNode accountNode = resultNode.FirstChild("Account");
+ if(!accountNode.IsNull())
+ {
+ m_account = Aws::Utils::Xml::DecodeEscapedXmlText(accountNode.GetText());
+ m_accountHasBeenSet = true;
+ }
+ XmlNode storageClassNode = resultNode.FirstChild("StorageClass");
+ if(!storageClassNode.IsNull())
+ {
+ m_storageClass = StorageClassMapper::GetStorageClassForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(storageClassNode.GetText()).c_str()).c_str());
+ m_storageClassHasBeenSet = true;
+ }
+ XmlNode accessControlTranslationNode = resultNode.FirstChild("AccessControlTranslation");
+ if(!accessControlTranslationNode.IsNull())
+ {
+ m_accessControlTranslation = accessControlTranslationNode;
+ m_accessControlTranslationHasBeenSet = true;
+ }
+ XmlNode encryptionConfigurationNode = resultNode.FirstChild("EncryptionConfiguration");
+ if(!encryptionConfigurationNode.IsNull())
+ {
+ m_encryptionConfiguration = encryptionConfigurationNode;
+ m_encryptionConfigurationHasBeenSet = true;
+ }
+ XmlNode replicationTimeNode = resultNode.FirstChild("ReplicationTime");
+ if(!replicationTimeNode.IsNull())
+ {
+ m_replicationTime = replicationTimeNode;
+ m_replicationTimeHasBeenSet = true;
+ }
+ XmlNode metricsNode = resultNode.FirstChild("Metrics");
+ if(!metricsNode.IsNull())
+ {
+ m_metrics = metricsNode;
+ m_metricsHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void Destination::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_bucketHasBeenSet)
+ {
+ XmlNode bucketNode = parentNode.CreateChildElement("Bucket");
+ bucketNode.SetText(m_bucket);
+ }
+
+ if(m_accountHasBeenSet)
+ {
+ XmlNode accountNode = parentNode.CreateChildElement("Account");
+ accountNode.SetText(m_account);
+ }
+
+ if(m_storageClassHasBeenSet)
+ {
+ XmlNode storageClassNode = parentNode.CreateChildElement("StorageClass");
+ storageClassNode.SetText(StorageClassMapper::GetNameForStorageClass(m_storageClass));
+ }
+
+ if(m_accessControlTranslationHasBeenSet)
+ {
+ XmlNode accessControlTranslationNode = parentNode.CreateChildElement("AccessControlTranslation");
+ m_accessControlTranslation.AddToNode(accessControlTranslationNode);
+ }
+
+ if(m_encryptionConfigurationHasBeenSet)
+ {
+ XmlNode encryptionConfigurationNode = parentNode.CreateChildElement("EncryptionConfiguration");
+ m_encryptionConfiguration.AddToNode(encryptionConfigurationNode);
+ }
+
+ if(m_replicationTimeHasBeenSet)
+ {
+ XmlNode replicationTimeNode = parentNode.CreateChildElement("ReplicationTime");
+ m_replicationTime.AddToNode(replicationTimeNode);
+ }
+
+ if(m_metricsHasBeenSet)
+ {
+ XmlNode metricsNode = parentNode.CreateChildElement("Metrics");
+ m_metrics.AddToNode(metricsNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/EncodingType.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/EncodingType.cpp
new file mode 100644
index 0000000000..c72aa9a12f
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/EncodingType.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/EncodingType.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 EncodingTypeMapper
+ {
+
+ static const int url_HASH = HashingUtils::HashString("url");
+
+
+ EncodingType GetEncodingTypeForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == url_HASH)
+ {
+ return EncodingType::url;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<EncodingType>(hashCode);
+ }
+
+ return EncodingType::NOT_SET;
+ }
+
+ Aws::String GetNameForEncodingType(EncodingType enumValue)
+ {
+ switch(enumValue)
+ {
+ case EncodingType::url:
+ return "url";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace EncodingTypeMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Encryption.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Encryption.cpp
new file mode 100644
index 0000000000..3bd7d72fd4
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Encryption.cpp
@@ -0,0 +1,94 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/Encryption.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
+{
+
+Encryption::Encryption() :
+ m_encryptionType(ServerSideEncryption::NOT_SET),
+ m_encryptionTypeHasBeenSet(false),
+ m_kMSKeyIdHasBeenSet(false),
+ m_kMSContextHasBeenSet(false)
+{
+}
+
+Encryption::Encryption(const XmlNode& xmlNode) :
+ m_encryptionType(ServerSideEncryption::NOT_SET),
+ m_encryptionTypeHasBeenSet(false),
+ m_kMSKeyIdHasBeenSet(false),
+ m_kMSContextHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+Encryption& Encryption::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode encryptionTypeNode = resultNode.FirstChild("EncryptionType");
+ if(!encryptionTypeNode.IsNull())
+ {
+ m_encryptionType = ServerSideEncryptionMapper::GetServerSideEncryptionForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(encryptionTypeNode.GetText()).c_str()).c_str());
+ m_encryptionTypeHasBeenSet = true;
+ }
+ XmlNode kMSKeyIdNode = resultNode.FirstChild("KMSKeyId");
+ if(!kMSKeyIdNode.IsNull())
+ {
+ m_kMSKeyId = Aws::Utils::Xml::DecodeEscapedXmlText(kMSKeyIdNode.GetText());
+ m_kMSKeyIdHasBeenSet = true;
+ }
+ XmlNode kMSContextNode = resultNode.FirstChild("KMSContext");
+ if(!kMSContextNode.IsNull())
+ {
+ m_kMSContext = Aws::Utils::Xml::DecodeEscapedXmlText(kMSContextNode.GetText());
+ m_kMSContextHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void Encryption::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_encryptionTypeHasBeenSet)
+ {
+ XmlNode encryptionTypeNode = parentNode.CreateChildElement("EncryptionType");
+ encryptionTypeNode.SetText(ServerSideEncryptionMapper::GetNameForServerSideEncryption(m_encryptionType));
+ }
+
+ if(m_kMSKeyIdHasBeenSet)
+ {
+ XmlNode kMSKeyIdNode = parentNode.CreateChildElement("KMSKeyId");
+ kMSKeyIdNode.SetText(m_kMSKeyId);
+ }
+
+ if(m_kMSContextHasBeenSet)
+ {
+ XmlNode kMSContextNode = parentNode.CreateChildElement("KMSContext");
+ kMSContextNode.SetText(m_kMSContext);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/EncryptionConfiguration.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/EncryptionConfiguration.cpp
new file mode 100644
index 0000000000..a81842d242
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/EncryptionConfiguration.cpp
@@ -0,0 +1,64 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/EncryptionConfiguration.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
+{
+
+EncryptionConfiguration::EncryptionConfiguration() :
+ m_replicaKmsKeyIDHasBeenSet(false)
+{
+}
+
+EncryptionConfiguration::EncryptionConfiguration(const XmlNode& xmlNode) :
+ m_replicaKmsKeyIDHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+EncryptionConfiguration& EncryptionConfiguration::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode replicaKmsKeyIDNode = resultNode.FirstChild("ReplicaKmsKeyID");
+ if(!replicaKmsKeyIDNode.IsNull())
+ {
+ m_replicaKmsKeyID = Aws::Utils::Xml::DecodeEscapedXmlText(replicaKmsKeyIDNode.GetText());
+ m_replicaKmsKeyIDHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void EncryptionConfiguration::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_replicaKmsKeyIDHasBeenSet)
+ {
+ XmlNode replicaKmsKeyIDNode = parentNode.CreateChildElement("ReplicaKmsKeyID");
+ replicaKmsKeyIDNode.SetText(m_replicaKmsKeyID);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Error.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Error.cpp
new file mode 100644
index 0000000000..bda3e85efe
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Error.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/Error.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
+{
+
+Error::Error() :
+ m_keyHasBeenSet(false),
+ m_versionIdHasBeenSet(false),
+ m_codeHasBeenSet(false),
+ m_messageHasBeenSet(false)
+{
+}
+
+Error::Error(const XmlNode& xmlNode) :
+ m_keyHasBeenSet(false),
+ m_versionIdHasBeenSet(false),
+ m_codeHasBeenSet(false),
+ m_messageHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+Error& Error::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode keyNode = resultNode.FirstChild("Key");
+ if(!keyNode.IsNull())
+ {
+ m_key = Aws::Utils::Xml::DecodeEscapedXmlText(keyNode.GetText());
+ m_keyHasBeenSet = true;
+ }
+ XmlNode versionIdNode = resultNode.FirstChild("VersionId");
+ if(!versionIdNode.IsNull())
+ {
+ m_versionId = Aws::Utils::Xml::DecodeEscapedXmlText(versionIdNode.GetText());
+ m_versionIdHasBeenSet = true;
+ }
+ XmlNode codeNode = resultNode.FirstChild("Code");
+ if(!codeNode.IsNull())
+ {
+ m_code = Aws::Utils::Xml::DecodeEscapedXmlText(codeNode.GetText());
+ m_codeHasBeenSet = true;
+ }
+ XmlNode messageNode = resultNode.FirstChild("Message");
+ if(!messageNode.IsNull())
+ {
+ m_message = Aws::Utils::Xml::DecodeEscapedXmlText(messageNode.GetText());
+ m_messageHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void Error::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_keyHasBeenSet)
+ {
+ XmlNode keyNode = parentNode.CreateChildElement("Key");
+ keyNode.SetText(m_key);
+ }
+
+ if(m_versionIdHasBeenSet)
+ {
+ XmlNode versionIdNode = parentNode.CreateChildElement("VersionId");
+ versionIdNode.SetText(m_versionId);
+ }
+
+ if(m_codeHasBeenSet)
+ {
+ XmlNode codeNode = parentNode.CreateChildElement("Code");
+ codeNode.SetText(m_code);
+ }
+
+ if(m_messageHasBeenSet)
+ {
+ XmlNode messageNode = parentNode.CreateChildElement("Message");
+ messageNode.SetText(m_message);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ErrorDocument.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ErrorDocument.cpp
new file mode 100644
index 0000000000..84a923ca59
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ErrorDocument.cpp
@@ -0,0 +1,64 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ErrorDocument.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
+{
+
+ErrorDocument::ErrorDocument() :
+ m_keyHasBeenSet(false)
+{
+}
+
+ErrorDocument::ErrorDocument(const XmlNode& xmlNode) :
+ m_keyHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+ErrorDocument& ErrorDocument::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode keyNode = resultNode.FirstChild("Key");
+ if(!keyNode.IsNull())
+ {
+ m_key = Aws::Utils::Xml::DecodeEscapedXmlText(keyNode.GetText());
+ m_keyHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void ErrorDocument::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_keyHasBeenSet)
+ {
+ XmlNode keyNode = parentNode.CreateChildElement("Key");
+ keyNode.SetText(m_key);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
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
new file mode 100644
index 0000000000..c6e779ab06
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Event.cpp
@@ -0,0 +1,175 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/Event.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 EventMapper
+ {
+
+ static const int s3_ReducedRedundancyLostObject_HASH = HashingUtils::HashString("s3:ReducedRedundancyLostObject");
+ static const int s3_ObjectCreated_HASH = HashingUtils::HashString("s3:ObjectCreated:*");
+ static const int s3_ObjectCreated_Put_HASH = HashingUtils::HashString("s3:ObjectCreated:Put");
+ static const int s3_ObjectCreated_Post_HASH = HashingUtils::HashString("s3:ObjectCreated:Post");
+ static const int s3_ObjectCreated_Copy_HASH = HashingUtils::HashString("s3:ObjectCreated:Copy");
+ static const int s3_ObjectCreated_CompleteMultipartUpload_HASH = HashingUtils::HashString("s3:ObjectCreated:CompleteMultipartUpload");
+ static const int s3_ObjectRemoved_HASH = HashingUtils::HashString("s3:ObjectRemoved:*");
+ static const int s3_ObjectRemoved_Delete_HASH = HashingUtils::HashString("s3:ObjectRemoved:Delete");
+ static const int s3_ObjectRemoved_DeleteMarkerCreated_HASH = HashingUtils::HashString("s3:ObjectRemoved:DeleteMarkerCreated");
+ static const int s3_ObjectRestore_HASH = HashingUtils::HashString("s3:ObjectRestore:*");
+ static const int s3_ObjectRestore_Post_HASH = HashingUtils::HashString("s3:ObjectRestore:Post");
+ static const int s3_ObjectRestore_Completed_HASH = HashingUtils::HashString("s3:ObjectRestore:Completed");
+ static const int s3_Replication_HASH = HashingUtils::HashString("s3:Replication:*");
+ static const int s3_Replication_OperationFailedReplication_HASH = HashingUtils::HashString("s3:Replication:OperationFailedReplication");
+ 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");
+
+
+ Event GetEventForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == s3_ReducedRedundancyLostObject_HASH)
+ {
+ return Event::s3_ReducedRedundancyLostObject;
+ }
+ else if (hashCode == s3_ObjectCreated_HASH)
+ {
+ return Event::s3_ObjectCreated;
+ }
+ else if (hashCode == s3_ObjectCreated_Put_HASH)
+ {
+ return Event::s3_ObjectCreated_Put;
+ }
+ else if (hashCode == s3_ObjectCreated_Post_HASH)
+ {
+ return Event::s3_ObjectCreated_Post;
+ }
+ else if (hashCode == s3_ObjectCreated_Copy_HASH)
+ {
+ return Event::s3_ObjectCreated_Copy;
+ }
+ else if (hashCode == s3_ObjectCreated_CompleteMultipartUpload_HASH)
+ {
+ return Event::s3_ObjectCreated_CompleteMultipartUpload;
+ }
+ else if (hashCode == s3_ObjectRemoved_HASH)
+ {
+ return Event::s3_ObjectRemoved;
+ }
+ else if (hashCode == s3_ObjectRemoved_Delete_HASH)
+ {
+ return Event::s3_ObjectRemoved_Delete;
+ }
+ else if (hashCode == s3_ObjectRemoved_DeleteMarkerCreated_HASH)
+ {
+ return Event::s3_ObjectRemoved_DeleteMarkerCreated;
+ }
+ else if (hashCode == s3_ObjectRestore_HASH)
+ {
+ return Event::s3_ObjectRestore;
+ }
+ else if (hashCode == s3_ObjectRestore_Post_HASH)
+ {
+ return Event::s3_ObjectRestore_Post;
+ }
+ else if (hashCode == s3_ObjectRestore_Completed_HASH)
+ {
+ return Event::s3_ObjectRestore_Completed;
+ }
+ else if (hashCode == s3_Replication_HASH)
+ {
+ return Event::s3_Replication;
+ }
+ else if (hashCode == s3_Replication_OperationFailedReplication_HASH)
+ {
+ return Event::s3_Replication_OperationFailedReplication;
+ }
+ else if (hashCode == s3_Replication_OperationNotTracked_HASH)
+ {
+ return Event::s3_Replication_OperationNotTracked;
+ }
+ else if (hashCode == s3_Replication_OperationMissedThreshold_HASH)
+ {
+ return Event::s3_Replication_OperationMissedThreshold;
+ }
+ else if (hashCode == s3_Replication_OperationReplicatedAfterThreshold_HASH)
+ {
+ return Event::s3_Replication_OperationReplicatedAfterThreshold;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<Event>(hashCode);
+ }
+
+ return Event::NOT_SET;
+ }
+
+ Aws::String GetNameForEvent(Event enumValue)
+ {
+ switch(enumValue)
+ {
+ case Event::s3_ReducedRedundancyLostObject:
+ return "s3:ReducedRedundancyLostObject";
+ case Event::s3_ObjectCreated:
+ return "s3:ObjectCreated:*";
+ case Event::s3_ObjectCreated_Put:
+ return "s3:ObjectCreated:Put";
+ case Event::s3_ObjectCreated_Post:
+ return "s3:ObjectCreated:Post";
+ case Event::s3_ObjectCreated_Copy:
+ return "s3:ObjectCreated:Copy";
+ case Event::s3_ObjectCreated_CompleteMultipartUpload:
+ return "s3:ObjectCreated:CompleteMultipartUpload";
+ case Event::s3_ObjectRemoved:
+ return "s3:ObjectRemoved:*";
+ case Event::s3_ObjectRemoved_Delete:
+ return "s3:ObjectRemoved:Delete";
+ case Event::s3_ObjectRemoved_DeleteMarkerCreated:
+ return "s3:ObjectRemoved:DeleteMarkerCreated";
+ case Event::s3_ObjectRestore:
+ return "s3:ObjectRestore:*";
+ case Event::s3_ObjectRestore_Post:
+ return "s3:ObjectRestore:Post";
+ case Event::s3_ObjectRestore_Completed:
+ return "s3:ObjectRestore:Completed";
+ case Event::s3_Replication:
+ return "s3:Replication:*";
+ case Event::s3_Replication_OperationFailedReplication:
+ return "s3:Replication:OperationFailedReplication";
+ case Event::s3_Replication_OperationNotTracked:
+ return "s3:Replication:OperationNotTracked";
+ case Event::s3_Replication_OperationMissedThreshold:
+ return "s3:Replication:OperationMissedThreshold";
+ case Event::s3_Replication_OperationReplicatedAfterThreshold:
+ return "s3:Replication:OperationReplicatedAfterThreshold";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace EventMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ExistingObjectReplication.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ExistingObjectReplication.cpp
new file mode 100644
index 0000000000..7746f0211b
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ExistingObjectReplication.cpp
@@ -0,0 +1,66 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ExistingObjectReplication.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
+{
+
+ExistingObjectReplication::ExistingObjectReplication() :
+ m_status(ExistingObjectReplicationStatus::NOT_SET),
+ m_statusHasBeenSet(false)
+{
+}
+
+ExistingObjectReplication::ExistingObjectReplication(const XmlNode& xmlNode) :
+ m_status(ExistingObjectReplicationStatus::NOT_SET),
+ m_statusHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+ExistingObjectReplication& ExistingObjectReplication::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode statusNode = resultNode.FirstChild("Status");
+ if(!statusNode.IsNull())
+ {
+ m_status = ExistingObjectReplicationStatusMapper::GetExistingObjectReplicationStatusForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(statusNode.GetText()).c_str()).c_str());
+ m_statusHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void ExistingObjectReplication::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_statusHasBeenSet)
+ {
+ XmlNode statusNode = parentNode.CreateChildElement("Status");
+ statusNode.SetText(ExistingObjectReplicationStatusMapper::GetNameForExistingObjectReplicationStatus(m_status));
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ExistingObjectReplicationStatus.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ExistingObjectReplicationStatus.cpp
new file mode 100644
index 0000000000..73e9299a23
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ExistingObjectReplicationStatus.cpp
@@ -0,0 +1,70 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ExistingObjectReplicationStatus.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 ExistingObjectReplicationStatusMapper
+ {
+
+ static const int Enabled_HASH = HashingUtils::HashString("Enabled");
+ static const int Disabled_HASH = HashingUtils::HashString("Disabled");
+
+
+ ExistingObjectReplicationStatus GetExistingObjectReplicationStatusForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == Enabled_HASH)
+ {
+ return ExistingObjectReplicationStatus::Enabled;
+ }
+ else if (hashCode == Disabled_HASH)
+ {
+ return ExistingObjectReplicationStatus::Disabled;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<ExistingObjectReplicationStatus>(hashCode);
+ }
+
+ return ExistingObjectReplicationStatus::NOT_SET;
+ }
+
+ Aws::String GetNameForExistingObjectReplicationStatus(ExistingObjectReplicationStatus enumValue)
+ {
+ switch(enumValue)
+ {
+ case ExistingObjectReplicationStatus::Enabled:
+ return "Enabled";
+ case ExistingObjectReplicationStatus::Disabled:
+ return "Disabled";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace ExistingObjectReplicationStatusMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ExpirationStatus.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ExpirationStatus.cpp
new file mode 100644
index 0000000000..3ead64146e
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ExpirationStatus.cpp
@@ -0,0 +1,70 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ExpirationStatus.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 ExpirationStatusMapper
+ {
+
+ static const int Enabled_HASH = HashingUtils::HashString("Enabled");
+ static const int Disabled_HASH = HashingUtils::HashString("Disabled");
+
+
+ ExpirationStatus GetExpirationStatusForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == Enabled_HASH)
+ {
+ return ExpirationStatus::Enabled;
+ }
+ else if (hashCode == Disabled_HASH)
+ {
+ return ExpirationStatus::Disabled;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<ExpirationStatus>(hashCode);
+ }
+
+ return ExpirationStatus::NOT_SET;
+ }
+
+ Aws::String GetNameForExpirationStatus(ExpirationStatus enumValue)
+ {
+ switch(enumValue)
+ {
+ case ExpirationStatus::Enabled:
+ return "Enabled";
+ case ExpirationStatus::Disabled:
+ return "Disabled";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace ExpirationStatusMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ExpressionType.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ExpressionType.cpp
new file mode 100644
index 0000000000..a54465e5c7
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ExpressionType.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/ExpressionType.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 ExpressionTypeMapper
+ {
+
+ static const int SQL_HASH = HashingUtils::HashString("SQL");
+
+
+ ExpressionType GetExpressionTypeForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == SQL_HASH)
+ {
+ return ExpressionType::SQL;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<ExpressionType>(hashCode);
+ }
+
+ return ExpressionType::NOT_SET;
+ }
+
+ Aws::String GetNameForExpressionType(ExpressionType enumValue)
+ {
+ switch(enumValue)
+ {
+ case ExpressionType::SQL:
+ return "SQL";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace ExpressionTypeMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/FileHeaderInfo.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/FileHeaderInfo.cpp
new file mode 100644
index 0000000000..aced225854
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/FileHeaderInfo.cpp
@@ -0,0 +1,77 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/FileHeaderInfo.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 FileHeaderInfoMapper
+ {
+
+ static const int USE_HASH = HashingUtils::HashString("USE");
+ static const int IGNORE_HASH = HashingUtils::HashString("IGNORE");
+ static const int NONE_HASH = HashingUtils::HashString("NONE");
+
+
+ FileHeaderInfo GetFileHeaderInfoForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == USE_HASH)
+ {
+ return FileHeaderInfo::USE;
+ }
+ else if (hashCode == IGNORE_HASH)
+ {
+ return FileHeaderInfo::IGNORE;
+ }
+ else if (hashCode == NONE_HASH)
+ {
+ return FileHeaderInfo::NONE;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<FileHeaderInfo>(hashCode);
+ }
+
+ return FileHeaderInfo::NOT_SET;
+ }
+
+ Aws::String GetNameForFileHeaderInfo(FileHeaderInfo enumValue)
+ {
+ switch(enumValue)
+ {
+ case FileHeaderInfo::USE:
+ return "USE";
+ case FileHeaderInfo::IGNORE:
+ return "IGNORE";
+ case FileHeaderInfo::NONE:
+ return "NONE";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace FileHeaderInfoMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/FilterRule.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/FilterRule.cpp
new file mode 100644
index 0000000000..e677202fce
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/FilterRule.cpp
@@ -0,0 +1,80 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/FilterRule.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
+{
+
+FilterRule::FilterRule() :
+ m_name(FilterRuleName::NOT_SET),
+ m_nameHasBeenSet(false),
+ m_valueHasBeenSet(false)
+{
+}
+
+FilterRule::FilterRule(const XmlNode& xmlNode) :
+ m_name(FilterRuleName::NOT_SET),
+ m_nameHasBeenSet(false),
+ m_valueHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+FilterRule& FilterRule::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode nameNode = resultNode.FirstChild("Name");
+ if(!nameNode.IsNull())
+ {
+ m_name = FilterRuleNameMapper::GetFilterRuleNameForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(nameNode.GetText()).c_str()).c_str());
+ m_nameHasBeenSet = true;
+ }
+ XmlNode valueNode = resultNode.FirstChild("Value");
+ if(!valueNode.IsNull())
+ {
+ m_value = Aws::Utils::Xml::DecodeEscapedXmlText(valueNode.GetText());
+ m_valueHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void FilterRule::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_nameHasBeenSet)
+ {
+ XmlNode nameNode = parentNode.CreateChildElement("Name");
+ nameNode.SetText(FilterRuleNameMapper::GetNameForFilterRuleName(m_name));
+ }
+
+ if(m_valueHasBeenSet)
+ {
+ XmlNode valueNode = parentNode.CreateChildElement("Value");
+ valueNode.SetText(m_value);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/FilterRuleName.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/FilterRuleName.cpp
new file mode 100644
index 0000000000..84122b0eb1
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/FilterRuleName.cpp
@@ -0,0 +1,70 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/FilterRuleName.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 FilterRuleNameMapper
+ {
+
+ static const int prefix_HASH = HashingUtils::HashString("prefix");
+ static const int suffix_HASH = HashingUtils::HashString("suffix");
+
+
+ FilterRuleName GetFilterRuleNameForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == prefix_HASH)
+ {
+ return FilterRuleName::prefix;
+ }
+ else if (hashCode == suffix_HASH)
+ {
+ return FilterRuleName::suffix;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<FilterRuleName>(hashCode);
+ }
+
+ return FilterRuleName::NOT_SET;
+ }
+
+ Aws::String GetNameForFilterRuleName(FilterRuleName enumValue)
+ {
+ switch(enumValue)
+ {
+ case FilterRuleName::prefix:
+ return "prefix";
+ case FilterRuleName::suffix:
+ return "suffix";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace FilterRuleNameMapper
+ } // 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
new file mode 100644
index 0000000000..3bc67a43cc
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketAccelerateConfigurationRequest.cpp
@@ -0,0 +1,65 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetBucketAccelerateConfigurationRequest.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;
+
+GetBucketAccelerateConfigurationRequest::GetBucketAccelerateConfigurationRequest() :
+ m_bucketHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String GetBucketAccelerateConfigurationRequest::SerializePayload() const
+{
+ return {};
+}
+
+void GetBucketAccelerateConfigurationRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 GetBucketAccelerateConfigurationRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketAccelerateConfigurationResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketAccelerateConfigurationResult.cpp
new file mode 100644
index 0000000000..43f9c27209
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketAccelerateConfigurationResult.cpp
@@ -0,0 +1,44 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetBucketAccelerateConfigurationResult.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+#include <aws/core/AmazonWebServiceResult.h>
+#include <aws/core/utils/StringUtils.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Xml;
+using namespace Aws::Utils;
+using namespace Aws;
+
+GetBucketAccelerateConfigurationResult::GetBucketAccelerateConfigurationResult() :
+ m_status(BucketAccelerateStatus::NOT_SET)
+{
+}
+
+GetBucketAccelerateConfigurationResult::GetBucketAccelerateConfigurationResult(const Aws::AmazonWebServiceResult<XmlDocument>& result) :
+ m_status(BucketAccelerateStatus::NOT_SET)
+{
+ *this = result;
+}
+
+GetBucketAccelerateConfigurationResult& GetBucketAccelerateConfigurationResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode statusNode = resultNode.FirstChild("Status");
+ if(!statusNode.IsNull())
+ {
+ m_status = BucketAccelerateStatusMapper::GetBucketAccelerateStatusForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(statusNode.GetText()).c_str()).c_str());
+ }
+ }
+
+ return *this;
+}
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
new file mode 100644
index 0000000000..df77a9e7f6
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketAclRequest.cpp
@@ -0,0 +1,65 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetBucketAclRequest.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;
+
+GetBucketAclRequest::GetBucketAclRequest() :
+ m_bucketHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String GetBucketAclRequest::SerializePayload() const
+{
+ return {};
+}
+
+void GetBucketAclRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 GetBucketAclRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketAclResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketAclResult.cpp
new file mode 100644
index 0000000000..015d5bb006
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketAclResult.cpp
@@ -0,0 +1,53 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetBucketAclResult.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+#include <aws/core/AmazonWebServiceResult.h>
+#include <aws/core/utils/StringUtils.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Xml;
+using namespace Aws::Utils;
+using namespace Aws;
+
+GetBucketAclResult::GetBucketAclResult()
+{
+}
+
+GetBucketAclResult::GetBucketAclResult(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ *this = result;
+}
+
+GetBucketAclResult& GetBucketAclResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode ownerNode = resultNode.FirstChild("Owner");
+ if(!ownerNode.IsNull())
+ {
+ m_owner = ownerNode;
+ }
+ XmlNode grantsNode = resultNode.FirstChild("AccessControlList");
+ if(!grantsNode.IsNull())
+ {
+ XmlNode grantsMember = grantsNode.FirstChild("Grant");
+ while(!grantsMember.IsNull())
+ {
+ m_grants.push_back(grantsMember);
+ grantsMember = grantsMember.NextNode("Grant");
+ }
+
+ }
+ }
+
+ return *this;
+}
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
new file mode 100644
index 0000000000..5e3d792e2c
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketAnalyticsConfigurationRequest.cpp
@@ -0,0 +1,73 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetBucketAnalyticsConfigurationRequest.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;
+
+GetBucketAnalyticsConfigurationRequest::GetBucketAnalyticsConfigurationRequest() :
+ m_bucketHasBeenSet(false),
+ m_idHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String GetBucketAnalyticsConfigurationRequest::SerializePayload() const
+{
+ return {};
+}
+
+void GetBucketAnalyticsConfigurationRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ if(m_idHasBeenSet)
+ {
+ ss << m_id;
+ uri.AddQueryStringParameter("id", 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 GetBucketAnalyticsConfigurationRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketAnalyticsConfigurationResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketAnalyticsConfigurationResult.cpp
new file mode 100644
index 0000000000..4cd6a0e61f
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketAnalyticsConfigurationResult.cpp
@@ -0,0 +1,38 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetBucketAnalyticsConfigurationResult.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+#include <aws/core/AmazonWebServiceResult.h>
+#include <aws/core/utils/StringUtils.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Xml;
+using namespace Aws::Utils;
+using namespace Aws;
+
+GetBucketAnalyticsConfigurationResult::GetBucketAnalyticsConfigurationResult()
+{
+}
+
+GetBucketAnalyticsConfigurationResult::GetBucketAnalyticsConfigurationResult(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ *this = result;
+}
+
+GetBucketAnalyticsConfigurationResult& GetBucketAnalyticsConfigurationResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ m_analyticsConfiguration = resultNode;
+ }
+
+ return *this;
+}
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
new file mode 100644
index 0000000000..92cc762080
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketCorsRequest.cpp
@@ -0,0 +1,65 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetBucketCorsRequest.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;
+
+GetBucketCorsRequest::GetBucketCorsRequest() :
+ m_bucketHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String GetBucketCorsRequest::SerializePayload() const
+{
+ return {};
+}
+
+void GetBucketCorsRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 GetBucketCorsRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketCorsResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketCorsResult.cpp
new file mode 100644
index 0000000000..9136066b0f
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketCorsResult.cpp
@@ -0,0 +1,48 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetBucketCorsResult.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+#include <aws/core/AmazonWebServiceResult.h>
+#include <aws/core/utils/StringUtils.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Xml;
+using namespace Aws::Utils;
+using namespace Aws;
+
+GetBucketCorsResult::GetBucketCorsResult()
+{
+}
+
+GetBucketCorsResult::GetBucketCorsResult(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ *this = result;
+}
+
+GetBucketCorsResult& GetBucketCorsResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode cORSRulesNode = resultNode.FirstChild("CORSRule");
+ if(!cORSRulesNode.IsNull())
+ {
+ XmlNode cORSRuleMember = cORSRulesNode;
+ while(!cORSRuleMember.IsNull())
+ {
+ m_cORSRules.push_back(cORSRuleMember);
+ cORSRuleMember = cORSRuleMember.NextNode("CORSRule");
+ }
+
+ }
+ }
+
+ return *this;
+}
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
new file mode 100644
index 0000000000..ad69f94035
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketEncryptionRequest.cpp
@@ -0,0 +1,65 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetBucketEncryptionRequest.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;
+
+GetBucketEncryptionRequest::GetBucketEncryptionRequest() :
+ m_bucketHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String GetBucketEncryptionRequest::SerializePayload() const
+{
+ return {};
+}
+
+void GetBucketEncryptionRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 GetBucketEncryptionRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketEncryptionResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketEncryptionResult.cpp
new file mode 100644
index 0000000000..6d1b42e4a0
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketEncryptionResult.cpp
@@ -0,0 +1,38 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetBucketEncryptionResult.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+#include <aws/core/AmazonWebServiceResult.h>
+#include <aws/core/utils/StringUtils.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Xml;
+using namespace Aws::Utils;
+using namespace Aws;
+
+GetBucketEncryptionResult::GetBucketEncryptionResult()
+{
+}
+
+GetBucketEncryptionResult::GetBucketEncryptionResult(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ *this = result;
+}
+
+GetBucketEncryptionResult& GetBucketEncryptionResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ m_serverSideEncryptionConfiguration = resultNode;
+ }
+
+ return *this;
+}
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
new file mode 100644
index 0000000000..ac5e664e69
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketIntelligentTieringConfigurationRequest.cpp
@@ -0,0 +1,59 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetBucketIntelligentTieringConfigurationRequest.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;
+
+GetBucketIntelligentTieringConfigurationRequest::GetBucketIntelligentTieringConfigurationRequest() :
+ m_bucketHasBeenSet(false),
+ m_idHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String GetBucketIntelligentTieringConfigurationRequest::SerializePayload() const
+{
+ return {};
+}
+
+void GetBucketIntelligentTieringConfigurationRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ if(m_idHasBeenSet)
+ {
+ ss << m_id;
+ uri.AddQueryStringParameter("id", 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);
+ }
+ }
+}
+
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketIntelligentTieringConfigurationResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketIntelligentTieringConfigurationResult.cpp
new file mode 100644
index 0000000000..97f4391be3
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketIntelligentTieringConfigurationResult.cpp
@@ -0,0 +1,38 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetBucketIntelligentTieringConfigurationResult.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+#include <aws/core/AmazonWebServiceResult.h>
+#include <aws/core/utils/StringUtils.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Xml;
+using namespace Aws::Utils;
+using namespace Aws;
+
+GetBucketIntelligentTieringConfigurationResult::GetBucketIntelligentTieringConfigurationResult()
+{
+}
+
+GetBucketIntelligentTieringConfigurationResult::GetBucketIntelligentTieringConfigurationResult(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ *this = result;
+}
+
+GetBucketIntelligentTieringConfigurationResult& GetBucketIntelligentTieringConfigurationResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ m_intelligentTieringConfiguration = resultNode;
+ }
+
+ return *this;
+}
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
new file mode 100644
index 0000000000..f3ec3acdc5
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketInventoryConfigurationRequest.cpp
@@ -0,0 +1,73 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetBucketInventoryConfigurationRequest.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;
+
+GetBucketInventoryConfigurationRequest::GetBucketInventoryConfigurationRequest() :
+ m_bucketHasBeenSet(false),
+ m_idHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String GetBucketInventoryConfigurationRequest::SerializePayload() const
+{
+ return {};
+}
+
+void GetBucketInventoryConfigurationRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ if(m_idHasBeenSet)
+ {
+ ss << m_id;
+ uri.AddQueryStringParameter("id", 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 GetBucketInventoryConfigurationRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketInventoryConfigurationResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketInventoryConfigurationResult.cpp
new file mode 100644
index 0000000000..93217331b9
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketInventoryConfigurationResult.cpp
@@ -0,0 +1,38 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetBucketInventoryConfigurationResult.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+#include <aws/core/AmazonWebServiceResult.h>
+#include <aws/core/utils/StringUtils.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Xml;
+using namespace Aws::Utils;
+using namespace Aws;
+
+GetBucketInventoryConfigurationResult::GetBucketInventoryConfigurationResult()
+{
+}
+
+GetBucketInventoryConfigurationResult::GetBucketInventoryConfigurationResult(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ *this = result;
+}
+
+GetBucketInventoryConfigurationResult& GetBucketInventoryConfigurationResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ m_inventoryConfiguration = resultNode;
+ }
+
+ return *this;
+}
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
new file mode 100644
index 0000000000..5abc090ac4
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketLifecycleConfigurationRequest.cpp
@@ -0,0 +1,65 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetBucketLifecycleConfigurationRequest.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;
+
+GetBucketLifecycleConfigurationRequest::GetBucketLifecycleConfigurationRequest() :
+ m_bucketHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String GetBucketLifecycleConfigurationRequest::SerializePayload() const
+{
+ return {};
+}
+
+void GetBucketLifecycleConfigurationRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 GetBucketLifecycleConfigurationRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketLifecycleConfigurationResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketLifecycleConfigurationResult.cpp
new file mode 100644
index 0000000000..6c0db940cf
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketLifecycleConfigurationResult.cpp
@@ -0,0 +1,48 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetBucketLifecycleConfigurationResult.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+#include <aws/core/AmazonWebServiceResult.h>
+#include <aws/core/utils/StringUtils.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Xml;
+using namespace Aws::Utils;
+using namespace Aws;
+
+GetBucketLifecycleConfigurationResult::GetBucketLifecycleConfigurationResult()
+{
+}
+
+GetBucketLifecycleConfigurationResult::GetBucketLifecycleConfigurationResult(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ *this = result;
+}
+
+GetBucketLifecycleConfigurationResult& GetBucketLifecycleConfigurationResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode rulesNode = resultNode.FirstChild("Rule");
+ if(!rulesNode.IsNull())
+ {
+ XmlNode ruleMember = rulesNode;
+ while(!ruleMember.IsNull())
+ {
+ m_rules.push_back(ruleMember);
+ ruleMember = ruleMember.NextNode("Rule");
+ }
+
+ }
+ }
+
+ return *this;
+}
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
new file mode 100644
index 0000000000..68e7f366f6
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketLocationRequest.cpp
@@ -0,0 +1,65 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetBucketLocationRequest.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;
+
+GetBucketLocationRequest::GetBucketLocationRequest() :
+ m_bucketHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String GetBucketLocationRequest::SerializePayload() const
+{
+ return {};
+}
+
+void GetBucketLocationRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 GetBucketLocationRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
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
new file mode 100644
index 0000000000..24fc4e62b0
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketLocationResult.cpp
@@ -0,0 +1,41 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetBucketLocationResult.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+#include <aws/core/AmazonWebServiceResult.h>
+#include <aws/core/utils/StringUtils.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Xml;
+using namespace Aws::Utils;
+using namespace Aws;
+
+GetBucketLocationResult::GetBucketLocationResult():
+ m_locationConstraint(BucketLocationConstraint::NOT_SET)
+{
+}
+
+GetBucketLocationResult::GetBucketLocationResult(const AmazonWebServiceResult<XmlDocument>& result):
+ m_locationConstraint(BucketLocationConstraint::NOT_SET)
+{
+ *this = result;
+}
+
+GetBucketLocationResult& GetBucketLocationResult::operator =(const AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ m_locationConstraint = BucketLocationConstraintMapper::GetBucketLocationConstraintForName(StringUtils::Trim(resultNode.GetText().c_str()).c_str());
+ }
+
+ 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
new file mode 100644
index 0000000000..ee141ec35c
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketLoggingRequest.cpp
@@ -0,0 +1,65 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetBucketLoggingRequest.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;
+
+GetBucketLoggingRequest::GetBucketLoggingRequest() :
+ m_bucketHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String GetBucketLoggingRequest::SerializePayload() const
+{
+ return {};
+}
+
+void GetBucketLoggingRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 GetBucketLoggingRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketLoggingResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketLoggingResult.cpp
new file mode 100644
index 0000000000..903c778a89
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketLoggingResult.cpp
@@ -0,0 +1,42 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetBucketLoggingResult.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+#include <aws/core/AmazonWebServiceResult.h>
+#include <aws/core/utils/StringUtils.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Xml;
+using namespace Aws::Utils;
+using namespace Aws;
+
+GetBucketLoggingResult::GetBucketLoggingResult()
+{
+}
+
+GetBucketLoggingResult::GetBucketLoggingResult(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ *this = result;
+}
+
+GetBucketLoggingResult& GetBucketLoggingResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode loggingEnabledNode = resultNode.FirstChild("LoggingEnabled");
+ if(!loggingEnabledNode.IsNull())
+ {
+ m_loggingEnabled = loggingEnabledNode;
+ }
+ }
+
+ return *this;
+}
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
new file mode 100644
index 0000000000..c384ad6f1e
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketMetricsConfigurationRequest.cpp
@@ -0,0 +1,73 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetBucketMetricsConfigurationRequest.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;
+
+GetBucketMetricsConfigurationRequest::GetBucketMetricsConfigurationRequest() :
+ m_bucketHasBeenSet(false),
+ m_idHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String GetBucketMetricsConfigurationRequest::SerializePayload() const
+{
+ return {};
+}
+
+void GetBucketMetricsConfigurationRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ if(m_idHasBeenSet)
+ {
+ ss << m_id;
+ uri.AddQueryStringParameter("id", 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 GetBucketMetricsConfigurationRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketMetricsConfigurationResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketMetricsConfigurationResult.cpp
new file mode 100644
index 0000000000..139492f9a3
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketMetricsConfigurationResult.cpp
@@ -0,0 +1,38 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetBucketMetricsConfigurationResult.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+#include <aws/core/AmazonWebServiceResult.h>
+#include <aws/core/utils/StringUtils.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Xml;
+using namespace Aws::Utils;
+using namespace Aws;
+
+GetBucketMetricsConfigurationResult::GetBucketMetricsConfigurationResult()
+{
+}
+
+GetBucketMetricsConfigurationResult::GetBucketMetricsConfigurationResult(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ *this = result;
+}
+
+GetBucketMetricsConfigurationResult& GetBucketMetricsConfigurationResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ m_metricsConfiguration = resultNode;
+ }
+
+ return *this;
+}
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
new file mode 100644
index 0000000000..6e892ead3b
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketNotificationConfigurationRequest.cpp
@@ -0,0 +1,65 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetBucketNotificationConfigurationRequest.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;
+
+GetBucketNotificationConfigurationRequest::GetBucketNotificationConfigurationRequest() :
+ m_bucketHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String GetBucketNotificationConfigurationRequest::SerializePayload() const
+{
+ return {};
+}
+
+void GetBucketNotificationConfigurationRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 GetBucketNotificationConfigurationRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
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
new file mode 100644
index 0000000000..de68f4316a
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketNotificationConfigurationResult.cpp
@@ -0,0 +1,70 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetBucketNotificationConfigurationResult.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+#include <aws/core/AmazonWebServiceResult.h>
+#include <aws/core/utils/StringUtils.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Xml;
+using namespace Aws::Utils;
+using namespace Aws;
+
+GetBucketNotificationConfigurationResult::GetBucketNotificationConfigurationResult()
+{
+}
+
+GetBucketNotificationConfigurationResult::GetBucketNotificationConfigurationResult(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ *this = result;
+}
+
+GetBucketNotificationConfigurationResult& GetBucketNotificationConfigurationResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode topicConfigurationsNode = resultNode.FirstChild("TopicConfiguration");
+ if(!topicConfigurationsNode.IsNull())
+ {
+ XmlNode topicConfigurationMember = topicConfigurationsNode;
+ while(!topicConfigurationMember.IsNull())
+ {
+ m_topicConfigurations.push_back(topicConfigurationMember);
+ topicConfigurationMember = topicConfigurationMember.NextNode("TopicConfiguration");
+ }
+
+ }
+ XmlNode queueConfigurationsNode = resultNode.FirstChild("QueueConfiguration");
+ if(!queueConfigurationsNode.IsNull())
+ {
+ XmlNode queueConfigurationMember = queueConfigurationsNode;
+ while(!queueConfigurationMember.IsNull())
+ {
+ m_queueConfigurations.push_back(queueConfigurationMember);
+ queueConfigurationMember = queueConfigurationMember.NextNode("QueueConfiguration");
+ }
+
+ }
+ XmlNode lambdaFunctionConfigurationsNode = resultNode.FirstChild("CloudFunctionConfiguration");
+ if(!lambdaFunctionConfigurationsNode.IsNull())
+ {
+ XmlNode cloudFunctionConfigurationMember = lambdaFunctionConfigurationsNode;
+ while(!cloudFunctionConfigurationMember.IsNull())
+ {
+ m_lambdaFunctionConfigurations.push_back(cloudFunctionConfigurationMember);
+ cloudFunctionConfigurationMember = cloudFunctionConfigurationMember.NextNode("CloudFunctionConfiguration");
+ }
+
+ }
+ }
+
+ 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
new file mode 100644
index 0000000000..efaa529d2e
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketOwnershipControlsRequest.cpp
@@ -0,0 +1,65 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetBucketOwnershipControlsRequest.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;
+
+GetBucketOwnershipControlsRequest::GetBucketOwnershipControlsRequest() :
+ m_bucketHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String GetBucketOwnershipControlsRequest::SerializePayload() const
+{
+ return {};
+}
+
+void GetBucketOwnershipControlsRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 GetBucketOwnershipControlsRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketOwnershipControlsResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketOwnershipControlsResult.cpp
new file mode 100644
index 0000000000..185147032e
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketOwnershipControlsResult.cpp
@@ -0,0 +1,38 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetBucketOwnershipControlsResult.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+#include <aws/core/AmazonWebServiceResult.h>
+#include <aws/core/utils/StringUtils.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Xml;
+using namespace Aws::Utils;
+using namespace Aws;
+
+GetBucketOwnershipControlsResult::GetBucketOwnershipControlsResult()
+{
+}
+
+GetBucketOwnershipControlsResult::GetBucketOwnershipControlsResult(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ *this = result;
+}
+
+GetBucketOwnershipControlsResult& GetBucketOwnershipControlsResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ m_ownershipControls = resultNode;
+ }
+
+ return *this;
+}
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
new file mode 100644
index 0000000000..e41b1fe0c5
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketPolicyRequest.cpp
@@ -0,0 +1,65 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetBucketPolicyRequest.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;
+
+GetBucketPolicyRequest::GetBucketPolicyRequest() :
+ m_bucketHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String GetBucketPolicyRequest::SerializePayload() const
+{
+ return {};
+}
+
+void GetBucketPolicyRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 GetBucketPolicyRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketPolicyResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketPolicyResult.cpp
new file mode 100644
index 0000000000..a5a1213c79
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketPolicyResult.cpp
@@ -0,0 +1,48 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetBucketPolicyResult.h>
+#include <aws/core/AmazonWebServiceResult.h>
+#include <aws/core/utils/StringUtils.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Stream;
+using namespace Aws::Utils;
+using namespace Aws;
+
+GetBucketPolicyResult::GetBucketPolicyResult()
+{
+}
+
+GetBucketPolicyResult::GetBucketPolicyResult(GetBucketPolicyResult&& toMove) :
+ m_policy(std::move(toMove.m_policy))
+{
+}
+
+GetBucketPolicyResult& GetBucketPolicyResult::operator=(GetBucketPolicyResult&& toMove)
+{
+ if(this == &toMove)
+ {
+ return *this;
+ }
+
+ m_policy = std::move(toMove.m_policy);
+
+ return *this;
+}
+
+GetBucketPolicyResult::GetBucketPolicyResult(Aws::AmazonWebServiceResult<ResponseStream>&& result)
+{
+ *this = std::move(result);
+}
+
+GetBucketPolicyResult& GetBucketPolicyResult::operator =(Aws::AmazonWebServiceResult<ResponseStream>&& result)
+{
+ m_policy = result.TakeOwnershipOfPayload();
+
+ return *this;
+}
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
new file mode 100644
index 0000000000..3c487f9634
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketPolicyStatusRequest.cpp
@@ -0,0 +1,65 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetBucketPolicyStatusRequest.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;
+
+GetBucketPolicyStatusRequest::GetBucketPolicyStatusRequest() :
+ m_bucketHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String GetBucketPolicyStatusRequest::SerializePayload() const
+{
+ return {};
+}
+
+void GetBucketPolicyStatusRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 GetBucketPolicyStatusRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketPolicyStatusResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketPolicyStatusResult.cpp
new file mode 100644
index 0000000000..a3302a3fc5
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketPolicyStatusResult.cpp
@@ -0,0 +1,38 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetBucketPolicyStatusResult.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+#include <aws/core/AmazonWebServiceResult.h>
+#include <aws/core/utils/StringUtils.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Xml;
+using namespace Aws::Utils;
+using namespace Aws;
+
+GetBucketPolicyStatusResult::GetBucketPolicyStatusResult()
+{
+}
+
+GetBucketPolicyStatusResult::GetBucketPolicyStatusResult(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ *this = result;
+}
+
+GetBucketPolicyStatusResult& GetBucketPolicyStatusResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ m_policyStatus = resultNode;
+ }
+
+ return *this;
+}
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
new file mode 100644
index 0000000000..3dcadfa2be
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketReplicationRequest.cpp
@@ -0,0 +1,65 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetBucketReplicationRequest.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;
+
+GetBucketReplicationRequest::GetBucketReplicationRequest() :
+ m_bucketHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String GetBucketReplicationRequest::SerializePayload() const
+{
+ return {};
+}
+
+void GetBucketReplicationRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 GetBucketReplicationRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketReplicationResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketReplicationResult.cpp
new file mode 100644
index 0000000000..323feded63
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketReplicationResult.cpp
@@ -0,0 +1,38 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetBucketReplicationResult.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+#include <aws/core/AmazonWebServiceResult.h>
+#include <aws/core/utils/StringUtils.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Xml;
+using namespace Aws::Utils;
+using namespace Aws;
+
+GetBucketReplicationResult::GetBucketReplicationResult()
+{
+}
+
+GetBucketReplicationResult::GetBucketReplicationResult(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ *this = result;
+}
+
+GetBucketReplicationResult& GetBucketReplicationResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ m_replicationConfiguration = resultNode;
+ }
+
+ return *this;
+}
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
new file mode 100644
index 0000000000..7f3e734b70
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketRequestPaymentRequest.cpp
@@ -0,0 +1,65 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetBucketRequestPaymentRequest.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;
+
+GetBucketRequestPaymentRequest::GetBucketRequestPaymentRequest() :
+ m_bucketHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String GetBucketRequestPaymentRequest::SerializePayload() const
+{
+ return {};
+}
+
+void GetBucketRequestPaymentRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 GetBucketRequestPaymentRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketRequestPaymentResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketRequestPaymentResult.cpp
new file mode 100644
index 0000000000..593bf0d9f9
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketRequestPaymentResult.cpp
@@ -0,0 +1,44 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetBucketRequestPaymentResult.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+#include <aws/core/AmazonWebServiceResult.h>
+#include <aws/core/utils/StringUtils.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Xml;
+using namespace Aws::Utils;
+using namespace Aws;
+
+GetBucketRequestPaymentResult::GetBucketRequestPaymentResult() :
+ m_payer(Payer::NOT_SET)
+{
+}
+
+GetBucketRequestPaymentResult::GetBucketRequestPaymentResult(const Aws::AmazonWebServiceResult<XmlDocument>& result) :
+ m_payer(Payer::NOT_SET)
+{
+ *this = result;
+}
+
+GetBucketRequestPaymentResult& GetBucketRequestPaymentResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode payerNode = resultNode.FirstChild("Payer");
+ if(!payerNode.IsNull())
+ {
+ m_payer = PayerMapper::GetPayerForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(payerNode.GetText()).c_str()).c_str());
+ }
+ }
+
+ return *this;
+}
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
new file mode 100644
index 0000000000..72373deaf1
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketTaggingRequest.cpp
@@ -0,0 +1,65 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetBucketTaggingRequest.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;
+
+GetBucketTaggingRequest::GetBucketTaggingRequest() :
+ m_bucketHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String GetBucketTaggingRequest::SerializePayload() const
+{
+ return {};
+}
+
+void GetBucketTaggingRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 GetBucketTaggingRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketTaggingResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketTaggingResult.cpp
new file mode 100644
index 0000000000..c18f29ee30
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketTaggingResult.cpp
@@ -0,0 +1,48 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetBucketTaggingResult.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+#include <aws/core/AmazonWebServiceResult.h>
+#include <aws/core/utils/StringUtils.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Xml;
+using namespace Aws::Utils;
+using namespace Aws;
+
+GetBucketTaggingResult::GetBucketTaggingResult()
+{
+}
+
+GetBucketTaggingResult::GetBucketTaggingResult(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ *this = result;
+}
+
+GetBucketTaggingResult& GetBucketTaggingResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode tagSetNode = resultNode.FirstChild("TagSet");
+ if(!tagSetNode.IsNull())
+ {
+ XmlNode tagSetMember = tagSetNode.FirstChild("Tag");
+ while(!tagSetMember.IsNull())
+ {
+ m_tagSet.push_back(tagSetMember);
+ tagSetMember = tagSetMember.NextNode("Tag");
+ }
+
+ }
+ }
+
+ return *this;
+}
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
new file mode 100644
index 0000000000..7583f79117
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketVersioningRequest.cpp
@@ -0,0 +1,65 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetBucketVersioningRequest.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;
+
+GetBucketVersioningRequest::GetBucketVersioningRequest() :
+ m_bucketHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String GetBucketVersioningRequest::SerializePayload() const
+{
+ return {};
+}
+
+void GetBucketVersioningRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 GetBucketVersioningRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketVersioningResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketVersioningResult.cpp
new file mode 100644
index 0000000000..cb32d3a530
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketVersioningResult.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/GetBucketVersioningResult.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+#include <aws/core/AmazonWebServiceResult.h>
+#include <aws/core/utils/StringUtils.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Xml;
+using namespace Aws::Utils;
+using namespace Aws;
+
+GetBucketVersioningResult::GetBucketVersioningResult() :
+ m_status(BucketVersioningStatus::NOT_SET),
+ m_mFADelete(MFADeleteStatus::NOT_SET)
+{
+}
+
+GetBucketVersioningResult::GetBucketVersioningResult(const Aws::AmazonWebServiceResult<XmlDocument>& result) :
+ m_status(BucketVersioningStatus::NOT_SET),
+ m_mFADelete(MFADeleteStatus::NOT_SET)
+{
+ *this = result;
+}
+
+GetBucketVersioningResult& GetBucketVersioningResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode statusNode = resultNode.FirstChild("Status");
+ if(!statusNode.IsNull())
+ {
+ m_status = BucketVersioningStatusMapper::GetBucketVersioningStatusForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(statusNode.GetText()).c_str()).c_str());
+ }
+ XmlNode mFADeleteNode = resultNode.FirstChild("MfaDelete");
+ if(!mFADeleteNode.IsNull())
+ {
+ m_mFADelete = MFADeleteStatusMapper::GetMFADeleteStatusForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(mFADeleteNode.GetText()).c_str()).c_str());
+ }
+ }
+
+ return *this;
+}
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
new file mode 100644
index 0000000000..067a281fa9
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketWebsiteRequest.cpp
@@ -0,0 +1,65 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetBucketWebsiteRequest.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;
+
+GetBucketWebsiteRequest::GetBucketWebsiteRequest() :
+ m_bucketHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String GetBucketWebsiteRequest::SerializePayload() const
+{
+ return {};
+}
+
+void GetBucketWebsiteRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 GetBucketWebsiteRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketWebsiteResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketWebsiteResult.cpp
new file mode 100644
index 0000000000..ac0fcfe0e2
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetBucketWebsiteResult.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/GetBucketWebsiteResult.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+#include <aws/core/AmazonWebServiceResult.h>
+#include <aws/core/utils/StringUtils.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Xml;
+using namespace Aws::Utils;
+using namespace Aws;
+
+GetBucketWebsiteResult::GetBucketWebsiteResult()
+{
+}
+
+GetBucketWebsiteResult::GetBucketWebsiteResult(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ *this = result;
+}
+
+GetBucketWebsiteResult& GetBucketWebsiteResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode redirectAllRequestsToNode = resultNode.FirstChild("RedirectAllRequestsTo");
+ if(!redirectAllRequestsToNode.IsNull())
+ {
+ m_redirectAllRequestsTo = redirectAllRequestsToNode;
+ }
+ XmlNode indexDocumentNode = resultNode.FirstChild("IndexDocument");
+ if(!indexDocumentNode.IsNull())
+ {
+ m_indexDocument = indexDocumentNode;
+ }
+ XmlNode errorDocumentNode = resultNode.FirstChild("ErrorDocument");
+ if(!errorDocumentNode.IsNull())
+ {
+ m_errorDocument = errorDocumentNode;
+ }
+ XmlNode routingRulesNode = resultNode.FirstChild("RoutingRules");
+ if(!routingRulesNode.IsNull())
+ {
+ XmlNode routingRulesMember = routingRulesNode.FirstChild("RoutingRule");
+ while(!routingRulesMember.IsNull())
+ {
+ m_routingRules.push_back(routingRulesMember);
+ routingRulesMember = routingRulesMember.NextNode("RoutingRule");
+ }
+
+ }
+ }
+
+ return *this;
+}
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
new file mode 100644
index 0000000000..9019eea1c7
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAclRequest.cpp
@@ -0,0 +1,81 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetObjectAclRequest.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;
+
+GetObjectAclRequest::GetObjectAclRequest() :
+ m_bucketHasBeenSet(false),
+ m_keyHasBeenSet(false),
+ m_versionIdHasBeenSet(false),
+ m_requestPayer(RequestPayer::NOT_SET),
+ m_requestPayerHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String GetObjectAclRequest::SerializePayload() const
+{
+ return {};
+}
+
+void GetObjectAclRequest::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 GetObjectAclRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ 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("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAclResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAclResult.cpp
new file mode 100644
index 0000000000..76bb1ec491
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectAclResult.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/GetObjectAclResult.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;
+
+GetObjectAclResult::GetObjectAclResult() :
+ m_requestCharged(RequestCharged::NOT_SET)
+{
+}
+
+GetObjectAclResult::GetObjectAclResult(const Aws::AmazonWebServiceResult<XmlDocument>& result) :
+ m_requestCharged(RequestCharged::NOT_SET)
+{
+ *this = result;
+}
+
+GetObjectAclResult& GetObjectAclResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode ownerNode = resultNode.FirstChild("Owner");
+ if(!ownerNode.IsNull())
+ {
+ m_owner = ownerNode;
+ }
+ XmlNode grantsNode = resultNode.FirstChild("AccessControlList");
+ if(!grantsNode.IsNull())
+ {
+ XmlNode grantsMember = grantsNode.FirstChild("Grant");
+ while(!grantsMember.IsNull())
+ {
+ m_grants.push_back(grantsMember);
+ grantsMember = grantsMember.NextNode("Grant");
+ }
+
+ }
+ }
+
+ const auto& headers = result.GetHeaderValueCollection();
+ 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
new file mode 100644
index 0000000000..6a3ba662dc
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectLegalHoldRequest.cpp
@@ -0,0 +1,81 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetObjectLegalHoldRequest.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;
+
+GetObjectLegalHoldRequest::GetObjectLegalHoldRequest() :
+ m_bucketHasBeenSet(false),
+ m_keyHasBeenSet(false),
+ m_versionIdHasBeenSet(false),
+ m_requestPayer(RequestPayer::NOT_SET),
+ m_requestPayerHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String GetObjectLegalHoldRequest::SerializePayload() const
+{
+ return {};
+}
+
+void GetObjectLegalHoldRequest::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 GetObjectLegalHoldRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ 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("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectLegalHoldResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectLegalHoldResult.cpp
new file mode 100644
index 0000000000..0a008d85c2
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectLegalHoldResult.cpp
@@ -0,0 +1,38 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetObjectLegalHoldResult.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+#include <aws/core/AmazonWebServiceResult.h>
+#include <aws/core/utils/StringUtils.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Xml;
+using namespace Aws::Utils;
+using namespace Aws;
+
+GetObjectLegalHoldResult::GetObjectLegalHoldResult()
+{
+}
+
+GetObjectLegalHoldResult::GetObjectLegalHoldResult(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ *this = result;
+}
+
+GetObjectLegalHoldResult& GetObjectLegalHoldResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ m_legalHold = resultNode;
+ }
+
+ return *this;
+}
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
new file mode 100644
index 0000000000..d1cf37a030
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectLockConfigurationRequest.cpp
@@ -0,0 +1,65 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetObjectLockConfigurationRequest.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;
+
+GetObjectLockConfigurationRequest::GetObjectLockConfigurationRequest() :
+ m_bucketHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String GetObjectLockConfigurationRequest::SerializePayload() const
+{
+ return {};
+}
+
+void GetObjectLockConfigurationRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 GetObjectLockConfigurationRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectLockConfigurationResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectLockConfigurationResult.cpp
new file mode 100644
index 0000000000..4eae3d2b50
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectLockConfigurationResult.cpp
@@ -0,0 +1,38 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetObjectLockConfigurationResult.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+#include <aws/core/AmazonWebServiceResult.h>
+#include <aws/core/utils/StringUtils.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Xml;
+using namespace Aws::Utils;
+using namespace Aws;
+
+GetObjectLockConfigurationResult::GetObjectLockConfigurationResult()
+{
+}
+
+GetObjectLockConfigurationResult::GetObjectLockConfigurationResult(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ *this = result;
+}
+
+GetObjectLockConfigurationResult& GetObjectLockConfigurationResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ m_objectLockConfiguration = resultNode;
+ }
+
+ return *this;
+}
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
new file mode 100644
index 0000000000..a1939e2471
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectRequest.cpp
@@ -0,0 +1,198 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetObjectRequest.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;
+
+GetObjectRequest::GetObjectRequest() :
+ m_bucketHasBeenSet(false),
+ m_ifMatchHasBeenSet(false),
+ m_ifModifiedSinceHasBeenSet(false),
+ m_ifNoneMatchHasBeenSet(false),
+ m_ifUnmodifiedSinceHasBeenSet(false),
+ m_keyHasBeenSet(false),
+ m_rangeHasBeenSet(false),
+ m_responseCacheControlHasBeenSet(false),
+ m_responseContentDispositionHasBeenSet(false),
+ m_responseContentEncodingHasBeenSet(false),
+ m_responseContentLanguageHasBeenSet(false),
+ m_responseContentTypeHasBeenSet(false),
+ m_responseExpiresHasBeenSet(false),
+ m_versionIdHasBeenSet(false),
+ m_sSECustomerAlgorithmHasBeenSet(false),
+ m_sSECustomerKeyHasBeenSet(false),
+ m_sSECustomerKeyMD5HasBeenSet(false),
+ m_requestPayer(RequestPayer::NOT_SET),
+ m_requestPayerHasBeenSet(false),
+ m_partNumber(0),
+ m_partNumberHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String GetObjectRequest::SerializePayload() const
+{
+ return {};
+}
+
+void GetObjectRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ if(m_responseCacheControlHasBeenSet)
+ {
+ ss << m_responseCacheControl;
+ uri.AddQueryStringParameter("response-cache-control", ss.str());
+ ss.str("");
+ }
+
+ if(m_responseContentDispositionHasBeenSet)
+ {
+ ss << m_responseContentDisposition;
+ uri.AddQueryStringParameter("response-content-disposition", ss.str());
+ ss.str("");
+ }
+
+ if(m_responseContentEncodingHasBeenSet)
+ {
+ ss << m_responseContentEncoding;
+ uri.AddQueryStringParameter("response-content-encoding", ss.str());
+ ss.str("");
+ }
+
+ if(m_responseContentLanguageHasBeenSet)
+ {
+ ss << m_responseContentLanguage;
+ uri.AddQueryStringParameter("response-content-language", ss.str());
+ ss.str("");
+ }
+
+ if(m_responseContentTypeHasBeenSet)
+ {
+ ss << m_responseContentType;
+ uri.AddQueryStringParameter("response-content-type", ss.str());
+ ss.str("");
+ }
+
+ if(m_responseExpiresHasBeenSet)
+ {
+ ss << m_responseExpires.ToGmtString(DateFormat::RFC822);
+ uri.AddQueryStringParameter("response-expires", ss.str());
+ ss.str("");
+ }
+
+ if(m_versionIdHasBeenSet)
+ {
+ ss << m_versionId;
+ uri.AddQueryStringParameter("versionId", ss.str());
+ ss.str("");
+ }
+
+ if(m_partNumberHasBeenSet)
+ {
+ ss << m_partNumber;
+ uri.AddQueryStringParameter("partNumber", 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 GetObjectRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_ifMatchHasBeenSet)
+ {
+ ss << m_ifMatch;
+ headers.emplace("if-match", ss.str());
+ ss.str("");
+ }
+
+ if(m_ifModifiedSinceHasBeenSet)
+ {
+ headers.emplace("if-modified-since", m_ifModifiedSince.ToGmtString(DateFormat::RFC822));
+ }
+
+ if(m_ifNoneMatchHasBeenSet)
+ {
+ ss << m_ifNoneMatch;
+ headers.emplace("if-none-match", ss.str());
+ ss.str("");
+ }
+
+ if(m_ifUnmodifiedSinceHasBeenSet)
+ {
+ headers.emplace("if-unmodified-since", m_ifUnmodifiedSince.ToGmtString(DateFormat::RFC822));
+ }
+
+ if(m_rangeHasBeenSet)
+ {
+ ss << m_range;
+ headers.emplace("range", 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("");
+ }
+
+ return headers;
+}
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
new file mode 100644
index 0000000000..8c20face8e
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectResult.cpp
@@ -0,0 +1,344 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetObjectResult.h>
+#include <aws/core/AmazonWebServiceResult.h>
+#include <aws/core/utils/StringUtils.h>
+#include <aws/core/utils/HashingUtils.h>
+#include <aws/core/utils/memory/stl/AWSStringStream.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Stream;
+using namespace Aws::Utils;
+using namespace Aws;
+
+GetObjectResult::GetObjectResult() :
+ m_deleteMarker(false),
+ m_contentLength(0),
+ m_missingMeta(0),
+ m_serverSideEncryption(ServerSideEncryption::NOT_SET),
+ m_bucketKeyEnabled(false),
+ m_storageClass(StorageClass::NOT_SET),
+ m_requestCharged(RequestCharged::NOT_SET),
+ m_replicationStatus(ReplicationStatus::NOT_SET),
+ m_partsCount(0),
+ m_tagCount(0),
+ m_objectLockMode(ObjectLockMode::NOT_SET),
+ m_objectLockLegalHoldStatus(ObjectLockLegalHoldStatus::NOT_SET)
+{
+}
+
+GetObjectResult::GetObjectResult(GetObjectResult&& toMove) :
+ m_body(std::move(toMove.m_body)),
+ m_deleteMarker(toMove.m_deleteMarker),
+ m_acceptRanges(std::move(toMove.m_acceptRanges)),
+ m_expiration(std::move(toMove.m_expiration)),
+ m_restore(std::move(toMove.m_restore)),
+ m_lastModified(std::move(toMove.m_lastModified)),
+ m_contentLength(toMove.m_contentLength),
+ m_eTag(std::move(toMove.m_eTag)),
+ m_missingMeta(toMove.m_missingMeta),
+ m_versionId(std::move(toMove.m_versionId)),
+ m_cacheControl(std::move(toMove.m_cacheControl)),
+ m_contentDisposition(std::move(toMove.m_contentDisposition)),
+ m_contentEncoding(std::move(toMove.m_contentEncoding)),
+ m_contentLanguage(std::move(toMove.m_contentLanguage)),
+ m_contentRange(std::move(toMove.m_contentRange)),
+ m_contentType(std::move(toMove.m_contentType)),
+ m_expires(std::move(toMove.m_expires)),
+ m_websiteRedirectLocation(std::move(toMove.m_websiteRedirectLocation)),
+ m_serverSideEncryption(toMove.m_serverSideEncryption),
+ m_metadata(std::move(toMove.m_metadata)),
+ m_sSECustomerAlgorithm(std::move(toMove.m_sSECustomerAlgorithm)),
+ m_sSECustomerKeyMD5(std::move(toMove.m_sSECustomerKeyMD5)),
+ m_sSEKMSKeyId(std::move(toMove.m_sSEKMSKeyId)),
+ m_bucketKeyEnabled(toMove.m_bucketKeyEnabled),
+ m_storageClass(toMove.m_storageClass),
+ m_requestCharged(toMove.m_requestCharged),
+ m_replicationStatus(toMove.m_replicationStatus),
+ m_partsCount(toMove.m_partsCount),
+ m_tagCount(toMove.m_tagCount),
+ m_objectLockMode(toMove.m_objectLockMode),
+ m_objectLockRetainUntilDate(std::move(toMove.m_objectLockRetainUntilDate)),
+ m_objectLockLegalHoldStatus(toMove.m_objectLockLegalHoldStatus),
+ m_id2(std::move(toMove.m_id2)),
+ m_requestId(std::move(toMove.m_requestId))
+{
+}
+
+GetObjectResult& GetObjectResult::operator=(GetObjectResult&& toMove)
+{
+ if(this == &toMove)
+ {
+ return *this;
+ }
+
+ m_body = std::move(toMove.m_body);
+ m_deleteMarker = toMove.m_deleteMarker;
+ m_acceptRanges = std::move(toMove.m_acceptRanges);
+ m_expiration = std::move(toMove.m_expiration);
+ m_restore = std::move(toMove.m_restore);
+ m_lastModified = std::move(toMove.m_lastModified);
+ m_contentLength = toMove.m_contentLength;
+ m_eTag = std::move(toMove.m_eTag);
+ m_missingMeta = toMove.m_missingMeta;
+ m_versionId = std::move(toMove.m_versionId);
+ m_cacheControl = std::move(toMove.m_cacheControl);
+ m_contentDisposition = std::move(toMove.m_contentDisposition);
+ m_contentEncoding = std::move(toMove.m_contentEncoding);
+ m_contentLanguage = std::move(toMove.m_contentLanguage);
+ m_contentRange = std::move(toMove.m_contentRange);
+ m_contentType = std::move(toMove.m_contentType);
+ m_expires = std::move(toMove.m_expires);
+ m_websiteRedirectLocation = std::move(toMove.m_websiteRedirectLocation);
+ m_serverSideEncryption = toMove.m_serverSideEncryption;
+ m_metadata = std::move(toMove.m_metadata);
+ m_sSECustomerAlgorithm = std::move(toMove.m_sSECustomerAlgorithm);
+ m_sSECustomerKeyMD5 = std::move(toMove.m_sSECustomerKeyMD5);
+ m_sSEKMSKeyId = std::move(toMove.m_sSEKMSKeyId);
+ m_bucketKeyEnabled = toMove.m_bucketKeyEnabled;
+ m_storageClass = toMove.m_storageClass;
+ m_requestCharged = toMove.m_requestCharged;
+ m_replicationStatus = toMove.m_replicationStatus;
+ m_partsCount = toMove.m_partsCount;
+ m_tagCount = toMove.m_tagCount;
+ m_objectLockMode = toMove.m_objectLockMode;
+ m_objectLockRetainUntilDate = std::move(toMove.m_objectLockRetainUntilDate);
+ m_objectLockLegalHoldStatus = toMove.m_objectLockLegalHoldStatus;
+ m_id2 = std::move(toMove.m_id2);
+ m_requestId = std::move(toMove.m_requestId);
+
+ return *this;
+}
+
+GetObjectResult::GetObjectResult(Aws::AmazonWebServiceResult<ResponseStream>&& result) :
+ m_deleteMarker(false),
+ m_contentLength(0),
+ m_missingMeta(0),
+ m_serverSideEncryption(ServerSideEncryption::NOT_SET),
+ m_bucketKeyEnabled(false),
+ m_storageClass(StorageClass::NOT_SET),
+ m_requestCharged(RequestCharged::NOT_SET),
+ m_replicationStatus(ReplicationStatus::NOT_SET),
+ m_partsCount(0),
+ m_tagCount(0),
+ m_objectLockMode(ObjectLockMode::NOT_SET),
+ m_objectLockLegalHoldStatus(ObjectLockLegalHoldStatus::NOT_SET)
+{
+ *this = std::move(result);
+}
+
+GetObjectResult& GetObjectResult::operator =(Aws::AmazonWebServiceResult<ResponseStream>&& result)
+{
+ m_body = result.TakeOwnershipOfPayload();
+
+ 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& acceptRangesIter = headers.find("accept-ranges");
+ if(acceptRangesIter != headers.end())
+ {
+ m_acceptRanges = acceptRangesIter->second;
+ }
+
+ const auto& expirationIter = headers.find("x-amz-expiration");
+ if(expirationIter != headers.end())
+ {
+ m_expiration = expirationIter->second;
+ }
+
+ const auto& restoreIter = headers.find("x-amz-restore");
+ if(restoreIter != headers.end())
+ {
+ m_restore = restoreIter->second;
+ }
+
+ const auto& lastModifiedIter = headers.find("last-modified");
+ if(lastModifiedIter != headers.end())
+ {
+ m_lastModified = DateTime(lastModifiedIter->second, DateFormat::RFC822);
+ }
+
+ const auto& contentLengthIter = headers.find("content-length");
+ if(contentLengthIter != headers.end())
+ {
+ m_contentLength = StringUtils::ConvertToInt64(contentLengthIter->second.c_str());
+ }
+
+ const auto& eTagIter = headers.find("etag");
+ if(eTagIter != headers.end())
+ {
+ m_eTag = eTagIter->second;
+ }
+
+ const auto& missingMetaIter = headers.find("x-amz-missing-meta");
+ if(missingMetaIter != headers.end())
+ {
+ m_missingMeta = StringUtils::ConvertToInt32(missingMetaIter->second.c_str());
+ }
+
+ const auto& versionIdIter = headers.find("x-amz-version-id");
+ if(versionIdIter != headers.end())
+ {
+ m_versionId = versionIdIter->second;
+ }
+
+ const auto& cacheControlIter = headers.find("cache-control");
+ if(cacheControlIter != headers.end())
+ {
+ m_cacheControl = cacheControlIter->second;
+ }
+
+ const auto& contentDispositionIter = headers.find("content-disposition");
+ if(contentDispositionIter != headers.end())
+ {
+ m_contentDisposition = contentDispositionIter->second;
+ }
+
+ const auto& contentEncodingIter = headers.find("content-encoding");
+ if(contentEncodingIter != headers.end())
+ {
+ m_contentEncoding = contentEncodingIter->second;
+ }
+
+ const auto& contentLanguageIter = headers.find("content-language");
+ if(contentLanguageIter != headers.end())
+ {
+ m_contentLanguage = contentLanguageIter->second;
+ }
+
+ const auto& contentRangeIter = headers.find("content-range");
+ if(contentRangeIter != headers.end())
+ {
+ m_contentRange = contentRangeIter->second;
+ }
+
+ const auto& contentTypeIter = headers.find("content-type");
+ if(contentTypeIter != headers.end())
+ {
+ m_contentType = contentTypeIter->second;
+ }
+
+ const auto& expiresIter = headers.find("expires");
+ if(expiresIter != headers.end())
+ {
+ m_expires = DateTime(expiresIter->second, DateFormat::RFC822);
+ }
+
+ const auto& websiteRedirectLocationIter = headers.find("x-amz-website-redirect-location");
+ if(websiteRedirectLocationIter != headers.end())
+ {
+ m_websiteRedirectLocation = websiteRedirectLocationIter->second;
+ }
+
+ const auto& serverSideEncryptionIter = headers.find("x-amz-server-side-encryption");
+ if(serverSideEncryptionIter != headers.end())
+ {
+ m_serverSideEncryption = ServerSideEncryptionMapper::GetServerSideEncryptionForName(serverSideEncryptionIter->second);
+ }
+
+ std::size_t prefixSize = sizeof("x-amz-meta-") - 1; //subtract the NULL terminator out
+ for(const auto& item : headers)
+ {
+ std::size_t foundPrefix = item.first.find("x-amz-meta-");
+
+ if(foundPrefix != std::string::npos)
+ {
+ m_metadata[item.first.substr(prefixSize)] = item.second;
+ }
+ }
+
+ const auto& sSECustomerAlgorithmIter = headers.find("x-amz-server-side-encryption-customer-algorithm");
+ if(sSECustomerAlgorithmIter != headers.end())
+ {
+ m_sSECustomerAlgorithm = sSECustomerAlgorithmIter->second;
+ }
+
+ const auto& sSECustomerKeyMD5Iter = headers.find("x-amz-server-side-encryption-customer-key-md5");
+ if(sSECustomerKeyMD5Iter != headers.end())
+ {
+ m_sSECustomerKeyMD5 = sSECustomerKeyMD5Iter->second;
+ }
+
+ const auto& sSEKMSKeyIdIter = headers.find("x-amz-server-side-encryption-aws-kms-key-id");
+ if(sSEKMSKeyIdIter != headers.end())
+ {
+ m_sSEKMSKeyId = sSEKMSKeyIdIter->second;
+ }
+
+ const auto& bucketKeyEnabledIter = headers.find("x-amz-server-side-encryption-bucket-key-enabled");
+ if(bucketKeyEnabledIter != headers.end())
+ {
+ m_bucketKeyEnabled = StringUtils::ConvertToBool(bucketKeyEnabledIter->second.c_str());
+ }
+
+ const auto& storageClassIter = headers.find("x-amz-storage-class");
+ if(storageClassIter != headers.end())
+ {
+ m_storageClass = StorageClassMapper::GetStorageClassForName(storageClassIter->second);
+ }
+
+ const auto& requestChargedIter = headers.find("x-amz-request-charged");
+ if(requestChargedIter != headers.end())
+ {
+ m_requestCharged = RequestChargedMapper::GetRequestChargedForName(requestChargedIter->second);
+ }
+
+ const auto& replicationStatusIter = headers.find("x-amz-replication-status");
+ if(replicationStatusIter != headers.end())
+ {
+ m_replicationStatus = ReplicationStatusMapper::GetReplicationStatusForName(replicationStatusIter->second);
+ }
+
+ const auto& partsCountIter = headers.find("x-amz-mp-parts-count");
+ if(partsCountIter != headers.end())
+ {
+ m_partsCount = StringUtils::ConvertToInt32(partsCountIter->second.c_str());
+ }
+
+ const auto& tagCountIter = headers.find("x-amz-tagging-count");
+ if(tagCountIter != headers.end())
+ {
+ m_tagCount = StringUtils::ConvertToInt32(tagCountIter->second.c_str());
+ }
+
+ const auto& objectLockModeIter = headers.find("x-amz-object-lock-mode");
+ if(objectLockModeIter != headers.end())
+ {
+ m_objectLockMode = ObjectLockModeMapper::GetObjectLockModeForName(objectLockModeIter->second);
+ }
+
+ const auto& objectLockRetainUntilDateIter = headers.find("x-amz-object-lock-retain-until-date");
+ if(objectLockRetainUntilDateIter != headers.end())
+ {
+ m_objectLockRetainUntilDate = DateTime(objectLockRetainUntilDateIter->second, DateFormat::RFC822);
+ }
+
+ const auto& objectLockLegalHoldStatusIter = headers.find("x-amz-object-lock-legal-hold");
+ if(objectLockLegalHoldStatusIter != headers.end())
+ {
+ m_objectLockLegalHoldStatus = ObjectLockLegalHoldStatusMapper::GetObjectLockLegalHoldStatusForName(objectLockLegalHoldStatusIter->second);
+ }
+
+ const auto& id2Iter = headers.find("x-amz-id-2");
+ if(id2Iter != headers.end())
+ {
+ m_id2 = id2Iter->second;
+ }
+
+ const auto& requestIdIter = headers.find("x-amz-request-id");
+ if(requestIdIter != headers.end())
+ {
+ m_requestId = requestIdIter->second;
+ }
+
+ return *this;
+}
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
new file mode 100644
index 0000000000..d1917da723
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectRetentionRequest.cpp
@@ -0,0 +1,81 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetObjectRetentionRequest.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;
+
+GetObjectRetentionRequest::GetObjectRetentionRequest() :
+ m_bucketHasBeenSet(false),
+ m_keyHasBeenSet(false),
+ m_versionIdHasBeenSet(false),
+ m_requestPayer(RequestPayer::NOT_SET),
+ m_requestPayerHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String GetObjectRetentionRequest::SerializePayload() const
+{
+ return {};
+}
+
+void GetObjectRetentionRequest::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 GetObjectRetentionRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ 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("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectRetentionResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectRetentionResult.cpp
new file mode 100644
index 0000000000..bddb6b0ada
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectRetentionResult.cpp
@@ -0,0 +1,38 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetObjectRetentionResult.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+#include <aws/core/AmazonWebServiceResult.h>
+#include <aws/core/utils/StringUtils.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Xml;
+using namespace Aws::Utils;
+using namespace Aws;
+
+GetObjectRetentionResult::GetObjectRetentionResult()
+{
+}
+
+GetObjectRetentionResult::GetObjectRetentionResult(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ *this = result;
+}
+
+GetObjectRetentionResult& GetObjectRetentionResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ m_retention = resultNode;
+ }
+
+ return *this;
+}
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
new file mode 100644
index 0000000000..447a1c4041
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectTaggingRequest.cpp
@@ -0,0 +1,74 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetObjectTaggingRequest.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;
+
+GetObjectTaggingRequest::GetObjectTaggingRequest() :
+ m_bucketHasBeenSet(false),
+ m_keyHasBeenSet(false),
+ m_versionIdHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String GetObjectTaggingRequest::SerializePayload() const
+{
+ return {};
+}
+
+void GetObjectTaggingRequest::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 GetObjectTaggingRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectTaggingResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectTaggingResult.cpp
new file mode 100644
index 0000000000..fbc71424ff
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectTaggingResult.cpp
@@ -0,0 +1,56 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetObjectTaggingResult.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;
+
+GetObjectTaggingResult::GetObjectTaggingResult()
+{
+}
+
+GetObjectTaggingResult::GetObjectTaggingResult(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ *this = result;
+}
+
+GetObjectTaggingResult& GetObjectTaggingResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode tagSetNode = resultNode.FirstChild("TagSet");
+ if(!tagSetNode.IsNull())
+ {
+ XmlNode tagSetMember = tagSetNode.FirstChild("Tag");
+ while(!tagSetMember.IsNull())
+ {
+ m_tagSet.push_back(tagSetMember);
+ tagSetMember = tagSetMember.NextNode("Tag");
+ }
+
+ }
+ }
+
+ const auto& headers = result.GetHeaderValueCollection();
+ const auto& versionIdIter = headers.find("x-amz-version-id");
+ if(versionIdIter != headers.end())
+ {
+ m_versionId = versionIdIter->second;
+ }
+
+ return *this;
+}
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
new file mode 100644
index 0000000000..05aae88aa2
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectTorrentRequest.cpp
@@ -0,0 +1,73 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetObjectTorrentRequest.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;
+
+GetObjectTorrentRequest::GetObjectTorrentRequest() :
+ m_bucketHasBeenSet(false),
+ m_keyHasBeenSet(false),
+ m_requestPayer(RequestPayer::NOT_SET),
+ m_requestPayerHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String GetObjectTorrentRequest::SerializePayload() const
+{
+ return {};
+}
+
+void GetObjectTorrentRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 GetObjectTorrentRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ 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("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectTorrentResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectTorrentResult.cpp
new file mode 100644
index 0000000000..3e35340eee
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetObjectTorrentResult.cpp
@@ -0,0 +1,61 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetObjectTorrentResult.h>
+#include <aws/core/AmazonWebServiceResult.h>
+#include <aws/core/utils/StringUtils.h>
+#include <aws/core/utils/HashingUtils.h>
+#include <aws/core/utils/memory/stl/AWSStringStream.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Stream;
+using namespace Aws::Utils;
+using namespace Aws;
+
+GetObjectTorrentResult::GetObjectTorrentResult() :
+ m_requestCharged(RequestCharged::NOT_SET)
+{
+}
+
+GetObjectTorrentResult::GetObjectTorrentResult(GetObjectTorrentResult&& toMove) :
+ m_body(std::move(toMove.m_body)),
+ m_requestCharged(toMove.m_requestCharged)
+{
+}
+
+GetObjectTorrentResult& GetObjectTorrentResult::operator=(GetObjectTorrentResult&& toMove)
+{
+ if(this == &toMove)
+ {
+ return *this;
+ }
+
+ m_body = std::move(toMove.m_body);
+ m_requestCharged = toMove.m_requestCharged;
+
+ return *this;
+}
+
+GetObjectTorrentResult::GetObjectTorrentResult(Aws::AmazonWebServiceResult<ResponseStream>&& result) :
+ m_requestCharged(RequestCharged::NOT_SET)
+{
+ *this = std::move(result);
+}
+
+GetObjectTorrentResult& GetObjectTorrentResult::operator =(Aws::AmazonWebServiceResult<ResponseStream>&& result)
+{
+ m_body = result.TakeOwnershipOfPayload();
+
+ const auto& headers = result.GetHeaderValueCollection();
+ 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/GetPublicAccessBlockRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetPublicAccessBlockRequest.cpp
new file mode 100644
index 0000000000..6616e19c0b
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetPublicAccessBlockRequest.cpp
@@ -0,0 +1,65 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetPublicAccessBlockRequest.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;
+
+GetPublicAccessBlockRequest::GetPublicAccessBlockRequest() :
+ m_bucketHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String GetPublicAccessBlockRequest::SerializePayload() const
+{
+ return {};
+}
+
+void GetPublicAccessBlockRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 GetPublicAccessBlockRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetPublicAccessBlockResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetPublicAccessBlockResult.cpp
new file mode 100644
index 0000000000..d8cd57631a
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GetPublicAccessBlockResult.cpp
@@ -0,0 +1,38 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GetPublicAccessBlockResult.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+#include <aws/core/AmazonWebServiceResult.h>
+#include <aws/core/utils/StringUtils.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Xml;
+using namespace Aws::Utils;
+using namespace Aws;
+
+GetPublicAccessBlockResult::GetPublicAccessBlockResult()
+{
+}
+
+GetPublicAccessBlockResult::GetPublicAccessBlockResult(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ *this = result;
+}
+
+GetPublicAccessBlockResult& GetPublicAccessBlockResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ m_publicAccessBlockConfiguration = resultNode;
+ }
+
+ return *this;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GlacierJobParameters.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GlacierJobParameters.cpp
new file mode 100644
index 0000000000..1523c04f64
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/GlacierJobParameters.cpp
@@ -0,0 +1,66 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/GlacierJobParameters.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
+{
+
+GlacierJobParameters::GlacierJobParameters() :
+ m_tier(Tier::NOT_SET),
+ m_tierHasBeenSet(false)
+{
+}
+
+GlacierJobParameters::GlacierJobParameters(const XmlNode& xmlNode) :
+ m_tier(Tier::NOT_SET),
+ m_tierHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+GlacierJobParameters& GlacierJobParameters::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode tierNode = resultNode.FirstChild("Tier");
+ if(!tierNode.IsNull())
+ {
+ m_tier = TierMapper::GetTierForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(tierNode.GetText()).c_str()).c_str());
+ m_tierHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void GlacierJobParameters::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_tierHasBeenSet)
+ {
+ XmlNode tierNode = parentNode.CreateChildElement("Tier");
+ tierNode.SetText(TierMapper::GetNameForTier(m_tier));
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Grant.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Grant.cpp
new file mode 100644
index 0000000000..bc23e70ee0
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Grant.cpp
@@ -0,0 +1,80 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/Grant.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
+{
+
+Grant::Grant() :
+ m_granteeHasBeenSet(false),
+ m_permission(Permission::NOT_SET),
+ m_permissionHasBeenSet(false)
+{
+}
+
+Grant::Grant(const XmlNode& xmlNode) :
+ m_granteeHasBeenSet(false),
+ m_permission(Permission::NOT_SET),
+ m_permissionHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+Grant& Grant::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode granteeNode = resultNode.FirstChild("Grantee");
+ if(!granteeNode.IsNull())
+ {
+ m_grantee = granteeNode;
+ m_granteeHasBeenSet = true;
+ }
+ XmlNode permissionNode = resultNode.FirstChild("Permission");
+ if(!permissionNode.IsNull())
+ {
+ m_permission = PermissionMapper::GetPermissionForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(permissionNode.GetText()).c_str()).c_str());
+ m_permissionHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void Grant::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_granteeHasBeenSet)
+ {
+ XmlNode granteeNode = parentNode.CreateChildElement("Grantee");
+ m_grantee.AddToNode(granteeNode);
+ }
+
+ if(m_permissionHasBeenSet)
+ {
+ XmlNode permissionNode = parentNode.CreateChildElement("Permission");
+ permissionNode.SetText(PermissionMapper::GetNameForPermission(m_permission));
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Grantee.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Grantee.cpp
new file mode 100644
index 0000000000..31a95234cf
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Grantee.cpp
@@ -0,0 +1,122 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/Grantee.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
+{
+
+Grantee::Grantee() :
+ m_displayNameHasBeenSet(false),
+ m_emailAddressHasBeenSet(false),
+ m_iDHasBeenSet(false),
+ m_type(Type::NOT_SET),
+ m_typeHasBeenSet(false),
+ m_uRIHasBeenSet(false)
+{
+}
+
+Grantee::Grantee(const XmlNode& xmlNode) :
+ m_displayNameHasBeenSet(false),
+ m_emailAddressHasBeenSet(false),
+ m_iDHasBeenSet(false),
+ m_type(Type::NOT_SET),
+ m_typeHasBeenSet(false),
+ m_uRIHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+Grantee& Grantee::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode displayNameNode = resultNode.FirstChild("DisplayName");
+ if(!displayNameNode.IsNull())
+ {
+ m_displayName = Aws::Utils::Xml::DecodeEscapedXmlText(displayNameNode.GetText());
+ m_displayNameHasBeenSet = true;
+ }
+ XmlNode emailAddressNode = resultNode.FirstChild("EmailAddress");
+ if(!emailAddressNode.IsNull())
+ {
+ m_emailAddress = Aws::Utils::Xml::DecodeEscapedXmlText(emailAddressNode.GetText());
+ m_emailAddressHasBeenSet = true;
+ }
+ XmlNode iDNode = resultNode.FirstChild("ID");
+ if(!iDNode.IsNull())
+ {
+ m_iD = Aws::Utils::Xml::DecodeEscapedXmlText(iDNode.GetText());
+ m_iDHasBeenSet = true;
+ }
+ auto type = resultNode.GetAttributeValue("xsi:type");
+ if(!type.empty())
+ {
+ m_type = TypeMapper::GetTypeForName(StringUtils::Trim(type.c_str()).c_str());
+ m_typeHasBeenSet = true;
+ }
+ XmlNode uRINode = resultNode.FirstChild("URI");
+ if(!uRINode.IsNull())
+ {
+ m_uRI = Aws::Utils::Xml::DecodeEscapedXmlText(uRINode.GetText());
+ m_uRIHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void Grantee::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ parentNode.SetAttributeValue("xmlns:xsi", "http://www.w3.org/2001/XMLSchema-instance");
+ if(m_displayNameHasBeenSet)
+ {
+ XmlNode displayNameNode = parentNode.CreateChildElement("DisplayName");
+ displayNameNode.SetText(m_displayName);
+ }
+
+ if(m_emailAddressHasBeenSet)
+ {
+ XmlNode emailAddressNode = parentNode.CreateChildElement("EmailAddress");
+ emailAddressNode.SetText(m_emailAddress);
+ }
+
+ if(m_iDHasBeenSet)
+ {
+ XmlNode iDNode = parentNode.CreateChildElement("ID");
+ iDNode.SetText(m_iD);
+ }
+
+ if(m_typeHasBeenSet)
+ {
+ parentNode.SetAttributeValue("xsi:type", TypeMapper::GetNameForType(m_type));
+ }
+
+ if(m_uRIHasBeenSet)
+ {
+ XmlNode uRINode = parentNode.CreateChildElement("URI");
+ uRINode.SetText(m_uRI);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
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
new file mode 100644
index 0000000000..b503f37b81
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/HeadBucketRequest.cpp
@@ -0,0 +1,65 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/HeadBucketRequest.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;
+
+HeadBucketRequest::HeadBucketRequest() :
+ m_bucketHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String HeadBucketRequest::SerializePayload() const
+{
+ return {};
+}
+
+void HeadBucketRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 HeadBucketRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
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
new file mode 100644
index 0000000000..7bf7b7239e
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/HeadObjectRequest.cpp
@@ -0,0 +1,150 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/HeadObjectRequest.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;
+
+HeadObjectRequest::HeadObjectRequest() :
+ m_bucketHasBeenSet(false),
+ m_ifMatchHasBeenSet(false),
+ m_ifModifiedSinceHasBeenSet(false),
+ m_ifNoneMatchHasBeenSet(false),
+ m_ifUnmodifiedSinceHasBeenSet(false),
+ m_keyHasBeenSet(false),
+ m_rangeHasBeenSet(false),
+ m_versionIdHasBeenSet(false),
+ m_sSECustomerAlgorithmHasBeenSet(false),
+ m_sSECustomerKeyHasBeenSet(false),
+ m_sSECustomerKeyMD5HasBeenSet(false),
+ m_requestPayer(RequestPayer::NOT_SET),
+ m_requestPayerHasBeenSet(false),
+ m_partNumber(0),
+ m_partNumberHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String HeadObjectRequest::SerializePayload() const
+{
+ return {};
+}
+
+void HeadObjectRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ if(m_versionIdHasBeenSet)
+ {
+ ss << m_versionId;
+ uri.AddQueryStringParameter("versionId", ss.str());
+ ss.str("");
+ }
+
+ if(m_partNumberHasBeenSet)
+ {
+ ss << m_partNumber;
+ uri.AddQueryStringParameter("partNumber", 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 HeadObjectRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_ifMatchHasBeenSet)
+ {
+ ss << m_ifMatch;
+ headers.emplace("if-match", ss.str());
+ ss.str("");
+ }
+
+ if(m_ifModifiedSinceHasBeenSet)
+ {
+ headers.emplace("if-modified-since", m_ifModifiedSince.ToGmtString(DateFormat::RFC822));
+ }
+
+ if(m_ifNoneMatchHasBeenSet)
+ {
+ ss << m_ifNoneMatch;
+ headers.emplace("if-none-match", ss.str());
+ ss.str("");
+ }
+
+ if(m_ifUnmodifiedSinceHasBeenSet)
+ {
+ headers.emplace("if-unmodified-since", m_ifUnmodifiedSince.ToGmtString(DateFormat::RFC822));
+ }
+
+ if(m_rangeHasBeenSet)
+ {
+ ss << m_range;
+ headers.emplace("range", 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("");
+ }
+
+ return headers;
+}
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
new file mode 100644
index 0000000000..ce0305dcaf
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/HeadObjectResult.cpp
@@ -0,0 +1,248 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/HeadObjectResult.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;
+
+HeadObjectResult::HeadObjectResult() :
+ m_deleteMarker(false),
+ m_archiveStatus(ArchiveStatus::NOT_SET),
+ m_contentLength(0),
+ m_missingMeta(0),
+ m_serverSideEncryption(ServerSideEncryption::NOT_SET),
+ m_bucketKeyEnabled(false),
+ m_storageClass(StorageClass::NOT_SET),
+ m_requestCharged(RequestCharged::NOT_SET),
+ m_replicationStatus(ReplicationStatus::NOT_SET),
+ m_partsCount(0),
+ m_objectLockMode(ObjectLockMode::NOT_SET),
+ m_objectLockLegalHoldStatus(ObjectLockLegalHoldStatus::NOT_SET)
+{
+}
+
+HeadObjectResult::HeadObjectResult(const Aws::AmazonWebServiceResult<XmlDocument>& result) :
+ m_deleteMarker(false),
+ m_archiveStatus(ArchiveStatus::NOT_SET),
+ m_contentLength(0),
+ m_missingMeta(0),
+ m_serverSideEncryption(ServerSideEncryption::NOT_SET),
+ m_bucketKeyEnabled(false),
+ m_storageClass(StorageClass::NOT_SET),
+ m_requestCharged(RequestCharged::NOT_SET),
+ m_replicationStatus(ReplicationStatus::NOT_SET),
+ m_partsCount(0),
+ m_objectLockMode(ObjectLockMode::NOT_SET),
+ m_objectLockLegalHoldStatus(ObjectLockLegalHoldStatus::NOT_SET)
+{
+ *this = result;
+}
+
+HeadObjectResult& HeadObjectResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ }
+
+ 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& acceptRangesIter = headers.find("accept-ranges");
+ if(acceptRangesIter != headers.end())
+ {
+ m_acceptRanges = acceptRangesIter->second;
+ }
+
+ const auto& expirationIter = headers.find("x-amz-expiration");
+ if(expirationIter != headers.end())
+ {
+ m_expiration = expirationIter->second;
+ }
+
+ const auto& restoreIter = headers.find("x-amz-restore");
+ if(restoreIter != headers.end())
+ {
+ m_restore = restoreIter->second;
+ }
+
+ const auto& archiveStatusIter = headers.find("x-amz-archive-status");
+ if(archiveStatusIter != headers.end())
+ {
+ m_archiveStatus = ArchiveStatusMapper::GetArchiveStatusForName(archiveStatusIter->second);
+ }
+
+ const auto& lastModifiedIter = headers.find("last-modified");
+ if(lastModifiedIter != headers.end())
+ {
+ m_lastModified = DateTime(lastModifiedIter->second, DateFormat::RFC822);
+ }
+
+ const auto& contentLengthIter = headers.find("content-length");
+ if(contentLengthIter != headers.end())
+ {
+ m_contentLength = StringUtils::ConvertToInt64(contentLengthIter->second.c_str());
+ }
+
+ const auto& eTagIter = headers.find("etag");
+ if(eTagIter != headers.end())
+ {
+ m_eTag = eTagIter->second;
+ }
+
+ const auto& missingMetaIter = headers.find("x-amz-missing-meta");
+ if(missingMetaIter != headers.end())
+ {
+ m_missingMeta = StringUtils::ConvertToInt32(missingMetaIter->second.c_str());
+ }
+
+ const auto& versionIdIter = headers.find("x-amz-version-id");
+ if(versionIdIter != headers.end())
+ {
+ m_versionId = versionIdIter->second;
+ }
+
+ const auto& cacheControlIter = headers.find("cache-control");
+ if(cacheControlIter != headers.end())
+ {
+ m_cacheControl = cacheControlIter->second;
+ }
+
+ const auto& contentDispositionIter = headers.find("content-disposition");
+ if(contentDispositionIter != headers.end())
+ {
+ m_contentDisposition = contentDispositionIter->second;
+ }
+
+ const auto& contentEncodingIter = headers.find("content-encoding");
+ if(contentEncodingIter != headers.end())
+ {
+ m_contentEncoding = contentEncodingIter->second;
+ }
+
+ const auto& contentLanguageIter = headers.find("content-language");
+ if(contentLanguageIter != headers.end())
+ {
+ m_contentLanguage = contentLanguageIter->second;
+ }
+
+ const auto& contentTypeIter = headers.find("content-type");
+ if(contentTypeIter != headers.end())
+ {
+ m_contentType = contentTypeIter->second;
+ }
+
+ const auto& expiresIter = headers.find("expires");
+ if(expiresIter != headers.end())
+ {
+ m_expires = DateTime(expiresIter->second, DateFormat::RFC822);
+ }
+
+ const auto& websiteRedirectLocationIter = headers.find("x-amz-website-redirect-location");
+ if(websiteRedirectLocationIter != headers.end())
+ {
+ m_websiteRedirectLocation = websiteRedirectLocationIter->second;
+ }
+
+ const auto& serverSideEncryptionIter = headers.find("x-amz-server-side-encryption");
+ if(serverSideEncryptionIter != headers.end())
+ {
+ m_serverSideEncryption = ServerSideEncryptionMapper::GetServerSideEncryptionForName(serverSideEncryptionIter->second);
+ }
+
+ std::size_t prefixSize = sizeof("x-amz-meta-") - 1; //subtract the NULL terminator out
+ for(const auto& item : headers)
+ {
+ std::size_t foundPrefix = item.first.find("x-amz-meta-");
+
+ if(foundPrefix != std::string::npos)
+ {
+ m_metadata[item.first.substr(prefixSize)] = item.second;
+ }
+ }
+
+ const auto& sSECustomerAlgorithmIter = headers.find("x-amz-server-side-encryption-customer-algorithm");
+ if(sSECustomerAlgorithmIter != headers.end())
+ {
+ m_sSECustomerAlgorithm = sSECustomerAlgorithmIter->second;
+ }
+
+ const auto& sSECustomerKeyMD5Iter = headers.find("x-amz-server-side-encryption-customer-key-md5");
+ if(sSECustomerKeyMD5Iter != headers.end())
+ {
+ m_sSECustomerKeyMD5 = sSECustomerKeyMD5Iter->second;
+ }
+
+ const auto& sSEKMSKeyIdIter = headers.find("x-amz-server-side-encryption-aws-kms-key-id");
+ if(sSEKMSKeyIdIter != headers.end())
+ {
+ m_sSEKMSKeyId = sSEKMSKeyIdIter->second;
+ }
+
+ const auto& bucketKeyEnabledIter = headers.find("x-amz-server-side-encryption-bucket-key-enabled");
+ if(bucketKeyEnabledIter != headers.end())
+ {
+ m_bucketKeyEnabled = StringUtils::ConvertToBool(bucketKeyEnabledIter->second.c_str());
+ }
+
+ const auto& storageClassIter = headers.find("x-amz-storage-class");
+ if(storageClassIter != headers.end())
+ {
+ m_storageClass = StorageClassMapper::GetStorageClassForName(storageClassIter->second);
+ }
+
+ const auto& requestChargedIter = headers.find("x-amz-request-charged");
+ if(requestChargedIter != headers.end())
+ {
+ m_requestCharged = RequestChargedMapper::GetRequestChargedForName(requestChargedIter->second);
+ }
+
+ const auto& replicationStatusIter = headers.find("x-amz-replication-status");
+ if(replicationStatusIter != headers.end())
+ {
+ m_replicationStatus = ReplicationStatusMapper::GetReplicationStatusForName(replicationStatusIter->second);
+ }
+
+ const auto& partsCountIter = headers.find("x-amz-mp-parts-count");
+ if(partsCountIter != headers.end())
+ {
+ m_partsCount = StringUtils::ConvertToInt32(partsCountIter->second.c_str());
+ }
+
+ const auto& objectLockModeIter = headers.find("x-amz-object-lock-mode");
+ if(objectLockModeIter != headers.end())
+ {
+ m_objectLockMode = ObjectLockModeMapper::GetObjectLockModeForName(objectLockModeIter->second);
+ }
+
+ const auto& objectLockRetainUntilDateIter = headers.find("x-amz-object-lock-retain-until-date");
+ if(objectLockRetainUntilDateIter != headers.end())
+ {
+ m_objectLockRetainUntilDate = DateTime(objectLockRetainUntilDateIter->second, DateFormat::RFC822);
+ }
+
+ const auto& objectLockLegalHoldStatusIter = headers.find("x-amz-object-lock-legal-hold");
+ if(objectLockLegalHoldStatusIter != headers.end())
+ {
+ m_objectLockLegalHoldStatus = ObjectLockLegalHoldStatusMapper::GetObjectLockLegalHoldStatusForName(objectLockLegalHoldStatusIter->second);
+ }
+
+ return *this;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/IndexDocument.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/IndexDocument.cpp
new file mode 100644
index 0000000000..92c841169b
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/IndexDocument.cpp
@@ -0,0 +1,64 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/IndexDocument.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
+{
+
+IndexDocument::IndexDocument() :
+ m_suffixHasBeenSet(false)
+{
+}
+
+IndexDocument::IndexDocument(const XmlNode& xmlNode) :
+ m_suffixHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+IndexDocument& IndexDocument::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode suffixNode = resultNode.FirstChild("Suffix");
+ if(!suffixNode.IsNull())
+ {
+ m_suffix = Aws::Utils::Xml::DecodeEscapedXmlText(suffixNode.GetText());
+ m_suffixHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void IndexDocument::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_suffixHasBeenSet)
+ {
+ XmlNode suffixNode = parentNode.CreateChildElement("Suffix");
+ suffixNode.SetText(m_suffix);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Initiator.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Initiator.cpp
new file mode 100644
index 0000000000..1bd09bd715
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Initiator.cpp
@@ -0,0 +1,78 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/Initiator.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
+{
+
+Initiator::Initiator() :
+ m_iDHasBeenSet(false),
+ m_displayNameHasBeenSet(false)
+{
+}
+
+Initiator::Initiator(const XmlNode& xmlNode) :
+ m_iDHasBeenSet(false),
+ m_displayNameHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+Initiator& Initiator::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode iDNode = resultNode.FirstChild("ID");
+ if(!iDNode.IsNull())
+ {
+ m_iD = Aws::Utils::Xml::DecodeEscapedXmlText(iDNode.GetText());
+ m_iDHasBeenSet = true;
+ }
+ XmlNode displayNameNode = resultNode.FirstChild("DisplayName");
+ if(!displayNameNode.IsNull())
+ {
+ m_displayName = Aws::Utils::Xml::DecodeEscapedXmlText(displayNameNode.GetText());
+ m_displayNameHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void Initiator::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_iDHasBeenSet)
+ {
+ XmlNode iDNode = parentNode.CreateChildElement("ID");
+ iDNode.SetText(m_iD);
+ }
+
+ if(m_displayNameHasBeenSet)
+ {
+ XmlNode displayNameNode = parentNode.CreateChildElement("DisplayName");
+ displayNameNode.SetText(m_displayName);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InputSerialization.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InputSerialization.cpp
new file mode 100644
index 0000000000..7ae6435735
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InputSerialization.cpp
@@ -0,0 +1,108 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/InputSerialization.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
+{
+
+InputSerialization::InputSerialization() :
+ m_cSVHasBeenSet(false),
+ m_compressionType(CompressionType::NOT_SET),
+ m_compressionTypeHasBeenSet(false),
+ m_jSONHasBeenSet(false),
+ m_parquetHasBeenSet(false)
+{
+}
+
+InputSerialization::InputSerialization(const XmlNode& xmlNode) :
+ m_cSVHasBeenSet(false),
+ m_compressionType(CompressionType::NOT_SET),
+ m_compressionTypeHasBeenSet(false),
+ m_jSONHasBeenSet(false),
+ m_parquetHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+InputSerialization& InputSerialization::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode cSVNode = resultNode.FirstChild("CSV");
+ if(!cSVNode.IsNull())
+ {
+ m_cSV = cSVNode;
+ m_cSVHasBeenSet = true;
+ }
+ XmlNode compressionTypeNode = resultNode.FirstChild("CompressionType");
+ if(!compressionTypeNode.IsNull())
+ {
+ m_compressionType = CompressionTypeMapper::GetCompressionTypeForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(compressionTypeNode.GetText()).c_str()).c_str());
+ m_compressionTypeHasBeenSet = true;
+ }
+ XmlNode jSONNode = resultNode.FirstChild("JSON");
+ if(!jSONNode.IsNull())
+ {
+ m_jSON = jSONNode;
+ m_jSONHasBeenSet = true;
+ }
+ XmlNode parquetNode = resultNode.FirstChild("Parquet");
+ if(!parquetNode.IsNull())
+ {
+ m_parquet = parquetNode;
+ m_parquetHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void InputSerialization::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_cSVHasBeenSet)
+ {
+ XmlNode cSVNode = parentNode.CreateChildElement("CSV");
+ m_cSV.AddToNode(cSVNode);
+ }
+
+ if(m_compressionTypeHasBeenSet)
+ {
+ XmlNode compressionTypeNode = parentNode.CreateChildElement("CompressionType");
+ compressionTypeNode.SetText(CompressionTypeMapper::GetNameForCompressionType(m_compressionType));
+ }
+
+ if(m_jSONHasBeenSet)
+ {
+ XmlNode jSONNode = parentNode.CreateChildElement("JSON");
+ m_jSON.AddToNode(jSONNode);
+ }
+
+ if(m_parquetHasBeenSet)
+ {
+ XmlNode parquetNode = parentNode.CreateChildElement("Parquet");
+ m_parquet.AddToNode(parquetNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/IntelligentTieringAccessTier.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/IntelligentTieringAccessTier.cpp
new file mode 100644
index 0000000000..bfee984c02
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/IntelligentTieringAccessTier.cpp
@@ -0,0 +1,70 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/IntelligentTieringAccessTier.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 IntelligentTieringAccessTierMapper
+ {
+
+ static const int ARCHIVE_ACCESS_HASH = HashingUtils::HashString("ARCHIVE_ACCESS");
+ static const int DEEP_ARCHIVE_ACCESS_HASH = HashingUtils::HashString("DEEP_ARCHIVE_ACCESS");
+
+
+ IntelligentTieringAccessTier GetIntelligentTieringAccessTierForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == ARCHIVE_ACCESS_HASH)
+ {
+ return IntelligentTieringAccessTier::ARCHIVE_ACCESS;
+ }
+ else if (hashCode == DEEP_ARCHIVE_ACCESS_HASH)
+ {
+ return IntelligentTieringAccessTier::DEEP_ARCHIVE_ACCESS;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<IntelligentTieringAccessTier>(hashCode);
+ }
+
+ return IntelligentTieringAccessTier::NOT_SET;
+ }
+
+ Aws::String GetNameForIntelligentTieringAccessTier(IntelligentTieringAccessTier enumValue)
+ {
+ switch(enumValue)
+ {
+ case IntelligentTieringAccessTier::ARCHIVE_ACCESS:
+ return "ARCHIVE_ACCESS";
+ case IntelligentTieringAccessTier::DEEP_ARCHIVE_ACCESS:
+ return "DEEP_ARCHIVE_ACCESS";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace IntelligentTieringAccessTierMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/IntelligentTieringAndOperator.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/IntelligentTieringAndOperator.cpp
new file mode 100644
index 0000000000..1c040b512d
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/IntelligentTieringAndOperator.cpp
@@ -0,0 +1,88 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/IntelligentTieringAndOperator.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
+{
+
+IntelligentTieringAndOperator::IntelligentTieringAndOperator() :
+ m_prefixHasBeenSet(false),
+ m_tagsHasBeenSet(false)
+{
+}
+
+IntelligentTieringAndOperator::IntelligentTieringAndOperator(const XmlNode& xmlNode) :
+ m_prefixHasBeenSet(false),
+ m_tagsHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+IntelligentTieringAndOperator& IntelligentTieringAndOperator::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode prefixNode = resultNode.FirstChild("Prefix");
+ if(!prefixNode.IsNull())
+ {
+ m_prefix = Aws::Utils::Xml::DecodeEscapedXmlText(prefixNode.GetText());
+ m_prefixHasBeenSet = true;
+ }
+ XmlNode tagsNode = resultNode.FirstChild("Tag");
+ if(!tagsNode.IsNull())
+ {
+ XmlNode tagMember = tagsNode;
+ while(!tagMember.IsNull())
+ {
+ m_tags.push_back(tagMember);
+ tagMember = tagMember.NextNode("Tag");
+ }
+
+ m_tagsHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void IntelligentTieringAndOperator::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_prefixHasBeenSet)
+ {
+ XmlNode prefixNode = parentNode.CreateChildElement("Prefix");
+ prefixNode.SetText(m_prefix);
+ }
+
+ if(m_tagsHasBeenSet)
+ {
+ XmlNode tagsParentNode = parentNode.CreateChildElement("Tags");
+ for(const auto& item : m_tags)
+ {
+ XmlNode tagsNode = tagsParentNode.CreateChildElement("Tag");
+ item.AddToNode(tagsNode);
+ }
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/IntelligentTieringConfiguration.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/IntelligentTieringConfiguration.cpp
new file mode 100644
index 0000000000..f0cb7bc3cc
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/IntelligentTieringConfiguration.cpp
@@ -0,0 +1,117 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/IntelligentTieringConfiguration.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
+{
+
+IntelligentTieringConfiguration::IntelligentTieringConfiguration() :
+ m_idHasBeenSet(false),
+ m_filterHasBeenSet(false),
+ m_status(IntelligentTieringStatus::NOT_SET),
+ m_statusHasBeenSet(false),
+ m_tieringsHasBeenSet(false)
+{
+}
+
+IntelligentTieringConfiguration::IntelligentTieringConfiguration(const XmlNode& xmlNode) :
+ m_idHasBeenSet(false),
+ m_filterHasBeenSet(false),
+ m_status(IntelligentTieringStatus::NOT_SET),
+ m_statusHasBeenSet(false),
+ m_tieringsHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+IntelligentTieringConfiguration& IntelligentTieringConfiguration::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode idNode = resultNode.FirstChild("Id");
+ if(!idNode.IsNull())
+ {
+ m_id = Aws::Utils::Xml::DecodeEscapedXmlText(idNode.GetText());
+ m_idHasBeenSet = true;
+ }
+ XmlNode filterNode = resultNode.FirstChild("Filter");
+ if(!filterNode.IsNull())
+ {
+ m_filter = filterNode;
+ m_filterHasBeenSet = true;
+ }
+ XmlNode statusNode = resultNode.FirstChild("Status");
+ if(!statusNode.IsNull())
+ {
+ m_status = IntelligentTieringStatusMapper::GetIntelligentTieringStatusForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(statusNode.GetText()).c_str()).c_str());
+ m_statusHasBeenSet = true;
+ }
+ XmlNode tieringsNode = resultNode.FirstChild("Tiering");
+ if(!tieringsNode.IsNull())
+ {
+ XmlNode tieringMember = tieringsNode;
+ while(!tieringMember.IsNull())
+ {
+ m_tierings.push_back(tieringMember);
+ tieringMember = tieringMember.NextNode("Tiering");
+ }
+
+ m_tieringsHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void IntelligentTieringConfiguration::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_idHasBeenSet)
+ {
+ XmlNode idNode = parentNode.CreateChildElement("Id");
+ idNode.SetText(m_id);
+ }
+
+ if(m_filterHasBeenSet)
+ {
+ XmlNode filterNode = parentNode.CreateChildElement("Filter");
+ m_filter.AddToNode(filterNode);
+ }
+
+ if(m_statusHasBeenSet)
+ {
+ XmlNode statusNode = parentNode.CreateChildElement("Status");
+ statusNode.SetText(IntelligentTieringStatusMapper::GetNameForIntelligentTieringStatus(m_status));
+ }
+
+ if(m_tieringsHasBeenSet)
+ {
+ for(const auto& item : m_tierings)
+ {
+ XmlNode tieringsNode = parentNode.CreateChildElement("Tiering");
+ item.AddToNode(tieringsNode);
+ }
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/IntelligentTieringFilter.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/IntelligentTieringFilter.cpp
new file mode 100644
index 0000000000..b69ee79df4
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/IntelligentTieringFilter.cpp
@@ -0,0 +1,92 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/IntelligentTieringFilter.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
+{
+
+IntelligentTieringFilter::IntelligentTieringFilter() :
+ m_prefixHasBeenSet(false),
+ m_tagHasBeenSet(false),
+ m_andHasBeenSet(false)
+{
+}
+
+IntelligentTieringFilter::IntelligentTieringFilter(const XmlNode& xmlNode) :
+ m_prefixHasBeenSet(false),
+ m_tagHasBeenSet(false),
+ m_andHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+IntelligentTieringFilter& IntelligentTieringFilter::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode prefixNode = resultNode.FirstChild("Prefix");
+ if(!prefixNode.IsNull())
+ {
+ m_prefix = Aws::Utils::Xml::DecodeEscapedXmlText(prefixNode.GetText());
+ m_prefixHasBeenSet = true;
+ }
+ XmlNode tagNode = resultNode.FirstChild("Tag");
+ if(!tagNode.IsNull())
+ {
+ m_tag = tagNode;
+ m_tagHasBeenSet = true;
+ }
+ XmlNode andNode = resultNode.FirstChild("And");
+ if(!andNode.IsNull())
+ {
+ m_and = andNode;
+ m_andHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void IntelligentTieringFilter::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_prefixHasBeenSet)
+ {
+ XmlNode prefixNode = parentNode.CreateChildElement("Prefix");
+ prefixNode.SetText(m_prefix);
+ }
+
+ if(m_tagHasBeenSet)
+ {
+ XmlNode tagNode = parentNode.CreateChildElement("Tag");
+ m_tag.AddToNode(tagNode);
+ }
+
+ if(m_andHasBeenSet)
+ {
+ XmlNode andNode = parentNode.CreateChildElement("And");
+ m_and.AddToNode(andNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/IntelligentTieringStatus.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/IntelligentTieringStatus.cpp
new file mode 100644
index 0000000000..9fc0d1d2ec
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/IntelligentTieringStatus.cpp
@@ -0,0 +1,70 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/IntelligentTieringStatus.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 IntelligentTieringStatusMapper
+ {
+
+ static const int Enabled_HASH = HashingUtils::HashString("Enabled");
+ static const int Disabled_HASH = HashingUtils::HashString("Disabled");
+
+
+ IntelligentTieringStatus GetIntelligentTieringStatusForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == Enabled_HASH)
+ {
+ return IntelligentTieringStatus::Enabled;
+ }
+ else if (hashCode == Disabled_HASH)
+ {
+ return IntelligentTieringStatus::Disabled;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<IntelligentTieringStatus>(hashCode);
+ }
+
+ return IntelligentTieringStatus::NOT_SET;
+ }
+
+ Aws::String GetNameForIntelligentTieringStatus(IntelligentTieringStatus enumValue)
+ {
+ switch(enumValue)
+ {
+ case IntelligentTieringStatus::Enabled:
+ return "Enabled";
+ case IntelligentTieringStatus::Disabled:
+ return "Disabled";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace IntelligentTieringStatusMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InvalidObjectState.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InvalidObjectState.cpp
new file mode 100644
index 0000000000..4d64e4f75e
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InvalidObjectState.cpp
@@ -0,0 +1,82 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/InvalidObjectState.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
+{
+
+InvalidObjectState::InvalidObjectState() :
+ m_storageClass(StorageClass::NOT_SET),
+ m_storageClassHasBeenSet(false),
+ m_accessTier(IntelligentTieringAccessTier::NOT_SET),
+ m_accessTierHasBeenSet(false)
+{
+}
+
+InvalidObjectState::InvalidObjectState(const XmlNode& xmlNode) :
+ m_storageClass(StorageClass::NOT_SET),
+ m_storageClassHasBeenSet(false),
+ m_accessTier(IntelligentTieringAccessTier::NOT_SET),
+ m_accessTierHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+InvalidObjectState& InvalidObjectState::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode storageClassNode = resultNode.FirstChild("StorageClass");
+ if(!storageClassNode.IsNull())
+ {
+ m_storageClass = StorageClassMapper::GetStorageClassForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(storageClassNode.GetText()).c_str()).c_str());
+ m_storageClassHasBeenSet = true;
+ }
+ XmlNode accessTierNode = resultNode.FirstChild("AccessTier");
+ if(!accessTierNode.IsNull())
+ {
+ m_accessTier = IntelligentTieringAccessTierMapper::GetIntelligentTieringAccessTierForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(accessTierNode.GetText()).c_str()).c_str());
+ m_accessTierHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void InvalidObjectState::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_storageClassHasBeenSet)
+ {
+ XmlNode storageClassNode = parentNode.CreateChildElement("StorageClass");
+ storageClassNode.SetText(StorageClassMapper::GetNameForStorageClass(m_storageClass));
+ }
+
+ if(m_accessTierHasBeenSet)
+ {
+ XmlNode accessTierNode = parentNode.CreateChildElement("AccessTier");
+ accessTierNode.SetText(IntelligentTieringAccessTierMapper::GetNameForIntelligentTieringAccessTier(m_accessTier));
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryConfiguration.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryConfiguration.cpp
new file mode 100644
index 0000000000..304dde130a
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryConfiguration.cpp
@@ -0,0 +1,164 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/InventoryConfiguration.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
+{
+
+InventoryConfiguration::InventoryConfiguration() :
+ m_destinationHasBeenSet(false),
+ m_isEnabled(false),
+ m_isEnabledHasBeenSet(false),
+ m_filterHasBeenSet(false),
+ m_idHasBeenSet(false),
+ m_includedObjectVersions(InventoryIncludedObjectVersions::NOT_SET),
+ m_includedObjectVersionsHasBeenSet(false),
+ m_optionalFieldsHasBeenSet(false),
+ m_scheduleHasBeenSet(false)
+{
+}
+
+InventoryConfiguration::InventoryConfiguration(const XmlNode& xmlNode) :
+ m_destinationHasBeenSet(false),
+ m_isEnabled(false),
+ m_isEnabledHasBeenSet(false),
+ m_filterHasBeenSet(false),
+ m_idHasBeenSet(false),
+ m_includedObjectVersions(InventoryIncludedObjectVersions::NOT_SET),
+ m_includedObjectVersionsHasBeenSet(false),
+ m_optionalFieldsHasBeenSet(false),
+ m_scheduleHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+InventoryConfiguration& InventoryConfiguration::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode destinationNode = resultNode.FirstChild("Destination");
+ if(!destinationNode.IsNull())
+ {
+ m_destination = destinationNode;
+ m_destinationHasBeenSet = true;
+ }
+ XmlNode isEnabledNode = resultNode.FirstChild("IsEnabled");
+ if(!isEnabledNode.IsNull())
+ {
+ m_isEnabled = StringUtils::ConvertToBool(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(isEnabledNode.GetText()).c_str()).c_str());
+ m_isEnabledHasBeenSet = true;
+ }
+ XmlNode filterNode = resultNode.FirstChild("Filter");
+ if(!filterNode.IsNull())
+ {
+ m_filter = filterNode;
+ m_filterHasBeenSet = true;
+ }
+ XmlNode idNode = resultNode.FirstChild("Id");
+ if(!idNode.IsNull())
+ {
+ m_id = Aws::Utils::Xml::DecodeEscapedXmlText(idNode.GetText());
+ m_idHasBeenSet = true;
+ }
+ XmlNode includedObjectVersionsNode = resultNode.FirstChild("IncludedObjectVersions");
+ if(!includedObjectVersionsNode.IsNull())
+ {
+ m_includedObjectVersions = InventoryIncludedObjectVersionsMapper::GetInventoryIncludedObjectVersionsForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(includedObjectVersionsNode.GetText()).c_str()).c_str());
+ m_includedObjectVersionsHasBeenSet = true;
+ }
+ XmlNode optionalFieldsNode = resultNode.FirstChild("OptionalFields");
+ if(!optionalFieldsNode.IsNull())
+ {
+ XmlNode optionalFieldsMember = optionalFieldsNode.FirstChild("Field");
+ while(!optionalFieldsMember.IsNull())
+ {
+ m_optionalFields.push_back(InventoryOptionalFieldMapper::GetInventoryOptionalFieldForName(StringUtils::Trim(optionalFieldsMember.GetText().c_str())));
+ optionalFieldsMember = optionalFieldsMember.NextNode("Field");
+ }
+
+ m_optionalFieldsHasBeenSet = true;
+ }
+ XmlNode scheduleNode = resultNode.FirstChild("Schedule");
+ if(!scheduleNode.IsNull())
+ {
+ m_schedule = scheduleNode;
+ m_scheduleHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void InventoryConfiguration::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_destinationHasBeenSet)
+ {
+ XmlNode destinationNode = parentNode.CreateChildElement("Destination");
+ m_destination.AddToNode(destinationNode);
+ }
+
+ if(m_isEnabledHasBeenSet)
+ {
+ XmlNode isEnabledNode = parentNode.CreateChildElement("IsEnabled");
+ ss << std::boolalpha << m_isEnabled;
+ isEnabledNode.SetText(ss.str());
+ ss.str("");
+ }
+
+ if(m_filterHasBeenSet)
+ {
+ XmlNode filterNode = parentNode.CreateChildElement("Filter");
+ m_filter.AddToNode(filterNode);
+ }
+
+ if(m_idHasBeenSet)
+ {
+ XmlNode idNode = parentNode.CreateChildElement("Id");
+ idNode.SetText(m_id);
+ }
+
+ if(m_includedObjectVersionsHasBeenSet)
+ {
+ XmlNode includedObjectVersionsNode = parentNode.CreateChildElement("IncludedObjectVersions");
+ includedObjectVersionsNode.SetText(InventoryIncludedObjectVersionsMapper::GetNameForInventoryIncludedObjectVersions(m_includedObjectVersions));
+ }
+
+ if(m_optionalFieldsHasBeenSet)
+ {
+ XmlNode optionalFieldsParentNode = parentNode.CreateChildElement("OptionalFields");
+ for(const auto& item : m_optionalFields)
+ {
+ XmlNode optionalFieldsNode = optionalFieldsParentNode.CreateChildElement("Field");
+ optionalFieldsNode.SetText(InventoryOptionalFieldMapper::GetNameForInventoryOptionalField(item));
+ }
+ }
+
+ if(m_scheduleHasBeenSet)
+ {
+ XmlNode scheduleNode = parentNode.CreateChildElement("Schedule");
+ m_schedule.AddToNode(scheduleNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryDestination.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryDestination.cpp
new file mode 100644
index 0000000000..0be4294b1f
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryDestination.cpp
@@ -0,0 +1,64 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/InventoryDestination.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
+{
+
+InventoryDestination::InventoryDestination() :
+ m_s3BucketDestinationHasBeenSet(false)
+{
+}
+
+InventoryDestination::InventoryDestination(const XmlNode& xmlNode) :
+ m_s3BucketDestinationHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+InventoryDestination& InventoryDestination::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode s3BucketDestinationNode = resultNode.FirstChild("S3BucketDestination");
+ if(!s3BucketDestinationNode.IsNull())
+ {
+ m_s3BucketDestination = s3BucketDestinationNode;
+ m_s3BucketDestinationHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void InventoryDestination::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_s3BucketDestinationHasBeenSet)
+ {
+ XmlNode s3BucketDestinationNode = parentNode.CreateChildElement("S3BucketDestination");
+ m_s3BucketDestination.AddToNode(s3BucketDestinationNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryEncryption.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryEncryption.cpp
new file mode 100644
index 0000000000..82f9a9c0a3
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryEncryption.cpp
@@ -0,0 +1,78 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/InventoryEncryption.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
+{
+
+InventoryEncryption::InventoryEncryption() :
+ m_sSES3HasBeenSet(false),
+ m_sSEKMSHasBeenSet(false)
+{
+}
+
+InventoryEncryption::InventoryEncryption(const XmlNode& xmlNode) :
+ m_sSES3HasBeenSet(false),
+ m_sSEKMSHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+InventoryEncryption& InventoryEncryption::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode sSES3Node = resultNode.FirstChild("SSE-S3");
+ if(!sSES3Node.IsNull())
+ {
+ m_sSES3 = sSES3Node;
+ m_sSES3HasBeenSet = true;
+ }
+ XmlNode sSEKMSNode = resultNode.FirstChild("SSE-KMS");
+ if(!sSEKMSNode.IsNull())
+ {
+ m_sSEKMS = sSEKMSNode;
+ m_sSEKMSHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void InventoryEncryption::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_sSES3HasBeenSet)
+ {
+ XmlNode sSES3Node = parentNode.CreateChildElement("SSE-S3");
+ m_sSES3.AddToNode(sSES3Node);
+ }
+
+ if(m_sSEKMSHasBeenSet)
+ {
+ XmlNode sSEKMSNode = parentNode.CreateChildElement("SSE-KMS");
+ m_sSEKMS.AddToNode(sSEKMSNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryFilter.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryFilter.cpp
new file mode 100644
index 0000000000..857efe0dad
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryFilter.cpp
@@ -0,0 +1,64 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/InventoryFilter.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
+{
+
+InventoryFilter::InventoryFilter() :
+ m_prefixHasBeenSet(false)
+{
+}
+
+InventoryFilter::InventoryFilter(const XmlNode& xmlNode) :
+ m_prefixHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+InventoryFilter& InventoryFilter::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode prefixNode = resultNode.FirstChild("Prefix");
+ if(!prefixNode.IsNull())
+ {
+ m_prefix = Aws::Utils::Xml::DecodeEscapedXmlText(prefixNode.GetText());
+ m_prefixHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void InventoryFilter::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_prefixHasBeenSet)
+ {
+ XmlNode prefixNode = parentNode.CreateChildElement("Prefix");
+ prefixNode.SetText(m_prefix);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryFormat.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryFormat.cpp
new file mode 100644
index 0000000000..f7bbc6c269
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryFormat.cpp
@@ -0,0 +1,77 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/InventoryFormat.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 InventoryFormatMapper
+ {
+
+ static const int CSV_HASH = HashingUtils::HashString("CSV");
+ static const int ORC_HASH = HashingUtils::HashString("ORC");
+ static const int Parquet_HASH = HashingUtils::HashString("Parquet");
+
+
+ InventoryFormat GetInventoryFormatForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == CSV_HASH)
+ {
+ return InventoryFormat::CSV;
+ }
+ else if (hashCode == ORC_HASH)
+ {
+ return InventoryFormat::ORC;
+ }
+ else if (hashCode == Parquet_HASH)
+ {
+ return InventoryFormat::Parquet;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<InventoryFormat>(hashCode);
+ }
+
+ return InventoryFormat::NOT_SET;
+ }
+
+ Aws::String GetNameForInventoryFormat(InventoryFormat enumValue)
+ {
+ switch(enumValue)
+ {
+ case InventoryFormat::CSV:
+ return "CSV";
+ case InventoryFormat::ORC:
+ return "ORC";
+ case InventoryFormat::Parquet:
+ return "Parquet";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace InventoryFormatMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryFrequency.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryFrequency.cpp
new file mode 100644
index 0000000000..021e2a1710
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryFrequency.cpp
@@ -0,0 +1,70 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/InventoryFrequency.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 InventoryFrequencyMapper
+ {
+
+ static const int Daily_HASH = HashingUtils::HashString("Daily");
+ static const int Weekly_HASH = HashingUtils::HashString("Weekly");
+
+
+ InventoryFrequency GetInventoryFrequencyForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == Daily_HASH)
+ {
+ return InventoryFrequency::Daily;
+ }
+ else if (hashCode == Weekly_HASH)
+ {
+ return InventoryFrequency::Weekly;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<InventoryFrequency>(hashCode);
+ }
+
+ return InventoryFrequency::NOT_SET;
+ }
+
+ Aws::String GetNameForInventoryFrequency(InventoryFrequency enumValue)
+ {
+ switch(enumValue)
+ {
+ case InventoryFrequency::Daily:
+ return "Daily";
+ case InventoryFrequency::Weekly:
+ return "Weekly";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace InventoryFrequencyMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryIncludedObjectVersions.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryIncludedObjectVersions.cpp
new file mode 100644
index 0000000000..f4e28acb00
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryIncludedObjectVersions.cpp
@@ -0,0 +1,70 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/InventoryIncludedObjectVersions.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 InventoryIncludedObjectVersionsMapper
+ {
+
+ static const int All_HASH = HashingUtils::HashString("All");
+ static const int Current_HASH = HashingUtils::HashString("Current");
+
+
+ InventoryIncludedObjectVersions GetInventoryIncludedObjectVersionsForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == All_HASH)
+ {
+ return InventoryIncludedObjectVersions::All;
+ }
+ else if (hashCode == Current_HASH)
+ {
+ return InventoryIncludedObjectVersions::Current;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<InventoryIncludedObjectVersions>(hashCode);
+ }
+
+ return InventoryIncludedObjectVersions::NOT_SET;
+ }
+
+ Aws::String GetNameForInventoryIncludedObjectVersions(InventoryIncludedObjectVersions enumValue)
+ {
+ switch(enumValue)
+ {
+ case InventoryIncludedObjectVersions::All:
+ return "All";
+ case InventoryIncludedObjectVersions::Current:
+ return "Current";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace InventoryIncludedObjectVersionsMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
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
new file mode 100644
index 0000000000..00ae5fda49
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryOptionalField.cpp
@@ -0,0 +1,133 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/InventoryOptionalField.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 InventoryOptionalFieldMapper
+ {
+
+ static const int Size_HASH = HashingUtils::HashString("Size");
+ static const int LastModifiedDate_HASH = HashingUtils::HashString("LastModifiedDate");
+ static const int StorageClass_HASH = HashingUtils::HashString("StorageClass");
+ static const int ETag_HASH = HashingUtils::HashString("ETag");
+ static const int IsMultipartUploaded_HASH = HashingUtils::HashString("IsMultipartUploaded");
+ static const int ReplicationStatus_HASH = HashingUtils::HashString("ReplicationStatus");
+ static const int EncryptionStatus_HASH = HashingUtils::HashString("EncryptionStatus");
+ static const int ObjectLockRetainUntilDate_HASH = HashingUtils::HashString("ObjectLockRetainUntilDate");
+ static const int ObjectLockMode_HASH = HashingUtils::HashString("ObjectLockMode");
+ static const int ObjectLockLegalHoldStatus_HASH = HashingUtils::HashString("ObjectLockLegalHoldStatus");
+ static const int IntelligentTieringAccessTier_HASH = HashingUtils::HashString("IntelligentTieringAccessTier");
+
+
+ InventoryOptionalField GetInventoryOptionalFieldForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == Size_HASH)
+ {
+ return InventoryOptionalField::Size;
+ }
+ else if (hashCode == LastModifiedDate_HASH)
+ {
+ return InventoryOptionalField::LastModifiedDate;
+ }
+ else if (hashCode == StorageClass_HASH)
+ {
+ return InventoryOptionalField::StorageClass;
+ }
+ else if (hashCode == ETag_HASH)
+ {
+ return InventoryOptionalField::ETag;
+ }
+ else if (hashCode == IsMultipartUploaded_HASH)
+ {
+ return InventoryOptionalField::IsMultipartUploaded;
+ }
+ else if (hashCode == ReplicationStatus_HASH)
+ {
+ return InventoryOptionalField::ReplicationStatus;
+ }
+ else if (hashCode == EncryptionStatus_HASH)
+ {
+ return InventoryOptionalField::EncryptionStatus;
+ }
+ else if (hashCode == ObjectLockRetainUntilDate_HASH)
+ {
+ return InventoryOptionalField::ObjectLockRetainUntilDate;
+ }
+ else if (hashCode == ObjectLockMode_HASH)
+ {
+ return InventoryOptionalField::ObjectLockMode;
+ }
+ else if (hashCode == ObjectLockLegalHoldStatus_HASH)
+ {
+ return InventoryOptionalField::ObjectLockLegalHoldStatus;
+ }
+ else if (hashCode == IntelligentTieringAccessTier_HASH)
+ {
+ return InventoryOptionalField::IntelligentTieringAccessTier;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<InventoryOptionalField>(hashCode);
+ }
+
+ return InventoryOptionalField::NOT_SET;
+ }
+
+ Aws::String GetNameForInventoryOptionalField(InventoryOptionalField enumValue)
+ {
+ switch(enumValue)
+ {
+ case InventoryOptionalField::Size:
+ return "Size";
+ case InventoryOptionalField::LastModifiedDate:
+ return "LastModifiedDate";
+ case InventoryOptionalField::StorageClass:
+ return "StorageClass";
+ case InventoryOptionalField::ETag:
+ return "ETag";
+ case InventoryOptionalField::IsMultipartUploaded:
+ return "IsMultipartUploaded";
+ case InventoryOptionalField::ReplicationStatus:
+ return "ReplicationStatus";
+ case InventoryOptionalField::EncryptionStatus:
+ return "EncryptionStatus";
+ case InventoryOptionalField::ObjectLockRetainUntilDate:
+ return "ObjectLockRetainUntilDate";
+ case InventoryOptionalField::ObjectLockMode:
+ return "ObjectLockMode";
+ case InventoryOptionalField::ObjectLockLegalHoldStatus:
+ return "ObjectLockLegalHoldStatus";
+ case InventoryOptionalField::IntelligentTieringAccessTier:
+ return "IntelligentTieringAccessTier";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace InventoryOptionalFieldMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryS3BucketDestination.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryS3BucketDestination.cpp
new file mode 100644
index 0000000000..5fb1f155a6
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventoryS3BucketDestination.cpp
@@ -0,0 +1,122 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/InventoryS3BucketDestination.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
+{
+
+InventoryS3BucketDestination::InventoryS3BucketDestination() :
+ m_accountIdHasBeenSet(false),
+ m_bucketHasBeenSet(false),
+ m_format(InventoryFormat::NOT_SET),
+ m_formatHasBeenSet(false),
+ m_prefixHasBeenSet(false),
+ m_encryptionHasBeenSet(false)
+{
+}
+
+InventoryS3BucketDestination::InventoryS3BucketDestination(const XmlNode& xmlNode) :
+ m_accountIdHasBeenSet(false),
+ m_bucketHasBeenSet(false),
+ m_format(InventoryFormat::NOT_SET),
+ m_formatHasBeenSet(false),
+ m_prefixHasBeenSet(false),
+ m_encryptionHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+InventoryS3BucketDestination& InventoryS3BucketDestination::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode accountIdNode = resultNode.FirstChild("AccountId");
+ if(!accountIdNode.IsNull())
+ {
+ m_accountId = Aws::Utils::Xml::DecodeEscapedXmlText(accountIdNode.GetText());
+ m_accountIdHasBeenSet = true;
+ }
+ XmlNode bucketNode = resultNode.FirstChild("Bucket");
+ if(!bucketNode.IsNull())
+ {
+ m_bucket = Aws::Utils::Xml::DecodeEscapedXmlText(bucketNode.GetText());
+ m_bucketHasBeenSet = true;
+ }
+ XmlNode formatNode = resultNode.FirstChild("Format");
+ if(!formatNode.IsNull())
+ {
+ m_format = InventoryFormatMapper::GetInventoryFormatForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(formatNode.GetText()).c_str()).c_str());
+ m_formatHasBeenSet = true;
+ }
+ XmlNode prefixNode = resultNode.FirstChild("Prefix");
+ if(!prefixNode.IsNull())
+ {
+ m_prefix = Aws::Utils::Xml::DecodeEscapedXmlText(prefixNode.GetText());
+ m_prefixHasBeenSet = true;
+ }
+ XmlNode encryptionNode = resultNode.FirstChild("Encryption");
+ if(!encryptionNode.IsNull())
+ {
+ m_encryption = encryptionNode;
+ m_encryptionHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void InventoryS3BucketDestination::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_accountIdHasBeenSet)
+ {
+ XmlNode accountIdNode = parentNode.CreateChildElement("AccountId");
+ accountIdNode.SetText(m_accountId);
+ }
+
+ if(m_bucketHasBeenSet)
+ {
+ XmlNode bucketNode = parentNode.CreateChildElement("Bucket");
+ bucketNode.SetText(m_bucket);
+ }
+
+ if(m_formatHasBeenSet)
+ {
+ XmlNode formatNode = parentNode.CreateChildElement("Format");
+ formatNode.SetText(InventoryFormatMapper::GetNameForInventoryFormat(m_format));
+ }
+
+ if(m_prefixHasBeenSet)
+ {
+ XmlNode prefixNode = parentNode.CreateChildElement("Prefix");
+ prefixNode.SetText(m_prefix);
+ }
+
+ if(m_encryptionHasBeenSet)
+ {
+ XmlNode encryptionNode = parentNode.CreateChildElement("Encryption");
+ m_encryption.AddToNode(encryptionNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventorySchedule.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventorySchedule.cpp
new file mode 100644
index 0000000000..008acd8159
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/InventorySchedule.cpp
@@ -0,0 +1,66 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/InventorySchedule.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
+{
+
+InventorySchedule::InventorySchedule() :
+ m_frequency(InventoryFrequency::NOT_SET),
+ m_frequencyHasBeenSet(false)
+{
+}
+
+InventorySchedule::InventorySchedule(const XmlNode& xmlNode) :
+ m_frequency(InventoryFrequency::NOT_SET),
+ m_frequencyHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+InventorySchedule& InventorySchedule::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode frequencyNode = resultNode.FirstChild("Frequency");
+ if(!frequencyNode.IsNull())
+ {
+ m_frequency = InventoryFrequencyMapper::GetInventoryFrequencyForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(frequencyNode.GetText()).c_str()).c_str());
+ m_frequencyHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void InventorySchedule::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_frequencyHasBeenSet)
+ {
+ XmlNode frequencyNode = parentNode.CreateChildElement("Frequency");
+ frequencyNode.SetText(InventoryFrequencyMapper::GetNameForInventoryFrequency(m_frequency));
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/JSONInput.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/JSONInput.cpp
new file mode 100644
index 0000000000..ba016e2c34
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/JSONInput.cpp
@@ -0,0 +1,66 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/JSONInput.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
+{
+
+JSONInput::JSONInput() :
+ m_type(JSONType::NOT_SET),
+ m_typeHasBeenSet(false)
+{
+}
+
+JSONInput::JSONInput(const XmlNode& xmlNode) :
+ m_type(JSONType::NOT_SET),
+ m_typeHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+JSONInput& JSONInput::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode typeNode = resultNode.FirstChild("Type");
+ if(!typeNode.IsNull())
+ {
+ m_type = JSONTypeMapper::GetJSONTypeForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(typeNode.GetText()).c_str()).c_str());
+ m_typeHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void JSONInput::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_typeHasBeenSet)
+ {
+ XmlNode typeNode = parentNode.CreateChildElement("Type");
+ typeNode.SetText(JSONTypeMapper::GetNameForJSONType(m_type));
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/JSONOutput.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/JSONOutput.cpp
new file mode 100644
index 0000000000..f4e44aacd7
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/JSONOutput.cpp
@@ -0,0 +1,64 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/JSONOutput.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
+{
+
+JSONOutput::JSONOutput() :
+ m_recordDelimiterHasBeenSet(false)
+{
+}
+
+JSONOutput::JSONOutput(const XmlNode& xmlNode) :
+ m_recordDelimiterHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+JSONOutput& JSONOutput::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode recordDelimiterNode = resultNode.FirstChild("RecordDelimiter");
+ if(!recordDelimiterNode.IsNull())
+ {
+ m_recordDelimiter = Aws::Utils::Xml::DecodeEscapedXmlText(recordDelimiterNode.GetText());
+ m_recordDelimiterHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void JSONOutput::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_recordDelimiterHasBeenSet)
+ {
+ XmlNode recordDelimiterNode = parentNode.CreateChildElement("RecordDelimiter");
+ recordDelimiterNode.SetText(m_recordDelimiter);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/JSONType.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/JSONType.cpp
new file mode 100644
index 0000000000..5699a91376
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/JSONType.cpp
@@ -0,0 +1,70 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/JSONType.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 JSONTypeMapper
+ {
+
+ static const int DOCUMENT_HASH = HashingUtils::HashString("DOCUMENT");
+ static const int LINES_HASH = HashingUtils::HashString("LINES");
+
+
+ JSONType GetJSONTypeForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == DOCUMENT_HASH)
+ {
+ return JSONType::DOCUMENT;
+ }
+ else if (hashCode == LINES_HASH)
+ {
+ return JSONType::LINES;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<JSONType>(hashCode);
+ }
+
+ return JSONType::NOT_SET;
+ }
+
+ Aws::String GetNameForJSONType(JSONType enumValue)
+ {
+ switch(enumValue)
+ {
+ case JSONType::DOCUMENT:
+ return "DOCUMENT";
+ case JSONType::LINES:
+ return "LINES";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace JSONTypeMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/LambdaFunctionConfiguration.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/LambdaFunctionConfiguration.cpp
new file mode 100644
index 0000000000..9815401b04
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/LambdaFunctionConfiguration.cpp
@@ -0,0 +1,115 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/LambdaFunctionConfiguration.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
+{
+
+LambdaFunctionConfiguration::LambdaFunctionConfiguration() :
+ m_idHasBeenSet(false),
+ m_lambdaFunctionArnHasBeenSet(false),
+ m_eventsHasBeenSet(false),
+ m_filterHasBeenSet(false)
+{
+}
+
+LambdaFunctionConfiguration::LambdaFunctionConfiguration(const XmlNode& xmlNode) :
+ m_idHasBeenSet(false),
+ m_lambdaFunctionArnHasBeenSet(false),
+ m_eventsHasBeenSet(false),
+ m_filterHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+LambdaFunctionConfiguration& LambdaFunctionConfiguration::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode idNode = resultNode.FirstChild("Id");
+ if(!idNode.IsNull())
+ {
+ m_id = Aws::Utils::Xml::DecodeEscapedXmlText(idNode.GetText());
+ m_idHasBeenSet = true;
+ }
+ XmlNode lambdaFunctionArnNode = resultNode.FirstChild("CloudFunction");
+ if(!lambdaFunctionArnNode.IsNull())
+ {
+ m_lambdaFunctionArn = Aws::Utils::Xml::DecodeEscapedXmlText(lambdaFunctionArnNode.GetText());
+ m_lambdaFunctionArnHasBeenSet = true;
+ }
+ XmlNode eventsNode = resultNode.FirstChild("Event");
+ if(!eventsNode.IsNull())
+ {
+ XmlNode eventMember = eventsNode;
+ while(!eventMember.IsNull())
+ {
+ m_events.push_back(EventMapper::GetEventForName(StringUtils::Trim(eventMember.GetText().c_str())));
+ eventMember = eventMember.NextNode("Event");
+ }
+
+ m_eventsHasBeenSet = true;
+ }
+ XmlNode filterNode = resultNode.FirstChild("Filter");
+ if(!filterNode.IsNull())
+ {
+ m_filter = filterNode;
+ m_filterHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void LambdaFunctionConfiguration::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_idHasBeenSet)
+ {
+ XmlNode idNode = parentNode.CreateChildElement("Id");
+ idNode.SetText(m_id);
+ }
+
+ if(m_lambdaFunctionArnHasBeenSet)
+ {
+ XmlNode lambdaFunctionArnNode = parentNode.CreateChildElement("CloudFunction");
+ lambdaFunctionArnNode.SetText(m_lambdaFunctionArn);
+ }
+
+ if(m_eventsHasBeenSet)
+ {
+ for(const auto& item : m_events)
+ {
+ XmlNode eventsNode = parentNode.CreateChildElement("Event");
+ eventsNode.SetText(EventMapper::GetNameForEvent(item));
+ }
+ }
+
+ if(m_filterHasBeenSet)
+ {
+ XmlNode filterNode = parentNode.CreateChildElement("Filter");
+ m_filter.AddToNode(filterNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/LifecycleConfiguration.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/LifecycleConfiguration.cpp
new file mode 100644
index 0000000000..0eb4a8ea86
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/LifecycleConfiguration.cpp
@@ -0,0 +1,73 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/LifecycleConfiguration.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
+{
+
+LifecycleConfiguration::LifecycleConfiguration() :
+ m_rulesHasBeenSet(false)
+{
+}
+
+LifecycleConfiguration::LifecycleConfiguration(const XmlNode& xmlNode) :
+ m_rulesHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+LifecycleConfiguration& LifecycleConfiguration::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode rulesNode = resultNode.FirstChild("Rule");
+ if(!rulesNode.IsNull())
+ {
+ XmlNode ruleMember = rulesNode;
+ while(!ruleMember.IsNull())
+ {
+ m_rules.push_back(ruleMember);
+ ruleMember = ruleMember.NextNode("Rule");
+ }
+
+ m_rulesHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void LifecycleConfiguration::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_rulesHasBeenSet)
+ {
+ for(const auto& item : m_rules)
+ {
+ XmlNode rulesNode = parentNode.CreateChildElement("Rule");
+ item.AddToNode(rulesNode);
+ }
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
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
new file mode 100644
index 0000000000..be347d18f0
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/LifecycleExpiration.cpp
@@ -0,0 +1,100 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/LifecycleExpiration.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
+{
+
+LifecycleExpiration::LifecycleExpiration() :
+ m_dateHasBeenSet(false),
+ m_days(0),
+ m_daysHasBeenSet(false),
+ m_expiredObjectDeleteMarker(false),
+ m_expiredObjectDeleteMarkerHasBeenSet(false)
+{
+}
+
+LifecycleExpiration::LifecycleExpiration(const XmlNode& xmlNode) :
+ m_dateHasBeenSet(false),
+ m_days(0),
+ m_daysHasBeenSet(false),
+ m_expiredObjectDeleteMarker(false),
+ m_expiredObjectDeleteMarkerHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+LifecycleExpiration& LifecycleExpiration::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ 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_dateHasBeenSet = true;
+ }
+ XmlNode daysNode = resultNode.FirstChild("Days");
+ if(!daysNode.IsNull())
+ {
+ m_days = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(daysNode.GetText()).c_str()).c_str());
+ m_daysHasBeenSet = true;
+ }
+ XmlNode expiredObjectDeleteMarkerNode = resultNode.FirstChild("ExpiredObjectDeleteMarker");
+ if(!expiredObjectDeleteMarkerNode.IsNull())
+ {
+ m_expiredObjectDeleteMarker = StringUtils::ConvertToBool(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(expiredObjectDeleteMarkerNode.GetText()).c_str()).c_str());
+ m_expiredObjectDeleteMarkerHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void LifecycleExpiration::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_dateHasBeenSet)
+ {
+ XmlNode dateNode = parentNode.CreateChildElement("Date");
+ dateNode.SetText(m_date.ToGmtString(DateFormat::ISO_8601));
+ }
+
+ if(m_daysHasBeenSet)
+ {
+ XmlNode daysNode = parentNode.CreateChildElement("Days");
+ ss << m_days;
+ daysNode.SetText(ss.str());
+ ss.str("");
+ }
+
+ if(m_expiredObjectDeleteMarkerHasBeenSet)
+ {
+ XmlNode expiredObjectDeleteMarkerNode = parentNode.CreateChildElement("ExpiredObjectDeleteMarker");
+ ss << std::boolalpha << m_expiredObjectDeleteMarker;
+ expiredObjectDeleteMarkerNode.SetText(ss.str());
+ ss.str("");
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/LifecycleRule.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/LifecycleRule.cpp
new file mode 100644
index 0000000000..c06290ee90
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/LifecycleRule.cpp
@@ -0,0 +1,182 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/LifecycleRule.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
+{
+
+LifecycleRule::LifecycleRule() :
+ m_expirationHasBeenSet(false),
+ m_iDHasBeenSet(false),
+ m_filterHasBeenSet(false),
+ m_status(ExpirationStatus::NOT_SET),
+ m_statusHasBeenSet(false),
+ m_transitionsHasBeenSet(false),
+ m_noncurrentVersionTransitionsHasBeenSet(false),
+ m_noncurrentVersionExpirationHasBeenSet(false),
+ m_abortIncompleteMultipartUploadHasBeenSet(false)
+{
+}
+
+LifecycleRule::LifecycleRule(const XmlNode& xmlNode) :
+ m_expirationHasBeenSet(false),
+ m_iDHasBeenSet(false),
+ m_filterHasBeenSet(false),
+ m_status(ExpirationStatus::NOT_SET),
+ m_statusHasBeenSet(false),
+ m_transitionsHasBeenSet(false),
+ m_noncurrentVersionTransitionsHasBeenSet(false),
+ m_noncurrentVersionExpirationHasBeenSet(false),
+ m_abortIncompleteMultipartUploadHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+LifecycleRule& LifecycleRule::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode expirationNode = resultNode.FirstChild("Expiration");
+ if(!expirationNode.IsNull())
+ {
+ m_expiration = expirationNode;
+ m_expirationHasBeenSet = true;
+ }
+ XmlNode iDNode = resultNode.FirstChild("ID");
+ if(!iDNode.IsNull())
+ {
+ m_iD = Aws::Utils::Xml::DecodeEscapedXmlText(iDNode.GetText());
+ m_iDHasBeenSet = true;
+ }
+ XmlNode filterNode = resultNode.FirstChild("Filter");
+ if(!filterNode.IsNull())
+ {
+ m_filter = filterNode;
+ m_filterHasBeenSet = true;
+ }
+ XmlNode statusNode = resultNode.FirstChild("Status");
+ if(!statusNode.IsNull())
+ {
+ m_status = ExpirationStatusMapper::GetExpirationStatusForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(statusNode.GetText()).c_str()).c_str());
+ m_statusHasBeenSet = true;
+ }
+ XmlNode transitionsNode = resultNode.FirstChild("Transition");
+ if(!transitionsNode.IsNull())
+ {
+ XmlNode transitionMember = transitionsNode;
+ while(!transitionMember.IsNull())
+ {
+ m_transitions.push_back(transitionMember);
+ transitionMember = transitionMember.NextNode("Transition");
+ }
+
+ m_transitionsHasBeenSet = true;
+ }
+ XmlNode noncurrentVersionTransitionsNode = resultNode.FirstChild("NoncurrentVersionTransition");
+ if(!noncurrentVersionTransitionsNode.IsNull())
+ {
+ XmlNode noncurrentVersionTransitionMember = noncurrentVersionTransitionsNode;
+ while(!noncurrentVersionTransitionMember.IsNull())
+ {
+ m_noncurrentVersionTransitions.push_back(noncurrentVersionTransitionMember);
+ noncurrentVersionTransitionMember = noncurrentVersionTransitionMember.NextNode("NoncurrentVersionTransition");
+ }
+
+ m_noncurrentVersionTransitionsHasBeenSet = true;
+ }
+ XmlNode noncurrentVersionExpirationNode = resultNode.FirstChild("NoncurrentVersionExpiration");
+ if(!noncurrentVersionExpirationNode.IsNull())
+ {
+ m_noncurrentVersionExpiration = noncurrentVersionExpirationNode;
+ m_noncurrentVersionExpirationHasBeenSet = true;
+ }
+ XmlNode abortIncompleteMultipartUploadNode = resultNode.FirstChild("AbortIncompleteMultipartUpload");
+ if(!abortIncompleteMultipartUploadNode.IsNull())
+ {
+ m_abortIncompleteMultipartUpload = abortIncompleteMultipartUploadNode;
+ m_abortIncompleteMultipartUploadHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void LifecycleRule::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_expirationHasBeenSet)
+ {
+ XmlNode expirationNode = parentNode.CreateChildElement("Expiration");
+ m_expiration.AddToNode(expirationNode);
+ }
+
+ if(m_iDHasBeenSet)
+ {
+ XmlNode iDNode = parentNode.CreateChildElement("ID");
+ iDNode.SetText(m_iD);
+ }
+
+ if(m_filterHasBeenSet)
+ {
+ XmlNode filterNode = parentNode.CreateChildElement("Filter");
+ m_filter.AddToNode(filterNode);
+ }
+
+ if(m_statusHasBeenSet)
+ {
+ XmlNode statusNode = parentNode.CreateChildElement("Status");
+ statusNode.SetText(ExpirationStatusMapper::GetNameForExpirationStatus(m_status));
+ }
+
+ if(m_transitionsHasBeenSet)
+ {
+ for(const auto& item : m_transitions)
+ {
+ XmlNode transitionsNode = parentNode.CreateChildElement("Transition");
+ item.AddToNode(transitionsNode);
+ }
+ }
+
+ if(m_noncurrentVersionTransitionsHasBeenSet)
+ {
+ for(const auto& item : m_noncurrentVersionTransitions)
+ {
+ XmlNode noncurrentVersionTransitionsNode = parentNode.CreateChildElement("NoncurrentVersionTransition");
+ item.AddToNode(noncurrentVersionTransitionsNode);
+ }
+ }
+
+ if(m_noncurrentVersionExpirationHasBeenSet)
+ {
+ XmlNode noncurrentVersionExpirationNode = parentNode.CreateChildElement("NoncurrentVersionExpiration");
+ m_noncurrentVersionExpiration.AddToNode(noncurrentVersionExpirationNode);
+ }
+
+ if(m_abortIncompleteMultipartUploadHasBeenSet)
+ {
+ XmlNode abortIncompleteMultipartUploadNode = parentNode.CreateChildElement("AbortIncompleteMultipartUpload");
+ m_abortIncompleteMultipartUpload.AddToNode(abortIncompleteMultipartUploadNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
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
new file mode 100644
index 0000000000..833c1d99ea
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/LifecycleRuleAndOperator.cpp
@@ -0,0 +1,88 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/LifecycleRuleAndOperator.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
+{
+
+LifecycleRuleAndOperator::LifecycleRuleAndOperator() :
+ m_prefixHasBeenSet(false),
+ m_tagsHasBeenSet(false)
+{
+}
+
+LifecycleRuleAndOperator::LifecycleRuleAndOperator(const XmlNode& xmlNode) :
+ m_prefixHasBeenSet(false),
+ m_tagsHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+LifecycleRuleAndOperator& LifecycleRuleAndOperator::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode prefixNode = resultNode.FirstChild("Prefix");
+ if(!prefixNode.IsNull())
+ {
+ m_prefix = Aws::Utils::Xml::DecodeEscapedXmlText(prefixNode.GetText());
+ m_prefixHasBeenSet = true;
+ }
+ XmlNode tagsNode = resultNode.FirstChild("Tag");
+ if(!tagsNode.IsNull())
+ {
+ XmlNode tagMember = tagsNode;
+ while(!tagMember.IsNull())
+ {
+ m_tags.push_back(tagMember);
+ tagMember = tagMember.NextNode("Tag");
+ }
+
+ m_tagsHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void LifecycleRuleAndOperator::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_prefixHasBeenSet)
+ {
+ XmlNode prefixNode = parentNode.CreateChildElement("Prefix");
+ prefixNode.SetText(m_prefix);
+ }
+
+ if(m_tagsHasBeenSet)
+ {
+ XmlNode tagsParentNode = parentNode.CreateChildElement("Tags");
+ for(const auto& item : m_tags)
+ {
+ XmlNode tagsNode = tagsParentNode.CreateChildElement("Tag");
+ item.AddToNode(tagsNode);
+ }
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
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
new file mode 100644
index 0000000000..0f56fb9044
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/LifecycleRuleFilter.cpp
@@ -0,0 +1,92 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/LifecycleRuleFilter.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
+{
+
+LifecycleRuleFilter::LifecycleRuleFilter() :
+ m_prefixHasBeenSet(false),
+ m_tagHasBeenSet(false),
+ m_andHasBeenSet(false)
+{
+}
+
+LifecycleRuleFilter::LifecycleRuleFilter(const XmlNode& xmlNode) :
+ m_prefixHasBeenSet(false),
+ m_tagHasBeenSet(false),
+ m_andHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+LifecycleRuleFilter& LifecycleRuleFilter::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode prefixNode = resultNode.FirstChild("Prefix");
+ if(!prefixNode.IsNull())
+ {
+ m_prefix = Aws::Utils::Xml::DecodeEscapedXmlText(prefixNode.GetText());
+ m_prefixHasBeenSet = true;
+ }
+ XmlNode tagNode = resultNode.FirstChild("Tag");
+ if(!tagNode.IsNull())
+ {
+ m_tag = tagNode;
+ m_tagHasBeenSet = true;
+ }
+ XmlNode andNode = resultNode.FirstChild("And");
+ if(!andNode.IsNull())
+ {
+ m_and = andNode;
+ m_andHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void LifecycleRuleFilter::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_prefixHasBeenSet)
+ {
+ XmlNode prefixNode = parentNode.CreateChildElement("Prefix");
+ prefixNode.SetText(m_prefix);
+ }
+
+ if(m_tagHasBeenSet)
+ {
+ XmlNode tagNode = parentNode.CreateChildElement("Tag");
+ m_tag.AddToNode(tagNode);
+ }
+
+ if(m_andHasBeenSet)
+ {
+ XmlNode andNode = parentNode.CreateChildElement("And");
+ m_and.AddToNode(andNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
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
new file mode 100644
index 0000000000..5b114920e1
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketAnalyticsConfigurationsRequest.cpp
@@ -0,0 +1,73 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ListBucketAnalyticsConfigurationsRequest.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;
+
+ListBucketAnalyticsConfigurationsRequest::ListBucketAnalyticsConfigurationsRequest() :
+ m_bucketHasBeenSet(false),
+ m_continuationTokenHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String ListBucketAnalyticsConfigurationsRequest::SerializePayload() const
+{
+ return {};
+}
+
+void ListBucketAnalyticsConfigurationsRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ if(m_continuationTokenHasBeenSet)
+ {
+ ss << m_continuationToken;
+ uri.AddQueryStringParameter("continuation-token", 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 ListBucketAnalyticsConfigurationsRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketAnalyticsConfigurationsResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketAnalyticsConfigurationsResult.cpp
new file mode 100644
index 0000000000..83614990b1
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketAnalyticsConfigurationsResult.cpp
@@ -0,0 +1,65 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ListBucketAnalyticsConfigurationsResult.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+#include <aws/core/AmazonWebServiceResult.h>
+#include <aws/core/utils/StringUtils.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Xml;
+using namespace Aws::Utils;
+using namespace Aws;
+
+ListBucketAnalyticsConfigurationsResult::ListBucketAnalyticsConfigurationsResult() :
+ m_isTruncated(false)
+{
+}
+
+ListBucketAnalyticsConfigurationsResult::ListBucketAnalyticsConfigurationsResult(const Aws::AmazonWebServiceResult<XmlDocument>& result) :
+ m_isTruncated(false)
+{
+ *this = result;
+}
+
+ListBucketAnalyticsConfigurationsResult& ListBucketAnalyticsConfigurationsResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode isTruncatedNode = resultNode.FirstChild("IsTruncated");
+ if(!isTruncatedNode.IsNull())
+ {
+ m_isTruncated = StringUtils::ConvertToBool(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(isTruncatedNode.GetText()).c_str()).c_str());
+ }
+ XmlNode continuationTokenNode = resultNode.FirstChild("ContinuationToken");
+ if(!continuationTokenNode.IsNull())
+ {
+ m_continuationToken = Aws::Utils::Xml::DecodeEscapedXmlText(continuationTokenNode.GetText());
+ }
+ XmlNode nextContinuationTokenNode = resultNode.FirstChild("NextContinuationToken");
+ if(!nextContinuationTokenNode.IsNull())
+ {
+ m_nextContinuationToken = Aws::Utils::Xml::DecodeEscapedXmlText(nextContinuationTokenNode.GetText());
+ }
+ XmlNode analyticsConfigurationListNode = resultNode.FirstChild("AnalyticsConfiguration");
+ if(!analyticsConfigurationListNode.IsNull())
+ {
+ XmlNode analyticsConfigurationMember = analyticsConfigurationListNode;
+ while(!analyticsConfigurationMember.IsNull())
+ {
+ m_analyticsConfigurationList.push_back(analyticsConfigurationMember);
+ analyticsConfigurationMember = analyticsConfigurationMember.NextNode("AnalyticsConfiguration");
+ }
+
+ }
+ }
+
+ return *this;
+}
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
new file mode 100644
index 0000000000..8e83bdec35
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketIntelligentTieringConfigurationsRequest.cpp
@@ -0,0 +1,59 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ListBucketIntelligentTieringConfigurationsRequest.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;
+
+ListBucketIntelligentTieringConfigurationsRequest::ListBucketIntelligentTieringConfigurationsRequest() :
+ m_bucketHasBeenSet(false),
+ m_continuationTokenHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String ListBucketIntelligentTieringConfigurationsRequest::SerializePayload() const
+{
+ return {};
+}
+
+void ListBucketIntelligentTieringConfigurationsRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ if(m_continuationTokenHasBeenSet)
+ {
+ ss << m_continuationToken;
+ uri.AddQueryStringParameter("continuation-token", 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);
+ }
+ }
+}
+
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketIntelligentTieringConfigurationsResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketIntelligentTieringConfigurationsResult.cpp
new file mode 100644
index 0000000000..aa08512586
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketIntelligentTieringConfigurationsResult.cpp
@@ -0,0 +1,65 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ListBucketIntelligentTieringConfigurationsResult.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+#include <aws/core/AmazonWebServiceResult.h>
+#include <aws/core/utils/StringUtils.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Xml;
+using namespace Aws::Utils;
+using namespace Aws;
+
+ListBucketIntelligentTieringConfigurationsResult::ListBucketIntelligentTieringConfigurationsResult() :
+ m_isTruncated(false)
+{
+}
+
+ListBucketIntelligentTieringConfigurationsResult::ListBucketIntelligentTieringConfigurationsResult(const Aws::AmazonWebServiceResult<XmlDocument>& result) :
+ m_isTruncated(false)
+{
+ *this = result;
+}
+
+ListBucketIntelligentTieringConfigurationsResult& ListBucketIntelligentTieringConfigurationsResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode isTruncatedNode = resultNode.FirstChild("IsTruncated");
+ if(!isTruncatedNode.IsNull())
+ {
+ m_isTruncated = StringUtils::ConvertToBool(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(isTruncatedNode.GetText()).c_str()).c_str());
+ }
+ XmlNode continuationTokenNode = resultNode.FirstChild("ContinuationToken");
+ if(!continuationTokenNode.IsNull())
+ {
+ m_continuationToken = Aws::Utils::Xml::DecodeEscapedXmlText(continuationTokenNode.GetText());
+ }
+ XmlNode nextContinuationTokenNode = resultNode.FirstChild("NextContinuationToken");
+ if(!nextContinuationTokenNode.IsNull())
+ {
+ m_nextContinuationToken = Aws::Utils::Xml::DecodeEscapedXmlText(nextContinuationTokenNode.GetText());
+ }
+ XmlNode intelligentTieringConfigurationListNode = resultNode.FirstChild("IntelligentTieringConfiguration");
+ if(!intelligentTieringConfigurationListNode.IsNull())
+ {
+ XmlNode intelligentTieringConfigurationMember = intelligentTieringConfigurationListNode;
+ while(!intelligentTieringConfigurationMember.IsNull())
+ {
+ m_intelligentTieringConfigurationList.push_back(intelligentTieringConfigurationMember);
+ intelligentTieringConfigurationMember = intelligentTieringConfigurationMember.NextNode("IntelligentTieringConfiguration");
+ }
+
+ }
+ }
+
+ return *this;
+}
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
new file mode 100644
index 0000000000..fbd8f9ff83
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketInventoryConfigurationsRequest.cpp
@@ -0,0 +1,73 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ListBucketInventoryConfigurationsRequest.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;
+
+ListBucketInventoryConfigurationsRequest::ListBucketInventoryConfigurationsRequest() :
+ m_bucketHasBeenSet(false),
+ m_continuationTokenHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String ListBucketInventoryConfigurationsRequest::SerializePayload() const
+{
+ return {};
+}
+
+void ListBucketInventoryConfigurationsRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ if(m_continuationTokenHasBeenSet)
+ {
+ ss << m_continuationToken;
+ uri.AddQueryStringParameter("continuation-token", 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 ListBucketInventoryConfigurationsRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketInventoryConfigurationsResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketInventoryConfigurationsResult.cpp
new file mode 100644
index 0000000000..9eba8ffec6
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketInventoryConfigurationsResult.cpp
@@ -0,0 +1,65 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ListBucketInventoryConfigurationsResult.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+#include <aws/core/AmazonWebServiceResult.h>
+#include <aws/core/utils/StringUtils.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Xml;
+using namespace Aws::Utils;
+using namespace Aws;
+
+ListBucketInventoryConfigurationsResult::ListBucketInventoryConfigurationsResult() :
+ m_isTruncated(false)
+{
+}
+
+ListBucketInventoryConfigurationsResult::ListBucketInventoryConfigurationsResult(const Aws::AmazonWebServiceResult<XmlDocument>& result) :
+ m_isTruncated(false)
+{
+ *this = result;
+}
+
+ListBucketInventoryConfigurationsResult& ListBucketInventoryConfigurationsResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode continuationTokenNode = resultNode.FirstChild("ContinuationToken");
+ if(!continuationTokenNode.IsNull())
+ {
+ m_continuationToken = Aws::Utils::Xml::DecodeEscapedXmlText(continuationTokenNode.GetText());
+ }
+ XmlNode inventoryConfigurationListNode = resultNode.FirstChild("InventoryConfiguration");
+ if(!inventoryConfigurationListNode.IsNull())
+ {
+ XmlNode inventoryConfigurationMember = inventoryConfigurationListNode;
+ while(!inventoryConfigurationMember.IsNull())
+ {
+ m_inventoryConfigurationList.push_back(inventoryConfigurationMember);
+ inventoryConfigurationMember = inventoryConfigurationMember.NextNode("InventoryConfiguration");
+ }
+
+ }
+ XmlNode isTruncatedNode = resultNode.FirstChild("IsTruncated");
+ if(!isTruncatedNode.IsNull())
+ {
+ m_isTruncated = StringUtils::ConvertToBool(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(isTruncatedNode.GetText()).c_str()).c_str());
+ }
+ XmlNode nextContinuationTokenNode = resultNode.FirstChild("NextContinuationToken");
+ if(!nextContinuationTokenNode.IsNull())
+ {
+ m_nextContinuationToken = Aws::Utils::Xml::DecodeEscapedXmlText(nextContinuationTokenNode.GetText());
+ }
+ }
+
+ return *this;
+}
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
new file mode 100644
index 0000000000..3978ec46f8
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketMetricsConfigurationsRequest.cpp
@@ -0,0 +1,73 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ListBucketMetricsConfigurationsRequest.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;
+
+ListBucketMetricsConfigurationsRequest::ListBucketMetricsConfigurationsRequest() :
+ m_bucketHasBeenSet(false),
+ m_continuationTokenHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String ListBucketMetricsConfigurationsRequest::SerializePayload() const
+{
+ return {};
+}
+
+void ListBucketMetricsConfigurationsRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ if(m_continuationTokenHasBeenSet)
+ {
+ ss << m_continuationToken;
+ uri.AddQueryStringParameter("continuation-token", 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 ListBucketMetricsConfigurationsRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketMetricsConfigurationsResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketMetricsConfigurationsResult.cpp
new file mode 100644
index 0000000000..5d9cb51845
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketMetricsConfigurationsResult.cpp
@@ -0,0 +1,65 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ListBucketMetricsConfigurationsResult.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+#include <aws/core/AmazonWebServiceResult.h>
+#include <aws/core/utils/StringUtils.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Xml;
+using namespace Aws::Utils;
+using namespace Aws;
+
+ListBucketMetricsConfigurationsResult::ListBucketMetricsConfigurationsResult() :
+ m_isTruncated(false)
+{
+}
+
+ListBucketMetricsConfigurationsResult::ListBucketMetricsConfigurationsResult(const Aws::AmazonWebServiceResult<XmlDocument>& result) :
+ m_isTruncated(false)
+{
+ *this = result;
+}
+
+ListBucketMetricsConfigurationsResult& ListBucketMetricsConfigurationsResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode isTruncatedNode = resultNode.FirstChild("IsTruncated");
+ if(!isTruncatedNode.IsNull())
+ {
+ m_isTruncated = StringUtils::ConvertToBool(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(isTruncatedNode.GetText()).c_str()).c_str());
+ }
+ XmlNode continuationTokenNode = resultNode.FirstChild("ContinuationToken");
+ if(!continuationTokenNode.IsNull())
+ {
+ m_continuationToken = Aws::Utils::Xml::DecodeEscapedXmlText(continuationTokenNode.GetText());
+ }
+ XmlNode nextContinuationTokenNode = resultNode.FirstChild("NextContinuationToken");
+ if(!nextContinuationTokenNode.IsNull())
+ {
+ m_nextContinuationToken = Aws::Utils::Xml::DecodeEscapedXmlText(nextContinuationTokenNode.GetText());
+ }
+ XmlNode metricsConfigurationListNode = resultNode.FirstChild("MetricsConfiguration");
+ if(!metricsConfigurationListNode.IsNull())
+ {
+ XmlNode metricsConfigurationMember = metricsConfigurationListNode;
+ while(!metricsConfigurationMember.IsNull())
+ {
+ m_metricsConfigurationList.push_back(metricsConfigurationMember);
+ metricsConfigurationMember = metricsConfigurationMember.NextNode("MetricsConfiguration");
+ }
+
+ }
+ }
+
+ return *this;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketsResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketsResult.cpp
new file mode 100644
index 0000000000..43196edacd
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListBucketsResult.cpp
@@ -0,0 +1,53 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ListBucketsResult.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+#include <aws/core/AmazonWebServiceResult.h>
+#include <aws/core/utils/StringUtils.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Xml;
+using namespace Aws::Utils;
+using namespace Aws;
+
+ListBucketsResult::ListBucketsResult()
+{
+}
+
+ListBucketsResult::ListBucketsResult(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ *this = result;
+}
+
+ListBucketsResult& ListBucketsResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode bucketsNode = resultNode.FirstChild("Buckets");
+ if(!bucketsNode.IsNull())
+ {
+ XmlNode bucketsMember = bucketsNode.FirstChild("Bucket");
+ while(!bucketsMember.IsNull())
+ {
+ m_buckets.push_back(bucketsMember);
+ bucketsMember = bucketsMember.NextNode("Bucket");
+ }
+
+ }
+ XmlNode ownerNode = resultNode.FirstChild("Owner");
+ if(!ownerNode.IsNull())
+ {
+ m_owner = ownerNode;
+ }
+ }
+
+ return *this;
+}
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
new file mode 100644
index 0000000000..9723e16a9d
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListMultipartUploadsRequest.cpp
@@ -0,0 +1,115 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ListMultipartUploadsRequest.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;
+
+ListMultipartUploadsRequest::ListMultipartUploadsRequest() :
+ m_bucketHasBeenSet(false),
+ m_delimiterHasBeenSet(false),
+ m_encodingType(EncodingType::NOT_SET),
+ m_encodingTypeHasBeenSet(false),
+ m_keyMarkerHasBeenSet(false),
+ m_maxUploads(0),
+ m_maxUploadsHasBeenSet(false),
+ m_prefixHasBeenSet(false),
+ m_uploadIdMarkerHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String ListMultipartUploadsRequest::SerializePayload() const
+{
+ return {};
+}
+
+void ListMultipartUploadsRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ if(m_delimiterHasBeenSet)
+ {
+ ss << m_delimiter;
+ uri.AddQueryStringParameter("delimiter", ss.str());
+ ss.str("");
+ }
+
+ if(m_encodingTypeHasBeenSet)
+ {
+ ss << EncodingTypeMapper::GetNameForEncodingType(m_encodingType);
+ uri.AddQueryStringParameter("encoding-type", ss.str());
+ ss.str("");
+ }
+
+ if(m_keyMarkerHasBeenSet)
+ {
+ ss << m_keyMarker;
+ uri.AddQueryStringParameter("key-marker", ss.str());
+ ss.str("");
+ }
+
+ if(m_maxUploadsHasBeenSet)
+ {
+ ss << m_maxUploads;
+ uri.AddQueryStringParameter("max-uploads", ss.str());
+ ss.str("");
+ }
+
+ if(m_prefixHasBeenSet)
+ {
+ ss << m_prefix;
+ uri.AddQueryStringParameter("prefix", ss.str());
+ ss.str("");
+ }
+
+ if(m_uploadIdMarkerHasBeenSet)
+ {
+ ss << m_uploadIdMarker;
+ uri.AddQueryStringParameter("upload-id-marker", 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 ListMultipartUploadsRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListMultipartUploadsResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListMultipartUploadsResult.cpp
new file mode 100644
index 0000000000..07a2e7b788
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListMultipartUploadsResult.cpp
@@ -0,0 +1,115 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ListMultipartUploadsResult.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+#include <aws/core/AmazonWebServiceResult.h>
+#include <aws/core/utils/StringUtils.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Xml;
+using namespace Aws::Utils;
+using namespace Aws;
+
+ListMultipartUploadsResult::ListMultipartUploadsResult() :
+ m_maxUploads(0),
+ m_isTruncated(false),
+ m_encodingType(EncodingType::NOT_SET)
+{
+}
+
+ListMultipartUploadsResult::ListMultipartUploadsResult(const Aws::AmazonWebServiceResult<XmlDocument>& result) :
+ m_maxUploads(0),
+ m_isTruncated(false),
+ m_encodingType(EncodingType::NOT_SET)
+{
+ *this = result;
+}
+
+ListMultipartUploadsResult& ListMultipartUploadsResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode bucketNode = resultNode.FirstChild("Bucket");
+ if(!bucketNode.IsNull())
+ {
+ m_bucket = Aws::Utils::Xml::DecodeEscapedXmlText(bucketNode.GetText());
+ }
+ XmlNode keyMarkerNode = resultNode.FirstChild("KeyMarker");
+ if(!keyMarkerNode.IsNull())
+ {
+ m_keyMarker = Aws::Utils::Xml::DecodeEscapedXmlText(keyMarkerNode.GetText());
+ }
+ XmlNode uploadIdMarkerNode = resultNode.FirstChild("UploadIdMarker");
+ if(!uploadIdMarkerNode.IsNull())
+ {
+ m_uploadIdMarker = Aws::Utils::Xml::DecodeEscapedXmlText(uploadIdMarkerNode.GetText());
+ }
+ XmlNode nextKeyMarkerNode = resultNode.FirstChild("NextKeyMarker");
+ if(!nextKeyMarkerNode.IsNull())
+ {
+ m_nextKeyMarker = Aws::Utils::Xml::DecodeEscapedXmlText(nextKeyMarkerNode.GetText());
+ }
+ XmlNode prefixNode = resultNode.FirstChild("Prefix");
+ if(!prefixNode.IsNull())
+ {
+ m_prefix = Aws::Utils::Xml::DecodeEscapedXmlText(prefixNode.GetText());
+ }
+ XmlNode delimiterNode = resultNode.FirstChild("Delimiter");
+ if(!delimiterNode.IsNull())
+ {
+ m_delimiter = Aws::Utils::Xml::DecodeEscapedXmlText(delimiterNode.GetText());
+ }
+ XmlNode nextUploadIdMarkerNode = resultNode.FirstChild("NextUploadIdMarker");
+ if(!nextUploadIdMarkerNode.IsNull())
+ {
+ m_nextUploadIdMarker = Aws::Utils::Xml::DecodeEscapedXmlText(nextUploadIdMarkerNode.GetText());
+ }
+ XmlNode maxUploadsNode = resultNode.FirstChild("MaxUploads");
+ if(!maxUploadsNode.IsNull())
+ {
+ m_maxUploads = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(maxUploadsNode.GetText()).c_str()).c_str());
+ }
+ XmlNode isTruncatedNode = resultNode.FirstChild("IsTruncated");
+ if(!isTruncatedNode.IsNull())
+ {
+ m_isTruncated = StringUtils::ConvertToBool(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(isTruncatedNode.GetText()).c_str()).c_str());
+ }
+ XmlNode uploadsNode = resultNode.FirstChild("Upload");
+ if(!uploadsNode.IsNull())
+ {
+ XmlNode uploadMember = uploadsNode;
+ while(!uploadMember.IsNull())
+ {
+ m_uploads.push_back(uploadMember);
+ uploadMember = uploadMember.NextNode("Upload");
+ }
+
+ }
+ XmlNode commonPrefixesNode = resultNode.FirstChild("CommonPrefixes");
+ if(!commonPrefixesNode.IsNull())
+ {
+ XmlNode commonPrefixesMember = commonPrefixesNode;
+ while(!commonPrefixesMember.IsNull())
+ {
+ m_commonPrefixes.push_back(commonPrefixesMember);
+ commonPrefixesMember = commonPrefixesMember.NextNode("CommonPrefixes");
+ }
+
+ }
+ XmlNode encodingTypeNode = resultNode.FirstChild("EncodingType");
+ if(!encodingTypeNode.IsNull())
+ {
+ m_encodingType = EncodingTypeMapper::GetEncodingTypeForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(encodingTypeNode.GetText()).c_str()).c_str());
+ }
+ }
+
+ return *this;
+}
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
new file mode 100644
index 0000000000..2336f09ef8
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListObjectVersionsRequest.cpp
@@ -0,0 +1,115 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ListObjectVersionsRequest.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;
+
+ListObjectVersionsRequest::ListObjectVersionsRequest() :
+ m_bucketHasBeenSet(false),
+ m_delimiterHasBeenSet(false),
+ m_encodingType(EncodingType::NOT_SET),
+ m_encodingTypeHasBeenSet(false),
+ m_keyMarkerHasBeenSet(false),
+ m_maxKeys(0),
+ m_maxKeysHasBeenSet(false),
+ m_prefixHasBeenSet(false),
+ m_versionIdMarkerHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String ListObjectVersionsRequest::SerializePayload() const
+{
+ return {};
+}
+
+void ListObjectVersionsRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ if(m_delimiterHasBeenSet)
+ {
+ ss << m_delimiter;
+ uri.AddQueryStringParameter("delimiter", ss.str());
+ ss.str("");
+ }
+
+ if(m_encodingTypeHasBeenSet)
+ {
+ ss << EncodingTypeMapper::GetNameForEncodingType(m_encodingType);
+ uri.AddQueryStringParameter("encoding-type", ss.str());
+ ss.str("");
+ }
+
+ if(m_keyMarkerHasBeenSet)
+ {
+ ss << m_keyMarker;
+ uri.AddQueryStringParameter("key-marker", ss.str());
+ ss.str("");
+ }
+
+ if(m_maxKeysHasBeenSet)
+ {
+ ss << m_maxKeys;
+ uri.AddQueryStringParameter("max-keys", ss.str());
+ ss.str("");
+ }
+
+ if(m_prefixHasBeenSet)
+ {
+ ss << m_prefix;
+ uri.AddQueryStringParameter("prefix", ss.str());
+ ss.str("");
+ }
+
+ if(m_versionIdMarkerHasBeenSet)
+ {
+ ss << m_versionIdMarker;
+ uri.AddQueryStringParameter("version-id-marker", 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 ListObjectVersionsRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListObjectVersionsResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListObjectVersionsResult.cpp
new file mode 100644
index 0000000000..9cccecdb3e
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListObjectVersionsResult.cpp
@@ -0,0 +1,126 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ListObjectVersionsResult.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+#include <aws/core/AmazonWebServiceResult.h>
+#include <aws/core/utils/StringUtils.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Xml;
+using namespace Aws::Utils;
+using namespace Aws;
+
+ListObjectVersionsResult::ListObjectVersionsResult() :
+ m_isTruncated(false),
+ m_maxKeys(0),
+ m_encodingType(EncodingType::NOT_SET)
+{
+}
+
+ListObjectVersionsResult::ListObjectVersionsResult(const Aws::AmazonWebServiceResult<XmlDocument>& result) :
+ m_isTruncated(false),
+ m_maxKeys(0),
+ m_encodingType(EncodingType::NOT_SET)
+{
+ *this = result;
+}
+
+ListObjectVersionsResult& ListObjectVersionsResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode isTruncatedNode = resultNode.FirstChild("IsTruncated");
+ if(!isTruncatedNode.IsNull())
+ {
+ m_isTruncated = StringUtils::ConvertToBool(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(isTruncatedNode.GetText()).c_str()).c_str());
+ }
+ XmlNode keyMarkerNode = resultNode.FirstChild("KeyMarker");
+ if(!keyMarkerNode.IsNull())
+ {
+ m_keyMarker = Aws::Utils::Xml::DecodeEscapedXmlText(keyMarkerNode.GetText());
+ }
+ XmlNode versionIdMarkerNode = resultNode.FirstChild("VersionIdMarker");
+ if(!versionIdMarkerNode.IsNull())
+ {
+ m_versionIdMarker = Aws::Utils::Xml::DecodeEscapedXmlText(versionIdMarkerNode.GetText());
+ }
+ XmlNode nextKeyMarkerNode = resultNode.FirstChild("NextKeyMarker");
+ if(!nextKeyMarkerNode.IsNull())
+ {
+ m_nextKeyMarker = Aws::Utils::Xml::DecodeEscapedXmlText(nextKeyMarkerNode.GetText());
+ }
+ XmlNode nextVersionIdMarkerNode = resultNode.FirstChild("NextVersionIdMarker");
+ if(!nextVersionIdMarkerNode.IsNull())
+ {
+ m_nextVersionIdMarker = Aws::Utils::Xml::DecodeEscapedXmlText(nextVersionIdMarkerNode.GetText());
+ }
+ XmlNode versionsNode = resultNode.FirstChild("Version");
+ if(!versionsNode.IsNull())
+ {
+ XmlNode versionMember = versionsNode;
+ while(!versionMember.IsNull())
+ {
+ m_versions.push_back(versionMember);
+ versionMember = versionMember.NextNode("Version");
+ }
+
+ }
+ XmlNode deleteMarkersNode = resultNode.FirstChild("DeleteMarker");
+ if(!deleteMarkersNode.IsNull())
+ {
+ XmlNode deleteMarkerMember = deleteMarkersNode;
+ while(!deleteMarkerMember.IsNull())
+ {
+ m_deleteMarkers.push_back(deleteMarkerMember);
+ deleteMarkerMember = deleteMarkerMember.NextNode("DeleteMarker");
+ }
+
+ }
+ XmlNode nameNode = resultNode.FirstChild("Name");
+ if(!nameNode.IsNull())
+ {
+ m_name = Aws::Utils::Xml::DecodeEscapedXmlText(nameNode.GetText());
+ }
+ XmlNode prefixNode = resultNode.FirstChild("Prefix");
+ if(!prefixNode.IsNull())
+ {
+ m_prefix = Aws::Utils::Xml::DecodeEscapedXmlText(prefixNode.GetText());
+ }
+ XmlNode delimiterNode = resultNode.FirstChild("Delimiter");
+ if(!delimiterNode.IsNull())
+ {
+ m_delimiter = Aws::Utils::Xml::DecodeEscapedXmlText(delimiterNode.GetText());
+ }
+ XmlNode maxKeysNode = resultNode.FirstChild("MaxKeys");
+ if(!maxKeysNode.IsNull())
+ {
+ m_maxKeys = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(maxKeysNode.GetText()).c_str()).c_str());
+ }
+ XmlNode commonPrefixesNode = resultNode.FirstChild("CommonPrefixes");
+ if(!commonPrefixesNode.IsNull())
+ {
+ XmlNode commonPrefixesMember = commonPrefixesNode;
+ while(!commonPrefixesMember.IsNull())
+ {
+ m_commonPrefixes.push_back(commonPrefixesMember);
+ commonPrefixesMember = commonPrefixesMember.NextNode("CommonPrefixes");
+ }
+
+ }
+ XmlNode encodingTypeNode = resultNode.FirstChild("EncodingType");
+ if(!encodingTypeNode.IsNull())
+ {
+ m_encodingType = EncodingTypeMapper::GetEncodingTypeForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(encodingTypeNode.GetText()).c_str()).c_str());
+ }
+ }
+
+ return *this;
+}
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
new file mode 100644
index 0000000000..33abec092f
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListObjectsRequest.cpp
@@ -0,0 +1,114 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ListObjectsRequest.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;
+
+ListObjectsRequest::ListObjectsRequest() :
+ m_bucketHasBeenSet(false),
+ m_delimiterHasBeenSet(false),
+ m_encodingType(EncodingType::NOT_SET),
+ m_encodingTypeHasBeenSet(false),
+ m_markerHasBeenSet(false),
+ m_maxKeys(0),
+ m_maxKeysHasBeenSet(false),
+ m_prefixHasBeenSet(false),
+ m_requestPayer(RequestPayer::NOT_SET),
+ m_requestPayerHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String ListObjectsRequest::SerializePayload() const
+{
+ return {};
+}
+
+void ListObjectsRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ if(m_delimiterHasBeenSet)
+ {
+ ss << m_delimiter;
+ uri.AddQueryStringParameter("delimiter", ss.str());
+ ss.str("");
+ }
+
+ if(m_encodingTypeHasBeenSet)
+ {
+ ss << EncodingTypeMapper::GetNameForEncodingType(m_encodingType);
+ uri.AddQueryStringParameter("encoding-type", ss.str());
+ ss.str("");
+ }
+
+ if(m_markerHasBeenSet)
+ {
+ ss << m_marker;
+ uri.AddQueryStringParameter("marker", ss.str());
+ ss.str("");
+ }
+
+ if(m_maxKeysHasBeenSet)
+ {
+ ss << m_maxKeys;
+ uri.AddQueryStringParameter("max-keys", ss.str());
+ ss.str("");
+ }
+
+ if(m_prefixHasBeenSet)
+ {
+ ss << m_prefix;
+ uri.AddQueryStringParameter("prefix", 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 ListObjectsRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ 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("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListObjectsResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListObjectsResult.cpp
new file mode 100644
index 0000000000..ca09eeb417
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListObjectsResult.cpp
@@ -0,0 +1,105 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ListObjectsResult.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+#include <aws/core/AmazonWebServiceResult.h>
+#include <aws/core/utils/StringUtils.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Xml;
+using namespace Aws::Utils;
+using namespace Aws;
+
+ListObjectsResult::ListObjectsResult() :
+ m_isTruncated(false),
+ m_maxKeys(0),
+ m_encodingType(EncodingType::NOT_SET)
+{
+}
+
+ListObjectsResult::ListObjectsResult(const Aws::AmazonWebServiceResult<XmlDocument>& result) :
+ m_isTruncated(false),
+ m_maxKeys(0),
+ m_encodingType(EncodingType::NOT_SET)
+{
+ *this = result;
+}
+
+ListObjectsResult& ListObjectsResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode isTruncatedNode = resultNode.FirstChild("IsTruncated");
+ if(!isTruncatedNode.IsNull())
+ {
+ m_isTruncated = StringUtils::ConvertToBool(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(isTruncatedNode.GetText()).c_str()).c_str());
+ }
+ XmlNode markerNode = resultNode.FirstChild("Marker");
+ if(!markerNode.IsNull())
+ {
+ m_marker = Aws::Utils::Xml::DecodeEscapedXmlText(markerNode.GetText());
+ }
+ XmlNode nextMarkerNode = resultNode.FirstChild("NextMarker");
+ if(!nextMarkerNode.IsNull())
+ {
+ m_nextMarker = Aws::Utils::Xml::DecodeEscapedXmlText(nextMarkerNode.GetText());
+ }
+ XmlNode contentsNode = resultNode.FirstChild("Contents");
+ if(!contentsNode.IsNull())
+ {
+ XmlNode contentsMember = contentsNode;
+ while(!contentsMember.IsNull())
+ {
+ m_contents.push_back(contentsMember);
+ contentsMember = contentsMember.NextNode("Contents");
+ }
+
+ }
+ XmlNode nameNode = resultNode.FirstChild("Name");
+ if(!nameNode.IsNull())
+ {
+ m_name = Aws::Utils::Xml::DecodeEscapedXmlText(nameNode.GetText());
+ }
+ XmlNode prefixNode = resultNode.FirstChild("Prefix");
+ if(!prefixNode.IsNull())
+ {
+ m_prefix = Aws::Utils::Xml::DecodeEscapedXmlText(prefixNode.GetText());
+ }
+ XmlNode delimiterNode = resultNode.FirstChild("Delimiter");
+ if(!delimiterNode.IsNull())
+ {
+ m_delimiter = Aws::Utils::Xml::DecodeEscapedXmlText(delimiterNode.GetText());
+ }
+ XmlNode maxKeysNode = resultNode.FirstChild("MaxKeys");
+ if(!maxKeysNode.IsNull())
+ {
+ m_maxKeys = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(maxKeysNode.GetText()).c_str()).c_str());
+ }
+ XmlNode commonPrefixesNode = resultNode.FirstChild("CommonPrefixes");
+ if(!commonPrefixesNode.IsNull())
+ {
+ XmlNode commonPrefixesMember = commonPrefixesNode;
+ while(!commonPrefixesMember.IsNull())
+ {
+ m_commonPrefixes.push_back(commonPrefixesMember);
+ commonPrefixesMember = commonPrefixesMember.NextNode("CommonPrefixes");
+ }
+
+ }
+ XmlNode encodingTypeNode = resultNode.FirstChild("EncodingType");
+ if(!encodingTypeNode.IsNull())
+ {
+ m_encodingType = EncodingTypeMapper::GetEncodingTypeForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(encodingTypeNode.GetText()).c_str()).c_str());
+ }
+ }
+
+ return *this;
+}
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
new file mode 100644
index 0000000000..2feb9b83c1
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListObjectsV2Request.cpp
@@ -0,0 +1,131 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ListObjectsV2Request.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;
+
+ListObjectsV2Request::ListObjectsV2Request() :
+ m_bucketHasBeenSet(false),
+ m_delimiterHasBeenSet(false),
+ m_encodingType(EncodingType::NOT_SET),
+ m_encodingTypeHasBeenSet(false),
+ m_maxKeys(0),
+ m_maxKeysHasBeenSet(false),
+ m_prefixHasBeenSet(false),
+ m_continuationTokenHasBeenSet(false),
+ m_fetchOwner(false),
+ m_fetchOwnerHasBeenSet(false),
+ m_startAfterHasBeenSet(false),
+ m_requestPayer(RequestPayer::NOT_SET),
+ m_requestPayerHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String ListObjectsV2Request::SerializePayload() const
+{
+ return {};
+}
+
+void ListObjectsV2Request::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ if(m_delimiterHasBeenSet)
+ {
+ ss << m_delimiter;
+ uri.AddQueryStringParameter("delimiter", ss.str());
+ ss.str("");
+ }
+
+ if(m_encodingTypeHasBeenSet)
+ {
+ ss << EncodingTypeMapper::GetNameForEncodingType(m_encodingType);
+ uri.AddQueryStringParameter("encoding-type", ss.str());
+ ss.str("");
+ }
+
+ if(m_maxKeysHasBeenSet)
+ {
+ ss << m_maxKeys;
+ uri.AddQueryStringParameter("max-keys", ss.str());
+ ss.str("");
+ }
+
+ if(m_prefixHasBeenSet)
+ {
+ ss << m_prefix;
+ uri.AddQueryStringParameter("prefix", ss.str());
+ ss.str("");
+ }
+
+ if(m_continuationTokenHasBeenSet)
+ {
+ ss << m_continuationToken;
+ uri.AddQueryStringParameter("continuation-token", ss.str());
+ ss.str("");
+ }
+
+ if(m_fetchOwnerHasBeenSet)
+ {
+ ss << m_fetchOwner;
+ uri.AddQueryStringParameter("fetch-owner", ss.str());
+ ss.str("");
+ }
+
+ if(m_startAfterHasBeenSet)
+ {
+ ss << m_startAfter;
+ uri.AddQueryStringParameter("start-after", 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 ListObjectsV2Request::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ 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("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListObjectsV2Result.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListObjectsV2Result.cpp
new file mode 100644
index 0000000000..efd991ac5b
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListObjectsV2Result.cpp
@@ -0,0 +1,117 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ListObjectsV2Result.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+#include <aws/core/AmazonWebServiceResult.h>
+#include <aws/core/utils/StringUtils.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Xml;
+using namespace Aws::Utils;
+using namespace Aws;
+
+ListObjectsV2Result::ListObjectsV2Result() :
+ m_isTruncated(false),
+ m_maxKeys(0),
+ m_encodingType(EncodingType::NOT_SET),
+ m_keyCount(0)
+{
+}
+
+ListObjectsV2Result::ListObjectsV2Result(const Aws::AmazonWebServiceResult<XmlDocument>& result) :
+ m_isTruncated(false),
+ m_maxKeys(0),
+ m_encodingType(EncodingType::NOT_SET),
+ m_keyCount(0)
+{
+ *this = result;
+}
+
+ListObjectsV2Result& ListObjectsV2Result::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode isTruncatedNode = resultNode.FirstChild("IsTruncated");
+ if(!isTruncatedNode.IsNull())
+ {
+ m_isTruncated = StringUtils::ConvertToBool(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(isTruncatedNode.GetText()).c_str()).c_str());
+ }
+ XmlNode contentsNode = resultNode.FirstChild("Contents");
+ if(!contentsNode.IsNull())
+ {
+ XmlNode contentsMember = contentsNode;
+ while(!contentsMember.IsNull())
+ {
+ m_contents.push_back(contentsMember);
+ contentsMember = contentsMember.NextNode("Contents");
+ }
+
+ }
+ XmlNode nameNode = resultNode.FirstChild("Name");
+ if(!nameNode.IsNull())
+ {
+ m_name = Aws::Utils::Xml::DecodeEscapedXmlText(nameNode.GetText());
+ }
+ XmlNode prefixNode = resultNode.FirstChild("Prefix");
+ if(!prefixNode.IsNull())
+ {
+ m_prefix = Aws::Utils::Xml::DecodeEscapedXmlText(prefixNode.GetText());
+ }
+ XmlNode delimiterNode = resultNode.FirstChild("Delimiter");
+ if(!delimiterNode.IsNull())
+ {
+ m_delimiter = Aws::Utils::Xml::DecodeEscapedXmlText(delimiterNode.GetText());
+ }
+ XmlNode maxKeysNode = resultNode.FirstChild("MaxKeys");
+ if(!maxKeysNode.IsNull())
+ {
+ m_maxKeys = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(maxKeysNode.GetText()).c_str()).c_str());
+ }
+ XmlNode commonPrefixesNode = resultNode.FirstChild("CommonPrefixes");
+ if(!commonPrefixesNode.IsNull())
+ {
+ XmlNode commonPrefixesMember = commonPrefixesNode;
+ while(!commonPrefixesMember.IsNull())
+ {
+ m_commonPrefixes.push_back(commonPrefixesMember);
+ commonPrefixesMember = commonPrefixesMember.NextNode("CommonPrefixes");
+ }
+
+ }
+ XmlNode encodingTypeNode = resultNode.FirstChild("EncodingType");
+ if(!encodingTypeNode.IsNull())
+ {
+ m_encodingType = EncodingTypeMapper::GetEncodingTypeForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(encodingTypeNode.GetText()).c_str()).c_str());
+ }
+ XmlNode keyCountNode = resultNode.FirstChild("KeyCount");
+ if(!keyCountNode.IsNull())
+ {
+ m_keyCount = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(keyCountNode.GetText()).c_str()).c_str());
+ }
+ XmlNode continuationTokenNode = resultNode.FirstChild("ContinuationToken");
+ if(!continuationTokenNode.IsNull())
+ {
+ m_continuationToken = Aws::Utils::Xml::DecodeEscapedXmlText(continuationTokenNode.GetText());
+ }
+ XmlNode nextContinuationTokenNode = resultNode.FirstChild("NextContinuationToken");
+ if(!nextContinuationTokenNode.IsNull())
+ {
+ m_nextContinuationToken = Aws::Utils::Xml::DecodeEscapedXmlText(nextContinuationTokenNode.GetText());
+ }
+ XmlNode startAfterNode = resultNode.FirstChild("StartAfter");
+ if(!startAfterNode.IsNull())
+ {
+ m_startAfter = Aws::Utils::Xml::DecodeEscapedXmlText(startAfterNode.GetText());
+ }
+ }
+
+ return *this;
+}
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
new file mode 100644
index 0000000000..59ff12e4d1
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListPartsRequest.cpp
@@ -0,0 +1,99 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ListPartsRequest.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;
+
+ListPartsRequest::ListPartsRequest() :
+ m_bucketHasBeenSet(false),
+ m_keyHasBeenSet(false),
+ m_maxParts(0),
+ m_maxPartsHasBeenSet(false),
+ m_partNumberMarker(0),
+ m_partNumberMarkerHasBeenSet(false),
+ m_uploadIdHasBeenSet(false),
+ m_requestPayer(RequestPayer::NOT_SET),
+ m_requestPayerHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String ListPartsRequest::SerializePayload() const
+{
+ return {};
+}
+
+void ListPartsRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ if(m_maxPartsHasBeenSet)
+ {
+ ss << m_maxParts;
+ uri.AddQueryStringParameter("max-parts", ss.str());
+ ss.str("");
+ }
+
+ if(m_partNumberMarkerHasBeenSet)
+ {
+ ss << m_partNumberMarker;
+ uri.AddQueryStringParameter("part-number-marker", ss.str());
+ ss.str("");
+ }
+
+ if(m_uploadIdHasBeenSet)
+ {
+ ss << m_uploadId;
+ uri.AddQueryStringParameter("uploadId", 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 ListPartsRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ 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("");
+ }
+
+ return headers;
+}
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
new file mode 100644
index 0000000000..f4638f2a06
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ListPartsResult.cpp
@@ -0,0 +1,130 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ListPartsResult.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;
+
+ListPartsResult::ListPartsResult() :
+ m_partNumberMarker(0),
+ m_nextPartNumberMarker(0),
+ m_maxParts(0),
+ m_isTruncated(false),
+ m_storageClass(StorageClass::NOT_SET),
+ m_requestCharged(RequestCharged::NOT_SET)
+{
+}
+
+ListPartsResult::ListPartsResult(const Aws::AmazonWebServiceResult<XmlDocument>& result) :
+ m_partNumberMarker(0),
+ m_nextPartNumberMarker(0),
+ m_maxParts(0),
+ m_isTruncated(false),
+ m_storageClass(StorageClass::NOT_SET),
+ m_requestCharged(RequestCharged::NOT_SET)
+{
+ *this = result;
+}
+
+ListPartsResult& ListPartsResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode bucketNode = resultNode.FirstChild("Bucket");
+ if(!bucketNode.IsNull())
+ {
+ m_bucket = Aws::Utils::Xml::DecodeEscapedXmlText(bucketNode.GetText());
+ }
+ XmlNode keyNode = resultNode.FirstChild("Key");
+ if(!keyNode.IsNull())
+ {
+ m_key = Aws::Utils::Xml::DecodeEscapedXmlText(keyNode.GetText());
+ }
+ XmlNode uploadIdNode = resultNode.FirstChild("UploadId");
+ if(!uploadIdNode.IsNull())
+ {
+ m_uploadId = Aws::Utils::Xml::DecodeEscapedXmlText(uploadIdNode.GetText());
+ }
+ XmlNode partNumberMarkerNode = resultNode.FirstChild("PartNumberMarker");
+ if(!partNumberMarkerNode.IsNull())
+ {
+ m_partNumberMarker = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(partNumberMarkerNode.GetText()).c_str()).c_str());
+ }
+ XmlNode nextPartNumberMarkerNode = resultNode.FirstChild("NextPartNumberMarker");
+ if(!nextPartNumberMarkerNode.IsNull())
+ {
+ m_nextPartNumberMarker = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(nextPartNumberMarkerNode.GetText()).c_str()).c_str());
+ }
+ XmlNode maxPartsNode = resultNode.FirstChild("MaxParts");
+ if(!maxPartsNode.IsNull())
+ {
+ m_maxParts = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(maxPartsNode.GetText()).c_str()).c_str());
+ }
+ XmlNode isTruncatedNode = resultNode.FirstChild("IsTruncated");
+ if(!isTruncatedNode.IsNull())
+ {
+ m_isTruncated = StringUtils::ConvertToBool(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(isTruncatedNode.GetText()).c_str()).c_str());
+ }
+ XmlNode partsNode = resultNode.FirstChild("Part");
+ if(!partsNode.IsNull())
+ {
+ XmlNode partMember = partsNode;
+ while(!partMember.IsNull())
+ {
+ m_parts.push_back(partMember);
+ partMember = partMember.NextNode("Part");
+ }
+
+ }
+ XmlNode initiatorNode = resultNode.FirstChild("Initiator");
+ if(!initiatorNode.IsNull())
+ {
+ m_initiator = initiatorNode;
+ }
+ XmlNode ownerNode = resultNode.FirstChild("Owner");
+ if(!ownerNode.IsNull())
+ {
+ m_owner = ownerNode;
+ }
+ XmlNode storageClassNode = resultNode.FirstChild("StorageClass");
+ if(!storageClassNode.IsNull())
+ {
+ m_storageClass = StorageClassMapper::GetStorageClassForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(storageClassNode.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);
+ }
+
+ const auto& abortRuleIdIter = headers.find("x-amz-abort-rule-id");
+ if(abortRuleIdIter != headers.end())
+ {
+ m_abortRuleId = abortRuleIdIter->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/LoggingEnabled.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/LoggingEnabled.cpp
new file mode 100644
index 0000000000..b39e74c769
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/LoggingEnabled.cpp
@@ -0,0 +1,102 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/LoggingEnabled.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
+{
+
+LoggingEnabled::LoggingEnabled() :
+ m_targetBucketHasBeenSet(false),
+ m_targetGrantsHasBeenSet(false),
+ m_targetPrefixHasBeenSet(false)
+{
+}
+
+LoggingEnabled::LoggingEnabled(const XmlNode& xmlNode) :
+ m_targetBucketHasBeenSet(false),
+ m_targetGrantsHasBeenSet(false),
+ m_targetPrefixHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+LoggingEnabled& LoggingEnabled::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode targetBucketNode = resultNode.FirstChild("TargetBucket");
+ if(!targetBucketNode.IsNull())
+ {
+ m_targetBucket = Aws::Utils::Xml::DecodeEscapedXmlText(targetBucketNode.GetText());
+ m_targetBucketHasBeenSet = true;
+ }
+ XmlNode targetGrantsNode = resultNode.FirstChild("TargetGrants");
+ if(!targetGrantsNode.IsNull())
+ {
+ XmlNode targetGrantsMember = targetGrantsNode.FirstChild("Grant");
+ while(!targetGrantsMember.IsNull())
+ {
+ m_targetGrants.push_back(targetGrantsMember);
+ targetGrantsMember = targetGrantsMember.NextNode("Grant");
+ }
+
+ m_targetGrantsHasBeenSet = true;
+ }
+ XmlNode targetPrefixNode = resultNode.FirstChild("TargetPrefix");
+ if(!targetPrefixNode.IsNull())
+ {
+ m_targetPrefix = Aws::Utils::Xml::DecodeEscapedXmlText(targetPrefixNode.GetText());
+ m_targetPrefixHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void LoggingEnabled::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_targetBucketHasBeenSet)
+ {
+ XmlNode targetBucketNode = parentNode.CreateChildElement("TargetBucket");
+ targetBucketNode.SetText(m_targetBucket);
+ }
+
+ if(m_targetGrantsHasBeenSet)
+ {
+ XmlNode targetGrantsParentNode = parentNode.CreateChildElement("TargetGrants");
+ for(const auto& item : m_targetGrants)
+ {
+ XmlNode targetGrantsNode = targetGrantsParentNode.CreateChildElement("Grant");
+ item.AddToNode(targetGrantsNode);
+ }
+ }
+
+ if(m_targetPrefixHasBeenSet)
+ {
+ XmlNode targetPrefixNode = parentNode.CreateChildElement("TargetPrefix");
+ targetPrefixNode.SetText(m_targetPrefix);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MFADelete.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MFADelete.cpp
new file mode 100644
index 0000000000..25938f65c9
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MFADelete.cpp
@@ -0,0 +1,70 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/MFADelete.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 MFADeleteMapper
+ {
+
+ static const int Enabled_HASH = HashingUtils::HashString("Enabled");
+ static const int Disabled_HASH = HashingUtils::HashString("Disabled");
+
+
+ MFADelete GetMFADeleteForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == Enabled_HASH)
+ {
+ return MFADelete::Enabled;
+ }
+ else if (hashCode == Disabled_HASH)
+ {
+ return MFADelete::Disabled;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<MFADelete>(hashCode);
+ }
+
+ return MFADelete::NOT_SET;
+ }
+
+ Aws::String GetNameForMFADelete(MFADelete enumValue)
+ {
+ switch(enumValue)
+ {
+ case MFADelete::Enabled:
+ return "Enabled";
+ case MFADelete::Disabled:
+ return "Disabled";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace MFADeleteMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MFADeleteStatus.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MFADeleteStatus.cpp
new file mode 100644
index 0000000000..3f0640aff7
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MFADeleteStatus.cpp
@@ -0,0 +1,70 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/MFADeleteStatus.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 MFADeleteStatusMapper
+ {
+
+ static const int Enabled_HASH = HashingUtils::HashString("Enabled");
+ static const int Disabled_HASH = HashingUtils::HashString("Disabled");
+
+
+ MFADeleteStatus GetMFADeleteStatusForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == Enabled_HASH)
+ {
+ return MFADeleteStatus::Enabled;
+ }
+ else if (hashCode == Disabled_HASH)
+ {
+ return MFADeleteStatus::Disabled;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<MFADeleteStatus>(hashCode);
+ }
+
+ return MFADeleteStatus::NOT_SET;
+ }
+
+ Aws::String GetNameForMFADeleteStatus(MFADeleteStatus enumValue)
+ {
+ switch(enumValue)
+ {
+ case MFADeleteStatus::Enabled:
+ return "Enabled";
+ case MFADeleteStatus::Disabled:
+ return "Disabled";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace MFADeleteStatusMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MetadataDirective.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MetadataDirective.cpp
new file mode 100644
index 0000000000..06121d2990
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MetadataDirective.cpp
@@ -0,0 +1,70 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/MetadataDirective.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 MetadataDirectiveMapper
+ {
+
+ static const int COPY_HASH = HashingUtils::HashString("COPY");
+ static const int REPLACE_HASH = HashingUtils::HashString("REPLACE");
+
+
+ MetadataDirective GetMetadataDirectiveForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == COPY_HASH)
+ {
+ return MetadataDirective::COPY;
+ }
+ else if (hashCode == REPLACE_HASH)
+ {
+ return MetadataDirective::REPLACE;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<MetadataDirective>(hashCode);
+ }
+
+ return MetadataDirective::NOT_SET;
+ }
+
+ Aws::String GetNameForMetadataDirective(MetadataDirective enumValue)
+ {
+ switch(enumValue)
+ {
+ case MetadataDirective::COPY:
+ return "COPY";
+ case MetadataDirective::REPLACE:
+ return "REPLACE";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace MetadataDirectiveMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MetadataEntry.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MetadataEntry.cpp
new file mode 100644
index 0000000000..a1c8ced24c
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MetadataEntry.cpp
@@ -0,0 +1,78 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/MetadataEntry.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
+{
+
+MetadataEntry::MetadataEntry() :
+ m_nameHasBeenSet(false),
+ m_valueHasBeenSet(false)
+{
+}
+
+MetadataEntry::MetadataEntry(const XmlNode& xmlNode) :
+ m_nameHasBeenSet(false),
+ m_valueHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+MetadataEntry& MetadataEntry::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode nameNode = resultNode.FirstChild("Name");
+ if(!nameNode.IsNull())
+ {
+ m_name = Aws::Utils::Xml::DecodeEscapedXmlText(nameNode.GetText());
+ m_nameHasBeenSet = true;
+ }
+ XmlNode valueNode = resultNode.FirstChild("Value");
+ if(!valueNode.IsNull())
+ {
+ m_value = Aws::Utils::Xml::DecodeEscapedXmlText(valueNode.GetText());
+ m_valueHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void MetadataEntry::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_nameHasBeenSet)
+ {
+ XmlNode nameNode = parentNode.CreateChildElement("Name");
+ nameNode.SetText(m_name);
+ }
+
+ if(m_valueHasBeenSet)
+ {
+ XmlNode valueNode = parentNode.CreateChildElement("Value");
+ valueNode.SetText(m_value);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Metrics.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Metrics.cpp
new file mode 100644
index 0000000000..dec4fe2264
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Metrics.cpp
@@ -0,0 +1,80 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/Metrics.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
+{
+
+Metrics::Metrics() :
+ m_status(MetricsStatus::NOT_SET),
+ m_statusHasBeenSet(false),
+ m_eventThresholdHasBeenSet(false)
+{
+}
+
+Metrics::Metrics(const XmlNode& xmlNode) :
+ m_status(MetricsStatus::NOT_SET),
+ m_statusHasBeenSet(false),
+ m_eventThresholdHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+Metrics& Metrics::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode statusNode = resultNode.FirstChild("Status");
+ if(!statusNode.IsNull())
+ {
+ m_status = MetricsStatusMapper::GetMetricsStatusForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(statusNode.GetText()).c_str()).c_str());
+ m_statusHasBeenSet = true;
+ }
+ XmlNode eventThresholdNode = resultNode.FirstChild("EventThreshold");
+ if(!eventThresholdNode.IsNull())
+ {
+ m_eventThreshold = eventThresholdNode;
+ m_eventThresholdHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void Metrics::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_statusHasBeenSet)
+ {
+ XmlNode statusNode = parentNode.CreateChildElement("Status");
+ statusNode.SetText(MetricsStatusMapper::GetNameForMetricsStatus(m_status));
+ }
+
+ if(m_eventThresholdHasBeenSet)
+ {
+ XmlNode eventThresholdNode = parentNode.CreateChildElement("EventThreshold");
+ m_eventThreshold.AddToNode(eventThresholdNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
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
new file mode 100644
index 0000000000..74951cd0eb
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MetricsAndOperator.cpp
@@ -0,0 +1,88 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/MetricsAndOperator.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
+{
+
+MetricsAndOperator::MetricsAndOperator() :
+ m_prefixHasBeenSet(false),
+ m_tagsHasBeenSet(false)
+{
+}
+
+MetricsAndOperator::MetricsAndOperator(const XmlNode& xmlNode) :
+ m_prefixHasBeenSet(false),
+ m_tagsHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+MetricsAndOperator& MetricsAndOperator::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode prefixNode = resultNode.FirstChild("Prefix");
+ if(!prefixNode.IsNull())
+ {
+ m_prefix = Aws::Utils::Xml::DecodeEscapedXmlText(prefixNode.GetText());
+ m_prefixHasBeenSet = true;
+ }
+ XmlNode tagsNode = resultNode.FirstChild("Tag");
+ if(!tagsNode.IsNull())
+ {
+ XmlNode tagMember = tagsNode;
+ while(!tagMember.IsNull())
+ {
+ m_tags.push_back(tagMember);
+ tagMember = tagMember.NextNode("Tag");
+ }
+
+ m_tagsHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void MetricsAndOperator::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_prefixHasBeenSet)
+ {
+ XmlNode prefixNode = parentNode.CreateChildElement("Prefix");
+ prefixNode.SetText(m_prefix);
+ }
+
+ if(m_tagsHasBeenSet)
+ {
+ XmlNode tagsParentNode = parentNode.CreateChildElement("Tags");
+ for(const auto& item : m_tags)
+ {
+ XmlNode tagsNode = tagsParentNode.CreateChildElement("Tag");
+ item.AddToNode(tagsNode);
+ }
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MetricsConfiguration.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MetricsConfiguration.cpp
new file mode 100644
index 0000000000..03c5f29800
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MetricsConfiguration.cpp
@@ -0,0 +1,78 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/MetricsConfiguration.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
+{
+
+MetricsConfiguration::MetricsConfiguration() :
+ m_idHasBeenSet(false),
+ m_filterHasBeenSet(false)
+{
+}
+
+MetricsConfiguration::MetricsConfiguration(const XmlNode& xmlNode) :
+ m_idHasBeenSet(false),
+ m_filterHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+MetricsConfiguration& MetricsConfiguration::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode idNode = resultNode.FirstChild("Id");
+ if(!idNode.IsNull())
+ {
+ m_id = Aws::Utils::Xml::DecodeEscapedXmlText(idNode.GetText());
+ m_idHasBeenSet = true;
+ }
+ XmlNode filterNode = resultNode.FirstChild("Filter");
+ if(!filterNode.IsNull())
+ {
+ m_filter = filterNode;
+ m_filterHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void MetricsConfiguration::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_idHasBeenSet)
+ {
+ XmlNode idNode = parentNode.CreateChildElement("Id");
+ idNode.SetText(m_id);
+ }
+
+ if(m_filterHasBeenSet)
+ {
+ XmlNode filterNode = parentNode.CreateChildElement("Filter");
+ m_filter.AddToNode(filterNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
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
new file mode 100644
index 0000000000..fa7ade5849
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MetricsFilter.cpp
@@ -0,0 +1,92 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/MetricsFilter.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
+{
+
+MetricsFilter::MetricsFilter() :
+ m_prefixHasBeenSet(false),
+ m_tagHasBeenSet(false),
+ m_andHasBeenSet(false)
+{
+}
+
+MetricsFilter::MetricsFilter(const XmlNode& xmlNode) :
+ m_prefixHasBeenSet(false),
+ m_tagHasBeenSet(false),
+ m_andHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+MetricsFilter& MetricsFilter::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode prefixNode = resultNode.FirstChild("Prefix");
+ if(!prefixNode.IsNull())
+ {
+ m_prefix = Aws::Utils::Xml::DecodeEscapedXmlText(prefixNode.GetText());
+ m_prefixHasBeenSet = true;
+ }
+ XmlNode tagNode = resultNode.FirstChild("Tag");
+ if(!tagNode.IsNull())
+ {
+ m_tag = tagNode;
+ m_tagHasBeenSet = true;
+ }
+ XmlNode andNode = resultNode.FirstChild("And");
+ if(!andNode.IsNull())
+ {
+ m_and = andNode;
+ m_andHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void MetricsFilter::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_prefixHasBeenSet)
+ {
+ XmlNode prefixNode = parentNode.CreateChildElement("Prefix");
+ prefixNode.SetText(m_prefix);
+ }
+
+ if(m_tagHasBeenSet)
+ {
+ XmlNode tagNode = parentNode.CreateChildElement("Tag");
+ m_tag.AddToNode(tagNode);
+ }
+
+ if(m_andHasBeenSet)
+ {
+ XmlNode andNode = parentNode.CreateChildElement("And");
+ m_and.AddToNode(andNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MetricsStatus.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MetricsStatus.cpp
new file mode 100644
index 0000000000..daeeecda73
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MetricsStatus.cpp
@@ -0,0 +1,70 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/MetricsStatus.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 MetricsStatusMapper
+ {
+
+ static const int Enabled_HASH = HashingUtils::HashString("Enabled");
+ static const int Disabled_HASH = HashingUtils::HashString("Disabled");
+
+
+ MetricsStatus GetMetricsStatusForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == Enabled_HASH)
+ {
+ return MetricsStatus::Enabled;
+ }
+ else if (hashCode == Disabled_HASH)
+ {
+ return MetricsStatus::Disabled;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<MetricsStatus>(hashCode);
+ }
+
+ return MetricsStatus::NOT_SET;
+ }
+
+ Aws::String GetNameForMetricsStatus(MetricsStatus enumValue)
+ {
+ switch(enumValue)
+ {
+ case MetricsStatus::Enabled:
+ return "Enabled";
+ case MetricsStatus::Disabled:
+ return "Disabled";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace MetricsStatusMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
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
new file mode 100644
index 0000000000..6d92ea2cb6
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/MultipartUpload.cpp
@@ -0,0 +1,136 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/MultipartUpload.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
+{
+
+MultipartUpload::MultipartUpload() :
+ m_uploadIdHasBeenSet(false),
+ m_keyHasBeenSet(false),
+ m_initiatedHasBeenSet(false),
+ m_storageClass(StorageClass::NOT_SET),
+ m_storageClassHasBeenSet(false),
+ m_ownerHasBeenSet(false),
+ m_initiatorHasBeenSet(false)
+{
+}
+
+MultipartUpload::MultipartUpload(const XmlNode& xmlNode) :
+ m_uploadIdHasBeenSet(false),
+ m_keyHasBeenSet(false),
+ m_initiatedHasBeenSet(false),
+ m_storageClass(StorageClass::NOT_SET),
+ m_storageClassHasBeenSet(false),
+ m_ownerHasBeenSet(false),
+ m_initiatorHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+MultipartUpload& MultipartUpload::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode uploadIdNode = resultNode.FirstChild("UploadId");
+ if(!uploadIdNode.IsNull())
+ {
+ m_uploadId = Aws::Utils::Xml::DecodeEscapedXmlText(uploadIdNode.GetText());
+ m_uploadIdHasBeenSet = true;
+ }
+ XmlNode keyNode = resultNode.FirstChild("Key");
+ if(!keyNode.IsNull())
+ {
+ m_key = Aws::Utils::Xml::DecodeEscapedXmlText(keyNode.GetText());
+ m_keyHasBeenSet = true;
+ }
+ 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_initiatedHasBeenSet = true;
+ }
+ XmlNode storageClassNode = resultNode.FirstChild("StorageClass");
+ if(!storageClassNode.IsNull())
+ {
+ m_storageClass = StorageClassMapper::GetStorageClassForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(storageClassNode.GetText()).c_str()).c_str());
+ m_storageClassHasBeenSet = true;
+ }
+ XmlNode ownerNode = resultNode.FirstChild("Owner");
+ if(!ownerNode.IsNull())
+ {
+ m_owner = ownerNode;
+ m_ownerHasBeenSet = true;
+ }
+ XmlNode initiatorNode = resultNode.FirstChild("Initiator");
+ if(!initiatorNode.IsNull())
+ {
+ m_initiator = initiatorNode;
+ m_initiatorHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void MultipartUpload::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_uploadIdHasBeenSet)
+ {
+ XmlNode uploadIdNode = parentNode.CreateChildElement("UploadId");
+ uploadIdNode.SetText(m_uploadId);
+ }
+
+ if(m_keyHasBeenSet)
+ {
+ XmlNode keyNode = parentNode.CreateChildElement("Key");
+ keyNode.SetText(m_key);
+ }
+
+ if(m_initiatedHasBeenSet)
+ {
+ XmlNode initiatedNode = parentNode.CreateChildElement("Initiated");
+ initiatedNode.SetText(m_initiated.ToGmtString(DateFormat::ISO_8601));
+ }
+
+ if(m_storageClassHasBeenSet)
+ {
+ XmlNode storageClassNode = parentNode.CreateChildElement("StorageClass");
+ storageClassNode.SetText(StorageClassMapper::GetNameForStorageClass(m_storageClass));
+ }
+
+ if(m_ownerHasBeenSet)
+ {
+ XmlNode ownerNode = parentNode.CreateChildElement("Owner");
+ m_owner.AddToNode(ownerNode);
+ }
+
+ if(m_initiatorHasBeenSet)
+ {
+ XmlNode initiatorNode = parentNode.CreateChildElement("Initiator");
+ m_initiator.AddToNode(initiatorNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
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
new file mode 100644
index 0000000000..ab6db39f61
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NoncurrentVersionExpiration.cpp
@@ -0,0 +1,68 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/NoncurrentVersionExpiration.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
+{
+
+NoncurrentVersionExpiration::NoncurrentVersionExpiration() :
+ m_noncurrentDays(0),
+ m_noncurrentDaysHasBeenSet(false)
+{
+}
+
+NoncurrentVersionExpiration::NoncurrentVersionExpiration(const XmlNode& xmlNode) :
+ m_noncurrentDays(0),
+ m_noncurrentDaysHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+NoncurrentVersionExpiration& NoncurrentVersionExpiration::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode noncurrentDaysNode = resultNode.FirstChild("NoncurrentDays");
+ if(!noncurrentDaysNode.IsNull())
+ {
+ m_noncurrentDays = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(noncurrentDaysNode.GetText()).c_str()).c_str());
+ m_noncurrentDaysHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void NoncurrentVersionExpiration::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_noncurrentDaysHasBeenSet)
+ {
+ XmlNode noncurrentDaysNode = parentNode.CreateChildElement("NoncurrentDays");
+ ss << m_noncurrentDays;
+ noncurrentDaysNode.SetText(ss.str());
+ ss.str("");
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
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
new file mode 100644
index 0000000000..e7027d679b
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NoncurrentVersionTransition.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/NoncurrentVersionTransition.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
+{
+
+NoncurrentVersionTransition::NoncurrentVersionTransition() :
+ m_noncurrentDays(0),
+ m_noncurrentDaysHasBeenSet(false),
+ m_storageClass(TransitionStorageClass::NOT_SET),
+ m_storageClassHasBeenSet(false)
+{
+}
+
+NoncurrentVersionTransition::NoncurrentVersionTransition(const XmlNode& xmlNode) :
+ m_noncurrentDays(0),
+ m_noncurrentDaysHasBeenSet(false),
+ m_storageClass(TransitionStorageClass::NOT_SET),
+ m_storageClassHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+NoncurrentVersionTransition& NoncurrentVersionTransition::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode noncurrentDaysNode = resultNode.FirstChild("NoncurrentDays");
+ if(!noncurrentDaysNode.IsNull())
+ {
+ m_noncurrentDays = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(noncurrentDaysNode.GetText()).c_str()).c_str());
+ m_noncurrentDaysHasBeenSet = true;
+ }
+ XmlNode storageClassNode = resultNode.FirstChild("StorageClass");
+ if(!storageClassNode.IsNull())
+ {
+ m_storageClass = TransitionStorageClassMapper::GetTransitionStorageClassForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(storageClassNode.GetText()).c_str()).c_str());
+ m_storageClassHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void NoncurrentVersionTransition::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_noncurrentDaysHasBeenSet)
+ {
+ XmlNode noncurrentDaysNode = parentNode.CreateChildElement("NoncurrentDays");
+ ss << m_noncurrentDays;
+ noncurrentDaysNode.SetText(ss.str());
+ ss.str("");
+ }
+
+ if(m_storageClassHasBeenSet)
+ {
+ XmlNode storageClassNode = parentNode.CreateChildElement("StorageClass");
+ storageClassNode.SetText(TransitionStorageClassMapper::GetNameForTransitionStorageClass(m_storageClass));
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
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
new file mode 100644
index 0000000000..bb62ecb84d
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NotificationConfiguration.cpp
@@ -0,0 +1,119 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/NotificationConfiguration.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
+{
+
+NotificationConfiguration::NotificationConfiguration() :
+ m_topicConfigurationsHasBeenSet(false),
+ m_queueConfigurationsHasBeenSet(false),
+ m_lambdaFunctionConfigurationsHasBeenSet(false)
+{
+}
+
+NotificationConfiguration::NotificationConfiguration(const XmlNode& xmlNode) :
+ m_topicConfigurationsHasBeenSet(false),
+ m_queueConfigurationsHasBeenSet(false),
+ m_lambdaFunctionConfigurationsHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+NotificationConfiguration& NotificationConfiguration::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode topicConfigurationsNode = resultNode.FirstChild("TopicConfiguration");
+ if(!topicConfigurationsNode.IsNull())
+ {
+ XmlNode topicConfigurationMember = topicConfigurationsNode;
+ while(!topicConfigurationMember.IsNull())
+ {
+ m_topicConfigurations.push_back(topicConfigurationMember);
+ topicConfigurationMember = topicConfigurationMember.NextNode("TopicConfiguration");
+ }
+
+ m_topicConfigurationsHasBeenSet = true;
+ }
+ XmlNode queueConfigurationsNode = resultNode.FirstChild("QueueConfiguration");
+ if(!queueConfigurationsNode.IsNull())
+ {
+ XmlNode queueConfigurationMember = queueConfigurationsNode;
+ while(!queueConfigurationMember.IsNull())
+ {
+ m_queueConfigurations.push_back(queueConfigurationMember);
+ queueConfigurationMember = queueConfigurationMember.NextNode("QueueConfiguration");
+ }
+
+ m_queueConfigurationsHasBeenSet = true;
+ }
+ XmlNode lambdaFunctionConfigurationsNode = resultNode.FirstChild("CloudFunctionConfiguration");
+ if(!lambdaFunctionConfigurationsNode.IsNull())
+ {
+ XmlNode cloudFunctionConfigurationMember = lambdaFunctionConfigurationsNode;
+ while(!cloudFunctionConfigurationMember.IsNull())
+ {
+ m_lambdaFunctionConfigurations.push_back(cloudFunctionConfigurationMember);
+ cloudFunctionConfigurationMember = cloudFunctionConfigurationMember.NextNode("CloudFunctionConfiguration");
+ }
+
+ m_lambdaFunctionConfigurationsHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void NotificationConfiguration::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_topicConfigurationsHasBeenSet)
+ {
+ for(const auto& item : m_topicConfigurations)
+ {
+ XmlNode topicConfigurationsNode = parentNode.CreateChildElement("TopicConfiguration");
+ item.AddToNode(topicConfigurationsNode);
+ }
+ }
+
+ if(m_queueConfigurationsHasBeenSet)
+ {
+ for(const auto& item : m_queueConfigurations)
+ {
+ XmlNode queueConfigurationsNode = parentNode.CreateChildElement("QueueConfiguration");
+ item.AddToNode(queueConfigurationsNode);
+ }
+ }
+
+ if(m_lambdaFunctionConfigurationsHasBeenSet)
+ {
+ for(const auto& item : m_lambdaFunctionConfigurations)
+ {
+ XmlNode lambdaFunctionConfigurationsNode = parentNode.CreateChildElement("CloudFunctionConfiguration");
+ item.AddToNode(lambdaFunctionConfigurationsNode);
+ }
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NotificationConfigurationDeprecated.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NotificationConfigurationDeprecated.cpp
new file mode 100644
index 0000000000..ee4d7bb1c5
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NotificationConfigurationDeprecated.cpp
@@ -0,0 +1,92 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/NotificationConfigurationDeprecated.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
+{
+
+NotificationConfigurationDeprecated::NotificationConfigurationDeprecated() :
+ m_topicConfigurationHasBeenSet(false),
+ m_queueConfigurationHasBeenSet(false),
+ m_cloudFunctionConfigurationHasBeenSet(false)
+{
+}
+
+NotificationConfigurationDeprecated::NotificationConfigurationDeprecated(const XmlNode& xmlNode) :
+ m_topicConfigurationHasBeenSet(false),
+ m_queueConfigurationHasBeenSet(false),
+ m_cloudFunctionConfigurationHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+NotificationConfigurationDeprecated& NotificationConfigurationDeprecated::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode topicConfigurationNode = resultNode.FirstChild("TopicConfiguration");
+ if(!topicConfigurationNode.IsNull())
+ {
+ m_topicConfiguration = topicConfigurationNode;
+ m_topicConfigurationHasBeenSet = true;
+ }
+ XmlNode queueConfigurationNode = resultNode.FirstChild("QueueConfiguration");
+ if(!queueConfigurationNode.IsNull())
+ {
+ m_queueConfiguration = queueConfigurationNode;
+ m_queueConfigurationHasBeenSet = true;
+ }
+ XmlNode cloudFunctionConfigurationNode = resultNode.FirstChild("CloudFunctionConfiguration");
+ if(!cloudFunctionConfigurationNode.IsNull())
+ {
+ m_cloudFunctionConfiguration = cloudFunctionConfigurationNode;
+ m_cloudFunctionConfigurationHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void NotificationConfigurationDeprecated::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_topicConfigurationHasBeenSet)
+ {
+ XmlNode topicConfigurationNode = parentNode.CreateChildElement("TopicConfiguration");
+ m_topicConfiguration.AddToNode(topicConfigurationNode);
+ }
+
+ if(m_queueConfigurationHasBeenSet)
+ {
+ XmlNode queueConfigurationNode = parentNode.CreateChildElement("QueueConfiguration");
+ m_queueConfiguration.AddToNode(queueConfigurationNode);
+ }
+
+ if(m_cloudFunctionConfigurationHasBeenSet)
+ {
+ XmlNode cloudFunctionConfigurationNode = parentNode.CreateChildElement("CloudFunctionConfiguration");
+ m_cloudFunctionConfiguration.AddToNode(cloudFunctionConfigurationNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NotificationConfigurationFilter.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NotificationConfigurationFilter.cpp
new file mode 100644
index 0000000000..29fac415de
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/NotificationConfigurationFilter.cpp
@@ -0,0 +1,64 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/NotificationConfigurationFilter.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
+{
+
+NotificationConfigurationFilter::NotificationConfigurationFilter() :
+ m_keyHasBeenSet(false)
+{
+}
+
+NotificationConfigurationFilter::NotificationConfigurationFilter(const XmlNode& xmlNode) :
+ m_keyHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+NotificationConfigurationFilter& NotificationConfigurationFilter::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode keyNode = resultNode.FirstChild("S3Key");
+ if(!keyNode.IsNull())
+ {
+ m_key = keyNode;
+ m_keyHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void NotificationConfigurationFilter::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_keyHasBeenSet)
+ {
+ XmlNode keyNode = parentNode.CreateChildElement("S3Key");
+ m_key.AddToNode(keyNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
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
new file mode 100644
index 0000000000..d7d963fc21
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Object.cpp
@@ -0,0 +1,140 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/Object.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
+{
+
+Object::Object() :
+ m_keyHasBeenSet(false),
+ m_lastModifiedHasBeenSet(false),
+ m_eTagHasBeenSet(false),
+ m_size(0),
+ m_sizeHasBeenSet(false),
+ m_storageClass(ObjectStorageClass::NOT_SET),
+ m_storageClassHasBeenSet(false),
+ m_ownerHasBeenSet(false)
+{
+}
+
+Object::Object(const XmlNode& xmlNode) :
+ m_keyHasBeenSet(false),
+ m_lastModifiedHasBeenSet(false),
+ m_eTagHasBeenSet(false),
+ m_size(0),
+ m_sizeHasBeenSet(false),
+ m_storageClass(ObjectStorageClass::NOT_SET),
+ m_storageClassHasBeenSet(false),
+ m_ownerHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+Object& Object::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode keyNode = resultNode.FirstChild("Key");
+ if(!keyNode.IsNull())
+ {
+ m_key = Aws::Utils::Xml::DecodeEscapedXmlText(keyNode.GetText());
+ m_keyHasBeenSet = true;
+ }
+ 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_lastModifiedHasBeenSet = true;
+ }
+ XmlNode eTagNode = resultNode.FirstChild("ETag");
+ if(!eTagNode.IsNull())
+ {
+ m_eTag = Aws::Utils::Xml::DecodeEscapedXmlText(eTagNode.GetText());
+ m_eTagHasBeenSet = 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 storageClassNode = resultNode.FirstChild("StorageClass");
+ if(!storageClassNode.IsNull())
+ {
+ m_storageClass = ObjectStorageClassMapper::GetObjectStorageClassForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(storageClassNode.GetText()).c_str()).c_str());
+ m_storageClassHasBeenSet = true;
+ }
+ XmlNode ownerNode = resultNode.FirstChild("Owner");
+ if(!ownerNode.IsNull())
+ {
+ m_owner = ownerNode;
+ m_ownerHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void Object::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_keyHasBeenSet)
+ {
+ XmlNode keyNode = parentNode.CreateChildElement("Key");
+ keyNode.SetText(m_key);
+ }
+
+ if(m_lastModifiedHasBeenSet)
+ {
+ XmlNode lastModifiedNode = parentNode.CreateChildElement("LastModified");
+ lastModifiedNode.SetText(m_lastModified.ToGmtString(DateFormat::ISO_8601));
+ }
+
+ if(m_eTagHasBeenSet)
+ {
+ XmlNode eTagNode = parentNode.CreateChildElement("ETag");
+ eTagNode.SetText(m_eTag);
+ }
+
+ if(m_sizeHasBeenSet)
+ {
+ XmlNode sizeNode = parentNode.CreateChildElement("Size");
+ ss << m_size;
+ sizeNode.SetText(ss.str());
+ ss.str("");
+ }
+
+ if(m_storageClassHasBeenSet)
+ {
+ XmlNode storageClassNode = parentNode.CreateChildElement("StorageClass");
+ storageClassNode.SetText(ObjectStorageClassMapper::GetNameForObjectStorageClass(m_storageClass));
+ }
+
+ if(m_ownerHasBeenSet)
+ {
+ XmlNode ownerNode = parentNode.CreateChildElement("Owner");
+ m_owner.AddToNode(ownerNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectCannedACL.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectCannedACL.cpp
new file mode 100644
index 0000000000..c62174ba1d
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectCannedACL.cpp
@@ -0,0 +1,105 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ObjectCannedACL.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 ObjectCannedACLMapper
+ {
+
+ static const int private__HASH = HashingUtils::HashString("private");
+ static const int public_read_HASH = HashingUtils::HashString("public-read");
+ static const int public_read_write_HASH = HashingUtils::HashString("public-read-write");
+ static const int authenticated_read_HASH = HashingUtils::HashString("authenticated-read");
+ static const int aws_exec_read_HASH = HashingUtils::HashString("aws-exec-read");
+ static const int bucket_owner_read_HASH = HashingUtils::HashString("bucket-owner-read");
+ static const int bucket_owner_full_control_HASH = HashingUtils::HashString("bucket-owner-full-control");
+
+
+ ObjectCannedACL GetObjectCannedACLForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == private__HASH)
+ {
+ return ObjectCannedACL::private_;
+ }
+ else if (hashCode == public_read_HASH)
+ {
+ return ObjectCannedACL::public_read;
+ }
+ else if (hashCode == public_read_write_HASH)
+ {
+ return ObjectCannedACL::public_read_write;
+ }
+ else if (hashCode == authenticated_read_HASH)
+ {
+ return ObjectCannedACL::authenticated_read;
+ }
+ else if (hashCode == aws_exec_read_HASH)
+ {
+ return ObjectCannedACL::aws_exec_read;
+ }
+ else if (hashCode == bucket_owner_read_HASH)
+ {
+ return ObjectCannedACL::bucket_owner_read;
+ }
+ else if (hashCode == bucket_owner_full_control_HASH)
+ {
+ return ObjectCannedACL::bucket_owner_full_control;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<ObjectCannedACL>(hashCode);
+ }
+
+ return ObjectCannedACL::NOT_SET;
+ }
+
+ Aws::String GetNameForObjectCannedACL(ObjectCannedACL enumValue)
+ {
+ switch(enumValue)
+ {
+ case ObjectCannedACL::private_:
+ return "private";
+ case ObjectCannedACL::public_read:
+ return "public-read";
+ case ObjectCannedACL::public_read_write:
+ return "public-read-write";
+ case ObjectCannedACL::authenticated_read:
+ return "authenticated-read";
+ case ObjectCannedACL::aws_exec_read:
+ return "aws-exec-read";
+ case ObjectCannedACL::bucket_owner_read:
+ return "bucket-owner-read";
+ case ObjectCannedACL::bucket_owner_full_control:
+ return "bucket-owner-full-control";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace ObjectCannedACLMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectIdentifier.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectIdentifier.cpp
new file mode 100644
index 0000000000..fc09363d0a
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectIdentifier.cpp
@@ -0,0 +1,78 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ObjectIdentifier.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
+{
+
+ObjectIdentifier::ObjectIdentifier() :
+ m_keyHasBeenSet(false),
+ m_versionIdHasBeenSet(false)
+{
+}
+
+ObjectIdentifier::ObjectIdentifier(const XmlNode& xmlNode) :
+ m_keyHasBeenSet(false),
+ m_versionIdHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+ObjectIdentifier& ObjectIdentifier::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode keyNode = resultNode.FirstChild("Key");
+ if(!keyNode.IsNull())
+ {
+ m_key = Aws::Utils::Xml::DecodeEscapedXmlText(keyNode.GetText());
+ m_keyHasBeenSet = true;
+ }
+ XmlNode versionIdNode = resultNode.FirstChild("VersionId");
+ if(!versionIdNode.IsNull())
+ {
+ m_versionId = Aws::Utils::Xml::DecodeEscapedXmlText(versionIdNode.GetText());
+ m_versionIdHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void ObjectIdentifier::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_keyHasBeenSet)
+ {
+ XmlNode keyNode = parentNode.CreateChildElement("Key");
+ keyNode.SetText(m_key);
+ }
+
+ if(m_versionIdHasBeenSet)
+ {
+ XmlNode versionIdNode = parentNode.CreateChildElement("VersionId");
+ versionIdNode.SetText(m_versionId);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockConfiguration.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockConfiguration.cpp
new file mode 100644
index 0000000000..f85dea6926
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockConfiguration.cpp
@@ -0,0 +1,80 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ObjectLockConfiguration.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
+{
+
+ObjectLockConfiguration::ObjectLockConfiguration() :
+ m_objectLockEnabled(ObjectLockEnabled::NOT_SET),
+ m_objectLockEnabledHasBeenSet(false),
+ m_ruleHasBeenSet(false)
+{
+}
+
+ObjectLockConfiguration::ObjectLockConfiguration(const XmlNode& xmlNode) :
+ m_objectLockEnabled(ObjectLockEnabled::NOT_SET),
+ m_objectLockEnabledHasBeenSet(false),
+ m_ruleHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+ObjectLockConfiguration& ObjectLockConfiguration::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode objectLockEnabledNode = resultNode.FirstChild("ObjectLockEnabled");
+ if(!objectLockEnabledNode.IsNull())
+ {
+ m_objectLockEnabled = ObjectLockEnabledMapper::GetObjectLockEnabledForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(objectLockEnabledNode.GetText()).c_str()).c_str());
+ m_objectLockEnabledHasBeenSet = true;
+ }
+ XmlNode ruleNode = resultNode.FirstChild("Rule");
+ if(!ruleNode.IsNull())
+ {
+ m_rule = ruleNode;
+ m_ruleHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void ObjectLockConfiguration::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_objectLockEnabledHasBeenSet)
+ {
+ XmlNode objectLockEnabledNode = parentNode.CreateChildElement("ObjectLockEnabled");
+ objectLockEnabledNode.SetText(ObjectLockEnabledMapper::GetNameForObjectLockEnabled(m_objectLockEnabled));
+ }
+
+ if(m_ruleHasBeenSet)
+ {
+ XmlNode ruleNode = parentNode.CreateChildElement("Rule");
+ m_rule.AddToNode(ruleNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockEnabled.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockEnabled.cpp
new file mode 100644
index 0000000000..a6053dd45c
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockEnabled.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/ObjectLockEnabled.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 ObjectLockEnabledMapper
+ {
+
+ static const int Enabled_HASH = HashingUtils::HashString("Enabled");
+
+
+ ObjectLockEnabled GetObjectLockEnabledForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == Enabled_HASH)
+ {
+ return ObjectLockEnabled::Enabled;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<ObjectLockEnabled>(hashCode);
+ }
+
+ return ObjectLockEnabled::NOT_SET;
+ }
+
+ Aws::String GetNameForObjectLockEnabled(ObjectLockEnabled enumValue)
+ {
+ switch(enumValue)
+ {
+ case ObjectLockEnabled::Enabled:
+ return "Enabled";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace ObjectLockEnabledMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockLegalHold.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockLegalHold.cpp
new file mode 100644
index 0000000000..53908c717b
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockLegalHold.cpp
@@ -0,0 +1,66 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ObjectLockLegalHold.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
+{
+
+ObjectLockLegalHold::ObjectLockLegalHold() :
+ m_status(ObjectLockLegalHoldStatus::NOT_SET),
+ m_statusHasBeenSet(false)
+{
+}
+
+ObjectLockLegalHold::ObjectLockLegalHold(const XmlNode& xmlNode) :
+ m_status(ObjectLockLegalHoldStatus::NOT_SET),
+ m_statusHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+ObjectLockLegalHold& ObjectLockLegalHold::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode statusNode = resultNode.FirstChild("Status");
+ if(!statusNode.IsNull())
+ {
+ m_status = ObjectLockLegalHoldStatusMapper::GetObjectLockLegalHoldStatusForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(statusNode.GetText()).c_str()).c_str());
+ m_statusHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void ObjectLockLegalHold::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_statusHasBeenSet)
+ {
+ XmlNode statusNode = parentNode.CreateChildElement("Status");
+ statusNode.SetText(ObjectLockLegalHoldStatusMapper::GetNameForObjectLockLegalHoldStatus(m_status));
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockLegalHoldStatus.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockLegalHoldStatus.cpp
new file mode 100644
index 0000000000..d876afcc95
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockLegalHoldStatus.cpp
@@ -0,0 +1,70 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ObjectLockLegalHoldStatus.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 ObjectLockLegalHoldStatusMapper
+ {
+
+ static const int ON_HASH = HashingUtils::HashString("ON");
+ static const int OFF_HASH = HashingUtils::HashString("OFF");
+
+
+ ObjectLockLegalHoldStatus GetObjectLockLegalHoldStatusForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == ON_HASH)
+ {
+ return ObjectLockLegalHoldStatus::ON;
+ }
+ else if (hashCode == OFF_HASH)
+ {
+ return ObjectLockLegalHoldStatus::OFF;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<ObjectLockLegalHoldStatus>(hashCode);
+ }
+
+ return ObjectLockLegalHoldStatus::NOT_SET;
+ }
+
+ Aws::String GetNameForObjectLockLegalHoldStatus(ObjectLockLegalHoldStatus enumValue)
+ {
+ switch(enumValue)
+ {
+ case ObjectLockLegalHoldStatus::ON:
+ return "ON";
+ case ObjectLockLegalHoldStatus::OFF:
+ return "OFF";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace ObjectLockLegalHoldStatusMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockMode.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockMode.cpp
new file mode 100644
index 0000000000..8d0e4c067a
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockMode.cpp
@@ -0,0 +1,70 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ObjectLockMode.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 ObjectLockModeMapper
+ {
+
+ static const int GOVERNANCE_HASH = HashingUtils::HashString("GOVERNANCE");
+ static const int COMPLIANCE_HASH = HashingUtils::HashString("COMPLIANCE");
+
+
+ ObjectLockMode GetObjectLockModeForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == GOVERNANCE_HASH)
+ {
+ return ObjectLockMode::GOVERNANCE;
+ }
+ else if (hashCode == COMPLIANCE_HASH)
+ {
+ return ObjectLockMode::COMPLIANCE;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<ObjectLockMode>(hashCode);
+ }
+
+ return ObjectLockMode::NOT_SET;
+ }
+
+ Aws::String GetNameForObjectLockMode(ObjectLockMode enumValue)
+ {
+ switch(enumValue)
+ {
+ case ObjectLockMode::GOVERNANCE:
+ return "GOVERNANCE";
+ case ObjectLockMode::COMPLIANCE:
+ return "COMPLIANCE";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace ObjectLockModeMapper
+ } // 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
new file mode 100644
index 0000000000..3ba5d5590e
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockRetention.cpp
@@ -0,0 +1,80 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ObjectLockRetention.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
+{
+
+ObjectLockRetention::ObjectLockRetention() :
+ m_mode(ObjectLockRetentionMode::NOT_SET),
+ m_modeHasBeenSet(false),
+ m_retainUntilDateHasBeenSet(false)
+{
+}
+
+ObjectLockRetention::ObjectLockRetention(const XmlNode& xmlNode) :
+ m_mode(ObjectLockRetentionMode::NOT_SET),
+ m_modeHasBeenSet(false),
+ m_retainUntilDateHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+ObjectLockRetention& ObjectLockRetention::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode modeNode = resultNode.FirstChild("Mode");
+ if(!modeNode.IsNull())
+ {
+ m_mode = ObjectLockRetentionModeMapper::GetObjectLockRetentionModeForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(modeNode.GetText()).c_str()).c_str());
+ m_modeHasBeenSet = true;
+ }
+ 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_retainUntilDateHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void ObjectLockRetention::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_modeHasBeenSet)
+ {
+ XmlNode modeNode = parentNode.CreateChildElement("Mode");
+ modeNode.SetText(ObjectLockRetentionModeMapper::GetNameForObjectLockRetentionMode(m_mode));
+ }
+
+ if(m_retainUntilDateHasBeenSet)
+ {
+ XmlNode retainUntilDateNode = parentNode.CreateChildElement("RetainUntilDate");
+ retainUntilDateNode.SetText(m_retainUntilDate.ToGmtString(DateFormat::ISO_8601));
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockRetentionMode.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockRetentionMode.cpp
new file mode 100644
index 0000000000..12e6c9a87d
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockRetentionMode.cpp
@@ -0,0 +1,70 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ObjectLockRetentionMode.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 ObjectLockRetentionModeMapper
+ {
+
+ static const int GOVERNANCE_HASH = HashingUtils::HashString("GOVERNANCE");
+ static const int COMPLIANCE_HASH = HashingUtils::HashString("COMPLIANCE");
+
+
+ ObjectLockRetentionMode GetObjectLockRetentionModeForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == GOVERNANCE_HASH)
+ {
+ return ObjectLockRetentionMode::GOVERNANCE;
+ }
+ else if (hashCode == COMPLIANCE_HASH)
+ {
+ return ObjectLockRetentionMode::COMPLIANCE;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<ObjectLockRetentionMode>(hashCode);
+ }
+
+ return ObjectLockRetentionMode::NOT_SET;
+ }
+
+ Aws::String GetNameForObjectLockRetentionMode(ObjectLockRetentionMode enumValue)
+ {
+ switch(enumValue)
+ {
+ case ObjectLockRetentionMode::GOVERNANCE:
+ return "GOVERNANCE";
+ case ObjectLockRetentionMode::COMPLIANCE:
+ return "COMPLIANCE";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace ObjectLockRetentionModeMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockRule.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockRule.cpp
new file mode 100644
index 0000000000..9e21c8af6d
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectLockRule.cpp
@@ -0,0 +1,64 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ObjectLockRule.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
+{
+
+ObjectLockRule::ObjectLockRule() :
+ m_defaultRetentionHasBeenSet(false)
+{
+}
+
+ObjectLockRule::ObjectLockRule(const XmlNode& xmlNode) :
+ m_defaultRetentionHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+ObjectLockRule& ObjectLockRule::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode defaultRetentionNode = resultNode.FirstChild("DefaultRetention");
+ if(!defaultRetentionNode.IsNull())
+ {
+ m_defaultRetention = defaultRetentionNode;
+ m_defaultRetentionHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void ObjectLockRule::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_defaultRetentionHasBeenSet)
+ {
+ XmlNode defaultRetentionNode = parentNode.CreateChildElement("DefaultRetention");
+ m_defaultRetention.AddToNode(defaultRetentionNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
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
new file mode 100644
index 0000000000..4e2a106c8e
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectOwnership.cpp
@@ -0,0 +1,70 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ObjectOwnership.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 ObjectOwnershipMapper
+ {
+
+ static const int BucketOwnerPreferred_HASH = HashingUtils::HashString("BucketOwnerPreferred");
+ static const int ObjectWriter_HASH = HashingUtils::HashString("ObjectWriter");
+
+
+ ObjectOwnership GetObjectOwnershipForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == BucketOwnerPreferred_HASH)
+ {
+ return ObjectOwnership::BucketOwnerPreferred;
+ }
+ else if (hashCode == ObjectWriter_HASH)
+ {
+ return ObjectOwnership::ObjectWriter;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<ObjectOwnership>(hashCode);
+ }
+
+ return ObjectOwnership::NOT_SET;
+ }
+
+ Aws::String GetNameForObjectOwnership(ObjectOwnership enumValue)
+ {
+ switch(enumValue)
+ {
+ case ObjectOwnership::BucketOwnerPreferred:
+ return "BucketOwnerPreferred";
+ case ObjectOwnership::ObjectWriter:
+ return "ObjectWriter";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace ObjectOwnershipMapper
+ } // 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
new file mode 100644
index 0000000000..572041c798
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectStorageClass.cpp
@@ -0,0 +1,112 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ObjectStorageClass.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 ObjectStorageClassMapper
+ {
+
+ static const int STANDARD_HASH = HashingUtils::HashString("STANDARD");
+ static const int REDUCED_REDUNDANCY_HASH = HashingUtils::HashString("REDUCED_REDUNDANCY");
+ static const int GLACIER_HASH = HashingUtils::HashString("GLACIER");
+ static const int STANDARD_IA_HASH = HashingUtils::HashString("STANDARD_IA");
+ 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 OUTPOSTS_HASH = HashingUtils::HashString("OUTPOSTS");
+
+
+ ObjectStorageClass GetObjectStorageClassForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == STANDARD_HASH)
+ {
+ return ObjectStorageClass::STANDARD;
+ }
+ else if (hashCode == REDUCED_REDUNDANCY_HASH)
+ {
+ return ObjectStorageClass::REDUCED_REDUNDANCY;
+ }
+ else if (hashCode == GLACIER_HASH)
+ {
+ return ObjectStorageClass::GLACIER;
+ }
+ else if (hashCode == STANDARD_IA_HASH)
+ {
+ return ObjectStorageClass::STANDARD_IA;
+ }
+ else if (hashCode == ONEZONE_IA_HASH)
+ {
+ return ObjectStorageClass::ONEZONE_IA;
+ }
+ else if (hashCode == INTELLIGENT_TIERING_HASH)
+ {
+ return ObjectStorageClass::INTELLIGENT_TIERING;
+ }
+ else if (hashCode == DEEP_ARCHIVE_HASH)
+ {
+ return ObjectStorageClass::DEEP_ARCHIVE;
+ }
+ else if (hashCode == OUTPOSTS_HASH)
+ {
+ return ObjectStorageClass::OUTPOSTS;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<ObjectStorageClass>(hashCode);
+ }
+
+ return ObjectStorageClass::NOT_SET;
+ }
+
+ Aws::String GetNameForObjectStorageClass(ObjectStorageClass enumValue)
+ {
+ switch(enumValue)
+ {
+ case ObjectStorageClass::STANDARD:
+ return "STANDARD";
+ case ObjectStorageClass::REDUCED_REDUNDANCY:
+ return "REDUCED_REDUNDANCY";
+ case ObjectStorageClass::GLACIER:
+ return "GLACIER";
+ case ObjectStorageClass::STANDARD_IA:
+ return "STANDARD_IA";
+ case ObjectStorageClass::ONEZONE_IA:
+ return "ONEZONE_IA";
+ case ObjectStorageClass::INTELLIGENT_TIERING:
+ return "INTELLIGENT_TIERING";
+ case ObjectStorageClass::DEEP_ARCHIVE:
+ return "DEEP_ARCHIVE";
+ case ObjectStorageClass::OUTPOSTS:
+ return "OUTPOSTS";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace ObjectStorageClassMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
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
new file mode 100644
index 0000000000..c7b720f252
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectVersion.cpp
@@ -0,0 +1,172 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ObjectVersion.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
+{
+
+ObjectVersion::ObjectVersion() :
+ m_eTagHasBeenSet(false),
+ m_size(0),
+ m_sizeHasBeenSet(false),
+ m_storageClass(ObjectVersionStorageClass::NOT_SET),
+ m_storageClassHasBeenSet(false),
+ m_keyHasBeenSet(false),
+ m_versionIdHasBeenSet(false),
+ m_isLatest(false),
+ m_isLatestHasBeenSet(false),
+ m_lastModifiedHasBeenSet(false),
+ m_ownerHasBeenSet(false)
+{
+}
+
+ObjectVersion::ObjectVersion(const XmlNode& xmlNode) :
+ m_eTagHasBeenSet(false),
+ m_size(0),
+ m_sizeHasBeenSet(false),
+ m_storageClass(ObjectVersionStorageClass::NOT_SET),
+ m_storageClassHasBeenSet(false),
+ m_keyHasBeenSet(false),
+ m_versionIdHasBeenSet(false),
+ m_isLatest(false),
+ m_isLatestHasBeenSet(false),
+ m_lastModifiedHasBeenSet(false),
+ m_ownerHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+ObjectVersion& ObjectVersion::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode eTagNode = resultNode.FirstChild("ETag");
+ if(!eTagNode.IsNull())
+ {
+ m_eTag = Aws::Utils::Xml::DecodeEscapedXmlText(eTagNode.GetText());
+ m_eTagHasBeenSet = 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 storageClassNode = resultNode.FirstChild("StorageClass");
+ if(!storageClassNode.IsNull())
+ {
+ m_storageClass = ObjectVersionStorageClassMapper::GetObjectVersionStorageClassForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(storageClassNode.GetText()).c_str()).c_str());
+ m_storageClassHasBeenSet = true;
+ }
+ XmlNode keyNode = resultNode.FirstChild("Key");
+ if(!keyNode.IsNull())
+ {
+ m_key = Aws::Utils::Xml::DecodeEscapedXmlText(keyNode.GetText());
+ m_keyHasBeenSet = true;
+ }
+ XmlNode versionIdNode = resultNode.FirstChild("VersionId");
+ if(!versionIdNode.IsNull())
+ {
+ m_versionId = Aws::Utils::Xml::DecodeEscapedXmlText(versionIdNode.GetText());
+ m_versionIdHasBeenSet = true;
+ }
+ XmlNode isLatestNode = resultNode.FirstChild("IsLatest");
+ if(!isLatestNode.IsNull())
+ {
+ m_isLatest = StringUtils::ConvertToBool(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(isLatestNode.GetText()).c_str()).c_str());
+ m_isLatestHasBeenSet = true;
+ }
+ 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_lastModifiedHasBeenSet = true;
+ }
+ XmlNode ownerNode = resultNode.FirstChild("Owner");
+ if(!ownerNode.IsNull())
+ {
+ m_owner = ownerNode;
+ m_ownerHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void ObjectVersion::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_eTagHasBeenSet)
+ {
+ XmlNode eTagNode = parentNode.CreateChildElement("ETag");
+ eTagNode.SetText(m_eTag);
+ }
+
+ if(m_sizeHasBeenSet)
+ {
+ XmlNode sizeNode = parentNode.CreateChildElement("Size");
+ ss << m_size;
+ sizeNode.SetText(ss.str());
+ ss.str("");
+ }
+
+ if(m_storageClassHasBeenSet)
+ {
+ XmlNode storageClassNode = parentNode.CreateChildElement("StorageClass");
+ storageClassNode.SetText(ObjectVersionStorageClassMapper::GetNameForObjectVersionStorageClass(m_storageClass));
+ }
+
+ if(m_keyHasBeenSet)
+ {
+ XmlNode keyNode = parentNode.CreateChildElement("Key");
+ keyNode.SetText(m_key);
+ }
+
+ if(m_versionIdHasBeenSet)
+ {
+ XmlNode versionIdNode = parentNode.CreateChildElement("VersionId");
+ versionIdNode.SetText(m_versionId);
+ }
+
+ if(m_isLatestHasBeenSet)
+ {
+ XmlNode isLatestNode = parentNode.CreateChildElement("IsLatest");
+ ss << std::boolalpha << m_isLatest;
+ isLatestNode.SetText(ss.str());
+ ss.str("");
+ }
+
+ if(m_lastModifiedHasBeenSet)
+ {
+ XmlNode lastModifiedNode = parentNode.CreateChildElement("LastModified");
+ lastModifiedNode.SetText(m_lastModified.ToGmtString(DateFormat::ISO_8601));
+ }
+
+ if(m_ownerHasBeenSet)
+ {
+ XmlNode ownerNode = parentNode.CreateChildElement("Owner");
+ m_owner.AddToNode(ownerNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectVersionStorageClass.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectVersionStorageClass.cpp
new file mode 100644
index 0000000000..42cd127813
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ObjectVersionStorageClass.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/ObjectVersionStorageClass.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 ObjectVersionStorageClassMapper
+ {
+
+ static const int STANDARD_HASH = HashingUtils::HashString("STANDARD");
+
+
+ ObjectVersionStorageClass GetObjectVersionStorageClassForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == STANDARD_HASH)
+ {
+ return ObjectVersionStorageClass::STANDARD;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<ObjectVersionStorageClass>(hashCode);
+ }
+
+ return ObjectVersionStorageClass::NOT_SET;
+ }
+
+ Aws::String GetNameForObjectVersionStorageClass(ObjectVersionStorageClass enumValue)
+ {
+ switch(enumValue)
+ {
+ case ObjectVersionStorageClass::STANDARD:
+ return "STANDARD";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace ObjectVersionStorageClassMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/OutputLocation.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/OutputLocation.cpp
new file mode 100644
index 0000000000..95aeb63c1c
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/OutputLocation.cpp
@@ -0,0 +1,64 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/OutputLocation.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
+{
+
+OutputLocation::OutputLocation() :
+ m_s3HasBeenSet(false)
+{
+}
+
+OutputLocation::OutputLocation(const XmlNode& xmlNode) :
+ m_s3HasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+OutputLocation& OutputLocation::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode s3Node = resultNode.FirstChild("S3");
+ if(!s3Node.IsNull())
+ {
+ m_s3 = s3Node;
+ m_s3HasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void OutputLocation::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_s3HasBeenSet)
+ {
+ XmlNode s3Node = parentNode.CreateChildElement("S3");
+ m_s3.AddToNode(s3Node);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/OutputSerialization.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/OutputSerialization.cpp
new file mode 100644
index 0000000000..22183ed347
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/OutputSerialization.cpp
@@ -0,0 +1,78 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/OutputSerialization.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
+{
+
+OutputSerialization::OutputSerialization() :
+ m_cSVHasBeenSet(false),
+ m_jSONHasBeenSet(false)
+{
+}
+
+OutputSerialization::OutputSerialization(const XmlNode& xmlNode) :
+ m_cSVHasBeenSet(false),
+ m_jSONHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+OutputSerialization& OutputSerialization::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode cSVNode = resultNode.FirstChild("CSV");
+ if(!cSVNode.IsNull())
+ {
+ m_cSV = cSVNode;
+ m_cSVHasBeenSet = true;
+ }
+ XmlNode jSONNode = resultNode.FirstChild("JSON");
+ if(!jSONNode.IsNull())
+ {
+ m_jSON = jSONNode;
+ m_jSONHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void OutputSerialization::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_cSVHasBeenSet)
+ {
+ XmlNode cSVNode = parentNode.CreateChildElement("CSV");
+ m_cSV.AddToNode(cSVNode);
+ }
+
+ if(m_jSONHasBeenSet)
+ {
+ XmlNode jSONNode = parentNode.CreateChildElement("JSON");
+ m_jSON.AddToNode(jSONNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Owner.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Owner.cpp
new file mode 100644
index 0000000000..15b4ac8642
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Owner.cpp
@@ -0,0 +1,78 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/Owner.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
+{
+
+Owner::Owner() :
+ m_displayNameHasBeenSet(false),
+ m_iDHasBeenSet(false)
+{
+}
+
+Owner::Owner(const XmlNode& xmlNode) :
+ m_displayNameHasBeenSet(false),
+ m_iDHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+Owner& Owner::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode displayNameNode = resultNode.FirstChild("DisplayName");
+ if(!displayNameNode.IsNull())
+ {
+ m_displayName = Aws::Utils::Xml::DecodeEscapedXmlText(displayNameNode.GetText());
+ m_displayNameHasBeenSet = true;
+ }
+ XmlNode iDNode = resultNode.FirstChild("ID");
+ if(!iDNode.IsNull())
+ {
+ m_iD = Aws::Utils::Xml::DecodeEscapedXmlText(iDNode.GetText());
+ m_iDHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void Owner::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_displayNameHasBeenSet)
+ {
+ XmlNode displayNameNode = parentNode.CreateChildElement("DisplayName");
+ displayNameNode.SetText(m_displayName);
+ }
+
+ if(m_iDHasBeenSet)
+ {
+ XmlNode iDNode = parentNode.CreateChildElement("ID");
+ iDNode.SetText(m_iD);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/OwnerOverride.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/OwnerOverride.cpp
new file mode 100644
index 0000000000..5cf248f662
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/OwnerOverride.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/OwnerOverride.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 OwnerOverrideMapper
+ {
+
+ static const int Destination_HASH = HashingUtils::HashString("Destination");
+
+
+ OwnerOverride GetOwnerOverrideForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == Destination_HASH)
+ {
+ return OwnerOverride::Destination;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<OwnerOverride>(hashCode);
+ }
+
+ return OwnerOverride::NOT_SET;
+ }
+
+ Aws::String GetNameForOwnerOverride(OwnerOverride enumValue)
+ {
+ switch(enumValue)
+ {
+ case OwnerOverride::Destination:
+ return "Destination";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace OwnerOverrideMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/OwnershipControls.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/OwnershipControls.cpp
new file mode 100644
index 0000000000..5640ae19f7
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/OwnershipControls.cpp
@@ -0,0 +1,73 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/OwnershipControls.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
+{
+
+OwnershipControls::OwnershipControls() :
+ m_rulesHasBeenSet(false)
+{
+}
+
+OwnershipControls::OwnershipControls(const XmlNode& xmlNode) :
+ m_rulesHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+OwnershipControls& OwnershipControls::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode rulesNode = resultNode.FirstChild("Rule");
+ if(!rulesNode.IsNull())
+ {
+ XmlNode ruleMember = rulesNode;
+ while(!ruleMember.IsNull())
+ {
+ m_rules.push_back(ruleMember);
+ ruleMember = ruleMember.NextNode("Rule");
+ }
+
+ m_rulesHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void OwnershipControls::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_rulesHasBeenSet)
+ {
+ for(const auto& item : m_rules)
+ {
+ XmlNode rulesNode = parentNode.CreateChildElement("Rule");
+ item.AddToNode(rulesNode);
+ }
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/OwnershipControlsRule.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/OwnershipControlsRule.cpp
new file mode 100644
index 0000000000..935fae4d00
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/OwnershipControlsRule.cpp
@@ -0,0 +1,66 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/OwnershipControlsRule.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
+{
+
+OwnershipControlsRule::OwnershipControlsRule() :
+ m_objectOwnership(ObjectOwnership::NOT_SET),
+ m_objectOwnershipHasBeenSet(false)
+{
+}
+
+OwnershipControlsRule::OwnershipControlsRule(const XmlNode& xmlNode) :
+ m_objectOwnership(ObjectOwnership::NOT_SET),
+ m_objectOwnershipHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+OwnershipControlsRule& OwnershipControlsRule::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode objectOwnershipNode = resultNode.FirstChild("ObjectOwnership");
+ if(!objectOwnershipNode.IsNull())
+ {
+ m_objectOwnership = ObjectOwnershipMapper::GetObjectOwnershipForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(objectOwnershipNode.GetText()).c_str()).c_str());
+ m_objectOwnershipHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void OwnershipControlsRule::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_objectOwnershipHasBeenSet)
+ {
+ XmlNode objectOwnershipNode = parentNode.CreateChildElement("ObjectOwnership");
+ objectOwnershipNode.SetText(ObjectOwnershipMapper::GetNameForObjectOwnership(m_objectOwnership));
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ParquetInput.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ParquetInput.cpp
new file mode 100644
index 0000000000..e10233bada
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ParquetInput.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/ParquetInput.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
+{
+
+ParquetInput::ParquetInput()
+{
+}
+
+ParquetInput::ParquetInput(const XmlNode& xmlNode)
+{
+ *this = xmlNode;
+}
+
+ParquetInput& ParquetInput::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ }
+
+ return *this;
+}
+
+void ParquetInput::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/Part.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Part.cpp
new file mode 100644
index 0000000000..a243f72d10
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Part.cpp
@@ -0,0 +1,114 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/Part.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
+{
+
+Part::Part() :
+ m_partNumber(0),
+ m_partNumberHasBeenSet(false),
+ m_lastModifiedHasBeenSet(false),
+ m_eTagHasBeenSet(false),
+ m_size(0),
+ m_sizeHasBeenSet(false)
+{
+}
+
+Part::Part(const XmlNode& xmlNode) :
+ m_partNumber(0),
+ m_partNumberHasBeenSet(false),
+ m_lastModifiedHasBeenSet(false),
+ m_eTagHasBeenSet(false),
+ m_size(0),
+ m_sizeHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+Part& Part::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 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_lastModifiedHasBeenSet = true;
+ }
+ XmlNode eTagNode = resultNode.FirstChild("ETag");
+ if(!eTagNode.IsNull())
+ {
+ m_eTag = Aws::Utils::Xml::DecodeEscapedXmlText(eTagNode.GetText());
+ m_eTagHasBeenSet = 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;
+ }
+ }
+
+ return *this;
+}
+
+void Part::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_lastModifiedHasBeenSet)
+ {
+ XmlNode lastModifiedNode = parentNode.CreateChildElement("LastModified");
+ lastModifiedNode.SetText(m_lastModified.ToGmtString(DateFormat::ISO_8601));
+ }
+
+ if(m_eTagHasBeenSet)
+ {
+ XmlNode eTagNode = parentNode.CreateChildElement("ETag");
+ eTagNode.SetText(m_eTag);
+ }
+
+ if(m_sizeHasBeenSet)
+ {
+ XmlNode sizeNode = parentNode.CreateChildElement("Size");
+ ss << m_size;
+ sizeNode.SetText(ss.str());
+ ss.str("");
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Payer.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Payer.cpp
new file mode 100644
index 0000000000..0c5c469839
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Payer.cpp
@@ -0,0 +1,70 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/Payer.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 PayerMapper
+ {
+
+ static const int Requester_HASH = HashingUtils::HashString("Requester");
+ static const int BucketOwner_HASH = HashingUtils::HashString("BucketOwner");
+
+
+ Payer GetPayerForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == Requester_HASH)
+ {
+ return Payer::Requester;
+ }
+ else if (hashCode == BucketOwner_HASH)
+ {
+ return Payer::BucketOwner;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<Payer>(hashCode);
+ }
+
+ return Payer::NOT_SET;
+ }
+
+ Aws::String GetNameForPayer(Payer enumValue)
+ {
+ switch(enumValue)
+ {
+ case Payer::Requester:
+ return "Requester";
+ case Payer::BucketOwner:
+ return "BucketOwner";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace PayerMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Permission.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Permission.cpp
new file mode 100644
index 0000000000..3215a6d8aa
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Permission.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/Permission.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 PermissionMapper
+ {
+
+ static const int FULL_CONTROL_HASH = HashingUtils::HashString("FULL_CONTROL");
+ static const int WRITE_HASH = HashingUtils::HashString("WRITE");
+ static const int WRITE_ACP_HASH = HashingUtils::HashString("WRITE_ACP");
+ static const int READ_HASH = HashingUtils::HashString("READ");
+ static const int READ_ACP_HASH = HashingUtils::HashString("READ_ACP");
+
+
+ Permission GetPermissionForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == FULL_CONTROL_HASH)
+ {
+ return Permission::FULL_CONTROL;
+ }
+ else if (hashCode == WRITE_HASH)
+ {
+ return Permission::WRITE;
+ }
+ else if (hashCode == WRITE_ACP_HASH)
+ {
+ return Permission::WRITE_ACP;
+ }
+ else if (hashCode == READ_HASH)
+ {
+ return Permission::READ;
+ }
+ else if (hashCode == READ_ACP_HASH)
+ {
+ return Permission::READ_ACP;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<Permission>(hashCode);
+ }
+
+ return Permission::NOT_SET;
+ }
+
+ Aws::String GetNameForPermission(Permission enumValue)
+ {
+ switch(enumValue)
+ {
+ case Permission::FULL_CONTROL:
+ return "FULL_CONTROL";
+ case Permission::WRITE:
+ return "WRITE";
+ case Permission::WRITE_ACP:
+ return "WRITE_ACP";
+ case Permission::READ:
+ return "READ";
+ case Permission::READ_ACP:
+ return "READ_ACP";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace PermissionMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PolicyStatus.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PolicyStatus.cpp
new file mode 100644
index 0000000000..01290f2ccc
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PolicyStatus.cpp
@@ -0,0 +1,68 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/PolicyStatus.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
+{
+
+PolicyStatus::PolicyStatus() :
+ m_isPublic(false),
+ m_isPublicHasBeenSet(false)
+{
+}
+
+PolicyStatus::PolicyStatus(const XmlNode& xmlNode) :
+ m_isPublic(false),
+ m_isPublicHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+PolicyStatus& PolicyStatus::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode isPublicNode = resultNode.FirstChild("IsPublic");
+ if(!isPublicNode.IsNull())
+ {
+ m_isPublic = StringUtils::ConvertToBool(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(isPublicNode.GetText()).c_str()).c_str());
+ m_isPublicHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void PolicyStatus::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_isPublicHasBeenSet)
+ {
+ XmlNode isPublicNode = parentNode.CreateChildElement("IsPublic");
+ ss << std::boolalpha << m_isPublic;
+ isPublicNode.SetText(ss.str());
+ ss.str("");
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Progress.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Progress.cpp
new file mode 100644
index 0000000000..804194fc30
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Progress.cpp
@@ -0,0 +1,104 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/Progress.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
+{
+
+Progress::Progress() :
+ m_bytesScanned(0),
+ m_bytesScannedHasBeenSet(false),
+ m_bytesProcessed(0),
+ m_bytesProcessedHasBeenSet(false),
+ m_bytesReturned(0),
+ m_bytesReturnedHasBeenSet(false)
+{
+}
+
+Progress::Progress(const XmlNode& xmlNode) :
+ m_bytesScanned(0),
+ m_bytesScannedHasBeenSet(false),
+ m_bytesProcessed(0),
+ m_bytesProcessedHasBeenSet(false),
+ m_bytesReturned(0),
+ m_bytesReturnedHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+Progress& Progress::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode bytesScannedNode = resultNode.FirstChild("BytesScanned");
+ if(!bytesScannedNode.IsNull())
+ {
+ m_bytesScanned = StringUtils::ConvertToInt64(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(bytesScannedNode.GetText()).c_str()).c_str());
+ m_bytesScannedHasBeenSet = true;
+ }
+ XmlNode bytesProcessedNode = resultNode.FirstChild("BytesProcessed");
+ if(!bytesProcessedNode.IsNull())
+ {
+ m_bytesProcessed = StringUtils::ConvertToInt64(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(bytesProcessedNode.GetText()).c_str()).c_str());
+ m_bytesProcessedHasBeenSet = true;
+ }
+ XmlNode bytesReturnedNode = resultNode.FirstChild("BytesReturned");
+ if(!bytesReturnedNode.IsNull())
+ {
+ m_bytesReturned = StringUtils::ConvertToInt64(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(bytesReturnedNode.GetText()).c_str()).c_str());
+ m_bytesReturnedHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void Progress::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_bytesScannedHasBeenSet)
+ {
+ XmlNode bytesScannedNode = parentNode.CreateChildElement("BytesScanned");
+ ss << m_bytesScanned;
+ bytesScannedNode.SetText(ss.str());
+ ss.str("");
+ }
+
+ if(m_bytesProcessedHasBeenSet)
+ {
+ XmlNode bytesProcessedNode = parentNode.CreateChildElement("BytesProcessed");
+ ss << m_bytesProcessed;
+ bytesProcessedNode.SetText(ss.str());
+ ss.str("");
+ }
+
+ if(m_bytesReturnedHasBeenSet)
+ {
+ XmlNode bytesReturnedNode = parentNode.CreateChildElement("BytesReturned");
+ ss << m_bytesReturned;
+ bytesReturnedNode.SetText(ss.str());
+ ss.str("");
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ProgressEvent.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ProgressEvent.cpp
new file mode 100644
index 0000000000..86dde94c86
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ProgressEvent.cpp
@@ -0,0 +1,64 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ProgressEvent.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
+{
+
+ProgressEvent::ProgressEvent() :
+ m_detailsHasBeenSet(false)
+{
+}
+
+ProgressEvent::ProgressEvent(const XmlNode& xmlNode) :
+ m_detailsHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+ProgressEvent& ProgressEvent::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode detailsNode = resultNode;
+ if(!detailsNode.IsNull())
+ {
+ m_details = detailsNode;
+ m_detailsHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void ProgressEvent::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_detailsHasBeenSet)
+ {
+ XmlNode detailsNode = parentNode.CreateChildElement("Details");
+ m_details.AddToNode(detailsNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Protocol.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Protocol.cpp
new file mode 100644
index 0000000000..0c9c70d8c6
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Protocol.cpp
@@ -0,0 +1,70 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/Protocol.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 ProtocolMapper
+ {
+
+ static const int http_HASH = HashingUtils::HashString("http");
+ static const int https_HASH = HashingUtils::HashString("https");
+
+
+ Protocol GetProtocolForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == http_HASH)
+ {
+ return Protocol::http;
+ }
+ else if (hashCode == https_HASH)
+ {
+ return Protocol::https;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<Protocol>(hashCode);
+ }
+
+ return Protocol::NOT_SET;
+ }
+
+ Aws::String GetNameForProtocol(Protocol enumValue)
+ {
+ switch(enumValue)
+ {
+ case Protocol::http:
+ return "http";
+ case Protocol::https:
+ return "https";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace ProtocolMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PublicAccessBlockConfiguration.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PublicAccessBlockConfiguration.cpp
new file mode 100644
index 0000000000..258306dc4f
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PublicAccessBlockConfiguration.cpp
@@ -0,0 +1,122 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/PublicAccessBlockConfiguration.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
+{
+
+PublicAccessBlockConfiguration::PublicAccessBlockConfiguration() :
+ m_blockPublicAcls(false),
+ m_blockPublicAclsHasBeenSet(false),
+ m_ignorePublicAcls(false),
+ m_ignorePublicAclsHasBeenSet(false),
+ m_blockPublicPolicy(false),
+ m_blockPublicPolicyHasBeenSet(false),
+ m_restrictPublicBuckets(false),
+ m_restrictPublicBucketsHasBeenSet(false)
+{
+}
+
+PublicAccessBlockConfiguration::PublicAccessBlockConfiguration(const XmlNode& xmlNode) :
+ m_blockPublicAcls(false),
+ m_blockPublicAclsHasBeenSet(false),
+ m_ignorePublicAcls(false),
+ m_ignorePublicAclsHasBeenSet(false),
+ m_blockPublicPolicy(false),
+ m_blockPublicPolicyHasBeenSet(false),
+ m_restrictPublicBuckets(false),
+ m_restrictPublicBucketsHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+PublicAccessBlockConfiguration& PublicAccessBlockConfiguration::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode blockPublicAclsNode = resultNode.FirstChild("BlockPublicAcls");
+ if(!blockPublicAclsNode.IsNull())
+ {
+ m_blockPublicAcls = StringUtils::ConvertToBool(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(blockPublicAclsNode.GetText()).c_str()).c_str());
+ m_blockPublicAclsHasBeenSet = true;
+ }
+ XmlNode ignorePublicAclsNode = resultNode.FirstChild("IgnorePublicAcls");
+ if(!ignorePublicAclsNode.IsNull())
+ {
+ m_ignorePublicAcls = StringUtils::ConvertToBool(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(ignorePublicAclsNode.GetText()).c_str()).c_str());
+ m_ignorePublicAclsHasBeenSet = true;
+ }
+ XmlNode blockPublicPolicyNode = resultNode.FirstChild("BlockPublicPolicy");
+ if(!blockPublicPolicyNode.IsNull())
+ {
+ m_blockPublicPolicy = StringUtils::ConvertToBool(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(blockPublicPolicyNode.GetText()).c_str()).c_str());
+ m_blockPublicPolicyHasBeenSet = true;
+ }
+ XmlNode restrictPublicBucketsNode = resultNode.FirstChild("RestrictPublicBuckets");
+ if(!restrictPublicBucketsNode.IsNull())
+ {
+ m_restrictPublicBuckets = StringUtils::ConvertToBool(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(restrictPublicBucketsNode.GetText()).c_str()).c_str());
+ m_restrictPublicBucketsHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void PublicAccessBlockConfiguration::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_blockPublicAclsHasBeenSet)
+ {
+ XmlNode blockPublicAclsNode = parentNode.CreateChildElement("BlockPublicAcls");
+ ss << std::boolalpha << m_blockPublicAcls;
+ blockPublicAclsNode.SetText(ss.str());
+ ss.str("");
+ }
+
+ if(m_ignorePublicAclsHasBeenSet)
+ {
+ XmlNode ignorePublicAclsNode = parentNode.CreateChildElement("IgnorePublicAcls");
+ ss << std::boolalpha << m_ignorePublicAcls;
+ ignorePublicAclsNode.SetText(ss.str());
+ ss.str("");
+ }
+
+ if(m_blockPublicPolicyHasBeenSet)
+ {
+ XmlNode blockPublicPolicyNode = parentNode.CreateChildElement("BlockPublicPolicy");
+ ss << std::boolalpha << m_blockPublicPolicy;
+ blockPublicPolicyNode.SetText(ss.str());
+ ss.str("");
+ }
+
+ if(m_restrictPublicBucketsHasBeenSet)
+ {
+ XmlNode restrictPublicBucketsNode = parentNode.CreateChildElement("RestrictPublicBuckets");
+ ss << std::boolalpha << m_restrictPublicBuckets;
+ restrictPublicBucketsNode.SetText(ss.str());
+ ss.str("");
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
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
new file mode 100644
index 0000000000..15da0c32a1
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketAccelerateConfigurationRequest.cpp
@@ -0,0 +1,77 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/PutBucketAccelerateConfigurationRequest.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;
+
+PutBucketAccelerateConfigurationRequest::PutBucketAccelerateConfigurationRequest() :
+ m_bucketHasBeenSet(false),
+ m_accelerateConfigurationHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String PutBucketAccelerateConfigurationRequest::SerializePayload() const
+{
+ XmlDocument payloadDoc = XmlDocument::CreateWithRootNode("AccelerateConfiguration");
+
+ XmlNode parentNode = payloadDoc.GetRootElement();
+ parentNode.SetAttributeValue("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/");
+
+ m_accelerateConfiguration.AddToNode(parentNode);
+ if(parentNode.HasChildren())
+ {
+ return payloadDoc.ConvertToString();
+ }
+
+ return {};
+}
+
+void PutBucketAccelerateConfigurationRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 PutBucketAccelerateConfigurationRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
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
new file mode 100644
index 0000000000..5a3efcac19
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketAclRequest.cpp
@@ -0,0 +1,132 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/PutBucketAclRequest.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;
+
+PutBucketAclRequest::PutBucketAclRequest() :
+ m_aCL(BucketCannedACL::NOT_SET),
+ m_aCLHasBeenSet(false),
+ m_accessControlPolicyHasBeenSet(false),
+ m_bucketHasBeenSet(false),
+ m_contentMD5HasBeenSet(false),
+ m_grantFullControlHasBeenSet(false),
+ m_grantReadHasBeenSet(false),
+ m_grantReadACPHasBeenSet(false),
+ m_grantWriteHasBeenSet(false),
+ m_grantWriteACPHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String PutBucketAclRequest::SerializePayload() const
+{
+ XmlDocument payloadDoc = XmlDocument::CreateWithRootNode("AccessControlPolicy");
+
+ XmlNode parentNode = payloadDoc.GetRootElement();
+ parentNode.SetAttributeValue("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/");
+
+ m_accessControlPolicy.AddToNode(parentNode);
+ if(parentNode.HasChildren())
+ {
+ return payloadDoc.ConvertToString();
+ }
+
+ return {};
+}
+
+void PutBucketAclRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 PutBucketAclRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_aCLHasBeenSet)
+ {
+ headers.emplace("x-amz-acl", BucketCannedACLMapper::GetNameForBucketCannedACL(m_aCL));
+ }
+
+ if(m_contentMD5HasBeenSet)
+ {
+ ss << m_contentMD5;
+ headers.emplace("content-md5", ss.str());
+ ss.str("");
+ }
+
+ if(m_grantFullControlHasBeenSet)
+ {
+ ss << m_grantFullControl;
+ headers.emplace("x-amz-grant-full-control", ss.str());
+ ss.str("");
+ }
+
+ if(m_grantReadHasBeenSet)
+ {
+ ss << m_grantRead;
+ headers.emplace("x-amz-grant-read", ss.str());
+ ss.str("");
+ }
+
+ if(m_grantReadACPHasBeenSet)
+ {
+ ss << m_grantReadACP;
+ headers.emplace("x-amz-grant-read-acp", ss.str());
+ ss.str("");
+ }
+
+ if(m_grantWriteHasBeenSet)
+ {
+ ss << m_grantWrite;
+ headers.emplace("x-amz-grant-write", ss.str());
+ ss.str("");
+ }
+
+ if(m_grantWriteACPHasBeenSet)
+ {
+ ss << m_grantWriteACP;
+ headers.emplace("x-amz-grant-write-acp", ss.str());
+ ss.str("");
+ }
+
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
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
new file mode 100644
index 0000000000..73f9111f63
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketAnalyticsConfigurationRequest.cpp
@@ -0,0 +1,85 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/PutBucketAnalyticsConfigurationRequest.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;
+
+PutBucketAnalyticsConfigurationRequest::PutBucketAnalyticsConfigurationRequest() :
+ m_bucketHasBeenSet(false),
+ m_idHasBeenSet(false),
+ m_analyticsConfigurationHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String PutBucketAnalyticsConfigurationRequest::SerializePayload() const
+{
+ XmlDocument payloadDoc = XmlDocument::CreateWithRootNode("AnalyticsConfiguration");
+
+ XmlNode parentNode = payloadDoc.GetRootElement();
+ parentNode.SetAttributeValue("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/");
+
+ m_analyticsConfiguration.AddToNode(parentNode);
+ if(parentNode.HasChildren())
+ {
+ return payloadDoc.ConvertToString();
+ }
+
+ return {};
+}
+
+void PutBucketAnalyticsConfigurationRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ if(m_idHasBeenSet)
+ {
+ ss << m_id;
+ uri.AddQueryStringParameter("id", 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 PutBucketAnalyticsConfigurationRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
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
new file mode 100644
index 0000000000..6f90824e2c
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketCorsRequest.cpp
@@ -0,0 +1,85 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/PutBucketCorsRequest.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;
+
+PutBucketCorsRequest::PutBucketCorsRequest() :
+ m_bucketHasBeenSet(false),
+ m_cORSConfigurationHasBeenSet(false),
+ m_contentMD5HasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String PutBucketCorsRequest::SerializePayload() const
+{
+ XmlDocument payloadDoc = XmlDocument::CreateWithRootNode("CORSConfiguration");
+
+ XmlNode parentNode = payloadDoc.GetRootElement();
+ parentNode.SetAttributeValue("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/");
+
+ m_cORSConfiguration.AddToNode(parentNode);
+ if(parentNode.HasChildren())
+ {
+ return payloadDoc.ConvertToString();
+ }
+
+ return {};
+}
+
+void PutBucketCorsRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 PutBucketCorsRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_contentMD5HasBeenSet)
+ {
+ ss << m_contentMD5;
+ headers.emplace("content-md5", ss.str());
+ ss.str("");
+ }
+
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
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
new file mode 100644
index 0000000000..26b60f385e
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketEncryptionRequest.cpp
@@ -0,0 +1,85 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/PutBucketEncryptionRequest.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;
+
+PutBucketEncryptionRequest::PutBucketEncryptionRequest() :
+ m_bucketHasBeenSet(false),
+ m_contentMD5HasBeenSet(false),
+ m_serverSideEncryptionConfigurationHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String PutBucketEncryptionRequest::SerializePayload() const
+{
+ XmlDocument payloadDoc = XmlDocument::CreateWithRootNode("ServerSideEncryptionConfiguration");
+
+ XmlNode parentNode = payloadDoc.GetRootElement();
+ parentNode.SetAttributeValue("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/");
+
+ m_serverSideEncryptionConfiguration.AddToNode(parentNode);
+ if(parentNode.HasChildren())
+ {
+ return payloadDoc.ConvertToString();
+ }
+
+ return {};
+}
+
+void PutBucketEncryptionRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 PutBucketEncryptionRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_contentMD5HasBeenSet)
+ {
+ ss << m_contentMD5;
+ headers.emplace("content-md5", ss.str());
+ ss.str("");
+ }
+
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
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
new file mode 100644
index 0000000000..24bc947b71
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketIntelligentTieringConfigurationRequest.cpp
@@ -0,0 +1,71 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/PutBucketIntelligentTieringConfigurationRequest.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;
+
+PutBucketIntelligentTieringConfigurationRequest::PutBucketIntelligentTieringConfigurationRequest() :
+ m_bucketHasBeenSet(false),
+ m_idHasBeenSet(false),
+ m_intelligentTieringConfigurationHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String PutBucketIntelligentTieringConfigurationRequest::SerializePayload() const
+{
+ XmlDocument payloadDoc = XmlDocument::CreateWithRootNode("IntelligentTieringConfiguration");
+
+ XmlNode parentNode = payloadDoc.GetRootElement();
+ parentNode.SetAttributeValue("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/");
+
+ m_intelligentTieringConfiguration.AddToNode(parentNode);
+ if(parentNode.HasChildren())
+ {
+ return payloadDoc.ConvertToString();
+ }
+
+ return {};
+}
+
+void PutBucketIntelligentTieringConfigurationRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ if(m_idHasBeenSet)
+ {
+ ss << m_id;
+ uri.AddQueryStringParameter("id", 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);
+ }
+ }
+}
+
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
new file mode 100644
index 0000000000..31f0365528
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketInventoryConfigurationRequest.cpp
@@ -0,0 +1,85 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/PutBucketInventoryConfigurationRequest.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;
+
+PutBucketInventoryConfigurationRequest::PutBucketInventoryConfigurationRequest() :
+ m_bucketHasBeenSet(false),
+ m_idHasBeenSet(false),
+ m_inventoryConfigurationHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String PutBucketInventoryConfigurationRequest::SerializePayload() const
+{
+ XmlDocument payloadDoc = XmlDocument::CreateWithRootNode("InventoryConfiguration");
+
+ XmlNode parentNode = payloadDoc.GetRootElement();
+ parentNode.SetAttributeValue("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/");
+
+ m_inventoryConfiguration.AddToNode(parentNode);
+ if(parentNode.HasChildren())
+ {
+ return payloadDoc.ConvertToString();
+ }
+
+ return {};
+}
+
+void PutBucketInventoryConfigurationRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ if(m_idHasBeenSet)
+ {
+ ss << m_id;
+ uri.AddQueryStringParameter("id", 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 PutBucketInventoryConfigurationRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
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
new file mode 100644
index 0000000000..2d8b5471f2
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketLifecycleConfigurationRequest.cpp
@@ -0,0 +1,77 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/PutBucketLifecycleConfigurationRequest.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;
+
+PutBucketLifecycleConfigurationRequest::PutBucketLifecycleConfigurationRequest() :
+ m_bucketHasBeenSet(false),
+ m_lifecycleConfigurationHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String PutBucketLifecycleConfigurationRequest::SerializePayload() const
+{
+ XmlDocument payloadDoc = XmlDocument::CreateWithRootNode("LifecycleConfiguration");
+
+ XmlNode parentNode = payloadDoc.GetRootElement();
+ parentNode.SetAttributeValue("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/");
+
+ m_lifecycleConfiguration.AddToNode(parentNode);
+ if(parentNode.HasChildren())
+ {
+ return payloadDoc.ConvertToString();
+ }
+
+ return {};
+}
+
+void PutBucketLifecycleConfigurationRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 PutBucketLifecycleConfigurationRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
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
new file mode 100644
index 0000000000..1057a8f122
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketLoggingRequest.cpp
@@ -0,0 +1,85 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/PutBucketLoggingRequest.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;
+
+PutBucketLoggingRequest::PutBucketLoggingRequest() :
+ m_bucketHasBeenSet(false),
+ m_bucketLoggingStatusHasBeenSet(false),
+ m_contentMD5HasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String PutBucketLoggingRequest::SerializePayload() const
+{
+ XmlDocument payloadDoc = XmlDocument::CreateWithRootNode("BucketLoggingStatus");
+
+ XmlNode parentNode = payloadDoc.GetRootElement();
+ parentNode.SetAttributeValue("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/");
+
+ m_bucketLoggingStatus.AddToNode(parentNode);
+ if(parentNode.HasChildren())
+ {
+ return payloadDoc.ConvertToString();
+ }
+
+ return {};
+}
+
+void PutBucketLoggingRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 PutBucketLoggingRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_contentMD5HasBeenSet)
+ {
+ ss << m_contentMD5;
+ headers.emplace("content-md5", ss.str());
+ ss.str("");
+ }
+
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
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
new file mode 100644
index 0000000000..48e5714b3a
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketMetricsConfigurationRequest.cpp
@@ -0,0 +1,85 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/PutBucketMetricsConfigurationRequest.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;
+
+PutBucketMetricsConfigurationRequest::PutBucketMetricsConfigurationRequest() :
+ m_bucketHasBeenSet(false),
+ m_idHasBeenSet(false),
+ m_metricsConfigurationHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String PutBucketMetricsConfigurationRequest::SerializePayload() const
+{
+ XmlDocument payloadDoc = XmlDocument::CreateWithRootNode("MetricsConfiguration");
+
+ XmlNode parentNode = payloadDoc.GetRootElement();
+ parentNode.SetAttributeValue("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/");
+
+ m_metricsConfiguration.AddToNode(parentNode);
+ if(parentNode.HasChildren())
+ {
+ return payloadDoc.ConvertToString();
+ }
+
+ return {};
+}
+
+void PutBucketMetricsConfigurationRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ if(m_idHasBeenSet)
+ {
+ ss << m_id;
+ uri.AddQueryStringParameter("id", 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 PutBucketMetricsConfigurationRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
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
new file mode 100644
index 0000000000..52f921af4f
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketNotificationConfigurationRequest.cpp
@@ -0,0 +1,73 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/PutBucketNotificationConfigurationRequest.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;
+
+PutBucketNotificationConfigurationRequest::PutBucketNotificationConfigurationRequest() :
+ m_bucketHasBeenSet(false),
+ m_notificationConfigurationHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String PutBucketNotificationConfigurationRequest::SerializePayload() const
+{
+ XmlDocument payloadDoc = XmlDocument::CreateWithRootNode("NotificationConfiguration");
+
+ XmlNode parentNode = payloadDoc.GetRootElement();
+ parentNode.SetAttributeValue("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/");
+
+ m_notificationConfiguration.AddToNode(parentNode);
+
+ return payloadDoc.ConvertToString();
+}
+
+void PutBucketNotificationConfigurationRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 PutBucketNotificationConfigurationRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
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
new file mode 100644
index 0000000000..5a6119e233
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketOwnershipControlsRequest.cpp
@@ -0,0 +1,85 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/PutBucketOwnershipControlsRequest.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;
+
+PutBucketOwnershipControlsRequest::PutBucketOwnershipControlsRequest() :
+ m_bucketHasBeenSet(false),
+ m_contentMD5HasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_ownershipControlsHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String PutBucketOwnershipControlsRequest::SerializePayload() const
+{
+ XmlDocument payloadDoc = XmlDocument::CreateWithRootNode("OwnershipControls");
+
+ XmlNode parentNode = payloadDoc.GetRootElement();
+ parentNode.SetAttributeValue("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/");
+
+ m_ownershipControls.AddToNode(parentNode);
+ if(parentNode.HasChildren())
+ {
+ return payloadDoc.ConvertToString();
+ }
+
+ return {};
+}
+
+void PutBucketOwnershipControlsRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 PutBucketOwnershipControlsRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_contentMD5HasBeenSet)
+ {
+ ss << m_contentMD5;
+ headers.emplace("content-md5", ss.str());
+ ss.str("");
+ }
+
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
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
new file mode 100644
index 0000000000..ce52fa7cd8
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketPolicyRequest.cpp
@@ -0,0 +1,79 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/PutBucketPolicyRequest.h>
+#include <aws/core/AmazonWebServiceResult.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::Stream;
+using namespace Aws::Utils;
+using namespace Aws::Http;
+using namespace Aws;
+
+PutBucketPolicyRequest::PutBucketPolicyRequest() :
+ m_bucketHasBeenSet(false),
+ m_contentMD5HasBeenSet(false),
+ m_confirmRemoveSelfBucketAccess(false),
+ m_confirmRemoveSelfBucketAccessHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+
+void PutBucketPolicyRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 PutBucketPolicyRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_contentMD5HasBeenSet)
+ {
+ ss << m_contentMD5;
+ headers.emplace("content-md5", ss.str());
+ ss.str("");
+ }
+
+ if(m_confirmRemoveSelfBucketAccessHasBeenSet)
+ {
+ ss << m_confirmRemoveSelfBucketAccess;
+ headers.emplace("x-amz-confirm-remove-self-bucket-access", ss.str());
+ ss.str("");
+ }
+
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+
+}
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
new file mode 100644
index 0000000000..44244a8560
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketReplicationRequest.cpp
@@ -0,0 +1,93 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/PutBucketReplicationRequest.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;
+
+PutBucketReplicationRequest::PutBucketReplicationRequest() :
+ m_bucketHasBeenSet(false),
+ m_contentMD5HasBeenSet(false),
+ m_replicationConfigurationHasBeenSet(false),
+ m_tokenHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String PutBucketReplicationRequest::SerializePayload() const
+{
+ XmlDocument payloadDoc = XmlDocument::CreateWithRootNode("ReplicationConfiguration");
+
+ XmlNode parentNode = payloadDoc.GetRootElement();
+ parentNode.SetAttributeValue("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/");
+
+ m_replicationConfiguration.AddToNode(parentNode);
+ if(parentNode.HasChildren())
+ {
+ return payloadDoc.ConvertToString();
+ }
+
+ return {};
+}
+
+void PutBucketReplicationRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 PutBucketReplicationRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_contentMD5HasBeenSet)
+ {
+ ss << m_contentMD5;
+ headers.emplace("content-md5", ss.str());
+ ss.str("");
+ }
+
+ if(m_tokenHasBeenSet)
+ {
+ ss << m_token;
+ headers.emplace("x-amz-bucket-object-lock-token", ss.str());
+ ss.str("");
+ }
+
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
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
new file mode 100644
index 0000000000..f6be9cc855
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketRequestPaymentRequest.cpp
@@ -0,0 +1,85 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/PutBucketRequestPaymentRequest.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;
+
+PutBucketRequestPaymentRequest::PutBucketRequestPaymentRequest() :
+ m_bucketHasBeenSet(false),
+ m_contentMD5HasBeenSet(false),
+ m_requestPaymentConfigurationHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String PutBucketRequestPaymentRequest::SerializePayload() const
+{
+ XmlDocument payloadDoc = XmlDocument::CreateWithRootNode("RequestPaymentConfiguration");
+
+ XmlNode parentNode = payloadDoc.GetRootElement();
+ parentNode.SetAttributeValue("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/");
+
+ m_requestPaymentConfiguration.AddToNode(parentNode);
+ if(parentNode.HasChildren())
+ {
+ return payloadDoc.ConvertToString();
+ }
+
+ return {};
+}
+
+void PutBucketRequestPaymentRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 PutBucketRequestPaymentRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_contentMD5HasBeenSet)
+ {
+ ss << m_contentMD5;
+ headers.emplace("content-md5", ss.str());
+ ss.str("");
+ }
+
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
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
new file mode 100644
index 0000000000..748ede6e75
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketTaggingRequest.cpp
@@ -0,0 +1,85 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/PutBucketTaggingRequest.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;
+
+PutBucketTaggingRequest::PutBucketTaggingRequest() :
+ m_bucketHasBeenSet(false),
+ m_contentMD5HasBeenSet(false),
+ m_taggingHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String PutBucketTaggingRequest::SerializePayload() const
+{
+ XmlDocument payloadDoc = XmlDocument::CreateWithRootNode("Tagging");
+
+ XmlNode parentNode = payloadDoc.GetRootElement();
+ parentNode.SetAttributeValue("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/");
+
+ m_tagging.AddToNode(parentNode);
+ if(parentNode.HasChildren())
+ {
+ return payloadDoc.ConvertToString();
+ }
+
+ return {};
+}
+
+void PutBucketTaggingRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 PutBucketTaggingRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_contentMD5HasBeenSet)
+ {
+ ss << m_contentMD5;
+ headers.emplace("content-md5", ss.str());
+ ss.str("");
+ }
+
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
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
new file mode 100644
index 0000000000..5e72efb1e1
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketVersioningRequest.cpp
@@ -0,0 +1,93 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/PutBucketVersioningRequest.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;
+
+PutBucketVersioningRequest::PutBucketVersioningRequest() :
+ m_bucketHasBeenSet(false),
+ m_contentMD5HasBeenSet(false),
+ m_mFAHasBeenSet(false),
+ m_versioningConfigurationHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String PutBucketVersioningRequest::SerializePayload() const
+{
+ XmlDocument payloadDoc = XmlDocument::CreateWithRootNode("VersioningConfiguration");
+
+ XmlNode parentNode = payloadDoc.GetRootElement();
+ parentNode.SetAttributeValue("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/");
+
+ m_versioningConfiguration.AddToNode(parentNode);
+ if(parentNode.HasChildren())
+ {
+ return payloadDoc.ConvertToString();
+ }
+
+ return {};
+}
+
+void PutBucketVersioningRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 PutBucketVersioningRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_contentMD5HasBeenSet)
+ {
+ ss << m_contentMD5;
+ headers.emplace("content-md5", ss.str());
+ ss.str("");
+ }
+
+ if(m_mFAHasBeenSet)
+ {
+ ss << m_mFA;
+ headers.emplace("x-amz-mfa", ss.str());
+ ss.str("");
+ }
+
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
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
new file mode 100644
index 0000000000..d20032e466
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutBucketWebsiteRequest.cpp
@@ -0,0 +1,85 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/PutBucketWebsiteRequest.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;
+
+PutBucketWebsiteRequest::PutBucketWebsiteRequest() :
+ m_bucketHasBeenSet(false),
+ m_contentMD5HasBeenSet(false),
+ m_websiteConfigurationHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String PutBucketWebsiteRequest::SerializePayload() const
+{
+ XmlDocument payloadDoc = XmlDocument::CreateWithRootNode("WebsiteConfiguration");
+
+ XmlNode parentNode = payloadDoc.GetRootElement();
+ parentNode.SetAttributeValue("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/");
+
+ m_websiteConfiguration.AddToNode(parentNode);
+ if(parentNode.HasChildren())
+ {
+ return payloadDoc.ConvertToString();
+ }
+
+ return {};
+}
+
+void PutBucketWebsiteRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 PutBucketWebsiteRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_contentMD5HasBeenSet)
+ {
+ ss << m_contentMD5;
+ headers.emplace("content-md5", ss.str());
+ ss.str("");
+ }
+
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
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
new file mode 100644
index 0000000000..5dbd1a3fa6
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectAclRequest.cpp
@@ -0,0 +1,148 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/PutObjectAclRequest.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;
+
+PutObjectAclRequest::PutObjectAclRequest() :
+ m_aCL(ObjectCannedACL::NOT_SET),
+ m_aCLHasBeenSet(false),
+ m_accessControlPolicyHasBeenSet(false),
+ m_bucketHasBeenSet(false),
+ m_contentMD5HasBeenSet(false),
+ m_grantFullControlHasBeenSet(false),
+ m_grantReadHasBeenSet(false),
+ m_grantReadACPHasBeenSet(false),
+ m_grantWriteHasBeenSet(false),
+ m_grantWriteACPHasBeenSet(false),
+ m_keyHasBeenSet(false),
+ m_requestPayer(RequestPayer::NOT_SET),
+ m_requestPayerHasBeenSet(false),
+ m_versionIdHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String PutObjectAclRequest::SerializePayload() const
+{
+ XmlDocument payloadDoc = XmlDocument::CreateWithRootNode("AccessControlPolicy");
+
+ XmlNode parentNode = payloadDoc.GetRootElement();
+ parentNode.SetAttributeValue("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/");
+
+ m_accessControlPolicy.AddToNode(parentNode);
+ if(parentNode.HasChildren())
+ {
+ return payloadDoc.ConvertToString();
+ }
+
+ return {};
+}
+
+void PutObjectAclRequest::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 PutObjectAclRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_aCLHasBeenSet)
+ {
+ headers.emplace("x-amz-acl", ObjectCannedACLMapper::GetNameForObjectCannedACL(m_aCL));
+ }
+
+ if(m_contentMD5HasBeenSet)
+ {
+ ss << m_contentMD5;
+ headers.emplace("content-md5", ss.str());
+ ss.str("");
+ }
+
+ if(m_grantFullControlHasBeenSet)
+ {
+ ss << m_grantFullControl;
+ headers.emplace("x-amz-grant-full-control", ss.str());
+ ss.str("");
+ }
+
+ if(m_grantReadHasBeenSet)
+ {
+ ss << m_grantRead;
+ headers.emplace("x-amz-grant-read", ss.str());
+ ss.str("");
+ }
+
+ if(m_grantReadACPHasBeenSet)
+ {
+ ss << m_grantReadACP;
+ headers.emplace("x-amz-grant-read-acp", ss.str());
+ ss.str("");
+ }
+
+ if(m_grantWriteHasBeenSet)
+ {
+ ss << m_grantWrite;
+ headers.emplace("x-amz-grant-write", ss.str());
+ ss.str("");
+ }
+
+ if(m_grantWriteACPHasBeenSet)
+ {
+ ss << m_grantWriteACP;
+ headers.emplace("x-amz-grant-write-acp", 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("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectAclResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectAclResult.cpp
new file mode 100644
index 0000000000..47034f81db
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectAclResult.cpp
@@ -0,0 +1,47 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/PutObjectAclResult.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;
+
+PutObjectAclResult::PutObjectAclResult() :
+ m_requestCharged(RequestCharged::NOT_SET)
+{
+}
+
+PutObjectAclResult::PutObjectAclResult(const Aws::AmazonWebServiceResult<XmlDocument>& result) :
+ m_requestCharged(RequestCharged::NOT_SET)
+{
+ *this = result;
+}
+
+PutObjectAclResult& PutObjectAclResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ }
+
+ const auto& headers = result.GetHeaderValueCollection();
+ 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/PutObjectLegalHoldRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectLegalHoldRequest.cpp
new file mode 100644
index 0000000000..8c07b952d7
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectLegalHoldRequest.cpp
@@ -0,0 +1,101 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/PutObjectLegalHoldRequest.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;
+
+PutObjectLegalHoldRequest::PutObjectLegalHoldRequest() :
+ m_bucketHasBeenSet(false),
+ m_keyHasBeenSet(false),
+ m_legalHoldHasBeenSet(false),
+ m_requestPayer(RequestPayer::NOT_SET),
+ m_requestPayerHasBeenSet(false),
+ m_versionIdHasBeenSet(false),
+ m_contentMD5HasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String PutObjectLegalHoldRequest::SerializePayload() const
+{
+ XmlDocument payloadDoc = XmlDocument::CreateWithRootNode("LegalHold");
+
+ XmlNode parentNode = payloadDoc.GetRootElement();
+ parentNode.SetAttributeValue("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/");
+
+ m_legalHold.AddToNode(parentNode);
+ if(parentNode.HasChildren())
+ {
+ return payloadDoc.ConvertToString();
+ }
+
+ return {};
+}
+
+void PutObjectLegalHoldRequest::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 PutObjectLegalHoldRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_requestPayerHasBeenSet)
+ {
+ headers.emplace("x-amz-request-payer", RequestPayerMapper::GetNameForRequestPayer(m_requestPayer));
+ }
+
+ if(m_contentMD5HasBeenSet)
+ {
+ ss << m_contentMD5;
+ headers.emplace("content-md5", ss.str());
+ ss.str("");
+ }
+
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectLegalHoldResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectLegalHoldResult.cpp
new file mode 100644
index 0000000000..10e4ad8d41
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectLegalHoldResult.cpp
@@ -0,0 +1,47 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/PutObjectLegalHoldResult.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;
+
+PutObjectLegalHoldResult::PutObjectLegalHoldResult() :
+ m_requestCharged(RequestCharged::NOT_SET)
+{
+}
+
+PutObjectLegalHoldResult::PutObjectLegalHoldResult(const Aws::AmazonWebServiceResult<XmlDocument>& result) :
+ m_requestCharged(RequestCharged::NOT_SET)
+{
+ *this = result;
+}
+
+PutObjectLegalHoldResult& PutObjectLegalHoldResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ }
+
+ const auto& headers = result.GetHeaderValueCollection();
+ 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/PutObjectLockConfigurationRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectLockConfigurationRequest.cpp
new file mode 100644
index 0000000000..347b9e668d
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectLockConfigurationRequest.cpp
@@ -0,0 +1,100 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/PutObjectLockConfigurationRequest.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;
+
+PutObjectLockConfigurationRequest::PutObjectLockConfigurationRequest() :
+ m_bucketHasBeenSet(false),
+ m_objectLockConfigurationHasBeenSet(false),
+ m_requestPayer(RequestPayer::NOT_SET),
+ m_requestPayerHasBeenSet(false),
+ m_tokenHasBeenSet(false),
+ m_contentMD5HasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String PutObjectLockConfigurationRequest::SerializePayload() const
+{
+ XmlDocument payloadDoc = XmlDocument::CreateWithRootNode("ObjectLockConfiguration");
+
+ XmlNode parentNode = payloadDoc.GetRootElement();
+ parentNode.SetAttributeValue("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/");
+
+ m_objectLockConfiguration.AddToNode(parentNode);
+ if(parentNode.HasChildren())
+ {
+ return payloadDoc.ConvertToString();
+ }
+
+ return {};
+}
+
+void PutObjectLockConfigurationRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 PutObjectLockConfigurationRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_requestPayerHasBeenSet)
+ {
+ headers.emplace("x-amz-request-payer", RequestPayerMapper::GetNameForRequestPayer(m_requestPayer));
+ }
+
+ if(m_tokenHasBeenSet)
+ {
+ ss << m_token;
+ headers.emplace("x-amz-bucket-object-lock-token", ss.str());
+ ss.str("");
+ }
+
+ if(m_contentMD5HasBeenSet)
+ {
+ ss << m_contentMD5;
+ headers.emplace("content-md5", ss.str());
+ ss.str("");
+ }
+
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectLockConfigurationResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectLockConfigurationResult.cpp
new file mode 100644
index 0000000000..6beae5855d
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectLockConfigurationResult.cpp
@@ -0,0 +1,47 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/PutObjectLockConfigurationResult.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;
+
+PutObjectLockConfigurationResult::PutObjectLockConfigurationResult() :
+ m_requestCharged(RequestCharged::NOT_SET)
+{
+}
+
+PutObjectLockConfigurationResult::PutObjectLockConfigurationResult(const Aws::AmazonWebServiceResult<XmlDocument>& result) :
+ m_requestCharged(RequestCharged::NOT_SET)
+{
+ *this = result;
+}
+
+PutObjectLockConfigurationResult& PutObjectLockConfigurationResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ }
+
+ const auto& headers = result.GetHeaderValueCollection();
+ 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/PutObjectRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectRequest.cpp
new file mode 100644
index 0000000000..1a3f34b3e8
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectRequest.cpp
@@ -0,0 +1,275 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/PutObjectRequest.h>
+#include <aws/core/AmazonWebServiceResult.h>
+#include <aws/core/http/URI.h>
+#include <aws/core/utils/memory/stl/AWSStringStream.h>
+#include <aws/core/utils/HashingUtils.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Stream;
+using namespace Aws::Utils;
+using namespace Aws::Http;
+using namespace Aws;
+
+PutObjectRequest::PutObjectRequest() :
+ m_aCL(ObjectCannedACL::NOT_SET),
+ m_aCLHasBeenSet(false),
+ m_bucketHasBeenSet(false),
+ m_cacheControlHasBeenSet(false),
+ m_contentDispositionHasBeenSet(false),
+ m_contentEncodingHasBeenSet(false),
+ m_contentLanguageHasBeenSet(false),
+ m_contentLength(0),
+ m_contentLengthHasBeenSet(false),
+ m_contentMD5HasBeenSet(false),
+ m_expiresHasBeenSet(false),
+ m_grantFullControlHasBeenSet(false),
+ m_grantReadHasBeenSet(false),
+ m_grantReadACPHasBeenSet(false),
+ m_grantWriteACPHasBeenSet(false),
+ m_keyHasBeenSet(false),
+ m_metadataHasBeenSet(false),
+ m_serverSideEncryption(ServerSideEncryption::NOT_SET),
+ m_serverSideEncryptionHasBeenSet(false),
+ m_storageClass(StorageClass::NOT_SET),
+ m_storageClassHasBeenSet(false),
+ m_websiteRedirectLocationHasBeenSet(false),
+ m_sSECustomerAlgorithmHasBeenSet(false),
+ m_sSECustomerKeyHasBeenSet(false),
+ m_sSECustomerKeyMD5HasBeenSet(false),
+ m_sSEKMSKeyIdHasBeenSet(false),
+ m_sSEKMSEncryptionContextHasBeenSet(false),
+ m_bucketKeyEnabled(false),
+ m_bucketKeyEnabledHasBeenSet(false),
+ m_requestPayer(RequestPayer::NOT_SET),
+ m_requestPayerHasBeenSet(false),
+ m_taggingHasBeenSet(false),
+ m_objectLockMode(ObjectLockMode::NOT_SET),
+ m_objectLockModeHasBeenSet(false),
+ m_objectLockRetainUntilDateHasBeenSet(false),
+ m_objectLockLegalHoldStatus(ObjectLockLegalHoldStatus::NOT_SET),
+ m_objectLockLegalHoldStatusHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+
+void PutObjectRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 PutObjectRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_aCLHasBeenSet)
+ {
+ headers.emplace("x-amz-acl", ObjectCannedACLMapper::GetNameForObjectCannedACL(m_aCL));
+ }
+
+ if(m_cacheControlHasBeenSet)
+ {
+ ss << m_cacheControl;
+ headers.emplace("cache-control", ss.str());
+ ss.str("");
+ }
+
+ if(m_contentDispositionHasBeenSet)
+ {
+ ss << m_contentDisposition;
+ headers.emplace("content-disposition", ss.str());
+ ss.str("");
+ }
+
+ if(m_contentEncodingHasBeenSet)
+ {
+ ss << m_contentEncoding;
+ headers.emplace("content-encoding", ss.str());
+ ss.str("");
+ }
+
+ if(m_contentLanguageHasBeenSet)
+ {
+ ss << m_contentLanguage;
+ headers.emplace("content-language", ss.str());
+ ss.str("");
+ }
+
+ if(m_contentLengthHasBeenSet)
+ {
+ ss << m_contentLength;
+ headers.emplace("content-length", ss.str());
+ ss.str("");
+ }
+
+ if(m_contentMD5HasBeenSet)
+ {
+ ss << m_contentMD5;
+ headers.emplace("content-md5", ss.str());
+ ss.str("");
+ }
+
+ if(m_expiresHasBeenSet)
+ {
+ headers.emplace("expires", m_expires.ToGmtString(DateFormat::RFC822));
+ }
+
+ if(m_grantFullControlHasBeenSet)
+ {
+ ss << m_grantFullControl;
+ headers.emplace("x-amz-grant-full-control", ss.str());
+ ss.str("");
+ }
+
+ if(m_grantReadHasBeenSet)
+ {
+ ss << m_grantRead;
+ headers.emplace("x-amz-grant-read", ss.str());
+ ss.str("");
+ }
+
+ if(m_grantReadACPHasBeenSet)
+ {
+ ss << m_grantReadACP;
+ headers.emplace("x-amz-grant-read-acp", ss.str());
+ ss.str("");
+ }
+
+ if(m_grantWriteACPHasBeenSet)
+ {
+ ss << m_grantWriteACP;
+ headers.emplace("x-amz-grant-write-acp", ss.str());
+ ss.str("");
+ }
+
+ if(m_metadataHasBeenSet)
+ {
+ for(const auto& item : m_metadata)
+ {
+ ss << "x-amz-meta-" << item.first;
+ headers.emplace(ss.str(), item.second);
+ ss.str("");
+ }
+ }
+
+ if(m_serverSideEncryptionHasBeenSet)
+ {
+ headers.emplace("x-amz-server-side-encryption", ServerSideEncryptionMapper::GetNameForServerSideEncryption(m_serverSideEncryption));
+ }
+
+ if(m_storageClassHasBeenSet)
+ {
+ headers.emplace("x-amz-storage-class", StorageClassMapper::GetNameForStorageClass(m_storageClass));
+ }
+
+ if(m_websiteRedirectLocationHasBeenSet)
+ {
+ ss << m_websiteRedirectLocation;
+ headers.emplace("x-amz-website-redirect-location", 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_sSEKMSKeyIdHasBeenSet)
+ {
+ ss << m_sSEKMSKeyId;
+ headers.emplace("x-amz-server-side-encryption-aws-kms-key-id", ss.str());
+ ss.str("");
+ }
+
+ if(m_sSEKMSEncryptionContextHasBeenSet)
+ {
+ ss << m_sSEKMSEncryptionContext;
+ headers.emplace("x-amz-server-side-encryption-context", ss.str());
+ ss.str("");
+ }
+
+ if(m_bucketKeyEnabledHasBeenSet)
+ {
+ ss << m_bucketKeyEnabled;
+ headers.emplace("x-amz-server-side-encryption-bucket-key-enabled", ss.str());
+ ss.str("");
+ }
+
+ if(m_requestPayerHasBeenSet)
+ {
+ headers.emplace("x-amz-request-payer", RequestPayerMapper::GetNameForRequestPayer(m_requestPayer));
+ }
+
+ if(m_taggingHasBeenSet)
+ {
+ ss << m_tagging;
+ headers.emplace("x-amz-tagging", ss.str());
+ ss.str("");
+ }
+
+ if(m_objectLockModeHasBeenSet)
+ {
+ headers.emplace("x-amz-object-lock-mode", ObjectLockModeMapper::GetNameForObjectLockMode(m_objectLockMode));
+ }
+
+ if(m_objectLockRetainUntilDateHasBeenSet)
+ {
+ headers.emplace("x-amz-object-lock-retain-until-date", m_objectLockRetainUntilDate.ToGmtString(DateFormat::RFC822));
+ }
+
+ if(m_objectLockLegalHoldStatusHasBeenSet)
+ {
+ headers.emplace("x-amz-object-lock-legal-hold", ObjectLockLegalHoldStatusMapper::GetNameForObjectLockLegalHoldStatus(m_objectLockLegalHoldStatus));
+ }
+
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+
+}
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
new file mode 100644
index 0000000000..0dfcb17280
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectResult.cpp
@@ -0,0 +1,105 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/PutObjectResult.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;
+
+PutObjectResult::PutObjectResult() :
+ m_serverSideEncryption(ServerSideEncryption::NOT_SET),
+ m_bucketKeyEnabled(false),
+ m_requestCharged(RequestCharged::NOT_SET)
+{
+}
+
+PutObjectResult::PutObjectResult(const Aws::AmazonWebServiceResult<XmlDocument>& result) :
+ m_serverSideEncryption(ServerSideEncryption::NOT_SET),
+ m_bucketKeyEnabled(false),
+ m_requestCharged(RequestCharged::NOT_SET)
+{
+ *this = result;
+}
+
+PutObjectResult& PutObjectResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ }
+
+ const auto& headers = result.GetHeaderValueCollection();
+ const auto& expirationIter = headers.find("x-amz-expiration");
+ if(expirationIter != headers.end())
+ {
+ m_expiration = expirationIter->second;
+ }
+
+ const auto& eTagIter = headers.find("etag");
+ if(eTagIter != headers.end())
+ {
+ m_eTag = eTagIter->second;
+ }
+
+ const auto& serverSideEncryptionIter = headers.find("x-amz-server-side-encryption");
+ if(serverSideEncryptionIter != headers.end())
+ {
+ m_serverSideEncryption = ServerSideEncryptionMapper::GetServerSideEncryptionForName(serverSideEncryptionIter->second);
+ }
+
+ const auto& versionIdIter = headers.find("x-amz-version-id");
+ if(versionIdIter != headers.end())
+ {
+ m_versionId = versionIdIter->second;
+ }
+
+ const auto& sSECustomerAlgorithmIter = headers.find("x-amz-server-side-encryption-customer-algorithm");
+ if(sSECustomerAlgorithmIter != headers.end())
+ {
+ m_sSECustomerAlgorithm = sSECustomerAlgorithmIter->second;
+ }
+
+ const auto& sSECustomerKeyMD5Iter = headers.find("x-amz-server-side-encryption-customer-key-md5");
+ if(sSECustomerKeyMD5Iter != headers.end())
+ {
+ m_sSECustomerKeyMD5 = sSECustomerKeyMD5Iter->second;
+ }
+
+ const auto& sSEKMSKeyIdIter = headers.find("x-amz-server-side-encryption-aws-kms-key-id");
+ if(sSEKMSKeyIdIter != headers.end())
+ {
+ m_sSEKMSKeyId = sSEKMSKeyIdIter->second;
+ }
+
+ const auto& sSEKMSEncryptionContextIter = headers.find("x-amz-server-side-encryption-context");
+ if(sSEKMSEncryptionContextIter != headers.end())
+ {
+ m_sSEKMSEncryptionContext = sSEKMSEncryptionContextIter->second;
+ }
+
+ const auto& bucketKeyEnabledIter = headers.find("x-amz-server-side-encryption-bucket-key-enabled");
+ if(bucketKeyEnabledIter != headers.end())
+ {
+ m_bucketKeyEnabled = StringUtils::ConvertToBool(bucketKeyEnabledIter->second.c_str());
+ }
+
+ 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/PutObjectRetentionRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectRetentionRequest.cpp
new file mode 100644
index 0000000000..1c0101a0c4
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectRetentionRequest.cpp
@@ -0,0 +1,110 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/PutObjectRetentionRequest.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;
+
+PutObjectRetentionRequest::PutObjectRetentionRequest() :
+ m_bucketHasBeenSet(false),
+ m_keyHasBeenSet(false),
+ m_retentionHasBeenSet(false),
+ m_requestPayer(RequestPayer::NOT_SET),
+ m_requestPayerHasBeenSet(false),
+ m_versionIdHasBeenSet(false),
+ m_bypassGovernanceRetention(false),
+ m_bypassGovernanceRetentionHasBeenSet(false),
+ m_contentMD5HasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String PutObjectRetentionRequest::SerializePayload() const
+{
+ XmlDocument payloadDoc = XmlDocument::CreateWithRootNode("Retention");
+
+ XmlNode parentNode = payloadDoc.GetRootElement();
+ parentNode.SetAttributeValue("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/");
+
+ m_retention.AddToNode(parentNode);
+ if(parentNode.HasChildren())
+ {
+ return payloadDoc.ConvertToString();
+ }
+
+ return {};
+}
+
+void PutObjectRetentionRequest::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 PutObjectRetentionRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_requestPayerHasBeenSet)
+ {
+ headers.emplace("x-amz-request-payer", RequestPayerMapper::GetNameForRequestPayer(m_requestPayer));
+ }
+
+ if(m_bypassGovernanceRetentionHasBeenSet)
+ {
+ ss << m_bypassGovernanceRetention;
+ headers.emplace("x-amz-bypass-governance-retention", ss.str());
+ ss.str("");
+ }
+
+ if(m_contentMD5HasBeenSet)
+ {
+ ss << m_contentMD5;
+ headers.emplace("content-md5", ss.str());
+ ss.str("");
+ }
+
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectRetentionResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectRetentionResult.cpp
new file mode 100644
index 0000000000..c1cd49d9b6
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectRetentionResult.cpp
@@ -0,0 +1,47 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/PutObjectRetentionResult.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;
+
+PutObjectRetentionResult::PutObjectRetentionResult() :
+ m_requestCharged(RequestCharged::NOT_SET)
+{
+}
+
+PutObjectRetentionResult::PutObjectRetentionResult(const Aws::AmazonWebServiceResult<XmlDocument>& result) :
+ m_requestCharged(RequestCharged::NOT_SET)
+{
+ *this = result;
+}
+
+PutObjectRetentionResult& PutObjectRetentionResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ }
+
+ const auto& headers = result.GetHeaderValueCollection();
+ 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/PutObjectTaggingRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectTaggingRequest.cpp
new file mode 100644
index 0000000000..d93c0108ea
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectTaggingRequest.cpp
@@ -0,0 +1,94 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/PutObjectTaggingRequest.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;
+
+PutObjectTaggingRequest::PutObjectTaggingRequest() :
+ m_bucketHasBeenSet(false),
+ m_keyHasBeenSet(false),
+ m_versionIdHasBeenSet(false),
+ m_contentMD5HasBeenSet(false),
+ m_taggingHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String PutObjectTaggingRequest::SerializePayload() const
+{
+ XmlDocument payloadDoc = XmlDocument::CreateWithRootNode("Tagging");
+
+ XmlNode parentNode = payloadDoc.GetRootElement();
+ parentNode.SetAttributeValue("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/");
+
+ m_tagging.AddToNode(parentNode);
+ if(parentNode.HasChildren())
+ {
+ return payloadDoc.ConvertToString();
+ }
+
+ return {};
+}
+
+void PutObjectTaggingRequest::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 PutObjectTaggingRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_contentMD5HasBeenSet)
+ {
+ ss << m_contentMD5;
+ headers.emplace("content-md5", ss.str());
+ ss.str("");
+ }
+
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectTaggingResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectTaggingResult.cpp
new file mode 100644
index 0000000000..29e1919119
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutObjectTaggingResult.cpp
@@ -0,0 +1,45 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/PutObjectTaggingResult.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;
+
+PutObjectTaggingResult::PutObjectTaggingResult()
+{
+}
+
+PutObjectTaggingResult::PutObjectTaggingResult(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ *this = result;
+}
+
+PutObjectTaggingResult& PutObjectTaggingResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ }
+
+ const auto& headers = result.GetHeaderValueCollection();
+ const auto& versionIdIter = headers.find("x-amz-version-id");
+ if(versionIdIter != headers.end())
+ {
+ m_versionId = versionIdIter->second;
+ }
+
+ return *this;
+}
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
new file mode 100644
index 0000000000..f06ab1ed3a
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/PutPublicAccessBlockRequest.cpp
@@ -0,0 +1,85 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/PutPublicAccessBlockRequest.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;
+
+PutPublicAccessBlockRequest::PutPublicAccessBlockRequest() :
+ m_bucketHasBeenSet(false),
+ m_contentMD5HasBeenSet(false),
+ m_publicAccessBlockConfigurationHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String PutPublicAccessBlockRequest::SerializePayload() const
+{
+ XmlDocument payloadDoc = XmlDocument::CreateWithRootNode("PublicAccessBlockConfiguration");
+
+ XmlNode parentNode = payloadDoc.GetRootElement();
+ parentNode.SetAttributeValue("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/");
+
+ m_publicAccessBlockConfiguration.AddToNode(parentNode);
+ if(parentNode.HasChildren())
+ {
+ return payloadDoc.ConvertToString();
+ }
+
+ return {};
+}
+
+void PutPublicAccessBlockRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 PutPublicAccessBlockRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_contentMD5HasBeenSet)
+ {
+ ss << m_contentMD5;
+ headers.emplace("content-md5", ss.str());
+ ss.str("");
+ }
+
+ if(m_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/QueueConfiguration.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/QueueConfiguration.cpp
new file mode 100644
index 0000000000..c9c18b8137
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/QueueConfiguration.cpp
@@ -0,0 +1,115 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/QueueConfiguration.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
+{
+
+QueueConfiguration::QueueConfiguration() :
+ m_idHasBeenSet(false),
+ m_queueArnHasBeenSet(false),
+ m_eventsHasBeenSet(false),
+ m_filterHasBeenSet(false)
+{
+}
+
+QueueConfiguration::QueueConfiguration(const XmlNode& xmlNode) :
+ m_idHasBeenSet(false),
+ m_queueArnHasBeenSet(false),
+ m_eventsHasBeenSet(false),
+ m_filterHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+QueueConfiguration& QueueConfiguration::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode idNode = resultNode.FirstChild("Id");
+ if(!idNode.IsNull())
+ {
+ m_id = Aws::Utils::Xml::DecodeEscapedXmlText(idNode.GetText());
+ m_idHasBeenSet = true;
+ }
+ XmlNode queueArnNode = resultNode.FirstChild("Queue");
+ if(!queueArnNode.IsNull())
+ {
+ m_queueArn = Aws::Utils::Xml::DecodeEscapedXmlText(queueArnNode.GetText());
+ m_queueArnHasBeenSet = true;
+ }
+ XmlNode eventsNode = resultNode.FirstChild("Event");
+ if(!eventsNode.IsNull())
+ {
+ XmlNode eventMember = eventsNode;
+ while(!eventMember.IsNull())
+ {
+ m_events.push_back(EventMapper::GetEventForName(StringUtils::Trim(eventMember.GetText().c_str())));
+ eventMember = eventMember.NextNode("Event");
+ }
+
+ m_eventsHasBeenSet = true;
+ }
+ XmlNode filterNode = resultNode.FirstChild("Filter");
+ if(!filterNode.IsNull())
+ {
+ m_filter = filterNode;
+ m_filterHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void QueueConfiguration::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_idHasBeenSet)
+ {
+ XmlNode idNode = parentNode.CreateChildElement("Id");
+ idNode.SetText(m_id);
+ }
+
+ if(m_queueArnHasBeenSet)
+ {
+ XmlNode queueArnNode = parentNode.CreateChildElement("Queue");
+ queueArnNode.SetText(m_queueArn);
+ }
+
+ if(m_eventsHasBeenSet)
+ {
+ for(const auto& item : m_events)
+ {
+ XmlNode eventsNode = parentNode.CreateChildElement("Event");
+ eventsNode.SetText(EventMapper::GetNameForEvent(item));
+ }
+ }
+
+ if(m_filterHasBeenSet)
+ {
+ XmlNode filterNode = parentNode.CreateChildElement("Filter");
+ m_filter.AddToNode(filterNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/QueueConfigurationDeprecated.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/QueueConfigurationDeprecated.cpp
new file mode 100644
index 0000000000..0bb24846e2
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/QueueConfigurationDeprecated.cpp
@@ -0,0 +1,101 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/QueueConfigurationDeprecated.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
+{
+
+QueueConfigurationDeprecated::QueueConfigurationDeprecated() :
+ m_idHasBeenSet(false),
+ m_eventsHasBeenSet(false),
+ m_queueHasBeenSet(false)
+{
+}
+
+QueueConfigurationDeprecated::QueueConfigurationDeprecated(const XmlNode& xmlNode) :
+ m_idHasBeenSet(false),
+ m_eventsHasBeenSet(false),
+ m_queueHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+QueueConfigurationDeprecated& QueueConfigurationDeprecated::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode idNode = resultNode.FirstChild("Id");
+ if(!idNode.IsNull())
+ {
+ m_id = Aws::Utils::Xml::DecodeEscapedXmlText(idNode.GetText());
+ m_idHasBeenSet = true;
+ }
+ XmlNode eventsNode = resultNode.FirstChild("Event");
+ if(!eventsNode.IsNull())
+ {
+ XmlNode eventMember = eventsNode;
+ while(!eventMember.IsNull())
+ {
+ m_events.push_back(EventMapper::GetEventForName(StringUtils::Trim(eventMember.GetText().c_str())));
+ eventMember = eventMember.NextNode("Event");
+ }
+
+ m_eventsHasBeenSet = true;
+ }
+ XmlNode queueNode = resultNode.FirstChild("Queue");
+ if(!queueNode.IsNull())
+ {
+ m_queue = Aws::Utils::Xml::DecodeEscapedXmlText(queueNode.GetText());
+ m_queueHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void QueueConfigurationDeprecated::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_idHasBeenSet)
+ {
+ XmlNode idNode = parentNode.CreateChildElement("Id");
+ idNode.SetText(m_id);
+ }
+
+ if(m_eventsHasBeenSet)
+ {
+ for(const auto& item : m_events)
+ {
+ XmlNode eventsNode = parentNode.CreateChildElement("Event");
+ eventsNode.SetText(EventMapper::GetNameForEvent(item));
+ }
+ }
+
+ if(m_queueHasBeenSet)
+ {
+ XmlNode queueNode = parentNode.CreateChildElement("Queue");
+ queueNode.SetText(m_queue);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/QuoteFields.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/QuoteFields.cpp
new file mode 100644
index 0000000000..a9c44b2d8a
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/QuoteFields.cpp
@@ -0,0 +1,70 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/QuoteFields.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 QuoteFieldsMapper
+ {
+
+ static const int ALWAYS_HASH = HashingUtils::HashString("ALWAYS");
+ static const int ASNEEDED_HASH = HashingUtils::HashString("ASNEEDED");
+
+
+ QuoteFields GetQuoteFieldsForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == ALWAYS_HASH)
+ {
+ return QuoteFields::ALWAYS;
+ }
+ else if (hashCode == ASNEEDED_HASH)
+ {
+ return QuoteFields::ASNEEDED;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<QuoteFields>(hashCode);
+ }
+
+ return QuoteFields::NOT_SET;
+ }
+
+ Aws::String GetNameForQuoteFields(QuoteFields enumValue)
+ {
+ switch(enumValue)
+ {
+ case QuoteFields::ALWAYS:
+ return "ALWAYS";
+ case QuoteFields::ASNEEDED:
+ return "ASNEEDED";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace QuoteFieldsMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Redirect.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Redirect.cpp
new file mode 100644
index 0000000000..5aa5c06d24
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Redirect.cpp
@@ -0,0 +1,122 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/Redirect.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
+{
+
+Redirect::Redirect() :
+ m_hostNameHasBeenSet(false),
+ m_httpRedirectCodeHasBeenSet(false),
+ m_protocol(Protocol::NOT_SET),
+ m_protocolHasBeenSet(false),
+ m_replaceKeyPrefixWithHasBeenSet(false),
+ m_replaceKeyWithHasBeenSet(false)
+{
+}
+
+Redirect::Redirect(const XmlNode& xmlNode) :
+ m_hostNameHasBeenSet(false),
+ m_httpRedirectCodeHasBeenSet(false),
+ m_protocol(Protocol::NOT_SET),
+ m_protocolHasBeenSet(false),
+ m_replaceKeyPrefixWithHasBeenSet(false),
+ m_replaceKeyWithHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+Redirect& Redirect::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode hostNameNode = resultNode.FirstChild("HostName");
+ if(!hostNameNode.IsNull())
+ {
+ m_hostName = Aws::Utils::Xml::DecodeEscapedXmlText(hostNameNode.GetText());
+ m_hostNameHasBeenSet = true;
+ }
+ XmlNode httpRedirectCodeNode = resultNode.FirstChild("HttpRedirectCode");
+ if(!httpRedirectCodeNode.IsNull())
+ {
+ m_httpRedirectCode = Aws::Utils::Xml::DecodeEscapedXmlText(httpRedirectCodeNode.GetText());
+ m_httpRedirectCodeHasBeenSet = true;
+ }
+ XmlNode protocolNode = resultNode.FirstChild("Protocol");
+ if(!protocolNode.IsNull())
+ {
+ m_protocol = ProtocolMapper::GetProtocolForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(protocolNode.GetText()).c_str()).c_str());
+ m_protocolHasBeenSet = true;
+ }
+ XmlNode replaceKeyPrefixWithNode = resultNode.FirstChild("ReplaceKeyPrefixWith");
+ if(!replaceKeyPrefixWithNode.IsNull())
+ {
+ m_replaceKeyPrefixWith = Aws::Utils::Xml::DecodeEscapedXmlText(replaceKeyPrefixWithNode.GetText());
+ m_replaceKeyPrefixWithHasBeenSet = true;
+ }
+ XmlNode replaceKeyWithNode = resultNode.FirstChild("ReplaceKeyWith");
+ if(!replaceKeyWithNode.IsNull())
+ {
+ m_replaceKeyWith = Aws::Utils::Xml::DecodeEscapedXmlText(replaceKeyWithNode.GetText());
+ m_replaceKeyWithHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void Redirect::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_hostNameHasBeenSet)
+ {
+ XmlNode hostNameNode = parentNode.CreateChildElement("HostName");
+ hostNameNode.SetText(m_hostName);
+ }
+
+ if(m_httpRedirectCodeHasBeenSet)
+ {
+ XmlNode httpRedirectCodeNode = parentNode.CreateChildElement("HttpRedirectCode");
+ httpRedirectCodeNode.SetText(m_httpRedirectCode);
+ }
+
+ if(m_protocolHasBeenSet)
+ {
+ XmlNode protocolNode = parentNode.CreateChildElement("Protocol");
+ protocolNode.SetText(ProtocolMapper::GetNameForProtocol(m_protocol));
+ }
+
+ if(m_replaceKeyPrefixWithHasBeenSet)
+ {
+ XmlNode replaceKeyPrefixWithNode = parentNode.CreateChildElement("ReplaceKeyPrefixWith");
+ replaceKeyPrefixWithNode.SetText(m_replaceKeyPrefixWith);
+ }
+
+ if(m_replaceKeyWithHasBeenSet)
+ {
+ XmlNode replaceKeyWithNode = parentNode.CreateChildElement("ReplaceKeyWith");
+ replaceKeyWithNode.SetText(m_replaceKeyWith);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RedirectAllRequestsTo.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RedirectAllRequestsTo.cpp
new file mode 100644
index 0000000000..bf4660d625
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RedirectAllRequestsTo.cpp
@@ -0,0 +1,80 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/RedirectAllRequestsTo.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
+{
+
+RedirectAllRequestsTo::RedirectAllRequestsTo() :
+ m_hostNameHasBeenSet(false),
+ m_protocol(Protocol::NOT_SET),
+ m_protocolHasBeenSet(false)
+{
+}
+
+RedirectAllRequestsTo::RedirectAllRequestsTo(const XmlNode& xmlNode) :
+ m_hostNameHasBeenSet(false),
+ m_protocol(Protocol::NOT_SET),
+ m_protocolHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+RedirectAllRequestsTo& RedirectAllRequestsTo::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode hostNameNode = resultNode.FirstChild("HostName");
+ if(!hostNameNode.IsNull())
+ {
+ m_hostName = Aws::Utils::Xml::DecodeEscapedXmlText(hostNameNode.GetText());
+ m_hostNameHasBeenSet = true;
+ }
+ XmlNode protocolNode = resultNode.FirstChild("Protocol");
+ if(!protocolNode.IsNull())
+ {
+ m_protocol = ProtocolMapper::GetProtocolForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(protocolNode.GetText()).c_str()).c_str());
+ m_protocolHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void RedirectAllRequestsTo::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_hostNameHasBeenSet)
+ {
+ XmlNode hostNameNode = parentNode.CreateChildElement("HostName");
+ hostNameNode.SetText(m_hostName);
+ }
+
+ if(m_protocolHasBeenSet)
+ {
+ XmlNode protocolNode = parentNode.CreateChildElement("Protocol");
+ protocolNode.SetText(ProtocolMapper::GetNameForProtocol(m_protocol));
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicaModifications.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicaModifications.cpp
new file mode 100644
index 0000000000..e7da8f43e0
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicaModifications.cpp
@@ -0,0 +1,66 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ReplicaModifications.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
+{
+
+ReplicaModifications::ReplicaModifications() :
+ m_status(ReplicaModificationsStatus::NOT_SET),
+ m_statusHasBeenSet(false)
+{
+}
+
+ReplicaModifications::ReplicaModifications(const XmlNode& xmlNode) :
+ m_status(ReplicaModificationsStatus::NOT_SET),
+ m_statusHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+ReplicaModifications& ReplicaModifications::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode statusNode = resultNode.FirstChild("Status");
+ if(!statusNode.IsNull())
+ {
+ m_status = ReplicaModificationsStatusMapper::GetReplicaModificationsStatusForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(statusNode.GetText()).c_str()).c_str());
+ m_statusHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void ReplicaModifications::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_statusHasBeenSet)
+ {
+ XmlNode statusNode = parentNode.CreateChildElement("Status");
+ statusNode.SetText(ReplicaModificationsStatusMapper::GetNameForReplicaModificationsStatus(m_status));
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicaModificationsStatus.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicaModificationsStatus.cpp
new file mode 100644
index 0000000000..c25c3a82c4
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicaModificationsStatus.cpp
@@ -0,0 +1,70 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ReplicaModificationsStatus.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 ReplicaModificationsStatusMapper
+ {
+
+ static const int Enabled_HASH = HashingUtils::HashString("Enabled");
+ static const int Disabled_HASH = HashingUtils::HashString("Disabled");
+
+
+ ReplicaModificationsStatus GetReplicaModificationsStatusForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == Enabled_HASH)
+ {
+ return ReplicaModificationsStatus::Enabled;
+ }
+ else if (hashCode == Disabled_HASH)
+ {
+ return ReplicaModificationsStatus::Disabled;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<ReplicaModificationsStatus>(hashCode);
+ }
+
+ return ReplicaModificationsStatus::NOT_SET;
+ }
+
+ Aws::String GetNameForReplicaModificationsStatus(ReplicaModificationsStatus enumValue)
+ {
+ switch(enumValue)
+ {
+ case ReplicaModificationsStatus::Enabled:
+ return "Enabled";
+ case ReplicaModificationsStatus::Disabled:
+ return "Disabled";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace ReplicaModificationsStatusMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicationConfiguration.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicationConfiguration.cpp
new file mode 100644
index 0000000000..bd14b010b2
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicationConfiguration.cpp
@@ -0,0 +1,87 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ReplicationConfiguration.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
+{
+
+ReplicationConfiguration::ReplicationConfiguration() :
+ m_roleHasBeenSet(false),
+ m_rulesHasBeenSet(false)
+{
+}
+
+ReplicationConfiguration::ReplicationConfiguration(const XmlNode& xmlNode) :
+ m_roleHasBeenSet(false),
+ m_rulesHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+ReplicationConfiguration& ReplicationConfiguration::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode roleNode = resultNode.FirstChild("Role");
+ if(!roleNode.IsNull())
+ {
+ m_role = Aws::Utils::Xml::DecodeEscapedXmlText(roleNode.GetText());
+ m_roleHasBeenSet = true;
+ }
+ XmlNode rulesNode = resultNode.FirstChild("Rule");
+ if(!rulesNode.IsNull())
+ {
+ XmlNode ruleMember = rulesNode;
+ while(!ruleMember.IsNull())
+ {
+ m_rules.push_back(ruleMember);
+ ruleMember = ruleMember.NextNode("Rule");
+ }
+
+ m_rulesHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void ReplicationConfiguration::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_roleHasBeenSet)
+ {
+ XmlNode roleNode = parentNode.CreateChildElement("Role");
+ roleNode.SetText(m_role);
+ }
+
+ if(m_rulesHasBeenSet)
+ {
+ for(const auto& item : m_rules)
+ {
+ XmlNode rulesNode = parentNode.CreateChildElement("Rule");
+ item.AddToNode(rulesNode);
+ }
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicationRule.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicationRule.cpp
new file mode 100644
index 0000000000..a0f883d0f2
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicationRule.cpp
@@ -0,0 +1,168 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ReplicationRule.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
+{
+
+ReplicationRule::ReplicationRule() :
+ m_iDHasBeenSet(false),
+ m_priority(0),
+ m_priorityHasBeenSet(false),
+ m_filterHasBeenSet(false),
+ m_status(ReplicationRuleStatus::NOT_SET),
+ m_statusHasBeenSet(false),
+ m_sourceSelectionCriteriaHasBeenSet(false),
+ m_existingObjectReplicationHasBeenSet(false),
+ m_destinationHasBeenSet(false),
+ m_deleteMarkerReplicationHasBeenSet(false)
+{
+}
+
+ReplicationRule::ReplicationRule(const XmlNode& xmlNode) :
+ m_iDHasBeenSet(false),
+ m_priority(0),
+ m_priorityHasBeenSet(false),
+ m_filterHasBeenSet(false),
+ m_status(ReplicationRuleStatus::NOT_SET),
+ m_statusHasBeenSet(false),
+ m_sourceSelectionCriteriaHasBeenSet(false),
+ m_existingObjectReplicationHasBeenSet(false),
+ m_destinationHasBeenSet(false),
+ m_deleteMarkerReplicationHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+ReplicationRule& ReplicationRule::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode iDNode = resultNode.FirstChild("ID");
+ if(!iDNode.IsNull())
+ {
+ m_iD = Aws::Utils::Xml::DecodeEscapedXmlText(iDNode.GetText());
+ m_iDHasBeenSet = true;
+ }
+ XmlNode priorityNode = resultNode.FirstChild("Priority");
+ if(!priorityNode.IsNull())
+ {
+ m_priority = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(priorityNode.GetText()).c_str()).c_str());
+ m_priorityHasBeenSet = true;
+ }
+ XmlNode filterNode = resultNode.FirstChild("Filter");
+ if(!filterNode.IsNull())
+ {
+ m_filter = filterNode;
+ m_filterHasBeenSet = true;
+ }
+ XmlNode statusNode = resultNode.FirstChild("Status");
+ if(!statusNode.IsNull())
+ {
+ m_status = ReplicationRuleStatusMapper::GetReplicationRuleStatusForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(statusNode.GetText()).c_str()).c_str());
+ m_statusHasBeenSet = true;
+ }
+ XmlNode sourceSelectionCriteriaNode = resultNode.FirstChild("SourceSelectionCriteria");
+ if(!sourceSelectionCriteriaNode.IsNull())
+ {
+ m_sourceSelectionCriteria = sourceSelectionCriteriaNode;
+ m_sourceSelectionCriteriaHasBeenSet = true;
+ }
+ XmlNode existingObjectReplicationNode = resultNode.FirstChild("ExistingObjectReplication");
+ if(!existingObjectReplicationNode.IsNull())
+ {
+ m_existingObjectReplication = existingObjectReplicationNode;
+ m_existingObjectReplicationHasBeenSet = true;
+ }
+ XmlNode destinationNode = resultNode.FirstChild("Destination");
+ if(!destinationNode.IsNull())
+ {
+ m_destination = destinationNode;
+ m_destinationHasBeenSet = true;
+ }
+ XmlNode deleteMarkerReplicationNode = resultNode.FirstChild("DeleteMarkerReplication");
+ if(!deleteMarkerReplicationNode.IsNull())
+ {
+ m_deleteMarkerReplication = deleteMarkerReplicationNode;
+ m_deleteMarkerReplicationHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void ReplicationRule::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_iDHasBeenSet)
+ {
+ XmlNode iDNode = parentNode.CreateChildElement("ID");
+ iDNode.SetText(m_iD);
+ }
+
+ if(m_priorityHasBeenSet)
+ {
+ XmlNode priorityNode = parentNode.CreateChildElement("Priority");
+ ss << m_priority;
+ priorityNode.SetText(ss.str());
+ ss.str("");
+ }
+
+ if(m_filterHasBeenSet)
+ {
+ XmlNode filterNode = parentNode.CreateChildElement("Filter");
+ m_filter.AddToNode(filterNode);
+ }
+
+ if(m_statusHasBeenSet)
+ {
+ XmlNode statusNode = parentNode.CreateChildElement("Status");
+ statusNode.SetText(ReplicationRuleStatusMapper::GetNameForReplicationRuleStatus(m_status));
+ }
+
+ if(m_sourceSelectionCriteriaHasBeenSet)
+ {
+ XmlNode sourceSelectionCriteriaNode = parentNode.CreateChildElement("SourceSelectionCriteria");
+ m_sourceSelectionCriteria.AddToNode(sourceSelectionCriteriaNode);
+ }
+
+ if(m_existingObjectReplicationHasBeenSet)
+ {
+ XmlNode existingObjectReplicationNode = parentNode.CreateChildElement("ExistingObjectReplication");
+ m_existingObjectReplication.AddToNode(existingObjectReplicationNode);
+ }
+
+ if(m_destinationHasBeenSet)
+ {
+ XmlNode destinationNode = parentNode.CreateChildElement("Destination");
+ m_destination.AddToNode(destinationNode);
+ }
+
+ if(m_deleteMarkerReplicationHasBeenSet)
+ {
+ XmlNode deleteMarkerReplicationNode = parentNode.CreateChildElement("DeleteMarkerReplication");
+ m_deleteMarkerReplication.AddToNode(deleteMarkerReplicationNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicationRuleAndOperator.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicationRuleAndOperator.cpp
new file mode 100644
index 0000000000..00d04e7ec3
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicationRuleAndOperator.cpp
@@ -0,0 +1,88 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ReplicationRuleAndOperator.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
+{
+
+ReplicationRuleAndOperator::ReplicationRuleAndOperator() :
+ m_prefixHasBeenSet(false),
+ m_tagsHasBeenSet(false)
+{
+}
+
+ReplicationRuleAndOperator::ReplicationRuleAndOperator(const XmlNode& xmlNode) :
+ m_prefixHasBeenSet(false),
+ m_tagsHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+ReplicationRuleAndOperator& ReplicationRuleAndOperator::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode prefixNode = resultNode.FirstChild("Prefix");
+ if(!prefixNode.IsNull())
+ {
+ m_prefix = Aws::Utils::Xml::DecodeEscapedXmlText(prefixNode.GetText());
+ m_prefixHasBeenSet = true;
+ }
+ XmlNode tagsNode = resultNode.FirstChild("Tag");
+ if(!tagsNode.IsNull())
+ {
+ XmlNode tagMember = tagsNode;
+ while(!tagMember.IsNull())
+ {
+ m_tags.push_back(tagMember);
+ tagMember = tagMember.NextNode("Tag");
+ }
+
+ m_tagsHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void ReplicationRuleAndOperator::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_prefixHasBeenSet)
+ {
+ XmlNode prefixNode = parentNode.CreateChildElement("Prefix");
+ prefixNode.SetText(m_prefix);
+ }
+
+ if(m_tagsHasBeenSet)
+ {
+ XmlNode tagsParentNode = parentNode.CreateChildElement("Tags");
+ for(const auto& item : m_tags)
+ {
+ XmlNode tagsNode = tagsParentNode.CreateChildElement("Tag");
+ item.AddToNode(tagsNode);
+ }
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicationRuleFilter.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicationRuleFilter.cpp
new file mode 100644
index 0000000000..a423e4ae10
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicationRuleFilter.cpp
@@ -0,0 +1,92 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ReplicationRuleFilter.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
+{
+
+ReplicationRuleFilter::ReplicationRuleFilter() :
+ m_prefixHasBeenSet(false),
+ m_tagHasBeenSet(false),
+ m_andHasBeenSet(false)
+{
+}
+
+ReplicationRuleFilter::ReplicationRuleFilter(const XmlNode& xmlNode) :
+ m_prefixHasBeenSet(false),
+ m_tagHasBeenSet(false),
+ m_andHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+ReplicationRuleFilter& ReplicationRuleFilter::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode prefixNode = resultNode.FirstChild("Prefix");
+ if(!prefixNode.IsNull())
+ {
+ m_prefix = Aws::Utils::Xml::DecodeEscapedXmlText(prefixNode.GetText());
+ m_prefixHasBeenSet = true;
+ }
+ XmlNode tagNode = resultNode.FirstChild("Tag");
+ if(!tagNode.IsNull())
+ {
+ m_tag = tagNode;
+ m_tagHasBeenSet = true;
+ }
+ XmlNode andNode = resultNode.FirstChild("And");
+ if(!andNode.IsNull())
+ {
+ m_and = andNode;
+ m_andHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void ReplicationRuleFilter::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_prefixHasBeenSet)
+ {
+ XmlNode prefixNode = parentNode.CreateChildElement("Prefix");
+ prefixNode.SetText(m_prefix);
+ }
+
+ if(m_tagHasBeenSet)
+ {
+ XmlNode tagNode = parentNode.CreateChildElement("Tag");
+ m_tag.AddToNode(tagNode);
+ }
+
+ if(m_andHasBeenSet)
+ {
+ XmlNode andNode = parentNode.CreateChildElement("And");
+ m_and.AddToNode(andNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicationRuleStatus.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicationRuleStatus.cpp
new file mode 100644
index 0000000000..656e48a227
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicationRuleStatus.cpp
@@ -0,0 +1,70 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ReplicationRuleStatus.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 ReplicationRuleStatusMapper
+ {
+
+ static const int Enabled_HASH = HashingUtils::HashString("Enabled");
+ static const int Disabled_HASH = HashingUtils::HashString("Disabled");
+
+
+ ReplicationRuleStatus GetReplicationRuleStatusForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == Enabled_HASH)
+ {
+ return ReplicationRuleStatus::Enabled;
+ }
+ else if (hashCode == Disabled_HASH)
+ {
+ return ReplicationRuleStatus::Disabled;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<ReplicationRuleStatus>(hashCode);
+ }
+
+ return ReplicationRuleStatus::NOT_SET;
+ }
+
+ Aws::String GetNameForReplicationRuleStatus(ReplicationRuleStatus enumValue)
+ {
+ switch(enumValue)
+ {
+ case ReplicationRuleStatus::Enabled:
+ return "Enabled";
+ case ReplicationRuleStatus::Disabled:
+ return "Disabled";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace ReplicationRuleStatusMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicationStatus.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicationStatus.cpp
new file mode 100644
index 0000000000..02d056c0eb
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicationStatus.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/ReplicationStatus.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 ReplicationStatusMapper
+ {
+
+ static const int COMPLETED_HASH = HashingUtils::HashString("COMPLETED");
+ static const int PENDING_HASH = HashingUtils::HashString("PENDING");
+ static const int FAILED_HASH = HashingUtils::HashString("FAILED");
+ static const int REPLICA_HASH = HashingUtils::HashString("REPLICA");
+
+
+ ReplicationStatus GetReplicationStatusForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == COMPLETED_HASH)
+ {
+ return ReplicationStatus::COMPLETED;
+ }
+ else if (hashCode == PENDING_HASH)
+ {
+ return ReplicationStatus::PENDING;
+ }
+ else if (hashCode == FAILED_HASH)
+ {
+ return ReplicationStatus::FAILED;
+ }
+ else if (hashCode == REPLICA_HASH)
+ {
+ return ReplicationStatus::REPLICA;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<ReplicationStatus>(hashCode);
+ }
+
+ return ReplicationStatus::NOT_SET;
+ }
+
+ Aws::String GetNameForReplicationStatus(ReplicationStatus enumValue)
+ {
+ switch(enumValue)
+ {
+ case ReplicationStatus::COMPLETED:
+ return "COMPLETED";
+ case ReplicationStatus::PENDING:
+ return "PENDING";
+ case ReplicationStatus::FAILED:
+ return "FAILED";
+ case ReplicationStatus::REPLICA:
+ return "REPLICA";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace ReplicationStatusMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicationTime.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicationTime.cpp
new file mode 100644
index 0000000000..1fb6c0a36e
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicationTime.cpp
@@ -0,0 +1,80 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ReplicationTime.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
+{
+
+ReplicationTime::ReplicationTime() :
+ m_status(ReplicationTimeStatus::NOT_SET),
+ m_statusHasBeenSet(false),
+ m_timeHasBeenSet(false)
+{
+}
+
+ReplicationTime::ReplicationTime(const XmlNode& xmlNode) :
+ m_status(ReplicationTimeStatus::NOT_SET),
+ m_statusHasBeenSet(false),
+ m_timeHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+ReplicationTime& ReplicationTime::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode statusNode = resultNode.FirstChild("Status");
+ if(!statusNode.IsNull())
+ {
+ m_status = ReplicationTimeStatusMapper::GetReplicationTimeStatusForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(statusNode.GetText()).c_str()).c_str());
+ m_statusHasBeenSet = true;
+ }
+ XmlNode timeNode = resultNode.FirstChild("Time");
+ if(!timeNode.IsNull())
+ {
+ m_time = timeNode;
+ m_timeHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void ReplicationTime::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_statusHasBeenSet)
+ {
+ XmlNode statusNode = parentNode.CreateChildElement("Status");
+ statusNode.SetText(ReplicationTimeStatusMapper::GetNameForReplicationTimeStatus(m_status));
+ }
+
+ if(m_timeHasBeenSet)
+ {
+ XmlNode timeNode = parentNode.CreateChildElement("Time");
+ m_time.AddToNode(timeNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicationTimeStatus.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicationTimeStatus.cpp
new file mode 100644
index 0000000000..cbae603edc
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicationTimeStatus.cpp
@@ -0,0 +1,70 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ReplicationTimeStatus.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 ReplicationTimeStatusMapper
+ {
+
+ static const int Enabled_HASH = HashingUtils::HashString("Enabled");
+ static const int Disabled_HASH = HashingUtils::HashString("Disabled");
+
+
+ ReplicationTimeStatus GetReplicationTimeStatusForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == Enabled_HASH)
+ {
+ return ReplicationTimeStatus::Enabled;
+ }
+ else if (hashCode == Disabled_HASH)
+ {
+ return ReplicationTimeStatus::Disabled;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<ReplicationTimeStatus>(hashCode);
+ }
+
+ return ReplicationTimeStatus::NOT_SET;
+ }
+
+ Aws::String GetNameForReplicationTimeStatus(ReplicationTimeStatus enumValue)
+ {
+ switch(enumValue)
+ {
+ case ReplicationTimeStatus::Enabled:
+ return "Enabled";
+ case ReplicationTimeStatus::Disabled:
+ return "Disabled";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace ReplicationTimeStatusMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicationTimeValue.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicationTimeValue.cpp
new file mode 100644
index 0000000000..6431ad60fa
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ReplicationTimeValue.cpp
@@ -0,0 +1,68 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ReplicationTimeValue.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
+{
+
+ReplicationTimeValue::ReplicationTimeValue() :
+ m_minutes(0),
+ m_minutesHasBeenSet(false)
+{
+}
+
+ReplicationTimeValue::ReplicationTimeValue(const XmlNode& xmlNode) :
+ m_minutes(0),
+ m_minutesHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+ReplicationTimeValue& ReplicationTimeValue::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode minutesNode = resultNode.FirstChild("Minutes");
+ if(!minutesNode.IsNull())
+ {
+ m_minutes = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(minutesNode.GetText()).c_str()).c_str());
+ m_minutesHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void ReplicationTimeValue::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_minutesHasBeenSet)
+ {
+ XmlNode minutesNode = parentNode.CreateChildElement("Minutes");
+ ss << m_minutes;
+ minutesNode.SetText(ss.str());
+ ss.str("");
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RequestCharged.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RequestCharged.cpp
new file mode 100644
index 0000000000..50fb60397c
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RequestCharged.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/RequestCharged.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 RequestChargedMapper
+ {
+
+ static const int requester_HASH = HashingUtils::HashString("requester");
+
+
+ RequestCharged GetRequestChargedForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == requester_HASH)
+ {
+ return RequestCharged::requester;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<RequestCharged>(hashCode);
+ }
+
+ return RequestCharged::NOT_SET;
+ }
+
+ Aws::String GetNameForRequestCharged(RequestCharged enumValue)
+ {
+ switch(enumValue)
+ {
+ case RequestCharged::requester:
+ return "requester";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace RequestChargedMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RequestPayer.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RequestPayer.cpp
new file mode 100644
index 0000000000..5ed9ad7bf0
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RequestPayer.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/RequestPayer.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 RequestPayerMapper
+ {
+
+ static const int requester_HASH = HashingUtils::HashString("requester");
+
+
+ RequestPayer GetRequestPayerForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == requester_HASH)
+ {
+ return RequestPayer::requester;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<RequestPayer>(hashCode);
+ }
+
+ return RequestPayer::NOT_SET;
+ }
+
+ Aws::String GetNameForRequestPayer(RequestPayer enumValue)
+ {
+ switch(enumValue)
+ {
+ case RequestPayer::requester:
+ return "requester";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace RequestPayerMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RequestPaymentConfiguration.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RequestPaymentConfiguration.cpp
new file mode 100644
index 0000000000..ccb0b759b7
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RequestPaymentConfiguration.cpp
@@ -0,0 +1,66 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/RequestPaymentConfiguration.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
+{
+
+RequestPaymentConfiguration::RequestPaymentConfiguration() :
+ m_payer(Payer::NOT_SET),
+ m_payerHasBeenSet(false)
+{
+}
+
+RequestPaymentConfiguration::RequestPaymentConfiguration(const XmlNode& xmlNode) :
+ m_payer(Payer::NOT_SET),
+ m_payerHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+RequestPaymentConfiguration& RequestPaymentConfiguration::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode payerNode = resultNode.FirstChild("Payer");
+ if(!payerNode.IsNull())
+ {
+ m_payer = PayerMapper::GetPayerForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(payerNode.GetText()).c_str()).c_str());
+ m_payerHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void RequestPaymentConfiguration::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_payerHasBeenSet)
+ {
+ XmlNode payerNode = parentNode.CreateChildElement("Payer");
+ payerNode.SetText(PayerMapper::GetNameForPayer(m_payer));
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RequestProgress.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RequestProgress.cpp
new file mode 100644
index 0000000000..14773c2a4c
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RequestProgress.cpp
@@ -0,0 +1,68 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/RequestProgress.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
+{
+
+RequestProgress::RequestProgress() :
+ m_enabled(false),
+ m_enabledHasBeenSet(false)
+{
+}
+
+RequestProgress::RequestProgress(const XmlNode& xmlNode) :
+ m_enabled(false),
+ m_enabledHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+RequestProgress& RequestProgress::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode enabledNode = resultNode.FirstChild("Enabled");
+ if(!enabledNode.IsNull())
+ {
+ m_enabled = StringUtils::ConvertToBool(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(enabledNode.GetText()).c_str()).c_str());
+ m_enabledHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void RequestProgress::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_enabledHasBeenSet)
+ {
+ XmlNode enabledNode = parentNode.CreateChildElement("Enabled");
+ ss << std::boolalpha << m_enabled;
+ enabledNode.SetText(ss.str());
+ ss.str("");
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
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
new file mode 100644
index 0000000000..a755fc7828
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RestoreObjectRequest.cpp
@@ -0,0 +1,93 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/RestoreObjectRequest.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;
+
+RestoreObjectRequest::RestoreObjectRequest() :
+ m_bucketHasBeenSet(false),
+ m_keyHasBeenSet(false),
+ m_versionIdHasBeenSet(false),
+ m_restoreRequestHasBeenSet(false),
+ m_requestPayer(RequestPayer::NOT_SET),
+ m_requestPayerHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String RestoreObjectRequest::SerializePayload() const
+{
+ XmlDocument payloadDoc = XmlDocument::CreateWithRootNode("RestoreRequest");
+
+ XmlNode parentNode = payloadDoc.GetRootElement();
+ parentNode.SetAttributeValue("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/");
+
+ m_restoreRequest.AddToNode(parentNode);
+ if(parentNode.HasChildren())
+ {
+ return payloadDoc.ConvertToString();
+ }
+
+ return {};
+}
+
+void RestoreObjectRequest::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 RestoreObjectRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ 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("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RestoreObjectResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RestoreObjectResult.cpp
new file mode 100644
index 0000000000..bae21fb8a2
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RestoreObjectResult.cpp
@@ -0,0 +1,53 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/RestoreObjectResult.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;
+
+RestoreObjectResult::RestoreObjectResult() :
+ m_requestCharged(RequestCharged::NOT_SET)
+{
+}
+
+RestoreObjectResult::RestoreObjectResult(const Aws::AmazonWebServiceResult<XmlDocument>& result) :
+ m_requestCharged(RequestCharged::NOT_SET)
+{
+ *this = result;
+}
+
+RestoreObjectResult& RestoreObjectResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ }
+
+ const auto& headers = result.GetHeaderValueCollection();
+ const auto& requestChargedIter = headers.find("x-amz-request-charged");
+ if(requestChargedIter != headers.end())
+ {
+ m_requestCharged = RequestChargedMapper::GetRequestChargedForName(requestChargedIter->second);
+ }
+
+ const auto& restoreOutputPathIter = headers.find("x-amz-restore-output-path");
+ if(restoreOutputPathIter != headers.end())
+ {
+ m_restoreOutputPath = restoreOutputPathIter->second;
+ }
+
+ return *this;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RestoreRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RestoreRequest.cpp
new file mode 100644
index 0000000000..367096aa61
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RestoreRequest.cpp
@@ -0,0 +1,156 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/RestoreRequest.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
+{
+
+RestoreRequest::RestoreRequest() :
+ m_days(0),
+ m_daysHasBeenSet(false),
+ m_glacierJobParametersHasBeenSet(false),
+ m_type(RestoreRequestType::NOT_SET),
+ m_typeHasBeenSet(false),
+ m_tier(Tier::NOT_SET),
+ m_tierHasBeenSet(false),
+ m_descriptionHasBeenSet(false),
+ m_selectParametersHasBeenSet(false),
+ m_outputLocationHasBeenSet(false)
+{
+}
+
+RestoreRequest::RestoreRequest(const XmlNode& xmlNode) :
+ m_days(0),
+ m_daysHasBeenSet(false),
+ m_glacierJobParametersHasBeenSet(false),
+ m_type(RestoreRequestType::NOT_SET),
+ m_typeHasBeenSet(false),
+ m_tier(Tier::NOT_SET),
+ m_tierHasBeenSet(false),
+ m_descriptionHasBeenSet(false),
+ m_selectParametersHasBeenSet(false),
+ m_outputLocationHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+RestoreRequest& RestoreRequest::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode daysNode = resultNode.FirstChild("Days");
+ if(!daysNode.IsNull())
+ {
+ m_days = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(daysNode.GetText()).c_str()).c_str());
+ m_daysHasBeenSet = true;
+ }
+ XmlNode glacierJobParametersNode = resultNode.FirstChild("GlacierJobParameters");
+ if(!glacierJobParametersNode.IsNull())
+ {
+ m_glacierJobParameters = glacierJobParametersNode;
+ m_glacierJobParametersHasBeenSet = true;
+ }
+ XmlNode typeNode = resultNode.FirstChild("Type");
+ if(!typeNode.IsNull())
+ {
+ m_type = RestoreRequestTypeMapper::GetRestoreRequestTypeForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(typeNode.GetText()).c_str()).c_str());
+ m_typeHasBeenSet = true;
+ }
+ XmlNode tierNode = resultNode.FirstChild("Tier");
+ if(!tierNode.IsNull())
+ {
+ m_tier = TierMapper::GetTierForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(tierNode.GetText()).c_str()).c_str());
+ m_tierHasBeenSet = true;
+ }
+ XmlNode descriptionNode = resultNode.FirstChild("Description");
+ if(!descriptionNode.IsNull())
+ {
+ m_description = Aws::Utils::Xml::DecodeEscapedXmlText(descriptionNode.GetText());
+ m_descriptionHasBeenSet = true;
+ }
+ XmlNode selectParametersNode = resultNode.FirstChild("SelectParameters");
+ if(!selectParametersNode.IsNull())
+ {
+ m_selectParameters = selectParametersNode;
+ m_selectParametersHasBeenSet = true;
+ }
+ XmlNode outputLocationNode = resultNode.FirstChild("OutputLocation");
+ if(!outputLocationNode.IsNull())
+ {
+ m_outputLocation = outputLocationNode;
+ m_outputLocationHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void RestoreRequest::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_daysHasBeenSet)
+ {
+ XmlNode daysNode = parentNode.CreateChildElement("Days");
+ ss << m_days;
+ daysNode.SetText(ss.str());
+ ss.str("");
+ }
+
+ if(m_glacierJobParametersHasBeenSet)
+ {
+ XmlNode glacierJobParametersNode = parentNode.CreateChildElement("GlacierJobParameters");
+ m_glacierJobParameters.AddToNode(glacierJobParametersNode);
+ }
+
+ if(m_typeHasBeenSet)
+ {
+ XmlNode typeNode = parentNode.CreateChildElement("Type");
+ typeNode.SetText(RestoreRequestTypeMapper::GetNameForRestoreRequestType(m_type));
+ }
+
+ if(m_tierHasBeenSet)
+ {
+ XmlNode tierNode = parentNode.CreateChildElement("Tier");
+ tierNode.SetText(TierMapper::GetNameForTier(m_tier));
+ }
+
+ if(m_descriptionHasBeenSet)
+ {
+ XmlNode descriptionNode = parentNode.CreateChildElement("Description");
+ descriptionNode.SetText(m_description);
+ }
+
+ if(m_selectParametersHasBeenSet)
+ {
+ XmlNode selectParametersNode = parentNode.CreateChildElement("SelectParameters");
+ m_selectParameters.AddToNode(selectParametersNode);
+ }
+
+ if(m_outputLocationHasBeenSet)
+ {
+ XmlNode outputLocationNode = parentNode.CreateChildElement("OutputLocation");
+ m_outputLocation.AddToNode(outputLocationNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RestoreRequestType.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RestoreRequestType.cpp
new file mode 100644
index 0000000000..00ee015230
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RestoreRequestType.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/RestoreRequestType.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 RestoreRequestTypeMapper
+ {
+
+ static const int SELECT_HASH = HashingUtils::HashString("SELECT");
+
+
+ RestoreRequestType GetRestoreRequestTypeForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == SELECT_HASH)
+ {
+ return RestoreRequestType::SELECT;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<RestoreRequestType>(hashCode);
+ }
+
+ return RestoreRequestType::NOT_SET;
+ }
+
+ Aws::String GetNameForRestoreRequestType(RestoreRequestType enumValue)
+ {
+ switch(enumValue)
+ {
+ case RestoreRequestType::SELECT:
+ return "SELECT";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace RestoreRequestTypeMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RoutingRule.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RoutingRule.cpp
new file mode 100644
index 0000000000..513f6cc84d
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/RoutingRule.cpp
@@ -0,0 +1,78 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/RoutingRule.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
+{
+
+RoutingRule::RoutingRule() :
+ m_conditionHasBeenSet(false),
+ m_redirectHasBeenSet(false)
+{
+}
+
+RoutingRule::RoutingRule(const XmlNode& xmlNode) :
+ m_conditionHasBeenSet(false),
+ m_redirectHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+RoutingRule& RoutingRule::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode conditionNode = resultNode.FirstChild("Condition");
+ if(!conditionNode.IsNull())
+ {
+ m_condition = conditionNode;
+ m_conditionHasBeenSet = true;
+ }
+ XmlNode redirectNode = resultNode.FirstChild("Redirect");
+ if(!redirectNode.IsNull())
+ {
+ m_redirect = redirectNode;
+ m_redirectHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void RoutingRule::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_conditionHasBeenSet)
+ {
+ XmlNode conditionNode = parentNode.CreateChildElement("Condition");
+ m_condition.AddToNode(conditionNode);
+ }
+
+ if(m_redirectHasBeenSet)
+ {
+ XmlNode redirectNode = parentNode.CreateChildElement("Redirect");
+ m_redirect.AddToNode(redirectNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Rule.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Rule.cpp
new file mode 100644
index 0000000000..00311551c4
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Rule.cpp
@@ -0,0 +1,164 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/Rule.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
+{
+
+Rule::Rule() :
+ m_expirationHasBeenSet(false),
+ m_iDHasBeenSet(false),
+ m_prefixHasBeenSet(false),
+ m_status(ExpirationStatus::NOT_SET),
+ m_statusHasBeenSet(false),
+ m_transitionHasBeenSet(false),
+ m_noncurrentVersionTransitionHasBeenSet(false),
+ m_noncurrentVersionExpirationHasBeenSet(false),
+ m_abortIncompleteMultipartUploadHasBeenSet(false)
+{
+}
+
+Rule::Rule(const XmlNode& xmlNode) :
+ m_expirationHasBeenSet(false),
+ m_iDHasBeenSet(false),
+ m_prefixHasBeenSet(false),
+ m_status(ExpirationStatus::NOT_SET),
+ m_statusHasBeenSet(false),
+ m_transitionHasBeenSet(false),
+ m_noncurrentVersionTransitionHasBeenSet(false),
+ m_noncurrentVersionExpirationHasBeenSet(false),
+ m_abortIncompleteMultipartUploadHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+Rule& Rule::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode expirationNode = resultNode.FirstChild("Expiration");
+ if(!expirationNode.IsNull())
+ {
+ m_expiration = expirationNode;
+ m_expirationHasBeenSet = true;
+ }
+ XmlNode iDNode = resultNode.FirstChild("ID");
+ if(!iDNode.IsNull())
+ {
+ m_iD = Aws::Utils::Xml::DecodeEscapedXmlText(iDNode.GetText());
+ m_iDHasBeenSet = true;
+ }
+ XmlNode prefixNode = resultNode.FirstChild("Prefix");
+ if(!prefixNode.IsNull())
+ {
+ m_prefix = Aws::Utils::Xml::DecodeEscapedXmlText(prefixNode.GetText());
+ m_prefixHasBeenSet = true;
+ }
+ XmlNode statusNode = resultNode.FirstChild("Status");
+ if(!statusNode.IsNull())
+ {
+ m_status = ExpirationStatusMapper::GetExpirationStatusForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(statusNode.GetText()).c_str()).c_str());
+ m_statusHasBeenSet = true;
+ }
+ XmlNode transitionNode = resultNode.FirstChild("Transition");
+ if(!transitionNode.IsNull())
+ {
+ m_transition = transitionNode;
+ m_transitionHasBeenSet = true;
+ }
+ XmlNode noncurrentVersionTransitionNode = resultNode.FirstChild("NoncurrentVersionTransition");
+ if(!noncurrentVersionTransitionNode.IsNull())
+ {
+ m_noncurrentVersionTransition = noncurrentVersionTransitionNode;
+ m_noncurrentVersionTransitionHasBeenSet = true;
+ }
+ XmlNode noncurrentVersionExpirationNode = resultNode.FirstChild("NoncurrentVersionExpiration");
+ if(!noncurrentVersionExpirationNode.IsNull())
+ {
+ m_noncurrentVersionExpiration = noncurrentVersionExpirationNode;
+ m_noncurrentVersionExpirationHasBeenSet = true;
+ }
+ XmlNode abortIncompleteMultipartUploadNode = resultNode.FirstChild("AbortIncompleteMultipartUpload");
+ if(!abortIncompleteMultipartUploadNode.IsNull())
+ {
+ m_abortIncompleteMultipartUpload = abortIncompleteMultipartUploadNode;
+ m_abortIncompleteMultipartUploadHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void Rule::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_expirationHasBeenSet)
+ {
+ XmlNode expirationNode = parentNode.CreateChildElement("Expiration");
+ m_expiration.AddToNode(expirationNode);
+ }
+
+ if(m_iDHasBeenSet)
+ {
+ XmlNode iDNode = parentNode.CreateChildElement("ID");
+ iDNode.SetText(m_iD);
+ }
+
+ if(m_prefixHasBeenSet)
+ {
+ XmlNode prefixNode = parentNode.CreateChildElement("Prefix");
+ prefixNode.SetText(m_prefix);
+ }
+
+ if(m_statusHasBeenSet)
+ {
+ XmlNode statusNode = parentNode.CreateChildElement("Status");
+ statusNode.SetText(ExpirationStatusMapper::GetNameForExpirationStatus(m_status));
+ }
+
+ if(m_transitionHasBeenSet)
+ {
+ XmlNode transitionNode = parentNode.CreateChildElement("Transition");
+ m_transition.AddToNode(transitionNode);
+ }
+
+ if(m_noncurrentVersionTransitionHasBeenSet)
+ {
+ XmlNode noncurrentVersionTransitionNode = parentNode.CreateChildElement("NoncurrentVersionTransition");
+ m_noncurrentVersionTransition.AddToNode(noncurrentVersionTransitionNode);
+ }
+
+ if(m_noncurrentVersionExpirationHasBeenSet)
+ {
+ XmlNode noncurrentVersionExpirationNode = parentNode.CreateChildElement("NoncurrentVersionExpiration");
+ m_noncurrentVersionExpiration.AddToNode(noncurrentVersionExpirationNode);
+ }
+
+ if(m_abortIncompleteMultipartUploadHasBeenSet)
+ {
+ XmlNode abortIncompleteMultipartUploadNode = parentNode.CreateChildElement("AbortIncompleteMultipartUpload");
+ m_abortIncompleteMultipartUpload.AddToNode(abortIncompleteMultipartUploadNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/S3KeyFilter.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/S3KeyFilter.cpp
new file mode 100644
index 0000000000..c3c1893237
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/S3KeyFilter.cpp
@@ -0,0 +1,73 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/S3KeyFilter.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
+{
+
+S3KeyFilter::S3KeyFilter() :
+ m_filterRulesHasBeenSet(false)
+{
+}
+
+S3KeyFilter::S3KeyFilter(const XmlNode& xmlNode) :
+ m_filterRulesHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+S3KeyFilter& S3KeyFilter::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode filterRulesNode = resultNode.FirstChild("FilterRule");
+ if(!filterRulesNode.IsNull())
+ {
+ XmlNode filterRuleMember = filterRulesNode;
+ while(!filterRuleMember.IsNull())
+ {
+ m_filterRules.push_back(filterRuleMember);
+ filterRuleMember = filterRuleMember.NextNode("FilterRule");
+ }
+
+ m_filterRulesHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void S3KeyFilter::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_filterRulesHasBeenSet)
+ {
+ for(const auto& item : m_filterRules)
+ {
+ XmlNode filterRulesNode = parentNode.CreateChildElement("FilterRule");
+ item.AddToNode(filterRulesNode);
+ }
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/S3Location.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/S3Location.cpp
new file mode 100644
index 0000000000..19615ed335
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/S3Location.cpp
@@ -0,0 +1,186 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/S3Location.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
+{
+
+S3Location::S3Location() :
+ m_bucketNameHasBeenSet(false),
+ m_prefixHasBeenSet(false),
+ m_encryptionHasBeenSet(false),
+ m_cannedACL(ObjectCannedACL::NOT_SET),
+ m_cannedACLHasBeenSet(false),
+ m_accessControlListHasBeenSet(false),
+ m_taggingHasBeenSet(false),
+ m_userMetadataHasBeenSet(false),
+ m_storageClass(StorageClass::NOT_SET),
+ m_storageClassHasBeenSet(false)
+{
+}
+
+S3Location::S3Location(const XmlNode& xmlNode) :
+ m_bucketNameHasBeenSet(false),
+ m_prefixHasBeenSet(false),
+ m_encryptionHasBeenSet(false),
+ m_cannedACL(ObjectCannedACL::NOT_SET),
+ m_cannedACLHasBeenSet(false),
+ m_accessControlListHasBeenSet(false),
+ m_taggingHasBeenSet(false),
+ m_userMetadataHasBeenSet(false),
+ m_storageClass(StorageClass::NOT_SET),
+ m_storageClassHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+S3Location& S3Location::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode bucketNameNode = resultNode.FirstChild("BucketName");
+ if(!bucketNameNode.IsNull())
+ {
+ m_bucketName = Aws::Utils::Xml::DecodeEscapedXmlText(bucketNameNode.GetText());
+ m_bucketNameHasBeenSet = true;
+ }
+ XmlNode prefixNode = resultNode.FirstChild("Prefix");
+ if(!prefixNode.IsNull())
+ {
+ m_prefix = Aws::Utils::Xml::DecodeEscapedXmlText(prefixNode.GetText());
+ m_prefixHasBeenSet = true;
+ }
+ XmlNode encryptionNode = resultNode.FirstChild("Encryption");
+ if(!encryptionNode.IsNull())
+ {
+ m_encryption = encryptionNode;
+ m_encryptionHasBeenSet = true;
+ }
+ XmlNode cannedACLNode = resultNode.FirstChild("CannedACL");
+ if(!cannedACLNode.IsNull())
+ {
+ m_cannedACL = ObjectCannedACLMapper::GetObjectCannedACLForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(cannedACLNode.GetText()).c_str()).c_str());
+ m_cannedACLHasBeenSet = true;
+ }
+ XmlNode accessControlListNode = resultNode.FirstChild("AccessControlList");
+ if(!accessControlListNode.IsNull())
+ {
+ XmlNode accessControlListMember = accessControlListNode.FirstChild("Grant");
+ while(!accessControlListMember.IsNull())
+ {
+ m_accessControlList.push_back(accessControlListMember);
+ accessControlListMember = accessControlListMember.NextNode("Grant");
+ }
+
+ m_accessControlListHasBeenSet = true;
+ }
+ XmlNode taggingNode = resultNode.FirstChild("Tagging");
+ if(!taggingNode.IsNull())
+ {
+ m_tagging = taggingNode;
+ m_taggingHasBeenSet = true;
+ }
+ XmlNode userMetadataNode = resultNode.FirstChild("UserMetadata");
+ if(!userMetadataNode.IsNull())
+ {
+ XmlNode userMetadataMember = userMetadataNode.FirstChild("MetadataEntry");
+ while(!userMetadataMember.IsNull())
+ {
+ m_userMetadata.push_back(userMetadataMember);
+ userMetadataMember = userMetadataMember.NextNode("MetadataEntry");
+ }
+
+ m_userMetadataHasBeenSet = true;
+ }
+ XmlNode storageClassNode = resultNode.FirstChild("StorageClass");
+ if(!storageClassNode.IsNull())
+ {
+ m_storageClass = StorageClassMapper::GetStorageClassForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(storageClassNode.GetText()).c_str()).c_str());
+ m_storageClassHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void S3Location::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_bucketNameHasBeenSet)
+ {
+ XmlNode bucketNameNode = parentNode.CreateChildElement("BucketName");
+ bucketNameNode.SetText(m_bucketName);
+ }
+
+ if(m_prefixHasBeenSet)
+ {
+ XmlNode prefixNode = parentNode.CreateChildElement("Prefix");
+ prefixNode.SetText(m_prefix);
+ }
+
+ if(m_encryptionHasBeenSet)
+ {
+ XmlNode encryptionNode = parentNode.CreateChildElement("Encryption");
+ m_encryption.AddToNode(encryptionNode);
+ }
+
+ if(m_cannedACLHasBeenSet)
+ {
+ XmlNode cannedACLNode = parentNode.CreateChildElement("CannedACL");
+ cannedACLNode.SetText(ObjectCannedACLMapper::GetNameForObjectCannedACL(m_cannedACL));
+ }
+
+ if(m_accessControlListHasBeenSet)
+ {
+ XmlNode accessControlListParentNode = parentNode.CreateChildElement("AccessControlList");
+ for(const auto& item : m_accessControlList)
+ {
+ XmlNode accessControlListNode = accessControlListParentNode.CreateChildElement("Grant");
+ item.AddToNode(accessControlListNode);
+ }
+ }
+
+ if(m_taggingHasBeenSet)
+ {
+ XmlNode taggingNode = parentNode.CreateChildElement("Tagging");
+ m_tagging.AddToNode(taggingNode);
+ }
+
+ if(m_userMetadataHasBeenSet)
+ {
+ XmlNode userMetadataParentNode = parentNode.CreateChildElement("UserMetadata");
+ for(const auto& item : m_userMetadata)
+ {
+ XmlNode userMetadataNode = userMetadataParentNode.CreateChildElement("MetadataEntry");
+ item.AddToNode(userMetadataNode);
+ }
+ }
+
+ if(m_storageClassHasBeenSet)
+ {
+ XmlNode storageClassNode = parentNode.CreateChildElement("StorageClass");
+ storageClassNode.SetText(StorageClassMapper::GetNameForStorageClass(m_storageClass));
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/SSEKMS.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/SSEKMS.cpp
new file mode 100644
index 0000000000..5f2b5ea544
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/SSEKMS.cpp
@@ -0,0 +1,64 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/SSEKMS.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
+{
+
+SSEKMS::SSEKMS() :
+ m_keyIdHasBeenSet(false)
+{
+}
+
+SSEKMS::SSEKMS(const XmlNode& xmlNode) :
+ m_keyIdHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+SSEKMS& SSEKMS::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode keyIdNode = resultNode.FirstChild("KeyId");
+ if(!keyIdNode.IsNull())
+ {
+ m_keyId = Aws::Utils::Xml::DecodeEscapedXmlText(keyIdNode.GetText());
+ m_keyIdHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void SSEKMS::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_keyIdHasBeenSet)
+ {
+ XmlNode keyIdNode = parentNode.CreateChildElement("KeyId");
+ keyIdNode.SetText(m_keyId);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/SSES3.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/SSES3.cpp
new file mode 100644
index 0000000000..c76e55718b
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/SSES3.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/SSES3.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
+{
+
+SSES3::SSES3()
+{
+}
+
+SSES3::SSES3(const XmlNode& xmlNode)
+{
+ *this = xmlNode;
+}
+
+SSES3& SSES3::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ }
+
+ return *this;
+}
+
+void SSES3::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/ScanRange.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ScanRange.cpp
new file mode 100644
index 0000000000..c52aaa02c2
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ScanRange.cpp
@@ -0,0 +1,86 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ScanRange.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
+{
+
+ScanRange::ScanRange() :
+ m_start(0),
+ m_startHasBeenSet(false),
+ m_end(0),
+ m_endHasBeenSet(false)
+{
+}
+
+ScanRange::ScanRange(const XmlNode& xmlNode) :
+ m_start(0),
+ m_startHasBeenSet(false),
+ m_end(0),
+ m_endHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+ScanRange& ScanRange::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode startNode = resultNode.FirstChild("Start");
+ if(!startNode.IsNull())
+ {
+ m_start = StringUtils::ConvertToInt64(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(startNode.GetText()).c_str()).c_str());
+ m_startHasBeenSet = true;
+ }
+ XmlNode endNode = resultNode.FirstChild("End");
+ if(!endNode.IsNull())
+ {
+ m_end = StringUtils::ConvertToInt64(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(endNode.GetText()).c_str()).c_str());
+ m_endHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void ScanRange::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_startHasBeenSet)
+ {
+ XmlNode startNode = parentNode.CreateChildElement("Start");
+ ss << m_start;
+ startNode.SetText(ss.str());
+ ss.str("");
+ }
+
+ if(m_endHasBeenSet)
+ {
+ XmlNode endNode = parentNode.CreateChildElement("End");
+ ss << m_end;
+ endNode.SetText(ss.str());
+ ss.str("");
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/SelectObjectContentHandler.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/SelectObjectContentHandler.cpp
new file mode 100644
index 0000000000..a4e8756d27
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/SelectObjectContentHandler.cpp
@@ -0,0 +1,271 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/SelectObjectContentHandler.h>
+#include <aws/s3/S3ErrorMarshaller.h>
+#include <aws/core/client/CoreErrors.h>
+#include <aws/core/utils/event/EventStreamErrors.h>
+#include <aws/core/utils/logging/LogMacros.h>
+#include <aws/core/utils/xml/XmlSerializer.h>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Event;
+using namespace Aws::Utils::Xml;
+
+namespace Aws
+{
+namespace S3
+{
+namespace Model
+{
+ using namespace Aws::Client;
+
+ static const char SELECTOBJECTCONTENT_HANDLER_CLASS_TAG[] = "SelectObjectContentHandler";
+
+ SelectObjectContentHandler::SelectObjectContentHandler() : EventStreamHandler()
+ {
+ m_onRecordsEvent = [&](const RecordsEvent&)
+ {
+ AWS_LOGSTREAM_TRACE(SELECTOBJECTCONTENT_HANDLER_CLASS_TAG, "RecordsEvent received.");
+ };
+
+ m_onStatsEvent = [&](const StatsEvent&)
+ {
+ AWS_LOGSTREAM_TRACE(SELECTOBJECTCONTENT_HANDLER_CLASS_TAG, "StatsEvent received.");
+ };
+
+ m_onProgressEvent = [&](const ProgressEvent&)
+ {
+ AWS_LOGSTREAM_TRACE(SELECTOBJECTCONTENT_HANDLER_CLASS_TAG, "ProgressEvent received.");
+ };
+
+ m_onContinuationEvent = [&]()
+ {
+ AWS_LOGSTREAM_TRACE(SELECTOBJECTCONTENT_HANDLER_CLASS_TAG, "ContinuationEvent received.");
+ };
+
+ m_onEndEvent = [&]()
+ {
+ AWS_LOGSTREAM_TRACE(SELECTOBJECTCONTENT_HANDLER_CLASS_TAG, "EndEvent received.");
+ };
+
+ m_onError = [&](const AWSError<S3Errors>& error)
+ {
+ AWS_LOGSTREAM_TRACE(SELECTOBJECTCONTENT_HANDLER_CLASS_TAG, "S3 Errors received, " << error);
+ };
+ }
+
+ void SelectObjectContentHandler::OnEvent()
+ {
+ // Handler internal error during event stream decoding.
+ if (!*this)
+ {
+ AWSError<CoreErrors> error = EventStreamErrorsMapper::GetAwsErrorForEventStreamError(GetInternalError());
+ error.SetMessage(GetEventPayloadAsString());
+ m_onError(AWSError<S3Errors>(error));
+ return;
+ }
+
+ const auto& headers = GetEventHeaders();
+ auto messageTypeHeaderIter = headers.find(MESSAGE_TYPE_HEADER);
+ if (messageTypeHeaderIter == headers.end())
+ {
+ AWS_LOGSTREAM_WARN(SELECTOBJECTCONTENT_HANDLER_CLASS_TAG, "Header: " << MESSAGE_TYPE_HEADER << " not found in the message.");
+ return;
+ }
+
+ switch (Aws::Utils::Event::Message::GetMessageTypeForName(messageTypeHeaderIter->second.GetEventHeaderValueAsString()))
+ {
+ case Aws::Utils::Event::Message::MessageType::EVENT:
+ HandleEventInMessage();
+ break;
+ case Aws::Utils::Event::Message::MessageType::REQUEST_LEVEL_ERROR:
+ case Aws::Utils::Event::Message::MessageType::REQUEST_LEVEL_EXCEPTION:
+ {
+ HandleErrorInMessage();
+ break;
+ }
+ default:
+ AWS_LOGSTREAM_WARN(SELECTOBJECTCONTENT_HANDLER_CLASS_TAG,
+ "Unexpected message type: " << messageTypeHeaderIter->second.GetEventHeaderValueAsString());
+ break;
+ }
+ }
+
+ void SelectObjectContentHandler::HandleEventInMessage()
+ {
+ const auto& headers = GetEventHeaders();
+ auto eventTypeHeaderIter = headers.find(EVENT_TYPE_HEADER);
+ if (eventTypeHeaderIter == headers.end())
+ {
+ AWS_LOGSTREAM_WARN(SELECTOBJECTCONTENT_HANDLER_CLASS_TAG, "Header: " << EVENT_TYPE_HEADER << " not found in the message.");
+ return;
+ }
+ switch (SelectObjectContentEventMapper::GetSelectObjectContentEventTypeForName(eventTypeHeaderIter->second.GetEventHeaderValueAsString()))
+ {
+ case SelectObjectContentEventType::RECORDS:
+ {
+ RecordsEvent event(GetEventPayloadWithOwnership());
+ m_onRecordsEvent(event);
+ break;
+ }
+ case SelectObjectContentEventType::STATS:
+ {
+ auto xmlDoc = XmlDocument::CreateFromXmlString(GetEventPayloadAsString());
+ if (!xmlDoc.WasParseSuccessful())
+ {
+ AWS_LOGSTREAM_WARN(SELECTOBJECTCONTENT_HANDLER_CLASS_TAG, "Unable to generate a proper StatsEvent object from the response in XML format.");
+ break;
+ }
+
+ m_onStatsEvent(StatsEvent(xmlDoc.GetRootElement()));
+ break;
+ }
+ case SelectObjectContentEventType::PROGRESS:
+ {
+ auto xmlDoc = XmlDocument::CreateFromXmlString(GetEventPayloadAsString());
+ if (!xmlDoc.WasParseSuccessful())
+ {
+ AWS_LOGSTREAM_WARN(SELECTOBJECTCONTENT_HANDLER_CLASS_TAG, "Unable to generate a proper ProgressEvent object from the response in XML format.");
+ break;
+ }
+
+ m_onProgressEvent(ProgressEvent(xmlDoc.GetRootElement()));
+ break;
+ }
+ case SelectObjectContentEventType::CONT:
+ {
+ m_onContinuationEvent();
+ break;
+ }
+ case SelectObjectContentEventType::END:
+ {
+ m_onEndEvent();
+ break;
+ }
+ default:
+ AWS_LOGSTREAM_WARN(SELECTOBJECTCONTENT_HANDLER_CLASS_TAG,
+ "Unexpected event type: " << eventTypeHeaderIter->second.GetEventHeaderValueAsString());
+ break;
+ }
+ }
+
+ void SelectObjectContentHandler::HandleErrorInMessage()
+ {
+ const auto& headers = GetEventHeaders();
+ Aws::String errorCode;
+ Aws::String errorMessage;
+ auto errorHeaderIter = headers.find(ERROR_CODE_HEADER);
+ if (errorHeaderIter == headers.end())
+ {
+ errorHeaderIter = headers.find(EXCEPTION_TYPE_HEADER);
+ if (errorHeaderIter == headers.end())
+ {
+ AWS_LOGSTREAM_WARN(SELECTOBJECTCONTENT_HANDLER_CLASS_TAG,
+ "Error type was not found in the event message.");
+ return;
+ }
+ }
+
+ errorCode = errorHeaderIter->second.GetEventHeaderValueAsString();
+ errorHeaderIter = headers.find(ERROR_MESSAGE_HEADER);
+ if (errorHeaderIter == headers.end())
+ {
+ errorHeaderIter = headers.find(EXCEPTION_TYPE_HEADER);
+ if (errorHeaderIter == headers.end())
+ {
+ AWS_LOGSTREAM_WARN(SELECTOBJECTCONTENT_HANDLER_CLASS_TAG,
+ "Error description was not found in the event message.");
+ return;
+ }
+ }
+ errorMessage = errorHeaderIter->second.GetEventHeaderValueAsString();
+ MarshallError(errorCode, errorMessage);
+ }
+
+ void SelectObjectContentHandler::MarshallError(const Aws::String& errorCode, const Aws::String& errorMessage)
+ {
+ S3ErrorMarshaller errorMarshaller;
+ AWSError<CoreErrors> error;
+
+ if (errorCode.empty())
+ {
+ error = AWSError<CoreErrors>(CoreErrors::UNKNOWN, "", errorMessage, false);
+ }
+ else
+ {
+ error = errorMarshaller.FindErrorByName(errorMessage.c_str());
+ if (error.GetErrorType() != CoreErrors::UNKNOWN)
+ {
+ AWS_LOGSTREAM_WARN(SELECTOBJECTCONTENT_HANDLER_CLASS_TAG, "Encountered AWSError '" << errorCode.c_str() << "': " << errorMessage.c_str());
+ error.SetExceptionName(errorCode);
+ error.SetMessage(errorMessage);
+ }
+ else
+ {
+ AWS_LOGSTREAM_WARN(SELECTOBJECTCONTENT_HANDLER_CLASS_TAG, "Encountered Unknown AWSError '" << errorCode.c_str() << "': " << errorMessage.c_str());
+ error = AWSError<CoreErrors>(CoreErrors::UNKNOWN, errorCode, "Unable to parse ExceptionName: " + errorCode + " Message: " + errorMessage, false);
+ }
+ }
+
+ m_onError(AWSError<S3Errors>(error));
+ }
+
+namespace SelectObjectContentEventMapper
+{
+ static const int RECORDS_HASH = Aws::Utils::HashingUtils::HashString("Records");
+ static const int STATS_HASH = Aws::Utils::HashingUtils::HashString("Stats");
+ static const int PROGRESS_HASH = Aws::Utils::HashingUtils::HashString("Progress");
+ static const int CONT_HASH = Aws::Utils::HashingUtils::HashString("Cont");
+ static const int END_HASH = Aws::Utils::HashingUtils::HashString("End");
+
+ SelectObjectContentEventType GetSelectObjectContentEventTypeForName(const Aws::String& name)
+ {
+ int hashCode = Aws::Utils::HashingUtils::HashString(name.c_str());
+ if (hashCode == RECORDS_HASH)
+ {
+ return SelectObjectContentEventType::RECORDS;
+ }
+ else if (hashCode == STATS_HASH)
+ {
+ return SelectObjectContentEventType::STATS;
+ }
+ else if (hashCode == PROGRESS_HASH)
+ {
+ return SelectObjectContentEventType::PROGRESS;
+ }
+ else if (hashCode == CONT_HASH)
+ {
+ return SelectObjectContentEventType::CONT;
+ }
+ else if (hashCode == END_HASH)
+ {
+ return SelectObjectContentEventType::END;
+ }
+ return SelectObjectContentEventType::UNKNOWN;
+ }
+
+ Aws::String GetNameForSelectObjectContentEventType(SelectObjectContentEventType value)
+ {
+ switch (value)
+ {
+ case SelectObjectContentEventType::RECORDS:
+ return "Records";
+ case SelectObjectContentEventType::STATS:
+ return "Stats";
+ case SelectObjectContentEventType::PROGRESS:
+ return "Progress";
+ case SelectObjectContentEventType::CONT:
+ return "Cont";
+ case SelectObjectContentEventType::END:
+ return "End";
+ default:
+ return "Unknown";
+ }
+ }
+} // namespace SelectObjectContentEventMapper
+} // namespace Model
+} // namespace S3
+} // namespace Aws
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
new file mode 100644
index 0000000000..f3443311dd
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/SelectObjectContentRequest.cpp
@@ -0,0 +1,140 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/SelectObjectContentRequest.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;
+
+SelectObjectContentRequest::SelectObjectContentRequest() :
+ m_bucketHasBeenSet(false),
+ m_keyHasBeenSet(false),
+ m_sSECustomerAlgorithmHasBeenSet(false),
+ m_sSECustomerKeyHasBeenSet(false),
+ m_sSECustomerKeyMD5HasBeenSet(false),
+ m_expressionHasBeenSet(false),
+ m_expressionType(ExpressionType::NOT_SET),
+ m_expressionTypeHasBeenSet(false),
+ m_requestProgressHasBeenSet(false),
+ m_inputSerializationHasBeenSet(false),
+ m_outputSerializationHasBeenSet(false),
+ m_scanRangeHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false),
+ m_decoder(Aws::Utils::Event::EventStreamDecoder(&m_handler))
+{
+}
+
+Aws::String SelectObjectContentRequest::SerializePayload() const
+{
+ XmlDocument payloadDoc = XmlDocument::CreateWithRootNode("SelectObjectContentRequest");
+
+ XmlNode parentNode = payloadDoc.GetRootElement();
+ parentNode.SetAttributeValue("xmlns", "http://s3.amazonaws.com/doc/2006-03-01/");
+
+ Aws::StringStream ss;
+ if(m_expressionHasBeenSet)
+ {
+ XmlNode expressionNode = parentNode.CreateChildElement("Expression");
+ expressionNode.SetText(m_expression);
+ }
+
+ if(m_expressionTypeHasBeenSet)
+ {
+ XmlNode expressionTypeNode = parentNode.CreateChildElement("ExpressionType");
+ expressionTypeNode.SetText(ExpressionTypeMapper::GetNameForExpressionType(m_expressionType));
+ }
+
+ if(m_requestProgressHasBeenSet)
+ {
+ XmlNode requestProgressNode = parentNode.CreateChildElement("RequestProgress");
+ m_requestProgress.AddToNode(requestProgressNode);
+ }
+
+ if(m_inputSerializationHasBeenSet)
+ {
+ XmlNode inputSerializationNode = parentNode.CreateChildElement("InputSerialization");
+ m_inputSerialization.AddToNode(inputSerializationNode);
+ }
+
+ if(m_outputSerializationHasBeenSet)
+ {
+ XmlNode outputSerializationNode = parentNode.CreateChildElement("OutputSerialization");
+ m_outputSerialization.AddToNode(outputSerializationNode);
+ }
+
+ if(m_scanRangeHasBeenSet)
+ {
+ XmlNode scanRangeNode = parentNode.CreateChildElement("ScanRange");
+ m_scanRange.AddToNode(scanRangeNode);
+ }
+
+ return payloadDoc.ConvertToString();
+}
+
+void SelectObjectContentRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ 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 SelectObjectContentRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ 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_expectedBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedBucketOwner;
+ headers.emplace("x-amz-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/SelectParameters.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/SelectParameters.cpp
new file mode 100644
index 0000000000..f7891a00d7
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/SelectParameters.cpp
@@ -0,0 +1,108 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/SelectParameters.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
+{
+
+SelectParameters::SelectParameters() :
+ m_inputSerializationHasBeenSet(false),
+ m_expressionType(ExpressionType::NOT_SET),
+ m_expressionTypeHasBeenSet(false),
+ m_expressionHasBeenSet(false),
+ m_outputSerializationHasBeenSet(false)
+{
+}
+
+SelectParameters::SelectParameters(const XmlNode& xmlNode) :
+ m_inputSerializationHasBeenSet(false),
+ m_expressionType(ExpressionType::NOT_SET),
+ m_expressionTypeHasBeenSet(false),
+ m_expressionHasBeenSet(false),
+ m_outputSerializationHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+SelectParameters& SelectParameters::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode inputSerializationNode = resultNode.FirstChild("InputSerialization");
+ if(!inputSerializationNode.IsNull())
+ {
+ m_inputSerialization = inputSerializationNode;
+ m_inputSerializationHasBeenSet = true;
+ }
+ XmlNode expressionTypeNode = resultNode.FirstChild("ExpressionType");
+ if(!expressionTypeNode.IsNull())
+ {
+ m_expressionType = ExpressionTypeMapper::GetExpressionTypeForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(expressionTypeNode.GetText()).c_str()).c_str());
+ m_expressionTypeHasBeenSet = true;
+ }
+ XmlNode expressionNode = resultNode.FirstChild("Expression");
+ if(!expressionNode.IsNull())
+ {
+ m_expression = Aws::Utils::Xml::DecodeEscapedXmlText(expressionNode.GetText());
+ m_expressionHasBeenSet = true;
+ }
+ XmlNode outputSerializationNode = resultNode.FirstChild("OutputSerialization");
+ if(!outputSerializationNode.IsNull())
+ {
+ m_outputSerialization = outputSerializationNode;
+ m_outputSerializationHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void SelectParameters::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_inputSerializationHasBeenSet)
+ {
+ XmlNode inputSerializationNode = parentNode.CreateChildElement("InputSerialization");
+ m_inputSerialization.AddToNode(inputSerializationNode);
+ }
+
+ if(m_expressionTypeHasBeenSet)
+ {
+ XmlNode expressionTypeNode = parentNode.CreateChildElement("ExpressionType");
+ expressionTypeNode.SetText(ExpressionTypeMapper::GetNameForExpressionType(m_expressionType));
+ }
+
+ if(m_expressionHasBeenSet)
+ {
+ XmlNode expressionNode = parentNode.CreateChildElement("Expression");
+ expressionNode.SetText(m_expression);
+ }
+
+ if(m_outputSerializationHasBeenSet)
+ {
+ XmlNode outputSerializationNode = parentNode.CreateChildElement("OutputSerialization");
+ m_outputSerialization.AddToNode(outputSerializationNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ServerSideEncryption.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ServerSideEncryption.cpp
new file mode 100644
index 0000000000..08474a6aee
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ServerSideEncryption.cpp
@@ -0,0 +1,70 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ServerSideEncryption.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 ServerSideEncryptionMapper
+ {
+
+ static const int AES256_HASH = HashingUtils::HashString("AES256");
+ static const int aws_kms_HASH = HashingUtils::HashString("aws:kms");
+
+
+ ServerSideEncryption GetServerSideEncryptionForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == AES256_HASH)
+ {
+ return ServerSideEncryption::AES256;
+ }
+ else if (hashCode == aws_kms_HASH)
+ {
+ return ServerSideEncryption::aws_kms;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<ServerSideEncryption>(hashCode);
+ }
+
+ return ServerSideEncryption::NOT_SET;
+ }
+
+ Aws::String GetNameForServerSideEncryption(ServerSideEncryption enumValue)
+ {
+ switch(enumValue)
+ {
+ case ServerSideEncryption::AES256:
+ return "AES256";
+ case ServerSideEncryption::aws_kms:
+ return "aws:kms";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace ServerSideEncryptionMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ServerSideEncryptionByDefault.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ServerSideEncryptionByDefault.cpp
new file mode 100644
index 0000000000..aca556a65d
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ServerSideEncryptionByDefault.cpp
@@ -0,0 +1,80 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ServerSideEncryptionByDefault.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
+{
+
+ServerSideEncryptionByDefault::ServerSideEncryptionByDefault() :
+ m_sSEAlgorithm(ServerSideEncryption::NOT_SET),
+ m_sSEAlgorithmHasBeenSet(false),
+ m_kMSMasterKeyIDHasBeenSet(false)
+{
+}
+
+ServerSideEncryptionByDefault::ServerSideEncryptionByDefault(const XmlNode& xmlNode) :
+ m_sSEAlgorithm(ServerSideEncryption::NOT_SET),
+ m_sSEAlgorithmHasBeenSet(false),
+ m_kMSMasterKeyIDHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+ServerSideEncryptionByDefault& ServerSideEncryptionByDefault::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode sSEAlgorithmNode = resultNode.FirstChild("SSEAlgorithm");
+ if(!sSEAlgorithmNode.IsNull())
+ {
+ m_sSEAlgorithm = ServerSideEncryptionMapper::GetServerSideEncryptionForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(sSEAlgorithmNode.GetText()).c_str()).c_str());
+ m_sSEAlgorithmHasBeenSet = true;
+ }
+ XmlNode kMSMasterKeyIDNode = resultNode.FirstChild("KMSMasterKeyID");
+ if(!kMSMasterKeyIDNode.IsNull())
+ {
+ m_kMSMasterKeyID = Aws::Utils::Xml::DecodeEscapedXmlText(kMSMasterKeyIDNode.GetText());
+ m_kMSMasterKeyIDHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void ServerSideEncryptionByDefault::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_sSEAlgorithmHasBeenSet)
+ {
+ XmlNode sSEAlgorithmNode = parentNode.CreateChildElement("SSEAlgorithm");
+ sSEAlgorithmNode.SetText(ServerSideEncryptionMapper::GetNameForServerSideEncryption(m_sSEAlgorithm));
+ }
+
+ if(m_kMSMasterKeyIDHasBeenSet)
+ {
+ XmlNode kMSMasterKeyIDNode = parentNode.CreateChildElement("KMSMasterKeyID");
+ kMSMasterKeyIDNode.SetText(m_kMSMasterKeyID);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ServerSideEncryptionConfiguration.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ServerSideEncryptionConfiguration.cpp
new file mode 100644
index 0000000000..eebbc32acc
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ServerSideEncryptionConfiguration.cpp
@@ -0,0 +1,73 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ServerSideEncryptionConfiguration.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
+{
+
+ServerSideEncryptionConfiguration::ServerSideEncryptionConfiguration() :
+ m_rulesHasBeenSet(false)
+{
+}
+
+ServerSideEncryptionConfiguration::ServerSideEncryptionConfiguration(const XmlNode& xmlNode) :
+ m_rulesHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+ServerSideEncryptionConfiguration& ServerSideEncryptionConfiguration::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode rulesNode = resultNode.FirstChild("Rule");
+ if(!rulesNode.IsNull())
+ {
+ XmlNode ruleMember = rulesNode;
+ while(!ruleMember.IsNull())
+ {
+ m_rules.push_back(ruleMember);
+ ruleMember = ruleMember.NextNode("Rule");
+ }
+
+ m_rulesHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void ServerSideEncryptionConfiguration::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_rulesHasBeenSet)
+ {
+ for(const auto& item : m_rules)
+ {
+ XmlNode rulesNode = parentNode.CreateChildElement("Rule");
+ item.AddToNode(rulesNode);
+ }
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ServerSideEncryptionRule.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ServerSideEncryptionRule.cpp
new file mode 100644
index 0000000000..6c14b66989
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/ServerSideEncryptionRule.cpp
@@ -0,0 +1,82 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/ServerSideEncryptionRule.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
+{
+
+ServerSideEncryptionRule::ServerSideEncryptionRule() :
+ m_applyServerSideEncryptionByDefaultHasBeenSet(false),
+ m_bucketKeyEnabled(false),
+ m_bucketKeyEnabledHasBeenSet(false)
+{
+}
+
+ServerSideEncryptionRule::ServerSideEncryptionRule(const XmlNode& xmlNode) :
+ m_applyServerSideEncryptionByDefaultHasBeenSet(false),
+ m_bucketKeyEnabled(false),
+ m_bucketKeyEnabledHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+ServerSideEncryptionRule& ServerSideEncryptionRule::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode applyServerSideEncryptionByDefaultNode = resultNode.FirstChild("ApplyServerSideEncryptionByDefault");
+ if(!applyServerSideEncryptionByDefaultNode.IsNull())
+ {
+ m_applyServerSideEncryptionByDefault = applyServerSideEncryptionByDefaultNode;
+ m_applyServerSideEncryptionByDefaultHasBeenSet = true;
+ }
+ XmlNode bucketKeyEnabledNode = resultNode.FirstChild("BucketKeyEnabled");
+ if(!bucketKeyEnabledNode.IsNull())
+ {
+ m_bucketKeyEnabled = StringUtils::ConvertToBool(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(bucketKeyEnabledNode.GetText()).c_str()).c_str());
+ m_bucketKeyEnabledHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void ServerSideEncryptionRule::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_applyServerSideEncryptionByDefaultHasBeenSet)
+ {
+ XmlNode applyServerSideEncryptionByDefaultNode = parentNode.CreateChildElement("ApplyServerSideEncryptionByDefault");
+ m_applyServerSideEncryptionByDefault.AddToNode(applyServerSideEncryptionByDefaultNode);
+ }
+
+ if(m_bucketKeyEnabledHasBeenSet)
+ {
+ XmlNode bucketKeyEnabledNode = parentNode.CreateChildElement("BucketKeyEnabled");
+ ss << std::boolalpha << m_bucketKeyEnabled;
+ bucketKeyEnabledNode.SetText(ss.str());
+ ss.str("");
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/SourceSelectionCriteria.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/SourceSelectionCriteria.cpp
new file mode 100644
index 0000000000..5f712101f5
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/SourceSelectionCriteria.cpp
@@ -0,0 +1,78 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/SourceSelectionCriteria.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
+{
+
+SourceSelectionCriteria::SourceSelectionCriteria() :
+ m_sseKmsEncryptedObjectsHasBeenSet(false),
+ m_replicaModificationsHasBeenSet(false)
+{
+}
+
+SourceSelectionCriteria::SourceSelectionCriteria(const XmlNode& xmlNode) :
+ m_sseKmsEncryptedObjectsHasBeenSet(false),
+ m_replicaModificationsHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+SourceSelectionCriteria& SourceSelectionCriteria::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode sseKmsEncryptedObjectsNode = resultNode.FirstChild("SseKmsEncryptedObjects");
+ if(!sseKmsEncryptedObjectsNode.IsNull())
+ {
+ m_sseKmsEncryptedObjects = sseKmsEncryptedObjectsNode;
+ m_sseKmsEncryptedObjectsHasBeenSet = true;
+ }
+ XmlNode replicaModificationsNode = resultNode.FirstChild("ReplicaModifications");
+ if(!replicaModificationsNode.IsNull())
+ {
+ m_replicaModifications = replicaModificationsNode;
+ m_replicaModificationsHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void SourceSelectionCriteria::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_sseKmsEncryptedObjectsHasBeenSet)
+ {
+ XmlNode sseKmsEncryptedObjectsNode = parentNode.CreateChildElement("SseKmsEncryptedObjects");
+ m_sseKmsEncryptedObjects.AddToNode(sseKmsEncryptedObjectsNode);
+ }
+
+ if(m_replicaModificationsHasBeenSet)
+ {
+ XmlNode replicaModificationsNode = parentNode.CreateChildElement("ReplicaModifications");
+ m_replicaModifications.AddToNode(replicaModificationsNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/SseKmsEncryptedObjects.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/SseKmsEncryptedObjects.cpp
new file mode 100644
index 0000000000..94e7e9091d
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/SseKmsEncryptedObjects.cpp
@@ -0,0 +1,66 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/SseKmsEncryptedObjects.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
+{
+
+SseKmsEncryptedObjects::SseKmsEncryptedObjects() :
+ m_status(SseKmsEncryptedObjectsStatus::NOT_SET),
+ m_statusHasBeenSet(false)
+{
+}
+
+SseKmsEncryptedObjects::SseKmsEncryptedObjects(const XmlNode& xmlNode) :
+ m_status(SseKmsEncryptedObjectsStatus::NOT_SET),
+ m_statusHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+SseKmsEncryptedObjects& SseKmsEncryptedObjects::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode statusNode = resultNode.FirstChild("Status");
+ if(!statusNode.IsNull())
+ {
+ m_status = SseKmsEncryptedObjectsStatusMapper::GetSseKmsEncryptedObjectsStatusForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(statusNode.GetText()).c_str()).c_str());
+ m_statusHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void SseKmsEncryptedObjects::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_statusHasBeenSet)
+ {
+ XmlNode statusNode = parentNode.CreateChildElement("Status");
+ statusNode.SetText(SseKmsEncryptedObjectsStatusMapper::GetNameForSseKmsEncryptedObjectsStatus(m_status));
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/SseKmsEncryptedObjectsStatus.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/SseKmsEncryptedObjectsStatus.cpp
new file mode 100644
index 0000000000..010a94fda5
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/SseKmsEncryptedObjectsStatus.cpp
@@ -0,0 +1,70 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/SseKmsEncryptedObjectsStatus.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 SseKmsEncryptedObjectsStatusMapper
+ {
+
+ static const int Enabled_HASH = HashingUtils::HashString("Enabled");
+ static const int Disabled_HASH = HashingUtils::HashString("Disabled");
+
+
+ SseKmsEncryptedObjectsStatus GetSseKmsEncryptedObjectsStatusForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == Enabled_HASH)
+ {
+ return SseKmsEncryptedObjectsStatus::Enabled;
+ }
+ else if (hashCode == Disabled_HASH)
+ {
+ return SseKmsEncryptedObjectsStatus::Disabled;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<SseKmsEncryptedObjectsStatus>(hashCode);
+ }
+
+ return SseKmsEncryptedObjectsStatus::NOT_SET;
+ }
+
+ Aws::String GetNameForSseKmsEncryptedObjectsStatus(SseKmsEncryptedObjectsStatus enumValue)
+ {
+ switch(enumValue)
+ {
+ case SseKmsEncryptedObjectsStatus::Enabled:
+ return "Enabled";
+ case SseKmsEncryptedObjectsStatus::Disabled:
+ return "Disabled";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace SseKmsEncryptedObjectsStatusMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Stats.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Stats.cpp
new file mode 100644
index 0000000000..5179103ef0
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Stats.cpp
@@ -0,0 +1,104 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/Stats.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
+{
+
+Stats::Stats() :
+ m_bytesScanned(0),
+ m_bytesScannedHasBeenSet(false),
+ m_bytesProcessed(0),
+ m_bytesProcessedHasBeenSet(false),
+ m_bytesReturned(0),
+ m_bytesReturnedHasBeenSet(false)
+{
+}
+
+Stats::Stats(const XmlNode& xmlNode) :
+ m_bytesScanned(0),
+ m_bytesScannedHasBeenSet(false),
+ m_bytesProcessed(0),
+ m_bytesProcessedHasBeenSet(false),
+ m_bytesReturned(0),
+ m_bytesReturnedHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+Stats& Stats::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode bytesScannedNode = resultNode.FirstChild("BytesScanned");
+ if(!bytesScannedNode.IsNull())
+ {
+ m_bytesScanned = StringUtils::ConvertToInt64(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(bytesScannedNode.GetText()).c_str()).c_str());
+ m_bytesScannedHasBeenSet = true;
+ }
+ XmlNode bytesProcessedNode = resultNode.FirstChild("BytesProcessed");
+ if(!bytesProcessedNode.IsNull())
+ {
+ m_bytesProcessed = StringUtils::ConvertToInt64(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(bytesProcessedNode.GetText()).c_str()).c_str());
+ m_bytesProcessedHasBeenSet = true;
+ }
+ XmlNode bytesReturnedNode = resultNode.FirstChild("BytesReturned");
+ if(!bytesReturnedNode.IsNull())
+ {
+ m_bytesReturned = StringUtils::ConvertToInt64(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(bytesReturnedNode.GetText()).c_str()).c_str());
+ m_bytesReturnedHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void Stats::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_bytesScannedHasBeenSet)
+ {
+ XmlNode bytesScannedNode = parentNode.CreateChildElement("BytesScanned");
+ ss << m_bytesScanned;
+ bytesScannedNode.SetText(ss.str());
+ ss.str("");
+ }
+
+ if(m_bytesProcessedHasBeenSet)
+ {
+ XmlNode bytesProcessedNode = parentNode.CreateChildElement("BytesProcessed");
+ ss << m_bytesProcessed;
+ bytesProcessedNode.SetText(ss.str());
+ ss.str("");
+ }
+
+ if(m_bytesReturnedHasBeenSet)
+ {
+ XmlNode bytesReturnedNode = parentNode.CreateChildElement("BytesReturned");
+ ss << m_bytesReturned;
+ bytesReturnedNode.SetText(ss.str());
+ ss.str("");
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/StatsEvent.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/StatsEvent.cpp
new file mode 100644
index 0000000000..7e04773139
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/StatsEvent.cpp
@@ -0,0 +1,64 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/StatsEvent.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
+{
+
+StatsEvent::StatsEvent() :
+ m_detailsHasBeenSet(false)
+{
+}
+
+StatsEvent::StatsEvent(const XmlNode& xmlNode) :
+ m_detailsHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+StatsEvent& StatsEvent::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode detailsNode = resultNode;
+ if(!detailsNode.IsNull())
+ {
+ m_details = detailsNode;
+ m_detailsHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void StatsEvent::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_detailsHasBeenSet)
+ {
+ XmlNode detailsNode = parentNode.CreateChildElement("Details");
+ m_details.AddToNode(detailsNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
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
new file mode 100644
index 0000000000..0ab7edd5de
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/StorageClass.cpp
@@ -0,0 +1,112 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/StorageClass.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 StorageClassMapper
+ {
+
+ static const int STANDARD_HASH = HashingUtils::HashString("STANDARD");
+ static const int REDUCED_REDUNDANCY_HASH = HashingUtils::HashString("REDUCED_REDUNDANCY");
+ static const int STANDARD_IA_HASH = HashingUtils::HashString("STANDARD_IA");
+ static const int ONEZONE_IA_HASH = HashingUtils::HashString("ONEZONE_IA");
+ static const int INTELLIGENT_TIERING_HASH = HashingUtils::HashString("INTELLIGENT_TIERING");
+ 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");
+
+
+ StorageClass GetStorageClassForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == STANDARD_HASH)
+ {
+ return StorageClass::STANDARD;
+ }
+ else if (hashCode == REDUCED_REDUNDANCY_HASH)
+ {
+ return StorageClass::REDUCED_REDUNDANCY;
+ }
+ else if (hashCode == STANDARD_IA_HASH)
+ {
+ return StorageClass::STANDARD_IA;
+ }
+ else if (hashCode == ONEZONE_IA_HASH)
+ {
+ return StorageClass::ONEZONE_IA;
+ }
+ else if (hashCode == INTELLIGENT_TIERING_HASH)
+ {
+ return StorageClass::INTELLIGENT_TIERING;
+ }
+ else if (hashCode == GLACIER_HASH)
+ {
+ return StorageClass::GLACIER;
+ }
+ else if (hashCode == DEEP_ARCHIVE_HASH)
+ {
+ return StorageClass::DEEP_ARCHIVE;
+ }
+ else if (hashCode == OUTPOSTS_HASH)
+ {
+ return StorageClass::OUTPOSTS;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<StorageClass>(hashCode);
+ }
+
+ return StorageClass::NOT_SET;
+ }
+
+ Aws::String GetNameForStorageClass(StorageClass enumValue)
+ {
+ switch(enumValue)
+ {
+ case StorageClass::STANDARD:
+ return "STANDARD";
+ case StorageClass::REDUCED_REDUNDANCY:
+ return "REDUCED_REDUNDANCY";
+ case StorageClass::STANDARD_IA:
+ return "STANDARD_IA";
+ case StorageClass::ONEZONE_IA:
+ return "ONEZONE_IA";
+ case StorageClass::INTELLIGENT_TIERING:
+ return "INTELLIGENT_TIERING";
+ case StorageClass::GLACIER:
+ return "GLACIER";
+ case StorageClass::DEEP_ARCHIVE:
+ return "DEEP_ARCHIVE";
+ case StorageClass::OUTPOSTS:
+ return "OUTPOSTS";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace StorageClassMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/StorageClassAnalysis.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/StorageClassAnalysis.cpp
new file mode 100644
index 0000000000..ec25b2fac1
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/StorageClassAnalysis.cpp
@@ -0,0 +1,64 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/StorageClassAnalysis.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
+{
+
+StorageClassAnalysis::StorageClassAnalysis() :
+ m_dataExportHasBeenSet(false)
+{
+}
+
+StorageClassAnalysis::StorageClassAnalysis(const XmlNode& xmlNode) :
+ m_dataExportHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+StorageClassAnalysis& StorageClassAnalysis::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode dataExportNode = resultNode.FirstChild("DataExport");
+ if(!dataExportNode.IsNull())
+ {
+ m_dataExport = dataExportNode;
+ m_dataExportHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void StorageClassAnalysis::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_dataExportHasBeenSet)
+ {
+ XmlNode dataExportNode = parentNode.CreateChildElement("DataExport");
+ m_dataExport.AddToNode(dataExportNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/StorageClassAnalysisDataExport.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/StorageClassAnalysisDataExport.cpp
new file mode 100644
index 0000000000..104703d2fb
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/StorageClassAnalysisDataExport.cpp
@@ -0,0 +1,80 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/StorageClassAnalysisDataExport.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
+{
+
+StorageClassAnalysisDataExport::StorageClassAnalysisDataExport() :
+ m_outputSchemaVersion(StorageClassAnalysisSchemaVersion::NOT_SET),
+ m_outputSchemaVersionHasBeenSet(false),
+ m_destinationHasBeenSet(false)
+{
+}
+
+StorageClassAnalysisDataExport::StorageClassAnalysisDataExport(const XmlNode& xmlNode) :
+ m_outputSchemaVersion(StorageClassAnalysisSchemaVersion::NOT_SET),
+ m_outputSchemaVersionHasBeenSet(false),
+ m_destinationHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+StorageClassAnalysisDataExport& StorageClassAnalysisDataExport::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode outputSchemaVersionNode = resultNode.FirstChild("OutputSchemaVersion");
+ if(!outputSchemaVersionNode.IsNull())
+ {
+ m_outputSchemaVersion = StorageClassAnalysisSchemaVersionMapper::GetStorageClassAnalysisSchemaVersionForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(outputSchemaVersionNode.GetText()).c_str()).c_str());
+ m_outputSchemaVersionHasBeenSet = true;
+ }
+ XmlNode destinationNode = resultNode.FirstChild("Destination");
+ if(!destinationNode.IsNull())
+ {
+ m_destination = destinationNode;
+ m_destinationHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void StorageClassAnalysisDataExport::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_outputSchemaVersionHasBeenSet)
+ {
+ XmlNode outputSchemaVersionNode = parentNode.CreateChildElement("OutputSchemaVersion");
+ outputSchemaVersionNode.SetText(StorageClassAnalysisSchemaVersionMapper::GetNameForStorageClassAnalysisSchemaVersion(m_outputSchemaVersion));
+ }
+
+ if(m_destinationHasBeenSet)
+ {
+ XmlNode destinationNode = parentNode.CreateChildElement("Destination");
+ m_destination.AddToNode(destinationNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/StorageClassAnalysisSchemaVersion.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/StorageClassAnalysisSchemaVersion.cpp
new file mode 100644
index 0000000000..766e3bfd12
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/StorageClassAnalysisSchemaVersion.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/StorageClassAnalysisSchemaVersion.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 StorageClassAnalysisSchemaVersionMapper
+ {
+
+ static const int V_1_HASH = HashingUtils::HashString("V_1");
+
+
+ StorageClassAnalysisSchemaVersion GetStorageClassAnalysisSchemaVersionForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == V_1_HASH)
+ {
+ return StorageClassAnalysisSchemaVersion::V_1;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<StorageClassAnalysisSchemaVersion>(hashCode);
+ }
+
+ return StorageClassAnalysisSchemaVersion::NOT_SET;
+ }
+
+ Aws::String GetNameForStorageClassAnalysisSchemaVersion(StorageClassAnalysisSchemaVersion enumValue)
+ {
+ switch(enumValue)
+ {
+ case StorageClassAnalysisSchemaVersion::V_1:
+ return "V_1";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace StorageClassAnalysisSchemaVersionMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Tag.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Tag.cpp
new file mode 100644
index 0000000000..817c0929f6
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Tag.cpp
@@ -0,0 +1,78 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/Tag.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
+{
+
+Tag::Tag() :
+ m_keyHasBeenSet(false),
+ m_valueHasBeenSet(false)
+{
+}
+
+Tag::Tag(const XmlNode& xmlNode) :
+ m_keyHasBeenSet(false),
+ m_valueHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+Tag& Tag::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode keyNode = resultNode.FirstChild("Key");
+ if(!keyNode.IsNull())
+ {
+ m_key = Aws::Utils::Xml::DecodeEscapedXmlText(keyNode.GetText());
+ m_keyHasBeenSet = true;
+ }
+ XmlNode valueNode = resultNode.FirstChild("Value");
+ if(!valueNode.IsNull())
+ {
+ m_value = Aws::Utils::Xml::DecodeEscapedXmlText(valueNode.GetText());
+ m_valueHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void Tag::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_keyHasBeenSet)
+ {
+ XmlNode keyNode = parentNode.CreateChildElement("Key");
+ keyNode.SetText(m_key);
+ }
+
+ if(m_valueHasBeenSet)
+ {
+ XmlNode valueNode = parentNode.CreateChildElement("Value");
+ valueNode.SetText(m_value);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Tagging.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Tagging.cpp
new file mode 100644
index 0000000000..bb31db9db7
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Tagging.cpp
@@ -0,0 +1,74 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/Tagging.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
+{
+
+Tagging::Tagging() :
+ m_tagSetHasBeenSet(false)
+{
+}
+
+Tagging::Tagging(const XmlNode& xmlNode) :
+ m_tagSetHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+Tagging& Tagging::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode tagSetNode = resultNode.FirstChild("TagSet");
+ if(!tagSetNode.IsNull())
+ {
+ XmlNode tagSetMember = tagSetNode.FirstChild("Tag");
+ while(!tagSetMember.IsNull())
+ {
+ m_tagSet.push_back(tagSetMember);
+ tagSetMember = tagSetMember.NextNode("Tag");
+ }
+
+ m_tagSetHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void Tagging::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_tagSetHasBeenSet)
+ {
+ XmlNode tagSetParentNode = parentNode.CreateChildElement("TagSet");
+ for(const auto& item : m_tagSet)
+ {
+ XmlNode tagSetNode = tagSetParentNode.CreateChildElement("Tag");
+ item.AddToNode(tagSetNode);
+ }
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/TaggingDirective.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/TaggingDirective.cpp
new file mode 100644
index 0000000000..aa0d9e7806
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/TaggingDirective.cpp
@@ -0,0 +1,70 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/TaggingDirective.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 TaggingDirectiveMapper
+ {
+
+ static const int COPY_HASH = HashingUtils::HashString("COPY");
+ static const int REPLACE_HASH = HashingUtils::HashString("REPLACE");
+
+
+ TaggingDirective GetTaggingDirectiveForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == COPY_HASH)
+ {
+ return TaggingDirective::COPY;
+ }
+ else if (hashCode == REPLACE_HASH)
+ {
+ return TaggingDirective::REPLACE;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<TaggingDirective>(hashCode);
+ }
+
+ return TaggingDirective::NOT_SET;
+ }
+
+ Aws::String GetNameForTaggingDirective(TaggingDirective enumValue)
+ {
+ switch(enumValue)
+ {
+ case TaggingDirective::COPY:
+ return "COPY";
+ case TaggingDirective::REPLACE:
+ return "REPLACE";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace TaggingDirectiveMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/TargetGrant.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/TargetGrant.cpp
new file mode 100644
index 0000000000..900c5d8dc1
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/TargetGrant.cpp
@@ -0,0 +1,80 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/TargetGrant.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
+{
+
+TargetGrant::TargetGrant() :
+ m_granteeHasBeenSet(false),
+ m_permission(BucketLogsPermission::NOT_SET),
+ m_permissionHasBeenSet(false)
+{
+}
+
+TargetGrant::TargetGrant(const XmlNode& xmlNode) :
+ m_granteeHasBeenSet(false),
+ m_permission(BucketLogsPermission::NOT_SET),
+ m_permissionHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+TargetGrant& TargetGrant::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode granteeNode = resultNode.FirstChild("Grantee");
+ if(!granteeNode.IsNull())
+ {
+ m_grantee = granteeNode;
+ m_granteeHasBeenSet = true;
+ }
+ XmlNode permissionNode = resultNode.FirstChild("Permission");
+ if(!permissionNode.IsNull())
+ {
+ m_permission = BucketLogsPermissionMapper::GetBucketLogsPermissionForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(permissionNode.GetText()).c_str()).c_str());
+ m_permissionHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void TargetGrant::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_granteeHasBeenSet)
+ {
+ XmlNode granteeNode = parentNode.CreateChildElement("Grantee");
+ m_grantee.AddToNode(granteeNode);
+ }
+
+ if(m_permissionHasBeenSet)
+ {
+ XmlNode permissionNode = parentNode.CreateChildElement("Permission");
+ permissionNode.SetText(BucketLogsPermissionMapper::GetNameForBucketLogsPermission(m_permission));
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Tier.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Tier.cpp
new file mode 100644
index 0000000000..874f6b744f
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Tier.cpp
@@ -0,0 +1,77 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/Tier.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 TierMapper
+ {
+
+ static const int Standard_HASH = HashingUtils::HashString("Standard");
+ static const int Bulk_HASH = HashingUtils::HashString("Bulk");
+ static const int Expedited_HASH = HashingUtils::HashString("Expedited");
+
+
+ Tier GetTierForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == Standard_HASH)
+ {
+ return Tier::Standard;
+ }
+ else if (hashCode == Bulk_HASH)
+ {
+ return Tier::Bulk;
+ }
+ else if (hashCode == Expedited_HASH)
+ {
+ return Tier::Expedited;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<Tier>(hashCode);
+ }
+
+ return Tier::NOT_SET;
+ }
+
+ Aws::String GetNameForTier(Tier enumValue)
+ {
+ switch(enumValue)
+ {
+ case Tier::Standard:
+ return "Standard";
+ case Tier::Bulk:
+ return "Bulk";
+ case Tier::Expedited:
+ return "Expedited";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace TierMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Tiering.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Tiering.cpp
new file mode 100644
index 0000000000..e3149b9c43
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Tiering.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/Tiering.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
+{
+
+Tiering::Tiering() :
+ m_days(0),
+ m_daysHasBeenSet(false),
+ m_accessTier(IntelligentTieringAccessTier::NOT_SET),
+ m_accessTierHasBeenSet(false)
+{
+}
+
+Tiering::Tiering(const XmlNode& xmlNode) :
+ m_days(0),
+ m_daysHasBeenSet(false),
+ m_accessTier(IntelligentTieringAccessTier::NOT_SET),
+ m_accessTierHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+Tiering& Tiering::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode daysNode = resultNode.FirstChild("Days");
+ if(!daysNode.IsNull())
+ {
+ m_days = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(daysNode.GetText()).c_str()).c_str());
+ m_daysHasBeenSet = true;
+ }
+ XmlNode accessTierNode = resultNode.FirstChild("AccessTier");
+ if(!accessTierNode.IsNull())
+ {
+ m_accessTier = IntelligentTieringAccessTierMapper::GetIntelligentTieringAccessTierForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(accessTierNode.GetText()).c_str()).c_str());
+ m_accessTierHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void Tiering::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_daysHasBeenSet)
+ {
+ XmlNode daysNode = parentNode.CreateChildElement("Days");
+ ss << m_days;
+ daysNode.SetText(ss.str());
+ ss.str("");
+ }
+
+ if(m_accessTierHasBeenSet)
+ {
+ XmlNode accessTierNode = parentNode.CreateChildElement("AccessTier");
+ accessTierNode.SetText(IntelligentTieringAccessTierMapper::GetNameForIntelligentTieringAccessTier(m_accessTier));
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/TopicConfiguration.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/TopicConfiguration.cpp
new file mode 100644
index 0000000000..768acf8f8f
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/TopicConfiguration.cpp
@@ -0,0 +1,115 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/TopicConfiguration.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
+{
+
+TopicConfiguration::TopicConfiguration() :
+ m_idHasBeenSet(false),
+ m_topicArnHasBeenSet(false),
+ m_eventsHasBeenSet(false),
+ m_filterHasBeenSet(false)
+{
+}
+
+TopicConfiguration::TopicConfiguration(const XmlNode& xmlNode) :
+ m_idHasBeenSet(false),
+ m_topicArnHasBeenSet(false),
+ m_eventsHasBeenSet(false),
+ m_filterHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+TopicConfiguration& TopicConfiguration::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode idNode = resultNode.FirstChild("Id");
+ if(!idNode.IsNull())
+ {
+ m_id = Aws::Utils::Xml::DecodeEscapedXmlText(idNode.GetText());
+ m_idHasBeenSet = true;
+ }
+ XmlNode topicArnNode = resultNode.FirstChild("Topic");
+ if(!topicArnNode.IsNull())
+ {
+ m_topicArn = Aws::Utils::Xml::DecodeEscapedXmlText(topicArnNode.GetText());
+ m_topicArnHasBeenSet = true;
+ }
+ XmlNode eventsNode = resultNode.FirstChild("Event");
+ if(!eventsNode.IsNull())
+ {
+ XmlNode eventMember = eventsNode;
+ while(!eventMember.IsNull())
+ {
+ m_events.push_back(EventMapper::GetEventForName(StringUtils::Trim(eventMember.GetText().c_str())));
+ eventMember = eventMember.NextNode("Event");
+ }
+
+ m_eventsHasBeenSet = true;
+ }
+ XmlNode filterNode = resultNode.FirstChild("Filter");
+ if(!filterNode.IsNull())
+ {
+ m_filter = filterNode;
+ m_filterHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void TopicConfiguration::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_idHasBeenSet)
+ {
+ XmlNode idNode = parentNode.CreateChildElement("Id");
+ idNode.SetText(m_id);
+ }
+
+ if(m_topicArnHasBeenSet)
+ {
+ XmlNode topicArnNode = parentNode.CreateChildElement("Topic");
+ topicArnNode.SetText(m_topicArn);
+ }
+
+ if(m_eventsHasBeenSet)
+ {
+ for(const auto& item : m_events)
+ {
+ XmlNode eventsNode = parentNode.CreateChildElement("Event");
+ eventsNode.SetText(EventMapper::GetNameForEvent(item));
+ }
+ }
+
+ if(m_filterHasBeenSet)
+ {
+ XmlNode filterNode = parentNode.CreateChildElement("Filter");
+ m_filter.AddToNode(filterNode);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/TopicConfigurationDeprecated.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/TopicConfigurationDeprecated.cpp
new file mode 100644
index 0000000000..321fb3eafa
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/TopicConfigurationDeprecated.cpp
@@ -0,0 +1,101 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/TopicConfigurationDeprecated.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
+{
+
+TopicConfigurationDeprecated::TopicConfigurationDeprecated() :
+ m_idHasBeenSet(false),
+ m_eventsHasBeenSet(false),
+ m_topicHasBeenSet(false)
+{
+}
+
+TopicConfigurationDeprecated::TopicConfigurationDeprecated(const XmlNode& xmlNode) :
+ m_idHasBeenSet(false),
+ m_eventsHasBeenSet(false),
+ m_topicHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+TopicConfigurationDeprecated& TopicConfigurationDeprecated::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode idNode = resultNode.FirstChild("Id");
+ if(!idNode.IsNull())
+ {
+ m_id = Aws::Utils::Xml::DecodeEscapedXmlText(idNode.GetText());
+ m_idHasBeenSet = true;
+ }
+ XmlNode eventsNode = resultNode.FirstChild("Event");
+ if(!eventsNode.IsNull())
+ {
+ XmlNode eventMember = eventsNode;
+ while(!eventMember.IsNull())
+ {
+ m_events.push_back(EventMapper::GetEventForName(StringUtils::Trim(eventMember.GetText().c_str())));
+ eventMember = eventMember.NextNode("Event");
+ }
+
+ m_eventsHasBeenSet = true;
+ }
+ XmlNode topicNode = resultNode.FirstChild("Topic");
+ if(!topicNode.IsNull())
+ {
+ m_topic = Aws::Utils::Xml::DecodeEscapedXmlText(topicNode.GetText());
+ m_topicHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void TopicConfigurationDeprecated::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_idHasBeenSet)
+ {
+ XmlNode idNode = parentNode.CreateChildElement("Id");
+ idNode.SetText(m_id);
+ }
+
+ if(m_eventsHasBeenSet)
+ {
+ for(const auto& item : m_events)
+ {
+ XmlNode eventsNode = parentNode.CreateChildElement("Event");
+ eventsNode.SetText(EventMapper::GetNameForEvent(item));
+ }
+ }
+
+ if(m_topicHasBeenSet)
+ {
+ XmlNode topicNode = parentNode.CreateChildElement("Topic");
+ topicNode.SetText(m_topic);
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
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
new file mode 100644
index 0000000000..8dcefe5df2
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Transition.cpp
@@ -0,0 +1,98 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/Transition.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
+{
+
+Transition::Transition() :
+ m_dateHasBeenSet(false),
+ m_days(0),
+ m_daysHasBeenSet(false),
+ m_storageClass(TransitionStorageClass::NOT_SET),
+ m_storageClassHasBeenSet(false)
+{
+}
+
+Transition::Transition(const XmlNode& xmlNode) :
+ m_dateHasBeenSet(false),
+ m_days(0),
+ m_daysHasBeenSet(false),
+ m_storageClass(TransitionStorageClass::NOT_SET),
+ m_storageClassHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+Transition& Transition::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ 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_dateHasBeenSet = true;
+ }
+ XmlNode daysNode = resultNode.FirstChild("Days");
+ if(!daysNode.IsNull())
+ {
+ m_days = StringUtils::ConvertToInt32(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(daysNode.GetText()).c_str()).c_str());
+ m_daysHasBeenSet = true;
+ }
+ XmlNode storageClassNode = resultNode.FirstChild("StorageClass");
+ if(!storageClassNode.IsNull())
+ {
+ m_storageClass = TransitionStorageClassMapper::GetTransitionStorageClassForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(storageClassNode.GetText()).c_str()).c_str());
+ m_storageClassHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void Transition::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_dateHasBeenSet)
+ {
+ XmlNode dateNode = parentNode.CreateChildElement("Date");
+ dateNode.SetText(m_date.ToGmtString(DateFormat::ISO_8601));
+ }
+
+ if(m_daysHasBeenSet)
+ {
+ XmlNode daysNode = parentNode.CreateChildElement("Days");
+ ss << m_days;
+ daysNode.SetText(ss.str());
+ ss.str("");
+ }
+
+ if(m_storageClassHasBeenSet)
+ {
+ XmlNode storageClassNode = parentNode.CreateChildElement("StorageClass");
+ storageClassNode.SetText(TransitionStorageClassMapper::GetNameForTransitionStorageClass(m_storageClass));
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
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
new file mode 100644
index 0000000000..2149177071
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/TransitionStorageClass.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/TransitionStorageClass.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 TransitionStorageClassMapper
+ {
+
+ static const int GLACIER_HASH = HashingUtils::HashString("GLACIER");
+ static const int STANDARD_IA_HASH = HashingUtils::HashString("STANDARD_IA");
+ 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");
+
+
+ TransitionStorageClass GetTransitionStorageClassForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == GLACIER_HASH)
+ {
+ return TransitionStorageClass::GLACIER;
+ }
+ else if (hashCode == STANDARD_IA_HASH)
+ {
+ return TransitionStorageClass::STANDARD_IA;
+ }
+ else if (hashCode == ONEZONE_IA_HASH)
+ {
+ return TransitionStorageClass::ONEZONE_IA;
+ }
+ else if (hashCode == INTELLIGENT_TIERING_HASH)
+ {
+ return TransitionStorageClass::INTELLIGENT_TIERING;
+ }
+ else if (hashCode == DEEP_ARCHIVE_HASH)
+ {
+ return TransitionStorageClass::DEEP_ARCHIVE;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<TransitionStorageClass>(hashCode);
+ }
+
+ return TransitionStorageClass::NOT_SET;
+ }
+
+ Aws::String GetNameForTransitionStorageClass(TransitionStorageClass enumValue)
+ {
+ switch(enumValue)
+ {
+ case TransitionStorageClass::GLACIER:
+ return "GLACIER";
+ case TransitionStorageClass::STANDARD_IA:
+ return "STANDARD_IA";
+ case TransitionStorageClass::ONEZONE_IA:
+ return "ONEZONE_IA";
+ case TransitionStorageClass::INTELLIGENT_TIERING:
+ return "INTELLIGENT_TIERING";
+ case TransitionStorageClass::DEEP_ARCHIVE:
+ return "DEEP_ARCHIVE";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace TransitionStorageClassMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Type.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Type.cpp
new file mode 100644
index 0000000000..3e325609a2
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/Type.cpp
@@ -0,0 +1,77 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/Type.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 TypeMapper
+ {
+
+ static const int CanonicalUser_HASH = HashingUtils::HashString("CanonicalUser");
+ static const int AmazonCustomerByEmail_HASH = HashingUtils::HashString("AmazonCustomerByEmail");
+ static const int Group_HASH = HashingUtils::HashString("Group");
+
+
+ Type GetTypeForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == CanonicalUser_HASH)
+ {
+ return Type::CanonicalUser;
+ }
+ else if (hashCode == AmazonCustomerByEmail_HASH)
+ {
+ return Type::AmazonCustomerByEmail;
+ }
+ else if (hashCode == Group_HASH)
+ {
+ return Type::Group;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast<Type>(hashCode);
+ }
+
+ return Type::NOT_SET;
+ }
+
+ Aws::String GetNameForType(Type enumValue)
+ {
+ switch(enumValue)
+ {
+ case Type::CanonicalUser:
+ return "CanonicalUser";
+ case Type::AmazonCustomerByEmail:
+ return "AmazonCustomerByEmail";
+ case Type::Group:
+ return "Group";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast<int>(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace TypeMapper
+ } // namespace Model
+ } // namespace S3
+} // namespace Aws
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
new file mode 100644
index 0000000000..364af9b8fc
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/UploadPartCopyRequest.cpp
@@ -0,0 +1,190 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/UploadPartCopyRequest.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;
+
+UploadPartCopyRequest::UploadPartCopyRequest() :
+ m_bucketHasBeenSet(false),
+ m_copySourceHasBeenSet(false),
+ m_copySourceIfMatchHasBeenSet(false),
+ m_copySourceIfModifiedSinceHasBeenSet(false),
+ m_copySourceIfNoneMatchHasBeenSet(false),
+ m_copySourceIfUnmodifiedSinceHasBeenSet(false),
+ m_copySourceRangeHasBeenSet(false),
+ m_keyHasBeenSet(false),
+ m_partNumber(0),
+ m_partNumberHasBeenSet(false),
+ m_uploadIdHasBeenSet(false),
+ m_sSECustomerAlgorithmHasBeenSet(false),
+ m_sSECustomerKeyHasBeenSet(false),
+ m_sSECustomerKeyMD5HasBeenSet(false),
+ m_copySourceSSECustomerAlgorithmHasBeenSet(false),
+ m_copySourceSSECustomerKeyHasBeenSet(false),
+ m_copySourceSSECustomerKeyMD5HasBeenSet(false),
+ m_requestPayer(RequestPayer::NOT_SET),
+ m_requestPayerHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_expectedSourceBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+Aws::String UploadPartCopyRequest::SerializePayload() const
+{
+ return {};
+}
+
+void UploadPartCopyRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ if(m_partNumberHasBeenSet)
+ {
+ ss << m_partNumber;
+ uri.AddQueryStringParameter("partNumber", ss.str());
+ ss.str("");
+ }
+
+ if(m_uploadIdHasBeenSet)
+ {
+ ss << m_uploadId;
+ uri.AddQueryStringParameter("uploadId", 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 UploadPartCopyRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_copySourceHasBeenSet)
+ {
+ ss << m_copySource;
+ headers.emplace("x-amz-copy-source", URI::URLEncodePath(ss.str()));
+ ss.str("");
+ }
+
+ if(m_copySourceIfMatchHasBeenSet)
+ {
+ ss << m_copySourceIfMatch;
+ headers.emplace("x-amz-copy-source-if-match", ss.str());
+ ss.str("");
+ }
+
+ if(m_copySourceIfModifiedSinceHasBeenSet)
+ {
+ headers.emplace("x-amz-copy-source-if-modified-since", m_copySourceIfModifiedSince.ToGmtString(DateFormat::RFC822));
+ }
+
+ if(m_copySourceIfNoneMatchHasBeenSet)
+ {
+ ss << m_copySourceIfNoneMatch;
+ headers.emplace("x-amz-copy-source-if-none-match", ss.str());
+ ss.str("");
+ }
+
+ if(m_copySourceIfUnmodifiedSinceHasBeenSet)
+ {
+ headers.emplace("x-amz-copy-source-if-unmodified-since", m_copySourceIfUnmodifiedSince.ToGmtString(DateFormat::RFC822));
+ }
+
+ if(m_copySourceRangeHasBeenSet)
+ {
+ ss << m_copySourceRange;
+ headers.emplace("x-amz-copy-source-range", 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_copySourceSSECustomerAlgorithmHasBeenSet)
+ {
+ ss << m_copySourceSSECustomerAlgorithm;
+ headers.emplace("x-amz-copy-source-server-side-encryption-customer-algorithm", ss.str());
+ ss.str("");
+ }
+
+ if(m_copySourceSSECustomerKeyHasBeenSet)
+ {
+ ss << m_copySourceSSECustomerKey;
+ headers.emplace("x-amz-copy-source-server-side-encryption-customer-key", ss.str());
+ ss.str("");
+ }
+
+ if(m_copySourceSSECustomerKeyMD5HasBeenSet)
+ {
+ ss << m_copySourceSSECustomerKeyMD5;
+ headers.emplace("x-amz-copy-source-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_expectedSourceBucketOwnerHasBeenSet)
+ {
+ ss << m_expectedSourceBucketOwner;
+ headers.emplace("x-amz-source-expected-bucket-owner", ss.str());
+ ss.str("");
+ }
+
+ return headers;
+}
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/UploadPartCopyResult.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/UploadPartCopyResult.cpp
new file mode 100644
index 0000000000..22cd2cf4d7
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/UploadPartCopyResult.cpp
@@ -0,0 +1,88 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/UploadPartCopyResult.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;
+
+UploadPartCopyResult::UploadPartCopyResult() :
+ m_serverSideEncryption(ServerSideEncryption::NOT_SET),
+ m_bucketKeyEnabled(false),
+ m_requestCharged(RequestCharged::NOT_SET)
+{
+}
+
+UploadPartCopyResult::UploadPartCopyResult(const Aws::AmazonWebServiceResult<XmlDocument>& result) :
+ m_serverSideEncryption(ServerSideEncryption::NOT_SET),
+ m_bucketKeyEnabled(false),
+ m_requestCharged(RequestCharged::NOT_SET)
+{
+ *this = result;
+}
+
+UploadPartCopyResult& UploadPartCopyResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ m_copyPartResult = resultNode;
+ }
+
+ const auto& headers = result.GetHeaderValueCollection();
+ const auto& copySourceVersionIdIter = headers.find("x-amz-copy-source-version-id");
+ if(copySourceVersionIdIter != headers.end())
+ {
+ m_copySourceVersionId = copySourceVersionIdIter->second;
+ }
+
+ const auto& serverSideEncryptionIter = headers.find("x-amz-server-side-encryption");
+ if(serverSideEncryptionIter != headers.end())
+ {
+ m_serverSideEncryption = ServerSideEncryptionMapper::GetServerSideEncryptionForName(serverSideEncryptionIter->second);
+ }
+
+ const auto& sSECustomerAlgorithmIter = headers.find("x-amz-server-side-encryption-customer-algorithm");
+ if(sSECustomerAlgorithmIter != headers.end())
+ {
+ m_sSECustomerAlgorithm = sSECustomerAlgorithmIter->second;
+ }
+
+ const auto& sSECustomerKeyMD5Iter = headers.find("x-amz-server-side-encryption-customer-key-md5");
+ if(sSECustomerKeyMD5Iter != headers.end())
+ {
+ m_sSECustomerKeyMD5 = sSECustomerKeyMD5Iter->second;
+ }
+
+ const auto& sSEKMSKeyIdIter = headers.find("x-amz-server-side-encryption-aws-kms-key-id");
+ if(sSEKMSKeyIdIter != headers.end())
+ {
+ m_sSEKMSKeyId = sSEKMSKeyIdIter->second;
+ }
+
+ const auto& bucketKeyEnabledIter = headers.find("x-amz-server-side-encryption-bucket-key-enabled");
+ if(bucketKeyEnabledIter != headers.end())
+ {
+ m_bucketKeyEnabled = StringUtils::ConvertToBool(bucketKeyEnabledIter->second.c_str());
+ }
+
+ 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/UploadPartRequest.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/UploadPartRequest.cpp
new file mode 100644
index 0000000000..ee4a67ee07
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/UploadPartRequest.cpp
@@ -0,0 +1,129 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/UploadPartRequest.h>
+#include <aws/core/AmazonWebServiceResult.h>
+#include <aws/core/http/URI.h>
+#include <aws/core/utils/HashingUtils.h>
+#include <aws/core/utils/memory/stl/AWSStringStream.h>
+
+#include <utility>
+
+using namespace Aws::S3::Model;
+using namespace Aws::Utils::Stream;
+using namespace Aws::Utils;
+using namespace Aws::Http;
+using namespace Aws;
+
+UploadPartRequest::UploadPartRequest() :
+ m_bucketHasBeenSet(false),
+ m_contentLength(0),
+ m_contentLengthHasBeenSet(false),
+ m_contentMD5HasBeenSet(false),
+ m_keyHasBeenSet(false),
+ m_partNumber(0),
+ m_partNumberHasBeenSet(false),
+ m_uploadIdHasBeenSet(false),
+ m_sSECustomerAlgorithmHasBeenSet(false),
+ m_sSECustomerKeyHasBeenSet(false),
+ m_sSECustomerKeyMD5HasBeenSet(false),
+ m_requestPayer(RequestPayer::NOT_SET),
+ m_requestPayerHasBeenSet(false),
+ m_expectedBucketOwnerHasBeenSet(false),
+ m_customizedAccessLogTagHasBeenSet(false)
+{
+}
+
+
+void UploadPartRequest::AddQueryStringParameters(URI& uri) const
+{
+ Aws::StringStream ss;
+ if(m_partNumberHasBeenSet)
+ {
+ ss << m_partNumber;
+ uri.AddQueryStringParameter("partNumber", ss.str());
+ ss.str("");
+ }
+
+ if(m_uploadIdHasBeenSet)
+ {
+ ss << m_uploadId;
+ uri.AddQueryStringParameter("uploadId", 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 UploadPartRequest::GetRequestSpecificHeaders() const
+{
+ Aws::Http::HeaderValueCollection headers;
+ Aws::StringStream ss;
+ if(m_contentLengthHasBeenSet)
+ {
+ ss << m_contentLength;
+ headers.emplace("content-length", ss.str());
+ ss.str("");
+ }
+
+ if(m_contentMD5HasBeenSet)
+ {
+ ss << m_contentMD5;
+ headers.emplace("content-md5", 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("");
+ }
+
+ return headers;
+
+}
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
new file mode 100644
index 0000000000..13ad60a463
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/UploadPartResult.cpp
@@ -0,0 +1,87 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/UploadPartResult.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;
+
+UploadPartResult::UploadPartResult() :
+ m_serverSideEncryption(ServerSideEncryption::NOT_SET),
+ m_bucketKeyEnabled(false),
+ m_requestCharged(RequestCharged::NOT_SET)
+{
+}
+
+UploadPartResult::UploadPartResult(const Aws::AmazonWebServiceResult<XmlDocument>& result) :
+ m_serverSideEncryption(ServerSideEncryption::NOT_SET),
+ m_bucketKeyEnabled(false),
+ m_requestCharged(RequestCharged::NOT_SET)
+{
+ *this = result;
+}
+
+UploadPartResult& UploadPartResult::operator =(const Aws::AmazonWebServiceResult<XmlDocument>& result)
+{
+ const XmlDocument& xmlDocument = result.GetPayload();
+ XmlNode resultNode = xmlDocument.GetRootElement();
+
+ if(!resultNode.IsNull())
+ {
+ }
+
+ const auto& headers = result.GetHeaderValueCollection();
+ const auto& serverSideEncryptionIter = headers.find("x-amz-server-side-encryption");
+ if(serverSideEncryptionIter != headers.end())
+ {
+ m_serverSideEncryption = ServerSideEncryptionMapper::GetServerSideEncryptionForName(serverSideEncryptionIter->second);
+ }
+
+ const auto& eTagIter = headers.find("etag");
+ if(eTagIter != headers.end())
+ {
+ m_eTag = eTagIter->second;
+ }
+
+ const auto& sSECustomerAlgorithmIter = headers.find("x-amz-server-side-encryption-customer-algorithm");
+ if(sSECustomerAlgorithmIter != headers.end())
+ {
+ m_sSECustomerAlgorithm = sSECustomerAlgorithmIter->second;
+ }
+
+ const auto& sSECustomerKeyMD5Iter = headers.find("x-amz-server-side-encryption-customer-key-md5");
+ if(sSECustomerKeyMD5Iter != headers.end())
+ {
+ m_sSECustomerKeyMD5 = sSECustomerKeyMD5Iter->second;
+ }
+
+ const auto& sSEKMSKeyIdIter = headers.find("x-amz-server-side-encryption-aws-kms-key-id");
+ if(sSEKMSKeyIdIter != headers.end())
+ {
+ m_sSEKMSKeyId = sSEKMSKeyIdIter->second;
+ }
+
+ const auto& bucketKeyEnabledIter = headers.find("x-amz-server-side-encryption-bucket-key-enabled");
+ if(bucketKeyEnabledIter != headers.end())
+ {
+ m_bucketKeyEnabled = StringUtils::ConvertToBool(bucketKeyEnabledIter->second.c_str());
+ }
+
+ 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/VersioningConfiguration.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/VersioningConfiguration.cpp
new file mode 100644
index 0000000000..aee5ece27d
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/VersioningConfiguration.cpp
@@ -0,0 +1,82 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/VersioningConfiguration.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
+{
+
+VersioningConfiguration::VersioningConfiguration() :
+ m_mFADelete(MFADelete::NOT_SET),
+ m_mFADeleteHasBeenSet(false),
+ m_status(BucketVersioningStatus::NOT_SET),
+ m_statusHasBeenSet(false)
+{
+}
+
+VersioningConfiguration::VersioningConfiguration(const XmlNode& xmlNode) :
+ m_mFADelete(MFADelete::NOT_SET),
+ m_mFADeleteHasBeenSet(false),
+ m_status(BucketVersioningStatus::NOT_SET),
+ m_statusHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+VersioningConfiguration& VersioningConfiguration::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode mFADeleteNode = resultNode.FirstChild("MfaDelete");
+ if(!mFADeleteNode.IsNull())
+ {
+ m_mFADelete = MFADeleteMapper::GetMFADeleteForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(mFADeleteNode.GetText()).c_str()).c_str());
+ m_mFADeleteHasBeenSet = true;
+ }
+ XmlNode statusNode = resultNode.FirstChild("Status");
+ if(!statusNode.IsNull())
+ {
+ m_status = BucketVersioningStatusMapper::GetBucketVersioningStatusForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(statusNode.GetText()).c_str()).c_str());
+ m_statusHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void VersioningConfiguration::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_mFADeleteHasBeenSet)
+ {
+ XmlNode mFADeleteNode = parentNode.CreateChildElement("MfaDelete");
+ mFADeleteNode.SetText(MFADeleteMapper::GetNameForMFADelete(m_mFADelete));
+ }
+
+ if(m_statusHasBeenSet)
+ {
+ XmlNode statusNode = parentNode.CreateChildElement("Status");
+ statusNode.SetText(BucketVersioningStatusMapper::GetNameForBucketVersioningStatus(m_status));
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws
diff --git a/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/WebsiteConfiguration.cpp b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/WebsiteConfiguration.cpp
new file mode 100644
index 0000000000..c911eae838
--- /dev/null
+++ b/contrib/libs/aws-sdk-cpp/aws-cpp-sdk-s3/source/model/WebsiteConfiguration.cpp
@@ -0,0 +1,116 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include <aws/s3/model/WebsiteConfiguration.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
+{
+
+WebsiteConfiguration::WebsiteConfiguration() :
+ m_errorDocumentHasBeenSet(false),
+ m_indexDocumentHasBeenSet(false),
+ m_redirectAllRequestsToHasBeenSet(false),
+ m_routingRulesHasBeenSet(false)
+{
+}
+
+WebsiteConfiguration::WebsiteConfiguration(const XmlNode& xmlNode) :
+ m_errorDocumentHasBeenSet(false),
+ m_indexDocumentHasBeenSet(false),
+ m_redirectAllRequestsToHasBeenSet(false),
+ m_routingRulesHasBeenSet(false)
+{
+ *this = xmlNode;
+}
+
+WebsiteConfiguration& WebsiteConfiguration::operator =(const XmlNode& xmlNode)
+{
+ XmlNode resultNode = xmlNode;
+
+ if(!resultNode.IsNull())
+ {
+ XmlNode errorDocumentNode = resultNode.FirstChild("ErrorDocument");
+ if(!errorDocumentNode.IsNull())
+ {
+ m_errorDocument = errorDocumentNode;
+ m_errorDocumentHasBeenSet = true;
+ }
+ XmlNode indexDocumentNode = resultNode.FirstChild("IndexDocument");
+ if(!indexDocumentNode.IsNull())
+ {
+ m_indexDocument = indexDocumentNode;
+ m_indexDocumentHasBeenSet = true;
+ }
+ XmlNode redirectAllRequestsToNode = resultNode.FirstChild("RedirectAllRequestsTo");
+ if(!redirectAllRequestsToNode.IsNull())
+ {
+ m_redirectAllRequestsTo = redirectAllRequestsToNode;
+ m_redirectAllRequestsToHasBeenSet = true;
+ }
+ XmlNode routingRulesNode = resultNode.FirstChild("RoutingRules");
+ if(!routingRulesNode.IsNull())
+ {
+ XmlNode routingRulesMember = routingRulesNode.FirstChild("RoutingRule");
+ while(!routingRulesMember.IsNull())
+ {
+ m_routingRules.push_back(routingRulesMember);
+ routingRulesMember = routingRulesMember.NextNode("RoutingRule");
+ }
+
+ m_routingRulesHasBeenSet = true;
+ }
+ }
+
+ return *this;
+}
+
+void WebsiteConfiguration::AddToNode(XmlNode& parentNode) const
+{
+ Aws::StringStream ss;
+ if(m_errorDocumentHasBeenSet)
+ {
+ XmlNode errorDocumentNode = parentNode.CreateChildElement("ErrorDocument");
+ m_errorDocument.AddToNode(errorDocumentNode);
+ }
+
+ if(m_indexDocumentHasBeenSet)
+ {
+ XmlNode indexDocumentNode = parentNode.CreateChildElement("IndexDocument");
+ m_indexDocument.AddToNode(indexDocumentNode);
+ }
+
+ if(m_redirectAllRequestsToHasBeenSet)
+ {
+ XmlNode redirectAllRequestsToNode = parentNode.CreateChildElement("RedirectAllRequestsTo");
+ m_redirectAllRequestsTo.AddToNode(redirectAllRequestsToNode);
+ }
+
+ if(m_routingRulesHasBeenSet)
+ {
+ XmlNode routingRulesParentNode = parentNode.CreateChildElement("RoutingRules");
+ for(const auto& item : m_routingRules)
+ {
+ XmlNode routingRulesNode = routingRulesParentNode.CreateChildElement("RoutingRule");
+ item.AddToNode(routingRulesNode);
+ }
+ }
+
+}
+
+} // namespace Model
+} // namespace S3
+} // namespace Aws