aws-sdk-s3 1.96.2 → 1.117.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +147 -0
  3. data/VERSION +1 -1
  4. data/lib/aws-sdk-s3/bucket.rb +127 -30
  5. data/lib/aws-sdk-s3/bucket_acl.rb +21 -4
  6. data/lib/aws-sdk-s3/bucket_cors.rb +23 -6
  7. data/lib/aws-sdk-s3/bucket_lifecycle.rb +27 -8
  8. data/lib/aws-sdk-s3/bucket_lifecycle_configuration.rb +28 -6
  9. data/lib/aws-sdk-s3/bucket_logging.rb +21 -4
  10. data/lib/aws-sdk-s3/bucket_notification.rb +19 -7
  11. data/lib/aws-sdk-s3/bucket_policy.rb +23 -6
  12. data/lib/aws-sdk-s3/bucket_request_payment.rb +21 -4
  13. data/lib/aws-sdk-s3/bucket_tagging.rb +23 -6
  14. data/lib/aws-sdk-s3/bucket_versioning.rb +63 -12
  15. data/lib/aws-sdk-s3/bucket_website.rb +23 -6
  16. data/lib/aws-sdk-s3/client.rb +2776 -1341
  17. data/lib/aws-sdk-s3/client_api.rb +577 -208
  18. data/lib/aws-sdk-s3/customizations/bucket.rb +20 -46
  19. data/lib/aws-sdk-s3/customizations/object.rb +78 -5
  20. data/lib/aws-sdk-s3/encryption/client.rb +1 -1
  21. data/lib/aws-sdk-s3/encryption/decrypt_handler.rb +0 -4
  22. data/lib/aws-sdk-s3/encryptionV2/client.rb +1 -1
  23. data/lib/aws-sdk-s3/encryptionV2/decrypt_handler.rb +0 -4
  24. data/lib/aws-sdk-s3/encryptionV2/encrypt_handler.rb +0 -4
  25. data/lib/aws-sdk-s3/endpoint_parameters.rb +142 -0
  26. data/lib/aws-sdk-s3/endpoint_provider.rb +2020 -0
  27. data/lib/aws-sdk-s3/endpoints.rb +2149 -0
  28. data/lib/aws-sdk-s3/file_downloader.rb +1 -1
  29. data/lib/aws-sdk-s3/file_uploader.rb +6 -1
  30. data/lib/aws-sdk-s3/multipart_file_uploader.rb +26 -7
  31. data/lib/aws-sdk-s3/multipart_stream_uploader.rb +36 -10
  32. data/lib/aws-sdk-s3/multipart_upload.rb +126 -12
  33. data/lib/aws-sdk-s3/multipart_upload_part.rb +134 -14
  34. data/lib/aws-sdk-s3/object.rb +291 -115
  35. data/lib/aws-sdk-s3/object_acl.rb +23 -6
  36. data/lib/aws-sdk-s3/object_summary.rb +210 -81
  37. data/lib/aws-sdk-s3/object_version.rb +66 -39
  38. data/lib/aws-sdk-s3/plugins/accelerate.rb +3 -44
  39. data/lib/aws-sdk-s3/plugins/arn.rb +22 -180
  40. data/lib/aws-sdk-s3/plugins/bucket_dns.rb +3 -39
  41. data/lib/aws-sdk-s3/plugins/bucket_name_restrictions.rb +1 -6
  42. data/lib/aws-sdk-s3/plugins/dualstack.rb +1 -55
  43. data/lib/aws-sdk-s3/plugins/endpoints.rb +262 -0
  44. data/lib/aws-sdk-s3/plugins/expect_100_continue.rb +2 -1
  45. data/lib/aws-sdk-s3/plugins/iad_regional_endpoint.rb +6 -29
  46. data/lib/aws-sdk-s3/plugins/md5s.rb +5 -3
  47. data/lib/aws-sdk-s3/plugins/s3_signer.rb +33 -100
  48. data/lib/aws-sdk-s3/plugins/skip_whole_multipart_get_checksums.rb +31 -0
  49. data/lib/aws-sdk-s3/plugins/streaming_retry.rb +23 -2
  50. data/lib/aws-sdk-s3/presigned_post.rb +47 -35
  51. data/lib/aws-sdk-s3/presigner.rb +20 -27
  52. data/lib/aws-sdk-s3/resource.rb +19 -1
  53. data/lib/aws-sdk-s3/types.rb +2759 -4389
  54. data/lib/aws-sdk-s3.rb +5 -1
  55. metadata +12 -11
  56. data/lib/aws-sdk-s3/arn/access_point_arn.rb +0 -69
  57. data/lib/aws-sdk-s3/arn/object_lambda_arn.rb +0 -69
  58. data/lib/aws-sdk-s3/arn/outpost_access_point_arn.rb +0 -73
  59. data/lib/aws-sdk-s3/plugins/object_lambda_endpoint.rb +0 -25
@@ -22,6 +22,7 @@ module Aws::S3
22
22
  AcceptRanges = Shapes::StringShape.new(name: 'AcceptRanges')
23
23
  AccessControlPolicy = Shapes::StructureShape.new(name: 'AccessControlPolicy')
24
24
  AccessControlTranslation = Shapes::StructureShape.new(name: 'AccessControlTranslation')
25
+ AccessPointArn = Shapes::StringShape.new(name: 'AccessPointArn')
25
26
  AccountId = Shapes::StringShape.new(name: 'AccountId')
26
27
  AllowQuotedRecordDelimiter = Shapes::BooleanShape.new(name: 'AllowQuotedRecordDelimiter')
27
28
  AllowedHeader = Shapes::StringShape.new(name: 'AllowedHeader')
@@ -63,6 +64,14 @@ module Aws::S3
63
64
  CSVInput = Shapes::StructureShape.new(name: 'CSVInput')
64
65
  CSVOutput = Shapes::StructureShape.new(name: 'CSVOutput')
65
66
  CacheControl = Shapes::StringShape.new(name: 'CacheControl')
67
+ Checksum = Shapes::StructureShape.new(name: 'Checksum')
68
+ ChecksumAlgorithm = Shapes::StringShape.new(name: 'ChecksumAlgorithm')
69
+ ChecksumAlgorithmList = Shapes::ListShape.new(name: 'ChecksumAlgorithmList', flattened: true)
70
+ ChecksumCRC32 = Shapes::StringShape.new(name: 'ChecksumCRC32')
71
+ ChecksumCRC32C = Shapes::StringShape.new(name: 'ChecksumCRC32C')
72
+ ChecksumMode = Shapes::StringShape.new(name: 'ChecksumMode')
73
+ ChecksumSHA1 = Shapes::StringShape.new(name: 'ChecksumSHA1')
74
+ ChecksumSHA256 = Shapes::StringShape.new(name: 'ChecksumSHA256')
66
75
  CloudFunction = Shapes::StringShape.new(name: 'CloudFunction')
67
76
  CloudFunctionConfiguration = Shapes::StructureShape.new(name: 'CloudFunctionConfiguration')
68
77
  CloudFunctionInvocationRole = Shapes::StringShape.new(name: 'CloudFunctionInvocationRole')
@@ -157,6 +166,7 @@ module Aws::S3
157
166
  ErrorMessage = Shapes::StringShape.new(name: 'ErrorMessage')
158
167
  Errors = Shapes::ListShape.new(name: 'Errors', flattened: true)
159
168
  Event = Shapes::StringShape.new(name: 'Event')
169
+ EventBridgeConfiguration = Shapes::StructureShape.new(name: 'EventBridgeConfiguration')
160
170
  EventList = Shapes::ListShape.new(name: 'EventList', flattened: true)
161
171
  ExistingObjectReplication = Shapes::StructureShape.new(name: 'ExistingObjectReplication')
162
172
  ExistingObjectReplicationStatus = Shapes::StringShape.new(name: 'ExistingObjectReplicationStatus')
@@ -219,6 +229,9 @@ module Aws::S3
219
229
  GetBucketWebsiteRequest = Shapes::StructureShape.new(name: 'GetBucketWebsiteRequest')
220
230
  GetObjectAclOutput = Shapes::StructureShape.new(name: 'GetObjectAclOutput')
221
231
  GetObjectAclRequest = Shapes::StructureShape.new(name: 'GetObjectAclRequest')
232
+ GetObjectAttributesOutput = Shapes::StructureShape.new(name: 'GetObjectAttributesOutput')
233
+ GetObjectAttributesParts = Shapes::StructureShape.new(name: 'GetObjectAttributesParts')
234
+ GetObjectAttributesRequest = Shapes::StructureShape.new(name: 'GetObjectAttributesRequest')
222
235
  GetObjectLegalHoldOutput = Shapes::StructureShape.new(name: 'GetObjectLegalHoldOutput')
223
236
  GetObjectLegalHoldRequest = Shapes::StructureShape.new(name: 'GetObjectLegalHoldRequest')
224
237
  GetObjectLockConfigurationOutput = Shapes::StructureShape.new(name: 'GetObjectLockConfigurationOutput')
@@ -367,6 +380,8 @@ module Aws::S3
367
380
  NotificationId = Shapes::StringShape.new(name: 'NotificationId')
368
381
  Object = Shapes::StructureShape.new(name: 'Object')
369
382
  ObjectAlreadyInActiveTierError = Shapes::StructureShape.new(name: 'ObjectAlreadyInActiveTierError')
383
+ ObjectAttributes = Shapes::StringShape.new(name: 'ObjectAttributes')
384
+ ObjectAttributesList = Shapes::ListShape.new(name: 'ObjectAttributesList')
370
385
  ObjectCannedACL = Shapes::StringShape.new(name: 'ObjectCannedACL')
371
386
  ObjectIdentifier = Shapes::StructureShape.new(name: 'ObjectIdentifier')
372
387
  ObjectIdentifierList = Shapes::ListShape.new(name: 'ObjectIdentifierList', flattened: true)
@@ -385,6 +400,10 @@ module Aws::S3
385
400
  ObjectLockToken = Shapes::StringShape.new(name: 'ObjectLockToken')
386
401
  ObjectNotInActiveTierError = Shapes::StructureShape.new(name: 'ObjectNotInActiveTierError')
387
402
  ObjectOwnership = Shapes::StringShape.new(name: 'ObjectOwnership')
403
+ ObjectPart = Shapes::StructureShape.new(name: 'ObjectPart')
404
+ ObjectSize = Shapes::IntegerShape.new(name: 'ObjectSize')
405
+ ObjectSizeGreaterThanBytes = Shapes::IntegerShape.new(name: 'ObjectSizeGreaterThanBytes')
406
+ ObjectSizeLessThanBytes = Shapes::IntegerShape.new(name: 'ObjectSizeLessThanBytes')
388
407
  ObjectStorageClass = Shapes::StringShape.new(name: 'ObjectStorageClass')
389
408
  ObjectVersion = Shapes::StructureShape.new(name: 'ObjectVersion')
390
409
  ObjectVersionId = Shapes::StringShape.new(name: 'ObjectVersionId')
@@ -403,6 +422,7 @@ module Aws::S3
403
422
  PartNumberMarker = Shapes::IntegerShape.new(name: 'PartNumberMarker')
404
423
  Parts = Shapes::ListShape.new(name: 'Parts', flattened: true)
405
424
  PartsCount = Shapes::IntegerShape.new(name: 'PartsCount')
425
+ PartsList = Shapes::ListShape.new(name: 'PartsList', flattened: true)
406
426
  Payer = Shapes::StringShape.new(name: 'Payer')
407
427
  Permission = Shapes::StringShape.new(name: 'Permission')
408
428
  Policy = Shapes::StringShape.new(name: 'Policy')
@@ -518,6 +538,7 @@ module Aws::S3
518
538
  ServerSideEncryptionRules = Shapes::ListShape.new(name: 'ServerSideEncryptionRules', flattened: true)
519
539
  Setting = Shapes::BooleanShape.new(name: 'Setting')
520
540
  Size = Shapes::IntegerShape.new(name: 'Size')
541
+ SkipValidation = Shapes::BooleanShape.new(name: 'SkipValidation')
521
542
  SourceSelectionCriteria = Shapes::StructureShape.new(name: 'SourceSelectionCriteria')
522
543
  SseKmsEncryptedObjects = Shapes::StructureShape.new(name: 'SseKmsEncryptedObjects')
523
544
  SseKmsEncryptedObjectsStatus = Shapes::StringShape.new(name: 'SseKmsEncryptedObjectsStatus')
@@ -560,6 +581,7 @@ module Aws::S3
560
581
  UploadPartRequest = Shapes::StructureShape.new(name: 'UploadPartRequest')
561
582
  UserMetadata = Shapes::ListShape.new(name: 'UserMetadata')
562
583
  Value = Shapes::StringShape.new(name: 'Value')
584
+ VersionCount = Shapes::IntegerShape.new(name: 'VersionCount')
563
585
  VersionIdMarker = Shapes::StringShape.new(name: 'VersionIdMarker')
564
586
  VersioningConfiguration = Shapes::StructureShape.new(name: 'VersioningConfiguration')
565
587
  WebsiteConfiguration = Shapes::StructureShape.new(name: 'WebsiteConfiguration')
@@ -573,7 +595,7 @@ module Aws::S3
573
595
  AbortMultipartUploadOutput.add_member(:request_charged, Shapes::ShapeRef.new(shape: RequestCharged, location: "header", location_name: "x-amz-request-charged"))
574
596
  AbortMultipartUploadOutput.struct_class = Types::AbortMultipartUploadOutput
575
597
 
576
- AbortMultipartUploadRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
598
+ AbortMultipartUploadRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
577
599
  AbortMultipartUploadRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
578
600
  AbortMultipartUploadRequest.add_member(:upload_id, Shapes::ShapeRef.new(shape: MultipartUploadId, required: true, location: "querystring", location_name: "uploadId"))
579
601
  AbortMultipartUploadRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
@@ -666,6 +688,14 @@ module Aws::S3
666
688
  CSVOutput.add_member(:quote_character, Shapes::ShapeRef.new(shape: QuoteCharacter, location_name: "QuoteCharacter"))
667
689
  CSVOutput.struct_class = Types::CSVOutput
668
690
 
691
+ Checksum.add_member(:checksum_crc32, Shapes::ShapeRef.new(shape: ChecksumCRC32, location_name: "ChecksumCRC32"))
692
+ Checksum.add_member(:checksum_crc32c, Shapes::ShapeRef.new(shape: ChecksumCRC32C, location_name: "ChecksumCRC32C"))
693
+ Checksum.add_member(:checksum_sha1, Shapes::ShapeRef.new(shape: ChecksumSHA1, location_name: "ChecksumSHA1"))
694
+ Checksum.add_member(:checksum_sha256, Shapes::ShapeRef.new(shape: ChecksumSHA256, location_name: "ChecksumSHA256"))
695
+ Checksum.struct_class = Types::Checksum
696
+
697
+ ChecksumAlgorithmList.member = Shapes::ShapeRef.new(shape: ChecksumAlgorithm)
698
+
669
699
  CloudFunctionConfiguration.add_member(:id, Shapes::ShapeRef.new(shape: NotificationId, location_name: "Id"))
670
700
  CloudFunctionConfiguration.add_member(:event, Shapes::ShapeRef.new(shape: Event, deprecated: true, location_name: "Event"))
671
701
  CloudFunctionConfiguration.add_member(:events, Shapes::ShapeRef.new(shape: EventList, location_name: "Event"))
@@ -683,6 +713,10 @@ module Aws::S3
683
713
  CompleteMultipartUploadOutput.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, location_name: "Key"))
684
714
  CompleteMultipartUploadOutput.add_member(:expiration, Shapes::ShapeRef.new(shape: Expiration, location: "header", location_name: "x-amz-expiration"))
685
715
  CompleteMultipartUploadOutput.add_member(:etag, Shapes::ShapeRef.new(shape: ETag, location_name: "ETag"))
716
+ CompleteMultipartUploadOutput.add_member(:checksum_crc32, Shapes::ShapeRef.new(shape: ChecksumCRC32, location_name: "ChecksumCRC32"))
717
+ CompleteMultipartUploadOutput.add_member(:checksum_crc32c, Shapes::ShapeRef.new(shape: ChecksumCRC32C, location_name: "ChecksumCRC32C"))
718
+ CompleteMultipartUploadOutput.add_member(:checksum_sha1, Shapes::ShapeRef.new(shape: ChecksumSHA1, location_name: "ChecksumSHA1"))
719
+ CompleteMultipartUploadOutput.add_member(:checksum_sha256, Shapes::ShapeRef.new(shape: ChecksumSHA256, location_name: "ChecksumSHA256"))
686
720
  CompleteMultipartUploadOutput.add_member(:server_side_encryption, Shapes::ShapeRef.new(shape: ServerSideEncryption, location: "header", location_name: "x-amz-server-side-encryption"))
687
721
  CompleteMultipartUploadOutput.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "header", location_name: "x-amz-version-id"))
688
722
  CompleteMultipartUploadOutput.add_member(:ssekms_key_id, Shapes::ShapeRef.new(shape: SSEKMSKeyId, location: "header", location_name: "x-amz-server-side-encryption-aws-kms-key-id"))
@@ -690,12 +724,19 @@ module Aws::S3
690
724
  CompleteMultipartUploadOutput.add_member(:request_charged, Shapes::ShapeRef.new(shape: RequestCharged, location: "header", location_name: "x-amz-request-charged"))
691
725
  CompleteMultipartUploadOutput.struct_class = Types::CompleteMultipartUploadOutput
692
726
 
693
- CompleteMultipartUploadRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
727
+ CompleteMultipartUploadRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
694
728
  CompleteMultipartUploadRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
