aws-sdk-s3 1.36.0 → 1.95.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (98) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGELOG.md +768 -0
  3. data/LICENSE.txt +202 -0
  4. data/VERSION +1 -0
  5. data/lib/aws-sdk-s3/arn/access_point_arn.rb +69 -0
  6. data/lib/aws-sdk-s3/arn/object_lambda_arn.rb +69 -0
  7. data/lib/aws-sdk-s3/arn/outpost_access_point_arn.rb +73 -0
  8. data/lib/aws-sdk-s3/bucket.rb +277 -76
  9. data/lib/aws-sdk-s3/bucket_acl.rb +40 -15
  10. data/lib/aws-sdk-s3/bucket_cors.rb +50 -14
  11. data/lib/aws-sdk-s3/bucket_lifecycle.rb +33 -14
  12. data/lib/aws-sdk-s3/bucket_lifecycle_configuration.rb +32 -14
  13. data/lib/aws-sdk-s3/bucket_logging.rb +35 -15
  14. data/lib/aws-sdk-s3/bucket_notification.rb +32 -18
  15. data/lib/aws-sdk-s3/bucket_policy.rb +34 -13
  16. data/lib/aws-sdk-s3/bucket_region_cache.rb +2 -0
  17. data/lib/aws-sdk-s3/bucket_request_payment.rb +34 -12
  18. data/lib/aws-sdk-s3/bucket_tagging.rb +42 -14
  19. data/lib/aws-sdk-s3/bucket_versioning.rb +67 -12
  20. data/lib/aws-sdk-s3/bucket_website.rb +49 -17
  21. data/lib/aws-sdk-s3/client.rb +7494 -618
  22. data/lib/aws-sdk-s3/client_api.rb +417 -2
  23. data/lib/aws-sdk-s3/customizations/bucket.rb +59 -16
  24. data/lib/aws-sdk-s3/customizations/multipart_upload.rb +2 -0
  25. data/lib/aws-sdk-s3/customizations/object.rb +125 -60
  26. data/lib/aws-sdk-s3/customizations/object_summary.rb +5 -0
  27. data/lib/aws-sdk-s3/customizations/types/list_object_versions_output.rb +2 -0
  28. data/lib/aws-sdk-s3/customizations.rb +4 -1
  29. data/lib/aws-sdk-s3/encryption/client.rb +22 -5
  30. data/lib/aws-sdk-s3/encryption/decrypt_handler.rb +72 -26
  31. data/lib/aws-sdk-s3/encryption/default_cipher_provider.rb +43 -5
  32. data/lib/aws-sdk-s3/encryption/default_key_provider.rb +2 -0
  33. data/lib/aws-sdk-s3/encryption/encrypt_handler.rb +13 -2
  34. data/lib/aws-sdk-s3/encryption/errors.rb +2 -0
  35. data/lib/aws-sdk-s3/encryption/io_auth_decrypter.rb +2 -0
  36. data/lib/aws-sdk-s3/encryption/io_decrypter.rb +11 -3
  37. data/lib/aws-sdk-s3/encryption/io_encrypter.rb +2 -0
  38. data/lib/aws-sdk-s3/encryption/key_provider.rb +2 -0
  39. data/lib/aws-sdk-s3/encryption/kms_cipher_provider.rb +34 -3
  40. data/lib/aws-sdk-s3/encryption/materials.rb +8 -6
  41. data/lib/aws-sdk-s3/encryption/utils.rb +25 -0
  42. data/lib/aws-sdk-s3/encryption.rb +4 -0
  43. data/lib/aws-sdk-s3/encryptionV2/client.rb +566 -0
  44. data/lib/aws-sdk-s3/encryptionV2/decrypt_handler.rb +226 -0
  45. data/lib/aws-sdk-s3/encryptionV2/default_cipher_provider.rb +170 -0
  46. data/lib/aws-sdk-s3/encryptionV2/default_key_provider.rb +40 -0
  47. data/lib/aws-sdk-s3/encryptionV2/encrypt_handler.rb +69 -0
  48. data/lib/aws-sdk-s3/encryptionV2/errors.rb +37 -0
  49. data/lib/aws-sdk-s3/encryptionV2/io_auth_decrypter.rb +58 -0
  50. data/lib/aws-sdk-s3/encryptionV2/io_decrypter.rb +37 -0
  51. data/lib/aws-sdk-s3/encryptionV2/io_encrypter.rb +73 -0
  52. data/lib/aws-sdk-s3/encryptionV2/key_provider.rb +31 -0
  53. data/lib/aws-sdk-s3/encryptionV2/kms_cipher_provider.rb +169 -0
  54. data/lib/aws-sdk-s3/encryptionV2/materials.rb +60 -0
  55. data/lib/aws-sdk-s3/encryptionV2/utils.rb +103 -0
  56. data/lib/aws-sdk-s3/encryption_v2.rb +23 -0
  57. data/lib/aws-sdk-s3/errors.rb +123 -1
  58. data/lib/aws-sdk-s3/event_streams.rb +15 -8
  59. data/lib/aws-sdk-s3/file_downloader.rb +10 -8
  60. data/lib/aws-sdk-s3/file_part.rb +11 -6
  61. data/lib/aws-sdk-s3/file_uploader.rb +28 -14
  62. data/lib/aws-sdk-s3/legacy_signer.rb +17 -25
  63. data/lib/aws-sdk-s3/multipart_file_uploader.rb +53 -13
  64. data/lib/aws-sdk-s3/multipart_stream_uploader.rb +20 -7
  65. data/lib/aws-sdk-s3/multipart_upload.rb +64 -29
  66. data/lib/aws-sdk-s3/multipart_upload_error.rb +2 -0
  67. data/lib/aws-sdk-s3/multipart_upload_part.rb +115 -42
  68. data/lib/aws-sdk-s3/object.rb +656 -151
  69. data/lib/aws-sdk-s3/object_acl.rb +64 -21
  70. data/lib/aws-sdk-s3/object_copier.rb +2 -0
  71. data/lib/aws-sdk-s3/object_multipart_copier.rb +2 -0
  72. data/lib/aws-sdk-s3/object_summary.rb +474 -138
  73. data/lib/aws-sdk-s3/object_version.rb +122 -58
  74. data/lib/aws-sdk-s3/plugins/accelerate.rb +32 -38
  75. data/lib/aws-sdk-s3/plugins/arn.rb +228 -0
  76. data/lib/aws-sdk-s3/plugins/bucket_dns.rb +7 -7
  77. data/lib/aws-sdk-s3/plugins/bucket_name_restrictions.rb +25 -3
  78. data/lib/aws-sdk-s3/plugins/dualstack.rb +15 -4
  79. data/lib/aws-sdk-s3/plugins/expect_100_continue.rb +4 -4
  80. data/lib/aws-sdk-s3/plugins/get_bucket_location_fix.rb +2 -0
  81. data/lib/aws-sdk-s3/plugins/http_200_errors.rb +11 -3
  82. data/lib/aws-sdk-s3/plugins/iad_regional_endpoint.rb +67 -0
  83. data/lib/aws-sdk-s3/plugins/location_constraint.rb +2 -0
  84. data/lib/aws-sdk-s3/plugins/md5s.rb +30 -28
  85. data/lib/aws-sdk-s3/plugins/object_lambda_endpoint.rb +25 -0
  86. data/lib/aws-sdk-s3/plugins/redirects.rb +2 -0
  87. data/lib/aws-sdk-s3/plugins/s3_host_id.rb +2 -0
  88. data/lib/aws-sdk-s3/plugins/s3_signer.rb +64 -35
  89. data/lib/aws-sdk-s3/plugins/sse_cpk.rb +3 -1
  90. data/lib/aws-sdk-s3/plugins/streaming_retry.rb +118 -0
  91. data/lib/aws-sdk-s3/plugins/url_encoded_keys.rb +2 -0
  92. data/lib/aws-sdk-s3/presigned_post.rb +72 -32
  93. data/lib/aws-sdk-s3/presigner.rb +162 -66
  94. data/lib/aws-sdk-s3/resource.rb +23 -5
  95. data/lib/aws-sdk-s3/types.rb +6441 -952
  96. data/lib/aws-sdk-s3/waiters.rb +67 -1
  97. data/lib/aws-sdk-s3.rb +12 -6
  98. metadata +35 -12
@@ -1,7 +1,9 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
4
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
5
7
  #
6
8
  # WARNING ABOUT GENERATED CODE
7
9
 
@@ -36,12 +38,14 @@ module Aws::S3
36
38
  AnalyticsId = Shapes::StringShape.new(name: 'AnalyticsId')
37
39
  AnalyticsS3BucketDestination = Shapes::StructureShape.new(name: 'AnalyticsS3BucketDestination')
38
40
  AnalyticsS3ExportFileFormat = Shapes::StringShape.new(name: 'AnalyticsS3ExportFileFormat')
41
+ ArchiveStatus = Shapes::StringShape.new(name: 'ArchiveStatus')
39
42
  Body = Shapes::BlobShape.new(name: 'Body')
40
43
  Bucket = Shapes::StructureShape.new(name: 'Bucket')
41
44
  BucketAccelerateStatus = Shapes::StringShape.new(name: 'BucketAccelerateStatus')
42
45
  BucketAlreadyExists = Shapes::StructureShape.new(name: 'BucketAlreadyExists')
43
46
  BucketAlreadyOwnedByYou = Shapes::StructureShape.new(name: 'BucketAlreadyOwnedByYou')
44
47
  BucketCannedACL = Shapes::StringShape.new(name: 'BucketCannedACL')
48
+ BucketKeyEnabled = Shapes::BooleanShape.new(name: 'BucketKeyEnabled')
45
49
  BucketLifecycleConfiguration = Shapes::StructureShape.new(name: 'BucketLifecycleConfiguration')
46
50
  BucketLocationConstraint = Shapes::StringShape.new(name: 'BucketLocationConstraint')
47
51
  BucketLoggingStatus = Shapes::StructureShape.new(name: 'BucketLoggingStatus')
@@ -110,9 +114,11 @@ module Aws::S3
110
114
  DeleteBucketAnalyticsConfigurationRequest = Shapes::StructureShape.new(name: 'DeleteBucketAnalyticsConfigurationRequest')
111
115
  DeleteBucketCorsRequest = Shapes::StructureShape.new(name: 'DeleteBucketCorsRequest')
112
116
  DeleteBucketEncryptionRequest = Shapes::StructureShape.new(name: 'DeleteBucketEncryptionRequest')
117
+ DeleteBucketIntelligentTieringConfigurationRequest = Shapes::StructureShape.new(name: 'DeleteBucketIntelligentTieringConfigurationRequest')
113
118
  DeleteBucketInventoryConfigurationRequest = Shapes::StructureShape.new(name: 'DeleteBucketInventoryConfigurationRequest')
114
119
  DeleteBucketLifecycleRequest = Shapes::StructureShape.new(name: 'DeleteBucketLifecycleRequest')
115
120
  DeleteBucketMetricsConfigurationRequest = Shapes::StructureShape.new(name: 'DeleteBucketMetricsConfigurationRequest')
121
+ DeleteBucketOwnershipControlsRequest = Shapes::StructureShape.new(name: 'DeleteBucketOwnershipControlsRequest')
116
122
  DeleteBucketPolicyRequest = Shapes::StructureShape.new(name: 'DeleteBucketPolicyRequest')
117
123
  DeleteBucketReplicationRequest = Shapes::StructureShape.new(name: 'DeleteBucketReplicationRequest')
118
124
  DeleteBucketRequest = Shapes::StructureShape.new(name: 'DeleteBucketRequest')
@@ -143,12 +149,17 @@ module Aws::S3
143
149
  EncodingType = Shapes::StringShape.new(name: 'EncodingType')
144
150
  Encryption = Shapes::StructureShape.new(name: 'Encryption')
145
151
  EncryptionConfiguration = Shapes::StructureShape.new(name: 'EncryptionConfiguration')
152
+ End = Shapes::IntegerShape.new(name: 'End')
146
153
  EndEvent = Shapes::StructureShape.new(name: 'EndEvent')
147
154
  Error = Shapes::StructureShape.new(name: 'Error')
155
+ ErrorCode = Shapes::StringShape.new(name: 'ErrorCode')
148
156
  ErrorDocument = Shapes::StructureShape.new(name: 'ErrorDocument')
157
+ ErrorMessage = Shapes::StringShape.new(name: 'ErrorMessage')
149
158
  Errors = Shapes::ListShape.new(name: 'Errors', flattened: true)
150
159
  Event = Shapes::StringShape.new(name: 'Event')
151
160
  EventList = Shapes::ListShape.new(name: 'EventList', flattened: true)
161
+ ExistingObjectReplication = Shapes::StructureShape.new(name: 'ExistingObjectReplication')
162
+ ExistingObjectReplicationStatus = Shapes::StringShape.new(name: 'ExistingObjectReplicationStatus')
152
163
  Expiration = Shapes::StringShape.new(name: 'Expiration')
153
164
  ExpirationStatus = Shapes::StringShape.new(name: 'ExpirationStatus')
154
165
  ExpiredObjectDeleteMarker = Shapes::BooleanShape.new(name: 'ExpiredObjectDeleteMarker')
@@ -175,6 +186,8 @@ module Aws::S3
175
186
  GetBucketCorsRequest = Shapes::StructureShape.new(name: 'GetBucketCorsRequest')
176
187
  GetBucketEncryptionOutput = Shapes::StructureShape.new(name: 'GetBucketEncryptionOutput')
177
188
  GetBucketEncryptionRequest = Shapes::StructureShape.new(name: 'GetBucketEncryptionRequest')
189
+ GetBucketIntelligentTieringConfigurationOutput = Shapes::StructureShape.new(name: 'GetBucketIntelligentTieringConfigurationOutput')
190
+ GetBucketIntelligentTieringConfigurationRequest = Shapes::StructureShape.new(name: 'GetBucketIntelligentTieringConfigurationRequest')
178
191
  GetBucketInventoryConfigurationOutput = Shapes::StructureShape.new(name: 'GetBucketInventoryConfigurationOutput')
179
192
  GetBucketInventoryConfigurationRequest = Shapes::StructureShape.new(name: 'GetBucketInventoryConfigurationRequest')
180
193
  GetBucketLifecycleConfigurationOutput = Shapes::StructureShape.new(name: 'GetBucketLifecycleConfigurationOutput')
@@ -188,6 +201,8 @@ module Aws::S3
188
201
  GetBucketMetricsConfigurationOutput = Shapes::StructureShape.new(name: 'GetBucketMetricsConfigurationOutput')
189
202
  GetBucketMetricsConfigurationRequest = Shapes::StructureShape.new(name: 'GetBucketMetricsConfigurationRequest')
190
203
  GetBucketNotificationConfigurationRequest = Shapes::StructureShape.new(name: 'GetBucketNotificationConfigurationRequest')
204
+ GetBucketOwnershipControlsOutput = Shapes::StructureShape.new(name: 'GetBucketOwnershipControlsOutput')
205
+ GetBucketOwnershipControlsRequest = Shapes::StructureShape.new(name: 'GetBucketOwnershipControlsRequest')
191
206
  GetBucketPolicyOutput = Shapes::StructureShape.new(name: 'GetBucketPolicyOutput')
192
207
  GetBucketPolicyRequest = Shapes::StructureShape.new(name: 'GetBucketPolicyRequest')
193
208
  GetBucketPolicyStatusOutput = Shapes::StructureShape.new(name: 'GetBucketPolicyStatusOutput')
@@ -210,6 +225,7 @@ module Aws::S3
210
225
  GetObjectLockConfigurationRequest = Shapes::StructureShape.new(name: 'GetObjectLockConfigurationRequest')
211
226
  GetObjectOutput = Shapes::StructureShape.new(name: 'GetObjectOutput')
212
227
  GetObjectRequest = Shapes::StructureShape.new(name: 'GetObjectRequest')
228
+ GetObjectResponseStatusCode = Shapes::IntegerShape.new(name: 'GetObjectResponseStatusCode')
213
229
  GetObjectRetentionOutput = Shapes::StructureShape.new(name: 'GetObjectRetentionOutput')
214
230
  GetObjectRetentionRequest = Shapes::StructureShape.new(name: 'GetObjectRetentionRequest')
215
231
  GetObjectTaggingOutput = Shapes::StructureShape.new(name: 'GetObjectTaggingOutput')
@@ -242,6 +258,15 @@ module Aws::S3
242
258
  Initiated = Shapes::TimestampShape.new(name: 'Initiated')
243
259
  Initiator = Shapes::StructureShape.new(name: 'Initiator')
244
260
  InputSerialization = Shapes::StructureShape.new(name: 'InputSerialization')
261
+ IntelligentTieringAccessTier = Shapes::StringShape.new(name: 'IntelligentTieringAccessTier')
262
+ IntelligentTieringAndOperator = Shapes::StructureShape.new(name: 'IntelligentTieringAndOperator')
263
+ IntelligentTieringConfiguration = Shapes::StructureShape.new(name: 'IntelligentTieringConfiguration')
264
+ IntelligentTieringConfigurationList = Shapes::ListShape.new(name: 'IntelligentTieringConfigurationList', flattened: true)
265
+ IntelligentTieringDays = Shapes::IntegerShape.new(name: 'IntelligentTieringDays')
266
+ IntelligentTieringFilter = Shapes::StructureShape.new(name: 'IntelligentTieringFilter')
267
+ IntelligentTieringId = Shapes::StringShape.new(name: 'IntelligentTieringId')
268
+ IntelligentTieringStatus = Shapes::StringShape.new(name: 'IntelligentTieringStatus')
269
+ InvalidObjectState = Shapes::StructureShape.new(name: 'InvalidObjectState')
245
270
  InventoryConfiguration = Shapes::StructureShape.new(name: 'InventoryConfiguration')
246
271
  InventoryConfigurationList = Shapes::ListShape.new(name: 'InventoryConfigurationList', flattened: true)
247
272
  InventoryDestination = Shapes::StructureShape.new(name: 'InventoryDestination')
@@ -278,6 +303,8 @@ module Aws::S3
278
303
  LifecycleRules = Shapes::ListShape.new(name: 'LifecycleRules', flattened: true)
279
304
  ListBucketAnalyticsConfigurationsOutput = Shapes::StructureShape.new(name: 'ListBucketAnalyticsConfigurationsOutput')
280
305
  ListBucketAnalyticsConfigurationsRequest = Shapes::StructureShape.new(name: 'ListBucketAnalyticsConfigurationsRequest')
306
+ ListBucketIntelligentTieringConfigurationsOutput = Shapes::StructureShape.new(name: 'ListBucketIntelligentTieringConfigurationsOutput')
307
+ ListBucketIntelligentTieringConfigurationsRequest = Shapes::StructureShape.new(name: 'ListBucketIntelligentTieringConfigurationsRequest')
281
308
  ListBucketInventoryConfigurationsOutput = Shapes::StructureShape.new(name: 'ListBucketInventoryConfigurationsOutput')
