aws-sdk-s3 1.24.1 → 1.36.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -49,6 +49,7 @@ module Aws::S3
49
49
  BucketName = Shapes::StringShape.new(name: 'BucketName')
50
50
  BucketVersioningStatus = Shapes::StringShape.new(name: 'BucketVersioningStatus')
51
51
  Buckets = Shapes::ListShape.new(name: 'Buckets')
52
+ BypassGovernanceRetention = Shapes::BooleanShape.new(name: 'BypassGovernanceRetention')
52
53
  BytesProcessed = Shapes::IntegerShape.new(name: 'BytesProcessed')
53
54
  BytesReturned = Shapes::IntegerShape.new(name: 'BytesReturned')
54
55
  BytesScanned = Shapes::IntegerShape.new(name: 'BytesScanned')
@@ -104,6 +105,7 @@ module Aws::S3
104
105
  Date = Shapes::TimestampShape.new(name: 'Date', timestampFormat: "iso8601")
105
106
  Days = Shapes::IntegerShape.new(name: 'Days')
106
107
  DaysAfterInitiation = Shapes::IntegerShape.new(name: 'DaysAfterInitiation')
108
+ DefaultRetention = Shapes::StructureShape.new(name: 'DefaultRetention')
107
109
  Delete = Shapes::StructureShape.new(name: 'Delete')
108
110
  DeleteBucketAnalyticsConfigurationRequest = Shapes::StructureShape.new(name: 'DeleteBucketAnalyticsConfigurationRequest')
109
111
  DeleteBucketCorsRequest = Shapes::StructureShape.new(name: 'DeleteBucketCorsRequest')
@@ -202,8 +204,14 @@ module Aws::S3
202
204
  GetBucketWebsiteRequest = Shapes::StructureShape.new(name: 'GetBucketWebsiteRequest')
203
205
  GetObjectAclOutput = Shapes::StructureShape.new(name: 'GetObjectAclOutput')
204
206
  GetObjectAclRequest = Shapes::StructureShape.new(name: 'GetObjectAclRequest')
207
+ GetObjectLegalHoldOutput = Shapes::StructureShape.new(name: 'GetObjectLegalHoldOutput')
208
+ GetObjectLegalHoldRequest = Shapes::StructureShape.new(name: 'GetObjectLegalHoldRequest')
209
+ GetObjectLockConfigurationOutput = Shapes::StructureShape.new(name: 'GetObjectLockConfigurationOutput')
210
+ GetObjectLockConfigurationRequest = Shapes::StructureShape.new(name: 'GetObjectLockConfigurationRequest')
205
211
  GetObjectOutput = Shapes::StructureShape.new(name: 'GetObjectOutput')
206
212
  GetObjectRequest = Shapes::StructureShape.new(name: 'GetObjectRequest')
213
+ GetObjectRetentionOutput = Shapes::StructureShape.new(name: 'GetObjectRetentionOutput')
214
+ GetObjectRetentionRequest = Shapes::StructureShape.new(name: 'GetObjectRetentionRequest')
207
215
  GetObjectTaggingOutput = Shapes::StructureShape.new(name: 'GetObjectTaggingOutput')
208
216
  GetObjectTaggingRequest = Shapes::StructureShape.new(name: 'GetObjectTaggingRequest')
209
217
  GetObjectTorrentOutput = Shapes::StructureShape.new(name: 'GetObjectTorrentOutput')
@@ -334,6 +342,17 @@ module Aws::S3
334
342
  ObjectIdentifierList = Shapes::ListShape.new(name: 'ObjectIdentifierList', flattened: true)
335
343
  ObjectKey = Shapes::StringShape.new(name: 'ObjectKey')
336
344
  ObjectList = Shapes::ListShape.new(name: 'ObjectList', flattened: true)
345
+ ObjectLockConfiguration = Shapes::StructureShape.new(name: 'ObjectLockConfiguration')
346
+ ObjectLockEnabled = Shapes::StringShape.new(name: 'ObjectLockEnabled')
347
+ ObjectLockEnabledForBucket = Shapes::BooleanShape.new(name: 'ObjectLockEnabledForBucket')
348
+ ObjectLockLegalHold = Shapes::StructureShape.new(name: 'ObjectLockLegalHold')
349
+ ObjectLockLegalHoldStatus = Shapes::StringShape.new(name: 'ObjectLockLegalHoldStatus')
350
+ ObjectLockMode = Shapes::StringShape.new(name: 'ObjectLockMode')
351
+ ObjectLockRetainUntilDate = Shapes::TimestampShape.new(name: 'ObjectLockRetainUntilDate', timestampFormat: "iso8601")
352
+ ObjectLockRetention = Shapes::StructureShape.new(name: 'ObjectLockRetention')
353
+ ObjectLockRetentionMode = Shapes::StringShape.new(name: 'ObjectLockRetentionMode')
354
+ ObjectLockRule = Shapes::StructureShape.new(name: 'ObjectLockRule')
355
+ ObjectLockToken = Shapes::StringShape.new(name: 'ObjectLockToken')
337
356
  ObjectNotInActiveTierError = Shapes::StructureShape.new(name: 'ObjectNotInActiveTierError')
338
357
  ObjectStorageClass = Shapes::StringShape.new(name: 'ObjectStorageClass')
339
358
  ObjectVersion = Shapes::StructureShape.new(name: 'ObjectVersion')
@@ -380,8 +399,14 @@ module Aws::S3
380
399
  PutBucketWebsiteRequest = Shapes::StructureShape.new(name: 'PutBucketWebsiteRequest')