695
729
  CompleteMultipartUploadRequest.add_member(:multipart_upload, Shapes::ShapeRef.new(shape: CompletedMultipartUpload, location_name: "CompleteMultipartUpload", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
696
730
  CompleteMultipartUploadRequest.add_member(:upload_id, Shapes::ShapeRef.new(shape: MultipartUploadId, required: true, location: "querystring", location_name: "uploadId"))
731
+ CompleteMultipartUploadRequest.add_member(:checksum_crc32, Shapes::ShapeRef.new(shape: ChecksumCRC32, location: "header", location_name: "x-amz-checksum-crc32"))
732
+ CompleteMultipartUploadRequest.add_member(:checksum_crc32c, Shapes::ShapeRef.new(shape: ChecksumCRC32C, location: "header", location_name: "x-amz-checksum-crc32c"))
733
+ CompleteMultipartUploadRequest.add_member(:checksum_sha1, Shapes::ShapeRef.new(shape: ChecksumSHA1, location: "header", location_name: "x-amz-checksum-sha1"))
734
+ CompleteMultipartUploadRequest.add_member(:checksum_sha256, Shapes::ShapeRef.new(shape: ChecksumSHA256, location: "header", location_name: "x-amz-checksum-sha256"))
697
735
  CompleteMultipartUploadRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
698
736
  CompleteMultipartUploadRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
737
+ CompleteMultipartUploadRequest.add_member(:sse_customer_algorithm, Shapes::ShapeRef.new(shape: SSECustomerAlgorithm, location: "header", location_name: "x-amz-server-side-encryption-customer-algorithm"))
738
+ CompleteMultipartUploadRequest.add_member(:sse_customer_key, Shapes::ShapeRef.new(shape: SSECustomerKey, location: "header", location_name: "x-amz-server-side-encryption-customer-key"))
739
+ CompleteMultipartUploadRequest.add_member(:sse_customer_key_md5, Shapes::ShapeRef.new(shape: SSECustomerKeyMD5, location: "header", location_name: "x-amz-server-side-encryption-customer-key-MD5"))
699
740
  CompleteMultipartUploadRequest.struct_class = Types::CompleteMultipartUploadRequest
700
741
  CompleteMultipartUploadRequest[:payload] = :multipart_upload
701
742
  CompleteMultipartUploadRequest[:payload_member] = CompleteMultipartUploadRequest.member(:multipart_upload)
@@ -704,6 +745,10 @@ module Aws::S3
704
745
  CompletedMultipartUpload.struct_class = Types::CompletedMultipartUpload
705
746
 
706
747
  CompletedPart.add_member(:etag, Shapes::ShapeRef.new(shape: ETag, location_name: "ETag"))
748
+ CompletedPart.add_member(:checksum_crc32, Shapes::ShapeRef.new(shape: ChecksumCRC32, location_name: "ChecksumCRC32"))
749
+ CompletedPart.add_member(:checksum_crc32c, Shapes::ShapeRef.new(shape: ChecksumCRC32C, location_name: "ChecksumCRC32C"))
750
+ CompletedPart.add_member(:checksum_sha1, Shapes::ShapeRef.new(shape: ChecksumSHA1, location_name: "ChecksumSHA1"))
751
+ CompletedPart.add_member(:checksum_sha256, Shapes::ShapeRef.new(shape: ChecksumSHA256, location_name: "ChecksumSHA256"))
707
752
  CompletedPart.add_member(:part_number, Shapes::ShapeRef.new(shape: PartNumber, location_name: "PartNumber"))
708
753
  CompletedPart.struct_class = Types::CompletedPart
709
754
 
@@ -731,8 +776,9 @@ module Aws::S3
731
776
  CopyObjectOutput[:payload_member] = CopyObjectOutput.member(:copy_object_result)
732
777
 
733
778
  CopyObjectRequest.add_member(:acl, Shapes::ShapeRef.new(shape: ObjectCannedACL, location: "header", location_name: "x-amz-acl"))
734
- CopyObjectRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
779
+ CopyObjectRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
735
780
  CopyObjectRequest.add_member(:cache_control, Shapes::ShapeRef.new(shape: CacheControl, location: "header", location_name: "Cache-Control"))
781
+ CopyObjectRequest.add_member(:checksum_algorithm, Shapes::ShapeRef.new(shape: ChecksumAlgorithm, location: "header", location_name: "x-amz-checksum-algorithm"))
736
782
  CopyObjectRequest.add_member(:content_disposition, Shapes::ShapeRef.new(shape: ContentDisposition, location: "header", location_name: "Content-Disposition"))
737
783
  CopyObjectRequest.add_member(:content_encoding, Shapes::ShapeRef.new(shape: ContentEncoding, location: "header", location_name: "Content-Encoding"))
738
784
  CopyObjectRequest.add_member(:content_language, Shapes::ShapeRef.new(shape: ContentLanguage, location: "header", location_name: "Content-Language"))
@@ -774,10 +820,18 @@ module Aws::S3
774
820
 
775
821
  CopyObjectResult.add_member(:etag, Shapes::ShapeRef.new(shape: ETag, location_name: "ETag"))
776
822
  CopyObjectResult.add_member(:last_modified, Shapes::ShapeRef.new(shape: LastModified, location_name: "LastModified"))
823
+ CopyObjectResult.add_member(:checksum_crc32, Shapes::ShapeRef.new(shape: ChecksumCRC32, location_name: "ChecksumCRC32"))
824
+ CopyObjectResult.add_member(:checksum_crc32c, Shapes::ShapeRef.new(shape: ChecksumCRC32C, location_name: "ChecksumCRC32C"))
825
+ CopyObjectResult.add_member(:checksum_sha1, Shapes::ShapeRef.new(shape: ChecksumSHA1, location_name: "ChecksumSHA1"))
826
+ CopyObjectResult.add_member(:checksum_sha256, Shapes::ShapeRef.new(shape: ChecksumSHA256, location_name: "ChecksumSHA256"))
777
827
  CopyObjectResult.struct_class = Types::CopyObjectResult
778
828
 
779
829
  CopyPartResult.add_member(:etag, Shapes::ShapeRef.new(shape: ETag, location_name: "ETag"))
780
830
  CopyPartResult.add_member(:last_modified, Shapes::ShapeRef.new(shape: LastModified, location_name: "LastModified"))
831
+ CopyPartResult.add_member(:checksum_crc32, Shapes::ShapeRef.new(shape: ChecksumCRC32, location_name: "ChecksumCRC32"))
832
+ CopyPartResult.add_member(:checksum_crc32c, Shapes::ShapeRef.new(shape: ChecksumCRC32C, location_name: "ChecksumCRC32C"))
833
+ CopyPartResult.add_member(:checksum_sha1, Shapes::ShapeRef.new(shape: ChecksumSHA1, location_name: "ChecksumSHA1"))
834
+ CopyPartResult.add_member(:checksum_sha256, Shapes::ShapeRef.new(shape: ChecksumSHA256, location_name: "ChecksumSHA256"))
781
835
  CopyPartResult.struct_class = Types::CopyPartResult
782
836
 
783
837
  CreateBucketConfiguration.add_member(:location_constraint, Shapes::ShapeRef.new(shape: BucketLocationConstraint, location_name: "LocationConstraint"))
@@ -787,7 +841,7 @@ module Aws::S3
787
841
  CreateBucketOutput.struct_class = Types::CreateBucketOutput
788
842
 
789
843
  CreateBucketRequest.add_member(:acl, Shapes::ShapeRef.new(shape: BucketCannedACL, location: "header", location_name: "x-amz-acl"))
790
- CreateBucketRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
844
+ CreateBucketRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
791
845
  CreateBucketRequest.add_member(:create_bucket_configuration, Shapes::ShapeRef.new(shape: CreateBucketConfiguration, location_name: "CreateBucketConfiguration", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
792
846
  CreateBucketRequest.add_member(:grant_full_control, Shapes::ShapeRef.new(shape: GrantFullControl, location: "header", location_name: "x-amz-grant-full-control"))
793
847
  CreateBucketRequest.add_member(:grant_read, Shapes::ShapeRef.new(shape: GrantRead, location: "header", location_name: "x-amz-grant-read"))
@@ -795,6 +849,7 @@ module Aws::S3
795
849
  CreateBucketRequest.add_member(:grant_write, Shapes::ShapeRef.new(shape: GrantWrite, location: "header", location_name: "x-amz-grant-write"))
796
850
  CreateBucketRequest.add_member(:grant_write_acp, Shapes::ShapeRef.new(shape: GrantWriteACP, location: "header", location_name: "x-amz-grant-write-acp"))
797
851
  CreateBucketRequest.add_member(:object_lock_enabled_for_bucket, Shapes::ShapeRef.new(shape: ObjectLockEnabledForBucket, location: "header", location_name: "x-amz-bucket-object-lock-enabled"))
852
+ CreateBucketRequest.add_member(:object_ownership, Shapes::ShapeRef.new(shape: ObjectOwnership, location: "header", location_name: "x-amz-object-ownership"))
798
853
  CreateBucketRequest.struct_class = Types::CreateBucketRequest
799
854
  CreateBucketRequest[:payload] = :create_bucket_configuration
800
855
  CreateBucketRequest[:payload_member] = CreateBucketRequest.member(:create_bucket_configuration)
@@ -811,10 +866,11 @@ module Aws::S3
811
866
  CreateMultipartUploadOutput.add_member(:ssekms_encryption_context, Shapes::ShapeRef.new(shape: SSEKMSEncryptionContext, location: "header", location_name: "x-amz-server-side-encryption-context"))
812
867
  CreateMultipartUploadOutput.add_member(:bucket_key_enabled, Shapes::ShapeRef.new(shape: BucketKeyEnabled, location: "header", location_name: "x-amz-server-side-encryption-bucket-key-enabled"))
813
868
  CreateMultipartUploadOutput.add_member(:request_charged, Shapes::ShapeRef.new(shape: RequestCharged, location: "header", location_name: "x-amz-request-charged"))
869
+ CreateMultipartUploadOutput.add_member(:checksum_algorithm, Shapes::ShapeRef.new(shape: ChecksumAlgorithm, location: "header", location_name: "x-amz-checksum-algorithm"))
814
870
  CreateMultipartUploadOutput.struct_class = Types::CreateMultipartUploadOutput
815
871
 
816
872
  CreateMultipartUploadRequest.add_member(:acl, Shapes::ShapeRef.new(shape: ObjectCannedACL, location: "header", location_name: "x-amz-acl"))
817
- CreateMultipartUploadRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
873
+ CreateMultipartUploadRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
818
874
  CreateMultipartUploadRequest.add_member(:cache_control, Shapes::ShapeRef.new(shape: CacheControl, location: "header", location_name: "Cache-Control"))
819
875
  CreateMultipartUploadRequest.add_member(:content_disposition, Shapes::ShapeRef.new(shape: ContentDisposition, location: "header", location_name: "Content-Disposition"))
820
876
  CreateMultipartUploadRequest.add_member(:content_encoding, Shapes::ShapeRef.new(shape: ContentEncoding, location: "header", location_name: "Content-Encoding"))
@@ -842,6 +898,7 @@ module Aws::S3
842
898
  CreateMultipartUploadRequest.add_member(:object_lock_retain_until_date, Shapes::ShapeRef.new(shape: ObjectLockRetainUntilDate, location: "header", location_name: "x-amz-object-lock-retain-until-date"))
843
899
  CreateMultipartUploadRequest.add_member(:object_lock_legal_hold_status, Shapes::ShapeRef.new(shape: ObjectLockLegalHoldStatus, location: "header", location_name: "x-amz-object-lock-legal-hold"))
844
900
  CreateMultipartUploadRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
901
+ CreateMultipartUploadRequest.add_member(:checksum_algorithm, Shapes::ShapeRef.new(shape: ChecksumAlgorithm, location: "header", location_name: "x-amz-checksum-algorithm"))
845
902
  CreateMultipartUploadRequest.struct_class = Types::CreateMultipartUploadRequest
846
903
 
847
904
  DefaultRetention.add_member(:mode, Shapes::ShapeRef.new(shape: ObjectLockRetentionMode, location_name: "Mode"))
@@ -853,58 +910,58 @@ module Aws::S3
853
910
  Delete.add_member(:quiet, Shapes::ShapeRef.new(shape: Quiet, location_name: "Quiet"))
854
911
  Delete.struct_class = Types::Delete
855
912
 
856
- DeleteBucketAnalyticsConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
913
+ DeleteBucketAnalyticsConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
857
914
  DeleteBucketAnalyticsConfigurationRequest.add_member(:id, Shapes::ShapeRef.new(shape: AnalyticsId, required: true, location: "querystring", location_name: "id"))
858
915
  DeleteBucketAnalyticsConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
859
916
  DeleteBucketAnalyticsConfigurationRequest.struct_class = Types::DeleteBucketAnalyticsConfigurationRequest
860
917
 
861
- DeleteBucketCorsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
918
+ DeleteBucketCorsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
862
919
  DeleteBucketCorsRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
863
920
  DeleteBucketCorsRequest.struct_class = Types::DeleteBucketCorsRequest
864
921
 
865
- DeleteBucketEncryptionRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
922
+ DeleteBucketEncryptionRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
866
923
  DeleteBucketEncryptionRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
867
924
  DeleteBucketEncryptionRequest.struct_class = Types::DeleteBucketEncryptionRequest
868
925
 
869
- DeleteBucketIntelligentTieringConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
926
+ DeleteBucketIntelligentTieringConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
870
927
  DeleteBucketIntelligentTieringConfigurationRequest.add_member(:id, Shapes::ShapeRef.new(shape: IntelligentTieringId, required: true, location: "querystring", location_name: "id"))
871
928
  DeleteBucketIntelligentTieringConfigurationRequest.struct_class = Types::DeleteBucketIntelligentTieringConfigurationRequest
872
929
 
873
- DeleteBucketInventoryConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
930
+ DeleteBucketInventoryConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
874
931
  DeleteBucketInventoryConfigurationRequest.add_member(:id, Shapes::ShapeRef.new(shape: InventoryId, required: true, location: "querystring", location_name: "id"))
875
932
  DeleteBucketInventoryConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
876
933
  DeleteBucketInventoryConfigurationRequest.struct_class = Types::DeleteBucketInventoryConfigurationRequest
877
934
 
878
- DeleteBucketLifecycleRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
935
+ DeleteBucketLifecycleRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
879
936
  DeleteBucketLifecycleRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
880
937
  DeleteBucketLifecycleRequest.struct_class = Types::DeleteBucketLifecycleRequest
881
938
 
882
- DeleteBucketMetricsConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
939
+ DeleteBucketMetricsConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
883
940
  DeleteBucketMetricsConfigurationRequest.add_member(:id, Shapes::ShapeRef.new(shape: MetricsId, required: true, location: "querystring", location_name: "id"))
884
941
  DeleteBucketMetricsConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
885
942
  DeleteBucketMetricsConfigurationRequest.struct_class = Types::DeleteBucketMetricsConfigurationRequest
886
943
 
887
- DeleteBucketOwnershipControlsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
944
+ DeleteBucketOwnershipControlsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
888
945
  DeleteBucketOwnershipControlsRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
889
946
  DeleteBucketOwnershipControlsRequest.struct_class = Types::DeleteBucketOwnershipControlsRequest
890
947
 
891
- DeleteBucketPolicyRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
948
+ DeleteBucketPolicyRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
892
949
  DeleteBucketPolicyRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
893
950
  DeleteBucketPolicyRequest.struct_class = Types::DeleteBucketPolicyRequest
894
951
 
895
- DeleteBucketReplicationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
952
+ DeleteBucketReplicationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
896
953
  DeleteBucketReplicationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
897
954
  DeleteBucketReplicationRequest.struct_class = Types::DeleteBucketReplicationRequest
898
955
 
899
- DeleteBucketRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
956
+ DeleteBucketRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
900
957
  DeleteBucketRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
901
958
  DeleteBucketRequest.struct_class = Types::DeleteBucketRequest
902
959
 
903
- DeleteBucketTaggingRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
960
+ DeleteBucketTaggingRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
904
961
  DeleteBucketTaggingRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
905
962
  DeleteBucketTaggingRequest.struct_class = Types::DeleteBucketTaggingRequest
906
963
 
907
- DeleteBucketWebsiteRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
964
+ DeleteBucketWebsiteRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
908
965
  DeleteBucketWebsiteRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
909
966
  DeleteBucketWebsiteRequest.struct_class = Types::DeleteBucketWebsiteRequest
910
967
 
@@ -925,7 +982,7 @@ module Aws::S3
925
982
  DeleteObjectOutput.add_member(:request_charged, Shapes::ShapeRef.new(shape: RequestCharged, location: "header", location_name: "x-amz-request-charged"))
926
983
  DeleteObjectOutput.struct_class = Types::DeleteObjectOutput
927
984
 
928
- DeleteObjectRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
985
+ DeleteObjectRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
929
986
  DeleteObjectRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
930
987
  DeleteObjectRequest.add_member(:mfa, Shapes::ShapeRef.new(shape: MFA, location: "header", location_name: "x-amz-mfa"))
931
988
  DeleteObjectRequest.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "querystring", location_name: "versionId"))
@@ -937,7 +994,7 @@ module Aws::S3
937
994
  DeleteObjectTaggingOutput.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "header", location_name: "x-amz-version-id"))
938
995
  DeleteObjectTaggingOutput.struct_class = Types::DeleteObjectTaggingOutput
939
996
 
940
- DeleteObjectTaggingRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
997
+ DeleteObjectTaggingRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
941
998
  DeleteObjectTaggingRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
942
999
  DeleteObjectTaggingRequest.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "querystring", location_name: "versionId"))
943
1000
  DeleteObjectTaggingRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
@@ -948,17 +1005,18 @@ module Aws::S3
948
1005
  DeleteObjectsOutput.add_member(:errors, Shapes::ShapeRef.new(shape: Errors, location_name: "Error"))
949
1006
  DeleteObjectsOutput.struct_class = Types::DeleteObjectsOutput
950
1007
 
951
- DeleteObjectsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1008
+ DeleteObjectsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
952
1009
  DeleteObjectsRequest.add_member(:delete, Shapes::ShapeRef.new(shape: Delete, required: true, location_name: "Delete", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
953
1010
  DeleteObjectsRequest.add_member(:mfa, Shapes::ShapeRef.new(shape: MFA, location: "header", location_name: "x-amz-mfa"))
954
1011
  DeleteObjectsRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
955
1012
  DeleteObjectsRequest.add_member(:bypass_governance_retention, Shapes::ShapeRef.new(shape: BypassGovernanceRetention, location: "header", location_name: "x-amz-bypass-governance-retention"))
956
1013
  DeleteObjectsRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1014
+ DeleteObjectsRequest.add_member(:checksum_algorithm, Shapes::ShapeRef.new(shape: ChecksumAlgorithm, location: "header", location_name: "x-amz-sdk-checksum-algorithm"))
957
1015
  DeleteObjectsRequest.struct_class = Types::DeleteObjectsRequest
958
1016
  DeleteObjectsRequest[:payload] = :delete
959
1017
  DeleteObjectsRequest[:payload_member] = DeleteObjectsRequest.member(:delete)
960
1018
 
961
- DeletePublicAccessBlockRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1019
+ DeletePublicAccessBlockRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
962
1020
  DeletePublicAccessBlockRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
963
1021
  DeletePublicAccessBlockRequest.struct_class = Types::DeletePublicAccessBlockRequest
964
1022
 
@@ -1000,6 +1058,8 @@ module Aws::S3
1000
1058
 
1001
1059
  Errors.member = Shapes::ShapeRef.new(shape: Error)
1002
1060
 
1061
+ EventBridgeConfiguration.struct_class = Types::EventBridgeConfiguration
1062
+
1003
1063
  EventList.member = Shapes::ShapeRef.new(shape: Event)
1004
1064
 
1005
1065
  ExistingObjectReplication.add_member(:status, Shapes::ShapeRef.new(shape: ExistingObjectReplicationStatus, required: true, location_name: "Status"))
@@ -1016,7 +1076,7 @@ module Aws::S3
1016
1076
  GetBucketAccelerateConfigurationOutput.add_member(:status, Shapes::ShapeRef.new(shape: BucketAccelerateStatus, location_name: "Status"))
1017
1077
  GetBucketAccelerateConfigurationOutput.struct_class = Types::GetBucketAccelerateConfigurationOutput
1018
1078
 
1019
- GetBucketAccelerateConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1079
+ GetBucketAccelerateConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1020
1080
  GetBucketAccelerateConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1021
1081
  GetBucketAccelerateConfigurationRequest.struct_class = Types::GetBucketAccelerateConfigurationRequest
1022
1082
 
@@ -1024,7 +1084,7 @@ module Aws::S3
1024
1084
  GetBucketAclOutput.add_member(:grants, Shapes::ShapeRef.new(shape: Grants, location_name: "AccessControlList"))
1025
1085
  GetBucketAclOutput.struct_class = Types::GetBucketAclOutput
1026
1086
 
1027
- GetBucketAclRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1087
+ GetBucketAclRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1028
1088
  GetBucketAclRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1029
1089
  GetBucketAclRequest.struct_class = Types::GetBucketAclRequest
1030
1090
 
@@ -1033,7 +1093,7 @@ module Aws::S3
1033
1093
  GetBucketAnalyticsConfigurationOutput[:payload] = :analytics_configuration
1034
1094
  GetBucketAnalyticsConfigurationOutput[:payload_member] = GetBucketAnalyticsConfigurationOutput.member(:analytics_configuration)
1035
1095
 
1036
- GetBucketAnalyticsConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1096
+ GetBucketAnalyticsConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1037
1097
  GetBucketAnalyticsConfigurationRequest.add_member(:id, Shapes::ShapeRef.new(shape: AnalyticsId, required: true, location: "querystring", location_name: "id"))
1038
1098
  GetBucketAnalyticsConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1039
1099
  GetBucketAnalyticsConfigurationRequest.struct_class = Types::GetBucketAnalyticsConfigurationRequest
@@ -1041,7 +1101,7 @@ module Aws::S3
1041
1101
  GetBucketCorsOutput.add_member(:cors_rules, Shapes::ShapeRef.new(shape: CORSRules, location_name: "CORSRule"))
1042
1102
  GetBucketCorsOutput.struct_class = Types::GetBucketCorsOutput
1043
1103
 
1044
- GetBucketCorsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1104
+ GetBucketCorsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1045
1105
  GetBucketCorsRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1046
1106
  GetBucketCorsRequest.struct_class = Types::GetBucketCorsRequest
1047
1107
 
@@ -1050,7 +1110,7 @@ module Aws::S3
1050
1110
  GetBucketEncryptionOutput[:payload] = :server_side_encryption_configuration
1051
1111
  GetBucketEncryptionOutput[:payload_member] = GetBucketEncryptionOutput.member(:server_side_encryption_configuration)
1052
1112
 
1053
- GetBucketEncryptionRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1113
+ GetBucketEncryptionRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1054
1114
  GetBucketEncryptionRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1055
1115
  GetBucketEncryptionRequest.struct_class = Types::GetBucketEncryptionRequest
1056
1116
 
@@ -1059,7 +1119,7 @@ module Aws::S3
1059
1119
  GetBucketIntelligentTieringConfigurationOutput[:payload] = :intelligent_tiering_configuration
1060
1120
  GetBucketIntelligentTieringConfigurationOutput[:payload_member] = GetBucketIntelligentTieringConfigurationOutput.member(:intelligent_tiering_configuration)
1061
1121
 
1062
- GetBucketIntelligentTieringConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1122
+ GetBucketIntelligentTieringConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1063
1123
  GetBucketIntelligentTieringConfigurationRequest.add_member(:id, Shapes::ShapeRef.new(shape: IntelligentTieringId, required: true, location: "querystring", location_name: "id"))
1064
1124
  GetBucketIntelligentTieringConfigurationRequest.struct_class = Types::GetBucketIntelligentTieringConfigurationRequest
1065
1125
 
@@ -1068,7 +1128,7 @@ module Aws::S3
1068
1128
  GetBucketInventoryConfigurationOutput[:payload] = :inventory_configuration
1069
1129
  GetBucketInventoryConfigurationOutput[:payload_member] = GetBucketInventoryConfigurationOutput.member(:inventory_configuration)
1070
1130
 
1071
- GetBucketInventoryConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1131
+ GetBucketInventoryConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1072
1132
  GetBucketInventoryConfigurationRequest.add_member(:id, Shapes::ShapeRef.new(shape: InventoryId, required: true, location: "querystring", location_name: "id"))
1073
1133
  GetBucketInventoryConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1074
1134
  GetBucketInventoryConfigurationRequest.struct_class = Types::GetBucketInventoryConfigurationRequest
@@ -1076,28 +1136,28 @@ module Aws::S3
1076
1136
  GetBucketLifecycleConfigurationOutput.add_member(:rules, Shapes::ShapeRef.new(shape: LifecycleRules, location_name: "Rule"))
1077
1137
  GetBucketLifecycleConfigurationOutput.struct_class = Types::GetBucketLifecycleConfigurationOutput
1078
1138
 
1079
- GetBucketLifecycleConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1139
+ GetBucketLifecycleConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1080
1140
  GetBucketLifecycleConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1081
1141
  GetBucketLifecycleConfigurationRequest.struct_class = Types::GetBucketLifecycleConfigurationRequest
1082
1142
 
1083
1143
  GetBucketLifecycleOutput.add_member(:rules, Shapes::ShapeRef.new(shape: Rules, location_name: "Rule"))
1084
1144
  GetBucketLifecycleOutput.struct_class = Types::GetBucketLifecycleOutput
1085
1145
 
1086
- GetBucketLifecycleRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1146
+ GetBucketLifecycleRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1087
1147
  GetBucketLifecycleRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1088
1148
  GetBucketLifecycleRequest.struct_class = Types::GetBucketLifecycleRequest
1089
1149
 
1090
1150
  GetBucketLocationOutput.add_member(:location_constraint, Shapes::ShapeRef.new(shape: BucketLocationConstraint, location_name: "LocationConstraint"))
1091
1151
  GetBucketLocationOutput.struct_class = Types::GetBucketLocationOutput
1092
1152
 
1093
- GetBucketLocationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1153
+ GetBucketLocationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1094
1154
  GetBucketLocationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1095
1155
  GetBucketLocationRequest.struct_class = Types::GetBucketLocationRequest
1096
1156
 
1097
1157
  GetBucketLoggingOutput.add_member(:logging_enabled, Shapes::ShapeRef.new(shape: LoggingEnabled, location_name: "LoggingEnabled"))
1098
1158
  GetBucketLoggingOutput.struct_class = Types::GetBucketLoggingOutput
1099
1159
 
1100
- GetBucketLoggingRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1160
+ GetBucketLoggingRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1101
1161
  GetBucketLoggingRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1102
1162
  GetBucketLoggingRequest.struct_class = Types::GetBucketLoggingRequest
1103
1163
 
@@ -1106,12 +1166,12 @@ module Aws::S3
1106
1166
  GetBucketMetricsConfigurationOutput[:payload] = :metrics_configuration
1107
1167
  GetBucketMetricsConfigurationOutput[:payload_member] = GetBucketMetricsConfigurationOutput.member(:metrics_configuration)
1108
1168
 
1109
- GetBucketMetricsConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1169
+ GetBucketMetricsConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1110
1170
  GetBucketMetricsConfigurationRequest.add_member(:id, Shapes::ShapeRef.new(shape: MetricsId, required: true, location: "querystring", location_name: "id"))
1111
1171
  GetBucketMetricsConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1112
1172
  GetBucketMetricsConfigurationRequest.struct_class = Types::GetBucketMetricsConfigurationRequest
1113
1173
 
1114
- GetBucketNotificationConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1174
+ GetBucketNotificationConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1115
1175
  GetBucketNotificationConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1116
1176
  GetBucketNotificationConfigurationRequest.struct_class = Types::GetBucketNotificationConfigurationRequest
1117
1177
 
@@ -1120,7 +1180,7 @@ module Aws::S3
1120
1180
  GetBucketOwnershipControlsOutput[:payload] = :ownership_controls
1121
1181
  GetBucketOwnershipControlsOutput[:payload_member] = GetBucketOwnershipControlsOutput.member(:ownership_controls)
1122
1182
 
1123
- GetBucketOwnershipControlsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1183
+ GetBucketOwnershipControlsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1124
1184
  GetBucketOwnershipControlsRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1125
1185
  GetBucketOwnershipControlsRequest.struct_class = Types::GetBucketOwnershipControlsRequest
1126
1186
 
@@ -1129,7 +1189,7 @@ module Aws::S3
1129
1189
  GetBucketPolicyOutput[:payload] = :policy
1130
1190
  GetBucketPolicyOutput[:payload_member] = GetBucketPolicyOutput.member(:policy)
1131
1191
 
1132
- GetBucketPolicyRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1192
+ GetBucketPolicyRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1133
1193
  GetBucketPolicyRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1134
1194
  GetBucketPolicyRequest.struct_class = Types::GetBucketPolicyRequest
1135
1195
 
@@ -1138,7 +1198,7 @@ module Aws::S3
1138
1198
  GetBucketPolicyStatusOutput[:payload] = :policy_status
1139
1199
  GetBucketPolicyStatusOutput[:payload_member] = GetBucketPolicyStatusOutput.member(:policy_status)
1140
1200
 
1141
- GetBucketPolicyStatusRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1201
+ GetBucketPolicyStatusRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1142
1202
  GetBucketPolicyStatusRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1143
1203
  GetBucketPolicyStatusRequest.struct_class = Types::GetBucketPolicyStatusRequest
1144
1204
 
@@ -1147,21 +1207,21 @@ module Aws::S3
1147
1207
  GetBucketReplicationOutput[:payload] = :replication_configuration
1148
1208
  GetBucketReplicationOutput[:payload_member] = GetBucketReplicationOutput.member(:replication_configuration)
1149
1209
 
1150
- GetBucketReplicationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1210
+ GetBucketReplicationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1151
1211
  GetBucketReplicationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1152
1212
  GetBucketReplicationRequest.struct_class = Types::GetBucketReplicationRequest
1153
1213
 
1154
1214
  GetBucketRequestPaymentOutput.add_member(:payer, Shapes::ShapeRef.new(shape: Payer, location_name: "Payer"))
1155
1215
  GetBucketRequestPaymentOutput.struct_class = Types::GetBucketRequestPaymentOutput
1156
1216
 
1157
- GetBucketRequestPaymentRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1217
+ GetBucketRequestPaymentRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1158
1218
  GetBucketRequestPaymentRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1159
1219
  GetBucketRequestPaymentRequest.struct_class = Types::GetBucketRequestPaymentRequest
1160
1220
 
1161
1221
  GetBucketTaggingOutput.add_member(:tag_set, Shapes::ShapeRef.new(shape: TagSet, required: true, location_name: "TagSet"))
1162
1222
  GetBucketTaggingOutput.struct_class = Types::GetBucketTaggingOutput
1163
1223
 
1164
- GetBucketTaggingRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1224
+ GetBucketTaggingRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1165
1225
  GetBucketTaggingRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1166
1226
  GetBucketTaggingRequest.struct_class = Types::GetBucketTaggingRequest
1167
1227
 
@@ -1169,7 +1229,7 @@ module Aws::S3
1169
1229
  GetBucketVersioningOutput.add_member(:mfa_delete, Shapes::ShapeRef.new(shape: MFADeleteStatus, location_name: "MfaDelete"))
1170
1230
  GetBucketVersioningOutput.struct_class = Types::GetBucketVersioningOutput
1171
1231
 
1172
- GetBucketVersioningRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1232
+ GetBucketVersioningRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1173
1233
  GetBucketVersioningRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1174
1234
  GetBucketVersioningRequest.struct_class = Types::GetBucketVersioningRequest
1175
1235
 
@@ -1179,7 +1239,7 @@ module Aws::S3
1179
1239
  GetBucketWebsiteOutput.add_member(:routing_rules, Shapes::ShapeRef.new(shape: RoutingRules, location_name: "RoutingRules"))
1180
1240
  GetBucketWebsiteOutput.struct_class = Types::GetBucketWebsiteOutput
1181
1241
 
1182
- GetBucketWebsiteRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1242
+ GetBucketWebsiteRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1183
1243
  GetBucketWebsiteRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1184
1244
  GetBucketWebsiteRequest.struct_class = Types::GetBucketWebsiteRequest
1185
1245
 
@@ -1188,19 +1248,51 @@ module Aws::S3
1188
1248
  GetObjectAclOutput.add_member(:request_charged, Shapes::ShapeRef.new(shape: RequestCharged, location: "header", location_name: "x-amz-request-charged"))
1189
1249
  GetObjectAclOutput.struct_class = Types::GetObjectAclOutput
1190
1250
 
1191
- GetObjectAclRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1251
+ GetObjectAclRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1192
1252
  GetObjectAclRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
1193
1253
  GetObjectAclRequest.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "querystring", location_name: "versionId"))