282
309
  ListBucketInventoryConfigurationsRequest = Shapes::StructureShape.new(name: 'ListBucketInventoryConfigurationsRequest')
283
310
  ListBucketMetricsConfigurationsOutput = Shapes::StructureShape.new(name: 'ListBucketMetricsConfigurationsOutput')
@@ -310,11 +337,14 @@ module Aws::S3
310
337
  MetadataEntry = Shapes::StructureShape.new(name: 'MetadataEntry')
311
338
  MetadataKey = Shapes::StringShape.new(name: 'MetadataKey')
312
339
  MetadataValue = Shapes::StringShape.new(name: 'MetadataValue')
340
+ Metrics = Shapes::StructureShape.new(name: 'Metrics')
313
341
  MetricsAndOperator = Shapes::StructureShape.new(name: 'MetricsAndOperator')
314
342
  MetricsConfiguration = Shapes::StructureShape.new(name: 'MetricsConfiguration')
315
343
  MetricsConfigurationList = Shapes::ListShape.new(name: 'MetricsConfigurationList', flattened: true)
316
344
  MetricsFilter = Shapes::StructureShape.new(name: 'MetricsFilter')
317
345
  MetricsId = Shapes::StringShape.new(name: 'MetricsId')
346
+ MetricsStatus = Shapes::StringShape.new(name: 'MetricsStatus')
347
+ Minutes = Shapes::IntegerShape.new(name: 'Minutes')
318
348
  MissingMeta = Shapes::IntegerShape.new(name: 'MissingMeta')
319
349
  MultipartUpload = Shapes::StructureShape.new(name: 'MultipartUpload')
320
350
  MultipartUploadId = Shapes::StringShape.new(name: 'MultipartUploadId')
@@ -354,6 +384,7 @@ module Aws::S3
354
384
  ObjectLockRule = Shapes::StructureShape.new(name: 'ObjectLockRule')
355
385
  ObjectLockToken = Shapes::StringShape.new(name: 'ObjectLockToken')
356
386
  ObjectNotInActiveTierError = Shapes::StructureShape.new(name: 'ObjectNotInActiveTierError')
387
+ ObjectOwnership = Shapes::StringShape.new(name: 'ObjectOwnership')
357
388
  ObjectStorageClass = Shapes::StringShape.new(name: 'ObjectStorageClass')
358
389
  ObjectVersion = Shapes::StructureShape.new(name: 'ObjectVersion')
359
390
  ObjectVersionId = Shapes::StringShape.new(name: 'ObjectVersionId')
@@ -363,6 +394,9 @@ module Aws::S3
363
394
  OutputSerialization = Shapes::StructureShape.new(name: 'OutputSerialization')
364
395
  Owner = Shapes::StructureShape.new(name: 'Owner')
365
396
  OwnerOverride = Shapes::StringShape.new(name: 'OwnerOverride')
397
+ OwnershipControls = Shapes::StructureShape.new(name: 'OwnershipControls')
398
+ OwnershipControlsRule = Shapes::StructureShape.new(name: 'OwnershipControlsRule')
399
+ OwnershipControlsRules = Shapes::ListShape.new(name: 'OwnershipControlsRules', flattened: true)
366
400
  ParquetInput = Shapes::StructureShape.new(name: 'ParquetInput')
367
401
  Part = Shapes::StructureShape.new(name: 'Part')
368
402
  PartNumber = Shapes::IntegerShape.new(name: 'PartNumber')
@@ -384,6 +418,7 @@ module Aws::S3
384
418
  PutBucketAnalyticsConfigurationRequest = Shapes::StructureShape.new(name: 'PutBucketAnalyticsConfigurationRequest')
385
419
  PutBucketCorsRequest = Shapes::StructureShape.new(name: 'PutBucketCorsRequest')
386
420
  PutBucketEncryptionRequest = Shapes::StructureShape.new(name: 'PutBucketEncryptionRequest')
421
+ PutBucketIntelligentTieringConfigurationRequest = Shapes::StructureShape.new(name: 'PutBucketIntelligentTieringConfigurationRequest')
387
422
  PutBucketInventoryConfigurationRequest = Shapes::StructureShape.new(name: 'PutBucketInventoryConfigurationRequest')
388
423
  PutBucketLifecycleConfigurationRequest = Shapes::StructureShape.new(name: 'PutBucketLifecycleConfigurationRequest')
389
424
  PutBucketLifecycleRequest = Shapes::StructureShape.new(name: 'PutBucketLifecycleRequest')
@@ -391,6 +426,7 @@ module Aws::S3
391
426
  PutBucketMetricsConfigurationRequest = Shapes::StructureShape.new(name: 'PutBucketMetricsConfigurationRequest')
392
427
  PutBucketNotificationConfigurationRequest = Shapes::StructureShape.new(name: 'PutBucketNotificationConfigurationRequest')
393
428
  PutBucketNotificationRequest = Shapes::StructureShape.new(name: 'PutBucketNotificationRequest')
429
+ PutBucketOwnershipControlsRequest = Shapes::StructureShape.new(name: 'PutBucketOwnershipControlsRequest')
394
430
  PutBucketPolicyRequest = Shapes::StructureShape.new(name: 'PutBucketPolicyRequest')
395
431
  PutBucketReplicationRequest = Shapes::StructureShape.new(name: 'PutBucketReplicationRequest')
396
432
  PutBucketRequestPaymentRequest = Shapes::StructureShape.new(name: 'PutBucketRequestPaymentRequest')
@@ -426,6 +462,8 @@ module Aws::S3
426
462
  ReplaceKeyPrefixWith = Shapes::StringShape.new(name: 'ReplaceKeyPrefixWith')
427
463
  ReplaceKeyWith = Shapes::StringShape.new(name: 'ReplaceKeyWith')
428
464
  ReplicaKmsKeyID = Shapes::StringShape.new(name: 'ReplicaKmsKeyID')
465
+ ReplicaModifications = Shapes::StructureShape.new(name: 'ReplicaModifications')
466
+ ReplicaModificationsStatus = Shapes::StringShape.new(name: 'ReplicaModificationsStatus')
429
467
  ReplicationConfiguration = Shapes::StructureShape.new(name: 'ReplicationConfiguration')
430
468
  ReplicationRule = Shapes::StructureShape.new(name: 'ReplicationRule')
431
469
  ReplicationRuleAndOperator = Shapes::StructureShape.new(name: 'ReplicationRuleAndOperator')
@@ -433,16 +471,21 @@ module Aws::S3
433
471
  ReplicationRuleStatus = Shapes::StringShape.new(name: 'ReplicationRuleStatus')
434
472
  ReplicationRules = Shapes::ListShape.new(name: 'ReplicationRules', flattened: true)
435
473
  ReplicationStatus = Shapes::StringShape.new(name: 'ReplicationStatus')
474
+ ReplicationTime = Shapes::StructureShape.new(name: 'ReplicationTime')
475
+ ReplicationTimeStatus = Shapes::StringShape.new(name: 'ReplicationTimeStatus')
476
+ ReplicationTimeValue = Shapes::StructureShape.new(name: 'ReplicationTimeValue')
436
477
  RequestCharged = Shapes::StringShape.new(name: 'RequestCharged')
437
478
  RequestPayer = Shapes::StringShape.new(name: 'RequestPayer')
438
479
  RequestPaymentConfiguration = Shapes::StructureShape.new(name: 'RequestPaymentConfiguration')
439
480
  RequestProgress = Shapes::StructureShape.new(name: 'RequestProgress')
481
+ RequestRoute = Shapes::StringShape.new(name: 'RequestRoute')
482
+ RequestToken = Shapes::StringShape.new(name: 'RequestToken')
440
483
  ResponseCacheControl = Shapes::StringShape.new(name: 'ResponseCacheControl')
441
484
  ResponseContentDisposition = Shapes::StringShape.new(name: 'ResponseContentDisposition')
442
485
  ResponseContentEncoding = Shapes::StringShape.new(name: 'ResponseContentEncoding')
443
486
  ResponseContentLanguage = Shapes::StringShape.new(name: 'ResponseContentLanguage')
444
487
  ResponseContentType = Shapes::StringShape.new(name: 'ResponseContentType')
445
- ResponseExpires = Shapes::TimestampShape.new(name: 'ResponseExpires')
488
+ ResponseExpires = Shapes::TimestampShape.new(name: 'ResponseExpires', timestampFormat: "rfc822")
446
489
  Restore = Shapes::StringShape.new(name: 'Restore')
447
490
  RestoreObjectOutput = Shapes::StructureShape.new(name: 'RestoreObjectOutput')
448
491
  RestoreObjectRequest = Shapes::StructureShape.new(name: 'RestoreObjectRequest')
@@ -460,8 +503,10 @@ module Aws::S3
460
503
  SSECustomerKey = Shapes::StringShape.new(name: 'SSECustomerKey')
461
504
  SSECustomerKeyMD5 = Shapes::StringShape.new(name: 'SSECustomerKeyMD5')
462
505
  SSEKMS = Shapes::StructureShape.new(name: 'SSEKMS')
506
+ SSEKMSEncryptionContext = Shapes::StringShape.new(name: 'SSEKMSEncryptionContext')
463
507
  SSEKMSKeyId = Shapes::StringShape.new(name: 'SSEKMSKeyId')
464
508
  SSES3 = Shapes::StructureShape.new(name: 'SSES3')
509
+ ScanRange = Shapes::StructureShape.new(name: 'ScanRange')
465
510
  SelectObjectContentEventStream = Shapes::StructureShape.new(name: 'SelectObjectContentEventStream')
466
511
  SelectObjectContentOutput = Shapes::StructureShape.new(name: 'SelectObjectContentOutput')
467
512
  SelectObjectContentRequest = Shapes::StructureShape.new(name: 'SelectObjectContentRequest')
@@ -476,6 +521,7 @@ module Aws::S3
476
521
  SourceSelectionCriteria = Shapes::StructureShape.new(name: 'SourceSelectionCriteria')
477
522
  SseKmsEncryptedObjects = Shapes::StructureShape.new(name: 'SseKmsEncryptedObjects')
478
523
  SseKmsEncryptedObjectsStatus = Shapes::StringShape.new(name: 'SseKmsEncryptedObjectsStatus')
524
+ Start = Shapes::IntegerShape.new(name: 'Start')
479
525
  StartAfter = Shapes::StringShape.new(name: 'StartAfter')
480
526
  Stats = Shapes::StructureShape.new(name: 'Stats')
481
527
  StatsEvent = Shapes::StructureShape.new(name: 'StatsEvent')
@@ -495,6 +541,8 @@ module Aws::S3
495
541
  TargetGrants = Shapes::ListShape.new(name: 'TargetGrants')
496
542
  TargetPrefix = Shapes::StringShape.new(name: 'TargetPrefix')
497
543
  Tier = Shapes::StringShape.new(name: 'Tier')
544
+ Tiering = Shapes::StructureShape.new(name: 'Tiering')
545
+ TieringList = Shapes::ListShape.new(name: 'TieringList', flattened: true)
498
546
  Token = Shapes::StringShape.new(name: 'Token')
499
547
  TopicArn = Shapes::StringShape.new(name: 'TopicArn')
500
548
  TopicConfiguration = Shapes::StructureShape.new(name: 'TopicConfiguration')
@@ -516,6 +564,7 @@ module Aws::S3
516
564
  VersioningConfiguration = Shapes::StructureShape.new(name: 'VersioningConfiguration')
517
565
  WebsiteConfiguration = Shapes::StructureShape.new(name: 'WebsiteConfiguration')
518
566
  WebsiteRedirectLocation = Shapes::StringShape.new(name: 'WebsiteRedirectLocation')
567
+ WriteGetObjectResponseRequest = Shapes::StructureShape.new(name: 'WriteGetObjectResponseRequest')
519
568
  Years = Shapes::IntegerShape.new(name: 'Years')
520
569
 
521
570
  AbortIncompleteMultipartUpload.add_member(:days_after_initiation, Shapes::ShapeRef.new(shape: DaysAfterInitiation, location_name: "DaysAfterInitiation"))
@@ -528,6 +577,7 @@ module Aws::S3
528
577
  AbortMultipartUploadRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
529
578
  AbortMultipartUploadRequest.add_member(:upload_id, Shapes::ShapeRef.new(shape: MultipartUploadId, required: true, location: "querystring", location_name: "uploadId"))
530
579
  AbortMultipartUploadRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
580
+ AbortMultipartUploadRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
531
581
  AbortMultipartUploadRequest.struct_class = Types::AbortMultipartUploadRequest
532
582
 
533
583
  AccelerateConfiguration.add_member(:status, Shapes::ShapeRef.new(shape: BucketAccelerateStatus, location_name: "Status"))
@@ -575,6 +625,10 @@ module Aws::S3
575
625
  Bucket.add_member(:creation_date, Shapes::ShapeRef.new(shape: CreationDate, location_name: "CreationDate"))
576
626
  Bucket.struct_class = Types::Bucket
577
627
 
628
+ BucketAlreadyExists.struct_class = Types::BucketAlreadyExists
629
+
630
+ BucketAlreadyOwnedByYou.struct_class = Types::BucketAlreadyOwnedByYou
631
+
578
632
  BucketLifecycleConfiguration.add_member(:rules, Shapes::ShapeRef.new(shape: LifecycleRules, required: true, location_name: "Rule"))
579
633
  BucketLifecycleConfiguration.struct_class = Types::BucketLifecycleConfiguration
580
634
 
@@ -586,6 +640,7 @@ module Aws::S3
586
640
  CORSConfiguration.add_member(:cors_rules, Shapes::ShapeRef.new(shape: CORSRules, required: true, location_name: "CORSRule"))
587
641
  CORSConfiguration.struct_class = Types::CORSConfiguration
588
642
 
643
+ CORSRule.add_member(:id, Shapes::ShapeRef.new(shape: ID, location_name: "ID"))
589
644
  CORSRule.add_member(:allowed_headers, Shapes::ShapeRef.new(shape: AllowedHeaders, location_name: "AllowedHeader"))
590
645
  CORSRule.add_member(:allowed_methods, Shapes::ShapeRef.new(shape: AllowedMethods, required: true, location_name: "AllowedMethod"))
591
646
  CORSRule.add_member(:allowed_origins, Shapes::ShapeRef.new(shape: AllowedOrigins, required: true, location_name: "AllowedOrigin"))
@@ -631,6 +686,7 @@ module Aws::S3
631
686
  CompleteMultipartUploadOutput.add_member(:server_side_encryption, Shapes::ShapeRef.new(shape: ServerSideEncryption, location: "header", location_name: "x-amz-server-side-encryption"))
632
687
  CompleteMultipartUploadOutput.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "header", location_name: "x-amz-version-id"))
633
688
  CompleteMultipartUploadOutput.add_member(:ssekms_key_id, Shapes::ShapeRef.new(shape: SSEKMSKeyId, location: "header", location_name: "x-amz-server-side-encryption-aws-kms-key-id"))
689
+ CompleteMultipartUploadOutput.add_member(:bucket_key_enabled, Shapes::ShapeRef.new(shape: BucketKeyEnabled, location: "header", location_name: "x-amz-server-side-encryption-bucket-key-enabled"))
634
690
  CompleteMultipartUploadOutput.add_member(:request_charged, Shapes::ShapeRef.new(shape: RequestCharged, location: "header", location_name: "x-amz-request-charged"))
635
691
  CompleteMultipartUploadOutput.struct_class = Types::CompleteMultipartUploadOutput
636
692
 
