aws-sdk-s3 1.171.0 → 1.173.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +10 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-s3/bucket.rb +14 -0
- data/lib/aws-sdk-s3/bucket_lifecycle.rb +5 -0
- data/lib/aws-sdk-s3/bucket_lifecycle_configuration.rb +20 -0
- data/lib/aws-sdk-s3/client.rb +466 -306
- data/lib/aws-sdk-s3/client_api.rb +30 -0
- data/lib/aws-sdk-s3/errors.rb +44 -0
- data/lib/aws-sdk-s3/multipart_upload.rb +12 -0
- data/lib/aws-sdk-s3/object.rb +54 -0
- data/lib/aws-sdk-s3/object_summary.rb +54 -0
- data/lib/aws-sdk-s3/object_version.rb +43 -0
- data/lib/aws-sdk-s3/types.rb +246 -91
- data/lib/aws-sdk-s3.rb +1 -1
- data/sig/bucket.rbs +5 -1
- data/sig/client.rbs +12 -3
- data/sig/errors.rbs +8 -0
- data/sig/multipart_upload.rbs +2 -1
- data/sig/object.rbs +5 -1
- data/sig/object_summary.rbs +5 -1
- data/sig/object_version.rbs +4 -1
- data/sig/types.rbs +21 -0
- metadata +2 -2
@@ -169,6 +169,7 @@ module Aws::S3
|
|
169
169
|
EncodingType = Shapes::StringShape.new(name: 'EncodingType')
|
170
170
|
Encryption = Shapes::StructureShape.new(name: 'Encryption')
|
171
171
|
EncryptionConfiguration = Shapes::StructureShape.new(name: 'EncryptionConfiguration')
|
172
|
+
EncryptionTypeMismatch = Shapes::StructureShape.new(name: 'EncryptionTypeMismatch')
|
172
173
|
End = Shapes::IntegerShape.new(name: 'End')
|
173
174
|
EndEvent = Shapes::StructureShape.new(name: 'EndEvent')
|
174
175
|
Error = Shapes::StructureShape.new(name: 'Error')
|
@@ -276,6 +277,9 @@ module Aws::S3
|
|
276
277
|
HttpRedirectCode = Shapes::StringShape.new(name: 'HttpRedirectCode')
|
277
278
|
ID = Shapes::StringShape.new(name: 'ID')
|
278
279
|
IfMatch = Shapes::StringShape.new(name: 'IfMatch')
|
280
|
+
IfMatchInitiatedTime = Shapes::TimestampShape.new(name: 'IfMatchInitiatedTime', timestampFormat: "rfc822")
|
281
|
+
IfMatchLastModifiedTime = Shapes::TimestampShape.new(name: 'IfMatchLastModifiedTime', timestampFormat: "rfc822")
|
282
|
+
IfMatchSize = Shapes::IntegerShape.new(name: 'IfMatchSize')
|
279
283
|
IfModifiedSince = Shapes::TimestampShape.new(name: 'IfModifiedSince')
|
280
284
|
IfNoneMatch = Shapes::StringShape.new(name: 'IfNoneMatch')
|
281
285
|
IfUnmodifiedSince = Shapes::TimestampShape.new(name: 'IfUnmodifiedSince')
|
@@ -292,6 +296,8 @@ module Aws::S3
|
|
292
296
|
IntelligentTieringId = Shapes::StringShape.new(name: 'IntelligentTieringId')
|
293
297
|
IntelligentTieringStatus = Shapes::StringShape.new(name: 'IntelligentTieringStatus')
|
294
298
|
InvalidObjectState = Shapes::StructureShape.new(name: 'InvalidObjectState')
|
299
|
+
InvalidRequest = Shapes::StructureShape.new(name: 'InvalidRequest')
|
300
|
+
InvalidWriteOffset = Shapes::StructureShape.new(name: 'InvalidWriteOffset')
|
295
301
|
InventoryConfiguration = Shapes::StructureShape.new(name: 'InventoryConfiguration')
|
296
302
|
InventoryConfigurationList = Shapes::ListShape.new(name: 'InventoryConfigurationList', flattened: true)
|
297
303
|
InventoryDestination = Shapes::StructureShape.new(name: 'InventoryDestination')
|
@@ -321,6 +327,7 @@ module Aws::S3
|
|
321
327
|
LambdaFunctionConfiguration = Shapes::StructureShape.new(name: 'LambdaFunctionConfiguration')
|
322
328
|
LambdaFunctionConfigurationList = Shapes::ListShape.new(name: 'LambdaFunctionConfigurationList', flattened: true)
|
323
329
|
LastModified = Shapes::TimestampShape.new(name: 'LastModified')
|
330
|
+
LastModifiedTime = Shapes::TimestampShape.new(name: 'LastModifiedTime', timestampFormat: "rfc822")
|
324
331
|
LifecycleConfiguration = Shapes::StructureShape.new(name: 'LifecycleConfiguration')
|
325
332
|
LifecycleExpiration = Shapes::StructureShape.new(name: 'LifecycleExpiration')
|
326
333
|
LifecycleRule = Shapes::StructureShape.new(name: 'LifecycleRule')
|
@@ -600,6 +607,7 @@ module Aws::S3
|
|
600
607
|
Tiering = Shapes::StructureShape.new(name: 'Tiering')
|
601
608
|
TieringList = Shapes::ListShape.new(name: 'TieringList', flattened: true)
|
602
609
|
Token = Shapes::StringShape.new(name: 'Token')
|
610
|
+
TooManyParts = Shapes::StructureShape.new(name: 'TooManyParts')
|
603
611
|
TopicArn = Shapes::StringShape.new(name: 'TopicArn')
|
604
612
|
TopicConfiguration = Shapes::StructureShape.new(name: 'TopicConfiguration')
|
605
613
|
TopicConfigurationDeprecated = Shapes::StructureShape.new(name: 'TopicConfigurationDeprecated')
|
@@ -623,6 +631,7 @@ module Aws::S3
|
|
623
631
|
WebsiteConfiguration = Shapes::StructureShape.new(name: 'WebsiteConfiguration')
|
624
632
|
WebsiteRedirectLocation = Shapes::StringShape.new(name: 'WebsiteRedirectLocation')
|
625
633
|
WriteGetObjectResponseRequest = Shapes::StructureShape.new(name: 'WriteGetObjectResponseRequest')
|
634
|
+
WriteOffsetBytes = Shapes::IntegerShape.new(name: 'WriteOffsetBytes')
|
626
635
|
Years = Shapes::IntegerShape.new(name: 'Years')
|
627
636
|
|
628
637
|
AbortIncompleteMultipartUpload.add_member(:days_after_initiation, Shapes::ShapeRef.new(shape: DaysAfterInitiation, location_name: "DaysAfterInitiation"))
|
@@ -636,6 +645,7 @@ module Aws::S3
|
|
636
645
|
AbortMultipartUploadRequest.add_member(:upload_id, Shapes::ShapeRef.new(shape: MultipartUploadId, required: true, location: "querystring", location_name: "uploadId"))
|
637
646
|
AbortMultipartUploadRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
|
638
647
|
AbortMultipartUploadRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
|
648
|
+
AbortMultipartUploadRequest.add_member(:if_match_initiated_time, Shapes::ShapeRef.new(shape: IfMatchInitiatedTime, location: "header", location_name: "x-amz-if-match-initiated-time"))
|
639
649
|
AbortMultipartUploadRequest.struct_class = Types::AbortMultipartUploadRequest
|
640
650
|
|
641
651
|
AccelerateConfiguration.add_member(:status, Shapes::ShapeRef.new(shape: BucketAccelerateStatus, location_name: "Status"))
|
@@ -1048,6 +1058,9 @@ module Aws::S3
|
|
1048
1058
|
DeleteObjectRequest.add_member(:request_payer, Shapes::ShapeRef.new(shape: RequestPayer, location: "header", location_name: "x-amz-request-payer"))
|
1049
1059
|
DeleteObjectRequest.add_member(:bypass_governance_retention, Shapes::ShapeRef.new(shape: BypassGovernanceRetention, location: "header", location_name: "x-amz-bypass-governance-retention"))
|
1050
1060
|
DeleteObjectRequest.add_member(:expected_bucket_owner, Shapes::ShapeRef.new(shape: AccountId, location: "header", location_name: "x-amz-expected-bucket-owner"))
|
1061
|
+
DeleteObjectRequest.add_member(:if_match, Shapes::ShapeRef.new(shape: IfMatch, location: "header", location_name: "If-Match"))
|
1062
|
+
DeleteObjectRequest.add_member(:if_match_last_modified_time, Shapes::ShapeRef.new(shape: IfMatchLastModifiedTime, location: "header", location_name: "x-amz-if-match-last-modified-time"))
|
1063
|
+
DeleteObjectRequest.add_member(:if_match_size, Shapes::ShapeRef.new(shape: IfMatchSize, location: "header", location_name: "x-amz-if-match-size"))
|
1051
1064
|
DeleteObjectRequest.struct_class = Types::DeleteObjectRequest
|
1052
1065
|
|
1053
1066
|
DeleteObjectTaggingOutput.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location: "header", location_name: "x-amz-version-id"))
|
@@ -1104,6 +1117,8 @@ module Aws::S3
|
|
1104
1117
|
EncryptionConfiguration.add_member(:replica_kms_key_id, Shapes::ShapeRef.new(shape: ReplicaKmsKeyID, location_name: "ReplicaKmsKeyID"))
|
1105
1118
|
EncryptionConfiguration.struct_class = Types::EncryptionConfiguration
|
1106
1119
|
|
1120
|
+
EncryptionTypeMismatch.struct_class = Types::EncryptionTypeMismatch
|
1121
|
+
|
1107
1122
|
EndEvent.struct_class = Types::EndEvent
|
1108
1123
|
|
1109
1124
|
Error.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, location_name: "Key"))
|
@@ -1598,6 +1613,10 @@ module Aws::S3
|
|
1598
1613
|
InvalidObjectState.add_member(:access_tier, Shapes::ShapeRef.new(shape: IntelligentTieringAccessTier, location_name: "AccessTier"))
|
1599
1614
|
InvalidObjectState.struct_class = Types::InvalidObjectState
|
1600
1615
|
|
1616
|
+
InvalidRequest.struct_class = Types::InvalidRequest
|
1617
|
+
|
1618
|
+
InvalidWriteOffset.struct_class = Types::InvalidWriteOffset
|
1619
|
+
|
1601
1620
|
InventoryConfiguration.add_member(:destination, Shapes::ShapeRef.new(shape: InventoryDestination, required: true, location_name: "Destination"))
|
1602
1621
|
InventoryConfiguration.add_member(:is_enabled, Shapes::ShapeRef.new(shape: IsEnabled, required: true, location_name: "IsEnabled"))
|
1603
1622
|
InventoryConfiguration.add_member(:filter, Shapes::ShapeRef.new(shape: InventoryFilter, location_name: "Filter"))
|
@@ -1973,6 +1992,9 @@ module Aws::S3
|
|
1973
1992
|
|
1974
1993
|
ObjectIdentifier.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location_name: "Key"))
|
1975
1994
|
ObjectIdentifier.add_member(:version_id, Shapes::ShapeRef.new(shape: ObjectVersionId, location_name: "VersionId"))
|
1995
|
+
ObjectIdentifier.add_member(:etag, Shapes::ShapeRef.new(shape: ETag, location_name: "ETag"))
|
1996
|
+
ObjectIdentifier.add_member(:last_modified_time, Shapes::ShapeRef.new(shape: LastModifiedTime, location_name: "LastModifiedTime"))
|
1997
|
+
ObjectIdentifier.add_member(:size, Shapes::ShapeRef.new(shape: Size, location_name: "Size"))
|
1976
1998
|
ObjectIdentifier.struct_class = Types::ObjectIdentifier
|
1977
1999
|
|
1978
2000
|
ObjectIdentifierList.member = Shapes::ShapeRef.new(shape: ObjectIdentifier)
|
@@ -2321,6 +2343,7 @@ module Aws::S3
|
|
2321
2343
|
PutObjectOutput.add_member(:ssekms_key_id, Shapes::ShapeRef.new(shape: SSEKMSKeyId, location: "header", location_name: "x-amz-server-side-encryption-aws-kms-key-id"))
|
2322
2344
|
PutObjectOutput.add_member(:ssekms_encryption_context, Shapes::ShapeRef.new(shape: SSEKMSEncryptionContext, location: "header", location_name: "x-amz-server-side-encryption-context"))
|
2323
2345
|
PutObjectOutput.add_member(:bucket_key_enabled, Shapes::ShapeRef.new(shape: BucketKeyEnabled, location: "header", location_name: "x-amz-server-side-encryption-bucket-key-enabled"))
|
2346
|
+
PutObjectOutput.add_member(:size, Shapes::ShapeRef.new(shape: Size, location: "header", location_name: "x-amz-object-size"))
|
2324
2347
|
PutObjectOutput.add_member(:request_charged, Shapes::ShapeRef.new(shape: RequestCharged, location: "header", location_name: "x-amz-request-charged"))
|
2325
2348
|
PutObjectOutput.struct_class = Types::PutObjectOutput
|
2326
2349
|
|
@@ -2346,6 +2369,7 @@ module Aws::S3
|
|
2346
2369
|
PutObjectRequest.add_member(:grant_read_acp, Shapes::ShapeRef.new(shape: GrantReadACP, location: "header", location_name: "x-amz-grant-read-acp"))
|
2347
2370
|
PutObjectRequest.add_member(:grant_write_acp, Shapes::ShapeRef.new(shape: GrantWriteACP, location: "header", location_name: "x-amz-grant-write-acp"))
|
2348
2371
|
PutObjectRequest.add_member(:key, Shapes::ShapeRef.new(shape: ObjectKey, required: true, location: "uri", location_name: "Key", metadata: {"contextParam"=>{"name"=>"Key"}}))
|
2372
|
+
PutObjectRequest.add_member(:write_offset_bytes, Shapes::ShapeRef.new(shape: WriteOffsetBytes, location: "header", location_name: "x-amz-write-offset-bytes"))
|
2349
2373
|
PutObjectRequest.add_member(:metadata, Shapes::ShapeRef.new(shape: Metadata, location: "headers", location_name: "x-amz-meta-"))
|
2350
2374
|
PutObjectRequest.add_member(:server_side_encryption, Shapes::ShapeRef.new(shape: ServerSideEncryption, location: "header", location_name: "x-amz-server-side-encryption"))
|
2351
2375
|
PutObjectRequest.add_member(:storage_class, Shapes::ShapeRef.new(shape: StorageClass, location: "header", location_name: "x-amz-storage-class"))
|
@@ -2644,6 +2668,8 @@ module Aws::S3
|
|
2644
2668
|
|
2645
2669
|
TieringList.member = Shapes::ShapeRef.new(shape: Tiering)
|
2646
2670
|
|
2671
|
+
TooManyParts.struct_class = Types::TooManyParts
|
2672
|
+
|
2647
2673
|
TopicConfiguration.add_member(:id, Shapes::ShapeRef.new(shape: NotificationId, location_name: "Id"))
|
2648
2674
|
TopicConfiguration.add_member(:topic_arn, Shapes::ShapeRef.new(shape: TopicArn, required: true, location_name: "Topic"))
|
2649
2675
|
TopicConfiguration.add_member(:events, Shapes::ShapeRef.new(shape: EventList, required: true, location_name: "Event"))
|
@@ -3714,6 +3740,10 @@ module Aws::S3
|
|
3714
3740
|
}
|
3715
3741
|
o.input = Shapes::ShapeRef.new(shape: PutObjectRequest)
|
3716
3742
|
o.output = Shapes::ShapeRef.new(shape: PutObjectOutput)
|
3743
|
+
o.errors << Shapes::ShapeRef.new(shape: InvalidRequest)
|
3744
|
+
o.errors << Shapes::ShapeRef.new(shape: InvalidWriteOffset)
|
3745
|
+
o.errors << Shapes::ShapeRef.new(shape: TooManyParts)
|
3746
|
+
o.errors << Shapes::ShapeRef.new(shape: EncryptionTypeMismatch)
|
3717
3747
|
end)
|
3718
3748
|
|
3719
3749
|
api.add_operation(:put_object_acl, Seahorse::Model::Operation.new.tap do |o|
|
data/lib/aws-sdk-s3/errors.rb
CHANGED
@@ -29,12 +29,16 @@ module Aws::S3
|
|
29
29
|
# ## Error Classes
|
30
30
|
# * {BucketAlreadyExists}
|
31
31
|
# * {BucketAlreadyOwnedByYou}
|
32
|
+
# * {EncryptionTypeMismatch}
|
32
33
|
# * {InvalidObjectState}
|
34
|
+
# * {InvalidRequest}
|
35
|
+
# * {InvalidWriteOffset}
|
33
36
|
# * {NoSuchBucket}
|
34
37
|
# * {NoSuchKey}
|
35
38
|
# * {NoSuchUpload}
|
36
39
|
# * {ObjectAlreadyInActiveTierError}
|
37
40
|
# * {ObjectNotInActiveTierError}
|
41
|
+
# * {TooManyParts}
|
38
42
|
#
|
39
43
|
# Additionally, error classes are dynamically generated for service errors based on the error code
|
40
44
|
# if they are not defined above.
|
@@ -62,6 +66,16 @@ module Aws::S3
|
|
62
66
|
end
|
63
67
|
end
|
64
68
|
|
69
|
+
class EncryptionTypeMismatch < ServiceError
|
70
|
+
|
71
|
+
# @param [Seahorse::Client::RequestContext] context
|
72
|
+
# @param [String] message
|
73
|
+
# @param [Aws::S3::Types::EncryptionTypeMismatch] data
|
74
|
+
def initialize(context, message, data = Aws::EmptyStructure.new)
|
75
|
+
super(context, message, data)
|
76
|
+
end
|
77
|
+
end
|
78
|
+
|
65
79
|
class InvalidObjectState < ServiceError
|
66
80
|
|
67
81
|
# @param [Seahorse::Client::RequestContext] context
|
@@ -82,6 +96,26 @@ module Aws::S3
|
|
82
96
|
end
|
83
97
|
end
|
84
98
|
|
99
|
+
class InvalidRequest < ServiceError
|
100
|
+
|
101
|
+
# @param [Seahorse::Client::RequestContext] context
|
102
|
+
# @param [String] message
|
103
|
+
# @param [Aws::S3::Types::InvalidRequest] data
|
104
|
+
def initialize(context, message, data = Aws::EmptyStructure.new)
|
105
|
+
super(context, message, data)
|
106
|
+
end
|
107
|
+
end
|
108
|
+
|
109
|
+
class InvalidWriteOffset < ServiceError
|
110
|
+
|
111
|
+
# @param [Seahorse::Client::RequestContext] context
|
112
|
+
# @param [String] message
|
113
|
+
# @param [Aws::S3::Types::InvalidWriteOffset] data
|
114
|
+
def initialize(context, message, data = Aws::EmptyStructure.new)
|
115
|
+
super(context, message, data)
|
116
|
+
end
|
117
|
+
end
|
118
|
+
|
85
119
|
class NoSuchBucket < ServiceError
|
86
120
|
|
87
121
|
# @param [Seahorse::Client::RequestContext] context
|
@@ -132,6 +166,16 @@ module Aws::S3
|
|
132
166
|
end
|
133
167
|
end
|
134
168
|
|
169
|
+
class TooManyParts < ServiceError
|
170
|
+
|
171
|
+
# @param [Seahorse::Client::RequestContext] context
|
172
|
+
# @param [String] message
|
173
|
+
# @param [Aws::S3::Types::TooManyParts] data
|
174
|
+
def initialize(context, message, data = Aws::EmptyStructure.new)
|
175
|
+
super(context, message, data)
|
176
|
+
end
|
177
|
+
end
|
178
|
+
|
135
179
|
end
|
136
180
|
end
|
137
181
|
|
@@ -239,6 +239,7 @@ module Aws::S3
|
|
239
239
|
# multipart_upload.abort({
|
240
240
|
# request_payer: "requester", # accepts requester
|
241
241
|
# expected_bucket_owner: "AccountId",
|
242
|
+
# if_match_initiated_time: Time.now,
|
242
243
|
# })
|
243
244
|
# @param [Hash] options ({})
|
244
245
|
# @option options [String] :request_payer
|
@@ -261,6 +262,17 @@ module Aws::S3
|
|
261
262
|
# The account ID of the expected bucket owner. If the account ID that
|
262
263
|
# you provide does not match the actual owner of the bucket, the request
|
263
264
|
# fails with the HTTP status code `403 Forbidden` (access denied).
|
265
|
+
# @option options [Time,DateTime,Date,Integer,String] :if_match_initiated_time
|
266
|
+
# If present, this header aborts an in progress multipart upload only if
|
267
|
+
# it was initiated on the provided timestamp. If the initiated timestamp
|
268
|
+
# of the multipart upload does not match the provided value, the
|
269
|
+
# operation returns a `412 Precondition Failed` error. If the initiated
|
270
|
+
# timestamp matches or if the multipart upload doesn’t exist, the
|
271
|
+
# operation returns a `204 Success (No Content)` response.
|
272
|
+
#
|
273
|
+
# <note markdown="1"> This functionality is only supported for directory buckets.
|
274
|
+
#
|
275
|
+
# </note>
|
264
276
|
# @return [Types::AbortMultipartUploadOutput]
|
265
277
|
def abort(options = {})
|
266
278
|
options = options.merge(
|
data/lib/aws-sdk-s3/object.rb
CHANGED
@@ -1410,6 +1410,9 @@ module Aws::S3
|
|
1410
1410
|
# request_payer: "requester", # accepts requester
|
1411
1411
|
# bypass_governance_retention: false,
|
1412
1412
|
# expected_bucket_owner: "AccountId",
|
1413
|
+
# if_match: "IfMatch",
|
1414
|
+
# if_match_last_modified_time: Time.now,
|
1415
|
+
# if_match_size: 1,
|
1413
1416
|
# })
|
1414
1417
|
# @param [Hash] options ({})
|
1415
1418
|
# @option options [String] :mfa
|
@@ -1456,6 +1459,46 @@ module Aws::S3
|
|
1456
1459
|
# The account ID of the expected bucket owner. If the account ID that
|
1457
1460
|
# you provide does not match the actual owner of the bucket, the request
|
1458
1461
|
# fails with the HTTP status code `403 Forbidden` (access denied).
|
1462
|
+
# @option options [String] :if_match
|
1463
|
+
# The `If-Match` header field makes the request method conditional on
|
1464
|
+
# ETags. If the ETag value does not match, the operation returns a `412
|
1465
|
+
# Precondition Failed` error. If the ETag matches or if the object
|
1466
|
+
# doesn't exist, the operation will return a `204 Success (No Content)
|
1467
|
+
# response`.
|
1468
|
+
#
|
1469
|
+
# For more information about conditional requests, see [RFC 7232][1].
|
1470
|
+
#
|
1471
|
+
# <note markdown="1"> This functionality is only supported for directory buckets.
|
1472
|
+
#
|
1473
|
+
# </note>
|
1474
|
+
#
|
1475
|
+
#
|
1476
|
+
#
|
1477
|
+
# [1]: https://docs.aws.amazon.com/https:/tools.ietf.org/html/rfc7232
|
1478
|
+
# @option options [Time,DateTime,Date,Integer,String] :if_match_last_modified_time
|
1479
|
+
# If present, the object is deleted only if its modification times
|
1480
|
+
# matches the provided `Timestamp`. If the `Timestamp` values do not
|
1481
|
+
# match, the operation returns a `412 Precondition Failed` error. If the
|
1482
|
+
# `Timestamp` matches or if the object doesn’t exist, the operation
|
1483
|
+
# returns a `204 Success (No Content)` response.
|
1484
|
+
#
|
1485
|
+
# <note markdown="1"> This functionality is only supported for directory buckets.
|
1486
|
+
#
|
1487
|
+
# </note>
|
1488
|
+
# @option options [Integer] :if_match_size
|
1489
|
+
# If present, the object is deleted only if its size matches the
|
1490
|
+
# provided size in bytes. If the `Size` value does not match, the
|
1491
|
+
# operation returns a `412 Precondition Failed` error. If the `Size`
|
1492
|
+
# matches or if the object doesn’t exist, the operation returns a `204
|
1493
|
+
# Success (No Content)` response.
|
1494
|
+
#
|
1495
|
+
# <note markdown="1"> This functionality is only supported for directory buckets.
|
1496
|
+
#
|
1497
|
+
# </note>
|
1498
|
+
#
|
1499
|
+
# You can use the `If-Match`, `x-amz-if-match-last-modified-time` and
|
1500
|
+
# `x-amz-if-match-size` conditional headers in conjunction with
|
1501
|
+
# each-other or individually.
|
1459
1502
|
# @return [Types::DeleteObjectOutput]
|
1460
1503
|
def delete(options = {})
|
1461
1504
|
options = options.merge(
|
@@ -2330,6 +2373,7 @@ module Aws::S3
|
|
2330
2373
|
# grant_read: "GrantRead",
|
2331
2374
|
# grant_read_acp: "GrantReadACP",
|
2332
2375
|
# grant_write_acp: "GrantWriteACP",
|
2376
|
+
# write_offset_bytes: 1,
|
2333
2377
|
# metadata: {
|
2334
2378
|
# "MetadataKey" => "MetadataValue",
|
2335
2379
|
# },
|
@@ -2599,6 +2643,16 @@ module Aws::S3
|
|
2599
2643
|
# * This functionality is not supported for Amazon S3 on Outposts.
|
2600
2644
|
#
|
2601
2645
|
# </note>
|
2646
|
+
# @option options [Integer] :write_offset_bytes
|
2647
|
+
# Specifies the offset for appending data to existing objects in bytes.
|
2648
|
+
# The offset must be equal to the size of the existing object being
|
2649
|
+
# appended to. If no object exists, setting this header to 0 will create
|
2650
|
+
# a new object.
|
2651
|
+
#
|
2652
|
+
# <note markdown="1"> This functionality is only supported for objects in the Amazon S3
|
2653
|
+
# Express One Zone storage class in directory buckets.
|
2654
|
+
#
|
2655
|
+
# </note>
|
2602
2656
|
# @option options [Hash<String,String>] :metadata
|
2603
2657
|
# A map of metadata to store with the object in S3.
|
2604
2658
|
# @option options [String] :server_side_encryption
|
@@ -1060,6 +1060,9 @@ module Aws::S3
|
|
1060
1060
|
# request_payer: "requester", # accepts requester
|
1061
1061
|
# bypass_governance_retention: false,
|
1062
1062
|
# expected_bucket_owner: "AccountId",
|
1063
|
+
# if_match: "IfMatch",
|
1064
|
+
# if_match_last_modified_time: Time.now,
|
1065
|
+
# if_match_size: 1,
|
1063
1066
|
# })
|
1064
1067
|
# @param [Hash] options ({})
|
1065
1068
|
# @option options [String] :mfa
|
@@ -1106,6 +1109,46 @@ module Aws::S3
|
|
1106
1109
|
# The account ID of the expected bucket owner. If the account ID that
|
1107
1110
|
# you provide does not match the actual owner of the bucket, the request
|
1108
1111
|
# fails with the HTTP status code `403 Forbidden` (access denied).
|
1112
|
+
# @option options [String] :if_match
|
1113
|
+
# The `If-Match` header field makes the request method conditional on
|
1114
|
+
# ETags. If the ETag value does not match, the operation returns a `412
|
1115
|
+
# Precondition Failed` error. If the ETag matches or if the object
|
1116
|
+
# doesn't exist, the operation will return a `204 Success (No Content)
|
1117
|
+
# response`.
|
1118
|
+
#
|
1119
|
+
# For more information about conditional requests, see [RFC 7232][1].
|
1120
|
+
#
|
1121
|
+
# <note markdown="1"> This functionality is only supported for directory buckets.
|
1122
|
+
#
|
1123
|
+
# </note>
|
1124
|
+
#
|
1125
|
+
#
|
1126
|
+
#
|
1127
|
+
# [1]: https://docs.aws.amazon.com/https:/tools.ietf.org/html/rfc7232
|
1128
|
+
# @option options [Time,DateTime,Date,Integer,String] :if_match_last_modified_time
|
1129
|
+
# If present, the object is deleted only if its modification times
|
1130
|
+
# matches the provided `Timestamp`. If the `Timestamp` values do not
|
1131
|
+
# match, the operation returns a `412 Precondition Failed` error. If the
|
1132
|
+
# `Timestamp` matches or if the object doesn’t exist, the operation
|
1133
|
+
# returns a `204 Success (No Content)` response.
|
1134
|
+
#
|
1135
|
+
# <note markdown="1"> This functionality is only supported for directory buckets.
|
1136
|
+
#
|
1137
|
+
# </note>
|
1138
|
+
# @option options [Integer] :if_match_size
|
1139
|
+
# If present, the object is deleted only if its size matches the
|
1140
|
+
# provided size in bytes. If the `Size` value does not match, the
|
1141
|
+
# operation returns a `412 Precondition Failed` error. If the `Size`
|
1142
|
+
# matches or if the object doesn’t exist, the operation returns a `204
|
1143
|
+
# Success (No Content)` response.
|
1144
|
+
#
|
1145
|
+
# <note markdown="1"> This functionality is only supported for directory buckets.
|
1146
|
+
#
|
1147
|
+
# </note>
|
1148
|
+
#
|
1149
|
+
# You can use the `If-Match`, `x-amz-if-match-last-modified-time` and
|
1150
|
+
# `x-amz-if-match-size` conditional headers in conjunction with
|
1151
|
+
# each-other or individually.
|
1109
1152
|
# @return [Types::DeleteObjectOutput]
|
1110
1153
|
def delete(options = {})
|
1111
1154
|
options = options.merge(
|
@@ -1980,6 +2023,7 @@ module Aws::S3
|
|
1980
2023
|
# grant_read: "GrantRead",
|
1981
2024
|
# grant_read_acp: "GrantReadACP",
|
1982
2025
|
# grant_write_acp: "GrantWriteACP",
|
2026
|
+
# write_offset_bytes: 1,
|
1983
2027
|
# metadata: {
|
1984
2028
|
# "MetadataKey" => "MetadataValue",
|
1985
2029
|
# },
|
@@ -2249,6 +2293,16 @@ module Aws::S3
|
|
2249
2293
|
# * This functionality is not supported for Amazon S3 on Outposts.
|
2250
2294
|
#
|
2251
2295
|
# </note>
|
2296
|
+
# @option options [Integer] :write_offset_bytes
|
2297
|
+
# Specifies the offset for appending data to existing objects in bytes.
|
2298
|
+
# The offset must be equal to the size of the existing object being
|
2299
|
+
# appended to. If no object exists, setting this header to 0 will create
|
2300
|
+
# a new object.
|
2301
|
+
#
|
2302
|
+
# <note markdown="1"> This functionality is only supported for objects in the Amazon S3
|
2303
|
+
# Express One Zone storage class in directory buckets.
|
2304
|
+
#
|
2305
|
+
# </note>
|
2252
2306
|
# @option options [Hash<String,String>] :metadata
|
2253
2307
|
# A map of metadata to store with the object in S3.
|
2254
2308
|
# @option options [String] :server_side_encryption
|
@@ -257,6 +257,9 @@ module Aws::S3
|
|
257
257
|
# request_payer: "requester", # accepts requester
|
258
258
|
# bypass_governance_retention: false,
|
259
259
|
# expected_bucket_owner: "AccountId",
|
260
|
+
# if_match: "IfMatch",
|
261
|
+
# if_match_last_modified_time: Time.now,
|
262
|
+
# if_match_size: 1,
|
260
263
|
# })
|
261
264
|
# @param [Hash] options ({})
|
262
265
|
# @option options [String] :mfa
|
@@ -296,6 +299,46 @@ module Aws::S3
|
|
296
299
|
# The account ID of the expected bucket owner. If the account ID that
|
297
300
|
# you provide does not match the actual owner of the bucket, the request
|
298
301
|
# fails with the HTTP status code `403 Forbidden` (access denied).
|
302
|
+
# @option options [String] :if_match
|
303
|
+
# The `If-Match` header field makes the request method conditional on
|
304
|
+
# ETags. If the ETag value does not match, the operation returns a `412
|
305
|
+
# Precondition Failed` error. If the ETag matches or if the object
|
306
|
+
# doesn't exist, the operation will return a `204 Success (No Content)
|
307
|
+
# response`.
|
308
|
+
#
|
309
|
+
# For more information about conditional requests, see [RFC 7232][1].
|
310
|
+
#
|
311
|
+
# <note markdown="1"> This functionality is only supported for directory buckets.
|
312
|
+
#
|
313
|
+
# </note>
|
314
|
+
#
|
315
|
+
#
|
316
|
+
#
|
317
|
+
# [1]: https://docs.aws.amazon.com/https:/tools.ietf.org/html/rfc7232
|
318
|
+
# @option options [Time,DateTime,Date,Integer,String] :if_match_last_modified_time
|
319
|
+
# If present, the object is deleted only if its modification times
|
320
|
+
# matches the provided `Timestamp`. If the `Timestamp` values do not
|
321
|
+
# match, the operation returns a `412 Precondition Failed` error. If the
|
322
|
+
# `Timestamp` matches or if the object doesn’t exist, the operation
|
323
|
+
# returns a `204 Success (No Content)` response.
|
324
|
+
#
|
325
|
+
# <note markdown="1"> This functionality is only supported for directory buckets.
|
326
|
+
#
|
327
|
+
# </note>
|
328
|
+
# @option options [Integer] :if_match_size
|
329
|
+
# If present, the object is deleted only if its size matches the
|
330
|
+
# provided size in bytes. If the `Size` value does not match, the
|
331
|
+
# operation returns a `412 Precondition Failed` error. If the `Size`
|
332
|
+
# matches or if the object doesn’t exist, the operation returns a `204
|
333
|
+
# Success (No Content)` response.
|
334
|
+
#
|
335
|
+
# <note markdown="1"> This functionality is only supported for directory buckets.
|
336
|
+
#
|
337
|
+
# </note>
|
338
|
+
#
|
339
|
+
# You can use the `If-Match`, `x-amz-if-match-last-modified-time` and
|
340
|
+
# `x-amz-if-match-size` conditional headers in conjunction with
|
341
|
+
# each-other or individually.
|
299
342
|
# @return [Types::DeleteObjectOutput]
|
300
343
|
def delete(options = {})
|
301
344
|
options = options.merge(
|