1194
1254
  GetObjectAclRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
1195
1255
  GetObjectAclRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1196
1256
  GetObjectAclRequest.struct_class = Types::GetObjectAclRequest
1197
1257
 
1258
+ GetObjectAttributesOutput.add_member(:delete_marker, Shapes::ShapeRef.new(shape: DeleteMarker, location: "header", location_name: "x-amz-delete-marker"))
1259
+ GetObjectAttributesOutput.add_member(:last_modified, Shapes::ShapeRef.new(shape: LastModified, location: "header", location_name: "Last-Modified"))
1260
+ GetObjectAttributesOutput.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "header", location_name: "x-amz-version-id"))
1261
+ GetObjectAttributesOutput.add_member(:request_charged, Shapes::ShapeRef.new(shape: RequestCharged, location: "header", location_name: "x-amz-request-charged"))
1262
+ GetObjectAttributesOutput.add_member(:etag, Shapes::ShapeRef.new(shape: ETag, location_name: "ETag"))
1263
+ GetObjectAttributesOutput.add_member(:checksum, Shapes::ShapeRef.new(shape: Checksum, location_name: "Checksum"))
1264
+ GetObjectAttributesOutput.add_member(:object_parts, Shapes::ShapeRef.new(shape: GetObjectAttributesParts, location_name: "ObjectParts"))
1265
+ GetObjectAttributesOutput.add_member(:storage_class, Shapes::ShapeRef.new(shape: StorageClass, location_name: "StorageClass"))
1266
+ GetObjectAttributesOutput.add_member(:object_size, Shapes::ShapeRef.new(shape: ObjectSize, location_name: "ObjectSize"))
1267
+ GetObjectAttributesOutput.struct_class = Types::GetObjectAttributesOutput
1268
+
1269
+ GetObjectAttributesParts.add_member(:total_parts_count, Shapes::ShapeRef.new(shape: PartsCount, location_name: "PartsCount"))
1270
+ GetObjectAttributesParts.add_member(:part_number_marker, Shapes::ShapeRef.new(shape: PartNumberMarker, location_name: "PartNumberMarker"))
1271
+ GetObjectAttributesParts.add_member(:next_part_number_marker, Shapes::ShapeRef.new(shape: NextPartNumberMarker, location_name: "NextPartNumberMarker"))
1272
+ GetObjectAttributesParts.add_member(:max_parts, Shapes::ShapeRef.new(shape: MaxParts, location_name: "MaxParts"))
1273
+ GetObjectAttributesParts.add_member(:is_truncated, Shapes::ShapeRef.new(shape: IsTruncated, location_name: "IsTruncated"))
1274
+ GetObjectAttributesParts.add_member(:parts, Shapes::ShapeRef.new(shape: PartsList, location_name: "Part"))
1275
+ GetObjectAttributesParts.struct_class = Types::GetObjectAttributesParts
1276
+
1277
+ GetObjectAttributesRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1278
+ GetObjectAttributesRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
1279
+ GetObjectAttributesRequest.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "querystring", location_name: "versionId"))
1280
+ GetObjectAttributesRequest.add_member(:max_parts, Shapes::ShapeRef.new(shape: MaxParts, location: "header", location_name: "x-amz-max-parts"))
1281
+ GetObjectAttributesRequest.add_member(:part_number_marker, Shapes::ShapeRef.new(shape: PartNumberMarker, location: "header", location_name: "x-amz-part-number-marker"))
1282
+ GetObjectAttributesRequest.add_member(:sse_customer_algorithm, Shapes::ShapeRef.new(shape: SSECustomerAlgorithm, location: "header", location_name: "x-amz-server-side-encryption-customer-algorithm"))
1283
+ GetObjectAttributesRequest.add_member(:sse_customer_key, Shapes::ShapeRef.new(shape: SSECustomerKey, location: "header", location_name: "x-amz-server-side-encryption-customer-key"))
1284
+ GetObjectAttributesRequest.add_member(:sse_customer_key_md5, Shapes::ShapeRef.new(shape: SSECustomerKeyMD5, location: "header", location_name: "x-amz-server-side-encryption-customer-key-MD5"))
1285
+ GetObjectAttributesRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
1286
+ GetObjectAttributesRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1287
+ GetObjectAttributesRequest.add_member(:object_attributes, Shapes::ShapeRef.new(shape: ObjectAttributesList, required: true, location: "header", location_name: "x-amz-object-attributes"))
1288
+ GetObjectAttributesRequest.struct_class = Types::GetObjectAttributesRequest
1289
+
1198
1290
  GetObjectLegalHoldOutput.add_member(:legal_hold, Shapes::ShapeRef.new(shape: ObjectLockLegalHold, location_name: "LegalHold"))
1199
1291
  GetObjectLegalHoldOutput.struct_class = Types::GetObjectLegalHoldOutput
1200
1292
  GetObjectLegalHoldOutput[:payload] = :legal_hold
1201
1293
  GetObjectLegalHoldOutput[:payload_member] = GetObjectLegalHoldOutput.member(:legal_hold)
1202
1294
 
1203
- GetObjectLegalHoldRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1295
+ GetObjectLegalHoldRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1204
1296
  GetObjectLegalHoldRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
1205
1297
  GetObjectLegalHoldRequest.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "querystring", location_name: "versionId"))
1206
1298
  GetObjectLegalHoldRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
@@ -1212,7 +1304,7 @@ module Aws::S3
1212
1304
  GetObjectLockConfigurationOutput[:payload] = :object_lock_configuration
1213
1305
  GetObjectLockConfigurationOutput[:payload_member] = GetObjectLockConfigurationOutput.member(:object_lock_configuration)
1214
1306
 
1215
- GetObjectLockConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1307
+ GetObjectLockConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1216
1308
  GetObjectLockConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1217
1309
  GetObjectLockConfigurationRequest.struct_class = Types::GetObjectLockConfigurationRequest
1218
1310
 
@@ -1224,6 +1316,10 @@ module Aws::S3
1224
1316
  GetObjectOutput.add_member(:last_modified, Shapes::ShapeRef.new(shape: LastModified, location: "header", location_name: "Last-Modified"))
1225
1317
  GetObjectOutput.add_member(:content_length, Shapes::ShapeRef.new(shape: ContentLength, location: "header", location_name: "Content-Length"))
1226
1318
  GetObjectOutput.add_member(:etag, Shapes::ShapeRef.new(shape: ETag, location: "header", location_name: "ETag"))
1319
+ GetObjectOutput.add_member(:checksum_crc32, Shapes::ShapeRef.new(shape: ChecksumCRC32, location: "header", location_name: "x-amz-checksum-crc32"))
1320
+ GetObjectOutput.add_member(:checksum_crc32c, Shapes::ShapeRef.new(shape: ChecksumCRC32C, location: "header", location_name: "x-amz-checksum-crc32c"))
1321
+ GetObjectOutput.add_member(:checksum_sha1, Shapes::ShapeRef.new(shape: ChecksumSHA1, location: "header", location_name: "x-amz-checksum-sha1"))
1322
+ GetObjectOutput.add_member(:checksum_sha256, Shapes::ShapeRef.new(shape: ChecksumSHA256, location: "header", location_name: "x-amz-checksum-sha256"))
1227
1323
  GetObjectOutput.add_member(:missing_meta, Shapes::ShapeRef.new(shape: MissingMeta, location: "header", location_name: "x-amz-missing-meta"))
1228
1324
  GetObjectOutput.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "header", location_name: "x-amz-version-id"))
1229
1325
  GetObjectOutput.add_member(:cache_control, Shapes::ShapeRef.new(shape: CacheControl, location: "header", location_name: "Cache-Control"))
@@ -1253,7 +1349,7 @@ module Aws::S3
1253
1349
  GetObjectOutput[:payload] = :body
1254
1350
  GetObjectOutput[:payload_member] = GetObjectOutput.member(:body)
1255
1351
 
1256
- GetObjectRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1352
+ GetObjectRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1257
1353
  GetObjectRequest.add_member(:if_match, Shapes::ShapeRef.new(shape: IfMatch, location: "header", location_name: "If-Match"))
1258
1354
  GetObjectRequest.add_member(:if_modified_since, Shapes::ShapeRef.new(shape: IfModifiedSince, location: "header", location_name: "If-Modified-Since"))
1259
1355
  GetObjectRequest.add_member(:if_none_match, Shapes::ShapeRef.new(shape: IfNoneMatch, location: "header", location_name: "If-None-Match"))
@@ -1273,6 +1369,7 @@ module Aws::S3
1273
1369
  GetObjectRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
1274
1370
  GetObjectRequest.add_member(:part_number, Shapes::ShapeRef.new(shape: PartNumber, location: "querystring", location_name: "partNumber"))
1275
1371
  GetObjectRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1372
+ GetObjectRequest.add_member(:checksum_mode, Shapes::ShapeRef.new(shape: ChecksumMode, location: "header", location_name: "x-amz-checksum-mode"))
1276
1373
  GetObjectRequest.struct_class = Types::GetObjectRequest
1277
1374
 
1278
1375
  GetObjectRetentionOutput.add_member(:retention, Shapes::ShapeRef.new(shape: ObjectLockRetention, location_name: "Retention"))
@@ -1280,7 +1377,7 @@ module Aws::S3
1280
1377
  GetObjectRetentionOutput[:payload] = :retention
1281
1378
  GetObjectRetentionOutput[:payload_member] = GetObjectRetentionOutput.member(:retention)
1282
1379
 
1283
- GetObjectRetentionRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1380
+ GetObjectRetentionRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1284
1381
  GetObjectRetentionRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
1285
1382
  GetObjectRetentionRequest.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "querystring", location_name: "versionId"))
1286
1383
  GetObjectRetentionRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
@@ -1291,7 +1388,7 @@ module Aws::S3
1291
1388
  GetObjectTaggingOutput.add_member(:tag_set, Shapes::ShapeRef.new(shape: TagSet, required: true, location_name: "TagSet"))
1292
1389
  GetObjectTaggingOutput.struct_class = Types::GetObjectTaggingOutput
1293
1390
 
1294
- GetObjectTaggingRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1391
+ GetObjectTaggingRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1295
1392
  GetObjectTaggingRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
1296
1393
  GetObjectTaggingRequest.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "querystring", location_name: "versionId"))
1297
1394
  GetObjectTaggingRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
@@ -1304,7 +1401,7 @@ module Aws::S3
1304
1401
  GetObjectTorrentOutput[:payload] = :body
1305
1402
  GetObjectTorrentOutput[:payload_member] = GetObjectTorrentOutput.member(:body)
1306
1403
 
1307
- GetObjectTorrentRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1404
+ GetObjectTorrentRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1308
1405
  GetObjectTorrentRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
1309
1406
  GetObjectTorrentRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
1310
1407
  GetObjectTorrentRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
@@ -1315,7 +1412,7 @@ module Aws::S3
1315
1412
  GetPublicAccessBlockOutput[:payload] = :public_access_block_configuration
1316
1413
  GetPublicAccessBlockOutput[:payload_member] = GetPublicAccessBlockOutput.member(:public_access_block_configuration)
1317
1414
 
1318
- GetPublicAccessBlockRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1415
+ GetPublicAccessBlockRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1319
1416
  GetPublicAccessBlockRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1320
1417
  GetPublicAccessBlockRequest.struct_class = Types::GetPublicAccessBlockRequest
1321
1418
 
@@ -1335,7 +1432,7 @@ module Aws::S3
1335
1432
 
1336
1433
  Grants.member = Shapes::ShapeRef.new(shape: Grant, location_name: "Grant")
1337
1434
 
1338
- HeadBucketRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1435
+ HeadBucketRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1339
1436
  HeadBucketRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1340
1437
  HeadBucketRequest.struct_class = Types::HeadBucketRequest
1341
1438
 
@@ -1346,6 +1443,10 @@ module Aws::S3
1346
1443
  HeadObjectOutput.add_member(:archive_status, Shapes::ShapeRef.new(shape: ArchiveStatus, location: "header", location_name: "x-amz-archive-status"))
1347
1444
  HeadObjectOutput.add_member(:last_modified, Shapes::ShapeRef.new(shape: LastModified, location: "header", location_name: "Last-Modified"))
1348
1445
  HeadObjectOutput.add_member(:content_length, Shapes::ShapeRef.new(shape: ContentLength, location: "header", location_name: "Content-Length"))
1446
+ HeadObjectOutput.add_member(:checksum_crc32, Shapes::ShapeRef.new(shape: ChecksumCRC32, location: "header", location_name: "x-amz-checksum-crc32"))
1447
+ HeadObjectOutput.add_member(:checksum_crc32c, Shapes::ShapeRef.new(shape: ChecksumCRC32C, location: "header", location_name: "x-amz-checksum-crc32c"))
1448
+ HeadObjectOutput.add_member(:checksum_sha1, Shapes::ShapeRef.new(shape: ChecksumSHA1, location: "header", location_name: "x-amz-checksum-sha1"))
1449
+ HeadObjectOutput.add_member(:checksum_sha256, Shapes::ShapeRef.new(shape: ChecksumSHA256, location: "header", location_name: "x-amz-checksum-sha256"))
1349
1450
  HeadObjectOutput.add_member(:etag, Shapes::ShapeRef.new(shape: ETag, location: "header", location_name: "ETag"))
1350
1451
  HeadObjectOutput.add_member(:missing_meta, Shapes::ShapeRef.new(shape: MissingMeta, location: "header", location_name: "x-amz-missing-meta"))
1351
1452
  HeadObjectOutput.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "header", location_name: "x-amz-version-id"))
@@ -1372,7 +1473,7 @@ module Aws::S3
1372
1473
  HeadObjectOutput.add_member(:object_lock_legal_hold_status, Shapes::ShapeRef.new(shape: ObjectLockLegalHoldStatus, location: "header", location_name: "x-amz-object-lock-legal-hold"))
1373
1474
  HeadObjectOutput.struct_class = Types::HeadObjectOutput
1374
1475
 
1375
- HeadObjectRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1476
+ HeadObjectRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1376
1477
  HeadObjectRequest.add_member(:if_match, Shapes::ShapeRef.new(shape: IfMatch, location: "header", location_name: "If-Match"))
1377
1478
  HeadObjectRequest.add_member(:if_modified_since, Shapes::ShapeRef.new(shape: IfModifiedSince, location: "header", location_name: "If-Modified-Since"))
1378
1479
  HeadObjectRequest.add_member(:if_none_match, Shapes::ShapeRef.new(shape: IfNoneMatch, location: "header", location_name: "If-None-Match"))
@@ -1386,6 +1487,7 @@ module Aws::S3
1386
1487
  HeadObjectRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
1387
1488
  HeadObjectRequest.add_member(:part_number, Shapes::ShapeRef.new(shape: PartNumber, location: "querystring", location_name: "partNumber"))
1388
1489
  HeadObjectRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1490
+ HeadObjectRequest.add_member(:checksum_mode, Shapes::ShapeRef.new(shape: ChecksumMode, location: "header", location_name: "x-amz-checksum-mode"))
1389
1491
  HeadObjectRequest.struct_class = Types::HeadObjectRequest
1390
1492
 
1391
1493
  IndexDocument.add_member(:suffix, Shapes::ShapeRef.new(shape: Suffix, required: true, location_name: "Suffix"))
@@ -1490,10 +1592,14 @@ module Aws::S3
1490
1592
 
1491
1593
  LifecycleRuleAndOperator.add_member(:prefix, Shapes::ShapeRef.new(shape: Prefix, location_name: "Prefix"))
1492
1594
  LifecycleRuleAndOperator.add_member(:tags, Shapes::ShapeRef.new(shape: TagSet, location_name: "Tag", metadata: {"flattened"=>true}))
1595
+ LifecycleRuleAndOperator.add_member(:object_size_greater_than, Shapes::ShapeRef.new(shape: ObjectSizeGreaterThanBytes, location_name: "ObjectSizeGreaterThan"))
1596
+ LifecycleRuleAndOperator.add_member(:object_size_less_than, Shapes::ShapeRef.new(shape: ObjectSizeLessThanBytes, location_name: "ObjectSizeLessThan"))
1493
1597
  LifecycleRuleAndOperator.struct_class = Types::LifecycleRuleAndOperator
1494
1598
 
1495
1599
  LifecycleRuleFilter.add_member(:prefix, Shapes::ShapeRef.new(shape: Prefix, location_name: "Prefix"))
1496
1600
  LifecycleRuleFilter.add_member(:tag, Shapes::ShapeRef.new(shape: Tag, location_name: "Tag"))
1601
+ LifecycleRuleFilter.add_member(:object_size_greater_than, Shapes::ShapeRef.new(shape: ObjectSizeGreaterThanBytes, location_name: "ObjectSizeGreaterThan"))
1602
+ LifecycleRuleFilter.add_member(:object_size_less_than, Shapes::ShapeRef.new(shape: ObjectSizeLessThanBytes, location_name: "ObjectSizeLessThan"))
1497
1603
  LifecycleRuleFilter.add_member(:and, Shapes::ShapeRef.new(shape: LifecycleRuleAndOperator, location_name: "And"))
1498
1604
  LifecycleRuleFilter.struct_class = Types::LifecycleRuleFilter
1499
1605
 
@@ -1505,7 +1611,7 @@ module Aws::S3
1505
1611
  ListBucketAnalyticsConfigurationsOutput.add_member(:analytics_configuration_list, Shapes::ShapeRef.new(shape: AnalyticsConfigurationList, location_name: "AnalyticsConfiguration"))
1506
1612
  ListBucketAnalyticsConfigurationsOutput.struct_class = Types::ListBucketAnalyticsConfigurationsOutput
1507
1613
 
1508
- ListBucketAnalyticsConfigurationsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1614
+ ListBucketAnalyticsConfigurationsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1509
1615
  ListBucketAnalyticsConfigurationsRequest.add_member(:continuation_token, Shapes::ShapeRef.new(shape: Token, location: "querystring", location_name: "continuation-token"))
1510
1616
  ListBucketAnalyticsConfigurationsRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1511
1617
  ListBucketAnalyticsConfigurationsRequest.struct_class = Types::ListBucketAnalyticsConfigurationsRequest
@@ -1516,7 +1622,7 @@ module Aws::S3
1516
1622
  ListBucketIntelligentTieringConfigurationsOutput.add_member(:intelligent_tiering_configuration_list, Shapes::ShapeRef.new(shape: IntelligentTieringConfigurationList, location_name: "IntelligentTieringConfiguration"))
1517
1623
  ListBucketIntelligentTieringConfigurationsOutput.struct_class = Types::ListBucketIntelligentTieringConfigurationsOutput
1518
1624
 
1519
- ListBucketIntelligentTieringConfigurationsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1625
+ ListBucketIntelligentTieringConfigurationsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1520
1626
  ListBucketIntelligentTieringConfigurationsRequest.add_member(:continuation_token, Shapes::ShapeRef.new(shape: Token, location: "querystring", location_name: "continuation-token"))
1521
1627
  ListBucketIntelligentTieringConfigurationsRequest.struct_class = Types::ListBucketIntelligentTieringConfigurationsRequest
1522
1628
 