@@ -639,6 +695,7 @@ module Aws::S3
639
695
  CompleteMultipartUploadRequest.add_member(:multipart_upload, Shapes::ShapeRef.new(shape: CompletedMultipartUpload, location_name: "CompleteMultipartUpload", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
640
696
  CompleteMultipartUploadRequest.add_member(:upload_id, Shapes::ShapeRef.new(shape: MultipartUploadId, required: true, location: "querystring", location_name: "uploadId"))
641
697
  CompleteMultipartUploadRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
698
+ CompleteMultipartUploadRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
642
699
  CompleteMultipartUploadRequest.struct_class = Types::CompleteMultipartUploadRequest
643
700
  CompleteMultipartUploadRequest[:payload] = :multipart_upload
644
701
  CompleteMultipartUploadRequest[:payload_member] = CompleteMultipartUploadRequest.member(:multipart_upload)
@@ -666,6 +723,8 @@ module Aws::S3
666
723
  CopyObjectOutput.add_member(:sse_customer_algorithm, Shapes::ShapeRef.new(shape: SSECustomerAlgorithm, location: "header", location_name: "x-amz-server-side-encryption-customer-algorithm"))
667
724
  CopyObjectOutput.add_member(:sse_customer_key_md5, Shapes::ShapeRef.new(shape: SSECustomerKeyMD5, location: "header", location_name: "x-amz-server-side-encryption-customer-key-MD5"))
668
725
  CopyObjectOutput.add_member(:ssekms_key_id, Shapes::ShapeRef.new(shape: SSEKMSKeyId, location: "header", location_name: "x-amz-server-side-encryption-aws-kms-key-id"))
726
+ CopyObjectOutput.add_member(:ssekms_encryption_context, Shapes::ShapeRef.new(shape: SSEKMSEncryptionContext, location: "header", location_name: "x-amz-server-side-encryption-context"))
727
+ CopyObjectOutput.add_member(:bucket_key_enabled, Shapes::ShapeRef.new(shape: BucketKeyEnabled, location: "header", location_name: "x-amz-server-side-encryption-bucket-key-enabled"))
669
728
  CopyObjectOutput.add_member(:request_charged, Shapes::ShapeRef.new(shape: RequestCharged, location: "header", location_name: "x-amz-request-charged"))
670
729
  CopyObjectOutput.struct_class = Types::CopyObjectOutput
671
730
  CopyObjectOutput[:payload] = :copy_object_result
@@ -699,6 +758,8 @@ module Aws::S3
699
758
  CopyObjectRequest.add_member(:sse_customer_key, Shapes::ShapeRef.new(shape: SSECustomerKey, location: "header", location_name: "x-amz-server-side-encryption-customer-key"))
700
759
  CopyObjectRequest.add_member(:sse_customer_key_md5, Shapes::ShapeRef.new(shape: SSECustomerKeyMD5, location: "header", location_name: "x-amz-server-side-encryption-customer-key-MD5"))
701
760
  CopyObjectRequest.add_member(:ssekms_key_id, Shapes::ShapeRef.new(shape: SSEKMSKeyId, location: "header", location_name: "x-amz-server-side-encryption-aws-kms-key-id"))
761
+ CopyObjectRequest.add_member(:ssekms_encryption_context, Shapes::ShapeRef.new(shape: SSEKMSEncryptionContext, location: "header", location_name: "x-amz-server-side-encryption-context"))
762
+ CopyObjectRequest.add_member(:bucket_key_enabled, Shapes::ShapeRef.new(shape: BucketKeyEnabled, location: "header", location_name: "x-amz-server-side-encryption-bucket-key-enabled"))
702
763
  CopyObjectRequest.add_member(:copy_source_sse_customer_algorithm, Shapes::ShapeRef.new(shape: CopySourceSSECustomerAlgorithm, location: "header", location_name: "x-amz-copy-source-server-side-encryption-customer-algorithm"))
703
764
  CopyObjectRequest.add_member(:copy_source_sse_customer_key, Shapes::ShapeRef.new(shape: CopySourceSSECustomerKey, location: "header", location_name: "x-amz-copy-source-server-side-encryption-customer-key"))
704
765
  CopyObjectRequest.add_member(:copy_source_sse_customer_key_md5, Shapes::ShapeRef.new(shape: CopySourceSSECustomerKeyMD5, location: "header", location_name: "x-amz-copy-source-server-side-encryption-customer-key-MD5"))
@@ -707,6 +768,8 @@ module Aws::S3
707
768
  CopyObjectRequest.add_member(:object_lock_mode, Shapes::ShapeRef.new(shape: ObjectLockMode, location: "header", location_name: "x-amz-object-lock-mode"))
708
769
  CopyObjectRequest.add_member(:object_lock_retain_until_date, Shapes::ShapeRef.new(shape: ObjectLockRetainUntilDate, location: "header", location_name: "x-amz-object-lock-retain-until-date"))
709
770
  CopyObjectRequest.add_member(:object_lock_legal_hold_status, Shapes::ShapeRef.new(shape: ObjectLockLegalHoldStatus, location: "header", location_name: "x-amz-object-lock-legal-hold"))
771
+ CopyObjectRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
772
+ CopyObjectRequest.add_member(:expected_source_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-source-expected-bucket-owner"))
710
773
  CopyObjectRequest.struct_class = Types::CopyObjectRequest
711
774
 
712
775
  CopyObjectResult.add_member(:etag, Shapes::ShapeRef.new(shape: ETag, location_name: "ETag"))
@@ -745,6 +808,8 @@ module Aws::S3
745
808
  CreateMultipartUploadOutput.add_member(:sse_customer_algorithm, Shapes::ShapeRef.new(shape: SSECustomerAlgorithm, location: "header", location_name: "x-amz-server-side-encryption-customer-algorithm"))
746
809
  CreateMultipartUploadOutput.add_member(:sse_customer_key_md5, Shapes::ShapeRef.new(shape: SSECustomerKeyMD5, location: "header", location_name: "x-amz-server-side-encryption-customer-key-MD5"))
747
810
  CreateMultipartUploadOutput.add_member(:ssekms_key_id, Shapes::ShapeRef.new(shape: SSEKMSKeyId, location: "header", location_name: "x-amz-server-side-encryption-aws-kms-key-id"))
811
+ CreateMultipartUploadOutput.add_member(:ssekms_encryption_context, Shapes::ShapeRef.new(shape: SSEKMSEncryptionContext, location: "header", location_name: "x-amz-server-side-encryption-context"))
812
+ CreateMultipartUploadOutput.add_member(:bucket_key_enabled, Shapes::ShapeRef.new(shape: BucketKeyEnabled, location: "header", location_name: "x-amz-server-side-encryption-bucket-key-enabled"))
748
813
  CreateMultipartUploadOutput.add_member(:request_charged, Shapes::ShapeRef.new(shape: RequestCharged, location: "header", location_name: "x-amz-request-charged"))
749
814
  CreateMultipartUploadOutput.struct_class = Types::CreateMultipartUploadOutput
750
815
 
@@ -769,11 +834,14 @@ module Aws::S3
769
834
  CreateMultipartUploadRequest.add_member(:sse_customer_key, Shapes::ShapeRef.new(shape: SSECustomerKey, location: "header", location_name: "x-amz-server-side-encryption-customer-key"))
770
835
  CreateMultipartUploadRequest.add_member(:sse_customer_key_md5, Shapes::ShapeRef.new(shape: SSECustomerKeyMD5, location: "header", location_name: "x-amz-server-side-encryption-customer-key-MD5"))
771
836
  CreateMultipartUploadRequest.add_member(:ssekms_key_id, Shapes::ShapeRef.new(shape: SSEKMSKeyId, location: "header", location_name: "x-amz-server-side-encryption-aws-kms-key-id"))
837
+ CreateMultipartUploadRequest.add_member(:ssekms_encryption_context, Shapes::ShapeRef.new(shape: SSEKMSEncryptionContext, location: "header", location_name: "x-amz-server-side-encryption-context"))
838
+ CreateMultipartUploadRequest.add_member(:bucket_key_enabled, Shapes::ShapeRef.new(shape: BucketKeyEnabled, location: "header", location_name: "x-amz-server-side-encryption-bucket-key-enabled"))
772
839
  CreateMultipartUploadRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
773
840
  CreateMultipartUploadRequest.add_member(:tagging, Shapes::ShapeRef.new(shape: TaggingHeader, location: "header", location_name: "x-amz-tagging"))
774
841
  CreateMultipartUploadRequest.add_member(:object_lock_mode, Shapes::ShapeRef.new(shape: ObjectLockMode, location: "header", location_name: "x-amz-object-lock-mode"))
775
842
  CreateMultipartUploadRequest.add_member(:object_lock_retain_until_date, Shapes::ShapeRef.new(shape: ObjectLockRetainUntilDate, location: "header", location_name: "x-amz-object-lock-retain-until-date"))
776
843
  CreateMultipartUploadRequest.add_member(:object_lock_legal_hold_status, Shapes::ShapeRef.new(shape: ObjectLockLegalHoldStatus, location: "header", location_name: "x-amz-object-lock-legal-hold"))
844
+ CreateMultipartUploadRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
777
845
  CreateMultipartUploadRequest.struct_class = Types::CreateMultipartUploadRequest
778
846
 
779
847
  DefaultRetention.add_member(:mode, Shapes::ShapeRef.new(shape: ObjectLockRetentionMode, location_name: "Mode"))
@@ -787,38 +855,57 @@ module Aws::S3
787
855
 
788
856
  DeleteBucketAnalyticsConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
789
857
  DeleteBucketAnalyticsConfigurationRequest.add_member(:id, Shapes::ShapeRef.new(shape: AnalyticsId, required: true, location: "querystring", location_name: "id"))
858
+ DeleteBucketAnalyticsConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
790
859
  DeleteBucketAnalyticsConfigurationRequest.struct_class = Types::DeleteBucketAnalyticsConfigurationRequest
791
860
 
792
861
  DeleteBucketCorsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
862
+ DeleteBucketCorsRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
793
863
  DeleteBucketCorsRequest.struct_class = Types::DeleteBucketCorsRequest
794
864
 
795
865
  DeleteBucketEncryptionRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
866
+ DeleteBucketEncryptionRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
796
867
  DeleteBucketEncryptionRequest.struct_class = Types::DeleteBucketEncryptionRequest
797
868
 
869
+ DeleteBucketIntelligentTieringConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
870
+ DeleteBucketIntelligentTieringConfigurationRequest.add_member(:id, Shapes::ShapeRef.new(shape: IntelligentTieringId, required: true, location: "querystring", location_name: "id"))
871
+ DeleteBucketIntelligentTieringConfigurationRequest.struct_class = Types::DeleteBucketIntelligentTieringConfigurationRequest
872
+
798
873
  DeleteBucketInventoryConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
799
874
  DeleteBucketInventoryConfigurationRequest.add_member(:id, Shapes::ShapeRef.new(shape: InventoryId, required: true, location: "querystring", location_name: "id"))
875
+ DeleteBucketInventoryConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
800
876
  DeleteBucketInventoryConfigurationRequest.struct_class = Types::DeleteBucketInventoryConfigurationRequest
801
877
 
802
878
  DeleteBucketLifecycleRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
879
+ DeleteBucketLifecycleRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
803
880
  DeleteBucketLifecycleRequest.struct_class = Types::DeleteBucketLifecycleRequest
804
881
 
805
882
  DeleteBucketMetricsConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
806
883
  DeleteBucketMetricsConfigurationRequest.add_member(:id, Shapes::ShapeRef.new(shape: MetricsId, required: true, location: "querystring", location_name: "id"))
884
+ DeleteBucketMetricsConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
807
885
  DeleteBucketMetricsConfigurationRequest.struct_class = Types::DeleteBucketMetricsConfigurationRequest
808
886
 
887
+ DeleteBucketOwnershipControlsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
888
+ DeleteBucketOwnershipControlsRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
889
+ DeleteBucketOwnershipControlsRequest.struct_class = Types::DeleteBucketOwnershipControlsRequest
890
+
809
891
  DeleteBucketPolicyRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
892
+ DeleteBucketPolicyRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
810
893
  DeleteBucketPolicyRequest.struct_class = Types::DeleteBucketPolicyRequest
811
894
 
812
895
  DeleteBucketReplicationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
896
+ DeleteBucketReplicationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
813
897
  DeleteBucketReplicationRequest.struct_class = Types::DeleteBucketReplicationRequest
814
898
 
815
899
  DeleteBucketRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
900
+ DeleteBucketRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
816
901
  DeleteBucketRequest.struct_class = Types::DeleteBucketRequest
817
902
 
818
903
  DeleteBucketTaggingRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
904
+ DeleteBucketTaggingRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
819
905
  DeleteBucketTaggingRequest.struct_class = Types::DeleteBucketTaggingRequest
820
906
 
821
907
  DeleteBucketWebsiteRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
908
+ DeleteBucketWebsiteRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
822
909
  DeleteBucketWebsiteRequest.struct_class = Types::DeleteBucketWebsiteRequest
823
910
 
824
911
  DeleteMarkerEntry.add_member(:owner, Shapes::ShapeRef.new(shape: Owner, location_name: "Owner"))
@@ -844,6 +931,7 @@ module Aws::S3
844
931
  DeleteObjectRequest.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "querystring", location_name: "versionId"))
845
932
  DeleteObjectRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
846
933
  DeleteObjectRequest.add_member(:bypass_governance_retention, Shapes::ShapeRef.new(shape: BypassGovernanceRetention, location: "header", location_name: "x-amz-bypass-governance-retention"))
934
+ DeleteObjectRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
847
935
  DeleteObjectRequest.struct_class = Types::DeleteObjectRequest
848
936
 
849
937
  DeleteObjectTaggingOutput.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "header", location_name: "x-amz-version-id"))
@@ -852,6 +940,7 @@ module Aws::S3
852
940
  DeleteObjectTaggingRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
853
941
  DeleteObjectTaggingRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
854
942
  DeleteObjectTaggingRequest.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "querystring", location_name: "versionId"))
943
+ DeleteObjectTaggingRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
855
944
  DeleteObjectTaggingRequest.struct_class = Types::DeleteObjectTaggingRequest
856
945
 
857
946
  DeleteObjectsOutput.add_member(:deleted, Shapes::ShapeRef.new(shape: DeletedObjects, location_name: "Deleted"))
@@ -864,11 +953,13 @@ module Aws::S3
864
953
  DeleteObjectsRequest.add_member(:mfa, Shapes::ShapeRef.new(shape: MFA, location: "header", location_name: "x-amz-mfa"))
865
954
  DeleteObjectsRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
866
955
  DeleteObjectsRequest.add_member(:bypass_governance_retention, Shapes::ShapeRef.new(shape: BypassGovernanceRetention, location: "header", location_name: "x-amz-bypass-governance-retention"))
956
+ DeleteObjectsRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
867
957
  DeleteObjectsRequest.struct_class = Types::DeleteObjectsRequest
868
958
  DeleteObjectsRequest[:payload] = :delete
869
959
  DeleteObjectsRequest[:payload_member] = DeleteObjectsRequest.member(:delete)
870
960
 
871
961
  DeletePublicAccessBlockRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
962
+ DeletePublicAccessBlockRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
872
963
  DeletePublicAccessBlockRequest.struct_class = Types::DeletePublicAccessBlockRequest
873
964
 
874
965
  DeletedObject.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, location_name: "Key"))
@@ -884,6 +975,8 @@ module Aws::S3
884
975
  Destination.add_member(:storage_class, Shapes::ShapeRef.new(shape: StorageClass, location_name: "StorageClass"))
885
976
  Destination.add_member(:access_control_translation, Shapes::ShapeRef.new(shape: AccessControlTranslation, location_name: "AccessControlTranslation"))
886
977
  Destination.add_member(:encryption_configuration, Shapes::ShapeRef.new(shape: EncryptionConfiguration, location_name: "EncryptionConfiguration"))
978
+ Destination.add_member(:replication_time, Shapes::ShapeRef.new(shape: ReplicationTime, location_name: "ReplicationTime"))
979
+ Destination.add_member(:metrics, Shapes::ShapeRef.new(shape: Metrics, location_name: "Metrics"))
887
980
  Destination.struct_class = Types::Destination
888
981
 
889
982
  Encryption.add_member(:encryption_type, Shapes::ShapeRef.new(shape: ServerSideEncryption, required: true, location_name: "EncryptionType"))
@@ -909,6 +1002,9 @@ module Aws::S3
909
1002
 
910
1003
  EventList.member = Shapes::ShapeRef.new(shape: Event)
911
1004
 
1005
+ ExistingObjectReplication.add_member(:status, Shapes::ShapeRef.new(shape: ExistingObjectReplicationStatus, required: true, location_name: "Status"))
1006
+ ExistingObjectReplication.struct_class = Types::ExistingObjectReplication
1007
+
912
1008
  ExposeHeaders.member = Shapes::ShapeRef.new(shape: ExposeHeader)
913
1009
 
914
1010
  FilterRule.add_member(:name, Shapes::ShapeRef.new(shape: FilterRuleName, location_name: "Name"))
@@ -921,6 +1017,7 @@ module Aws::S3
921
1017
  GetBucketAccelerateConfigurationOutput.struct_class = Types::GetBucketAccelerateConfigurationOutput
922
1018
 
923
1019
  GetBucketAccelerateConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1020
+ GetBucketAccelerateConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
924
1021
  GetBucketAccelerateConfigurationRequest.struct_class = Types::GetBucketAccelerateConfigurationRequest
925
1022
 
926
1023
  GetBucketAclOutput.add_member(:owner, Shapes::ShapeRef.new(shape: Owner, location_name: "Owner"))
@@ -928,6 +1025,7 @@ module Aws::S3
928
1025
  GetBucketAclOutput.struct_class = Types::GetBucketAclOutput
929
1026
 
930
1027
  GetBucketAclRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1028
+ GetBucketAclRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
931
1029
  GetBucketAclRequest.struct_class = Types::GetBucketAclRequest
932
1030
 
933
1031
  GetBucketAnalyticsConfigurationOutput.add_member(:analytics_configuration, Shapes::ShapeRef.new(shape: AnalyticsConfiguration, location_name: "AnalyticsConfiguration"))
@@ -937,12 +1035,14 @@ module Aws::S3
937
1035
 
938
1036
  GetBucketAnalyticsConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
939
1037
  GetBucketAnalyticsConfigurationRequest.add_member(:id, Shapes::ShapeRef.new(shape: AnalyticsId, required: true, location: "querystring", location_name: "id"))
1038
+ GetBucketAnalyticsConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
940
1039
  GetBucketAnalyticsConfigurationRequest.struct_class = Types::GetBucketAnalyticsConfigurationRequest
941
1040
 
942
1041
  GetBucketCorsOutput.add_member(:cors_rules, Shapes::ShapeRef.new(shape: CORSRules, location_name: "CORSRule"))
943
1042
  GetBucketCorsOutput.struct_class = Types::GetBucketCorsOutput
944
1043
 
945
1044
  GetBucketCorsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1045
+ GetBucketCorsRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
946
1046
  GetBucketCorsRequest.struct_class = Types::GetBucketCorsRequest
947
1047
 
948
1048
  GetBucketEncryptionOutput.add_member(:server_side_encryption_configuration, Shapes::ShapeRef.new(shape: ServerSideEncryptionConfiguration, location_name: "ServerSideEncryptionConfiguration"))
@@ -951,8 +1051,18 @@ module Aws::S3
951
1051
  GetBucketEncryptionOutput[:payload_member] = GetBucketEncryptionOutput.member(:server_side_encryption_configuration)
952
1052
 
953
1053
  GetBucketEncryptionRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1054
+ GetBucketEncryptionRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
954
1055
  GetBucketEncryptionRequest.struct_class = Types::GetBucketEncryptionRequest
955
1056
 
1057
+ GetBucketIntelligentTieringConfigurationOutput.add_member(:intelligent_tiering_configuration, Shapes::ShapeRef.new(shape: IntelligentTieringConfiguration, location_name: "IntelligentTieringConfiguration"))
1058
+ GetBucketIntelligentTieringConfigurationOutput.struct_class = Types::GetBucketIntelligentTieringConfigurationOutput
1059
+ GetBucketIntelligentTieringConfigurationOutput[:payload] = :intelligent_tiering_configuration
1060
+ GetBucketIntelligentTieringConfigurationOutput[:payload_member] = GetBucketIntelligentTieringConfigurationOutput.member(:intelligent_tiering_configuration)
1061
+
1062
+ GetBucketIntelligentTieringConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1063
+ GetBucketIntelligentTieringConfigurationRequest.add_member(:id, Shapes::ShapeRef.new(shape: IntelligentTieringId, required: true, location: "querystring", location_name: "id"))
1064
+ GetBucketIntelligentTieringConfigurationRequest.struct_class = Types::GetBucketIntelligentTieringConfigurationRequest
1065
+
956
1066
  GetBucketInventoryConfigurationOutput.add_member(:inventory_configuration, Shapes::ShapeRef.new(shape: InventoryConfiguration, location_name: "InventoryConfiguration"))
957
1067
  GetBucketInventoryConfigurationOutput.struct_class = Types::GetBucketInventoryConfigurationOutput
958
1068
  GetBucketInventoryConfigurationOutput[:payload] = :inventory_configuration
@@ -960,30 +1070,35 @@ module Aws::S3
960
1070
 
961
1071
  GetBucketInventoryConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
962
1072
  GetBucketInventoryConfigurationRequest.add_member(:id, Shapes::ShapeRef.new(shape: InventoryId, required: true, location: "querystring", location_name: "id"))
1073
+ GetBucketInventoryConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
963
1074
  GetBucketInventoryConfigurationRequest.struct_class = Types::GetBucketInventoryConfigurationRequest
964
1075
 
965
1076
  GetBucketLifecycleConfigurationOutput.add_member(:rules, Shapes::ShapeRef.new(shape: LifecycleRules, location_name: "Rule"))
966
1077
  GetBucketLifecycleConfigurationOutput.struct_class = Types::GetBucketLifecycleConfigurationOutput
967
1078
 
968
1079
  GetBucketLifecycleConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1080
+ GetBucketLifecycleConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
969
1081
  GetBucketLifecycleConfigurationRequest.struct_class = Types::GetBucketLifecycleConfigurationRequest
970
1082
 
971
1083
  GetBucketLifecycleOutput.add_member(:rules, Shapes::ShapeRef.new(shape: Rules, location_name: "Rule"))