381
400
  PutObjectAclOutput = Shapes::StructureShape.new(name: 'PutObjectAclOutput')
382
401
  PutObjectAclRequest = Shapes::StructureShape.new(name: 'PutObjectAclRequest')
402
+ PutObjectLegalHoldOutput = Shapes::StructureShape.new(name: 'PutObjectLegalHoldOutput')
403
+ PutObjectLegalHoldRequest = Shapes::StructureShape.new(name: 'PutObjectLegalHoldRequest')
404
+ PutObjectLockConfigurationOutput = Shapes::StructureShape.new(name: 'PutObjectLockConfigurationOutput')
405
+ PutObjectLockConfigurationRequest = Shapes::StructureShape.new(name: 'PutObjectLockConfigurationRequest')
383
406
  PutObjectOutput = Shapes::StructureShape.new(name: 'PutObjectOutput')
384
407
  PutObjectRequest = Shapes::StructureShape.new(name: 'PutObjectRequest')
408
+ PutObjectRetentionOutput = Shapes::StructureShape.new(name: 'PutObjectRetentionOutput')
409
+ PutObjectRetentionRequest = Shapes::StructureShape.new(name: 'PutObjectRetentionRequest')
385
410
  PutObjectTaggingOutput = Shapes::StructureShape.new(name: 'PutObjectTaggingOutput')
386
411
  PutObjectTaggingRequest = Shapes::StructureShape.new(name: 'PutObjectTaggingRequest')
387
412
  PutPublicAccessBlockRequest = Shapes::StructureShape.new(name: 'PutPublicAccessBlockRequest')
@@ -491,6 +516,7 @@ module Aws::S3
491
516
  VersioningConfiguration = Shapes::StructureShape.new(name: 'VersioningConfiguration')
492
517
  WebsiteConfiguration = Shapes::StructureShape.new(name: 'WebsiteConfiguration')
493
518
  WebsiteRedirectLocation = Shapes::StringShape.new(name: 'WebsiteRedirectLocation')
519
+ Years = Shapes::IntegerShape.new(name: 'Years')
494
520
 
495
521
  AbortIncompleteMultipartUpload.add_member(:days_after_initiation, Shapes::ShapeRef.new(shape: DaysAfterInitiation, location_name: "DaysAfterInitiation"))
496
522
  AbortIncompleteMultipartUpload.struct_class = Types::AbortIncompleteMultipartUpload
@@ -678,6 +704,9 @@ module Aws::S3
678
704
  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"))
679
705
  CopyObjectRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
680
706
  CopyObjectRequest.add_member(:tagging, Shapes::ShapeRef.new(shape: TaggingHeader, location: "header", location_name: "x-amz-tagging"))
707
+ CopyObjectRequest.add_member(:object_lock_mode, Shapes::ShapeRef.new(shape: ObjectLockMode, location: "header", location_name: "x-amz-object-lock-mode"))
708
+ 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
+ CopyObjectRequest.add_member(:object_lock_legal_hold_status, Shapes::ShapeRef.new(shape: ObjectLockLegalHoldStatus, location: "header", location_name: "x-amz-object-lock-legal-hold"))
681
710
  CopyObjectRequest.struct_class = Types::CopyObjectRequest
682
711
 
683
712
  CopyObjectResult.add_member(:etag, Shapes::ShapeRef.new(shape: ETag, location_name: "ETag"))
@@ -702,6 +731,7 @@ module Aws::S3
702
731
  CreateBucketRequest.add_member(:grant_read_acp, Shapes::ShapeRef.new(shape: GrantReadACP, location: "header", location_name: "x-amz-grant-read-acp"))
703
732
  CreateBucketRequest.add_member(:grant_write, Shapes::ShapeRef.new(shape: GrantWrite, location: "header", location_name: "x-amz-grant-write"))
704
733
  CreateBucketRequest.add_member(:grant_write_acp, Shapes::ShapeRef.new(shape: GrantWriteACP, location: "header", location_name: "x-amz-grant-write-acp"))
734
+ CreateBucketRequest.add_member(:object_lock_enabled_for_bucket, Shapes::ShapeRef.new(shape: ObjectLockEnabledForBucket, location: "header", location_name: "x-amz-bucket-object-lock-enabled"))
705
735
  CreateBucketRequest.struct_class = Types::CreateBucketRequest
706
736
  CreateBucketRequest[:payload] = :create_bucket_configuration
707
737
  CreateBucketRequest[:payload_member] = CreateBucketRequest.member(:create_bucket_configuration)
@@ -741,8 +771,16 @@ module Aws::S3
741
771
  CreateMultipartUploadRequest.add_member(:ssekms_key_id, Shapes::ShapeRef.new(shape: SSEKMSKeyId, location: "header", location_name: "x-amz-server-side-encryption-aws-kms-key-id"))
742
772
  CreateMultipartUploadRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
743
773
  CreateMultipartUploadRequest.add_member(:tagging, Shapes::ShapeRef.new(shape: TaggingHeader, location: "header", location_name: "x-amz-tagging"))
774
+ CreateMultipartUploadRequest.add_member(:object_lock_mode, Shapes::ShapeRef.new(shape: ObjectLockMode, location: "header", location_name: "x-amz-object-lock-mode"))
775
+ 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
+ CreateMultipartUploadRequest.add_member(:object_lock_legal_hold_status, Shapes::ShapeRef.new(shape: ObjectLockLegalHoldStatus, location: "header", location_name: "x-amz-object-lock-legal-hold"))
744
777
  CreateMultipartUploadRequest.struct_class = Types::CreateMultipartUploadRequest
