aws-sdk-s3 1.81.1 → 1.84.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -38,6 +38,7 @@ module Aws::S3
38
38
  AnalyticsId = Shapes::StringShape.new(name: 'AnalyticsId')
39
39
  AnalyticsS3BucketDestination = Shapes::StructureShape.new(name: 'AnalyticsS3BucketDestination')
40
40
  AnalyticsS3ExportFileFormat = Shapes::StringShape.new(name: 'AnalyticsS3ExportFileFormat')
41
+ ArchiveStatus = Shapes::StringShape.new(name: 'ArchiveStatus')
41
42
  Body = Shapes::BlobShape.new(name: 'Body')
42
43
  Bucket = Shapes::StructureShape.new(name: 'Bucket')
43
44
  BucketAccelerateStatus = Shapes::StringShape.new(name: 'BucketAccelerateStatus')
@@ -112,9 +113,11 @@ module Aws::S3
112
113
  DeleteBucketAnalyticsConfigurationRequest = Shapes::StructureShape.new(name: 'DeleteBucketAnalyticsConfigurationRequest')
113
114
  DeleteBucketCorsRequest = Shapes::StructureShape.new(name: 'DeleteBucketCorsRequest')
114
115
  DeleteBucketEncryptionRequest = Shapes::StructureShape.new(name: 'DeleteBucketEncryptionRequest')
116
+ DeleteBucketIntelligentTieringConfigurationRequest = Shapes::StructureShape.new(name: 'DeleteBucketIntelligentTieringConfigurationRequest')
115
117
  DeleteBucketInventoryConfigurationRequest = Shapes::StructureShape.new(name: 'DeleteBucketInventoryConfigurationRequest')
116
118
  DeleteBucketLifecycleRequest = Shapes::StructureShape.new(name: 'DeleteBucketLifecycleRequest')
117
119
  DeleteBucketMetricsConfigurationRequest = Shapes::StructureShape.new(name: 'DeleteBucketMetricsConfigurationRequest')
120
+ DeleteBucketOwnershipControlsRequest = Shapes::StructureShape.new(name: 'DeleteBucketOwnershipControlsRequest')
118
121
  DeleteBucketPolicyRequest = Shapes::StructureShape.new(name: 'DeleteBucketPolicyRequest')
119
122
  DeleteBucketReplicationRequest = Shapes::StructureShape.new(name: 'DeleteBucketReplicationRequest')
120
123
  DeleteBucketRequest = Shapes::StructureShape.new(name: 'DeleteBucketRequest')
@@ -180,6 +183,8 @@ module Aws::S3
180
183
  GetBucketCorsRequest = Shapes::StructureShape.new(name: 'GetBucketCorsRequest')
181
184
  GetBucketEncryptionOutput = Shapes::StructureShape.new(name: 'GetBucketEncryptionOutput')
182
185
  GetBucketEncryptionRequest = Shapes::StructureShape.new(name: 'GetBucketEncryptionRequest')
186
+ GetBucketIntelligentTieringConfigurationOutput = Shapes::StructureShape.new(name: 'GetBucketIntelligentTieringConfigurationOutput')
187
+ GetBucketIntelligentTieringConfigurationRequest = Shapes::StructureShape.new(name: 'GetBucketIntelligentTieringConfigurationRequest')
183
188
  GetBucketInventoryConfigurationOutput = Shapes::StructureShape.new(name: 'GetBucketInventoryConfigurationOutput')
184
189
  GetBucketInventoryConfigurationRequest = Shapes::StructureShape.new(name: 'GetBucketInventoryConfigurationRequest')
185
190
  GetBucketLifecycleConfigurationOutput = Shapes::StructureShape.new(name: 'GetBucketLifecycleConfigurationOutput')
@@ -193,6 +198,8 @@ module Aws::S3
193
198
  GetBucketMetricsConfigurationOutput = Shapes::StructureShape.new(name: 'GetBucketMetricsConfigurationOutput')
194
199
  GetBucketMetricsConfigurationRequest = Shapes::StructureShape.new(name: 'GetBucketMetricsConfigurationRequest')
195
200
  GetBucketNotificationConfigurationRequest = Shapes::StructureShape.new(name: 'GetBucketNotificationConfigurationRequest')
201
+ GetBucketOwnershipControlsOutput = Shapes::StructureShape.new(name: 'GetBucketOwnershipControlsOutput')
202
+ GetBucketOwnershipControlsRequest = Shapes::StructureShape.new(name: 'GetBucketOwnershipControlsRequest')
196
203
  GetBucketPolicyOutput = Shapes::StructureShape.new(name: 'GetBucketPolicyOutput')
197
204
  GetBucketPolicyRequest = Shapes::StructureShape.new(name: 'GetBucketPolicyRequest')
198
205
  GetBucketPolicyStatusOutput = Shapes::StructureShape.new(name: 'GetBucketPolicyStatusOutput')
@@ -247,6 +254,15 @@ module Aws::S3
247
254
  Initiated = Shapes::TimestampShape.new(name: 'Initiated')
248
255
  Initiator = Shapes::StructureShape.new(name: 'Initiator')