972
1084
  GetBucketLifecycleOutput.struct_class = Types::GetBucketLifecycleOutput
973
1085
 
974
1086
  GetBucketLifecycleRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1087
+ GetBucketLifecycleRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
975
1088
  GetBucketLifecycleRequest.struct_class = Types::GetBucketLifecycleRequest
976
1089
 
977
1090
  GetBucketLocationOutput.add_member(:location_constraint, Shapes::ShapeRef.new(shape: BucketLocationConstraint, location_name: "LocationConstraint"))
978
1091
  GetBucketLocationOutput.struct_class = Types::GetBucketLocationOutput
979
1092
 
980
1093
  GetBucketLocationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1094
+ GetBucketLocationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
981
1095
  GetBucketLocationRequest.struct_class = Types::GetBucketLocationRequest
982
1096
 
983
1097
  GetBucketLoggingOutput.add_member(:logging_enabled, Shapes::ShapeRef.new(shape: LoggingEnabled, location_name: "LoggingEnabled"))
984
1098
  GetBucketLoggingOutput.struct_class = Types::GetBucketLoggingOutput
985
1099
 
986
1100
  GetBucketLoggingRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1101
+ GetBucketLoggingRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
987
1102
  GetBucketLoggingRequest.struct_class = Types::GetBucketLoggingRequest
988
1103
 
989
1104
  GetBucketMetricsConfigurationOutput.add_member(:metrics_configuration, Shapes::ShapeRef.new(shape: MetricsConfiguration, location_name: "MetricsConfiguration"))
@@ -993,17 +1108,29 @@ module Aws::S3
993
1108
 
994
1109
  GetBucketMetricsConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
995
1110
  GetBucketMetricsConfigurationRequest.add_member(:id, Shapes::ShapeRef.new(shape: MetricsId, required: true, location: "querystring", location_name: "id"))
1111
+ GetBucketMetricsConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
996
1112
  GetBucketMetricsConfigurationRequest.struct_class = Types::GetBucketMetricsConfigurationRequest
997
1113
 
998
1114
  GetBucketNotificationConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1115
+ GetBucketNotificationConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
999
1116
  GetBucketNotificationConfigurationRequest.struct_class = Types::GetBucketNotificationConfigurationRequest
1000
1117
 
1118
+ GetBucketOwnershipControlsOutput.add_member(:ownership_controls, Shapes::ShapeRef.new(shape: OwnershipControls, location_name: "OwnershipControls"))
1119
+ GetBucketOwnershipControlsOutput.struct_class = Types::GetBucketOwnershipControlsOutput
1120
+ GetBucketOwnershipControlsOutput[:payload] = :ownership_controls
1121
+ GetBucketOwnershipControlsOutput[:payload_member] = GetBucketOwnershipControlsOutput.member(:ownership_controls)
1122
+
1123
+ GetBucketOwnershipControlsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1124
+ GetBucketOwnershipControlsRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1125
+ GetBucketOwnershipControlsRequest.struct_class = Types::GetBucketOwnershipControlsRequest
1126
+
1001
1127
  GetBucketPolicyOutput.add_member(:policy, Shapes::ShapeRef.new(shape: Policy, location_name: "Policy"))
1002
1128
  GetBucketPolicyOutput.struct_class = Types::GetBucketPolicyOutput
1003
1129
  GetBucketPolicyOutput[:payload] = :policy
1004
1130
  GetBucketPolicyOutput[:payload_member] = GetBucketPolicyOutput.member(:policy)
1005
1131
 
1006
1132
  GetBucketPolicyRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1133
+ GetBucketPolicyRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1007
1134
  GetBucketPolicyRequest.struct_class = Types::GetBucketPolicyRequest
1008
1135
 
1009
1136
  GetBucketPolicyStatusOutput.add_member(:policy_status, Shapes::ShapeRef.new(shape: PolicyStatus, location_name: "PolicyStatus"))
@@ -1012,6 +1139,7 @@ module Aws::S3
1012
1139
  GetBucketPolicyStatusOutput[:payload_member] = GetBucketPolicyStatusOutput.member(:policy_status)
1013
1140
 
1014
1141
  GetBucketPolicyStatusRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1142
+ GetBucketPolicyStatusRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1015
1143
  GetBucketPolicyStatusRequest.struct_class = Types::GetBucketPolicyStatusRequest
1016
1144
 
1017
1145
  GetBucketReplicationOutput.add_member(:replication_configuration, Shapes::ShapeRef.new(shape: ReplicationConfiguration, location_name: "ReplicationConfiguration"))
@@ -1020,18 +1148,21 @@ module Aws::S3
1020
1148
  GetBucketReplicationOutput[:payload_member] = GetBucketReplicationOutput.member(:replication_configuration)
1021
1149
 
1022
1150
  GetBucketReplicationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1151
+ GetBucketReplicationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1023
1152
  GetBucketReplicationRequest.struct_class = Types::GetBucketReplicationRequest
1024
1153
 
1025
1154
  GetBucketRequestPaymentOutput.add_member(:payer, Shapes::ShapeRef.new(shape: Payer, location_name: "Payer"))
1026
1155
  GetBucketRequestPaymentOutput.struct_class = Types::GetBucketRequestPaymentOutput
1027
1156
 
1028
1157
  GetBucketRequestPaymentRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1158
+ GetBucketRequestPaymentRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1029
1159
  GetBucketRequestPaymentRequest.struct_class = Types::GetBucketRequestPaymentRequest
1030
1160
 
1031
1161
  GetBucketTaggingOutput.add_member(:tag_set, Shapes::ShapeRef.new(shape: TagSet, required: true, location_name: "TagSet"))
1032
1162
  GetBucketTaggingOutput.struct_class = Types::GetBucketTaggingOutput
1033
1163
 
1034
1164
  GetBucketTaggingRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1165
+ GetBucketTaggingRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1035
1166
  GetBucketTaggingRequest.struct_class = Types::GetBucketTaggingRequest
1036
1167
 
1037
1168
  GetBucketVersioningOutput.add_member(:status, Shapes::ShapeRef.new(shape: BucketVersioningStatus, location_name: "Status"))
@@ -1039,6 +1170,7 @@ module Aws::S3
1039
1170
  GetBucketVersioningOutput.struct_class = Types::GetBucketVersioningOutput
1040
1171
 
1041
1172
  GetBucketVersioningRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1173
+ GetBucketVersioningRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1042
1174
  GetBucketVersioningRequest.struct_class = Types::GetBucketVersioningRequest
1043
1175
 
1044
1176
  GetBucketWebsiteOutput.add_member(:redirect_all_requests_to, Shapes::ShapeRef.new(shape: RedirectAllRequestsTo, location_name: "RedirectAllRequestsTo"))
@@ -1048,6 +1180,7 @@ module Aws::S3
1048
1180
  GetBucketWebsiteOutput.struct_class = Types::GetBucketWebsiteOutput
1049
1181
 
1050
1182
  GetBucketWebsiteRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1183
+ GetBucketWebsiteRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1051
1184
  GetBucketWebsiteRequest.struct_class = Types::GetBucketWebsiteRequest
1052
1185
 
1053
1186
  GetObjectAclOutput.add_member(:owner, Shapes::ShapeRef.new(shape: Owner, location_name: "Owner"))
@@ -1059,6 +1192,7 @@ module Aws::S3
1059
1192
  GetObjectAclRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
1060
1193
  GetObjectAclRequest.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "querystring", location_name: "versionId"))
1061
1194
  GetObjectAclRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
1195
+ GetObjectAclRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1062
1196
  GetObjectAclRequest.struct_class = Types::GetObjectAclRequest
1063
1197
 
1064
1198
  GetObjectLegalHoldOutput.add_member(:legal_hold, Shapes::ShapeRef.new(shape: ObjectLockLegalHold, location_name: "LegalHold"))
@@ -1070,6 +1204,7 @@ module Aws::S3
1070
1204
  GetObjectLegalHoldRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
1071
1205
  GetObjectLegalHoldRequest.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "querystring", location_name: "versionId"))
1072
1206
  GetObjectLegalHoldRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
1207
+ GetObjectLegalHoldRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1073
1208
  GetObjectLegalHoldRequest.struct_class = Types::GetObjectLegalHoldRequest
1074
1209
 
1075
1210
  GetObjectLockConfigurationOutput.add_member(:object_lock_configuration, Shapes::ShapeRef.new(shape: ObjectLockConfiguration, location_name: "ObjectLockConfiguration"))
@@ -1078,6 +1213,7 @@ module Aws::S3
1078
1213
  GetObjectLockConfigurationOutput[:payload_member] = GetObjectLockConfigurationOutput.member(:object_lock_configuration)
1079
1214
 
1080
1215
  GetObjectLockConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1216
+ GetObjectLockConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1081
1217
  GetObjectLockConfigurationRequest.struct_class = Types::GetObjectLockConfigurationRequest
1082
1218
 
1083
1219
  GetObjectOutput.add_member(:body, Shapes::ShapeRef.new(shape: Body, location_name: "Body", metadata: {"streaming"=>true}))
@@ -1104,6 +1240,7 @@ module Aws::S3
1104
1240
  GetObjectOutput.add_member(:sse_customer_algorithm, Shapes::ShapeRef.new(shape: SSECustomerAlgorithm, location: "header", location_name: "x-amz-server-side-encryption-customer-algorithm"))
1105
1241
  GetObjectOutput.add_member(:sse_customer_key_md5, Shapes::ShapeRef.new(shape: SSECustomerKeyMD5, location: "header", location_name: "x-amz-server-side-encryption-customer-key-MD5"))
1106
1242
  GetObjectOutput.add_member(:ssekms_key_id, Shapes::ShapeRef.new(shape: SSEKMSKeyId, location: "header", location_name: "x-amz-server-side-encryption-aws-kms-key-id"))
1243
+ GetObjectOutput.add_member(:bucket_key_enabled, Shapes::ShapeRef.new(shape: BucketKeyEnabled, location: "header", location_name: "x-amz-server-side-encryption-bucket-key-enabled"))
1107
1244
  GetObjectOutput.add_member(:storage_class, Shapes::ShapeRef.new(shape: StorageClass, location: "header", location_name: "x-amz-storage-class"))
1108
1245
  GetObjectOutput.add_member(:request_charged, Shapes::ShapeRef.new(shape: RequestCharged, location: "header", location_name: "x-amz-request-charged"))
1109
1246
  GetObjectOutput.add_member(:replication_status, Shapes::ShapeRef.new(shape: ReplicationStatus, location: "header", location_name: "x-amz-replication-status"))
@@ -1135,6 +1272,7 @@ module Aws::S3
1135
1272
  GetObjectRequest.add_member(:sse_customer_key_md5, Shapes::ShapeRef.new(shape: SSECustomerKeyMD5, location: "header", location_name: "x-amz-server-side-encryption-customer-key-MD5"))
1136
1273
  GetObjectRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
1137
1274
  GetObjectRequest.add_member(:part_number, Shapes::ShapeRef.new(shape: PartNumber, location: "querystring", location_name: "partNumber"))
1275
+ GetObjectRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1138
1276
  GetObjectRequest.struct_class = Types::GetObjectRequest
1139
1277
 
1140
1278
  GetObjectRetentionOutput.add_member(:retention, Shapes::ShapeRef.new(shape: ObjectLockRetention, location_name: "Retention"))
@@ -1146,6 +1284,7 @@ module Aws::S3
1146
1284
  GetObjectRetentionRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
1147
1285
  GetObjectRetentionRequest.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "querystring", location_name: "versionId"))
1148
1286
  GetObjectRetentionRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
1287
+ GetObjectRetentionRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1149
1288
  GetObjectRetentionRequest.struct_class = Types::GetObjectRetentionRequest
1150
1289
 
1151
1290
  GetObjectTaggingOutput.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "header", location_name: "x-amz-version-id"))
@@ -1155,6 +1294,8 @@ module Aws::S3
1155
1294
  GetObjectTaggingRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1156
1295
  GetObjectTaggingRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
1157
1296
  GetObjectTaggingRequest.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "querystring", location_name: "versionId"))
1297
+ GetObjectTaggingRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1298
+ GetObjectTaggingRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
1158
1299
  GetObjectTaggingRequest.struct_class = Types::GetObjectTaggingRequest
1159
1300
 
1160
1301
  GetObjectTorrentOutput.add_member(:body, Shapes::ShapeRef.new(shape: Body, location_name: "Body", metadata: {"streaming"=>true}))
@@ -1166,6 +1307,7 @@ module Aws::S3
1166
1307
  GetObjectTorrentRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1167
1308
  GetObjectTorrentRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
1168
1309
  GetObjectTorrentRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
1310
+ GetObjectTorrentRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1169
1311
  GetObjectTorrentRequest.struct_class = Types::GetObjectTorrentRequest
1170
1312
 
1171
1313
  GetPublicAccessBlockOutput.add_member(:public_access_block_configuration, Shapes::ShapeRef.new(shape: PublicAccessBlockConfiguration, location_name: "PublicAccessBlockConfiguration"))
@@ -1174,6 +1316,7 @@ module Aws::S3
1174
1316
  GetPublicAccessBlockOutput[:payload_member] = GetPublicAccessBlockOutput.member(:public_access_block_configuration)
1175
1317
 
1176
1318
  GetPublicAccessBlockRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1319
+ GetPublicAccessBlockRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1177
1320
  GetPublicAccessBlockRequest.struct_class = Types::GetPublicAccessBlockRequest
1178
1321
 
1179
1322
  GlacierJobParameters.add_member(:tier, Shapes::ShapeRef.new(shape: Tier, required: true, location_name: "Tier"))
@@ -1193,12 +1336,14 @@ module Aws::S3
1193
1336
  Grants.member = Shapes::ShapeRef.new(shape: Grant, location_name: "Grant")
1194
1337
 
1195
1338
  HeadBucketRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1339
+ HeadBucketRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1196
1340
  HeadBucketRequest.struct_class = Types::HeadBucketRequest
1197
1341
 
1198
1342
  HeadObjectOutput.add_member(:delete_marker, Shapes::ShapeRef.new(shape: DeleteMarker, location: "header", location_name: "x-amz-delete-marker"))
1199
1343
  HeadObjectOutput.add_member(:accept_ranges, Shapes::ShapeRef.new(shape: AcceptRanges, location: "header", location_name: "accept-ranges"))
1200
1344
  HeadObjectOutput.add_member(:expiration, Shapes::ShapeRef.new(shape: Expiration, location: "header", location_name: "x-amz-expiration"))
1201
1345
  HeadObjectOutput.add_member(:restore, Shapes::ShapeRef.new(shape: Restore, location: "header", location_name: "x-amz-restore"))
1346
+ HeadObjectOutput.add_member(:archive_status, Shapes::ShapeRef.new(shape: ArchiveStatus, location: "header", location_name: "x-amz-archive-status"))
1202
1347
  HeadObjectOutput.add_member(:last_modified, Shapes::ShapeRef.new(shape: LastModified, location: "header", location_name: "Last-Modified"))
1203
1348
  HeadObjectOutput.add_member(:content_length, Shapes::ShapeRef.new(shape: ContentLength, location: "header", location_name: "Content-Length"))
1204
1349
  HeadObjectOutput.add_member(:etag, Shapes::ShapeRef.new(shape: ETag, location: "header", location_name: "ETag"))
@@ -1217,6 +1362,7 @@ module Aws::S3
1217
1362
  HeadObjectOutput.add_member(:sse_customer_algorithm, Shapes::ShapeRef.new(shape: SSECustomerAlgorithm, location: "header", location_name: "x-amz-server-side-encryption-customer-algorithm"))
1218
1363
  HeadObjectOutput.add_member(:sse_customer_key_md5, Shapes::ShapeRef.new(shape: SSECustomerKeyMD5, location: "header", location_name: "x-amz-server-side-encryption-customer-key-MD5"))
1219
1364
  HeadObjectOutput.add_member(:ssekms_key_id, Shapes::ShapeRef.new(shape: SSEKMSKeyId, location: "header", location_name: "x-amz-server-side-encryption-aws-kms-key-id"))
1365
+ HeadObjectOutput.add_member(:bucket_key_enabled, Shapes::ShapeRef.new(shape: BucketKeyEnabled, location: "header", location_name: "x-amz-server-side-encryption-bucket-key-enabled"))
1220
1366
  HeadObjectOutput.add_member(:storage_class, Shapes::ShapeRef.new(shape: StorageClass, location: "header", location_name: "x-amz-storage-class"))
1221
1367
  HeadObjectOutput.add_member(:request_charged, Shapes::ShapeRef.new(shape: RequestCharged, location: "header", location_name: "x-amz-request-charged"))
1222
1368
  HeadObjectOutput.add_member(:replication_status, Shapes::ShapeRef.new(shape: ReplicationStatus, location: "header", location_name: "x-amz-replication-status"))
@@ -1239,6 +1385,7 @@ module Aws::S3
1239
1385
  HeadObjectRequest.add_member(:sse_customer_key_md5, Shapes::ShapeRef.new(shape: SSECustomerKeyMD5, location: "header", location_name: "x-amz-server-side-encryption-customer-key-MD5"))
1240
1386
  HeadObjectRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
1241
1387
  HeadObjectRequest.add_member(:part_number, Shapes::ShapeRef.new(shape: PartNumber, location: "querystring", location_name: "partNumber"))
1388
+ HeadObjectRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1242
1389
  HeadObjectRequest.struct_class = Types::HeadObjectRequest
1243
1390
 
1244
1391
  IndexDocument.add_member(:suffix, Shapes::ShapeRef.new(shape: Suffix, required: true, location_name: "Suffix"))
@@ -1254,6 +1401,27 @@ module Aws::S3
1254
1401
  InputSerialization.add_member(:parquet, Shapes::ShapeRef.new(shape: ParquetInput, location_name: "Parquet"))
1255
1402
  InputSerialization.struct_class = Types::InputSerialization
1256
1403
 