745
778
 
779
+ DefaultRetention.add_member(:mode, Shapes::ShapeRef.new(shape: ObjectLockRetentionMode, location_name: "Mode"))
780
+ DefaultRetention.add_member(:days, Shapes::ShapeRef.new(shape: Days, location_name: "Days"))
781
+ DefaultRetention.add_member(:years, Shapes::ShapeRef.new(shape: Years, location_name: "Years"))
782
+ DefaultRetention.struct_class = Types::DefaultRetention
783
+
746
784
  Delete.add_member(:objects, Shapes::ShapeRef.new(shape: ObjectIdentifierList, required: true, location_name: "Object"))
747
785
  Delete.add_member(:quiet, Shapes::ShapeRef.new(shape: Quiet, location_name: "Quiet"))
748
786
  Delete.struct_class = Types::Delete
@@ -805,6 +843,7 @@ module Aws::S3
805
843
  DeleteObjectRequest.add_member(:mfa, Shapes::ShapeRef.new(shape: MFA, location: "header", location_name: "x-amz-mfa"))
806
844
  DeleteObjectRequest.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "querystring", location_name: "versionId"))
807
845
  DeleteObjectRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
846
+ DeleteObjectRequest.add_member(:bypass_governance_retention, Shapes::ShapeRef.new(shape: BypassGovernanceRetention, location: "header", location_name: "x-amz-bypass-governance-retention"))
808
847
  DeleteObjectRequest.struct_class = Types::DeleteObjectRequest
809
848
 
810
849
  DeleteObjectTaggingOutput.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "header", location_name: "x-amz-version-id"))
@@ -824,6 +863,7 @@ module Aws::S3
824
863
  DeleteObjectsRequest.add_member(:delete, Shapes::ShapeRef.new(shape: Delete, required: true, location_name: "Delete", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
825
864
  DeleteObjectsRequest.add_member(:mfa, Shapes::ShapeRef.new(shape: MFA, location: "header", location_name: "x-amz-mfa"))
826
865
  DeleteObjectsRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
866
+ DeleteObjectsRequest.add_member(:bypass_governance_retention, Shapes::ShapeRef.new(shape: BypassGovernanceRetention, location: "header", location_name: "x-amz-bypass-governance-retention"))
827
867
  DeleteObjectsRequest.struct_class = Types::DeleteObjectsRequest
828
868
  DeleteObjectsRequest[:payload] = :delete
829
869
  DeleteObjectsRequest[:payload_member] = DeleteObjectsRequest.member(:delete)
@@ -1021,6 +1061,25 @@ module Aws::S3
1021
1061
  GetObjectAclRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
1022
1062
  GetObjectAclRequest.struct_class = Types::GetObjectAclRequest
1023
1063
 
1064
+ GetObjectLegalHoldOutput.add_member(:legal_hold, Shapes::ShapeRef.new(shape: ObjectLockLegalHold, location_name: "LegalHold"))
1065
+ GetObjectLegalHoldOutput.struct_class = Types::GetObjectLegalHoldOutput
1066
+ GetObjectLegalHoldOutput[:payload] = :legal_hold
1067
+ GetObjectLegalHoldOutput[:payload_member] = GetObjectLegalHoldOutput.member(:legal_hold)
1068
+
1069
+ GetObjectLegalHoldRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1070
+ GetObjectLegalHoldRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
1071
+ GetObjectLegalHoldRequest.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "querystring", location_name: "versionId"))
1072
+ GetObjectLegalHoldRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
1073
+ GetObjectLegalHoldRequest.struct_class = Types::GetObjectLegalHoldRequest
1074
+
1075
+ GetObjectLockConfigurationOutput.add_member(:object_lock_configuration, Shapes::ShapeRef.new(shape: ObjectLockConfiguration, location_name: "ObjectLockConfiguration"))
1076
+ GetObjectLockConfigurationOutput.struct_class = Types::GetObjectLockConfigurationOutput
1077
+ GetObjectLockConfigurationOutput[:payload] = :object_lock_configuration
1078
+ GetObjectLockConfigurationOutput[:payload_member] = GetObjectLockConfigurationOutput.member(:object_lock_configuration)
1079
+
1080
+ GetObjectLockConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1081
+ GetObjectLockConfigurationRequest.struct_class = Types::GetObjectLockConfigurationRequest
1082
+
1024
1083
  GetObjectOutput.add_member(:body, Shapes::ShapeRef.new(shape: Body, location_name: "Body", metadata: {"streaming"=>true}))
1025
1084
  GetObjectOutput.add_member(:delete_marker, Shapes::ShapeRef.new(shape: DeleteMarker, location: "header", location_name: "x-amz-delete-marker"))
1026
1085
  GetObjectOutput.add_member(:accept_ranges, Shapes::ShapeRef.new(shape: AcceptRanges, location: "header", location_name: "accept-ranges"))
@@ -1050,6 +1109,9 @@ module Aws::S3
1050
1109
  GetObjectOutput.add_member(:replication_status, Shapes::ShapeRef.new(shape: ReplicationStatus, location: "header", location_name: "x-amz-replication-status"))
1051
1110
  GetObjectOutput.add_member(:parts_count, Shapes::ShapeRef.new(shape: PartsCount, location: "header", location_name: "x-amz-mp-parts-count"))
1052
1111
  GetObjectOutput.add_member(:tag_count, Shapes::ShapeRef.new(shape: TagCount, location: "header", location_name: "x-amz-tagging-count"))