249
256
  InputSerialization = Shapes::StructureShape.new(name: 'InputSerialization')
257
+ IntelligentTieringAccessTier = Shapes::StringShape.new(name: 'IntelligentTieringAccessTier')
258
+ IntelligentTieringAndOperator = Shapes::StructureShape.new(name: 'IntelligentTieringAndOperator')
259
+ IntelligentTieringConfiguration = Shapes::StructureShape.new(name: 'IntelligentTieringConfiguration')
260
+ IntelligentTieringConfigurationList = Shapes::ListShape.new(name: 'IntelligentTieringConfigurationList', flattened: true)
261
+ IntelligentTieringDays = Shapes::IntegerShape.new(name: 'IntelligentTieringDays')
262
+ IntelligentTieringFilter = Shapes::StructureShape.new(name: 'IntelligentTieringFilter')
263
+ IntelligentTieringId = Shapes::StringShape.new(name: 'IntelligentTieringId')
264
+ IntelligentTieringStatus = Shapes::StringShape.new(name: 'IntelligentTieringStatus')
265
+ InvalidObjectState = Shapes::StructureShape.new(name: 'InvalidObjectState')
250
266
  InventoryConfiguration = Shapes::StructureShape.new(name: 'InventoryConfiguration')
251
267
  InventoryConfigurationList = Shapes::ListShape.new(name: 'InventoryConfigurationList', flattened: true)
252
268
  InventoryDestination = Shapes::StructureShape.new(name: 'InventoryDestination')
@@ -283,6 +299,8 @@ module Aws::S3
283
299
  LifecycleRules = Shapes::ListShape.new(name: 'LifecycleRules', flattened: true)
284
300
  ListBucketAnalyticsConfigurationsOutput = Shapes::StructureShape.new(name: 'ListBucketAnalyticsConfigurationsOutput')
285
301
  ListBucketAnalyticsConfigurationsRequest = Shapes::StructureShape.new(name: 'ListBucketAnalyticsConfigurationsRequest')
302
+ ListBucketIntelligentTieringConfigurationsOutput = Shapes::StructureShape.new(name: 'ListBucketIntelligentTieringConfigurationsOutput')
303
+ ListBucketIntelligentTieringConfigurationsRequest = Shapes::StructureShape.new(name: 'ListBucketIntelligentTieringConfigurationsRequest')
286
304
  ListBucketInventoryConfigurationsOutput = Shapes::StructureShape.new(name: 'ListBucketInventoryConfigurationsOutput')
287
305
  ListBucketInventoryConfigurationsRequest = Shapes::StructureShape.new(name: 'ListBucketInventoryConfigurationsRequest')
288
306
  ListBucketMetricsConfigurationsOutput = Shapes::StructureShape.new(name: 'ListBucketMetricsConfigurationsOutput')
@@ -362,6 +380,7 @@ module Aws::S3
362
380
  ObjectLockRule = Shapes::StructureShape.new(name: 'ObjectLockRule')
363
381
  ObjectLockToken = Shapes::StringShape.new(name: 'ObjectLockToken')
364
382
  ObjectNotInActiveTierError = Shapes::StructureShape.new(name: 'ObjectNotInActiveTierError')
383
+ ObjectOwnership = Shapes::StringShape.new(name: 'ObjectOwnership')
365
384
  ObjectStorageClass = Shapes::StringShape.new(name: 'ObjectStorageClass')
366
385
  ObjectVersion = Shapes::StructureShape.new(name: 'ObjectVersion')
367
386
  ObjectVersionId = Shapes::StringShape.new(name: 'ObjectVersionId')
@@ -371,6 +390,9 @@ module Aws::S3
371
390
  OutputSerialization = Shapes::StructureShape.new(name: 'OutputSerialization')
372
391
  Owner = Shapes::StructureShape.new(name: 'Owner')
373
392
  OwnerOverride = Shapes::StringShape.new(name: 'OwnerOverride')
393
+ OwnershipControls = Shapes::StructureShape.new(name: 'OwnershipControls')
394
+ OwnershipControlsRule = Shapes::StructureShape.new(name: 'OwnershipControlsRule')
395
+ OwnershipControlsRules = Shapes::ListShape.new(name: 'OwnershipControlsRules', flattened: true)
374
396
  ParquetInput = Shapes::StructureShape.new(name: 'ParquetInput')
375
397
  Part = Shapes::StructureShape.new(name: 'Part')
376
398
  PartNumber = Shapes::IntegerShape.new(name: 'PartNumber')
@@ -392,6 +414,7 @@ module Aws::S3
392
414
  PutBucketAnalyticsConfigurationRequest = Shapes::StructureShape.new(name: 'PutBucketAnalyticsConfigurationRequest')
393
415
  PutBucketCorsRequest = Shapes::StructureShape.new(name: 'PutBucketCorsRequest')
394
416
  PutBucketEncryptionRequest = Shapes::StructureShape.new(name: 'PutBucketEncryptionRequest')
