aws-sdk-s3 1.103.0 → 1.120.0

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