1112
+ GetObjectOutput.add_member(:object_lock_mode, Shapes::ShapeRef.new(shape: ObjectLockMode, location: "header", location_name: "x-amz-object-lock-mode"))
1113
+ GetObjectOutput.add_member(:object_lock_retain_until_date, Shapes::ShapeRef.new(shape: ObjectLockRetainUntilDate, location: "header", location_name: "x-amz-object-lock-retain-until-date"))
1114
+ GetObjectOutput.add_member(:object_lock_legal_hold_status, Shapes::ShapeRef.new(shape: ObjectLockLegalHoldStatus, location: "header", location_name: "x-amz-object-lock-legal-hold"))
1053
1115
  GetObjectOutput.struct_class = Types::GetObjectOutput
1054
1116
  GetObjectOutput[:payload] = :body
1055
1117
  GetObjectOutput[:payload_member] = GetObjectOutput.member(:body)
@@ -1075,6 +1137,17 @@ module Aws::S3
1075
1137
  GetObjectRequest.add_member(:part_number, Shapes::ShapeRef.new(shape: PartNumber, location: "querystring", location_name: "partNumber"))
1076
1138
  GetObjectRequest.struct_class = Types::GetObjectRequest
1077
1139
 
1140
+ GetObjectRetentionOutput.add_member(:retention, Shapes::ShapeRef.new(shape: ObjectLockRetention, location_name: "Retention"))
1141
+ GetObjectRetentionOutput.struct_class = Types::GetObjectRetentionOutput
1142
+ GetObjectRetentionOutput[:payload] = :retention
1143
+ GetObjectRetentionOutput[:payload_member] = GetObjectRetentionOutput.member(:retention)
1144
+
1145
+ GetObjectRetentionRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1146
+ GetObjectRetentionRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
1147
+ GetObjectRetentionRequest.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "querystring", location_name: "versionId"))
1148
+ GetObjectRetentionRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
1149
+ GetObjectRetentionRequest.struct_class = Types::GetObjectRetentionRequest
1150
+
1078
1151
  GetObjectTaggingOutput.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "header", location_name: "x-amz-version-id"))
1079
1152
  GetObjectTaggingOutput.add_member(:tag_set, Shapes::ShapeRef.new(shape: TagSet, required: true, location_name: "TagSet"))
1080
1153
  GetObjectTaggingOutput.struct_class = Types::GetObjectTaggingOutput
@@ -1148,6 +1221,9 @@ module Aws::S3
1148
1221
  HeadObjectOutput.add_member(:request_charged, Shapes::ShapeRef.new(shape: RequestCharged, location: "header", location_name: "x-amz-request-charged"))
1149
1222
  HeadObjectOutput.add_member(:replication_status, Shapes::ShapeRef.new(shape: ReplicationStatus, location: "header", location_name: "x-amz-replication-status"))
1150
1223
  HeadObjectOutput.add_member(:parts_count, Shapes::ShapeRef.new(shape: PartsCount, location: "header", location_name: "x-amz-mp-parts-count"))
1224
+ HeadObjectOutput.add_member(:object_lock_mode, Shapes::ShapeRef.new(shape: ObjectLockMode, location: "header", location_name: "x-amz-object-lock-mode"))
1225
+ HeadObjectOutput.add_member(:object_lock_retain_until_date, Shapes::ShapeRef.new(shape: ObjectLockRetainUntilDate, location: "header", location_name: "x-amz-object-lock-retain-until-date"))
1226
+ HeadObjectOutput.add_member(:object_lock_legal_hold_status, Shapes::ShapeRef.new(shape: ObjectLockLegalHoldStatus, location: "header", location_name: "x-amz-object-lock-legal-hold"))
1151
1227
  HeadObjectOutput.struct_class = Types::HeadObjectOutput
1152
1228
 
1153
1229
  HeadObjectRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
@@ -1481,6 +1557,20 @@ module Aws::S3
1481
1557
 
1482
1558
  ObjectList.member = Shapes::ShapeRef.new(shape: Object)
1483
1559
 
1560
+ ObjectLockConfiguration.add_member(:object_lock_enabled, Shapes::ShapeRef.new(shape: ObjectLockEnabled, location_name: "ObjectLockEnabled"))
1561
+ ObjectLockConfiguration.add_member(:rule, Shapes::ShapeRef.new(shape: ObjectLockRule, location_name: "Rule"))
1562
+ ObjectLockConfiguration.struct_class = Types::ObjectLockConfiguration
1563
+
1564
+ ObjectLockLegalHold.add_member(:status, Shapes::ShapeRef.new(shape: ObjectLockLegalHoldStatus, location_name: "Status"))
1565
+ ObjectLockLegalHold.struct_class = Types::ObjectLockLegalHold
1566
+
1567
+ ObjectLockRetention.add_member(:mode, Shapes::ShapeRef.new(shape: ObjectLockRetentionMode, location_name: "Mode"))
1568
+ ObjectLockRetention.add_member(:retain_until_date, Shapes::ShapeRef.new(shape: Date, location_name: "RetainUntilDate"))
1569
+ ObjectLockRetention.struct_class = Types::ObjectLockRetention
1570
+
1571
+ ObjectLockRule.add_member(:default_retention, Shapes::ShapeRef.new(shape: DefaultRetention, location_name: "DefaultRetention"))
1572
+ ObjectLockRule.struct_class = Types::ObjectLockRule
1573
+
1484
1574
  ObjectVersion.add_member(:etag, Shapes::ShapeRef.new(shape: ETag, location_name: "ETag"))
1485
1575
  ObjectVersion.add_member(:size, Shapes::ShapeRef.new(shape: Size, location_name: "Size"))