417
+ PutBucketIntelligentTieringConfigurationRequest = Shapes::StructureShape.new(name: 'PutBucketIntelligentTieringConfigurationRequest')
395
418
  PutBucketInventoryConfigurationRequest = Shapes::StructureShape.new(name: 'PutBucketInventoryConfigurationRequest')
396
419
  PutBucketLifecycleConfigurationRequest = Shapes::StructureShape.new(name: 'PutBucketLifecycleConfigurationRequest')
397
420
  PutBucketLifecycleRequest = Shapes::StructureShape.new(name: 'PutBucketLifecycleRequest')
@@ -399,6 +422,7 @@ module Aws::S3
399
422
  PutBucketMetricsConfigurationRequest = Shapes::StructureShape.new(name: 'PutBucketMetricsConfigurationRequest')
400
423
  PutBucketNotificationConfigurationRequest = Shapes::StructureShape.new(name: 'PutBucketNotificationConfigurationRequest')
401
424
  PutBucketNotificationRequest = Shapes::StructureShape.new(name: 'PutBucketNotificationRequest')
425
+ PutBucketOwnershipControlsRequest = Shapes::StructureShape.new(name: 'PutBucketOwnershipControlsRequest')
402
426
  PutBucketPolicyRequest = Shapes::StructureShape.new(name: 'PutBucketPolicyRequest')
403
427
  PutBucketReplicationRequest = Shapes::StructureShape.new(name: 'PutBucketReplicationRequest')
404
428
  PutBucketRequestPaymentRequest = Shapes::StructureShape.new(name: 'PutBucketRequestPaymentRequest')
@@ -509,6 +533,8 @@ module Aws::S3
509
533
  TargetGrants = Shapes::ListShape.new(name: 'TargetGrants')
510
534
  TargetPrefix = Shapes::StringShape.new(name: 'TargetPrefix')
511
535
  Tier = Shapes::StringShape.new(name: 'Tier')
536
+ Tiering = Shapes::StructureShape.new(name: 'Tiering')
537
+ TieringList = Shapes::ListShape.new(name: 'TieringList', flattened: true)
512
538
  Token = Shapes::StringShape.new(name: 'Token')
513
539
  TopicArn = Shapes::StringShape.new(name: 'TopicArn')
514
540
  TopicConfiguration = Shapes::StructureShape.new(name: 'TopicConfiguration')
@@ -825,6 +851,10 @@ module Aws::S3
825
851
  DeleteBucketEncryptionRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
826
852
  DeleteBucketEncryptionRequest.struct_class = Types::DeleteBucketEncryptionRequest
827
853
 
854
+ DeleteBucketIntelligentTieringConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
855
+ DeleteBucketIntelligentTieringConfigurationRequest.add_member(:id, Shapes::ShapeRef.new(shape: IntelligentTieringId, required: true, location: "querystring", location_name: "id"))
856
+ DeleteBucketIntelligentTieringConfigurationRequest.struct_class = Types::DeleteBucketIntelligentTieringConfigurationRequest
857
+
828
858
  DeleteBucketInventoryConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
829
859
  DeleteBucketInventoryConfigurationRequest.add_member(:id, Shapes::ShapeRef.new(shape: InventoryId, required: true, location: "querystring", location_name: "id"))
830
860
  DeleteBucketInventoryConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
@@ -839,6 +869,10 @@ module Aws::S3
839
869
  DeleteBucketMetricsConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
840
870
  DeleteBucketMetricsConfigurationRequest.struct_class = Types::DeleteBucketMetricsConfigurationRequest
841
871
 
872
+ DeleteBucketOwnershipControlsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
873
+ DeleteBucketOwnershipControlsRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
874
+ DeleteBucketOwnershipControlsRequest.struct_class = Types::DeleteBucketOwnershipControlsRequest
875
+
842
876
  DeleteBucketPolicyRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
843
877
  DeleteBucketPolicyRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
844
878
  DeleteBucketPolicyRequest.struct_class = Types::DeleteBucketPolicyRequest
@@ -1005,6 +1039,15 @@ module Aws::S3
1005
1039
  GetBucketEncryptionRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1006
1040
  GetBucketEncryptionRequest.struct_class = Types::GetBucketEncryptionRequest
1007
1041
 
1042
+ GetBucketIntelligentTieringConfigurationOutput.add_member(:intelligent_tiering_configuration, Shapes::ShapeRef.new(shape: IntelligentTieringConfiguration, location_name: "IntelligentTieringConfiguration"))
1043
+ GetBucketIntelligentTieringConfigurationOutput.struct_class = Types::GetBucketIntelligentTieringConfigurationOutput
1044
+ GetBucketIntelligentTieringConfigurationOutput[:payload] = :intelligent_tiering_configuration
1045
+ GetBucketIntelligentTieringConfigurationOutput[:payload_member] = GetBucketIntelligentTieringConfigurationOutput.member(:intelligent_tiering_configuration)
1046
+
1047
+ GetBucketIntelligentTieringConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1048
+ GetBucketIntelligentTieringConfigurationRequest.add_member(:id, Shapes::ShapeRef.new(shape: IntelligentTieringId, required: true, location: "querystring", location_name: "id"))
1049
+ GetBucketIntelligentTieringConfigurationRequest.struct_class = Types::GetBucketIntelligentTieringConfigurationRequest
1050
+
1008
1051
  GetBucketInventoryConfigurationOutput.add_member(:inventory_configuration, Shapes::ShapeRef.new(shape: InventoryConfiguration, location_name: "InventoryConfiguration"))