@@ -1526,7 +1632,7 @@ module Aws::S3
1526
1632
  ListBucketInventoryConfigurationsOutput.add_member(:next_continuation_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextContinuationToken"))
1527
1633
  ListBucketInventoryConfigurationsOutput.struct_class = Types::ListBucketInventoryConfigurationsOutput
1528
1634
 
1529
- ListBucketInventoryConfigurationsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1635
+ ListBucketInventoryConfigurationsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1530
1636
  ListBucketInventoryConfigurationsRequest.add_member(:continuation_token, Shapes::ShapeRef.new(shape: Token, location: "querystring", location_name: "continuation-token"))
1531
1637
  ListBucketInventoryConfigurationsRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1532
1638
  ListBucketInventoryConfigurationsRequest.struct_class = Types::ListBucketInventoryConfigurationsRequest
@@ -1537,7 +1643,7 @@ module Aws::S3
1537
1643
  ListBucketMetricsConfigurationsOutput.add_member(:metrics_configuration_list, Shapes::ShapeRef.new(shape: MetricsConfigurationList, location_name: "MetricsConfiguration"))
1538
1644
  ListBucketMetricsConfigurationsOutput.struct_class = Types::ListBucketMetricsConfigurationsOutput
1539
1645
 
1540
- ListBucketMetricsConfigurationsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1646
+ ListBucketMetricsConfigurationsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1541
1647
  ListBucketMetricsConfigurationsRequest.add_member(:continuation_token, Shapes::ShapeRef.new(shape: Token, location: "querystring", location_name: "continuation-token"))
1542
1648
  ListBucketMetricsConfigurationsRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1543
1649
  ListBucketMetricsConfigurationsRequest.struct_class = Types::ListBucketMetricsConfigurationsRequest
@@ -1560,7 +1666,7 @@ module Aws::S3
1560
1666
  ListMultipartUploadsOutput.add_member(:encoding_type, Shapes::ShapeRef.new(shape: EncodingType, location_name: "EncodingType"))
1561
1667
  ListMultipartUploadsOutput.struct_class = Types::ListMultipartUploadsOutput
1562
1668
 
1563
- ListMultipartUploadsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1669
+ ListMultipartUploadsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1564
1670
  ListMultipartUploadsRequest.add_member(:delimiter, Shapes::ShapeRef.new(shape: Delimiter, location: "querystring", location_name: "delimiter"))
1565
1671
  ListMultipartUploadsRequest.add_member(:encoding_type, Shapes::ShapeRef.new(shape: EncodingType, location: "querystring", location_name: "encoding-type"))
1566
1672
  ListMultipartUploadsRequest.add_member(:key_marker, Shapes::ShapeRef.new(shape: KeyMarker, location: "querystring", location_name: "key-marker"))
@@ -1585,7 +1691,7 @@ module Aws::S3
1585
1691
  ListObjectVersionsOutput.add_member(:encoding_type, Shapes::ShapeRef.new(shape: EncodingType, location_name: "EncodingType"))
1586
1692
  ListObjectVersionsOutput.struct_class = Types::ListObjectVersionsOutput
1587
1693
 
1588
- ListObjectVersionsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1694
+ ListObjectVersionsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1589
1695
  ListObjectVersionsRequest.add_member(:delimiter, Shapes::ShapeRef.new(shape: Delimiter, location: "querystring", location_name: "delimiter"))
1590
1696
  ListObjectVersionsRequest.add_member(:encoding_type, Shapes::ShapeRef.new(shape: EncodingType, location: "querystring", location_name: "encoding-type"))
1591
1697
  ListObjectVersionsRequest.add_member(:key_marker, Shapes::ShapeRef.new(shape: KeyMarker, location: "querystring", location_name: "key-marker"))
@@ -1607,7 +1713,7 @@ module Aws::S3
1607
1713
  ListObjectsOutput.add_member(:encoding_type, Shapes::ShapeRef.new(shape: EncodingType, location_name: "EncodingType"))
1608
1714
  ListObjectsOutput.struct_class = Types::ListObjectsOutput
1609
1715
 
1610
- ListObjectsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1716
+ ListObjectsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1611
1717
  ListObjectsRequest.add_member(:delimiter, Shapes::ShapeRef.new(shape: Delimiter, location: "querystring", location_name: "delimiter"))
1612
1718
  ListObjectsRequest.add_member(:encoding_type, Shapes::ShapeRef.new(shape: EncodingType, location: "querystring", location_name: "encoding-type"))
1613
1719
  ListObjectsRequest.add_member(:marker, Shapes::ShapeRef.new(shape: Marker, location: "querystring", location_name: "marker"))
@@ -1631,7 +1737,7 @@ module Aws::S3
1631
1737
  ListObjectsV2Output.add_member(:start_after, Shapes::ShapeRef.new(shape: StartAfter, location_name: "StartAfter"))
1632
1738
  ListObjectsV2Output.struct_class = Types::ListObjectsV2Output
1633
1739
 
1634
- ListObjectsV2Request.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1740
+ ListObjectsV2Request.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1635
1741
  ListObjectsV2Request.add_member(:delimiter, Shapes::ShapeRef.new(shape: Delimiter, location: "querystring", location_name: "delimiter"))
1636
1742
  ListObjectsV2Request.add_member(:encoding_type, Shapes::ShapeRef.new(shape: EncodingType, location: "querystring", location_name: "encoding-type"))
1637
1743
  ListObjectsV2Request.add_member(:max_keys, Shapes::ShapeRef.new(shape: MaxKeys, location: "querystring", location_name: "max-keys"))
@@ -1657,15 +1763,19 @@ module Aws::S3
1657
1763
  ListPartsOutput.add_member(:owner, Shapes::ShapeRef.new(shape: Owner, location_name: "Owner"))
1658
1764
  ListPartsOutput.add_member(:storage_class, Shapes::ShapeRef.new(shape: StorageClass, location_name: "StorageClass"))
1659
1765
  ListPartsOutput.add_member(:request_charged, Shapes::ShapeRef.new(shape: RequestCharged, location: "header", location_name: "x-amz-request-charged"))
1766
+ ListPartsOutput.add_member(:checksum_algorithm, Shapes::ShapeRef.new(shape: ChecksumAlgorithm, location_name: "ChecksumAlgorithm"))
1660
1767
  ListPartsOutput.struct_class = Types::ListPartsOutput
1661
1768
 
1662
- ListPartsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1769
+ ListPartsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1663
1770
  ListPartsRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
1664
1771
  ListPartsRequest.add_member(:max_parts, Shapes::ShapeRef.new(shape: MaxParts, location: "querystring", location_name: "max-parts"))
1665
1772
  ListPartsRequest.add_member(:part_number_marker, Shapes::ShapeRef.new(shape: PartNumberMarker, location: "querystring", location_name: "part-number-marker"))
1666
1773
  ListPartsRequest.add_member(:upload_id, Shapes::ShapeRef.new(shape: MultipartUploadId, required: true, location: "querystring", location_name: "uploadId"))
1667
1774
  ListPartsRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
1668
1775
  ListPartsRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1776
+ ListPartsRequest.add_member(:sse_customer_algorithm, Shapes::ShapeRef.new(shape: SSECustomerAlgorithm, location: "header", location_name: "x-amz-server-side-encryption-customer-algorithm"))
1777
+ ListPartsRequest.add_member(:sse_customer_key, Shapes::ShapeRef.new(shape: SSECustomerKey, location: "header", location_name: "x-amz-server-side-encryption-customer-key"))
1778
+ ListPartsRequest.add_member(:sse_customer_key_md5, Shapes::ShapeRef.new(shape: SSECustomerKeyMD5, location: "header", location_name: "x-amz-server-side-encryption-customer-key-MD5"))
1669
1779
  ListPartsRequest.struct_class = Types::ListPartsRequest
1670
1780
 
1671
1781
  LoggingEnabled.add_member(:target_bucket, Shapes::ShapeRef.new(shape: TargetBucket, required: true, location_name: "TargetBucket"))
@@ -1686,6 +1796,7 @@ module Aws::S3
1686
1796
 
1687
1797
  MetricsAndOperator.add_member(:prefix, Shapes::ShapeRef.new(shape: Prefix, location_name: "Prefix"))
1688
1798
  MetricsAndOperator.add_member(:tags, Shapes::ShapeRef.new(shape: TagSet, location_name: "Tag", metadata: {"flattened"=>true}))
1799
+ MetricsAndOperator.add_member(:access_point_arn, Shapes::ShapeRef.new(shape: AccessPointArn, location_name: "AccessPointArn"))
1689
1800
  MetricsAndOperator.struct_class = Types::MetricsAndOperator
1690
1801
 
1691
1802
  MetricsConfiguration.add_member(:id, Shapes::ShapeRef.new(shape: MetricsId, required: true, location_name: "Id"))
@@ -1696,6 +1807,7 @@ module Aws::S3
1696
1807
 
1697
1808
  MetricsFilter.add_member(:prefix, Shapes::ShapeRef.new(shape: Prefix, location_name: "Prefix"))
1698
1809
  MetricsFilter.add_member(:tag, Shapes::ShapeRef.new(shape: Tag, location_name: "Tag"))
1810
+ MetricsFilter.add_member(:access_point_arn, Shapes::ShapeRef.new(shape: AccessPointArn, location_name: "AccessPointArn"))
1699
1811
  MetricsFilter.add_member(:and, Shapes::ShapeRef.new(shape: MetricsAndOperator, location_name: "And"))
1700
1812
  MetricsFilter.struct_class = Types::MetricsFilter
1701
1813
 
@@ -1705,6 +1817,7 @@ module Aws::S3
1705
1817
  MultipartUpload.add_member(:storage_class, Shapes::ShapeRef.new(shape: StorageClass, location_name: "StorageClass"))
1706
1818
  MultipartUpload.add_member(:owner, Shapes::ShapeRef.new(shape: Owner, location_name: "Owner"))
1707
1819
  MultipartUpload.add_member(:initiator, Shapes::ShapeRef.new(shape: Initiator, location_name: "Initiator"))
1820
+ MultipartUpload.add_member(:checksum_algorithm, Shapes::ShapeRef.new(shape: ChecksumAlgorithm, location_name: "ChecksumAlgorithm"))
1708
1821
  MultipartUpload.struct_class = Types::MultipartUpload
1709
1822
 
1710
1823
  MultipartUploadList.member = Shapes::ShapeRef.new(shape: MultipartUpload)
@@ -1716,10 +1829,12 @@ module Aws::S3
1716
1829
  NoSuchUpload.struct_class = Types::NoSuchUpload
1717
1830
 
1718
1831
  NoncurrentVersionExpiration.add_member(:noncurrent_days, Shapes::ShapeRef.new(shape: Days, location_name: "NoncurrentDays"))
1832
+ NoncurrentVersionExpiration.add_member(:newer_noncurrent_versions, Shapes::ShapeRef.new(shape: VersionCount, location_name: "NewerNoncurrentVersions"))
1719
1833
  NoncurrentVersionExpiration.struct_class = Types::NoncurrentVersionExpiration
1720
1834
 
1721
1835
  NoncurrentVersionTransition.add_member(:noncurrent_days, Shapes::ShapeRef.new(shape: Days, location_name: "NoncurrentDays"))
1722
1836
  NoncurrentVersionTransition.add_member(:storage_class, Shapes::ShapeRef.new(shape: TransitionStorageClass, location_name: "StorageClass"))
1837
+ NoncurrentVersionTransition.add_member(:newer_noncurrent_versions, Shapes::ShapeRef.new(shape: VersionCount, location_name: "NewerNoncurrentVersions"))
1723
1838
  NoncurrentVersionTransition.struct_class = Types::NoncurrentVersionTransition
1724
1839
 
1725
1840
  NoncurrentVersionTransitionList.member = Shapes::ShapeRef.new(shape: NoncurrentVersionTransition)
@@ -1727,6 +1842,7 @@ module Aws::S3
1727
1842
  NotificationConfiguration.add_member(:topic_configurations, Shapes::ShapeRef.new(shape: TopicConfigurationList, location_name: "TopicConfiguration"))
1728
1843
  NotificationConfiguration.add_member(:queue_configurations, Shapes::ShapeRef.new(shape: QueueConfigurationList, location_name: "QueueConfiguration"))
1729
1844
  NotificationConfiguration.add_member(:lambda_function_configurations, Shapes::ShapeRef.new(shape: LambdaFunctionConfigurationList, location_name: "CloudFunctionConfiguration"))
1845
+ NotificationConfiguration.add_member(:event_bridge_configuration, Shapes::ShapeRef.new(shape: EventBridgeConfiguration, location_name: "EventBridgeConfiguration"))
1730
1846
  NotificationConfiguration.struct_class = Types::NotificationConfiguration
1731
1847
 
1732
1848
  NotificationConfigurationDeprecated.add_member(:topic_configuration, Shapes::ShapeRef.new(shape: TopicConfigurationDeprecated, location_name: "TopicConfiguration"))
@@ -1740,6 +1856,7 @@ module Aws::S3
1740
1856
  Object.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, location_name: "Key"))
1741
1857
  Object.add_member(:last_modified, Shapes::ShapeRef.new(shape: LastModified, location_name: "LastModified"))
1742
1858
  Object.add_member(:etag, Shapes::ShapeRef.new(shape: ETag, location_name: "ETag"))
1859
+ Object.add_member(:checksum_algorithm, Shapes::ShapeRef.new(shape: ChecksumAlgorithmList, location_name: "ChecksumAlgorithm"))
1743
1860
  Object.add_member(:size, Shapes::ShapeRef.new(shape: Size, location_name: "Size"))
1744
1861
  Object.add_member(:storage_class, Shapes::ShapeRef.new(shape: ObjectStorageClass, location_name: "StorageClass"))
1745
1862
  Object.add_member(:owner, Shapes::ShapeRef.new(shape: Owner, location_name: "Owner"))
@@ -1747,6 +1864,8 @@ module Aws::S3
1747
1864
 
1748
1865
  ObjectAlreadyInActiveTierError.struct_class = Types::ObjectAlreadyInActiveTierError
1749
1866
 
1867
+ ObjectAttributesList.member = Shapes::ShapeRef.new(shape: ObjectAttributes)
1868
+
1750
1869
  ObjectIdentifier.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location_name: "Key"))
1751
1870
  ObjectIdentifier.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location_name: "VersionId"))
1752
1871
  ObjectIdentifier.struct_class = Types::ObjectIdentifier
@@ -1771,7 +1890,16 @@ module Aws::S3
1771
1890
 
1772
1891
  ObjectNotInActiveTierError.struct_class = Types::ObjectNotInActiveTierError
1773
1892
 
1893
+ ObjectPart.add_member(:part_number, Shapes::ShapeRef.new(shape: PartNumber, location_name: "PartNumber"))
1894
+ ObjectPart.add_member(:size, Shapes::ShapeRef.new(shape: Size, location_name: "Size"))
1895
+ ObjectPart.add_member(:checksum_crc32, Shapes::ShapeRef.new(shape: ChecksumCRC32, location_name: "ChecksumCRC32"))
1896
+ ObjectPart.add_member(:checksum_crc32c, Shapes::ShapeRef.new(shape: ChecksumCRC32C, location_name: "ChecksumCRC32C"))
1897
+ ObjectPart.add_member(:checksum_sha1, Shapes::ShapeRef.new(shape: ChecksumSHA1, location_name: "ChecksumSHA1"))
1898
+ ObjectPart.add_member(:checksum_sha256, Shapes::ShapeRef.new(shape: ChecksumSHA256, location_name: "ChecksumSHA256"))
1899
+ ObjectPart.struct_class = Types::ObjectPart
1900
+
1774
1901
  ObjectVersion.add_member(:etag, Shapes::ShapeRef.new(shape: ETag, location_name: "ETag"))
1902
+ ObjectVersion.add_member(:checksum_algorithm, Shapes::ShapeRef.new(shape: ChecksumAlgorithmList, location_name: "ChecksumAlgorithm"))
1775
1903
  ObjectVersion.add_member(:size, Shapes::ShapeRef.new(shape: Size, location_name: "Size"))
1776
1904
  ObjectVersion.add_member(:storage_class, Shapes::ShapeRef.new(shape: ObjectVersionStorageClass, location_name: "StorageClass"))
1777
1905
  ObjectVersion.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, location_name: "Key"))
@@ -1808,10 +1936,16 @@ module Aws::S3
1808
1936
  Part.add_member(:last_modified, Shapes::ShapeRef.new(shape: LastModified, location_name: "LastModified"))
1809
1937
  Part.add_member(:etag, Shapes::ShapeRef.new(shape: ETag, location_name: "ETag"))
1810
1938
  Part.add_member(:size, Shapes::ShapeRef.new(shape: Size, location_name: "Size"))
1939
+ Part.add_member(:checksum_crc32, Shapes::ShapeRef.new(shape: ChecksumCRC32, location_name: "ChecksumCRC32"))
1940
+ Part.add_member(:checksum_crc32c, Shapes::ShapeRef.new(shape: ChecksumCRC32C, location_name: "ChecksumCRC32C"))
1941
+ Part.add_member(:checksum_sha1, Shapes::ShapeRef.new(shape: ChecksumSHA1, location_name: "ChecksumSHA1"))
1942
+ Part.add_member(:checksum_sha256, Shapes::ShapeRef.new(shape: ChecksumSHA256, location_name: "ChecksumSHA256"))
1811
1943
  Part.struct_class = Types::Part
1812
1944
 
1813
1945
  Parts.member = Shapes::ShapeRef.new(shape: Part)
1814
1946
 
1947
+ PartsList.member = Shapes::ShapeRef.new(shape: ObjectPart)
1948
+
1815
1949
  PolicyStatus.add_member(:is_public, Shapes::ShapeRef.new(shape: IsPublic, location_name: "IsPublic"))
1816
1950
  PolicyStatus.struct_class = Types::PolicyStatus
1817
1951
 
@@ -1829,17 +1963,19 @@ module Aws::S3
1829
1963
  PublicAccessBlockConfiguration.add_member(:restrict_public_buckets, Shapes::ShapeRef.new(shape: Setting, location_name: "RestrictPublicBuckets"))
1830
1964
  PublicAccessBlockConfiguration.struct_class = Types::PublicAccessBlockConfiguration
1831
1965
 