1486
1576
  ObjectVersion.add_member(:storage_class, Shapes::ShapeRef.new(shape: ObjectVersionStorageClass, location_name: "StorageClass"))
@@ -1681,6 +1771,31 @@ module Aws::S3
1681
1771
  PutObjectAclRequest[:payload] = :access_control_policy
1682
1772
  PutObjectAclRequest[:payload_member] = PutObjectAclRequest.member(:access_control_policy)
1683
1773
 
1774
+ PutObjectLegalHoldOutput.add_member(:request_charged, Shapes::ShapeRef.new(shape: RequestCharged, location: "header", location_name: "x-amz-request-charged"))
1775
+ PutObjectLegalHoldOutput.struct_class = Types::PutObjectLegalHoldOutput
1776
+
1777
+ PutObjectLegalHoldRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1778
+ PutObjectLegalHoldRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
1779
+ PutObjectLegalHoldRequest.add_member(:legal_hold, Shapes::ShapeRef.new(shape: ObjectLockLegalHold, location_name: "LegalHold", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1780
+ PutObjectLegalHoldRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
1781
+ PutObjectLegalHoldRequest.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "querystring", location_name: "versionId"))
1782
+ PutObjectLegalHoldRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
1783
+ PutObjectLegalHoldRequest.struct_class = Types::PutObjectLegalHoldRequest
1784
+ PutObjectLegalHoldRequest[:payload] = :legal_hold
1785
+ PutObjectLegalHoldRequest[:payload_member] = PutObjectLegalHoldRequest.member(:legal_hold)
1786
+
1787
+ PutObjectLockConfigurationOutput.add_member(:request_charged, Shapes::ShapeRef.new(shape: RequestCharged, location: "header", location_name: "x-amz-request-charged"))
1788
+ PutObjectLockConfigurationOutput.struct_class = Types::PutObjectLockConfigurationOutput
1789
+
1790
+ PutObjectLockConfigurationRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1791
+ PutObjectLockConfigurationRequest.add_member(:object_lock_configuration, Shapes::ShapeRef.new(shape: ObjectLockConfiguration, location_name: "ObjectLockConfiguration", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1792
+ PutObjectLockConfigurationRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
1793
+ PutObjectLockConfigurationRequest.add_member(:token, Shapes::ShapeRef.new(shape: ObjectLockToken, location: "header", location_name: "x-amz-bucket-object-lock-token"))
1794
+ PutObjectLockConfigurationRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
1795
+ PutObjectLockConfigurationRequest.struct_class = Types::PutObjectLockConfigurationRequest
1796
+ PutObjectLockConfigurationRequest[:payload] = :object_lock_configuration
1797
+ PutObjectLockConfigurationRequest[:payload_member] = PutObjectLockConfigurationRequest.member(:object_lock_configuration)
1798
+
1684
1799
  PutObjectOutput.add_member(:expiration, Shapes::ShapeRef.new(shape: Expiration, location: "header", location_name: "x-amz-expiration"))
1685
1800
  PutObjectOutput.add_member(:etag, Shapes::ShapeRef.new(shape: ETag, location: "header", location_name: "ETag"))
1686
1801
  PutObjectOutput.add_member(:server_side_encryption, Shapes::ShapeRef.new(shape: ServerSideEncryption, location: "header", location_name: "x-amz-server-side-encryption"))
@@ -1717,10 +1832,27 @@ module Aws::S3
1717
1832
  PutObjectRequest.add_member(:ssekms_key_id, Shapes::ShapeRef.new(shape: SSEKMSKeyId, location: "header", location_name: "x-amz-server-side-encryption-aws-kms-key-id"))
1718
1833
  PutObjectRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
1719
1834
  PutObjectRequest.add_member(:tagging, Shapes::ShapeRef.new(shape: TaggingHeader, location: "header", location_name: "x-amz-tagging"))
1835
+ PutObjectRequest.add_member(:object_lock_mode, Shapes::ShapeRef.new(shape: ObjectLockMode, location: "header", location_name: "x-amz-object-lock-mode"))
1836
+ 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
+ PutObjectRequest.add_member(:object_lock_legal_hold_status, Shapes::ShapeRef.new(shape: ObjectLockLegalHoldStatus, location: "header", location_name: "x-amz-object-lock-legal-hold"))
1720
1838
  PutObjectRequest.struct_class = Types::PutObjectRequest
1721
1839
  PutObjectRequest[:payload] = :body
1722
1840
  PutObjectRequest[:payload_member] = PutObjectRequest.member(:body)
1723
1841
 
1842
+ PutObjectRetentionOutput.add_member(:request_charged, Shapes::ShapeRef.new(shape: RequestCharged, location: "header", location_name: "x-amz-request-charged"))
1843
+ PutObjectRetentionOutput.struct_class = Types::PutObjectRetentionOutput
1844
+
1845
+ PutObjectRetentionRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
1846
+ PutObjectRetentionRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key"))
1847
+ PutObjectRetentionRequest.add_member(:retention, Shapes::ShapeRef.new(shape: ObjectLockRetention, location_name: "Retention", metadata: {"xmlNamespace"=>{"uri"=>"http://s3.amazonaws.com/doc/2006-03-01/"}}))
1848
+ PutObjectRetentionRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
1849
+ PutObjectRetentionRequest.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "querystring", location_name: "versionId"))
1850
+ PutObjectRetentionRequest.add_member(:bypass_governance_retention, Shapes::ShapeRef.new(shape: BypassGovernanceRetention, location: "header", location_name: "x-amz-bypass-governance-retention"))
1851
+ PutObjectRetentionRequest.add_member(:content_md5, Shapes::ShapeRef.new(shape: ContentMD5, location: "header", location_name: "Content-MD5"))
1852
+ PutObjectRetentionRequest.struct_class = Types::PutObjectRetentionRequest
1853
+ PutObjectRetentionRequest[:payload] = :retention
1854
+ PutObjectRetentionRequest[:payload_member] = PutObjectRetentionRequest.member(:retention)
1855
+
1724
1856
  PutObjectTaggingOutput.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "header", location_name: "x-amz-version-id"))