1404
+ IntelligentTieringAndOperator.add_member(:prefix, Shapes::ShapeRef.new(shape: Prefix, location_name: "Prefix"))
1405
+ IntelligentTieringAndOperator.add_member(:tags, Shapes::ShapeRef.new(shape: TagSet, location_name: "Tag", metadata: {"flattened"=>true}))
1406
+ IntelligentTieringAndOperator.struct_class = Types::IntelligentTieringAndOperator
1407
+
1408
+ IntelligentTieringConfiguration.add_member(:id, Shapes::ShapeRef.new(shape: IntelligentTieringId, required: true, location_name: "Id"))
1409
+ IntelligentTieringConfiguration.add_member(:filter, Shapes::ShapeRef.new(shape: IntelligentTieringFilter, location_name: "Filter"))
1410
+ IntelligentTieringConfiguration.add_member(:status, Shapes::ShapeRef.new(shape: IntelligentTieringStatus, required: true, location_name: "Status"))
1411
+ IntelligentTieringConfiguration.add_member(:tierings, Shapes::ShapeRef.new(shape: TieringList, required: true, location_name: "Tiering"))
1412
+ IntelligentTieringConfiguration.struct_class = Types::IntelligentTieringConfiguration
1413
+
1414
+ IntelligentTieringConfigurationList.member = Shapes::ShapeRef.new(shape: IntelligentTieringConfiguration)
1415
+
1416
+ IntelligentTieringFilter.add_member(:prefix, Shapes::ShapeRef.new(shape: Prefix, location_name: "Prefix"))
1417
+ IntelligentTieringFilter.add_member(:tag, Shapes::ShapeRef.new(shape: Tag, location_name: "Tag"))
1418
+ IntelligentTieringFilter.add_member(:and, Shapes::ShapeRef.new(shape: IntelligentTieringAndOperator, location_name: "And"))
1419
+ IntelligentTieringFilter.struct_class = Types::IntelligentTieringFilter
1420
+
1421
+ InvalidObjectState.add_member(:storage_class, Shapes::ShapeRef.new(shape: StorageClass, location_name: "StorageClass"))
1422
+ InvalidObjectState.add_member(:access_tier, Shapes::ShapeRef.new(shape: IntelligentTieringAccessTier, location_name: "AccessTier"))
1423
+ InvalidObjectState.struct_class = Types::InvalidObjectState
1424
+
1257
1425
  InventoryConfiguration.add_member(:destination, Shapes::ShapeRef.new(shape: InventoryDestination, required: true, location_name: "Destination"))
1258
1426
  InventoryConfiguration.add_member(:is_enabled, Shapes::ShapeRef.new(shape: IsEnabled, required: true, location_name: "IsEnabled"))
1259
1427
  InventoryConfiguration.add_member(:filter, Shapes::ShapeRef.new(shape: InventoryFilter, location_name: "Filter"))
@@ -1339,8 +1507,19 @@ module Aws::S3
1339
1507
 
1340
1508
  ListBucketAnalyticsConfigurationsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1341
1509
  ListBucketAnalyticsConfigurationsRequest.add_member(:continuation_token, Shapes::ShapeRef.new(shape: Token, location: "querystring", location_name: "continuation-token"))
1510
+ ListBucketAnalyticsConfigurationsRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1342
1511
  ListBucketAnalyticsConfigurationsRequest.struct_class = Types::ListBucketAnalyticsConfigurationsRequest
1343
1512
 
1513
+ ListBucketIntelligentTieringConfigurationsOutput.add_member(:is_truncated, Shapes::ShapeRef.new(shape: IsTruncated, location_name: "IsTruncated"))
1514
+ ListBucketIntelligentTieringConfigurationsOutput.add_member(:continuation_token, Shapes::ShapeRef.new(shape: Token, location_name: "ContinuationToken"))
1515
+ ListBucketIntelligentTieringConfigurationsOutput.add_member(:next_continuation_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextContinuationToken"))
1516
+ ListBucketIntelligentTieringConfigurationsOutput.add_member(:intelligent_tiering_configuration_list, Shapes::ShapeRef.new(shape: IntelligentTieringConfigurationList, location_name: "IntelligentTieringConfiguration"))
1517
+ ListBucketIntelligentTieringConfigurationsOutput.struct_class = Types::ListBucketIntelligentTieringConfigurationsOutput
1518
+
1519
+ ListBucketIntelligentTieringConfigurationsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1520
+ ListBucketIntelligentTieringConfigurationsRequest.add_member(:continuation_token, Shapes::ShapeRef.new(shape: Token, location: "querystring", location_name: "continuation-token"))
1521
+ ListBucketIntelligentTieringConfigurationsRequest.struct_class = Types::ListBucketIntelligentTieringConfigurationsRequest
1522
+
1344
1523
  ListBucketInventoryConfigurationsOutput.add_member(:continuation_token, Shapes::ShapeRef.new(shape: Token, location_name: "ContinuationToken"))
1345
1524
  ListBucketInventoryConfigurationsOutput.add_member(:inventory_configuration_list, Shapes::ShapeRef.new(shape: InventoryConfigurationList, location_name: "InventoryConfiguration"))
1346
1525
  ListBucketInventoryConfigurationsOutput.add_member(:is_truncated, Shapes::ShapeRef.new(shape: IsTruncated, location_name: "IsTruncated"))
@@ -1349,6 +1528,7 @@ module Aws::S3
1349
1528
 
1350
1529
  ListBucketInventoryConfigurationsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1351
1530
  ListBucketInventoryConfigurationsRequest.add_member(:continuation_token, Shapes::ShapeRef.new(shape: Token, location: "querystring", location_name: "continuation-token"))
1531
+ ListBucketInventoryConfigurationsRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1352
1532
  ListBucketInventoryConfigurationsRequest.struct_class = Types::ListBucketInventoryConfigurationsRequest
1353
1533
 
1354
1534
  ListBucketMetricsConfigurationsOutput.add_member(:is_truncated, Shapes::ShapeRef.new(shape: IsTruncated, location_name: "IsTruncated"))
@@ -1359,6 +1539,7 @@ module Aws::S3
1359
1539
 
1360
1540
  ListBucketMetricsConfigurationsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1361
1541
  ListBucketMetricsConfigurationsRequest.add_member(:continuation_token, Shapes::ShapeRef.new(shape: Token, location: "querystring", location_name: "continuation-token"))
1542
+ ListBucketMetricsConfigurationsRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1362
1543
  ListBucketMetricsConfigurationsRequest.struct_class = Types::ListBucketMetricsConfigurationsRequest
1363
1544
 
1364
1545
  ListBucketsOutput.add_member(:buckets, Shapes::ShapeRef.new(shape: Buckets, location_name: "Buckets"))
@@ -1386,6 +1567,7 @@ module Aws::S3
1386
1567
  ListMultipartUploadsRequest.add_member(:max_uploads, Shapes::ShapeRef.new(shape: MaxUploads, location: "querystring", location_name: "max-uploads"))
1387
1568
  ListMultipartUploadsRequest.add_member(:prefix, Shapes::ShapeRef.new(shape: Prefix, location: "querystring", location_name: "prefix"))
1388
1569
  ListMultipartUploadsRequest.add_member(:upload_id_marker, Shapes::ShapeRef.new(shape: UploadIdMarker, location: "querystring", location_name: "upload-id-marker"))
1570
+ ListMultipartUploadsRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1389
1571
  ListMultipartUploadsRequest.struct_class = Types::ListMultipartUploadsRequest
1390
1572
 
1391
1573
  ListObjectVersionsOutput.add_member(:is_truncated, Shapes::ShapeRef.new(shape: IsTruncated, location_name: "IsTruncated"))
@@ -1410,6 +1592,7 @@ module Aws::S3
1410
1592
  ListObjectVersionsRequest.add_member(:max_keys, Shapes::ShapeRef.new(shape: MaxKeys, location: "querystring", location_name: "max-keys"))
1411
1593
  ListObjectVersionsRequest.add_member(:prefix, Shapes::ShapeRef.new(shape: Prefix, location: "querystring", location_name: "prefix"))
1412
1594
  ListObjectVersionsRequest.add_member(:version_id_marker, Shapes::ShapeRef.new(shape: VersionIdMarker, location: "querystring", location_name: "version-id-marker"))
1595
+ ListObjectVersionsRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1413
1596
  ListObjectVersionsRequest.struct_class = Types::ListObjectVersionsRequest
1414
1597
 
1415
1598
  ListObjectsOutput.add_member(:is_truncated, Shapes::ShapeRef.new(shape: IsTruncated, location_name: "IsTruncated"))
@@ -1431,6 +1614,7 @@ module Aws::S3
1431
1614
  ListObjectsRequest.add_member(:max_keys, Shapes::ShapeRef.new(shape: MaxKeys, location: "querystring", location_name: "max-keys"))
1432
1615
  ListObjectsRequest.add_member(:prefix, Shapes::ShapeRef.new(shape: Prefix, location: "querystring", location_name: "prefix"))
1433
1616
  ListObjectsRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
1617
+ ListObjectsRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1434
1618
  ListObjectsRequest.struct_class = Types::ListObjectsRequest
1435
1619
 
1436
1620
  ListObjectsV2Output.add_member(:is_truncated, Shapes::ShapeRef.new(shape: IsTruncated, location_name: "IsTruncated"))
@@ -1456,6 +1640,7 @@ module Aws::S3
1456
1640
  ListObjectsV2Request.add_member(:fetch_owner, Shapes::ShapeRef.new(shape: FetchOwner, location: "querystring", location_name: "fetch-owner"))
1457
1641
  ListObjectsV2Request.add_member(:start_after, Shapes::ShapeRef.new(shape: StartAfter, location: "querystring", location_name: "start-after"))
1458
1642
  ListObjectsV2Request.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
1643
+ ListObjectsV2Request.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1459
1644
  ListObjectsV2Request.struct_class = Types::ListObjectsV2Request
1460
1645
 
1461
1646
  ListPartsOutput.add_member(:abort_date, Shapes::ShapeRef.new(shape: AbortDate, location: "header", location_name: "x-amz-abort-date"))
@@ -1480,6 +1665,7 @@ module Aws::S3
1480
1665
  ListPartsRequest.add_member(:part_number_marker, Shapes::ShapeRef.new(shape: PartNumberMarker, location: "querystring", location_name: "part-number-marker"))
1481
1666
  ListPartsRequest.add_member(:upload_id, Shapes::ShapeRef.new(shape: MultipartUploadId, required: true, location: "querystring", location_name: "uploadId"))
1482
1667
  ListPartsRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
1668
+ ListPartsRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1483
1669
  ListPartsRequest.struct_class = Types::ListPartsRequest
1484
1670
 
1485
1671
  LoggingEnabled.add_member(:target_bucket, Shapes::ShapeRef.new(shape: TargetBucket, required: true, location_name: "TargetBucket"))
@@ -1494,6 +1680,10 @@ module Aws::S3
1494
1680
  MetadataEntry.add_member(:value, Shapes::ShapeRef.new(shape: MetadataValue, location_name: "Value"))
1495
1681
  MetadataEntry.struct_class = Types::MetadataEntry
1496
1682
 
1683
+ Metrics.add_member(:status, Shapes::ShapeRef.new(shape: MetricsStatus, required: true, location_name: "Status"))
1684
+ Metrics.add_member(:event_threshold, Shapes::ShapeRef.new(shape: ReplicationTimeValue, location_name: "EventThreshold"))
1685
+ Metrics.struct_class = Types::Metrics
1686
+
1497
1687
  MetricsAndOperator.add_member(:prefix, Shapes::ShapeRef.new(shape: Prefix, location_name: "Prefix"))
1498
1688
  MetricsAndOperator.add_member(:tags, Shapes::ShapeRef.new(shape: TagSet, location_name: "Tag", metadata: {"flattened"=>true}))
1499
1689
  MetricsAndOperator.struct_class = Types::MetricsAndOperator
@@ -1519,6 +1709,12 @@ module Aws::S3
1519
1709
 
1520
1710
  MultipartUploadList.member = Shapes::ShapeRef.new(shape: MultipartUpload)
1521
1711
 
1712
+ NoSuchBucket.struct_class = Types::NoSuchBucket
1713
+
1714
+ NoSuchKey.struct_class = Types::NoSuchKey
1715
+
1716
+ NoSuchUpload.struct_class = Types::NoSuchUpload
1717
+
1522
1718
  NoncurrentVersionExpiration.add_member(:noncurrent_days, Shapes::ShapeRef.new(shape: Days, location_name: "NoncurrentDays"))
1523
1719
  NoncurrentVersionExpiration.struct_class = Types::NoncurrentVersionExpiration
1524
1720
 
@@ -1549,6 +1745,8 @@ module Aws::S3
1549
1745
  Object.add_member(:owner, Shapes::ShapeRef.new(shape: Owner, location_name: "Owner"))
1550
1746
  Object.struct_class = Types::Object
1551
1747
 
1748
+ ObjectAlreadyInActiveTierError.struct_class = Types::ObjectAlreadyInActiveTierError
1749
+
1552
1750
  ObjectIdentifier.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location_name: "Key"))
1553
1751
  ObjectIdentifier.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location_name: "VersionId"))
1554
1752
  ObjectIdentifier.struct_class = Types::ObjectIdentifier
@@ -1571,6 +1769,8 @@ module Aws::S3
1571
1769
  ObjectLockRule.add_member(:default_retention, Shapes::ShapeRef.new(shape: DefaultRetention, location_name: "DefaultRetention"))
1572
1770
  ObjectLockRule.struct_class = Types::ObjectLockRule
1573
1771
 
1772
+ ObjectNotInActiveTierError.struct_class = Types::ObjectNotInActiveTierError
1773
+
1574
1774
  ObjectVersion.add_member(:etag, Shapes::ShapeRef.new(shape: ETag, location_name: "ETag"))
1575
1775
  ObjectVersion.add_member(:size, Shapes::ShapeRef.new(shape: Size, location_name: "Size"))
1576
1776
  ObjectVersion.add_member(:storage_class, Shapes::ShapeRef.new(shape: ObjectVersionStorageClass, location_name: "StorageClass"))
@@ -1594,6 +1794,14 @@ module Aws::S3
1594
1794
  Owner.add_member(:id, Shapes::ShapeRef.new(shape: ID, location_name: "ID"))
1595
1795
  Owner.struct_class = Types::Owner
1596
1796
 
1797
+ OwnershipControls.add_member(:rules, Shapes::ShapeRef.new(shape: OwnershipControlsRules, required: true, location_name: "Rule"))
1798
+ OwnershipControls.struct_class = Types::OwnershipControls
1799
+
1800
+ OwnershipControlsRule.add_member(:object_ownership, Shapes::ShapeRef.new(shape: ObjectOwnership, required: true, location_name: "ObjectOwnership"))
1801
+ OwnershipControlsRule.struct_class = Types::OwnershipControlsRule
1802
+
1803
+ OwnershipControlsRules.member = Shapes::ShapeRef.new(shape: OwnershipControlsRule)
1804
+
1597
1805
  ParquetInput.struct_class = Types::ParquetInput
1598
1806
 
1599
1807
  Part.add_member(:part_number, Shapes::ShapeRef.new(shape: PartNumber, location_name: "PartNumber"))
@@ -1623,6 +1831,7 @@ module Aws::S3
1623
1831
 
1624
1832
  PutBucketAccelerateConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1625