1832
- PutBucketAccelerateConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1966
+ PutBucketAccelerateConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1833
1967
  PutBucketAccelerateConfigurationRequest.add_member(:accelerate_configuration, Shapes::ShapeRef.new(shape: AccelerateConfiguration, required: true, location_name: "AccelerateConfiguration", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1834
1968
  PutBucketAccelerateConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1969
+ PutBucketAccelerateConfigurationRequest.add_member(:checksum_algorithm, Shapes::ShapeRef.new(shape: ChecksumAlgorithm, location: "header", location_name: "x-amz-sdk-checksum-algorithm"))
1835
1970
  PutBucketAccelerateConfigurationRequest.struct_class = Types::PutBucketAccelerateConfigurationRequest
1836
1971
  PutBucketAccelerateConfigurationRequest[:payload] = :accelerate_configuration
1837
1972
  PutBucketAccelerateConfigurationRequest[:payload_member] = PutBucketAccelerateConfigurationRequest.member(:accelerate_configuration)
1838
1973
 
1839
1974
  PutBucketAclRequest.add_member(:acl, Shapes::ShapeRef.new(shape: BucketCannedACL, location: "header", location_name: "x-amz-acl"))
1840
1975
  PutBucketAclRequest.add_member(:access_control_policy, Shapes::ShapeRef.new(shape: AccessControlPolicy, location_name: "AccessControlPolicy", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1841
- PutBucketAclRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1976
+ PutBucketAclRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1842
1977
  PutBucketAclRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
1978
+ PutBucketAclRequest.add_member(:checksum_algorithm, Shapes::ShapeRef.new(shape: ChecksumAlgorithm, location: "header", location_name: "x-amz-sdk-checksum-algorithm"))
1843
1979
  PutBucketAclRequest.add_member(:grant_full_control, Shapes::ShapeRef.new(shape: GrantFullControl, location: "header", location_name: "x-amz-grant-full-control"))
1844
1980
  PutBucketAclRequest.add_member(:grant_read, Shapes::ShapeRef.new(shape: GrantRead, location: "header", location_name: "x-amz-grant-read"))
1845
1981
  PutBucketAclRequest.add_member(:grant_read_acp, Shapes::ShapeRef.new(shape: GrantReadACP, location: "header", location_name: "x-amz-grant-read-acp"))
@@ -1850,7 +1986,7 @@ module Aws::S3
1850
1986
  PutBucketAclRequest[:payload] = :access_control_policy
1851
1987
  PutBucketAclRequest[:payload_member] = PutBucketAclRequest.member(:access_control_policy)
1852
1988
 
1853
- PutBucketAnalyticsConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1989
+ PutBucketAnalyticsConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1854
1990
  PutBucketAnalyticsConfigurationRequest.add_member(:id, Shapes::ShapeRef.new(shape: AnalyticsId, required: true, location: "querystring", location_name: "id"))
1855
1991
  PutBucketAnalyticsConfigurationRequest.add_member(:analytics_configuration, Shapes::ShapeRef.new(shape: AnalyticsConfiguration, required: true, location_name: "AnalyticsConfiguration", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1856
1992
  PutBucketAnalyticsConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
@@ -1858,30 +1994,32 @@ module Aws::S3
1858
1994
  PutBucketAnalyticsConfigurationRequest[:payload] = :analytics_configuration
1859
1995
  PutBucketAnalyticsConfigurationRequest[:payload_member] = PutBucketAnalyticsConfigurationRequest.member(:analytics_configuration)
1860
1996
 
1861
- PutBucketCorsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1997
+ PutBucketCorsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1862
1998
  PutBucketCorsRequest.add_member(:cors_configuration, Shapes::ShapeRef.new(shape: CORSConfiguration, required: true, location_name: "CORSConfiguration", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1863
1999
  PutBucketCorsRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
2000
+ PutBucketCorsRequest.add_member(:checksum_algorithm, Shapes::ShapeRef.new(shape: ChecksumAlgorithm, location: "header", location_name: "x-amz-sdk-checksum-algorithm"))
1864
2001
  PutBucketCorsRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1865
2002
  PutBucketCorsRequest.struct_class = Types::PutBucketCorsRequest
1866
2003
  PutBucketCorsRequest[:payload] = :cors_configuration
1867
2004
  PutBucketCorsRequest[:payload_member] = PutBucketCorsRequest.member(:cors_configuration)
1868
2005
 
1869
- PutBucketEncryptionRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
2006
+ PutBucketEncryptionRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1870
2007
  PutBucketEncryptionRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
2008
+ PutBucketEncryptionRequest.add_member(:checksum_algorithm, Shapes::ShapeRef.new(shape: ChecksumAlgorithm, location: "header", location_name: "x-amz-sdk-checksum-algorithm"))
1871
2009
  PutBucketEncryptionRequest.add_member(:server_side_encryption_configuration, Shapes::ShapeRef.new(shape: ServerSideEncryptionConfiguration, required: true, location_name: "ServerSideEncryptionConfiguration", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1872
2010
  PutBucketEncryptionRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1873
2011
  PutBucketEncryptionRequest.struct_class = Types::PutBucketEncryptionRequest
1874
2012
  PutBucketEncryptionRequest[:payload] = :server_side_encryption_configuration
1875
2013
  PutBucketEncryptionRequest[:payload_member] = PutBucketEncryptionRequest.member(:server_side_encryption_configuration)
1876
2014
 
1877
- PutBucketIntelligentTieringConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
2015
+ PutBucketIntelligentTieringConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1878
2016
  PutBucketIntelligentTieringConfigurationRequest.add_member(:id, Shapes::ShapeRef.new(shape: IntelligentTieringId, required: true, location: "querystring", location_name: "id"))
1879
2017
  PutBucketIntelligentTieringConfigurationRequest.add_member(:intelligent_tiering_configuration, Shapes::ShapeRef.new(shape: IntelligentTieringConfiguration, required: true, location_name: "IntelligentTieringConfiguration", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1880
2018
  PutBucketIntelligentTieringConfigurationRequest.struct_class = Types::PutBucketIntelligentTieringConfigurationRequest
1881
2019
  PutBucketIntelligentTieringConfigurationRequest[:payload] = :intelligent_tiering_configuration
1882
2020
  PutBucketIntelligentTieringConfigurationRequest[:payload_member] = PutBucketIntelligentTieringConfigurationRequest.member(:intelligent_tiering_configuration)
1883
2021
 
1884
- PutBucketInventoryConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
2022
+ PutBucketInventoryConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1885
2023
  PutBucketInventoryConfigurationRequest.add_member(:id, Shapes::ShapeRef.new(shape: InventoryId, required: true, location: "querystring", location_name: "id"))
1886
2024
  PutBucketInventoryConfigurationRequest.add_member(:inventory_configuration, Shapes::ShapeRef.new(shape: InventoryConfiguration, required: true, location_name: "InventoryConfiguration", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1887
2025
  PutBucketInventoryConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
@@ -1889,30 +2027,33 @@ module Aws::S3
1889
2027
  PutBucketInventoryConfigurationRequest[:payload] = :inventory_configuration
1890
2028
  PutBucketInventoryConfigurationRequest[:payload_member] = PutBucketInventoryConfigurationRequest.member(:inventory_configuration)
1891
2029
 
1892
- PutBucketLifecycleConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
2030
+ PutBucketLifecycleConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
2031
+ PutBucketLifecycleConfigurationRequest.add_member(:checksum_algorithm, Shapes::ShapeRef.new(shape: ChecksumAlgorithm, location: "header", location_name: "x-amz-sdk-checksum-algorithm"))
1893
2032
  PutBucketLifecycleConfigurationRequest.add_member(:lifecycle_configuration, Shapes::ShapeRef.new(shape: BucketLifecycleConfiguration, location_name: "LifecycleConfiguration", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1894
2033
  PutBucketLifecycleConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1895
2034
  PutBucketLifecycleConfigurationRequest.struct_class = Types::PutBucketLifecycleConfigurationRequest
1896
2035
  PutBucketLifecycleConfigurationRequest[:payload] = :lifecycle_configuration
1897
2036
  PutBucketLifecycleConfigurationRequest[:payload_member] = PutBucketLifecycleConfigurationRequest.member(:lifecycle_configuration)
1898
2037
 
1899
- PutBucketLifecycleRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
2038
+ PutBucketLifecycleRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1900
2039
  PutBucketLifecycleRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
2040
+ PutBucketLifecycleRequest.add_member(:checksum_algorithm, Shapes::ShapeRef.new(shape: ChecksumAlgorithm, location: "header", location_name: "x-amz-sdk-checksum-algorithm"))
1901
2041
  PutBucketLifecycleRequest.add_member(:lifecycle_configuration, Shapes::ShapeRef.new(shape: LifecycleConfiguration, location_name: "LifecycleConfiguration", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1902
2042
  PutBucketLifecycleRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1903
2043
  PutBucketLifecycleRequest.struct_class = Types::PutBucketLifecycleRequest
1904
2044
  PutBucketLifecycleRequest[:payload] = :lifecycle_configuration
1905
2045
  PutBucketLifecycleRequest[:payload_member] = PutBucketLifecycleRequest.member(:lifecycle_configuration)
1906
2046
 
1907
- PutBucketLoggingRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
2047
+ PutBucketLoggingRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1908
2048
  PutBucketLoggingRequest.add_member(:bucket_logging_status, Shapes::ShapeRef.new(shape: BucketLoggingStatus, required: true, location_name: "BucketLoggingStatus", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1909
2049
  PutBucketLoggingRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
2050
+ PutBucketLoggingRequest.add_member(:checksum_algorithm, Shapes::ShapeRef.new(shape: ChecksumAlgorithm, location: "header", location_name: "x-amz-sdk-checksum-algorithm"))
1910
2051
  PutBucketLoggingRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1911
2052
  PutBucketLoggingRequest.struct_class = Types::PutBucketLoggingRequest
1912
2053
  PutBucketLoggingRequest[:payload] = :bucket_logging_status
1913
2054
  PutBucketLoggingRequest[:payload_member] = PutBucketLoggingRequest.member(:bucket_logging_status)
1914
2055
 
1915
- PutBucketMetricsConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
2056
+ PutBucketMetricsConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1916
2057
  PutBucketMetricsConfigurationRequest.add_member(:id, Shapes::ShapeRef.new(shape: MetricsId, required: true, location: "querystring", location_name: "id"))
1917
2058
  PutBucketMetricsConfigurationRequest.add_member(:metrics_configuration, Shapes::ShapeRef.new(shape: MetricsConfiguration, required: true, location_name: "MetricsConfiguration", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1918
2059
  PutBucketMetricsConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
@@ -1920,22 +2061,24 @@ module Aws::S3
1920
2061
  PutBucketMetricsConfigurationRequest[:payload] = :metrics_configuration
1921
2062
  PutBucketMetricsConfigurationRequest[:payload_member] = PutBucketMetricsConfigurationRequest.member(:metrics_configuration)
1922
2063
 
1923
- PutBucketNotificationConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
2064
+ PutBucketNotificationConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1924
2065
  PutBucketNotificationConfigurationRequest.add_member(:notification_configuration, Shapes::ShapeRef.new(shape: NotificationConfiguration, required: true, location_name: "NotificationConfiguration", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1925
2066
  PutBucketNotificationConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
2067
+ PutBucketNotificationConfigurationRequest.add_member(:skip_destination_validation, Shapes::ShapeRef.new(shape: SkipValidation, location: "header", location_name: "x-amz-skip-destination-validation"))
1926
2068
  PutBucketNotificationConfigurationRequest.struct_class = Types::PutBucketNotificationConfigurationRequest
1927
2069
  PutBucketNotificationConfigurationRequest[:payload] = :notification_configuration
1928
2070
  PutBucketNotificationConfigurationRequest[:payload_member] = PutBucketNotificationConfigurationRequest.member(:notification_configuration)
1929
2071
 
1930
- PutBucketNotificationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
2072
+ PutBucketNotificationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1931
2073
  PutBucketNotificationRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
2074
+ PutBucketNotificationRequest.add_member(:checksum_algorithm, Shapes::ShapeRef.new(shape: ChecksumAlgorithm, location: "header", location_name: "x-amz-sdk-checksum-algorithm"))
1932
2075
  PutBucketNotificationRequest.add_member(:notification_configuration, Shapes::ShapeRef.new(shape: NotificationConfigurationDeprecated, required: true, location_name: "NotificationConfiguration", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1933
2076
  PutBucketNotificationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1934
2077
  PutBucketNotificationRequest.struct_class = Types::PutBucketNotificationRequest
1935
2078
  PutBucketNotificationRequest[:payload] = :notification_configuration
1936
2079
  PutBucketNotificationRequest[:payload_member] = PutBucketNotificationRequest.member(:notification_configuration)
1937
2080
 
1938
- PutBucketOwnershipControlsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
2081
+ PutBucketOwnershipControlsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1939
2082
  PutBucketOwnershipControlsRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
1940
2083
  PutBucketOwnershipControlsRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1941
2084
  PutBucketOwnershipControlsRequest.add_member(:ownership_controls, Shapes::ShapeRef.new(shape: OwnershipControls, required: true, location_name: "OwnershipControls", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
@@ -1943,8 +2086,9 @@ module Aws::S3
1943
2086
  PutBucketOwnershipControlsRequest[:payload] = :ownership_controls
1944
2087
  PutBucketOwnershipControlsRequest[:payload_member] = PutBucketOwnershipControlsRequest.member(:ownership_controls)
1945
2088
 
1946
- PutBucketPolicyRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
2089
+ PutBucketPolicyRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1947
2090
  PutBucketPolicyRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
2091
+ PutBucketPolicyRequest.add_member(:checksum_algorithm, Shapes::ShapeRef.new(shape: ChecksumAlgorithm, location: "header", location_name: "x-amz-sdk-checksum-algorithm"))
1948
2092
  PutBucketPolicyRequest.add_member(:confirm_remove_self_bucket_access, Shapes::ShapeRef.new(shape: ConfirmRemoveSelfBucketAccess, location: "header", location_name: "x-amz-confirm-remove-self-bucket-access"))
1949
2093
  PutBucketPolicyRequest.add_member(:policy, Shapes::ShapeRef.new(shape: Policy, required: true, location_name: "Policy"))
1950
2094
  PutBucketPolicyRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
@@ -1952,8 +2096,9 @@ module Aws::S3
1952
2096
  PutBucketPolicyRequest[:payload] = :policy
1953
2097
  PutBucketPolicyRequest[:payload_member] = PutBucketPolicyRequest.member(:policy)
1954
2098
 
1955
- PutBucketReplicationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
2099
+ PutBucketReplicationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1956
2100
  PutBucketReplicationRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
2101
+ PutBucketReplicationRequest.add_member(:checksum_algorithm, Shapes::ShapeRef.new(shape: ChecksumAlgorithm, location: "header", location_name: "x-amz-sdk-checksum-algorithm"))
1957
2102
  PutBucketReplicationRequest.add_member(:replication_configuration, Shapes::ShapeRef.new(shape: ReplicationConfiguration, required: true, location_name: "ReplicationConfiguration", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1958
2103
  PutBucketReplicationRequest.add_member(:token, Shapes::ShapeRef.new(shape: ObjectLockToken, location: "header", location_name: "x-amz-bucket-object-lock-token"))
1959
2104
  PutBucketReplicationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
@@ -1961,24 +2106,27 @@ module Aws::S3
1961
2106
  PutBucketReplicationRequest[:payload] = :replication_configuration
1962
2107
  PutBucketReplicationRequest[:payload_member] = PutBucketReplicationRequest.member(:replication_configuration)
1963
2108
 
1964
- PutBucketRequestPaymentRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
2109
+ PutBucketRequestPaymentRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1965
2110
  PutBucketRequestPaymentRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
2111
+ PutBucketRequestPaymentRequest.add_member(:checksum_algorithm, Shapes::ShapeRef.new(shape: ChecksumAlgorithm, location: "header", location_name: "x-amz-sdk-checksum-algorithm"))
1966
2112
  PutBucketRequestPaymentRequest.add_member(:request_payment_configuration, Shapes::ShapeRef.new(shape: RequestPaymentConfiguration, required: true, location_name: "RequestPaymentConfiguration", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1967
2113
  PutBucketRequestPaymentRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1968
2114
  PutBucketRequestPaymentRequest.struct_class = Types::PutBucketRequestPaymentRequest
1969
2115
  PutBucketRequestPaymentRequest[:payload] = :request_payment_configuration
1970
2116
  PutBucketRequestPaymentRequest[:payload_member] = PutBucketRequestPaymentRequest.member(:request_payment_configuration)
1971
2117
 
1972
- PutBucketTaggingRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
2118
+ PutBucketTaggingRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1973
2119
  PutBucketTaggingRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
2120
+ PutBucketTaggingRequest.add_member(:checksum_algorithm, Shapes::ShapeRef.new(shape: ChecksumAlgorithm, location: "header", location_name: "x-amz-sdk-checksum-algorithm"))
1974
2121
  PutBucketTaggingRequest.add_member(:tagging, Shapes::ShapeRef.new(shape: Tagging, required: true, location_name: "Tagging", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1975
2122
  PutBucketTaggingRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1976
2123
  PutBucketTaggingRequest.struct_class = Types::PutBucketTaggingRequest
1977
2124
  PutBucketTaggingRequest[:payload] = :tagging
1978
2125
  PutBucketTaggingRequest[:payload_member] = PutBucketTaggingRequest.member(:tagging)
1979
2126
 
1980
- PutBucketVersioningRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
2127
+ PutBucketVersioningRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1981
2128
  PutBucketVersioningRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
2129
+ PutBucketVersioningRequest.add_member(:checksum_algorithm, Shapes::ShapeRef.new(shape: ChecksumAlgorithm, location: "header", location_name: "x-amz-sdk-checksum-algorithm"))
1982
2130
  PutBucketVersioningRequest.add_member(:mfa, Shapes::ShapeRef.new(shape: MFA, location: "header", location_name: "x-amz-mfa"))
1983
2131
  PutBucketVersioningRequest.add_member(:versioning_configuration, Shapes::ShapeRef.new(shape: VersioningConfiguration, required: true, location_name: "VersioningConfiguration", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1984
2132
  PutBucketVersioningRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
@@ -1986,8 +2134,9 @@ module Aws::S3
1986
2134
  PutBucketVersioningRequest[:payload] = :versioning_configuration
1987
2135
  PutBucketVersioningRequest[:payload_member] = PutBucketVersioningRequest.member(:versioning_configuration)
1988
2136
 
1989
- PutBucketWebsiteRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
2137
+ PutBucketWebsiteRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
1990
2138
  PutBucketWebsiteRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
2139
+ PutBucketWebsiteRequest.add_member(:checksum_algorithm, Shapes::ShapeRef.new(shape: ChecksumAlgorithm, location: "header", location_name: "x-amz-sdk-checksum-algorithm"))
1991
2140
  PutBucketWebsiteRequest.add_member(:website_configuration, Shapes::ShapeRef.new(shape: WebsiteConfiguration, required: true, location_name: "WebsiteConfiguration", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1992
2141
  PutBucketWebsiteRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1993
2142
  PutBucketWebsiteRequest.struct_class = Types::PutBucketWebsiteRequest
@@ -1999,8 +2148,9 @@ module Aws::S3
1999
2148
 
2000
2149
  PutObjectAclRequest.add_member(:acl, Shapes::ShapeRef.new(shape: ObjectCannedACL, location: "header", location_name: "x-amz-acl"))
2001
2150
  PutObjectAclRequest.add_member(:access_control_policy, Shapes::ShapeRef.new(shape: AccessControlPolicy, location_name: "AccessControlPolicy", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
2002
- PutObjectAclRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
2151
+ PutObjectAclRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
2003
2152
  PutObjectAclRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
2153
+ PutObjectAclRequest.add_member(:checksum_algorithm, Shapes::ShapeRef.new(shape: ChecksumAlgorithm, location: "header", location_name: "x-amz-sdk-checksum-algorithm"))
2004
2154
  PutObjectAclRequest.add_member(:grant_full_control, Shapes::ShapeRef.new(shape: GrantFullControl, location: "header", location_name: "x-amz-grant-full-control"))
2005
2155
  PutObjectAclRequest.add_member(:grant_read, Shapes::ShapeRef.new(shape: GrantRead, location: "header", location_name: "x-amz-grant-read"))
2006
2156
  PutObjectAclRequest.add_member(:grant_read_acp, Shapes::ShapeRef.new(shape: GrantReadACP, location: "header", location_name: "x-amz-grant-read-acp"))
@@ -2017,12 +2167,13 @@ module Aws::S3
2017
2167
  PutObjectLegalHoldOutput.add_member(:request_charged, Shapes::ShapeRef.new(shape: RequestCharged, location: "header", location_name: "x-amz-request-charged"))
2018
2168
  PutObjectLegalHoldOutput.struct_class = Types::PutObjectLegalHoldOutput
2019
2169
 
2020
- PutObjectLegalHoldRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
2170
+ PutObjectLegalHoldRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
2021
2171
  PutObjectLegalHoldRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
2022
2172
  PutObjectLegalHoldRequest.add_member(:legal_hold, Shapes::ShapeRef.new(shape: ObjectLockLegalHold, location_name: "LegalHold", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
2023
2173
  PutObjectLegalHoldRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
2024
2174
  PutObjectLegalHoldRequest.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "querystring", location_name: "versionId"))
2025
2175
  PutObjectLegalHoldRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
2176
+ PutObjectLegalHoldRequest.add_member(:checksum_algorithm, Shapes::ShapeRef.new(shape: ChecksumAlgorithm, location: "header", location_name: "x-amz-sdk-checksum-algorithm"))
2026
2177
  PutObjectLegalHoldRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
2027
2178
  PutObjectLegalHoldRequest.struct_class = Types::PutObjectLegalHoldRequest
2028
2179
  PutObjectLegalHoldRequest[:payload] = :legal_hold
@@ -2031,11 +2182,12 @@ module Aws::S3
2031
2182
  PutObjectLockConfigurationOutput.add_member(:request_charged, Shapes::ShapeRef.new(shape: RequestCharged, location: "header", location_name: "x-amz-request-charged"))
2032
2183
  PutObjectLockConfigurationOutput.struct_class = Types::PutObjectLockConfigurationOutput
2033
2184
 
2034
- PutObjectLockConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
2185
+ PutObjectLockConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
2035
2186
  PutObjectLockConfigurationRequest.add_member(:object_lock_configuration, Shapes::ShapeRef.new(shape: ObjectLockConfiguration, location_name: "ObjectLockConfiguration", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
2036
2187
  PutObjectLockConfigurationRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
2037
2188
  PutObjectLockConfigurationRequest.add_member(:token, Shapes::ShapeRef.new(shape: ObjectLockToken, location: "header", location_name: "x-amz-bucket-object-lock-token"))
2038
2189
  PutObjectLockConfigurationRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
2190
+ PutObjectLockConfigurationRequest.add_member(:checksum_algorithm, Shapes::ShapeRef.new(shape: ChecksumAlgorithm, location: "header", location_name: "x-amz-sdk-checksum-algorithm"))
2039
2191
  PutObjectLockConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
2040
2192
  PutObjectLockConfigurationRequest.struct_class = Types::PutObjectLockConfigurationRequest
2041
2193
  PutObjectLockConfigurationRequest[:payload] = :object_lock_configuration
@@ -2043,6 +2195,10 @@ module Aws::S3
2043
2195
 
2044
2196
  PutObjectOutput.add_member(:expiration, Shapes::ShapeRef.new(shape: Expiration, location: "header", location_name: "x-amz-expiration"))
2045
2197
  PutObjectOutput.add_member(:etag, Shapes::ShapeRef.new(shape: ETag, location: "header", location_name: "ETag"))
2198
+ PutObjectOutput.add_member(:checksum_crc32, Shapes::ShapeRef.new(shape: ChecksumCRC32, location: "header", location_name: "x-amz-checksum-crc32"))
2199
+ PutObjectOutput.add_member(:checksum_crc32c, Shapes::ShapeRef.new(shape: ChecksumCRC32C, location: "header", location_name: "x-amz-checksum-crc32c"))
2200
+ PutObjectOutput.add_member(:checksum_sha1, Shapes::ShapeRef.new(shape: ChecksumSHA1, location: "header", location_name: "x-amz-checksum-sha1"))
2201
+ PutObjectOutput.add_member(:checksum_sha256, Shapes::ShapeRef.new(shape: ChecksumSHA256, location: "header", location_name: "x-amz-checksum-sha256"))
2046
2202
  PutObjectOutput.add_member(:server_side_encryption, Shapes::ShapeRef.new(shape: ServerSideEncryption, location: "header", location_name: "x-amz-server-side-encryption"))
2047
2203
  PutObjectOutput.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "header", location_name: "x-amz-version-id"))
2048
2204
  PutObjectOutput.add_member(:sse_customer_algorithm, Shapes::ShapeRef.new(shape: SSECustomerAlgorithm, location: "header", location_name: "x-amz-server-side-encryption-customer-algorithm"))
@@ -2055,7 +2211,7 @@ module Aws::S3
2055
2211
 
2056
2212
  PutObjectRequest.add_member(:acl, Shapes::ShapeRef.new(shape: ObjectCannedACL, location: "header", location_name: "x-amz-acl"))
2057
2213
  PutObjectRequest.add_member(:body, Shapes::ShapeRef.new(shape: Body, location_name: "Body", metadata: {"streaming"=>true}))
2058
- PutObjectRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
2214
+ PutObjectRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
2059
2215
  PutObjectRequest.add_member(:cache_control, Shapes::ShapeRef.new(shape: CacheControl, location: "header", location_name: "Cache-Control"))
2060
2216
  PutObjectRequest.add_member(:content_disposition, Shapes::ShapeRef.new(shape: ContentDisposition, location: "header", location_name: "Content-Disposition"))
2061
2217
  PutObjectRequest.add_member(:content_encoding, Shapes::ShapeRef.new(shape: ContentEncoding, location: "header", location_name: "Content-Encoding"))
@@ -2063,6 +2219,11 @@ module Aws::S3
2063
2219
  PutObjectRequest.add_member(:content_length, Shapes::ShapeRef.new(shape: ContentLength, location: "header", location_name: "Content-Length"))
2064
2220
  PutObjectRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
2065
2221
  PutObjectRequest.add_member(:content_type, Shapes::ShapeRef.new(shape: ContentType, location: "header", location_name: "Content-Type"))
2222
+ PutObjectRequest.add_member(:checksum_algorithm, Shapes::ShapeRef.new(shape: ChecksumAlgorithm, location: "header", location_name: "x-amz-sdk-checksum-algorithm"))
2223
+ PutObjectRequest.add_member(:checksum_crc32, Shapes::ShapeRef.new(shape: ChecksumCRC32, location: "header", location_name: "x-amz-checksum-crc32"))
2224
+ PutObjectRequest.add_member(:checksum_crc32c, Shapes::ShapeRef.new(shape: ChecksumCRC32C, location: "header", location_name: "x-amz-checksum-crc32c"))
2225
+ PutObjectRequest.add_member(:checksum_sha1, Shapes::ShapeRef.new(shape: ChecksumSHA1, location: "header", location_name: "x-amz-checksum-sha1"))
2226
+ PutObjectRequest.add_member(:checksum_sha256, Shapes::ShapeRef.new(shape: ChecksumSHA256, location: "header", location_name: "x-amz-checksum-sha256"))
2066
2227
  PutObjectRequest.add_member(:expires, Shapes::ShapeRef.new(shape: Expires, location: "header", location_name: "Expires"))
2067
2228
  PutObjectRequest.add_member(:grant_full_control, Shapes::ShapeRef.new(shape: GrantFullControl, location: "header", location_name: "x-amz-grant-full-control"))
2068
2229
  PutObjectRequest.add_member(:grant_read, Shapes::ShapeRef.new(shape: GrantRead, location: "header", location_name: "x-amz-grant-read"))
@@ -2092,13 +2253,14 @@ module Aws::S3
2092
2253
  PutObjectRetentionOutput.add_member(:request_charged, Shapes::ShapeRef.new(shape: RequestCharged, location: "header", location_name: "x-amz-request-charged"))
2093
2254
  PutObjectRetentionOutput.struct_class = Types::PutObjectRetentionOutput
2094
2255
 
2095
- PutObjectRetentionRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
2256
+ PutObjectRetentionRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
2096
2257
  PutObjectRetentionRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
2097
2258
  PutObjectRetentionRequest.add_member(:retention, Shapes::ShapeRef.new(shape: ObjectLockRetention, location_name: "Retention", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
2098
2259
  PutObjectRetentionRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
2099
2260
  PutObjectRetentionRequest.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "querystring", location_name: "versionId"))
2100
2261
  PutObjectRetentionRequest.add_member(:bypass_governance_retention, Shapes::ShapeRef.new(shape: BypassGovernanceRetention, location: "header", location_name: "x-amz-bypass-governance-retention"))
2101
2262
  PutObjectRetentionRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
2263
+ PutObjectRetentionRequest.add_member(:checksum_algorithm, Shapes::ShapeRef.new(shape: ChecksumAlgorithm, location: "header", location_name: "x-amz-sdk-checksum-algorithm"))
2102
2264
  PutObjectRetentionRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
2103
2265
  PutObjectRetentionRequest.struct_class = Types::PutObjectRetentionRequest
2104
2266
  PutObjectRetentionRequest[:payload] = :retention
@@ -2107,10 +2269,11 @@ module Aws::S3
2107
2269
  PutObjectTaggingOutput.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "header", location_name: "x-amz-version-id"))
2108
2270
  PutObjectTaggingOutput.struct_class = Types::PutObjectTaggingOutput
2109
2271
 
2110
- PutObjectTaggingRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
2272
+ PutObjectTaggingRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
2111
2273
  PutObjectTaggingRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
2112
2274
  PutObjectTaggingRequest.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "querystring", location_name: "versionId"))
2113
2275
  PutObjectTaggingRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
2276
+ PutObjectTaggingRequest.add_member(:checksum_algorithm, Shapes::ShapeRef.new(shape: ChecksumAlgorithm, location: "header", location_name: "x-amz-sdk-checksum-algorithm"))
2114
2277
  PutObjectTaggingRequest.add_member(:tagging, Shapes::ShapeRef.new(shape: Tagging, required: true, location_name: "Tagging", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
2115
2278
  PutObjectTaggingRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
2116
2279
  PutObjectTaggingRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
@@ -2118,8 +2281,9 @@ module Aws::S3
2118
2281
  PutObjectTaggingRequest[:payload] = :tagging
2119
2282
  PutObjectTaggingRequest[:payload_member] = PutObjectTaggingRequest.member(:tagging)
2120
2283
 
2121
- PutPublicAccessBlockRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
2284
+ PutPublicAccessBlockRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
2122
2285
  PutPublicAccessBlockRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
2286
+ PutPublicAccessBlockRequest.add_member(:checksum_algorithm, Shapes::ShapeRef.new(shape: ChecksumAlgorithm, location: "header", location_name: "x-amz-sdk-checksum-algorithm"))
2123
2287
  PutPublicAccessBlockRequest.add_member(:public_access_block_configuration, Shapes::ShapeRef.new(shape: PublicAccessBlockConfiguration, required: true, location_name: "PublicAccessBlockConfiguration", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
2124
2288
  PutPublicAccessBlockRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
2125
2289
  PutPublicAccessBlockRequest.struct_class = Types::PutPublicAccessBlockRequest
@@ -2200,11 +2364,12 @@ module Aws::S3
2200
2364
  RestoreObjectOutput.add_member(:restore_output_path, Shapes::ShapeRef.new(shape: RestoreOutputPath, location: "header", location_name: "x-amz-restore-output-path"))
2201
2365
  RestoreObjectOutput.struct_class = Types::RestoreObjectOutput
2202
2366
 
2203
- RestoreObjectRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
2367
+ RestoreObjectRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
2204
2368
  RestoreObjectRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
2205
2369
  RestoreObjectRequest.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "querystring", location_name: "versionId"))
2206
2370
  RestoreObjectRequest.add_member(:restore_request, Shapes::ShapeRef.new(shape: RestoreRequest, location_name: "RestoreRequest", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
2207
2371
  RestoreObjectRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
2372
+ RestoreObjectRequest.add_member(:checksum_algorithm, Shapes::ShapeRef.new(shape: ChecksumAlgorithm, location: "header", location_name: "x-amz-sdk-checksum-algorithm"))
2208
2373
  RestoreObjectRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
2209
2374
  RestoreObjectRequest.struct_class = Types::RestoreObjectRequest
2210
2375
  RestoreObjectRequest[:payload] = :restore_request
@@ -2271,7 +2436,7 @@ module Aws::S3
2271
2436
  SelectObjectContentOutput[:payload] = :payload
2272
2437
  SelectObjectContentOutput[:payload_member] = SelectObjectContentOutput.member(:payload)
2273
2438
 
2274
- SelectObjectContentRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
2439
+ SelectObjectContentRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
2275
2440
  SelectObjectContentRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
2276
2441
  SelectObjectContentRequest.add_member(:sse_customer_algorithm, Shapes::ShapeRef.new(shape: SSECustomerAlgorithm, location: "header", location_name: "x-amz-server-side-encryption-customer-algorithm"))
2277
2442
  SelectObjectContentRequest.add_member(:sse_customer_key, Shapes::ShapeRef.new(shape: SSECustomerKey, location: "header", location_name: "x-amz-server-side-encryption-customer-key"))
@@ -2380,7 +2545,7 @@ module Aws::S3
2380
2545
  UploadPartCopyOutput[:payload] = :copy_part_result
2381
2546
  UploadPartCopyOutput[:payload_member] = UploadPartCopyOutput.member(:copy_part_result)
2382
2547
 
2383
- UploadPartCopyRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
2548
+ UploadPartCopyRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
2384
2549
  UploadPartCopyRequest.add_member(:copy_source, Shapes::ShapeRef.new(shape: CopySource, required: true, location: "header", location_name: "x-amz-copy-source"))
2385
2550
  UploadPartCopyRequest.add_member(:copy_source_if_match, Shapes::ShapeRef.new(shape: CopySourceIfMatch, location: "header", location_name: "x-amz-copy-source-if-match"))
2386
2551
  UploadPartCopyRequest.add_member(:copy_source_if_modified_since, Shapes::ShapeRef.new(shape: CopySourceIfModifiedSince, location: "header", location_name: "x-amz-copy-source-if-modified-since"))
@@ -2403,6 +2568,10 @@ module Aws::S3
2403
2568
 
2404
2569
  UploadPartOutput.add_member(:server_side_encryption, Shapes::ShapeRef.new(shape: ServerSideEncryption, location: "header", location_name: "x-amz-server-side-encryption"))
2405
2570
  UploadPartOutput.add_member(:etag, Shapes::ShapeRef.new(shape: ETag, location: "header", location_name: "ETag"))
2571
+ UploadPartOutput.add_member(:checksum_crc32, Shapes::ShapeRef.new(shape: ChecksumCRC32, location: "header", location_name: "x-amz-checksum-crc32"))
2572
+ UploadPartOutput.add_member(:checksum_crc32c, Shapes::ShapeRef.new(shape: ChecksumCRC32C, location: "header", location_name: "x-amz-checksum-crc32c"))
2573
+ UploadPartOutput.add_member(:checksum_sha1, Shapes::ShapeRef.new(shape: ChecksumSHA1, location: "header", location_name: "x-amz-checksum-sha1"))
2574
+ UploadPartOutput.add_member(:checksum_sha256, Shapes::ShapeRef.new(shape: ChecksumSHA256, location: "header", location_name: "x-amz-checksum-sha256"))
2406
2575
  UploadPartOutput.add_member(:sse_customer_algorithm, Shapes::ShapeRef.new(shape: SSECustomerAlgorithm, location: "header", location_name: "x-amz-server-side-encryption-customer-algorithm"))
2407
2576
  UploadPartOutput.add_member(:sse_customer_key_md5, Shapes::ShapeRef.new(shape: SSECustomerKeyMD5, location: "header", location_name: "x-amz-server-side-encryption-customer-key-MD5"))
2408
2577
  UploadPartOutput.add_member(:ssekms_key_id, Shapes::ShapeRef.new(shape: SSEKMSKeyId, location: "header", location_name: "x-amz-server-side-encryption-aws-kms-key-id"))
@@ -2411,9 +2580,14 @@ module Aws::S3
2411
2580
  UploadPartOutput.struct_class = Types::UploadPartOutput
2412
2581
 
2413
2582
  UploadPartRequest.add_member(:body, Shapes::ShapeRef.new(shape: Body, location_name: "Body", metadata: {"streaming"=>true}))
2414
- UploadPartRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
2583
+ UploadPartRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket", metadata: {"contextParam"=>{"name"=>"Bucket"}}))
2415
2584
  UploadPartRequest.add_member(:content_length, Shapes::ShapeRef.new(shape: ContentLength, location: "header", location_name: "Content-Length"))
2416
2585
  UploadPartRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
2586
+ UploadPartRequest.add_member(:checksum_algorithm, Shapes::ShapeRef.new(shape: ChecksumAlgorithm, location: "header", location_name: "x-amz-sdk-checksum-algorithm"))
2587
+ UploadPartRequest.add_member(:checksum_crc32, Shapes::ShapeRef.new(shape: ChecksumCRC32, location: "header", location_name: "x-amz-checksum-crc32"))
2588
+ UploadPartRequest.add_member(:checksum_crc32c, Shapes::ShapeRef.new(shape: ChecksumCRC32C, location: "header", location_name: "x-amz-checksum-crc32c"))
2589
+ UploadPartRequest.add_member(:checksum_sha1, Shapes::ShapeRef.new(shape: ChecksumSHA1, location: "header", location_name: "x-amz-checksum-sha1"))
2590
+ UploadPartRequest.add_member(:checksum_sha256, Shapes::ShapeRef.new(shape: ChecksumSHA256, location: "header", location_name: "x-amz-checksum-sha256"))
2417
2591
  UploadPartRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
2418
2592
  UploadPartRequest.add_member(:part_number, Shapes::ShapeRef.new(shape: PartNumber, required: true, location: "querystring", location_name: "partNumber"))
2419
2593
  UploadPartRequest.add_member(:upload_id, Shapes::ShapeRef.new(shape: MultipartUploadId, required: true, location: "querystring", location_name: "uploadId"))
@@ -2452,6 +2626,10 @@ module Aws::S3
2452
2626
  WriteGetObjectResponseRequest.add_member(:content_length, Shapes::ShapeRef.new(shape: ContentLength, location: "header", location_name: "Content-Length"))
2453
2627
  WriteGetObjectResponseRequest.add_member(:content_range, Shapes::ShapeRef.new(shape: ContentRange, location: "header", location_name: "x-amz-fwd-header-Content-Range"))
2454
2628
  WriteGetObjectResponseRequest.add_member(:content_type, Shapes::ShapeRef.new(shape: ContentType, location: "header", location_name: "x-amz-fwd-header-Content-Type"))
2629
+ WriteGetObjectResponseRequest.add_member(:checksum_crc32, Shapes::ShapeRef.new(shape: ChecksumCRC32, location: "header", location_name: "x-amz-fwd-header-x-amz-checksum-crc32"))
2630
+ WriteGetObjectResponseRequest.add_member(:checksum_crc32c, Shapes::ShapeRef.new(shape: ChecksumCRC32C, location: "header", location_name: "x-amz-fwd-header-x-amz-checksum-crc32c"))
2631
+ WriteGetObjectResponseRequest.add_member(:checksum_sha1, Shapes::ShapeRef.new(shape: ChecksumSHA1, location: "header", location_name: "x-amz-fwd-header-x-amz-checksum-sha1"))
2632
+ WriteGetObjectResponseRequest.add_member(:checksum_sha256, Shapes::ShapeRef.new(shape: ChecksumSHA256, location: "header", location_name: "x-amz-fwd-header-x-amz-checksum-sha256"))
2455
2633
  WriteGetObjectResponseRequest.add_member(:delete_marker, Shapes::ShapeRef.new(shape: DeleteMarker, location: "header", location_name: "x-amz-fwd-header-x-amz-delete-marker"))
2456
2634
  WriteGetObjectResponseRequest.add_member(:etag, Shapes::ShapeRef.new(shape: ETag, location: "header", location_name: "x-amz-fwd-header-ETag"))
2457
2635
  WriteGetObjectResponseRequest.add_member(:expires, Shapes::ShapeRef.new(shape: Expires, location: "header", location_name: "x-amz-fwd-header-Expires"))
@@ -2499,7 +2677,7 @@ module Aws::S3
2499
2677
  api.add_operation(:abort_multipart_upload, Seahorse::Model::Operation.new.tap do |o|
2500
2678
  o.name = "AbortMultipartUpload"
2501
2679
  o.http_method = "DELETE"
2502
- o.http_request_uri = "/{Bucket}/{Key+}"
2680
+ o.http_request_uri = "/{Key+}"
2503
2681
  o.input = Shapes::ShapeRef.new(shape: AbortMultipartUploadRequest)
2504
2682
  o.output = Shapes::ShapeRef.new(shape: AbortMultipartUploadOutput)
2505
2683
  o.errors << Shapes::ShapeRef.new(shape: NoSuchUpload)
@@ -2508,7 +2686,7 @@ module Aws::S3
2508
2686
  api.add_operation(:complete_multipart_upload, Seahorse::Model::Operation.new.tap do |o|
2509
2687
  o.name = "CompleteMultipartUpload"
2510
2688
  o.http_method = "POST"
2511
- o.http_request_uri = "/{Bucket}/{Key+}"
2689
+ o.http_request_uri = "/{Key+}"
2512
2690
  o.input = Shapes::ShapeRef.new(shape: CompleteMultipartUploadRequest)
2513
2691
  o.output = Shapes::ShapeRef.new(shape: CompleteMultipartUploadOutput)
2514
2692
  end)
@@ -2516,7 +2694,7 @@ module Aws::S3
2516
2694
  api.add_operation(:copy_object, Seahorse::Model::Operation.new.tap do |o|
2517
2695
  o.name = "CopyObject"
2518
2696
  o.http_method = "PUT"
2519
- o.http_request_uri = "/{Bucket}/{Key+}"
2697
+ o.http_request_uri = "/{Key+}"
2520
2698
  o.input = Shapes::ShapeRef.new(shape: CopyObjectRequest)
2521
2699
  o.output = Shapes::ShapeRef.new(shape: CopyObjectOutput)
2522
2700
  o.errors << Shapes::ShapeRef.new(shape: ObjectNotInActiveTierError)
@@ -2525,7 +2703,7 @@ module Aws::S3
2525
2703
  api.add_operation(:create_bucket, Seahorse::Model::Operation.new.tap do |o|
2526
2704
  o.name = "CreateBucket"
2527
2705
  o.http_method = "PUT"
2528
- o.http_request_uri = "/{Bucket}"
2706
+ o.http_request_uri = "/"
2529
2707
  o.input = Shapes::ShapeRef.new(shape: CreateBucketRequest)
2530
2708
  o.output = Shapes::ShapeRef.new(shape: CreateBucketOutput)
2531
2709
  o.errors << Shapes::ShapeRef.new(shape: BucketAlreadyExists)
@@ -2535,7 +2713,7 @@ module Aws::S3
2535
2713
  api.add_operation(:create_multipart_upload, Seahorse::Model::Operation.new.tap do |o|
2536
2714
  o.name = "CreateMultipartUpload"
2537
2715
  o.http_method = "POST"
2538
- o.http_request_uri = "/{Bucket}/{Key+}?uploads"
2716
+ o.http_request_uri = "/{Key+}?uploads"
2539
2717
  o.input = Shapes::ShapeRef.new(shape: CreateMultipartUploadRequest)
2540
2718
  o.output = Shapes::ShapeRef.new(shape: CreateMultipartUploadOutput)
2541
2719
  end)
@@ -2543,7 +2721,7 @@ module Aws::S3
2543
2721
  api.add_operation(:delete_bucket, Seahorse::Model::Operation.new.tap do |o|
2544
2722
  o.name = "DeleteBucket"
2545
2723
  o.http_method = "DELETE"
2546
- o.http_request_uri = "/{Bucket}"
2724
+ o.http_request_uri = "/"
2547
2725
  o.input = Shapes::ShapeRef.new(shape: DeleteBucketRequest)
2548
2726
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2549
2727
  end)
@@ -2551,7 +2729,7 @@ module Aws::S3
2551
2729
  api.add_operation(:delete_bucket_analytics_configuration, Seahorse::Model::Operation.new.tap do |o|
2552
2730
  o.name = "DeleteBucketAnalyticsConfiguration"
2553
2731
  o.http_method = "DELETE"
2554
- o.http_request_uri = "/{Bucket}?analytics"
2732
+ o.http_request_uri = "/?analytics"
2555
2733
  o.input = Shapes::ShapeRef.new(shape: DeleteBucketAnalyticsConfigurationRequest)
2556
2734
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2557
2735
  end)
@@ -2559,7 +2737,7 @@ module Aws::S3
2559
2737
  api.add_operation(:delete_bucket_cors, Seahorse::Model::Operation.new.tap do |o|
2560
2738
  o.name = "DeleteBucketCors"
2561
2739
  o.http_method = "DELETE"
2562
- o.http_request_uri = "/{Bucket}?cors"
2740
+ o.http_request_uri = "/?cors"
2563
2741
  o.input = Shapes::ShapeRef.new(shape: DeleteBucketCorsRequest)
2564
2742
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2565
2743
  end)
@@ -2567,7 +2745,7 @@ module Aws::S3
2567
2745
  api.add_operation(:delete_bucket_encryption, Seahorse::Model::Operation.new.tap do |o|
2568
2746
  o.name = "DeleteBucketEncryption"
2569
2747
  o.http_method = "DELETE"
2570
- o.http_request_uri = "/{Bucket}?encryption"
2748
+ o.http_request_uri = "/?encryption"
2571
2749
  o.input = Shapes::ShapeRef.new(shape: DeleteBucketEncryptionRequest)
2572
2750
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2573
2751
  end)
@@ -2575,7 +2753,7 @@ module Aws::S3
2575
2753
  api.add_operation(:delete_bucket_intelligent_tiering_configuration, Seahorse::Model::Operation.new.tap do |o|
2576
2754
  o.name = "DeleteBucketIntelligentTieringConfiguration"
2577
2755
  o.http_method = "DELETE"
2578
- o.http_request_uri = "/{Bucket}?intelligent-tiering"
2756
+ o.http_request_uri = "/?intelligent-tiering"
2579
2757
  o.input = Shapes::ShapeRef.new(shape: DeleteBucketIntelligentTieringConfigurationRequest)
2580
2758
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2581
2759
  end)
@@ -2583,7 +2761,7 @@ module Aws::S3
2583
2761
  api.add_operation(:delete_bucket_inventory_configuration, Seahorse::Model::Operation.new.tap do |o|
2584
2762
  o.name = "DeleteBucketInventoryConfiguration"
2585
2763
  o.http_method = "DELETE"
2586
- o.http_request_uri = "/{Bucket}?inventory"
2764
+ o.http_request_uri = "/?inventory"
2587
2765
  o.input = Shapes::ShapeRef.new(shape: DeleteBucketInventoryConfigurationRequest)
2588
2766
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2589
2767
  end)
@@ -2591,7 +2769,7 @@ module Aws::S3
2591
2769
  api.add_operation(:delete_bucket_lifecycle, Seahorse::Model::Operation.new.tap do |o|
2592
2770
  o.name = "DeleteBucketLifecycle"
2593
2771
  o.http_method = "DELETE"
2594
- o.http_request_uri = "/{Bucket}?lifecycle"
2772
+ o.http_request_uri = "/?lifecycle"
2595
2773
  o.input = Shapes::ShapeRef.new(shape: DeleteBucketLifecycleRequest)
2596
2774
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2597
2775
  end)
@@ -2599,7 +2777,7 @@ module Aws::S3
2599
2777
  api.add_operation(:delete_bucket_metrics_configuration, Seahorse::Model::Operation.new.tap do |o|
2600
2778
  o.name = "DeleteBucketMetricsConfiguration"
2601
2779
  o.http_method = "DELETE"
2602
- o.http_request_uri = "/{Bucket}?metrics"
2780
+ o.http_request_uri = "/?metrics"
2603
2781
  o.input = Shapes::ShapeRef.new(shape: DeleteBucketMetricsConfigurationRequest)
2604
2782
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2605
2783
  end)
@@ -2607,7 +2785,7 @@ module Aws::S3
2607
2785
  api.add_operation(:delete_bucket_ownership_controls, Seahorse::Model::Operation.new.tap do |o|
2608
2786
  o.name = "DeleteBucketOwnershipControls"
2609
2787
  o.http_method = "DELETE"
2610
- o.http_request_uri = "/{Bucket}?ownershipControls"
2788
+ o.http_request_uri = "/?ownershipControls"
2611
2789
  o.input = Shapes::ShapeRef.new(shape: DeleteBucketOwnershipControlsRequest)
2612
2790
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2613
2791
  end)
@@ -2615,7 +2793,7 @@ module Aws::S3
2615
2793
  api.add_operation(:delete_bucket_policy, Seahorse::Model::Operation.new.tap do |o|
2616
2794
  o.name = "DeleteBucketPolicy"
2617
2795
  o.http_method = "DELETE"
2618
- o.http_request_uri = "/{Bucket}?policy"
2796
+ o.http_request_uri = "/?policy"
2619
2797
  o.input = Shapes::ShapeRef.new(shape: DeleteBucketPolicyRequest)
2620
2798
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2621
2799
  end)
@@ -2623,7 +2801,7 @@ module Aws::S3
2623
2801
  api.add_operation(:delete_bucket_replication, Seahorse::Model::Operation.new.tap do |o|
2624
2802
  o.name = "DeleteBucketReplication"
2625
2803
  o.http_method = "DELETE"
2626
- o.http_request_uri = "/{Bucket}?replication"
2804
+ o.http_request_uri = "/?replication"
2627
2805
  o.input = Shapes::ShapeRef.new(shape: DeleteBucketReplicationRequest)
2628
2806
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2629
2807
  end)
@@ -2631,7 +2809,7 @@ module Aws::S3
2631
2809
  api.add_operation(:delete_bucket_tagging, Seahorse::Model::Operation.new.tap do |o|
2632
2810
  o.name = "DeleteBucketTagging"
2633
2811
  o.http_method = "DELETE"
2634
- o.http_request_uri = "/{Bucket}?tagging"
2812
+ o.http_request_uri = "/?tagging"
2635
2813
  o.input = Shapes::ShapeRef.new(shape: DeleteBucketTaggingRequest)
2636
2814
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2637
2815
  end)
@@ -2639,7 +2817,7 @@ module Aws::S3
2639
2817
  api.add_operation(:delete_bucket_website, Seahorse::Model::Operation.new.tap do |o|
2640
2818
  o.name = "DeleteBucketWebsite"
2641
2819
  o.http_method = "DELETE"
2642
- o.http_request_uri = "/{Bucket}?website"
2820
+ o.http_request_uri = "/?website"
2643
2821
  o.input = Shapes::ShapeRef.new(shape: DeleteBucketWebsiteRequest)
2644
2822
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2645
2823
  end)
@@ -2647,7 +2825,7 @@ module Aws::S3
2647
2825
  api.add_operation(:delete_object, Seahorse::Model::Operation.new.tap do |o|
2648
2826
  o.name = "DeleteObject"
2649
2827
  o.http_method = "DELETE"
2650
- o.http_request_uri = "/{Bucket}/{Key+}"
2828
+ o.http_request_uri = "/{Key+}"
2651
2829
  o.input = Shapes::ShapeRef.new(shape: DeleteObjectRequest)
2652
2830
  o.output = Shapes::ShapeRef.new(shape: DeleteObjectOutput)
2653
2831
  end)
@@ -2655,7 +2833,7 @@ module Aws::S3
2655
2833
  api.add_operation(:delete_object_tagging, Seahorse::Model::Operation.new.tap do |o|
2656
2834
  o.name = "DeleteObjectTagging"
2657
2835
  o.http_method = "DELETE"
2658
- o.http_request_uri = "/{Bucket}/{Key+}?tagging"
2836
+ o.http_request_uri = "/{Key+}?tagging"
2659
2837
  o.input = Shapes::ShapeRef.new(shape: DeleteObjectTaggingRequest)
2660
2838
  o.output = Shapes::ShapeRef.new(shape: DeleteObjectTaggingOutput)
2661
2839
  end)
@@ -2663,8 +2841,15 @@ module Aws::S3
2663
2841
  api.add_operation(:delete_objects, Seahorse::Model::Operation.new.tap do |o|
2664
2842
  o.name = "DeleteObjects"
2665
2843
  o.http_method = "POST"
2666
- o.http_request_uri = "/{Bucket}?delete"
2667
- o.http_checksum_required = true
2844
+ o.http_request_uri = "/?delete"
2845
+ o.http_checksum = {
2846
+ "requestAlgorithmMember" => "checksum_algorithm",
2847
+ "requestChecksumRequired" => true,
2848
+ }
2849
+ o.http_checksum = {
2850
+ "requestAlgorithmMember" => "checksum_algorithm",
2851
+ "requestChecksumRequired" => true,
2852
+ }
2668
2853
  o.input = Shapes::ShapeRef.new(shape: DeleteObjectsRequest)
2669
2854
  o.output = Shapes::ShapeRef.new(shape: DeleteObjectsOutput)
2670
2855
  end)
@@ -2672,7 +2857,7 @@ module Aws::S3
2672
2857
  api.add_operation(:delete_public_access_block, Seahorse::Model::Operation.new.tap do |o|
2673
2858
  o.name = "DeletePublicAccessBlock"
2674
2859
  o.http_method = "DELETE"
2675
- o.http_request_uri = "/{Bucket}?publicAccessBlock"
2860
+ o.http_request_uri = "/?publicAccessBlock"
2676
2861
  o.input = Shapes::ShapeRef.new(shape: DeletePublicAccessBlockRequest)
2677
2862
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2678
2863
  end)
@@ -2680,7 +2865,7 @@ module Aws::S3
2680
2865
  api.add_operation(:get_bucket_accelerate_configuration, Seahorse::Model::Operation.new.tap do |o|
2681
2866
  o.name = "GetBucketAccelerateConfiguration"
2682
2867
  o.http_method = "GET"
2683
- o.http_request_uri = "/{Bucket}?accelerate"
2868
+ o.http_request_uri = "/?accelerate"
2684
2869
  o.input = Shapes::ShapeRef.new(shape: GetBucketAccelerateConfigurationRequest)
2685
2870
  o.output = Shapes::ShapeRef.new(shape: GetBucketAccelerateConfigurationOutput)
2686
2871
  end)
@@ -2688,7 +2873,7 @@ module Aws::S3
2688
2873
  api.add_operation(:get_bucket_acl, Seahorse::Model::Operation.new.tap do |o|
2689
2874
  o.name = "GetBucketAcl"
2690
2875
  o.http_method = "GET"
2691
- o.http_request_uri = "/{Bucket}?acl"
2876
+ o.http_request_uri = "/?acl"
2692
2877
  o.input = Shapes::ShapeRef.new(shape: GetBucketAclRequest)
2693
2878
  o.output = Shapes::ShapeRef.new(shape: GetBucketAclOutput)
2694
2879
  end)
@@ -2696,7 +2881,7 @@ module Aws::S3
2696
2881
  api.add_operation(:get_bucket_analytics_configuration, Seahorse::Model::Operation.new.tap do |o|
2697
2882
  o.name = "GetBucketAnalyticsConfiguration"
2698
2883
  o.http_method = "GET"
2699
- o.http_request_uri = "/{Bucket}?analytics"
2884
+ o.http_request_uri = "/?analytics"
2700
2885
  o.input = Shapes::ShapeRef.new(shape: GetBucketAnalyticsConfigurationRequest)
2701
2886
  o.output = Shapes::ShapeRef.new(shape: GetBucketAnalyticsConfigurationOutput)
2702
2887
  end)
@@ -2704,7 +2889,7 @@ module Aws::S3
2704
2889
  api.add_operation(:get_bucket_cors, Seahorse::Model::Operation.new.tap do |o|
2705
2890
  o.name = "GetBucketCors"
2706
2891
  o.http_method = "GET"
2707
- o.http_request_uri = "/{Bucket}?cors"
2892
+ o.http_request_uri = "/?cors"
2708
2893
  o.input = Shapes::ShapeRef.new(shape: GetBucketCorsRequest)
2709
2894
  o.output = Shapes::ShapeRef.new(shape: GetBucketCorsOutput)
2710
2895
  end)
@@ -2712,7 +2897,7 @@ module Aws::S3
2712
2897
  api.add_operation(:get_bucket_encryption, Seahorse::Model::Operation.new.tap do |o|
2713
2898
  o.name = "GetBucketEncryption"
2714
2899
  o.http_method = "GET"
2715
- o.http_request_uri = "/{Bucket}?encryption"
2900
+ o.http_request_uri = "/?encryption"
2716
2901
  o.input = Shapes::ShapeRef.new(shape: GetBucketEncryptionRequest)
2717
2902
  o.output = Shapes::ShapeRef.new(shape: GetBucketEncryptionOutput)
2718
2903
  end)
@@ -2720,7 +2905,7 @@ module Aws::S3
2720
2905
  api.add_operation(:get_bucket_intelligent_tiering_configuration, Seahorse::Model::Operation.new.tap do |o|
2721
2906
  o.name = "GetBucketIntelligentTieringConfiguration"
2722
2907
  o.http_method = "GET"
2723
- o.http_request_uri = "/{Bucket}?intelligent-tiering"
2908
+ o.http_request_uri = "/?intelligent-tiering"
2724
2909
  o.input = Shapes::ShapeRef.new(shape: GetBucketIntelligentTieringConfigurationRequest)
2725
2910
  o.output = Shapes::ShapeRef.new(shape: GetBucketIntelligentTieringConfigurationOutput)
2726
2911
  end)
@@ -2728,7 +2913,7 @@ module Aws::S3
2728
2913
  api.add_operation(:get_bucket_inventory_configuration, Seahorse::Model::Operation.new.tap do |o|
2729
2914
  o.name = "GetBucketInventoryConfiguration"
2730
2915
  o.http_method = "GET"
2731
- o.http_request_uri = "/{Bucket}?inventory"
2916
+ o.http_request_uri = "/?inventory"
2732
2917
  o.input = Shapes::ShapeRef.new(shape: GetBucketInventoryConfigurationRequest)
2733
2918
  o.output = Shapes::ShapeRef.new(shape: GetBucketInventoryConfigurationOutput)
2734
2919
  end)
@@ -2736,7 +2921,7 @@ module Aws::S3
2736
2921
  api.add_operation(:get_bucket_lifecycle, Seahorse::Model::Operation.new.tap do |o|
2737
2922
  o.name = "GetBucketLifecycle"
2738
2923
  o.http_method = "GET"
2739
- o.http_request_uri = "/{Bucket}?lifecycle"
2924
+ o.http_request_uri = "/?lifecycle"
2740
2925
  o.deprecated = true
2741
2926
  o.input = Shapes::ShapeRef.new(shape: GetBucketLifecycleRequest)
2742
2927
  o.output = Shapes::ShapeRef.new(shape: GetBucketLifecycleOutput)
@@ -2745,7 +2930,7 @@ module Aws::S3
2745
2930
  api.add_operation(:get_bucket_lifecycle_configuration, Seahorse::Model::Operation.new.tap do |o|
2746
2931
  o.name = "GetBucketLifecycleConfiguration"
2747
2932
  o.http_method = "GET"
2748
- o.http_request_uri = "/{Bucket}?lifecycle"
2933
+ o.http_request_uri = "/?lifecycle"
2749
2934
  o.input = Shapes::ShapeRef.new(shape: GetBucketLifecycleConfigurationRequest)
2750
2935
  o.output = Shapes::ShapeRef.new(shape: GetBucketLifecycleConfigurationOutput)
2751
2936
  end)
@@ -2753,7 +2938,7 @@ module Aws::S3
2753
2938
  api.add_operation(:get_bucket_location, Seahorse::Model::Operation.new.tap do |o|
2754
2939
  o.name = "GetBucketLocation"
2755
2940
  o.http_method = "GET"
2756
- o.http_request_uri = "/{Bucket}?location"
2941
+ o.http_request_uri = "/?location"
2757
2942
  o.input = Shapes::ShapeRef.new(shape: GetBucketLocationRequest)
2758
2943
  o.output = Shapes::ShapeRef.new(shape: GetBucketLocationOutput)
2759
2944
  end)
@@ -2761,7 +2946,7 @@ module Aws::S3
2761
2946
  api.add_operation(:get_bucket_logging, Seahorse::Model::Operation.new.tap do |o|
2762
2947
  o.name = "GetBucketLogging"
2763
2948
  o.http_method = "GET"
2764
- o.http_request_uri = "/{Bucket}?logging"
2949
+ o.http_request_uri = "/?logging"
2765
2950
  o.input = Shapes::ShapeRef.new(shape: GetBucketLoggingRequest)
2766
2951
  o.output = Shapes::ShapeRef.new(shape: GetBucketLoggingOutput)
2767
2952
  end)
@@ -2769,7 +2954,7 @@ module Aws::S3
2769
2954
  api.add_operation(:get_bucket_metrics_configuration, Seahorse::Model::Operation.new.tap do |o|
2770
2955
  o.name = "GetBucketMetricsConfiguration"
2771
2956
  o.http_method = "GET"
2772
- o.http_request_uri = "/{Bucket}?metrics"
2957
+ o.http_request_uri = "/?metrics"
2773
2958
  o.input = Shapes::ShapeRef.new(shape: GetBucketMetricsConfigurationRequest)
2774
2959
  o.output = Shapes::ShapeRef.new(shape: GetBucketMetricsConfigurationOutput)
2775
2960
  end)
@@ -2777,7 +2962,7 @@ module Aws::S3
2777
2962
  api.add_operation(:get_bucket_notification, Seahorse::Model::Operation.new.tap do |o|
2778
2963
  o.name = "GetBucketNotification"
2779
2964
  o.http_method = "GET"
2780
- o.http_request_uri = "/{Bucket}?notification"
2965
+ o.http_request_uri = "/?notification"
2781
2966
  o.deprecated = true
2782
2967
  o.input = Shapes::ShapeRef.new(shape: GetBucketNotificationConfigurationRequest)
2783
2968
  o.output = Shapes::ShapeRef.new(shape: NotificationConfigurationDeprecated)
@@ -2786,7 +2971,7 @@ module Aws::S3
2786
2971
  api.add_operation(:get_bucket_notification_configuration, Seahorse::Model::Operation.new.tap do |o|
2787
2972
  o.name = "GetBucketNotificationConfiguration"
2788
2973
  o.http_method = "GET"
2789
- o.http_request_uri = "/{Bucket}?notification"
2974
+ o.http_request_uri = "/?notification"
2790
2975
  o.input = Shapes::ShapeRef.new(shape: GetBucketNotificationConfigurationRequest)
2791
2976
  o.output = Shapes::ShapeRef.new(shape: NotificationConfiguration)
2792
2977
  end)
@@ -2794,7 +2979,7 @@ module Aws::S3
2794
2979
  api.add_operation(:get_bucket_ownership_controls, Seahorse::Model::Operation.new.tap do |o|
2795
2980
  o.name = "GetBucketOwnershipControls"
2796
2981
  o.http_method = "GET"
2797
- o.http_request_uri = "/{Bucket}?ownershipControls"
2982
+ o.http_request_uri = "/?ownershipControls"
2798
2983
  o.input = Shapes::ShapeRef.new(shape: GetBucketOwnershipControlsRequest)
2799
2984
  o.output = Shapes::ShapeRef.new(shape: GetBucketOwnershipControlsOutput)
2800
2985
  end)
@@ -2802,7 +2987,7 @@ module Aws::S3
2802
2987
  api.add_operation(:get_bucket_policy, Seahorse::Model::Operation.new.tap do |o|
2803
2988
  o.name = "GetBucketPolicy"
2804
2989
  o.http_method = "GET"
2805
- o.http_request_uri = "/{Bucket}?policy"
2990
+ o.http_request_uri = "/?policy"
2806
2991
  o.input = Shapes::ShapeRef.new(shape: GetBucketPolicyRequest)
2807
2992
  o.output = Shapes::ShapeRef.new(shape: GetBucketPolicyOutput)
2808
2993
  end)
@@ -2810,7 +2995,7 @@ module Aws::S3
2810
2995
  api.add_operation(:get_bucket_policy_status, Seahorse::Model::Operation.new.tap do |o|
2811
2996
  o.name = "GetBucketPolicyStatus"
2812
2997
  o.http_method = "GET"
2813
- o.http_request_uri = "/{Bucket}?policyStatus"
2998
+ o.http_request_uri = "/?policyStatus"
2814
2999
  o.input = Shapes::ShapeRef.new(shape: GetBucketPolicyStatusRequest)
2815
3000
  o.output = Shapes::ShapeRef.new(shape: GetBucketPolicyStatusOutput)
2816
3001
  end)
@@ -2818,7 +3003,7 @@ module Aws::S3
2818
3003
  api.add_operation(:get_bucket_replication, Seahorse::Model::Operation.new.tap do |o|
2819
3004
  o.name = "GetBucketReplication"
2820
3005
  o.http_method = "GET"
2821
- o.http_request_uri = "/{Bucket}?replication"
3006
+ o.http_request_uri = "/?replication"
2822
3007
  o.input = Shapes::ShapeRef.new(shape: GetBucketReplicationRequest)
2823
3008
  o.output = Shapes::ShapeRef.new(shape: GetBucketReplicationOutput)
2824
3009
  end)
@@ -2826,7 +3011,7 @@ module Aws::S3
2826
3011
  api.add_operation(:get_bucket_request_payment, Seahorse::Model::Operation.new.tap do |o|
2827
3012
  o.name = "GetBucketRequestPayment"
2828
3013
  o.http_method = "GET"
2829
- o.http_request_uri = "/{Bucket}?requestPayment"
3014
+ o.http_request_uri = "/?requestPayment"
2830
3015
  o.input = Shapes::ShapeRef.new(shape: GetBucketRequestPaymentRequest)
2831
3016
  o.output = Shapes::ShapeRef.new(shape: GetBucketRequestPaymentOutput)
2832
3017
  end)
@@ -2834,7 +3019,7 @@ module Aws::S3
2834
3019
  api.add_operation(:get_bucket_tagging, Seahorse::Model::Operation.new.tap do |o|
2835
3020
  o.name = "GetBucketTagging"
2836
3021
  o.http_method = "GET"
2837
- o.http_request_uri = "/{Bucket}?tagging"
3022
+ o.http_request_uri = "/?tagging"
2838
3023
  o.input = Shapes::ShapeRef.new(shape: GetBucketTaggingRequest)
2839
3024
  o.output = Shapes::ShapeRef.new(shape: GetBucketTaggingOutput)
2840
3025
  end)
@@ -2842,7 +3027,7 @@ module Aws::S3
2842
3027
  api.add_operation(:get_bucket_versioning, Seahorse::Model::Operation.new.tap do |o|
2843
3028
  o.name = "GetBucketVersioning"
2844
3029
  o.http_method = "GET"
2845
- o.http_request_uri = "/{Bucket}?versioning"
3030
+ o.http_request_uri = "/?versioning"
2846
3031
  o.input = Shapes::ShapeRef.new(shape: GetBucketVersioningRequest)
2847
3032
  o.output = Shapes::ShapeRef.new(shape: GetBucketVersioningOutput)
2848
3033
  end)
@@ -2850,7 +3035,7 @@ module Aws::S3
2850
3035
  api.add_operation(:get_bucket_website, Seahorse::Model::Operation.new.tap do |o|
2851
3036
  o.name = "GetBucketWebsite"
2852
3037
  o.http_method = "GET"
2853
- o.http_request_uri = "/{Bucket}?website"
3038
+ o.http_request_uri = "/?website"
2854
3039
  o.input = Shapes::ShapeRef.new(shape: GetBucketWebsiteRequest)
2855
3040
  o.output = Shapes::ShapeRef.new(shape: GetBucketWebsiteOutput)
2856
3041
  end)
@@ -2858,7 +3043,15 @@ module Aws::S3
2858
3043
  api.add_operation(:get_object, Seahorse::Model::Operation.new.tap do |o|
2859
3044
  o.name = "GetObject"
2860
3045
  o.http_method = "GET"
2861
- o.http_request_uri = "/{Bucket}/{Key+}"
3046
+ o.http_request_uri = "/{Key+}"
3047
+ o.http_checksum = {
3048
+ "requestValidationModeMember" => "checksum_mode",
3049
+ "responseAlgorithms" => ["CRC32", "CRC32C", "SHA256", "SHA1"],
3050
+ }
3051
+ o.http_checksum = {
3052
+ "requestValidationModeMember" => "checksum_mode",
3053
+ "responseAlgorithms" => ["CRC32", "CRC32C", "SHA256", "SHA1"],
3054
+ }
2862
3055
  o.input = Shapes::ShapeRef.new(shape: GetObjectRequest)
2863
3056
  o.output = Shapes::ShapeRef.new(shape: GetObjectOutput)
2864
3057
  o.errors << Shapes::ShapeRef.new(shape: NoSuchKey)
@@ -2868,16 +3061,25 @@ module Aws::S3
2868
3061
  api.add_operation(:get_object_acl, Seahorse::Model::Operation.new.tap do |o|
2869
3062
  o.name = "GetObjectAcl"
2870
3063
  o.http_method = "GET"
2871
- o.http_request_uri = "/{Bucket}/{Key+}?acl"
3064
+ o.http_request_uri = "/{Key+}?acl"
2872
3065
  o.input = Shapes::ShapeRef.new(shape: GetObjectAclRequest)
2873
3066
  o.output = Shapes::ShapeRef.new(shape: GetObjectAclOutput)
2874
3067
  o.errors << Shapes::ShapeRef.new(shape: NoSuchKey)
2875
3068
  end)
2876
3069
 
3070
+ api.add_operation(:get_object_attributes, Seahorse::Model::Operation.new.tap do |o|
3071
+ o.name = "GetObjectAttributes"
3072
+ o.http_method = "GET"
3073
+ o.http_request_uri = "/{Key+}?attributes"
3074
+ o.input = Shapes::ShapeRef.new(shape: GetObjectAttributesRequest)
3075
+ o.output = Shapes::ShapeRef.new(shape: GetObjectAttributesOutput)
3076
+ o.errors << Shapes::ShapeRef.new(shape: NoSuchKey)
3077
+ end)
3078
+
2877
3079
  api.add_operation(:get_object_legal_hold, Seahorse::Model::Operation.new.tap do |o|
2878
3080
  o.name = "GetObjectLegalHold"
2879
3081
  o.http_method = "GET"
2880
- o.http_request_uri = "/{Bucket}/{Key+}?legal-hold"
3082
+ o.http_request_uri = "/{Key+}?legal-hold"
2881
3083
  o.input = Shapes::ShapeRef.new(shape: GetObjectLegalHoldRequest)
2882
3084
  o.output = Shapes::ShapeRef.new(shape: GetObjectLegalHoldOutput)
2883
3085
  end)
@@ -2885,7 +3087,7 @@ module Aws::S3
2885
3087
  api.add_operation(:get_object_lock_configuration, Seahorse::Model::Operation.new.tap do |o|
2886
3088
  o.name = "GetObjectLockConfiguration"
2887
3089
  o.http_method = "GET"
2888
- o.http_request_uri = "/{Bucket}?object-lock"
3090
+ o.http_request_uri = "/?object-lock"
2889
3091
  o.input = Shapes::ShapeRef.new(shape: GetObjectLockConfigurationRequest)
2890
3092
  o.output = Shapes::ShapeRef.new(shape: GetObjectLockConfigurationOutput)
2891
3093
  end)
@@ -2893,7 +3095,7 @@ module Aws::S3
2893
3095
  api.add_operation(:get_object_retention, Seahorse::Model::Operation.new.tap do |o|
2894
3096
  o.name = "GetObjectRetention"
2895
3097
  o.http_method = "GET"
2896
- o.http_request_uri = "/{Bucket}/{Key+}?retention"
3098
+ o.http_request_uri = "/{Key+}?retention"
2897
3099
  o.input = Shapes::ShapeRef.new(shape: GetObjectRetentionRequest)
2898
3100
  o.output = Shapes::ShapeRef.new(shape: GetObjectRetentionOutput)
2899
3101
  end)
@@ -2901,7 +3103,7 @@ module Aws::S3
2901
3103
  api.add_operation(:get_object_tagging, Seahorse::Model::Operation.new.tap do |o|
2902
3104
  o.name = "GetObjectTagging"
2903
3105
  o.http_method = "GET"
2904
- o.http_request_uri = "/{Bucket}/{Key+}?tagging"
3106
+ o.http_request_uri = "/{Key+}?tagging"
2905
3107
  o.input = Shapes::ShapeRef.new(shape: GetObjectTaggingRequest)
2906
3108
  o.output = Shapes::ShapeRef.new(shape: GetObjectTaggingOutput)
2907
3109
  end)
@@ -2909,7 +3111,7 @@ module Aws::S3
2909
3111
  api.add_operation(:get_object_torrent, Seahorse::Model::Operation.new.tap do |o|
2910
3112
  o.name = "GetObjectTorrent"
2911
3113
  o.http_method = "GET"
2912
- o.http_request_uri = "/{Bucket}/{Key+}?torrent"
3114
+ o.http_request_uri = "/{Key+}?torrent"
2913
3115
  o.input = Shapes::ShapeRef.new(shape: GetObjectTorrentRequest)
2914
3116
  o.output = Shapes::ShapeRef.new(shape: GetObjectTorrentOutput)
2915
3117
  end)
@@ -2917,7 +3119,7 @@ module Aws::S3
2917
3119
  api.add_operation(:get_public_access_block, Seahorse::Model::Operation.new.tap do |o|
2918
3120
  o.name = "GetPublicAccessBlock"
2919
3121
  o.http_method = "GET"
2920
- o.http_request_uri = "/{Bucket}?publicAccessBlock"
3122
+ o.http_request_uri = "/?publicAccessBlock"
2921
3123
  o.input = Shapes::ShapeRef.new(shape: GetPublicAccessBlockRequest)
2922
3124
  o.output = Shapes::ShapeRef.new(shape: GetPublicAccessBlockOutput)
2923
3125
  end)
@@ -2925,7 +3127,7 @@ module Aws::S3
2925
3127
  api.add_operation(:head_bucket, Seahorse::Model::Operation.new.tap do |o|
2926
3128
  o.name = "HeadBucket"
2927
3129
  o.http_method = "HEAD"
2928
- o.http_request_uri = "/{Bucket}"
3130
+ o.http_request_uri = "/"
2929
3131
  o.input = Shapes::ShapeRef.new(shape: HeadBucketRequest)
2930
3132
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2931
3133
  o.errors << Shapes::ShapeRef.new(shape: NoSuchBucket)
@@ -2934,7 +3136,7 @@ module Aws::S3
2934
3136
  api.add_operation(:head_object, Seahorse::Model::Operation.new.tap do |o|
2935
3137
  o.name = "HeadObject"
2936
3138
  o.http_method = "HEAD"
2937
- o.http_request_uri = "/{Bucket}/{Key+}"
3139
+ o.http_request_uri = "/{Key+}"
2938
3140
  o.input = Shapes::ShapeRef.new(shape: HeadObjectRequest)
2939
3141
  o.output = Shapes::ShapeRef.new(shape: HeadObjectOutput)
2940
3142
  o.errors << Shapes::ShapeRef.new(shape: NoSuchKey)
@@ -2943,7 +3145,7 @@ module Aws::S3
2943
3145
  api.add_operation(:list_bucket_analytics_configurations, Seahorse::Model::Operation.new.tap do |o|
2944
3146
  o.name = "ListBucketAnalyticsConfigurations"
2945
3147
  o.http_method = "GET"
2946
- o.http_request_uri = "/{Bucket}?analytics"
3148
+ o.http_request_uri = "/?analytics"
2947
3149
  o.input = Shapes::ShapeRef.new(shape: ListBucketAnalyticsConfigurationsRequest)
2948
3150
  o.output = Shapes::ShapeRef.new(shape: ListBucketAnalyticsConfigurationsOutput)
2949
3151
  end)
@@ -2951,7 +3153,7 @@ module Aws::S3
2951
3153
  api.add_operation(:list_bucket_intelligent_tiering_configurations, Seahorse::Model::Operation.new.tap do |o|
2952
3154
  o.name = "ListBucketIntelligentTieringConfigurations"
2953
3155
  o.http_method = "GET"
2954
- o.http_request_uri = "/{Bucket}?intelligent-tiering"
3156
+ o.http_request_uri = "/?intelligent-tiering"
2955
3157
  o.input = Shapes::ShapeRef.new(shape: ListBucketIntelligentTieringConfigurationsRequest)
2956
3158
  o.output = Shapes::ShapeRef.new(shape: ListBucketIntelligentTieringConfigurationsOutput)
2957
3159
  end)
@@ -2959,7 +3161,7 @@ module Aws::S3
2959
3161
  api.add_operation(:list_bucket_inventory_configurations, Seahorse::Model::Operation.new.tap do |o|
2960
3162
  o.name = "ListBucketInventoryConfigurations"
2961
3163
  o.http_method = "GET"
2962
- o.http_request_uri = "/{Bucket}?inventory"
3164
+ o.http_request_uri = "/?inventory"
2963
3165
  o.input = Shapes::ShapeRef.new(shape: ListBucketInventoryConfigurationsRequest)
2964
3166
  o.output = Shapes::ShapeRef.new(shape: ListBucketInventoryConfigurationsOutput)
2965
3167
  end)
@@ -2967,7 +3169,7 @@ module Aws::S3
2967
3169
  api.add_operation(:list_bucket_metrics_configurations, Seahorse::Model::Operation.new.tap do |o|
2968
3170
  o.name = "ListBucketMetricsConfigurations"
2969
3171
  o.http_method = "GET"
2970
- o.http_request_uri = "/{Bucket}?metrics"
3172
+ o.http_request_uri = "/?metrics"
2971
3173
  o.input = Shapes::ShapeRef.new(shape: ListBucketMetricsConfigurationsRequest)
2972
3174
  o.output = Shapes::ShapeRef.new(shape: ListBucketMetricsConfigurationsOutput)
2973
3175
  end)
@@ -2983,7 +3185,7 @@ module Aws::S3
2983
3185
  api.add_operation(:list_multipart_uploads, Seahorse::Model::Operation.new.tap do |o|
2984
3186
  o.name = "ListMultipartUploads"
2985
3187
  o.http_method = "GET"
2986
- o.http_request_uri = "/{Bucket}?uploads"
3188
+ o.http_request_uri = "/?uploads"
2987
3189
  o.input = Shapes::ShapeRef.new(shape: ListMultipartUploadsRequest)
2988
3190
  o.output = Shapes::ShapeRef.new(shape: ListMultipartUploadsOutput)
2989
3191
  o[:pager] = Aws::Pager.new(
@@ -2999,7 +3201,7 @@ module Aws::S3
2999
3201
  api.add_operation(:list_object_versions, Seahorse::Model::Operation.new.tap do |o|
3000
3202
  o.name = "ListObjectVersions"
3001
3203
  o.http_method = "GET"
3002
- o.http_request_uri = "/{Bucket}?versions"
3204
+ o.http_request_uri = "/?versions"
3003
3205
  o.input = Shapes::ShapeRef.new(shape: ListObjectVersionsRequest)
3004
3206
  o.output = Shapes::ShapeRef.new(shape: ListObjectVersionsOutput)
3005
3207
  o[:pager] = Aws::Pager.new(
@@ -3015,7 +3217,7 @@ module Aws::S3
3015
3217
  api.add_operation(:list_objects, Seahorse::Model::Operation.new.tap do |o|
3016
3218
  o.name = "ListObjects"
3017
3219
  o.http_method = "GET"
3018
- o.http_request_uri = "/{Bucket}"
3220
+ o.http_request_uri = "/"
3019
3221
  o.input = Shapes::ShapeRef.new(shape: ListObjectsRequest)
3020
3222
  o.output = Shapes::ShapeRef.new(shape: ListObjectsOutput)
3021
3223
  o.errors << Shapes::ShapeRef.new(shape: NoSuchBucket)
@@ -3031,7 +3233,7 @@ module Aws::S3
3031
3233
  api.add_operation(:list_objects_v2, Seahorse::Model::Operation.new.tap do |o|
3032
3234
  o.name = "ListObjectsV2"
3033
3235
  o.http_method = "GET"
3034
- o.http_request_uri = "/{Bucket}?list-type=2"
3236
+ o.http_request_uri = "/?list-type=2"
3035
3237
  o.input = Shapes::ShapeRef.new(shape: ListObjectsV2Request)
3036
3238
  o.output = Shapes::ShapeRef.new(shape: ListObjectsV2Output)
3037
3239
  o.errors << Shapes::ShapeRef.new(shape: NoSuchBucket)
@@ -3046,7 +3248,7 @@ module Aws::S3
3046
3248
  api.add_operation(:list_parts, Seahorse::Model::Operation.new.tap do |o|
3047
3249
  o.name = "ListParts"
3048
3250
  o.http_method = "GET"
3049
- o.http_request_uri = "/{Bucket}/{Key+}"
3251
+ o.http_request_uri = "/{Key+}"
3050
3252
  o.input = Shapes::ShapeRef.new(shape: ListPartsRequest)
3051
3253
  o.output = Shapes::ShapeRef.new(shape: ListPartsOutput)
3052
3254
  o[:pager] = Aws::Pager.new(
@@ -3061,7 +3263,15 @@ module Aws::S3
3061
3263
  api.add_operation(:put_bucket_accelerate_configuration, Seahorse::Model::Operation.new.tap do |o|
3062
3264
  o.name = "PutBucketAccelerateConfiguration"
3063
3265
  o.http_method = "PUT"
3064
- o.http_request_uri = "/{Bucket}?accelerate"
3266
+ o.http_request_uri = "/?accelerate"
3267
+ o.http_checksum = {
3268
+ "requestAlgorithmMember" => "checksum_algorithm",
3269
+ "requestChecksumRequired" => false,
3270
+ }
3271
+ o.http_checksum = {
3272
+ "requestAlgorithmMember" => "checksum_algorithm",
3273
+ "requestChecksumRequired" => false,
3274
+ }
3065
3275
  o.input = Shapes::ShapeRef.new(shape: PutBucketAccelerateConfigurationRequest)
3066
3276
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
3067
3277
  end)
@@ -3069,8 +3279,15 @@ module Aws::S3
3069
3279
  api.add_operation(:put_bucket_acl, Seahorse::Model::Operation.new.tap do |o|
3070
3280
  o.name = "PutBucketAcl"
3071
3281
  o.http_method = "PUT"
3072
- o.http_request_uri = "/{Bucket}?acl"
3073
- o.http_checksum_required = true
3282
+ o.http_request_uri = "/?acl"
3283
+ o.http_checksum = {
3284
+ "requestAlgorithmMember" => "checksum_algorithm",
3285
+ "requestChecksumRequired" => true,
3286
+ }
3287
+ o.http_checksum = {
3288
+ "requestAlgorithmMember" => "checksum_algorithm",
3289
+ "requestChecksumRequired" => true,
3290
+ }
3074
3291
  o.input = Shapes::ShapeRef.new(shape: PutBucketAclRequest)
3075
3292
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
3076
3293
  end)
@@ -3078,7 +3295,7 @@ module Aws::S3
3078
3295
  api.add_operation(:put_bucket_analytics_configuration, Seahorse::Model::Operation.new.tap do |o|
3079
3296
  o.name = "PutBucketAnalyticsConfiguration"
3080
3297
  o.http_method = "PUT"
3081
- o.http_request_uri = "/{Bucket}?analytics"
3298
+ o.http_request_uri = "/?analytics"
3082
3299
  o.input = Shapes::ShapeRef.new(shape: PutBucketAnalyticsConfigurationRequest)
3083
3300
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
3084
3301
  end)
@@ -3086,8 +3303,15 @@ module Aws::S3
3086
3303
  api.add_operation(:put_bucket_cors, Seahorse::Model::Operation.new.tap do |o|
3087
3304
  o.name = "PutBucketCors"
3088
3305
  o.http_method = "PUT"
3089
- o.http_request_uri = "/{Bucket}?cors"
3090
- o.http_checksum_required = true
3306
+ o.http_request_uri = "/?cors"
3307
+ o.http_checksum = {
3308
+ "requestAlgorithmMember" => "checksum_algorithm",
3309
+ "requestChecksumRequired" => true,
3310
+ }
3311
+ o.http_checksum = {
3312
+ "requestAlgorithmMember" => "checksum_algorithm",
3313
+ "requestChecksumRequired" => true,
3314
+ }
3091
3315
  o.input = Shapes::ShapeRef.new(shape: PutBucketCorsRequest)
3092
3316
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
3093
3317
  end)
@@ -3095,8 +3319,15 @@ module Aws::S3
3095
3319
  api.add_operation(:put_bucket_encryption, Seahorse::Model::Operation.new.tap do |o|
3096
3320
  o.name = "PutBucketEncryption"
3097
3321
  o.http_method = "PUT"
3098
- o.http_request_uri = "/{Bucket}?encryption"
3099
- o.http_checksum_required = true
3322
+ o.http_request_uri = "/?encryption"
3323
+ o.http_checksum = {
3324
+ "requestAlgorithmMember" => "checksum_algorithm",
3325
+ "requestChecksumRequired" => true,
3326
+ }
3327
+ o.http_checksum = {
3328
+ "requestAlgorithmMember" => "checksum_algorithm",
3329
+ "requestChecksumRequired" => true,
3330
+ }
3100
3331
  o.input = Shapes::ShapeRef.new(shape: PutBucketEncryptionRequest)
3101
3332
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
3102
3333
  end)
@@ -3104,7 +3335,7 @@ module Aws::S3
3104
3335
  api.add_operation(:put_bucket_intelligent_tiering_configuration, Seahorse::Model::Operation.new.tap do |o|
3105
3336
  o.name = "PutBucketIntelligentTieringConfiguration"
3106
3337
  o.http_method = "PUT"
3107
- o.http_request_uri = "/{Bucket}?intelligent-tiering"
3338
+ o.http_request_uri = "/?intelligent-tiering"
3108
3339
  o.input = Shapes::ShapeRef.new(shape: PutBucketIntelligentTieringConfigurationRequest)
3109
3340
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
3110
3341
  end)
@@ -3112,7 +3343,7 @@ module Aws::S3
3112
3343
  api.add_operation(:put_bucket_inventory_configuration, Seahorse::Model::Operation.new.tap do |o|
3113
3344
  o.name = "PutBucketInventoryConfiguration"
3114
3345
  o.http_method = "PUT"
3115
- o.http_request_uri = "/{Bucket}?inventory"
3346
+ o.http_request_uri = "/?inventory"
3116
3347
  o.input = Shapes::ShapeRef.new(shape: PutBucketInventoryConfigurationRequest)
3117
3348
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
3118
3349
  end)
@@ -3120,8 +3351,15 @@ module Aws::S3
3120
3351
  api.add_operation(:put_bucket_lifecycle, Seahorse::Model::Operation.new.tap do |o|
3121
3352
  o.name = "PutBucketLifecycle"
3122
3353
  o.http_method = "PUT"
3123
- o.http_request_uri = "/{Bucket}?lifecycle"
3124
- o.http_checksum_required = true
3354
+ o.http_request_uri = "/?lifecycle"
3355
+ o.http_checksum = {
3356
+ "requestAlgorithmMember" => "checksum_algorithm",
3357
+ "requestChecksumRequired" => true,
3358
+ }
3359
+ o.http_checksum = {
3360
+ "requestAlgorithmMember" => "checksum_algorithm",
3361
+ "requestChecksumRequired" => true,
3362
+ }
3125
3363
  o.deprecated = true
3126
3364
  o.input = Shapes::ShapeRef.new(shape: PutBucketLifecycleRequest)
3127
3365
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
@@ -3130,8 +3368,15 @@ module Aws::S3
3130
3368
  api.add_operation(:put_bucket_lifecycle_configuration, Seahorse::Model::Operation.new.tap do |o|
3131
3369
  o.name = "PutBucketLifecycleConfiguration"
3132
3370
  o.http_method = "PUT"
3133
- o.http_request_uri = "/{Bucket}?lifecycle"
3134
- o.http_checksum_required = true
3371
+ o.http_request_uri = "/?lifecycle"
3372
+ o.http_checksum = {
3373
+ "requestAlgorithmMember" => "checksum_algorithm",
3374
+ "requestChecksumRequired" => true,
3375
+ }
3376
+ o.http_checksum = {
3377
+ "requestAlgorithmMember" => "checksum_algorithm",
3378
+ "requestChecksumRequired" => true,
3379
+ }
3135
3380
  o.input = Shapes::ShapeRef.new(shape: PutBucketLifecycleConfigurationRequest)
3136
3381
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
3137
3382
  end)
@@ -3139,8 +3384,15 @@ module Aws::S3
3139
3384
  api.add_operation(:put_bucket_logging, Seahorse::Model::Operation.new.tap do |o|
3140
3385
  o.name = "PutBucketLogging"
3141
3386
  o.http_method = "PUT"
3142
- o.http_request_uri = "/{Bucket}?logging"
3143
- o.http_checksum_required = true
3387
+ o.http_request_uri = "/?logging"
3388
+ o.http_checksum = {
3389
+ "requestAlgorithmMember" => "checksum_algorithm",
3390
+ "requestChecksumRequired" => true,
3391
+ }
3392
+ o.http_checksum = {
3393
+ "requestAlgorithmMember" => "checksum_algorithm",
3394
+ "requestChecksumRequired" => true,
3395
+ }
3144
3396
  o.input = Shapes::ShapeRef.new(shape: PutBucketLoggingRequest)
3145
3397
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
3146
3398
  end)
@@ -3148,7 +3400,7 @@ module Aws::S3
3148
3400
  api.add_operation(:put_bucket_metrics_configuration, Seahorse::Model::Operation.new.tap do |o|
3149
3401
  o.name = "PutBucketMetricsConfiguration"
3150
3402
  o.http_method = "PUT"
3151
- o.http_request_uri = "/{Bucket}?metrics"
3403
+ o.http_request_uri = "/?metrics"
3152
3404
  o.input = Shapes::ShapeRef.new(shape: PutBucketMetricsConfigurationRequest)
3153
3405
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
3154
3406
  end)
@@ -3156,8 +3408,15 @@ module Aws::S3
3156
3408
  api.add_operation(:put_bucket_notification, Seahorse::Model::Operation.new.tap do |o|
3157
3409
  o.name = "PutBucketNotification"
3158
3410
  o.http_method = "PUT"
3159
- o.http_request_uri = "/{Bucket}?notification"
3160
- o.http_checksum_required = true
3411
+ o.http_request_uri = "/?notification"
3412
+ o.http_checksum = {
3413
+ "requestAlgorithmMember" => "checksum_algorithm",
3414
+ "requestChecksumRequired" => true,
3415
+ }
3416
+ o.http_checksum = {
3417
+ "requestAlgorithmMember" => "checksum_algorithm",
3418
+ "requestChecksumRequired" => true,
3419
+ }
3161
3420
  o.deprecated = true
3162
3421
  o.input = Shapes::ShapeRef.new(shape: PutBucketNotificationRequest)
3163
3422
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
@@ -3166,7 +3425,7 @@ module Aws::S3
3166
3425
  api.add_operation(:put_bucket_notification_configuration, Seahorse::Model::Operation.new.tap do |o|
3167
3426
  o.name = "PutBucketNotificationConfiguration"
3168
3427
  o.http_method = "PUT"
3169
- o.http_request_uri = "/{Bucket}?notification"
3428
+ o.http_request_uri = "/?notification"
3170
3429
  o.input = Shapes::ShapeRef.new(shape: PutBucketNotificationConfigurationRequest)
3171
3430
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
3172
3431
  end)
@@ -3174,8 +3433,10 @@ module Aws::S3
3174
3433
  api.add_operation(:put_bucket_ownership_controls, Seahorse::Model::Operation.new.tap do |o|
3175
3434
  o.name = "PutBucketOwnershipControls"
3176
3435
  o.http_method = "PUT"
3177
- o.http_request_uri = "/{Bucket}?ownershipControls"
3178
- o.http_checksum_required = true
3436
+ o.http_request_uri = "/?ownershipControls"
3437
+ o.http_checksum = {
3438
+ "requestChecksumRequired" => true,
3439
+ }
3179
3440
  o.input = Shapes::ShapeRef.new(shape: PutBucketOwnershipControlsRequest)
3180
3441
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
3181
3442
  end)
@@ -3183,8 +3444,15 @@ module Aws::S3
3183
3444
  api.add_operation(:put_bucket_policy, Seahorse::Model::Operation.new.tap do |o|
3184
3445
  o.name = "PutBucketPolicy"
3185
3446
  o.http_method = "PUT"
3186
- o.http_request_uri = "/{Bucket}?policy"
3187
- o.http_checksum_required = true
3447
+ o.http_request_uri = "/?policy"
3448
+ o.http_checksum = {
3449
+ "requestAlgorithmMember" => "checksum_algorithm",
3450
+ "requestChecksumRequired" => true,
3451
+ }
3452
+ o.http_checksum = {
3453
+ "requestAlgorithmMember" => "checksum_algorithm",
3454
+ "requestChecksumRequired" => true,
3455
+ }
3188
3456
  o.input = Shapes::ShapeRef.new(shape: PutBucketPolicyRequest)
3189
3457
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
3190
3458
  end)
@@ -3192,8 +3460,15 @@ module Aws::S3
3192
3460
  api.add_operation(:put_bucket_replication, Seahorse::Model::Operation.new.tap do |o|
3193
3461
  o.name = "PutBucketReplication"
3194
3462
  o.http_method = "PUT"
3195
- o.http_request_uri = "/{Bucket}?replication"
3196
- o.http_checksum_required = true
3463
+ o.http_request_uri = "/?replication"
3464
+ o.http_checksum = {
3465
+ "requestAlgorithmMember" => "checksum_algorithm",
3466
+ "requestChecksumRequired" => true,
3467
+ }
3468
+ o.http_checksum = {
3469
+ "requestAlgorithmMember" => "checksum_algorithm",
3470
+ "requestChecksumRequired" => true,
3471
+ }
3197
3472
  o.input = Shapes::ShapeRef.new(shape: PutBucketReplicationRequest)
3198
3473
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
3199
3474
  end)
@@ -3201,8 +3476,15 @@ module Aws::S3
3201
3476
  api.add_operation(:put_bucket_request_payment, Seahorse::Model::Operation.new.tap do |o|
3202
3477
  o.name = "PutBucketRequestPayment"
3203
3478
  o.http_method = "PUT"
3204
- o.http_request_uri = "/{Bucket}?requestPayment"
3205
- o.http_checksum_required = true
3479
+ o.http_request_uri = "/?requestPayment"
3480
+ o.http_checksum = {
3481
+ "requestAlgorithmMember" => "checksum_algorithm",
3482
+ "requestChecksumRequired" => true,
3483
+ }
3484
+ o.http_checksum = {
3485
+ "requestAlgorithmMember" => "checksum_algorithm",
3486
+ "requestChecksumRequired" => true,
3487
+ }
3206
3488
  o.input = Shapes::ShapeRef.new(shape: PutBucketRequestPaymentRequest)
3207
3489
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
3208
3490
  end)
@@ -3210,8 +3492,15 @@ module Aws::S3
3210
3492
  api.add_operation(:put_bucket_tagging, Seahorse::Model::Operation.new.tap do |o|
3211
3493
  o.name = "PutBucketTagging"
3212
3494
  o.http_method = "PUT"
3213
- o.http_request_uri = "/{Bucket}?tagging"
3214
- o.http_checksum_required = true
3495
+ o.http_request_uri = "/?tagging"
3496
+ o.http_checksum = {
3497
+ "requestAlgorithmMember" => "checksum_algorithm",
3498
+ "requestChecksumRequired" => true,
3499
+ }
3500
+ o.http_checksum = {
3501
+ "requestAlgorithmMember" => "checksum_algorithm",
3502
+ "requestChecksumRequired" => true,
3503
+ }
3215
3504
  o.input = Shapes::ShapeRef.new(shape: PutBucketTaggingRequest)
3216
3505
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
3217
3506
  end)
@@ -3219,8 +3508,15 @@ module Aws::S3
3219
3508
  api.add_operation(:put_bucket_versioning, Seahorse::Model::Operation.new.tap do |o|
3220
3509
  o.name = "PutBucketVersioning"
3221
3510
  o.http_method = "PUT"
3222
- o.http_request_uri = "/{Bucket}?versioning"
3223
- o.http_checksum_required = true
3511
+ o.http_request_uri = "/?versioning"
3512
+ o.http_checksum = {
3513
+ "requestAlgorithmMember" => "checksum_algorithm",
3514
+ "requestChecksumRequired" => true,
3515
+ }
3516
+ o.http_checksum = {
3517
+ "requestAlgorithmMember" => "checksum_algorithm",
3518
+ "requestChecksumRequired" => true,
3519
+ }
3224
3520
  o.input = Shapes::ShapeRef.new(shape: PutBucketVersioningRequest)
3225
3521
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
3226
3522
  end)
@@ -3228,8 +3524,15 @@ module Aws::S3
3228
3524
  api.add_operation(:put_bucket_website, Seahorse::Model::Operation.new.tap do |o|
3229
3525
  o.name = "PutBucketWebsite"
3230
3526
  o.http_method = "PUT"
3231
- o.http_request_uri = "/{Bucket}?website"
3232
- o.http_checksum_required = true
3527
+ o.http_request_uri = "/?website"
3528
+ o.http_checksum = {
3529
+ "requestAlgorithmMember" => "checksum_algorithm",
3530
+ "requestChecksumRequired" => true,
3531
+ }
3532
+ o.http_checksum = {
3533
+ "requestAlgorithmMember" => "checksum_algorithm",
3534
+ "requestChecksumRequired" => true,
3535
+ }
3233
3536
  o.input = Shapes::ShapeRef.new(shape: PutBucketWebsiteRequest)
3234
3537
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
3235
3538
  end)
@@ -3237,7 +3540,15 @@ module Aws::S3
3237
3540
  api.add_operation(:put_object, Seahorse::Model::Operation.new.tap do |o|
3238
3541
  o.name = "PutObject"
3239
3542
  o.http_method = "PUT"
3240
- o.http_request_uri = "/{Bucket}/{Key+}"
3543
+ o.http_request_uri = "/{Key+}"
3544
+ o.http_checksum = {
3545
+ "requestAlgorithmMember" => "checksum_algorithm",
3546
+ "requestChecksumRequired" => false,
3547
+ }
3548
+ o.http_checksum = {
3549
+ "requestAlgorithmMember" => "checksum_algorithm",
3550
+ "requestChecksumRequired" => false,
3551
+ }
3241
3552
  o.input = Shapes::ShapeRef.new(shape: PutObjectRequest)
3242
3553
  o.output = Shapes::ShapeRef.new(shape: PutObjectOutput)
3243
3554
  end)
@@ -3245,8 +3556,15 @@ module Aws::S3
3245
3556
  api.add_operation(:put_object_acl, Seahorse::Model::Operation.new.tap do |o|
3246
3557
  o.name = "PutObjectAcl"
3247
3558
  o.http_method = "PUT"
3248
- o.http_request_uri = "/{Bucket}/{Key+}?acl"
3249
- o.http_checksum_required = true
3559
+ o.http_request_uri = "/{Key+}?acl"
3560
+ o.http_checksum = {
3561
+ "requestAlgorithmMember" => "checksum_algorithm",
3562
+ "requestChecksumRequired" => true,
3563
+ }
3564
+ o.http_checksum = {
3565
+ "requestAlgorithmMember" => "checksum_algorithm",
3566
+ "requestChecksumRequired" => true,
3567
+ }
3250
3568
  o.input = Shapes::ShapeRef.new(shape: PutObjectAclRequest)
3251
3569
  o.output = Shapes::ShapeRef.new(shape: PutObjectAclOutput)
3252
3570
  o.errors << Shapes::ShapeRef.new(shape: NoSuchKey)
@@ -3255,8 +3573,15 @@ module Aws::S3
3255
3573
  api.add_operation(:put_object_legal_hold, Seahorse::Model::Operation.new.tap do |o|
3256
3574
  o.name = "PutObjectLegalHold"
3257
3575
  o.http_method = "PUT"
3258
- o.http_request_uri = "/{Bucket}/{Key+}?legal-hold"
3259
- o.http_checksum_required = true
3576
+ o.http_request_uri = "/{Key+}?legal-hold"
3577
+ o.http_checksum = {
3578
+ "requestAlgorithmMember" => "checksum_algorithm",
3579
+ "requestChecksumRequired" => true,
3580
+ }
3581
+ o.http_checksum = {
3582
+ "requestAlgorithmMember" => "checksum_algorithm",
3583
+ "requestChecksumRequired" => true,
3584
+ }
3260
3585
  o.input = Shapes::ShapeRef.new(shape: PutObjectLegalHoldRequest)
3261
3586
  o.output = Shapes::ShapeRef.new(shape: PutObjectLegalHoldOutput)
3262
3587
  end)
@@ -3264,8 +3589,15 @@ module Aws::S3
3264
3589
  api.add_operation(:put_object_lock_configuration, Seahorse::Model::Operation.new.tap do |o|
3265
3590
  o.name = "PutObjectLockConfiguration"
3266
3591
  o.http_method = "PUT"
3267
- o.http_request_uri = "/{Bucket}?object-lock"
3268
- o.http_checksum_required = true
3592
+ o.http_request_uri = "/?object-lock"
3593
+ o.http_checksum = {
3594
+ "requestAlgorithmMember" => "checksum_algorithm",
3595
+ "requestChecksumRequired" => true,
3596
+ }
3597
+ o.http_checksum = {
3598
+ "requestAlgorithmMember" => "checksum_algorithm",
3599
+ "requestChecksumRequired" => true,
3600
+ }
3269
3601
  o.input = Shapes::ShapeRef.new(shape: PutObjectLockConfigurationRequest)
3270
3602
  o.output = Shapes::ShapeRef.new(shape: PutObjectLockConfigurationOutput)
3271
3603
  end)
@@ -3273,8 +3605,15 @@ module Aws::S3
3273
3605
  api.add_operation(:put_object_retention, Seahorse::Model::Operation.new.tap do |o|
3274
3606
  o.name = "PutObjectRetention"
3275
3607
  o.http_method = "PUT"
3276
- o.http_request_uri = "/{Bucket}/{Key+}?retention"
3277
- o.http_checksum_required = true
3608
+ o.http_request_uri = "/{Key+}?retention"
3609
+ o.http_checksum = {
3610
+ "requestAlgorithmMember" => "checksum_algorithm",
3611
+ "requestChecksumRequired" => true,
3612
+ }
3613
+ o.http_checksum = {
3614
+ "requestAlgorithmMember" => "checksum_algorithm",
3615
+ "requestChecksumRequired" => true,
3616
+ }
3278
3617
  o.input = Shapes::ShapeRef.new(shape: PutObjectRetentionRequest)
3279
3618
  o.output = Shapes::ShapeRef.new(shape: PutObjectRetentionOutput)
3280
3619
  end)
@@ -3282,8 +3621,15 @@ module Aws::S3
3282
3621
  api.add_operation(:put_object_tagging, Seahorse::Model::Operation.new.tap do |o|
3283
3622
  o.name = "PutObjectTagging"
3284
3623
  o.http_method = "PUT"
3285
- o.http_request_uri = "/{Bucket}/{Key+}?tagging"
3286
- o.http_checksum_required = true
3624
+ o.http_request_uri = "/{Key+}?tagging"
3625
+ o.http_checksum = {
3626
+ "requestAlgorithmMember" => "checksum_algorithm",
3627
+ "requestChecksumRequired" => true,
3628
+ }
3629
+ o.http_checksum = {
3630
+ "requestAlgorithmMember" => "checksum_algorithm",
3631
+ "requestChecksumRequired" => true,
3632
+ }
3287
3633
  o.input = Shapes::ShapeRef.new(shape: PutObjectTaggingRequest)
3288
3634
  o.output = Shapes::ShapeRef.new(shape: PutObjectTaggingOutput)
3289
3635
  end)
@@ -3291,8 +3637,15 @@ module Aws::S3
3291
3637
  api.add_operation(:put_public_access_block, Seahorse::Model::Operation.new.tap do |o|
3292
3638
  o.name = "PutPublicAccessBlock"
3293
3639
  o.http_method = "PUT"
3294
- o.http_request_uri = "/{Bucket}?publicAccessBlock"
3295
- o.http_checksum_required = true
3640
+ o.http_request_uri = "/?publicAccessBlock"
3641
+ o.http_checksum = {
3642
+ "requestAlgorithmMember" => "checksum_algorithm",
3643
+ "requestChecksumRequired" => true,
3644
+ }
3645
+ o.http_checksum = {
3646
+ "requestAlgorithmMember" => "checksum_algorithm",
3647
+ "requestChecksumRequired" => true,
3648
+ }
3296
3649
  o.input = Shapes::ShapeRef.new(shape: PutPublicAccessBlockRequest)
3297
3650
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
3298
3651
  end)
@@ -3300,7 +3653,15 @@ module Aws::S3
3300
3653
  api.add_operation(:restore_object, Seahorse::Model::Operation.new.tap do |o|
3301
3654
  o.name = "RestoreObject"
3302
3655
  o.http_method = "POST"
3303
- o.http_request_uri = "/{Bucket}/{Key+}?restore"
3656
+ o.http_request_uri = "/{Key+}?restore"
3657
+ o.http_checksum = {
3658
+ "requestAlgorithmMember" => "checksum_algorithm",
3659
+ "requestChecksumRequired" => false,
3660
+ }
3661
+ o.http_checksum = {
3662
+ "requestAlgorithmMember" => "checksum_algorithm",
3663
+ "requestChecksumRequired" => false,
3664
+ }
3304
3665
  o.input = Shapes::ShapeRef.new(shape: RestoreObjectRequest)
3305
3666
  o.output = Shapes::ShapeRef.new(shape: RestoreObjectOutput)
3306
3667
  o.errors << Shapes::ShapeRef.new(shape: ObjectAlreadyInActiveTierError)
@@ -3309,7 +3670,7 @@ module Aws::S3
3309
3670
  api.add_operation(:select_object_content, Seahorse::Model::Operation.new.tap do |o|
3310
3671
  o.name = "SelectObjectContent"
3311
3672
  o.http_method = "POST"
3312
- o.http_request_uri = "/{Bucket}/{Key+}?select&select-type=2"
3673
+ o.http_request_uri = "/{Key+}?select&select-type=2"
3313
3674
  o.input = Shapes::ShapeRef.new(shape: SelectObjectContentRequest,
3314
3675
  location_name: "SelectObjectContentRequest",
3315
3676
  metadata: {
@@ -3322,7 +3683,15 @@ module Aws::S3
3322
3683
  api.add_operation(:upload_part, Seahorse::Model::Operation.new.tap do |o|
3323
3684
  o.name = "UploadPart"
3324
3685
  o.http_method = "PUT"
3325
- o.http_request_uri = "/{Bucket}/{Key+}"
3686
+ o.http_request_uri = "/{Key+}"
3687
+ o.http_checksum = {
3688
+ "requestAlgorithmMember" => "checksum_algorithm",
3689
+ "requestChecksumRequired" => false,
3690
+ }
3691
+ o.http_checksum = {
3692
+ "requestAlgorithmMember" => "checksum_algorithm",
3693
+ "requestChecksumRequired" => false,
3694
+ }
3326
3695
  o.input = Shapes::ShapeRef.new(shape: UploadPartRequest)
3327
3696
  o.output = Shapes::ShapeRef.new(shape: UploadPartOutput)
3328
3697
  end)
@@ -3330,7 +3699,7 @@ module Aws::S3
3330
3699
  api.add_operation(:upload_part_copy, Seahorse::Model::Operation.new.tap do |o|
3331
3700
  o.name = "UploadPartCopy"
3332
3701
  o.http_method = "PUT"
3333
- o.http_request_uri = "/{Bucket}/{Key+}"
3702
+ o.http_request_uri = "/{Key+}"
3334
3703
  o.input = Shapes::ShapeRef.new(shape: UploadPartCopyRequest)
3335
3704
  o.output = Shapes::ShapeRef.new(shape: UploadPartCopyOutput)
3336
3705
  end)