1725
1857
  PutObjectTaggingOutput.struct_class = Types::PutObjectTaggingOutput
1726
1858
 
@@ -2383,6 +2515,30 @@ module Aws::S3
2383
2515
  o.errors << Shapes::ShapeRef.new(shape: NoSuchKey)
2384
2516
  end)
2385
2517
 
2518
+ api.add_operation(:get_object_legal_hold, Seahorse::Model::Operation.new.tap do |o|
2519
+ o.name = "GetObjectLegalHold"
2520
+ o.http_method = "GET"
2521
+ o.http_request_uri = "/{Bucket}/{Key+}?legal-hold"
2522
+ o.input = Shapes::ShapeRef.new(shape: GetObjectLegalHoldRequest)
2523
+ o.output = Shapes::ShapeRef.new(shape: GetObjectLegalHoldOutput)
2524
+ end)
2525
+
2526
+ api.add_operation(:get_object_lock_configuration, Seahorse::Model::Operation.new.tap do |o|
2527
+ o.name = "GetObjectLockConfiguration"
2528
+ o.http_method = "GET"
2529
+ o.http_request_uri = "/{Bucket}?object-lock"
2530
+ o.input = Shapes::ShapeRef.new(shape: GetObjectLockConfigurationRequest)
2531
+ o.output = Shapes::ShapeRef.new(shape: GetObjectLockConfigurationOutput)
2532
+ end)
2533
+
2534
+ api.add_operation(:get_object_retention, Seahorse::Model::Operation.new.tap do |o|
2535
+ o.name = "GetObjectRetention"
2536
+ o.http_method = "GET"
2537
+ o.http_request_uri = "/{Bucket}/{Key+}?retention"
2538
+ o.input = Shapes::ShapeRef.new(shape: GetObjectRetentionRequest)
2539
+ o.output = Shapes::ShapeRef.new(shape: GetObjectRetentionOutput)
2540
+ end)
2541
+
2386
2542
  api.add_operation(:get_object_tagging, Seahorse::Model::Operation.new.tap do |o|
2387
2543
  o.name = "GetObjectTagging"
2388
2544
  o.http_method = "GET"
@@ -2698,6 +2854,30 @@ module Aws::S3
2698
2854
  o.errors << Shapes::ShapeRef.new(shape: NoSuchKey)
2699
2855
  end)
2700
2856
 