1833
  PutBucketAccelerateConfigurationRequest.add_member(:accelerate_configuration, Shapes::ShapeRef.new(shape: AccelerateConfiguration, required: true, location_name: "AccelerateConfiguration", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1834
+ PutBucketAccelerateConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1626
1835
  PutBucketAccelerateConfigurationRequest.struct_class = Types::PutBucketAccelerateConfigurationRequest
1627
1836
  PutBucketAccelerateConfigurationRequest[:payload] = :accelerate_configuration
1628
1837
  PutBucketAccelerateConfigurationRequest[:payload_member] = PutBucketAccelerateConfigurationRequest.member(:accelerate_configuration)
@@ -1636,6 +1845,7 @@ module Aws::S3
1636
1845
  PutBucketAclRequest.add_member(:grant_read_acp, Shapes::ShapeRef.new(shape: GrantReadACP, location: "header", location_name: "x-amz-grant-read-acp"))
1637
1846
  PutBucketAclRequest.add_member(:grant_write, Shapes::ShapeRef.new(shape: GrantWrite, location: "header", location_name: "x-amz-grant-write"))
1638
1847
  PutBucketAclRequest.add_member(:grant_write_acp, Shapes::ShapeRef.new(shape: GrantWriteACP, location: "header", location_name: "x-amz-grant-write-acp"))
1848
+ PutBucketAclRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1639
1849
  PutBucketAclRequest.struct_class = Types::PutBucketAclRequest
1640
1850
  PutBucketAclRequest[:payload] = :access_control_policy
1641
1851
  PutBucketAclRequest[:payload_member] = PutBucketAclRequest.member(:access_control_policy)
@@ -1643,6 +1853,7 @@ module Aws::S3
1643
1853
  PutBucketAnalyticsConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1644
1854
  PutBucketAnalyticsConfigurationRequest.add_member(:id, Shapes::ShapeRef.new(shape: AnalyticsId, required: true, location: "querystring", location_name: "id"))
1645
1855
  PutBucketAnalyticsConfigurationRequest.add_member(:analytics_configuration, Shapes::ShapeRef.new(shape: AnalyticsConfiguration, required: true, location_name: "AnalyticsConfiguration", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1856
+ PutBucketAnalyticsConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1646
1857
  PutBucketAnalyticsConfigurationRequest.struct_class = Types::PutBucketAnalyticsConfigurationRequest
1647
1858
  PutBucketAnalyticsConfigurationRequest[:payload] = :analytics_configuration
1648
1859
  PutBucketAnalyticsConfigurationRequest[:payload_member] = PutBucketAnalyticsConfigurationRequest.member(:analytics_configuration)
@@ -1650,6 +1861,7 @@ module Aws::S3
1650
1861
  PutBucketCorsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1651
1862
  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/"}}))
1652
1863
  PutBucketCorsRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
1864
+ PutBucketCorsRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1653
1865
  PutBucketCorsRequest.struct_class = Types::PutBucketCorsRequest
1654
1866
  PutBucketCorsRequest[:payload] = :cors_configuration
1655
1867
  PutBucketCorsRequest[:payload_member] = PutBucketCorsRequest.member(:cors_configuration)
@@ -1657,19 +1869,29 @@ module Aws::S3
1657
1869
  PutBucketEncryptionRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1658
1870
  PutBucketEncryptionRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
1659
1871
  PutBucketEncryptionRequest.add_member(:server_side_encryption_configuration, Shapes::ShapeRef.new(shape: ServerSideEncryptionConfiguration, required: true, location_name: "ServerSideEncryptionConfiguration", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1872
+ PutBucketEncryptionRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1660
1873
  PutBucketEncryptionRequest.struct_class = Types::PutBucketEncryptionRequest
1661
1874
  PutBucketEncryptionRequest[:payload] = :server_side_encryption_configuration
1662
1875
  PutBucketEncryptionRequest[:payload_member] = PutBucketEncryptionRequest.member(:server_side_encryption_configuration)
1663
1876
 
1877
+ PutBucketIntelligentTieringConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1878
+ PutBucketIntelligentTieringConfigurationRequest.add_member(:id, Shapes::ShapeRef.new(shape: IntelligentTieringId, required: true, location: "querystring", location_name: "id"))
1879
+ PutBucketIntelligentTieringConfigurationRequest.add_member(:intelligent_tiering_configuration, Shapes::ShapeRef.new(shape: IntelligentTieringConfiguration, required: true, location_name: "IntelligentTieringConfiguration", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1880
+ PutBucketIntelligentTieringConfigurationRequest.struct_class = Types::PutBucketIntelligentTieringConfigurationRequest
1881
+ PutBucketIntelligentTieringConfigurationRequest[:payload] = :intelligent_tiering_configuration
1882
+ PutBucketIntelligentTieringConfigurationRequest[:payload_member] = PutBucketIntelligentTieringConfigurationRequest.member(:intelligent_tiering_configuration)
1883
+
1664
1884
  PutBucketInventoryConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1665
1885
  PutBucketInventoryConfigurationRequest.add_member(:id, Shapes::ShapeRef.new(shape: InventoryId, required: true, location: "querystring", location_name: "id"))
1666
1886
  PutBucketInventoryConfigurationRequest.add_member(:inventory_configuration, Shapes::ShapeRef.new(shape: InventoryConfiguration, required: true, location_name: "InventoryConfiguration", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1887
+ PutBucketInventoryConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1667
1888
  PutBucketInventoryConfigurationRequest.struct_class = Types::PutBucketInventoryConfigurationRequest
1668
1889
  PutBucketInventoryConfigurationRequest[:payload] = :inventory_configuration
1669
1890
  PutBucketInventoryConfigurationRequest[:payload_member] = PutBucketInventoryConfigurationRequest.member(:inventory_configuration)
1670
1891
 
1671
1892
  PutBucketLifecycleConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1672
1893
  PutBucketLifecycleConfigurationRequest.add_member(:lifecycle_configuration, Shapes::ShapeRef.new(shape: BucketLifecycleConfiguration, location_name: "LifecycleConfiguration", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1894
+ PutBucketLifecycleConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1673
1895
  PutBucketLifecycleConfigurationRequest.struct_class = Types::PutBucketLifecycleConfigurationRequest
1674
1896
  PutBucketLifecycleConfigurationRequest[:payload] = :lifecycle_configuration
1675
1897
  PutBucketLifecycleConfigurationRequest[:payload_member] = PutBucketLifecycleConfigurationRequest.member(:lifecycle_configuration)
@@ -1677,6 +1899,7 @@ module Aws::S3
1677
1899
  PutBucketLifecycleRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1678
1900
  PutBucketLifecycleRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
1679
1901
  PutBucketLifecycleRequest.add_member(:lifecycle_configuration, Shapes::ShapeRef.new(shape: LifecycleConfiguration, location_name: "LifecycleConfiguration", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1902
+ PutBucketLifecycleRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1680
1903
  PutBucketLifecycleRequest.struct_class = Types::PutBucketLifecycleRequest
1681
1904
  PutBucketLifecycleRequest[:payload] = :lifecycle_configuration
1682
1905
  PutBucketLifecycleRequest[:payload_member] = PutBucketLifecycleRequest.member(:lifecycle_configuration)
@@ -1684,6 +1907,7 @@ module Aws::S3
1684
1907
  PutBucketLoggingRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1685
1908
  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/"}}))
1686
1909
  PutBucketLoggingRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
1910
+ PutBucketLoggingRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1687
1911
  PutBucketLoggingRequest.struct_class = Types::PutBucketLoggingRequest
1688
1912
  PutBucketLoggingRequest[:payload] = :bucket_logging_status
1689
1913
  PutBucketLoggingRequest[:payload_member] = PutBucketLoggingRequest.member(:bucket_logging_status)
@@ -1691,12 +1915,14 @@ module Aws::S3
1691
1915
  PutBucketMetricsConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1692
1916
  PutBucketMetricsConfigurationRequest.add_member(:id, Shapes::ShapeRef.new(shape: MetricsId, required: true, location: "querystring", location_name: "id"))
1693
1917
  PutBucketMetricsConfigurationRequest.add_member(:metrics_configuration, Shapes::ShapeRef.new(shape: MetricsConfiguration, required: true, location_name: "MetricsConfiguration", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1918
+ PutBucketMetricsConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1694
1919
  PutBucketMetricsConfigurationRequest.struct_class = Types::PutBucketMetricsConfigurationRequest
1695
1920
  PutBucketMetricsConfigurationRequest[:payload] = :metrics_configuration
1696
1921
  PutBucketMetricsConfigurationRequest[:payload_member] = PutBucketMetricsConfigurationRequest.member(:metrics_configuration)
1697
1922
 
1698
1923
  PutBucketNotificationConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1699
1924
  PutBucketNotificationConfigurationRequest.add_member(:notification_configuration, Shapes::ShapeRef.new(shape: NotificationConfiguration, required: true, location_name: "NotificationConfiguration", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1925
+ PutBucketNotificationConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1700
1926
  PutBucketNotificationConfigurationRequest.struct_class = Types::PutBucketNotificationConfigurationRequest
1701
1927
  PutBucketNotificationConfigurationRequest[:payload] = :notification_configuration
1702
1928
  PutBucketNotificationConfigurationRequest[:payload_member] = PutBucketNotificationConfigurationRequest.member(:notification_configuration)
@@ -1704,14 +1930,24 @@ module Aws::S3
1704
1930
  PutBucketNotificationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1705
1931
  PutBucketNotificationRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
1706
1932
  PutBucketNotificationRequest.add_member(:notification_configuration, Shapes::ShapeRef.new(shape: NotificationConfigurationDeprecated, required: true, location_name: "NotificationConfiguration", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1933
+ PutBucketNotificationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1707
1934
  PutBucketNotificationRequest.struct_class = Types::PutBucketNotificationRequest
1708
1935
  PutBucketNotificationRequest[:payload] = :notification_configuration
1709
1936
  PutBucketNotificationRequest[:payload_member] = PutBucketNotificationRequest.member(:notification_configuration)
1710
1937
 
1938
+ PutBucketOwnershipControlsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1939
+ PutBucketOwnershipControlsRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
1940
+ PutBucketOwnershipControlsRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1941
+ 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/"}}))
1942
+ PutBucketOwnershipControlsRequest.struct_class = Types::PutBucketOwnershipControlsRequest
1943
+ PutBucketOwnershipControlsRequest[:payload] = :ownership_controls
1944
+ PutBucketOwnershipControlsRequest[:payload_member] = PutBucketOwnershipControlsRequest.member(:ownership_controls)
1945
+
1711
1946
  PutBucketPolicyRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1712
1947
  PutBucketPolicyRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
1713
1948
  PutBucketPolicyRequest.add_member(:confirm_remove_self_bucket_access, Shapes::ShapeRef.new(shape: ConfirmRemoveSelfBucketAccess, location: "header", location_name: "x-amz-confirm-remove-self-bucket-access"))
1714
1949
  PutBucketPolicyRequest.add_member(:policy, Shapes::ShapeRef.new(shape: Policy, required: true, location_name: "Policy"))
1950
+ PutBucketPolicyRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1715
1951
  PutBucketPolicyRequest.struct_class = Types::PutBucketPolicyRequest
1716
1952
  PutBucketPolicyRequest[:payload] = :policy
1717
1953
  PutBucketPolicyRequest[:payload_member] = PutBucketPolicyRequest.member(:policy)
@@ -1719,6 +1955,8 @@ module Aws::S3
1719
1955
  PutBucketReplicationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1720
1956
  PutBucketReplicationRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
1721
1957
  PutBucketReplicationRequest.add_member(:replication_configuration, Shapes::ShapeRef.new(shape: ReplicationConfiguration, required: true, location_name: "ReplicationConfiguration", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1958
+ PutBucketReplicationRequest.add_member(:token, Shapes::ShapeRef.new(shape: ObjectLockToken, location: "header", location_name: "x-amz-bucket-object-lock-token"))
1959
+ PutBucketReplicationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1722
1960
  PutBucketReplicationRequest.struct_class = Types::PutBucketReplicationRequest
1723
1961
  PutBucketReplicationRequest[:payload] = :replication_configuration
1724
1962
  PutBucketReplicationRequest[:payload_member] = PutBucketReplicationRequest.member(:replication_configuration)
@@ -1726,6 +1964,7 @@ module Aws::S3
1726
1964
  PutBucketRequestPaymentRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1727
1965
  PutBucketRequestPaymentRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
1728
1966
  PutBucketRequestPaymentRequest.add_member(:request_payment_configuration, Shapes::ShapeRef.new(shape: RequestPaymentConfiguration, required: true, location_name: "RequestPaymentConfiguration", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1967
+ PutBucketRequestPaymentRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1729
1968
  PutBucketRequestPaymentRequest.struct_class = Types::PutBucketRequestPaymentRequest
1730
1969
  PutBucketRequestPaymentRequest[:payload] = :request_payment_configuration
1731
1970
  PutBucketRequestPaymentRequest[:payload_member] = PutBucketRequestPaymentRequest.member(:request_payment_configuration)
@@ -1733,6 +1972,7 @@ module Aws::S3
1733
1972
  PutBucketTaggingRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1734
1973
  PutBucketTaggingRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
1735
1974
  PutBucketTaggingRequest.add_member(:tagging, Shapes::ShapeRef.new(shape: Tagging, required: true, location_name: "Tagging", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1975
+ PutBucketTaggingRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1736
1976
  PutBucketTaggingRequest.struct_class = Types::PutBucketTaggingRequest
1737
1977
  PutBucketTaggingRequest[:payload] = :tagging
1738
1978
  PutBucketTaggingRequest[:payload_member] = PutBucketTaggingRequest.member(:tagging)
@@ -1741,6 +1981,7 @@ module Aws::S3
1741
1981
  PutBucketVersioningRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
1742
1982
  PutBucketVersioningRequest.add_member(:mfa, Shapes::ShapeRef.new(shape: MFA, location: "header", location_name: "x-amz-mfa"))
1743
1983
  PutBucketVersioningRequest.add_member(:versioning_configuration, Shapes::ShapeRef.new(shape: VersioningConfiguration, required: true, location_name: "VersioningConfiguration", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1984
+ PutBucketVersioningRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1744
1985
  PutBucketVersioningRequest.struct_class = Types::PutBucketVersioningRequest
1745
1986
  PutBucketVersioningRequest[:payload] = :versioning_configuration
1746
1987
  PutBucketVersioningRequest[:payload_member] = PutBucketVersioningRequest.member(:versioning_configuration)
@@ -1748,6 +1989,7 @@ module Aws::S3
1748
1989
  PutBucketWebsiteRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1749
1990
  PutBucketWebsiteRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
1750
1991
  PutBucketWebsiteRequest.add_member(:website_configuration, Shapes::ShapeRef.new(shape: WebsiteConfiguration, required: true, location_name: "WebsiteConfiguration", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1992
+ PutBucketWebsiteRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1751
1993
  PutBucketWebsiteRequest.struct_class = Types::PutBucketWebsiteRequest
1752
1994
  PutBucketWebsiteRequest[:payload] = :website_configuration
1753
1995
  PutBucketWebsiteRequest[:payload_member] = PutBucketWebsiteRequest.member(:website_configuration)
@@ -1767,6 +2009,7 @@ module Aws::S3
1767
2009
  PutObjectAclRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
1768
2010
  PutObjectAclRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
1769
2011
  PutObjectAclRequest.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "querystring", location_name: "versionId"))
2012
+ PutObjectAclRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1770
2013
  PutObjectAclRequest.struct_class = Types::PutObjectAclRequest
1771
2014
  PutObjectAclRequest[:payload] = :access_control_policy
1772
2015
  PutObjectAclRequest[:payload_member] = PutObjectAclRequest.member(:access_control_policy)
@@ -1780,6 +2023,7 @@ module Aws::S3
1780
2023
  PutObjectLegalHoldRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
1781
2024
  PutObjectLegalHoldRequest.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "querystring", location_name: "versionId"))
1782
2025
  PutObjectLegalHoldRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
2026
+ PutObjectLegalHoldRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1783
2027
  PutObjectLegalHoldRequest.struct_class = Types::PutObjectLegalHoldRequest
1784
2028
  PutObjectLegalHoldRequest[:payload] = :legal_hold
1785
2029
  PutObjectLegalHoldRequest[:payload_member] = PutObjectLegalHoldRequest.member(:legal_hold)
@@ -1792,6 +2036,7 @@ module Aws::S3
1792
2036
  PutObjectLockConfigurationRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
1793
2037
  PutObjectLockConfigurationRequest.add_member(:token, Shapes::ShapeRef.new(shape: ObjectLockToken, location: "header", location_name: "x-amz-bucket-object-lock-token"))
1794
2038
  PutObjectLockConfigurationRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
2039
+ PutObjectLockConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1795
2040
  PutObjectLockConfigurationRequest.struct_class = Types::PutObjectLockConfigurationRequest
1796
2041
  PutObjectLockConfigurationRequest[:payload] = :object_lock_configuration
1797
2042
  PutObjectLockConfigurationRequest[:payload_member] = PutObjectLockConfigurationRequest.member(:object_lock_configuration)
@@ -1803,6 +2048,8 @@ module Aws::S3
1803
2048
  PutObjectOutput.add_member(:sse_customer_algorithm, Shapes::ShapeRef.new(shape: SSECustomerAlgorithm, location: "header", location_name: "x-amz-server-side-encryption-customer-algorithm"))
1804
2049
  PutObjectOutput.add_member(:sse_customer_key_md5, Shapes::ShapeRef.new(shape: SSECustomerKeyMD5, location: "header", location_name: "x-amz-server-side-encryption-customer-key-MD5"))
1805
2050
  PutObjectOutput.add_member(:ssekms_key_id, Shapes::ShapeRef.new(shape: SSEKMSKeyId, location: "header", location_name: "x-amz-server-side-encryption-aws-kms-key-id"))
2051
+ PutObjectOutput.add_member(:ssekms_encryption_context, Shapes::ShapeRef.new(shape: SSEKMSEncryptionContext, location: "header", location_name: "x-amz-server-side-encryption-context"))
2052
+ PutObjectOutput.add_member(:bucket_key_enabled, Shapes::ShapeRef.new(shape: BucketKeyEnabled, location: "header", location_name: "x-amz-server-side-encryption-bucket-key-enabled"))
1806
2053
  PutObjectOutput.add_member(:request_charged, Shapes::ShapeRef.new(shape: RequestCharged, location: "header", location_name: "x-amz-request-charged"))
1807
2054
  PutObjectOutput.struct_class = Types::PutObjectOutput
1808
2055
 
@@ -1830,11 +2077,14 @@ module Aws::S3
1830
2077
  PutObjectRequest.add_member(:sse_customer_key, Shapes::ShapeRef.new(shape: SSECustomerKey, location: "header", location_name: "x-amz-server-side-encryption-customer-key"))
1831
2078
  PutObjectRequest.add_member(:sse_customer_key_md5, Shapes::ShapeRef.new(shape: SSECustomerKeyMD5, location: "header", location_name: "x-amz-server-side-encryption-customer-key-MD5"))
1832
2079
  PutObjectRequest.add_member(:ssekms_key_id, Shapes::ShapeRef.new(shape: SSEKMSKeyId, location: "header", location_name: "x-amz-server-side-encryption-aws-kms-key-id"))
2080
+ PutObjectRequest.add_member(:ssekms_encryption_context, Shapes::ShapeRef.new(shape: SSEKMSEncryptionContext, location: "header", location_name: "x-amz-server-side-encryption-context"))
2081
+ PutObjectRequest.add_member(:bucket_key_enabled, Shapes::ShapeRef.new(shape: BucketKeyEnabled, location: "header", location_name: "x-amz-server-side-encryption-bucket-key-enabled"))
1833
2082
  PutObjectRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
1834
2083
  PutObjectRequest.add_member(:tagging, Shapes::ShapeRef.new(shape: TaggingHeader, location: "header", location_name: "x-amz-tagging"))
1835
2084
  PutObjectRequest.add_member(:object_lock_mode, Shapes::ShapeRef.new(shape: ObjectLockMode, location: "header", location_name: "x-amz-object-lock-mode"))
1836
2085
  PutObjectRequest.add_member(:object_lock_retain_until_date, Shapes::ShapeRef.new(shape: ObjectLockRetainUntilDate, location: "header", location_name: "x-amz-object-lock-retain-until-date"))
1837
2086
  PutObjectRequest.add_member(:object_lock_legal_hold_status, Shapes::ShapeRef.new(shape: ObjectLockLegalHoldStatus, location: "header", location_name: "x-amz-object-lock-legal-hold"))
2087
+ PutObjectRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1838
2088
  PutObjectRequest.struct_class = Types::PutObjectRequest
1839
2089
  PutObjectRequest[:payload] = :body
1840
2090
  PutObjectRequest[:payload_member] = PutObjectRequest.member(:body)
@@ -1849,6 +2099,7 @@ module Aws::S3
1849
2099
  PutObjectRetentionRequest.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "querystring", location_name: "versionId"))
1850
2100
  PutObjectRetentionRequest.add_member(:bypass_governance_retention, Shapes::ShapeRef.new(shape: BypassGovernanceRetention, location: "header", location_name: "x-amz-bypass-governance-retention"))
1851
2101
  PutObjectRetentionRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
2102
+ PutObjectRetentionRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1852
2103
  PutObjectRetentionRequest.struct_class = Types::PutObjectRetentionRequest
1853
2104
  PutObjectRetentionRequest[:payload] = :retention
1854
2105
  PutObjectRetentionRequest[:payload_member] = PutObjectRetentionRequest.member(:retention)
@@ -1861,6 +2112,8 @@ module Aws::S3
1861
2112
  PutObjectTaggingRequest.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "querystring", location_name: "versionId"))
1862
2113
  PutObjectTaggingRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
1863
2114
  PutObjectTaggingRequest.add_member(:tagging, Shapes::ShapeRef.new(shape: Tagging, required: true, location_name: "Tagging", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
2115
+ PutObjectTaggingRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
2116
+ PutObjectTaggingRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
1864
2117
  PutObjectTaggingRequest.struct_class = Types::PutObjectTaggingRequest
1865
2118
  PutObjectTaggingRequest[:payload] = :tagging
1866
2119
  PutObjectTaggingRequest[:payload_member] = PutObjectTaggingRequest.member(:tagging)
@@ -1868,6 +2121,7 @@ module Aws::S3
1868
2121
  PutPublicAccessBlockRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1869
2122
  PutPublicAccessBlockRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
1870
2123
  PutPublicAccessBlockRequest.add_member(:public_access_block_configuration, Shapes::ShapeRef.new(shape: PublicAccessBlockConfiguration, required: true, location_name: "PublicAccessBlockConfiguration", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
2124
+ PutPublicAccessBlockRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1871
2125
  PutPublicAccessBlockRequest.struct_class = Types::PutPublicAccessBlockRequest
1872
2126
  PutPublicAccessBlockRequest[:payload] = :public_access_block_configuration
1873
2127
  PutPublicAccessBlockRequest[:payload_member] = PutPublicAccessBlockRequest.member(:public_access_block_configuration)
@@ -1900,6 +2154,9 @@ module Aws::S3
1900
2154
  RedirectAllRequestsTo.add_member(:protocol, Shapes::ShapeRef.new(shape: Protocol, location_name: "Protocol"))
1901
2155
  RedirectAllRequestsTo.struct_class = Types::RedirectAllRequestsTo
1902
2156
 
2157
+ ReplicaModifications.add_member(:status, Shapes::ShapeRef.new(shape: ReplicaModificationsStatus, required: true, location_name: "Status"))
2158
+ ReplicaModifications.struct_class = Types::ReplicaModifications
2159
+
1903
2160
  ReplicationConfiguration.add_member(:role, Shapes::ShapeRef.new(shape: Role, required: true, location_name: "Role"))
1904
2161
  ReplicationConfiguration.add_member(:rules, Shapes::ShapeRef.new(shape: ReplicationRules, required: true, location_name: "Rule"))
1905
2162
  ReplicationConfiguration.struct_class = Types::ReplicationConfiguration
@@ -1910,6 +2167,7 @@ module Aws::S3
1910
2167
  ReplicationRule.add_member(:filter, Shapes::ShapeRef.new(shape: ReplicationRuleFilter, location_name: "Filter"))
1911
2168
  ReplicationRule.add_member(:status, Shapes::ShapeRef.new(shape: ReplicationRuleStatus, required: true, location_name: "Status"))
1912
2169
  ReplicationRule.add_member(:source_selection_criteria, Shapes::ShapeRef.new(shape: SourceSelectionCriteria, location_name: "SourceSelectionCriteria"))
2170
+ ReplicationRule.add_member(:existing_object_replication, Shapes::ShapeRef.new(shape: ExistingObjectReplication, location_name: "ExistingObjectReplication"))
1913
2171
  ReplicationRule.add_member(:destination, Shapes::ShapeRef.new(shape: Destination, required: true, location_name: "Destination"))
1914
2172
  ReplicationRule.add_member(:delete_marker_replication, Shapes::ShapeRef.new(shape: DeleteMarkerReplication, location_name: "DeleteMarkerReplication"))
1915
2173
  ReplicationRule.struct_class = Types::ReplicationRule
@@ -1925,6 +2183,13 @@ module Aws::S3
1925
2183
 
1926
2184
  ReplicationRules.member = Shapes::ShapeRef.new(shape: ReplicationRule)
1927
2185
 
2186
+ ReplicationTime.add_member(:status, Shapes::ShapeRef.new(shape: ReplicationTimeStatus, required: true, location_name: "Status"))
2187
+ ReplicationTime.add_member(:time, Shapes::ShapeRef.new(shape: ReplicationTimeValue, required: true, location_name: "Time"))
2188
+ ReplicationTime.struct_class = Types::ReplicationTime
2189
+
2190
+ ReplicationTimeValue.add_member(:minutes, Shapes::ShapeRef.new(shape: Minutes, location_name: "Minutes"))
2191
+ ReplicationTimeValue.struct_class = Types::ReplicationTimeValue
2192
+
1928
2193
  RequestPaymentConfiguration.add_member(:payer, Shapes::ShapeRef.new(shape: Payer, required: true, location_name: "Payer"))
1929
2194
  RequestPaymentConfiguration.struct_class = Types::RequestPaymentConfiguration
1930
2195
 
@@ -1940,6 +2205,7 @@ module Aws::S3
1940
2205
  RestoreObjectRequest.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "querystring", location_name: "versionId"))
1941
2206
  RestoreObjectRequest.add_member(:restore_request, Shapes::ShapeRef.new(shape: RestoreRequest, location_name: "RestoreRequest", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1942
2207
  RestoreObjectRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
2208
+ RestoreObjectRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1943
2209
  RestoreObjectRequest.struct_class = Types::RestoreObjectRequest
1944
2210
  RestoreObjectRequest[:payload] = :restore_request
1945
2211
  RestoreObjectRequest[:payload_member] = RestoreObjectRequest.member(:restore_request)
@@ -1989,6 +2255,10 @@ module Aws::S3
1989
2255
 
1990
2256
  SSES3.struct_class = Types::SSES3
1991
2257
 
2258
+ ScanRange.add_member(:start, Shapes::ShapeRef.new(shape: Start, location_name: "Start"))
2259
+ ScanRange.add_member(:end, Shapes::ShapeRef.new(shape: End, location_name: "End"))
2260
+ ScanRange.struct_class = Types::ScanRange
2261
+
1992
2262
  SelectObjectContentEventStream.add_member(:records, Shapes::ShapeRef.new(shape: RecordsEvent, event: true, location_name: "Records"))
1993
2263
  SelectObjectContentEventStream.add_member(:stats, Shapes::ShapeRef.new(shape: StatsEvent, event: true, location_name: "Stats"))
1994
2264
  SelectObjectContentEventStream.add_member(:progress, Shapes::ShapeRef.new(shape: ProgressEvent, event: true, location_name: "Progress"))
@@ -2011,6 +2281,8 @@ module Aws::S3
2011
2281
  SelectObjectContentRequest.add_member(:request_progress, Shapes::ShapeRef.new(shape: RequestProgress, location_name: "RequestProgress"))
2012
2282
  SelectObjectContentRequest.add_member(:input_serialization, Shapes::ShapeRef.new(shape: InputSerialization, required: true, location_name: "InputSerialization"))
2013
2283
  SelectObjectContentRequest.add_member(:output_serialization, Shapes::ShapeRef.new(shape: OutputSerialization, required: true, location_name: "OutputSerialization"))
2284
+ SelectObjectContentRequest.add_member(:scan_range, Shapes::ShapeRef.new(shape: ScanRange, location_name: "ScanRange"))
2285
+ SelectObjectContentRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
2014
2286
  SelectObjectContentRequest.struct_class = Types::SelectObjectContentRequest
2015
2287
 
2016
2288
  SelectParameters.add_member(:input_serialization, Shapes::ShapeRef.new(shape: InputSerialization, required: true, location_name: "InputSerialization"))
@@ -2027,11 +2299,13 @@ module Aws::S3
2027
2299
  ServerSideEncryptionConfiguration.struct_class = Types::ServerSideEncryptionConfiguration
2028
2300
 
2029
2301
  ServerSideEncryptionRule.add_member(:apply_server_side_encryption_by_default, Shapes::ShapeRef.new(shape: ServerSideEncryptionByDefault, location_name: "ApplyServerSideEncryptionByDefault"))
2302
+ ServerSideEncryptionRule.add_member(:bucket_key_enabled, Shapes::ShapeRef.new(shape: BucketKeyEnabled, location_name: "BucketKeyEnabled"))
2030
2303
  ServerSideEncryptionRule.struct_class = Types::ServerSideEncryptionRule
2031
2304
 
2032
2305
  ServerSideEncryptionRules.member = Shapes::ShapeRef.new(shape: ServerSideEncryptionRule)
2033
2306
 
2034
2307
  SourceSelectionCriteria.add_member(:sse_kms_encrypted_objects, Shapes::ShapeRef.new(shape: SseKmsEncryptedObjects, location_name: "SseKmsEncryptedObjects"))
2308
+ SourceSelectionCriteria.add_member(:replica_modifications, Shapes::ShapeRef.new(shape: ReplicaModifications, location_name: "ReplicaModifications"))
2035
2309
  SourceSelectionCriteria.struct_class = Types::SourceSelectionCriteria
2036
2310
 
2037
2311
  SseKmsEncryptedObjects.add_member(:status, Shapes::ShapeRef.new(shape: SseKmsEncryptedObjectsStatus, required: true, location_name: "Status"))
@@ -2067,6 +2341,12 @@ module Aws::S3
2067
2341
 
2068
2342
  TargetGrants.member = Shapes::ShapeRef.new(shape: TargetGrant, location_name: "Grant")
2069
2343
 
2344
+ Tiering.add_member(:days, Shapes::ShapeRef.new(shape: IntelligentTieringDays, required: true, location_name: "Days"))
2345
+ Tiering.add_member(:access_tier, Shapes::ShapeRef.new(shape: IntelligentTieringAccessTier, required: true, location_name: "AccessTier"))
2346
+ Tiering.struct_class = Types::Tiering
2347
+
2348
+ TieringList.member = Shapes::ShapeRef.new(shape: Tiering)
2349
+
2070
2350
  TopicConfiguration.add_member(:id, Shapes::ShapeRef.new(shape: NotificationId, location_name: "Id"))
2071
2351
  TopicConfiguration.add_member(:topic_arn, Shapes::ShapeRef.new(shape: TopicArn, required: true, location_name: "Topic"))
2072
2352
  TopicConfiguration.add_member(:events, Shapes::ShapeRef.new(shape: EventList, required: true, location_name: "Event"))
@@ -2094,6 +2374,7 @@ module Aws::S3
2094
2374
  UploadPartCopyOutput.add_member(:sse_customer_algorithm, Shapes::ShapeRef.new(shape: SSECustomerAlgorithm, location: "header", location_name: "x-amz-server-side-encryption-customer-algorithm"))
2095
2375
  UploadPartCopyOutput.add_member(:sse_customer_key_md5, Shapes::ShapeRef.new(shape: SSECustomerKeyMD5, location: "header", location_name: "x-amz-server-side-encryption-customer-key-MD5"))
2096
2376
  UploadPartCopyOutput.add_member(:ssekms_key_id, Shapes::ShapeRef.new(shape: SSEKMSKeyId, location: "header", location_name: "x-amz-server-side-encryption-aws-kms-key-id"))
2377
+ UploadPartCopyOutput.add_member(:bucket_key_enabled, Shapes::ShapeRef.new(shape: BucketKeyEnabled, location: "header", location_name: "x-amz-server-side-encryption-bucket-key-enabled"))
2097
2378
  UploadPartCopyOutput.add_member(:request_charged, Shapes::ShapeRef.new(shape: RequestCharged, location: "header", location_name: "x-amz-request-charged"))
2098
2379
  UploadPartCopyOutput.struct_class = Types::UploadPartCopyOutput
2099
2380
  UploadPartCopyOutput[:payload] = :copy_part_result
@@ -2116,6 +2397,8 @@ module Aws::S3
2116
2397
  UploadPartCopyRequest.add_member(:copy_source_sse_customer_key, Shapes::ShapeRef.new(shape: CopySourceSSECustomerKey, location: "header", location_name: "x-amz-copy-source-server-side-encryption-customer-key"))
2117
2398
  UploadPartCopyRequest.add_member(:copy_source_sse_customer_key_md5, Shapes::ShapeRef.new(shape: CopySourceSSECustomerKeyMD5, location: "header", location_name: "x-amz-copy-source-server-side-encryption-customer-key-MD5"))
2118
2399
  UploadPartCopyRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
2400
+ UploadPartCopyRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
2401
+ UploadPartCopyRequest.add_member(:expected_source_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-source-expected-bucket-owner"))
2119
2402
  UploadPartCopyRequest.struct_class = Types::UploadPartCopyRequest
2120
2403
 
2121
2404
  UploadPartOutput.add_member(:server_side_encryption, Shapes::ShapeRef.new(shape: ServerSideEncryption, location: "header", location_name: "x-amz-server-side-encryption"))
@@ -2123,6 +2406,7 @@ module Aws::S3
2123
2406
  UploadPartOutput.add_member(:sse_customer_algorithm, Shapes::ShapeRef.new(shape: SSECustomerAlgorithm, location: "header", location_name: "x-amz-server-side-encryption-customer-algorithm"))
2124
2407
  UploadPartOutput.add_member(:sse_customer_key_md5, Shapes::ShapeRef.new(shape: SSECustomerKeyMD5, location: "header", location_name: "x-amz-server-side-encryption-customer-key-MD5"))
2125
2408
  UploadPartOutput.add_member(:ssekms_key_id, Shapes::ShapeRef.new(shape: SSEKMSKeyId, location: "header", location_name: "x-amz-server-side-encryption-aws-kms-key-id"))
2409
+ UploadPartOutput.add_member(:bucket_key_enabled, Shapes::ShapeRef.new(shape: BucketKeyEnabled, location: "header", location_name: "x-amz-server-side-encryption-bucket-key-enabled"))
2126
2410
  UploadPartOutput.add_member(:request_charged, Shapes::ShapeRef.new(shape: RequestCharged, location: "header", location_name: "x-amz-request-charged"))
2127
2411
  UploadPartOutput.struct_class = Types::UploadPartOutput
2128
2412
 
@@ -2137,6 +2421,7 @@ module Aws::S3
2137
2421
  UploadPartRequest.add_member(:sse_customer_key, Shapes::ShapeRef.new(shape: SSECustomerKey, location: "header", location_name: "x-amz-server-side-encryption-customer-key"))
2138
2422
  UploadPartRequest.add_member(:sse_customer_key_md5, Shapes::ShapeRef.new(shape: SSECustomerKeyMD5, location: "header", location_name: "x-amz-server-side-encryption-customer-key-MD5"))
2139
2423
  UploadPartRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
2424
+ UploadPartRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
2140
2425
  UploadPartRequest.struct_class = Types::UploadPartRequest
2141
2426
  UploadPartRequest[:payload] = :body
2142
2427
  UploadPartRequest[:payload_member] = UploadPartRequest.member(:body)
@@ -2153,6 +2438,46 @@ module Aws::S3
2153
2438
  WebsiteConfiguration.add_member(:routing_rules, Shapes::ShapeRef.new(shape: RoutingRules, location_name: "RoutingRules"))
2154
2439
  WebsiteConfiguration.struct_class = Types::WebsiteConfiguration
2155
2440
 
2441
+ WriteGetObjectResponseRequest.add_member(:request_route, Shapes::ShapeRef.new(shape: RequestRoute, required: true, location: "header", location_name: "x-amz-request-route", metadata: {"hostLabel"=>true, "hostLabelName"=>"RequestRoute"}))
2442
+ WriteGetObjectResponseRequest.add_member(:request_token, Shapes::ShapeRef.new(shape: RequestToken, required: true, location: "header", location_name: "x-amz-request-token"))
2443
+ WriteGetObjectResponseRequest.add_member(:body, Shapes::ShapeRef.new(shape: Body, location_name: "Body", metadata: {"streaming"=>true}))
2444
+ WriteGetObjectResponseRequest.add_member(:status_code, Shapes::ShapeRef.new(shape: GetObjectResponseStatusCode, location: "header", location_name: "x-amz-fwd-status"))
2445
+ WriteGetObjectResponseRequest.add_member(:error_code, Shapes::ShapeRef.new(shape: ErrorCode, location: "header", location_name: "x-amz-fwd-error-code"))
2446
+ WriteGetObjectResponseRequest.add_member(:error_message, Shapes::ShapeRef.new(shape: ErrorMessage, location: "header", location_name: "x-amz-fwd-error-message"))
2447
+ WriteGetObjectResponseRequest.add_member(:accept_ranges, Shapes::ShapeRef.new(shape: AcceptRanges, location: "header", location_name: "x-amz-fwd-header-accept-ranges"))
2448
+ WriteGetObjectResponseRequest.add_member(:cache_control, Shapes::ShapeRef.new(shape: CacheControl, location: "header", location_name: "x-amz-fwd-header-Cache-Control"))
2449
+ WriteGetObjectResponseRequest.add_member(:content_disposition, Shapes::ShapeRef.new(shape: ContentDisposition, location: "header", location_name: "x-amz-fwd-header-Content-Disposition"))
2450
+ WriteGetObjectResponseRequest.add_member(:content_encoding, Shapes::ShapeRef.new(shape: ContentEncoding, location: "header", location_name: "x-amz-fwd-header-Content-Encoding"))
2451
+ WriteGetObjectResponseRequest.add_member(:content_language, Shapes::ShapeRef.new(shape: ContentLanguage, location: "header", location_name: "x-amz-fwd-header-Content-Language"))
2452
+ WriteGetObjectResponseRequest.add_member(:content_length, Shapes::ShapeRef.new(shape: ContentLength, location: "header", location_name: "Content-Length"))
2453
+ WriteGetObjectResponseRequest.add_member(:content_range, Shapes::ShapeRef.new(shape: ContentRange, location: "header", location_name: "x-amz-fwd-header-Content-Range"))
2454
+ WriteGetObjectResponseRequest.add_member(:content_type, Shapes::ShapeRef.new(shape: ContentType, location: "header", location_name: "x-amz-fwd-header-Content-Type"))
2455
+ WriteGetObjectResponseRequest.add_member(:delete_marker, Shapes::ShapeRef.new(shape: DeleteMarker, location: "header", location_name: "x-amz-fwd-header-x-amz-delete-marker"))
2456
+ WriteGetObjectResponseRequest.add_member(:etag, Shapes::ShapeRef.new(shape: ETag, location: "header", location_name: "x-amz-fwd-header-ETag"))
2457
+ WriteGetObjectResponseRequest.add_member(:expires, Shapes::ShapeRef.new(shape: Expires, location: "header", location_name: "x-amz-fwd-header-Expires"))
2458
+ WriteGetObjectResponseRequest.add_member(:expiration, Shapes::ShapeRef.new(shape: Expiration, location: "header", location_name: "x-amz-fwd-header-x-amz-expiration"))
2459
+ WriteGetObjectResponseRequest.add_member(:last_modified, Shapes::ShapeRef.new(shape: LastModified, location: "header", location_name: "x-amz-fwd-header-Last-Modified"))
2460
+ WriteGetObjectResponseRequest.add_member(:missing_meta, Shapes::ShapeRef.new(shape: MissingMeta, location: "header", location_name: "x-amz-fwd-header-x-amz-missing-meta"))
2461
+ WriteGetObjectResponseRequest.add_member(:metadata, Shapes::ShapeRef.new(shape: Metadata, location: "headers", location_name: "x-amz-meta-"))
2462
+ WriteGetObjectResponseRequest.add_member(:object_lock_mode, Shapes::ShapeRef.new(shape: ObjectLockMode, location: "header", location_name: "x-amz-fwd-header-x-amz-object-lock-mode"))
2463
+ WriteGetObjectResponseRequest.add_member(:object_lock_legal_hold_status, Shapes::ShapeRef.new(shape: ObjectLockLegalHoldStatus, location: "header", location_name: "x-amz-fwd-header-x-amz-object-lock-legal-hold"))
2464
+ WriteGetObjectResponseRequest.add_member(:object_lock_retain_until_date, Shapes::ShapeRef.new(shape: ObjectLockRetainUntilDate, location: "header", location_name: "x-amz-fwd-header-x-amz-object-lock-retain-until-date"))
2465
+ WriteGetObjectResponseRequest.add_member(:parts_count, Shapes::ShapeRef.new(shape: PartsCount, location: "header", location_name: "x-amz-fwd-header-x-amz-mp-parts-count"))
2466
+ WriteGetObjectResponseRequest.add_member(:replication_status, Shapes::ShapeRef.new(shape: ReplicationStatus, location: "header", location_name: "x-amz-fwd-header-x-amz-replication-status"))
2467
+ WriteGetObjectResponseRequest.add_member(:request_charged, Shapes::ShapeRef.new(shape: RequestCharged, location: "header", location_name: "x-amz-fwd-header-x-amz-request-charged"))
2468
+ WriteGetObjectResponseRequest.add_member(:restore, Shapes::ShapeRef.new(shape: Restore, location: "header", location_name: "x-amz-fwd-header-x-amz-restore"))
2469
+ WriteGetObjectResponseRequest.add_member(:server_side_encryption, Shapes::ShapeRef.new(shape: ServerSideEncryption, location: "header", location_name: "x-amz-fwd-header-x-amz-server-side-encryption"))
2470
+ WriteGetObjectResponseRequest.add_member(:sse_customer_algorithm, Shapes::ShapeRef.new(shape: SSECustomerAlgorithm, location: "header", location_name: "x-amz-fwd-header-x-amz-server-side-encryption-customer-algorithm"))
2471
+ WriteGetObjectResponseRequest.add_member(:ssekms_key_id, Shapes::ShapeRef.new(shape: SSEKMSKeyId, location: "header", location_name: "x-amz-fwd-header-x-amz-server-side-encryption-aws-kms-key-id"))
2472
+ WriteGetObjectResponseRequest.add_member(:sse_customer_key_md5, Shapes::ShapeRef.new(shape: SSECustomerKeyMD5, location: "header", location_name: "x-amz-fwd-header-x-amz-server-side-encryption-customer-key-MD5"))
2473
+ WriteGetObjectResponseRequest.add_member(:storage_class, Shapes::ShapeRef.new(shape: StorageClass, location: "header", location_name: "x-amz-fwd-header-x-amz-storage-class"))
2474
+ WriteGetObjectResponseRequest.add_member(:tag_count, Shapes::ShapeRef.new(shape: TagCount, location: "header", location_name: "x-amz-fwd-header-x-amz-tagging-count"))
2475
+ WriteGetObjectResponseRequest.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "header", location_name: "x-amz-fwd-header-x-amz-version-id"))
2476
+ WriteGetObjectResponseRequest.add_member(:bucket_key_enabled, Shapes::ShapeRef.new(shape: BucketKeyEnabled, location: "header", location_name: "x-amz-fwd-header-x-amz-server-side-encryption-bucket-key-enabled"))
2477
+ WriteGetObjectResponseRequest.struct_class = Types::WriteGetObjectResponseRequest
2478
+ WriteGetObjectResponseRequest[:payload] = :body
2479
+ WriteGetObjectResponseRequest[:payload_member] = WriteGetObjectResponseRequest.member(:body)
2480
+
2156
2481
 
2157
2482
  # @api private
2158
2483
  API = Seahorse::Model::Api.new.tap do |api|
@@ -2247,6 +2572,14 @@ module Aws::S3
2247
2572
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2248
2573
  end)
2249
2574
 
2575
+ api.add_operation(:delete_bucket_intelligent_tiering_configuration, Seahorse::Model::Operation.new.tap do |o|
2576
+ o.name = "DeleteBucketIntelligentTieringConfiguration"
2577
+ o.http_method = "DELETE"
2578
+ o.http_request_uri = "/{Bucket}?intelligent-tiering"
2579
+ o.input = Shapes::ShapeRef.new(shape: DeleteBucketIntelligentTieringConfigurationRequest)
2580
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2581
+ end)
2582
+
2250
2583
  api.add_operation(:delete_bucket_inventory_configuration, Seahorse::Model::Operation.new.tap do |o|
2251
2584
  o.name = "DeleteBucketInventoryConfiguration"
2252
2585
  o.http_method = "DELETE"
@@ -2271,6 +2604,14 @@ module Aws::S3
2271
2604
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2272
2605
  end)
2273
2606
 
2607
+ api.add_operation(:delete_bucket_ownership_controls, Seahorse::Model::Operation.new.tap do |o|
2608
+ o.name = "DeleteBucketOwnershipControls"
2609
+ o.http_method = "DELETE"
2610
+ o.http_request_uri = "/{Bucket}?ownershipControls"
2611
+ o.input = Shapes::ShapeRef.new(shape: DeleteBucketOwnershipControlsRequest)
2612
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2613
+ end)
2614
+
2274
2615
  api.add_operation(:delete_bucket_policy, Seahorse::Model::Operation.new.tap do |o|
2275
2616
  o.name = "DeleteBucketPolicy"
2276
2617
  o.http_method = "DELETE"
@@ -2323,6 +2664,7 @@ module Aws::S3
2323
2664
  o.name = "DeleteObjects"
2324
2665
  o.http_method = "POST"
2325
2666
  o.http_request_uri = "/{Bucket}?delete"
2667
+ o.http_checksum_required = true
2326
2668
  o.input = Shapes::ShapeRef.new(shape: DeleteObjectsRequest)
2327
2669
  o.output = Shapes::ShapeRef.new(shape: DeleteObjectsOutput)
2328
2670
  end)
@@ -2375,6 +2717,14 @@ module Aws::S3
2375
2717
  o.output = Shapes::ShapeRef.new(shape: GetBucketEncryptionOutput)
2376
2718
  end)
2377
2719
 
2720
+ api.add_operation(:get_bucket_intelligent_tiering_configuration, Seahorse::Model::Operation.new.tap do |o|
2721
+ o.name = "GetBucketIntelligentTieringConfiguration"
2722
+ o.http_method = "GET"
2723
+ o.http_request_uri = "/{Bucket}?intelligent-tiering"
2724
+ o.input = Shapes::ShapeRef.new(shape: GetBucketIntelligentTieringConfigurationRequest)
2725
+ o.output = Shapes::ShapeRef.new(shape: GetBucketIntelligentTieringConfigurationOutput)
2726
+ end)
2727
+
2378
2728
  api.add_operation(:get_bucket_inventory_configuration, Seahorse::Model::Operation.new.tap do |o|
2379
2729
  o.name = "GetBucketInventoryConfiguration"
2380
2730
  o.http_method = "GET"
@@ -2441,6 +2791,14 @@ module Aws::S3
2441
2791
  o.output = Shapes::ShapeRef.new(shape: NotificationConfiguration)
2442
2792
  end)
2443
2793
 
2794
+ api.add_operation(:get_bucket_ownership_controls, Seahorse::Model::Operation.new.tap do |o|
2795
+ o.name = "GetBucketOwnershipControls"
2796
+ o.http_method = "GET"
2797
+ o.http_request_uri = "/{Bucket}?ownershipControls"
2798
+ o.input = Shapes::ShapeRef.new(shape: GetBucketOwnershipControlsRequest)
2799
+ o.output = Shapes::ShapeRef.new(shape: GetBucketOwnershipControlsOutput)
2800
+ end)
2801
+
2444
2802
  api.add_operation(:get_bucket_policy, Seahorse::Model::Operation.new.tap do |o|
2445
2803
  o.name = "GetBucketPolicy"
2446
2804
  o.http_method = "GET"
@@ -2504,6 +2862,7 @@ module Aws::S3
2504
2862
  o.input = Shapes::ShapeRef.new(shape: GetObjectRequest)
2505
2863
  o.output = Shapes::ShapeRef.new(shape: GetObjectOutput)
2506
2864
  o.errors << Shapes::ShapeRef.new(shape: NoSuchKey)
2865
+ o.errors << Shapes::ShapeRef.new(shape: InvalidObjectState)
2507
2866
  end)
2508
2867
 
2509
2868
  api.add_operation(:get_object_acl, Seahorse::Model::Operation.new.tap do |o|
@@ -2589,6 +2948,14 @@ module Aws::S3
2589
2948
  o.output = Shapes::ShapeRef.new(shape: ListBucketAnalyticsConfigurationsOutput)
2590
2949
  end)
2591
2950
 
2951
+ api.add_operation(:list_bucket_intelligent_tiering_configurations, Seahorse::Model::Operation.new.tap do |o|
2952
+ o.name = "ListBucketIntelligentTieringConfigurations"
2953
+ o.http_method = "GET"
2954
+ o.http_request_uri = "/{Bucket}?intelligent-tiering"
2955
+ o.input = Shapes::ShapeRef.new(shape: ListBucketIntelligentTieringConfigurationsRequest)
2956
+ o.output = Shapes::ShapeRef.new(shape: ListBucketIntelligentTieringConfigurationsOutput)
2957
+ end)
2958
+
2592
2959
  api.add_operation(:list_bucket_inventory_configurations, Seahorse::Model::Operation.new.tap do |o|
2593
2960
  o.name = "ListBucketInventoryConfigurations"
2594
2961
  o.http_method = "GET"
@@ -2703,6 +3070,7 @@ module Aws::S3
2703
3070
  o.name = "PutBucketAcl"
2704
3071
  o.http_method = "PUT"
2705
3072
  o.http_request_uri = "/{Bucket}?acl"
3073
+ o.http_checksum_required = true
2706
3074
  o.input = Shapes::ShapeRef.new(shape: PutBucketAclRequest)
2707
3075
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2708
3076
  end)
@@ -2719,6 +3087,7 @@ module Aws::S3
2719
3087
  o.name = "PutBucketCors"
2720
3088
  o.http_method = "PUT"
2721
3089
  o.http_request_uri = "/{Bucket}?cors"
3090
+ o.http_checksum_required = true
2722
3091
  o.input = Shapes::ShapeRef.new(shape: PutBucketCorsRequest)
2723
3092
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2724
3093
  end)
@@ -2727,10 +3096,19 @@ module Aws::S3
2727
3096
  o.name = "PutBucketEncryption"
2728
3097
  o.http_method = "PUT"
2729
3098
  o.http_request_uri = "/{Bucket}?encryption"
3099
+ o.http_checksum_required = true
2730
3100
  o.input = Shapes::ShapeRef.new(shape: PutBucketEncryptionRequest)
2731
3101
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2732
3102
  end)
2733
3103
 
3104
+ api.add_operation(:put_bucket_intelligent_tiering_configuration, Seahorse::Model::Operation.new.tap do |o|
3105
+ o.name = "PutBucketIntelligentTieringConfiguration"
3106
+ o.http_method = "PUT"
3107
+ o.http_request_uri = "/{Bucket}?intelligent-tiering"
3108
+ o.input = Shapes::ShapeRef.new(shape: PutBucketIntelligentTieringConfigurationRequest)
3109
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
3110
+ end)
3111
+
2734
3112
  api.add_operation(:put_bucket_inventory_configuration, Seahorse::Model::Operation.new.tap do |o|
2735
3113
  o.name = "PutBucketInventoryConfiguration"
2736
3114
  o.http_method = "PUT"
@@ -2743,6 +3121,7 @@ module Aws::S3
2743
3121
  o.name = "PutBucketLifecycle"
2744
3122
  o.http_method = "PUT"
2745
3123
  o.http_request_uri = "/{Bucket}?lifecycle"
3124
+ o.http_checksum_required = true
2746
3125
  o.deprecated = true
2747
3126
  o.input = Shapes::ShapeRef.new(shape: PutBucketLifecycleRequest)
2748
3127
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
@@ -2752,6 +3131,7 @@ module Aws::S3
2752
3131
  o.name = "PutBucketLifecycleConfiguration"
2753
3132
  o.http_method = "PUT"
2754
3133
  o.http_request_uri = "/{Bucket}?lifecycle"
3134
+ o.http_checksum_required = true
2755
3135
  o.input = Shapes::ShapeRef.new(shape: PutBucketLifecycleConfigurationRequest)
2756
3136
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2757
3137
  end)
@@ -2760,6 +3140,7 @@ module Aws::S3
2760
3140
  o.name = "PutBucketLogging"
2761
3141
  o.http_method = "PUT"
2762
3142
  o.http_request_uri = "/{Bucket}?logging"
3143
+ o.http_checksum_required = true
2763
3144
  o.input = Shapes::ShapeRef.new(shape: PutBucketLoggingRequest)
2764
3145
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2765
3146
  end)
@@ -2776,6 +3157,7 @@ module Aws::S3
2776
3157
  o.name = "PutBucketNotification"
2777
3158
  o.http_method = "PUT"
2778
3159
  o.http_request_uri = "/{Bucket}?notification"
3160
+ o.http_checksum_required = true
2779
3161
  o.deprecated = true
2780
3162
  o.input = Shapes::ShapeRef.new(shape: PutBucketNotificationRequest)
2781
3163
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
@@ -2789,10 +3171,20 @@ module Aws::S3
2789
3171
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2790
3172
  end)
2791
3173
 
3174
+ api.add_operation(:put_bucket_ownership_controls, Seahorse::Model::Operation.new.tap do |o|
3175
+ o.name = "PutBucketOwnershipControls"
3176
+ o.http_method = "PUT"
3177
+ o.http_request_uri = "/{Bucket}?ownershipControls"
3178
+ o.http_checksum_required = true
3179
+ o.input = Shapes::ShapeRef.new(shape: PutBucketOwnershipControlsRequest)
3180
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
3181
+ end)
3182
+
2792
3183
  api.add_operation(:put_bucket_policy, Seahorse::Model::Operation.new.tap do |o|
2793
3184
  o.name = "PutBucketPolicy"
2794
3185
  o.http_method = "PUT"
2795
3186
  o.http_request_uri = "/{Bucket}?policy"
3187
+ o.http_checksum_required = true
2796
3188
  o.input = Shapes::ShapeRef.new(shape: PutBucketPolicyRequest)
2797
3189
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2798
3190
  end)
@@ -2801,6 +3193,7 @@ module Aws::S3
2801
3193
  o.name = "PutBucketReplication"
2802
3194
  o.http_method = "PUT"
2803
3195
  o.http_request_uri = "/{Bucket}?replication"
3196
+ o.http_checksum_required = true
2804
3197
  o.input = Shapes::ShapeRef.new(shape: PutBucketReplicationRequest)
2805
3198
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2806
3199
  end)
@@ -2809,6 +3202,7 @@ module Aws::S3
2809
3202
  o.name = "PutBucketRequestPayment"
2810
3203
  o.http_method = "PUT"
2811
3204
  o.http_request_uri = "/{Bucket}?requestPayment"
3205
+ o.http_checksum_required = true
2812
3206
  o.input = Shapes::ShapeRef.new(shape: PutBucketRequestPaymentRequest)
2813
3207
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2814
3208
  end)
@@ -2817,6 +3211,7 @@ module Aws::S3
2817
3211
  o.name = "PutBucketTagging"
2818
3212
  o.http_method = "PUT"
2819
3213
  o.http_request_uri = "/{Bucket}?tagging"
3214
+ o.http_checksum_required = true
2820
3215
  o.input = Shapes::ShapeRef.new(shape: PutBucketTaggingRequest)
2821
3216
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2822
3217
  end)
@@ -2825,6 +3220,7 @@ module Aws::S3
2825
3220
  o.name = "PutBucketVersioning"
2826
3221
  o.http_method = "PUT"
2827
3222
  o.http_request_uri = "/{Bucket}?versioning"
3223
+ o.http_checksum_required = true
2828
3224
  o.input = Shapes::ShapeRef.new(shape: PutBucketVersioningRequest)
2829
3225
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2830
3226
  end)
@@ -2833,6 +3229,7 @@ module Aws::S3
2833
3229
  o.name = "PutBucketWebsite"
2834
3230
  o.http_method = "PUT"
2835
3231
  o.http_request_uri = "/{Bucket}?website"
3232
+ o.http_checksum_required = true
2836
3233
  o.input = Shapes::ShapeRef.new(shape: PutBucketWebsiteRequest)
2837
3234
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2838
3235
  end)
@@ -2849,6 +3246,7 @@ module Aws::S3
2849
3246
  o.name = "PutObjectAcl"
2850
3247
  o.http_method = "PUT"
2851
3248
  o.http_request_uri = "/{Bucket}/{Key+}?acl"
3249
+ o.http_checksum_required = true
2852
3250
  o.input = Shapes::ShapeRef.new(shape: PutObjectAclRequest)
2853
3251
  o.output = Shapes::ShapeRef.new(shape: PutObjectAclOutput)
2854
3252
  o.errors << Shapes::ShapeRef.new(shape: NoSuchKey)
@@ -2858,6 +3256,7 @@ module Aws::S3
2858
3256
  o.name = "PutObjectLegalHold"
2859
3257
  o.http_method = "PUT"
2860
3258
  o.http_request_uri = "/{Bucket}/{Key+}?legal-hold"
3259
+ o.http_checksum_required = true
2861
3260
  o.input = Shapes::ShapeRef.new(shape: PutObjectLegalHoldRequest)
2862
3261
  o.output = Shapes::ShapeRef.new(shape: PutObjectLegalHoldOutput)
2863
3262
  end)
@@ -2866,6 +3265,7 @@ module Aws::S3
2866
3265
  o.name = "PutObjectLockConfiguration"
2867
3266
  o.http_method = "PUT"
2868
3267
  o.http_request_uri = "/{Bucket}?object-lock"
3268
+ o.http_checksum_required = true
2869
3269
  o.input = Shapes::ShapeRef.new(shape: PutObjectLockConfigurationRequest)
2870
3270
  o.output = Shapes::ShapeRef.new(shape: PutObjectLockConfigurationOutput)
2871
3271
  end)
@@ -2874,6 +3274,7 @@ module Aws::S3
2874
3274
  o.name = "PutObjectRetention"
2875
3275
  o.http_method = "PUT"
2876
3276
  o.http_request_uri = "/{Bucket}/{Key+}?retention"
3277
+ o.http_checksum_required = true
2877
3278
  o.input = Shapes::ShapeRef.new(shape: PutObjectRetentionRequest)
2878
3279
  o.output = Shapes::ShapeRef.new(shape: PutObjectRetentionOutput)
2879
3280
  end)
@@ -2882,6 +3283,7 @@ module Aws::S3
2882
3283
  o.name = "PutObjectTagging"
2883
3284
  o.http_method = "PUT"
2884
3285
  o.http_request_uri = "/{Bucket}/{Key+}?tagging"
3286
+ o.http_checksum_required = true
2885
3287
  o.input = Shapes::ShapeRef.new(shape: PutObjectTaggingRequest)
2886
3288
  o.output = Shapes::ShapeRef.new(shape: PutObjectTaggingOutput)
2887
3289
  end)
@@ -2890,6 +3292,7 @@ module Aws::S3
2890
3292
  o.name = "PutPublicAccessBlock"
2891
3293
  o.http_method = "PUT"
2892
3294
  o.http_request_uri = "/{Bucket}?publicAccessBlock"
3295
+ o.http_checksum_required = true
2893
3296
  o.input = Shapes::ShapeRef.new(shape: PutPublicAccessBlockRequest)
2894
3297
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2895
3298
  end)
@@ -2931,6 +3334,18 @@ module Aws::S3
2931
3334
  o.input = Shapes::ShapeRef.new(shape: UploadPartCopyRequest)
2932
3335
  o.output = Shapes::ShapeRef.new(shape: UploadPartCopyOutput)
2933
3336
  end)
3337
+
3338
+ api.add_operation(:write_get_object_response, Seahorse::Model::Operation.new.tap do |o|
3339
+ o.name = "WriteGetObjectResponse"
3340
+ o.http_method = "POST"
3341
+ o.http_request_uri = "/WriteGetObjectResponse"
3342
+ o['authtype'] = "v4-unsigned-body"
3343
+ o.endpoint_pattern = {
3344
+ "hostPrefix" => "{RequestRoute}.",
3345
+ }
3346
+ o.input = Shapes::ShapeRef.new(shape: WriteGetObjectResponseRequest)
3347
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
3348
+ end)
2934
3349
  end
2935
3350
 
2936
3351
  end