1009
1052
  GetBucketInventoryConfigurationOutput.struct_class = Types::GetBucketInventoryConfigurationOutput
1010
1053
  GetBucketInventoryConfigurationOutput[:payload] = :inventory_configuration
@@ -1057,6 +1100,15 @@ module Aws::S3
1057
1100
  GetBucketNotificationConfigurationRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1058
1101
  GetBucketNotificationConfigurationRequest.struct_class = Types::GetBucketNotificationConfigurationRequest
1059
1102
 
1103
+ GetBucketOwnershipControlsOutput.add_member(:ownership_controls, Shapes::ShapeRef.new(shape: OwnershipControls, location_name: "OwnershipControls"))
1104
+ GetBucketOwnershipControlsOutput.struct_class = Types::GetBucketOwnershipControlsOutput
1105
+ GetBucketOwnershipControlsOutput[:payload] = :ownership_controls
1106
+ GetBucketOwnershipControlsOutput[:payload_member] = GetBucketOwnershipControlsOutput.member(:ownership_controls)
1107
+
1108
+ GetBucketOwnershipControlsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1109
+ GetBucketOwnershipControlsRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1110
+ GetBucketOwnershipControlsRequest.struct_class = Types::GetBucketOwnershipControlsRequest
1111
+
1060
1112
  GetBucketPolicyOutput.add_member(:policy, Shapes::ShapeRef.new(shape: Policy, location_name: "Policy"))
1061
1113
  GetBucketPolicyOutput.struct_class = Types::GetBucketPolicyOutput
1062
1114
  GetBucketPolicyOutput[:payload] = :policy
@@ -1274,6 +1326,7 @@ module Aws::S3
1274
1326
  HeadObjectOutput.add_member(:accept_ranges, Shapes::ShapeRef.new(shape: AcceptRanges, location: "header", location_name: "accept-ranges"))
1275
1327
  HeadObjectOutput.add_member(:expiration, Shapes::ShapeRef.new(shape: Expiration, location: "header", location_name: "x-amz-expiration"))
1276
1328
  HeadObjectOutput.add_member(:restore, Shapes::ShapeRef.new(shape: Restore, location: "header", location_name: "x-amz-restore"))
1329
+ HeadObjectOutput.add_member(:archive_status, Shapes::ShapeRef.new(shape: ArchiveStatus, location: "header", location_name: "x-amz-archive-status"))
1277
1330
  HeadObjectOutput.add_member(:last_modified, Shapes::ShapeRef.new(shape: LastModified, location: "header", location_name: "Last-Modified"))
1278
1331
  HeadObjectOutput.add_member(:content_length, Shapes::ShapeRef.new(shape: ContentLength, location: "header", location_name: "Content-Length"))
1279
1332
  HeadObjectOutput.add_member(:etag, Shapes::ShapeRef.new(shape: ETag, location: "header", location_name: "ETag"))
@@ -1330,6 +1383,27 @@ module Aws::S3
1330
1383
  InputSerialization.add_member(:parquet, Shapes::ShapeRef.new(shape: ParquetInput, location_name: "Parquet"))
1331
1384
  InputSerialization.struct_class = Types::InputSerialization
1332
1385
 
1386
+ IntelligentTieringAndOperator.add_member(:prefix, Shapes::ShapeRef.new(shape: Prefix, location_name: "Prefix"))
1387
+ IntelligentTieringAndOperator.add_member(:tags, Shapes::ShapeRef.new(shape: TagSet, location_name: "Tag", metadata: {"flattened"=>true}))
1388
+ IntelligentTieringAndOperator.struct_class = Types::IntelligentTieringAndOperator
1389
+
1390
+ IntelligentTieringConfiguration.add_member(:id, Shapes::ShapeRef.new(shape: IntelligentTieringId, required: true, location_name: "Id"))
1391
+ IntelligentTieringConfiguration.add_member(:filter, Shapes::ShapeRef.new(shape: IntelligentTieringFilter, location_name: "Filter"))
1392
+ IntelligentTieringConfiguration.add_member(:status, Shapes::ShapeRef.new(shape: IntelligentTieringStatus, required: true, location_name: "Status"))
1393
+ IntelligentTieringConfiguration.add_member(:tierings, Shapes::ShapeRef.new(shape: TieringList, required: true, location_name: "Tiering"))
1394
+ IntelligentTieringConfiguration.struct_class = Types::IntelligentTieringConfiguration
1395
+
1396
+ IntelligentTieringConfigurationList.member = Shapes::ShapeRef.new(shape: IntelligentTieringConfiguration)
1397
+
1398
+ IntelligentTieringFilter.add_member(:prefix, Shapes::ShapeRef.new(shape: Prefix, location_name: "Prefix"))
1399
+ IntelligentTieringFilter.add_member(:tag, Shapes::ShapeRef.new(shape: Tag, location_name: "Tag"))
1400
+ IntelligentTieringFilter.add_member(:and, Shapes::ShapeRef.new(shape: IntelligentTieringAndOperator, location_name: "And"))
1401
+ IntelligentTieringFilter.struct_class = Types::IntelligentTieringFilter
1402
+
1403
+ InvalidObjectState.add_member(:storage_class, Shapes::ShapeRef.new(shape: StorageClass, location_name: "StorageClass"))
1404
+ InvalidObjectState.add_member(:access_tier, Shapes::ShapeRef.new(shape: IntelligentTieringAccessTier, location_name: "AccessTier"))
1405
+ InvalidObjectState.struct_class = Types::InvalidObjectState
1406
+
1333
1407
  InventoryConfiguration.add_member(:destination, Shapes::ShapeRef.new(shape: InventoryDestination, required: true, location_name: "Destination"))