2857
+ api.add_operation(:put_object_legal_hold, Seahorse::Model::Operation.new.tap do |o|
2858
+ o.name = "PutObjectLegalHold"
2859
+ o.http_method = "PUT"
2860
+ o.http_request_uri = "/{Bucket}/{Key+}?legal-hold"
2861
+ o.input = Shapes::ShapeRef.new(shape: PutObjectLegalHoldRequest)
2862
+ o.output = Shapes::ShapeRef.new(shape: PutObjectLegalHoldOutput)
2863
+ end)
2864
+
2865
+ api.add_operation(:put_object_lock_configuration, Seahorse::Model::Operation.new.tap do |o|
2866
+ o.name = "PutObjectLockConfiguration"
2867
+ o.http_method = "PUT"
2868
+ o.http_request_uri = "/{Bucket}?object-lock"
2869
+ o.input = Shapes::ShapeRef.new(shape: PutObjectLockConfigurationRequest)
2870
+ o.output = Shapes::ShapeRef.new(shape: PutObjectLockConfigurationOutput)
2871
+ end)
2872
+
2873
+ api.add_operation(:put_object_retention, Seahorse::Model::Operation.new.tap do |o|
2874
+ o.name = "PutObjectRetention"
2875
+ o.http_method = "PUT"
2876
+ o.http_request_uri = "/{Bucket}/{Key+}?retention"
2877
+ o.input = Shapes::ShapeRef.new(shape: PutObjectRetentionRequest)
2878
+ o.output = Shapes::ShapeRef.new(shape: PutObjectRetentionOutput)
2879
+ end)
2880
+
2701
2881
  api.add_operation(:put_object_tagging, Seahorse::Model::Operation.new.tap do |o|
2702
2882
  o.name = "PutObjectTagging"
2703
2883
  o.http_method = "PUT"
@@ -179,7 +179,7 @@ module Aws
179
179
 
180
180
  extend Deprecations
181
181
 
182
- # Creates a new encryption client. You must provide on of the following
182
+ # Creates a new encryption client. You must provide one of the following
183
183
  # options:
184
184
  #
185
185
  # * `:encryption_key`
@@ -37,12 +37,18 @@ module Aws::S3
37
37
  @event_emitter.on(:error, Proc.new)
38
38
  end
39
39
 
40
+ def on_initial_response_event(&block)
41
+ @event_emitter.on(:initial_response, Proc.new)
42
+ end
43
+
40
44
  def on_event(&block)
41
45
  on_records_event(&block)
42
46
  on_stats_event(&block)
43
47
  on_progress_event(&block)
44
48
  on_cont_event(&block)
45
49
  on_end_event(&block)
50
+ on_error_event(&block)
51
+ on_initial_response_event(&block)
46
52
  end
47
53
 
48
54
  # @api private
@@ -141,6 +141,8 @@ module Aws
141
141
  if Tempfile === body
142
142
  body.close
143
143
  body.unlink
144
+ elsif StringIO === body
145
+ body.string.clear
144
146
  end
145
147
  end
146
148
  end
@@ -70,6 +70,7 @@ module Aws::S3
70
70
  data[:storage_class]
71
71
  end
72
72
 
73
+
73
74
  # @return [Types::Owner]
74
75
  def owner
75
76
  data[:owner]
@@ -235,7 +235,7 @@ module Aws::S3
235
235
  # must use the form bytes=first-last, where the first and last are the
236
236
  # zero-based byte offsets to copy. For example, bytes=0-9 indicates that
237
237
  # you want to copy the first ten bytes of the source. You can copy a
238
- # range only if the source object is greater than 5 GB.
238
+ # range only if the source object is greater than 5 MB.
239
239
  # @option options [String] :sse_customer_algorithm
240
240
  # Specifies the algorithm to use to when encrypting the object (e.g.,
241
241
  # AES256).
@@ -46,6 +46,7 @@ module Aws::S3
46
46
  data[:delete_marker]
47
47
  end
48
48
 
49
+
49
50
  # @return [String]
50
51
  def accept_ranges
51
52
  data[:accept_ranges]
@@ -190,6 +191,7 @@ module Aws::S3
190
191
  data[:ssekms_key_id]
191
192
  end
192
193
 
194
+
193
195
  # @return [String]
194
196
  def storage_class
195
197
  data[:storage_class]
@@ -202,6 +204,7 @@ module Aws::S3
202
204
  data[:request_charged]
203
205
  end
204
206
 
207
+
205
208
  # @return [String]
206
209
  def replication_status
207
210
  data[:replication_status]
@@ -213,6 +216,24 @@ module Aws::S3
213
216
  data[:parts_count]
214
217
  end
215
218
 
219
+ # The Object Lock mode currently in place for this object.
220
+ # @return [String]
221
+ def object_lock_mode
222
+ data[:object_lock_mode]
223
+ end
224
+
225
+ # The date and time when this object's Object Lock will expire.
226
+ # @return [Time]
227
+ def object_lock_retain_until_date
228
+ data[:object_lock_retain_until_date]
229
+ end
230
+
231
+ # The Legal Hold status for the specified object.
232
+ # @return [String]
233
+ def object_lock_legal_hold_status
234
+ data[:object_lock_legal_hold_status]
235
+ end
236
+
216
237
  # @!endgroup
217
238
 
218
239
  # @return [Client]
@@ -425,7 +446,7 @@ module Aws::S3
425
446
  # metadata_directive: "COPY", # accepts COPY, REPLACE
426
447
  # tagging_directive: "COPY", # accepts COPY, REPLACE
427
448
  # server_side_encryption: "AES256", # accepts AES256, aws:kms
428
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA
449
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE
429
450
  # website_redirect_location: "WebsiteRedirectLocation",
430
451
  # sse_customer_algorithm: "SSECustomerAlgorithm",
431
452
  # sse_customer_key: "SSECustomerKey",
@@ -436,6 +457,9 @@ module Aws::S3
436
457
  # copy_source_sse_customer_key_md5: "CopySourceSSECustomerKeyMD5",
437
458
  # request_payer: "requester", # accepts requester
438
459
  # tagging: "TaggingHeader",
460
+ # object_lock_mode: "GOVERNANCE", # accepts GOVERNANCE, COMPLIANCE
461
+ # object_lock_retain_until_date: Time.now,
462
+ # object_lock_legal_hold_status: "ON", # accepts ON, OFF
439
463
  # })
440
464
  # @param [Hash] options ({})
441
465
  # @option options [String] :acl
@@ -533,6 +557,13 @@ module Aws::S3
533
557
  # The tag-set for the object destination object this value must be used
534
558
  # in conjunction with the TaggingDirective. The tag-set must be encoded
535
559
  # as URL Query parameters
560
+ # @option options [String] :object_lock_mode
561
+ # The Object Lock mode that you want to apply to the copied object.
562
+ # @option options [Time,DateTime,Date,Integer,String] :object_lock_retain_until_date
563
+ # The date and time when you want the copied object's Object Lock to
564
+ # expire.
565
+ # @option options [String] :object_lock_legal_hold_status
566
+ # Specifies whether you want to apply a Legal Hold to the copied object.
536
567
  # @return [Types::CopyObjectOutput]
537
568
  def copy_from(options = {})
538
569
  options = options.merge(
@@ -549,6 +580,7 @@ module Aws::S3
549
580
  # mfa: "MFA",
550
581
  # version_id: "ObjectVersionId",
551
582
  # request_payer: "requester", # accepts requester
583
+ # bypass_governance_retention: false,
552
584
  # })
553
585
  # @param [Hash] options ({})
554
586
  # @option options [String] :mfa
@@ -562,6 +594,9 @@ module Aws::S3
562
594
  # requests. Documentation on downloading objects from requester pays
563
595
  # buckets can be found at
564
596
  # http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
597
+ # @option options [Boolean] :bypass_governance_retention
598
+ # Indicates whether S3 Object Lock should bypass Governance-mode
599
+ # restrictions to process this operation.
565
600
  # @return [Types::DeleteObjectOutput]
566
601
  def delete(options = {})
567
602
  options = options.merge(
@@ -676,7 +711,7 @@ module Aws::S3
676
711
  # "MetadataKey" => "MetadataValue",
677
712
  # },
678
713
  # server_side_encryption: "AES256", # accepts AES256, aws:kms
679
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA
714
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE
680
715
  # website_redirect_location: "WebsiteRedirectLocation",
681
716
  # sse_customer_algorithm: "SSECustomerAlgorithm",
682
717
  # sse_customer_key: "SSECustomerKey",
@@ -684,6 +719,9 @@ module Aws::S3
684
719
  # ssekms_key_id: "SSEKMSKeyId",
685
720
  # request_payer: "requester", # accepts requester
686
721
  # tagging: "TaggingHeader",
722
+ # object_lock_mode: "GOVERNANCE", # accepts GOVERNANCE, COMPLIANCE
723
+ # object_lock_retain_until_date: Time.now,
724
+ # object_lock_legal_hold_status: "ON", # accepts ON, OFF
687
725
  # })
688
726
  # @param [Hash] options ({})
689
727
  # @option options [String] :acl
@@ -750,6 +788,14 @@ module Aws::S3
750
788
  # @option options [String] :tagging
751
789
  # The tag-set for the object. The tag-set must be encoded as URL Query
752
790
  # parameters
791
+ # @option options [String] :object_lock_mode
792
+ # Specifies the Object Lock mode that you want to apply to the uploaded
793
+ # object.
794
+ # @option options [Time,DateTime,Date,Integer,String] :object_lock_retain_until_date
795
+ # Specifies the date and time when you want the Object Lock to expire.
796
+ # @option options [String] :object_lock_legal_hold_status
797
+ # Specifies whether you want to apply a Legal Hold to the uploaded
798
+ # object.
753
799
  # @return [MultipartUpload]
754
800
  def initiate_multipart_upload(options = {})
755
801
  options = options.merge(
@@ -786,7 +832,7 @@ module Aws::S3
786
832
  # "MetadataKey" => "MetadataValue",
787
833
  # },
788
834
  # server_side_encryption: "AES256", # accepts AES256, aws:kms
789
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA
835
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE
790
836
  # website_redirect_location: "WebsiteRedirectLocation",
791
837
  # sse_customer_algorithm: "SSECustomerAlgorithm",
792
838
  # sse_customer_key: "SSECustomerKey",
@@ -794,6 +840,9 @@ module Aws::S3
794
840
  # ssekms_key_id: "SSEKMSKeyId",
795
841
  # request_payer: "requester", # accepts requester
796
842
  # tagging: "TaggingHeader",
843
+ # object_lock_mode: "GOVERNANCE", # accepts GOVERNANCE, COMPLIANCE
844
+ # object_lock_retain_until_date: Time.now,
845
+ # object_lock_legal_hold_status: "ON", # accepts ON, OFF
797
846
  # })
798
847
  # @param [Hash] options ({})
799
848
  # @option options [String] :acl
@@ -814,7 +863,8 @@ module Aws::S3
814
863
  # Size of the body in bytes. This parameter is useful when the size of
815
864
  # the body cannot be determined automatically.
816
865
  # @option options [String] :content_md5
817
- # The base64-encoded 128-bit MD5 digest of the part data.
866
+ # The base64-encoded 128-bit MD5 digest of the part data. This parameter
867
+ # is auto-populated when using the command from the CLI
818
868
  # @option options [String] :content_type
819
869
  # A standard MIME type describing the format of the object data.
820
870
  # @option options [Time,DateTime,Date,Integer,String] :expires
@@ -867,6 +917,12 @@ module Aws::S3
867
917
  # @option options [String] :tagging
868
918
  # The tag-set for the object. The tag-set must be encoded as URL Query
869
919
  # parameters. (For example, "Key1=Value1")
920
+ # @option options [String] :object_lock_mode
921
+ # The Object Lock mode that you want to apply to this object.
922
+ # @option options [Time,DateTime,Date,Integer,String] :object_lock_retain_until_date
923
+ # The date and time when you want this object's Object Lock to expire.
924
+ # @option options [String] :object_lock_legal_hold_status
925
+ # The Legal Hold status that you want to apply to the specified object.
870
926
  # @return [Types::PutObjectOutput]
871
927
  def put(options = {})
872
928
  options = options.merge(
@@ -958,7 +1014,7 @@ module Aws::S3
958
1014
  # value: "MetadataValue",
959
1015
  # },
960
1016
  # ],
961
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA
1017
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE
962
1018
  # },
963
1019
  # },
964
1020
  # },
@@ -1093,6 +1149,7 @@ module Aws::S3
1093
1149
  # object.batch_delete!({
1094
1150
  # mfa: "MFA",
1095
1151
  # request_payer: "requester", # accepts requester
1152
+ # bypass_governance_retention: false,
1096
1153
  # })
1097
1154
  # @param options ({})
1098
1155
  # @option options [String] :mfa
@@ -1104,6 +1161,10 @@ module Aws::S3
1104
1161
  # requests. Documentation on downloading objects from requester pays
1105
1162
  # buckets can be found at
1106
1163
  # http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
1164
+ # @option options [Boolean] :bypass_governance_retention
1165
+ # Specifies whether you want to delete this object even if it has a
1166
+ # Governance-type Object Lock in place. You must have sufficient
1167
+ # permissions to perform this operation.
1107
1168
  # @return [void]
1108
1169
  def batch_delete!(options = {})
1109
1170
  batch_enum.each do |batch|
@@ -38,6 +38,7 @@ module Aws::S3
38
38
  @object_key
39
39
  end
40
40
 
41
+
41
42
  # @return [Types::Owner]
42
43
  def owner
43
44
  data[:owner]