aws-sdk-s3 1.157.0 → 1.162.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 +25 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-s3/bucket.rb +79 -16
- data/lib/aws-sdk-s3/client.rb +565 -313
- data/lib/aws-sdk-s3/client_api.rb +16 -1
- data/lib/aws-sdk-s3/endpoints.rb +99 -396
- data/lib/aws-sdk-s3/multipart_upload.rb +20 -0
- data/lib/aws-sdk-s3/object.rb +36 -4
- data/lib/aws-sdk-s3/object_summary.rb +28 -0
- data/lib/aws-sdk-s3/object_version.rb +17 -4
- data/lib/aws-sdk-s3/plugins/endpoints.rb +10 -1
- data/lib/aws-sdk-s3/resource.rb +10 -8
- data/lib/aws-sdk-s3/types.rb +294 -47
- data/lib/aws-sdk-s3.rb +1 -1
- data/sig/bucket.rbs +1 -0
- data/sig/client.rbs +8 -1
- data/sig/multipart_upload.rbs +1 -0
- data/sig/object.rbs +1 -0
- data/sig/object_summary.rbs +1 -0
- data/sig/resource.rbs +3 -1
- data/sig/types.rbs +9 -0
- metadata +4 -4
@@ -295,6 +295,7 @@ module Aws::S3
|
|
295
295
|
# checksum_sha256: "ChecksumSHA256",
|
296
296
|
# request_payer: "requester", # accepts requester
|
297
297
|
# expected_bucket_owner: "AccountId",
|
298
|
+
# if_none_match: "IfNoneMatch",
|
298
299
|
# sse_customer_algorithm: "SSECustomerAlgorithm",
|
299
300
|
# sse_customer_key: "SSECustomerKey",
|
300
301
|
# sse_customer_key_md5: "SSECustomerKeyMD5",
|
@@ -362,6 +363,25 @@ module Aws::S3
|
|
362
363
|
# The account ID of the expected bucket owner. If the account ID that
|
363
364
|
# you provide does not match the actual owner of the bucket, the request
|
364
365
|
# fails with the HTTP status code `403 Forbidden` (access denied).
|
366
|
+
# @option options [String] :if_none_match
|
367
|
+
# Uploads the object only if the object key name does not already exist
|
368
|
+
# in the bucket specified. Otherwise, Amazon S3 returns a `412
|
369
|
+
# Precondition Failed` error.
|
370
|
+
#
|
371
|
+
# If a conflicting operation occurs during the upload S3 returns a `409
|
372
|
+
# ConditionalRequestConflict` response. On a 409 failure you should
|
373
|
+
# re-initiate the multipart upload with `CreateMultipartUpload` and
|
374
|
+
# re-upload each part.
|
375
|
+
#
|
376
|
+
# Expects the '*' (asterisk) character.
|
377
|
+
#
|
378
|
+
# For more information about conditional requests, see [RFC 7232][1], or
|
379
|
+
# [Conditional requests][2] in the *Amazon S3 User Guide*.
|
380
|
+
#
|
381
|
+
#
|
382
|
+
#
|
383
|
+
# [1]: https://tools.ietf.org/html/rfc7232
|
384
|
+
# [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/conditional-requests.html
|
365
385
|
# @option options [String] :sse_customer_algorithm
|
366
386
|
# The server-side encryption (SSE) algorithm used to encrypt the object.
|
367
387
|
# This parameter is required only when the object was created using a
|
data/lib/aws-sdk-s3/object.rb
CHANGED
@@ -1662,6 +1662,15 @@ module Aws::S3
|
|
1662
1662
|
# fails with the HTTP status code `403 Forbidden` (access denied).
|
1663
1663
|
# @option options [String] :checksum_mode
|
1664
1664
|
# To retrieve the checksum, this mode must be enabled.
|
1665
|
+
#
|
1666
|
+
# In addition, if you enable checksum mode and the object is uploaded
|
1667
|
+
# with a [checksum][1] and encrypted with an Key Management Service
|
1668
|
+
# (KMS) key, you must have permission to use the `kms:Decrypt` action to
|
1669
|
+
# retrieve the checksum.
|
1670
|
+
#
|
1671
|
+
#
|
1672
|
+
#
|
1673
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_Checksum.html
|
1665
1674
|
# @return [Types::GetObjectOutput]
|
1666
1675
|
def get(options = {}, &block)
|
1667
1676
|
options = options.merge(
|
@@ -2182,6 +2191,7 @@ module Aws::S3
|
|
2182
2191
|
# checksum_sha1: "ChecksumSHA1",
|
2183
2192
|
# checksum_sha256: "ChecksumSHA256",
|
2184
2193
|
# expires: Time.now,
|
2194
|
+
# if_none_match: "IfNoneMatch",
|
2185
2195
|
# grant_full_control: "GrantFullControl",
|
2186
2196
|
# grant_read: "GrantRead",
|
2187
2197
|
# grant_read_acp: "GrantReadACP",
|
@@ -2396,6 +2406,24 @@ module Aws::S3
|
|
2396
2406
|
#
|
2397
2407
|
#
|
2398
2408
|
# [1]: https://www.rfc-editor.org/rfc/rfc7234#section-5.3
|
2409
|
+
# @option options [String] :if_none_match
|
2410
|
+
# Uploads the object only if the object key name does not already exist
|
2411
|
+
# in the bucket specified. Otherwise, Amazon S3 returns a `412
|
2412
|
+
# Precondition Failed` error.
|
2413
|
+
#
|
2414
|
+
# If a conflicting operation occurs during the upload S3 returns a `409
|
2415
|
+
# ConditionalRequestConflict` response. On a 409 failure you should
|
2416
|
+
# retry the upload.
|
2417
|
+
#
|
2418
|
+
# Expects the '*' (asterisk) character.
|
2419
|
+
#
|
2420
|
+
# For more information about conditional requests, see [RFC 7232][1], or
|
2421
|
+
# [Conditional requests][2] in the *Amazon S3 User Guide*.
|
2422
|
+
#
|
2423
|
+
#
|
2424
|
+
#
|
2425
|
+
# [1]: https://tools.ietf.org/html/rfc7232
|
2426
|
+
# [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/conditional-requests.html
|
2399
2427
|
# @option options [String] :grant_full_control
|
2400
2428
|
# Gives the grantee READ, READ\_ACP, and WRITE\_ACP permissions on the
|
2401
2429
|
# object.
|
@@ -2944,10 +2972,14 @@ module Aws::S3
|
|
2944
2972
|
# @option options [String] :checksum_mode
|
2945
2973
|
# To retrieve the checksum, this parameter must be enabled.
|
2946
2974
|
#
|
2947
|
-
# In addition, if you enable
|
2948
|
-
# with
|
2949
|
-
# KMS), you must have permission to use the `kms:Decrypt` action
|
2950
|
-
#
|
2975
|
+
# In addition, if you enable checksum mode and the object is uploaded
|
2976
|
+
# with a [checksum][1] and encrypted with an Key Management Service
|
2977
|
+
# (KMS) key, you must have permission to use the `kms:Decrypt` action to
|
2978
|
+
# retrieve the checksum.
|
2979
|
+
#
|
2980
|
+
#
|
2981
|
+
#
|
2982
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_Checksum.html
|
2951
2983
|
# @return [Types::HeadObjectOutput]
|
2952
2984
|
def head(options = {})
|
2953
2985
|
options = options.merge(
|
@@ -1298,6 +1298,15 @@ module Aws::S3
|
|
1298
1298
|
# fails with the HTTP status code `403 Forbidden` (access denied).
|
1299
1299
|
# @option options [String] :checksum_mode
|
1300
1300
|
# To retrieve the checksum, this mode must be enabled.
|
1301
|
+
#
|
1302
|
+
# In addition, if you enable checksum mode and the object is uploaded
|
1303
|
+
# with a [checksum][1] and encrypted with an Key Management Service
|
1304
|
+
# (KMS) key, you must have permission to use the `kms:Decrypt` action to
|
1305
|
+
# retrieve the checksum.
|
1306
|
+
#
|
1307
|
+
#
|
1308
|
+
#
|
1309
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_Checksum.html
|
1301
1310
|
# @return [Types::GetObjectOutput]
|
1302
1311
|
def get(options = {}, &block)
|
1303
1312
|
options = options.merge(
|
@@ -1818,6 +1827,7 @@ module Aws::S3
|
|
1818
1827
|
# checksum_sha1: "ChecksumSHA1",
|
1819
1828
|
# checksum_sha256: "ChecksumSHA256",
|
1820
1829
|
# expires: Time.now,
|
1830
|
+
# if_none_match: "IfNoneMatch",
|
1821
1831
|
# grant_full_control: "GrantFullControl",
|
1822
1832
|
# grant_read: "GrantRead",
|
1823
1833
|
# grant_read_acp: "GrantReadACP",
|
@@ -2032,6 +2042,24 @@ module Aws::S3
|
|
2032
2042
|
#
|
2033
2043
|
#
|
2034
2044
|
# [1]: https://www.rfc-editor.org/rfc/rfc7234#section-5.3
|
2045
|
+
# @option options [String] :if_none_match
|
2046
|
+
# Uploads the object only if the object key name does not already exist
|
2047
|
+
# in the bucket specified. Otherwise, Amazon S3 returns a `412
|
2048
|
+
# Precondition Failed` error.
|
2049
|
+
#
|
2050
|
+
# If a conflicting operation occurs during the upload S3 returns a `409
|
2051
|
+
# ConditionalRequestConflict` response. On a 409 failure you should
|
2052
|
+
# retry the upload.
|
2053
|
+
#
|
2054
|
+
# Expects the '*' (asterisk) character.
|
2055
|
+
#
|
2056
|
+
# For more information about conditional requests, see [RFC 7232][1], or
|
2057
|
+
# [Conditional requests][2] in the *Amazon S3 User Guide*.
|
2058
|
+
#
|
2059
|
+
#
|
2060
|
+
#
|
2061
|
+
# [1]: https://tools.ietf.org/html/rfc7232
|
2062
|
+
# [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/conditional-requests.html
|
2035
2063
|
# @option options [String] :grant_full_control
|
2036
2064
|
# Gives the grantee READ, READ\_ACP, and WRITE\_ACP permissions on the
|
2037
2065
|
# object.
|
@@ -523,6 +523,15 @@ module Aws::S3
|
|
523
523
|
# fails with the HTTP status code `403 Forbidden` (access denied).
|
524
524
|
# @option options [String] :checksum_mode
|
525
525
|
# To retrieve the checksum, this mode must be enabled.
|
526
|
+
#
|
527
|
+
# In addition, if you enable checksum mode and the object is uploaded
|
528
|
+
# with a [checksum][1] and encrypted with an Key Management Service
|
529
|
+
# (KMS) key, you must have permission to use the `kms:Decrypt` action to
|
530
|
+
# retrieve the checksum.
|
531
|
+
#
|
532
|
+
#
|
533
|
+
#
|
534
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_Checksum.html
|
526
535
|
# @return [Types::GetObjectOutput]
|
527
536
|
def get(options = {}, &block)
|
528
537
|
options = options.merge(
|
@@ -701,10 +710,14 @@ module Aws::S3
|
|
701
710
|
# @option options [String] :checksum_mode
|
702
711
|
# To retrieve the checksum, this parameter must be enabled.
|
703
712
|
#
|
704
|
-
# In addition, if you enable
|
705
|
-
# with
|
706
|
-
# KMS), you must have permission to use the `kms:Decrypt` action
|
707
|
-
#
|
713
|
+
# In addition, if you enable checksum mode and the object is uploaded
|
714
|
+
# with a [checksum][1] and encrypted with an Key Management Service
|
715
|
+
# (KMS) key, you must have permission to use the `kms:Decrypt` action to
|
716
|
+
# retrieve the checksum.
|
717
|
+
#
|
718
|
+
#
|
719
|
+
#
|
720
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_Checksum.html
|
708
721
|
# @return [Types::HeadObjectOutput]
|
709
722
|
def head(options = {})
|
710
723
|
options = options.merge(
|
@@ -46,11 +46,20 @@ module Aws::S3
|
|
46
46
|
context[:auth_scheme] =
|
47
47
|
Aws::Endpoints.resolve_auth_scheme(context, endpoint)
|
48
48
|
|
49
|
-
@handler.call(context)
|
49
|
+
with_metrics(context) { @handler.call(context) }
|
50
50
|
end
|
51
51
|
|
52
52
|
private
|
53
53
|
|
54
|
+
def with_metrics(context, &block)
|
55
|
+
metrics = []
|
56
|
+
metrics << 'ENDPOINT_OVERRIDE' unless context.config.regional_endpoint
|
57
|
+
if context[:auth_scheme] && context[:auth_scheme]['name'] == 'sigv4a'
|
58
|
+
metrics << 'SIGV4A_SIGNING'
|
59
|
+
end
|
60
|
+
Aws::Plugins::UserAgent.metric(*metrics, &block)
|
61
|
+
end
|
62
|
+
|
54
63
|
def apply_endpoint_headers(context, headers)
|
55
64
|
headers.each do |key, values|
|
56
65
|
value = values
|
data/lib/aws-sdk-s3/resource.rb
CHANGED
@@ -193,18 +193,20 @@ module Aws::S3
|
|
193
193
|
# @return [Bucket::Collection]
|
194
194
|
def buckets(options = {})
|
195
195
|
batches = Enumerator.new do |y|
|
196
|
-
batch = []
|
197
196
|
resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
|
198
197
|
@client.list_buckets(options)
|
199
198
|
end
|
200
|
-
resp.
|
201
|
-
batch
|
202
|
-
|
203
|
-
|
204
|
-
|
205
|
-
|
199
|
+
resp.each_page do |page|
|
200
|
+
batch = []
|
201
|
+
page.data.buckets.each do |b|
|
202
|
+
batch << Bucket.new(
|
203
|
+
name: b.name,
|
204
|
+
data: b,
|
205
|
+
client: @client
|
206
|
+
)
|
207
|
+
end
|
208
|
+
y.yield(batch)
|
206
209
|
end
|
207
|
-
y.yield(batch)
|
208
210
|
end
|
209
211
|
Bucket::Collection.new(batches)
|
210
212
|
end
|