1334
1408
  InventoryConfiguration.add_member(:is_enabled, Shapes::ShapeRef.new(shape: IsEnabled, required: true, location_name: "IsEnabled"))
1335
1409
  InventoryConfiguration.add_member(:filter, Shapes::ShapeRef.new(shape: InventoryFilter, location_name: "Filter"))
@@ -1418,6 +1492,16 @@ module Aws::S3
1418
1492
  ListBucketAnalyticsConfigurationsRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1419
1493
  ListBucketAnalyticsConfigurationsRequest.struct_class = Types::ListBucketAnalyticsConfigurationsRequest
1420
1494
 
1495
+ ListBucketIntelligentTieringConfigurationsOutput.add_member(:is_truncated, Shapes::ShapeRef.new(shape: IsTruncated, location_name: "IsTruncated"))
1496
+ ListBucketIntelligentTieringConfigurationsOutput.add_member(:continuation_token, Shapes::ShapeRef.new(shape: Token, location_name: "ContinuationToken"))
1497
+ ListBucketIntelligentTieringConfigurationsOutput.add_member(:next_continuation_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextContinuationToken"))
1498
+ ListBucketIntelligentTieringConfigurationsOutput.add_member(:intelligent_tiering_configuration_list, Shapes::ShapeRef.new(shape: IntelligentTieringConfigurationList, location_name: "IntelligentTieringConfiguration"))
1499
+ ListBucketIntelligentTieringConfigurationsOutput.struct_class = Types::ListBucketIntelligentTieringConfigurationsOutput
1500
+
1501
+ ListBucketIntelligentTieringConfigurationsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1502
+ ListBucketIntelligentTieringConfigurationsRequest.add_member(:continuation_token, Shapes::ShapeRef.new(shape: Token, location: "querystring", location_name: "continuation-token"))
1503
+ ListBucketIntelligentTieringConfigurationsRequest.struct_class = Types::ListBucketIntelligentTieringConfigurationsRequest
1504
+
1421
1505
  ListBucketInventoryConfigurationsOutput.add_member(:continuation_token, Shapes::ShapeRef.new(shape: Token, location_name: "ContinuationToken"))
1422
1506
  ListBucketInventoryConfigurationsOutput.add_member(:inventory_configuration_list, Shapes::ShapeRef.new(shape: InventoryConfigurationList, location_name: "InventoryConfiguration"))
1423
1507
  ListBucketInventoryConfigurationsOutput.add_member(:is_truncated, Shapes::ShapeRef.new(shape: IsTruncated, location_name: "IsTruncated"))
@@ -1579,7 +1663,7 @@ module Aws::S3
1579
1663
  MetadataEntry.struct_class = Types::MetadataEntry
1580
1664
 
1581
1665
  Metrics.add_member(:status, Shapes::ShapeRef.new(shape: MetricsStatus, required: true, location_name: "Status"))
1582
- Metrics.add_member(:event_threshold, Shapes::ShapeRef.new(shape: ReplicationTimeValue, required: true, location_name: "EventThreshold"))
1666
+ Metrics.add_member(:event_threshold, Shapes::ShapeRef.new(shape: ReplicationTimeValue, location_name: "EventThreshold"))
1583
1667
  Metrics.struct_class = Types::Metrics
1584
1668
 
1585
1669
  MetricsAndOperator.add_member(:prefix, Shapes::ShapeRef.new(shape: Prefix, location_name: "Prefix"))
@@ -1692,6 +1776,14 @@ module Aws::S3
1692
1776
  Owner.add_member(:id, Shapes::ShapeRef.new(shape: ID, location_name: "ID"))
1693
1777
  Owner.struct_class = Types::Owner
1694
1778
 
1779
+ OwnershipControls.add_member(:rules, Shapes::ShapeRef.new(shape: OwnershipControlsRules, required: true, location_name: "Rule"))
1780
+ OwnershipControls.struct_class = Types::OwnershipControls
1781
+
1782
+ OwnershipControlsRule.add_member(:object_ownership, Shapes::ShapeRef.new(shape: ObjectOwnership, required: true, location_name: "ObjectOwnership"))
1783
+ OwnershipControlsRule.struct_class = Types::OwnershipControlsRule
1784
+
1785
+ OwnershipControlsRules.member = Shapes::ShapeRef.new(shape: OwnershipControlsRule)
1786
+
1695
1787
  ParquetInput.struct_class = Types::ParquetInput
1696
1788
 
1697
1789
  Part.add_member(:part_number, Shapes::ShapeRef.new(shape: PartNumber, location_name: "PartNumber"))
@@ -1764,6 +1856,13 @@ module Aws::S3
1764
1856
  PutBucketEncryptionRequest[:payload] = :server_side_encryption_configuration
1765
1857
  PutBucketEncryptionRequest[:payload_member] = PutBucketEncryptionRequest.member(:server_side_encryption_configuration)
1766
1858
 
1859
+ PutBucketIntelligentTieringConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1860
+ PutBucketIntelligentTieringConfigurationRequest.add_member(:id, Shapes::ShapeRef.new(shape: IntelligentTieringId, required: true, location: "querystring", location_name: "id"))
1861
+ 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/"}}))
1862
+ PutBucketIntelligentTieringConfigurationRequest.struct_class = Types::PutBucketIntelligentTieringConfigurationRequest
1863
+ PutBucketIntelligentTieringConfigurationRequest[:payload] = :intelligent_tiering_configuration
1864
+ PutBucketIntelligentTieringConfigurationRequest[:payload_member] = PutBucketIntelligentTieringConfigurationRequest.member(:intelligent_tiering_configuration)
1865
+
1767
1866
  PutBucketInventoryConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1768
1867
  PutBucketInventoryConfigurationRequest.add_member(:id, Shapes::ShapeRef.new(shape: InventoryId, required: true, location: "querystring", location_name: "id"))
1769
1868
  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/"}}))
@@ -1818,6 +1917,14 @@ module Aws::S3
1818
1917
  PutBucketNotificationRequest[:payload] = :notification_configuration
1819
1918
  PutBucketNotificationRequest[:payload_member] = PutBucketNotificationRequest.member(:notification_configuration)
1820
1919
 
1920
+ PutBucketOwnershipControlsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1921
+ PutBucketOwnershipControlsRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
1922
+ PutBucketOwnershipControlsRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
1923
+ 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/"}}))
1924
+ PutBucketOwnershipControlsRequest.struct_class = Types::PutBucketOwnershipControlsRequest
1925
+ PutBucketOwnershipControlsRequest[:payload] = :ownership_controls
1926
+ PutBucketOwnershipControlsRequest[:payload_member] = PutBucketOwnershipControlsRequest.member(:ownership_controls)
1927
+
1821
1928
  PutBucketPolicyRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1822
1929
  PutBucketPolicyRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, deprecated: true, location: "header", location_name: "Content-MD5", metadata: {"deprecatedMessage"=>"Content-MD5 header will now be automatically computed and injected in associated operation's Http request."}))
1823
1930
  PutBucketPolicyRequest.add_member(:confirm_remove_self_bucket_access, Shapes::ShapeRef.new(shape: ConfirmRemoveSelfBucketAccess, location: "header", location_name: "x-amz-confirm-remove-self-bucket-access"))
@@ -2208,6 +2315,12 @@ module Aws::S3
2208
2315
 
2209
2316
  TargetGrants.member = Shapes::ShapeRef.new(shape: TargetGrant, location_name: "Grant")
2210
2317
 
2318
+ Tiering.add_member(:days, Shapes::ShapeRef.new(shape: IntelligentTieringDays, required: true, location_name: "Days"))
2319
+ Tiering.add_member(:access_tier, Shapes::ShapeRef.new(shape: IntelligentTieringAccessTier, required: true, location_name: "AccessTier"))
2320
+ Tiering.struct_class = Types::Tiering
2321
+
2322
+ TieringList.member = Shapes::ShapeRef.new(shape: Tiering)
2323
+
2211
2324
  TopicConfiguration.add_member(:id, Shapes::ShapeRef.new(shape: NotificationId, location_name: "Id"))
2212
2325
  TopicConfiguration.add_member(:topic_arn, Shapes::ShapeRef.new(shape: TopicArn, required: true, location_name: "Topic"))
2213
2326
  TopicConfiguration.add_member(:events, Shapes::ShapeRef.new(shape: EventList, required: true, location_name: "Event"))
@@ -2391,6 +2504,14 @@ module Aws::S3
2391
2504
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2392
2505
  end)
2393
2506
 
2507
+ api.add_operation(:delete_bucket_intelligent_tiering_configuration, Seahorse::Model::Operation.new.tap do |o|
2508
+ o.name = "DeleteBucketIntelligentTieringConfiguration"
2509
+ o.http_method = "DELETE"
2510
+ o.http_request_uri = "/{Bucket}?intelligent-tiering"
2511
+ o.input = Shapes::ShapeRef.new(shape: DeleteBucketIntelligentTieringConfigurationRequest)
2512
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2513
+ end)
2514
+
2394
2515
  api.add_operation(:delete_bucket_inventory_configuration, Seahorse::Model::Operation.new.tap do |o|
2395
2516
  o.name = "DeleteBucketInventoryConfiguration"
2396
2517
  o.http_method = "DELETE"
@@ -2415,6 +2536,14 @@ module Aws::S3
2415
2536
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2416
2537
  end)
2417
2538
 
2539
+ api.add_operation(:delete_bucket_ownership_controls, Seahorse::Model::Operation.new.tap do |o|
2540
+ o.name = "DeleteBucketOwnershipControls"
2541
+ o.http_method = "DELETE"
2542
+ o.http_request_uri = "/{Bucket}?ownershipControls"
2543
+ o.input = Shapes::ShapeRef.new(shape: DeleteBucketOwnershipControlsRequest)
2544
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2545
+ end)
2546
+
2418
2547
  api.add_operation(:delete_bucket_policy, Seahorse::Model::Operation.new.tap do |o|
2419
2548
  o.name = "DeleteBucketPolicy"
2420
2549
  o.http_method = "DELETE"
@@ -2520,6 +2649,14 @@ module Aws::S3
2520
2649
  o.output = Shapes::ShapeRef.new(shape: GetBucketEncryptionOutput)
2521
2650
  end)
2522
2651
 
2652
+ api.add_operation(:get_bucket_intelligent_tiering_configuration, Seahorse::Model::Operation.new.tap do |o|
2653
+ o.name = "GetBucketIntelligentTieringConfiguration"
2654
+ o.http_method = "GET"
2655
+ o.http_request_uri = "/{Bucket}?intelligent-tiering"
2656
+ o.input = Shapes::ShapeRef.new(shape: GetBucketIntelligentTieringConfigurationRequest)
2657
+ o.output = Shapes::ShapeRef.new(shape: GetBucketIntelligentTieringConfigurationOutput)
2658
+ end)
2659
+
2523
2660
  api.add_operation(:get_bucket_inventory_configuration, Seahorse::Model::Operation.new.tap do |o|
2524
2661
  o.name = "GetBucketInventoryConfiguration"
2525
2662
  o.http_method = "GET"
@@ -2586,6 +2723,14 @@ module Aws::S3
2586
2723
  o.output = Shapes::ShapeRef.new(shape: NotificationConfiguration)
2587
2724
  end)
2588
2725
 
2726
+ api.add_operation(:get_bucket_ownership_controls, Seahorse::Model::Operation.new.tap do |o|
2727
+ o.name = "GetBucketOwnershipControls"
2728
+ o.http_method = "GET"
2729
+ o.http_request_uri = "/{Bucket}?ownershipControls"
2730
+ o.input = Shapes::ShapeRef.new(shape: GetBucketOwnershipControlsRequest)
2731
+ o.output = Shapes::ShapeRef.new(shape: GetBucketOwnershipControlsOutput)
2732
+ end)
2733
+
2589
2734
  api.add_operation(:get_bucket_policy, Seahorse::Model::Operation.new.tap do |o|
2590
2735
  o.name = "GetBucketPolicy"
2591
2736
  o.http_method = "GET"
@@ -2649,6 +2794,7 @@ module Aws::S3
2649
2794
  o.input = Shapes::ShapeRef.new(shape: GetObjectRequest)
2650
2795
  o.output = Shapes::ShapeRef.new(shape: GetObjectOutput)
2651
2796
  o.errors << Shapes::ShapeRef.new(shape: NoSuchKey)
2797
+ o.errors << Shapes::ShapeRef.new(shape: InvalidObjectState)
2652
2798
  end)
2653
2799
 
2654
2800
  api.add_operation(:get_object_acl, Seahorse::Model::Operation.new.tap do |o|
@@ -2734,6 +2880,14 @@ module Aws::S3
2734
2880
  o.output = Shapes::ShapeRef.new(shape: ListBucketAnalyticsConfigurationsOutput)
2735
2881
  end)
2736
2882
 
2883
+ api.add_operation(:list_bucket_intelligent_tiering_configurations, Seahorse::Model::Operation.new.tap do |o|
2884
+ o.name = "ListBucketIntelligentTieringConfigurations"
2885
+ o.http_method = "GET"
2886
+ o.http_request_uri = "/{Bucket}?intelligent-tiering"
2887
+ o.input = Shapes::ShapeRef.new(shape: ListBucketIntelligentTieringConfigurationsRequest)
2888
+ o.output = Shapes::ShapeRef.new(shape: ListBucketIntelligentTieringConfigurationsOutput)
2889
+ end)
2890
+
2737
2891
  api.add_operation(:list_bucket_inventory_configurations, Seahorse::Model::Operation.new.tap do |o|
2738
2892
  o.name = "ListBucketInventoryConfigurations"
2739
2893
  o.http_method = "GET"
@@ -2879,6 +3033,14 @@ module Aws::S3
2879
3033
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2880
3034
  end)
2881
3035
 
3036
+ api.add_operation(:put_bucket_intelligent_tiering_configuration, Seahorse::Model::Operation.new.tap do |o|
3037
+ o.name = "PutBucketIntelligentTieringConfiguration"
3038
+ o.http_method = "PUT"
3039
+ o.http_request_uri = "/{Bucket}?intelligent-tiering"
3040
+ o.input = Shapes::ShapeRef.new(shape: PutBucketIntelligentTieringConfigurationRequest)
3041
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
3042
+ end)
3043
+
2882
3044
  api.add_operation(:put_bucket_inventory_configuration, Seahorse::Model::Operation.new.tap do |o|
2883
3045
  o.name = "PutBucketInventoryConfiguration"
2884
3046
  o.http_method = "PUT"
@@ -2941,6 +3103,14 @@ module Aws::S3
2941
3103
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
2942
3104
  end)
2943
3105
 
3106
+ api.add_operation(:put_bucket_ownership_controls, Seahorse::Model::Operation.new.tap do |o|
3107
+ o.name = "PutBucketOwnershipControls"
3108
+ o.http_method = "PUT"
3109
+ o.http_request_uri = "/{Bucket}?ownershipControls"
3110
+ o.input = Shapes::ShapeRef.new(shape: PutBucketOwnershipControlsRequest)
3111
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
3112
+ end)
3113
+
2944
3114
  api.add_operation(:put_bucket_policy, Seahorse::Model::Operation.new.tap do |o|
2945
3115
  o.name = "PutBucketPolicy"
2946
3116
  o.http_method = "PUT"
@@ -29,6 +29,6 @@ require 'aws-sdk-s3/customizations/types/list_object_versions_output'
29
29
  Aws::S3::ObjectVersion::Collection,
30
30
  ].each do |klass|
31
31
  klass.send(:alias_method, :delete, :batch_delete!)
32
- klass.send(:extend, Aws::Deprecations)
32
+ klass.extend Aws::Deprecations
33
33
  klass.send(:deprecated, :delete, use: :batch_delete!)
34
34
  end
@@ -12,13 +12,12 @@ module Aws
12
12
  # Define a new initialize method that extracts out a bucket ARN.
13
13
  define_method(:initialize) do |*args|
14
14
  old_initialize.bind(self).call(*args)
15
- bucket_name, region, arn = Plugins::BucketARN.resolve_arn!(
15
+ resolved_region, arn = Plugins::ARN.resolve_arn!(
16
16
  name,
17
17
  client.config.region,
18
18
  client.config.s3_use_arn_region
19
19
  )
20
- @name = bucket_name
21
- @client.config.region = region
20
+ @resolved_region = resolved_region
22
21
  @arn = arn
23
22
  end
24
23
 
@@ -102,7 +101,11 @@ module Aws
102
101
  if options[:virtual_host]
103
102
  "http://#{name}"
104
103
  elsif @arn
105
- Plugins::BucketARN.resolve_url!(URI.parse(s3_bucket_url), @arn).to_s
104
+ Plugins::ARN.resolve_url!(
105
+ client.config.endpoint.dup,
106
+ @arn,
107
+ @resolved_region
108
+ ).to_s
106
109
  else
107
110
  s3_bucket_url
108
111
  end
@@ -282,8 +282,8 @@ module Aws
282
282
  # # small files are uploaded in a single API call
283
283
  # obj.upload_file('/path/to/file')
284
284
  #
285
- # Files larger than `:multipart_threshold` are uploaded using the
286
- # Amazon S3 multipart upload APIs.
285
+ # Files larger than or equal to `:multipart_threshold` are uploaded
286
+ # using the Amazon S3 multipart upload APIs.
287
287
  #
288
288
  # # large files are automatically split into parts
289
289
  # # and the parts are uploaded in parallel
@@ -313,7 +313,8 @@ module Aws
313
313
  # will be empty.
314
314
  #
315
315
  # @option options [Integer] :multipart_threshold (15728640) Files larger
316
- # than `:multipart_threshold` are uploaded using the S3 multipart APIs.
316
+ # than or equal to `:multipart_threshold` are uploaded using the S3
317
+ # multipart APIs.
317
318
  # Default threshold is 15MB.
318
319
  #
319
320
  # @option options [Integer] :thread_count (10) The number of parallel
@@ -29,6 +29,7 @@ module Aws::S3
29
29
  # ## Error Classes
30
30
  # * {BucketAlreadyExists}
31
31
  # * {BucketAlreadyOwnedByYou}
32
+ # * {InvalidObjectState}
32
33
  # * {NoSuchBucket}
33
34
  # * {NoSuchKey}
34
35
  # * {NoSuchUpload}
@@ -61,6 +62,26 @@ module Aws::S3
61
62
  end
62
63
  end
63
64
 
65
+ class InvalidObjectState < ServiceError
66
+
67
+ # @param [Seahorse::Client::RequestContext] context
68
+ # @param [String] message
69
+ # @param [Aws::S3::Types::InvalidObjectState] data
70
+ def initialize(context, message, data = Aws::EmptyStructure.new)
71
+ super(context, message, data)
72
+ end
73
+
74
+ # @return [String]
75
+ def storage_class
76
+ @data[:storage_class]
77
+ end
78
+
79
+ # @return [String]
80
+ def access_tier
81
+ @data[:access_tier]
82
+ end
83
+ end
84
+
64
85
  class NoSuchBucket < ServiceError
65
86
 
66
87
  # @param [Seahorse::Client::RequestContext] context