aws-sdk-s3 1.142.0 → 1.208.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.
Files changed (118) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +417 -1
  3. data/VERSION +1 -1
  4. data/lib/aws-sdk-s3/access_grants_credentials.rb +57 -0
  5. data/lib/aws-sdk-s3/access_grants_credentials_provider.rb +250 -0
  6. data/lib/aws-sdk-s3/bucket.rb +358 -106
  7. data/lib/aws-sdk-s3/bucket_acl.rb +10 -9
  8. data/lib/aws-sdk-s3/bucket_cors.rb +10 -9
  9. data/lib/aws-sdk-s3/bucket_lifecycle.rb +11 -6
  10. data/lib/aws-sdk-s3/bucket_lifecycle_configuration.rb +64 -7
  11. data/lib/aws-sdk-s3/bucket_logging.rb +5 -5
  12. data/lib/aws-sdk-s3/bucket_notification.rb +3 -3
  13. data/lib/aws-sdk-s3/bucket_policy.rb +14 -13
  14. data/lib/aws-sdk-s3/bucket_region_cache.rb +9 -5
  15. data/lib/aws-sdk-s3/bucket_request_payment.rb +6 -6
  16. data/lib/aws-sdk-s3/bucket_tagging.rb +7 -7
  17. data/lib/aws-sdk-s3/bucket_versioning.rb +47 -14
  18. data/lib/aws-sdk-s3/bucket_website.rb +7 -7
  19. data/lib/aws-sdk-s3/client.rb +5671 -2195
  20. data/lib/aws-sdk-s3/client_api.rb +665 -166
  21. data/lib/aws-sdk-s3/customizations/bucket.rb +1 -1
  22. data/lib/aws-sdk-s3/customizations/errors.rb +15 -2
  23. data/lib/aws-sdk-s3/customizations/object.rb +87 -91
  24. data/lib/aws-sdk-s3/customizations/object_summary.rb +5 -0
  25. data/lib/aws-sdk-s3/customizations/object_version.rb +13 -0
  26. data/lib/aws-sdk-s3/customizations.rb +28 -36
  27. data/lib/aws-sdk-s3/default_executor.rb +103 -0
  28. data/lib/aws-sdk-s3/encryption/client.rb +4 -4
  29. data/lib/aws-sdk-s3/encryption/default_cipher_provider.rb +2 -0
  30. data/lib/aws-sdk-s3/encryption/encrypt_handler.rb +2 -0
  31. data/lib/aws-sdk-s3/encryption/kms_cipher_provider.rb +4 -2
  32. data/lib/aws-sdk-s3/encryptionV2/client.rb +100 -25
  33. data/lib/aws-sdk-s3/encryptionV2/decrypt_handler.rb +7 -162
  34. data/lib/aws-sdk-s3/encryptionV2/decryption.rb +205 -0
  35. data/lib/aws-sdk-s3/encryptionV2/default_cipher_provider.rb +17 -0
  36. data/lib/aws-sdk-s3/encryptionV2/encrypt_handler.rb +2 -0
  37. data/lib/aws-sdk-s3/encryptionV2/io_encrypter.rb +2 -0
  38. data/lib/aws-sdk-s3/encryptionV2/kms_cipher_provider.rb +10 -2
  39. data/lib/aws-sdk-s3/encryptionV2/utils.rb +5 -0
  40. data/lib/aws-sdk-s3/encryptionV3/client.rb +885 -0
  41. data/lib/aws-sdk-s3/encryptionV3/decrypt_handler.rb +98 -0
  42. data/lib/aws-sdk-s3/encryptionV3/decryption.rb +244 -0
  43. data/lib/aws-sdk-s3/encryptionV3/default_cipher_provider.rb +159 -0
  44. data/lib/aws-sdk-s3/encryptionV3/default_key_provider.rb +35 -0
  45. data/lib/aws-sdk-s3/encryptionV3/encrypt_handler.rb +98 -0
  46. data/lib/aws-sdk-s3/encryptionV3/errors.rb +47 -0
  47. data/lib/aws-sdk-s3/encryptionV3/io_auth_decrypter.rb +60 -0
  48. data/lib/aws-sdk-s3/encryptionV3/io_decrypter.rb +35 -0
  49. data/lib/aws-sdk-s3/encryptionV3/io_encrypter.rb +84 -0
  50. data/lib/aws-sdk-s3/encryptionV3/key_provider.rb +28 -0
  51. data/lib/aws-sdk-s3/encryptionV3/kms_cipher_provider.rb +159 -0
  52. data/lib/aws-sdk-s3/encryptionV3/materials.rb +58 -0
  53. data/lib/aws-sdk-s3/encryptionV3/utils.rb +321 -0
  54. data/lib/aws-sdk-s3/encryption_v2.rb +1 -0
  55. data/lib/aws-sdk-s3/encryption_v3.rb +24 -0
  56. data/lib/aws-sdk-s3/endpoint_parameters.rb +37 -34
  57. data/lib/aws-sdk-s3/endpoint_provider.rb +572 -277
  58. data/lib/aws-sdk-s3/endpoints.rb +566 -1612
  59. data/lib/aws-sdk-s3/errors.rb +58 -0
  60. data/lib/aws-sdk-s3/express_credentials_provider.rb +27 -4
  61. data/lib/aws-sdk-s3/file_downloader.rb +192 -146
  62. data/lib/aws-sdk-s3/file_uploader.rb +10 -14
  63. data/lib/aws-sdk-s3/legacy_signer.rb +2 -1
  64. data/lib/aws-sdk-s3/multipart_download_error.rb +8 -0
  65. data/lib/aws-sdk-s3/multipart_file_uploader.rb +106 -102
  66. data/lib/aws-sdk-s3/multipart_stream_uploader.rb +99 -108
  67. data/lib/aws-sdk-s3/multipart_upload.rb +112 -12
  68. data/lib/aws-sdk-s3/multipart_upload_error.rb +3 -4
  69. data/lib/aws-sdk-s3/multipart_upload_part.rb +55 -39
  70. data/lib/aws-sdk-s3/object.rb +713 -227
  71. data/lib/aws-sdk-s3/object_acl.rb +15 -9
  72. data/lib/aws-sdk-s3/object_copier.rb +1 -1
  73. data/lib/aws-sdk-s3/object_multipart_copier.rb +12 -9
  74. data/lib/aws-sdk-s3/object_summary.rb +592 -173
  75. data/lib/aws-sdk-s3/object_version.rb +102 -17
  76. data/lib/aws-sdk-s3/plugins/access_grants.rb +178 -0
  77. data/lib/aws-sdk-s3/plugins/checksum_algorithm.rb +31 -0
  78. data/lib/aws-sdk-s3/plugins/endpoints.rb +26 -213
  79. data/lib/aws-sdk-s3/plugins/express_session_auth.rb +19 -21
  80. data/lib/aws-sdk-s3/plugins/http_200_errors.rb +55 -18
  81. data/lib/aws-sdk-s3/plugins/md5s.rb +10 -71
  82. data/lib/aws-sdk-s3/plugins/s3_signer.rb +7 -2
  83. data/lib/aws-sdk-s3/plugins/streaming_retry.rb +5 -7
  84. data/lib/aws-sdk-s3/plugins/url_encoded_keys.rb +2 -1
  85. data/lib/aws-sdk-s3/presigner.rb +7 -5
  86. data/lib/aws-sdk-s3/resource.rb +53 -20
  87. data/lib/aws-sdk-s3/transfer_manager.rb +303 -0
  88. data/lib/aws-sdk-s3/types.rb +4738 -1542
  89. data/lib/aws-sdk-s3.rb +35 -31
  90. data/sig/bucket.rbs +231 -0
  91. data/sig/bucket_acl.rbs +78 -0
  92. data/sig/bucket_cors.rbs +69 -0
  93. data/sig/bucket_lifecycle.rbs +88 -0
  94. data/sig/bucket_lifecycle_configuration.rbs +115 -0
  95. data/sig/bucket_logging.rbs +76 -0
  96. data/sig/bucket_notification.rbs +114 -0
  97. data/sig/bucket_policy.rbs +59 -0
  98. data/sig/bucket_request_payment.rbs +54 -0
  99. data/sig/bucket_tagging.rbs +65 -0
  100. data/sig/bucket_versioning.rbs +77 -0
  101. data/sig/bucket_website.rbs +93 -0
  102. data/sig/client.rbs +2612 -0
  103. data/sig/customizations/bucket.rbs +19 -0
  104. data/sig/customizations/object.rbs +38 -0
  105. data/sig/customizations/object_summary.rbs +35 -0
  106. data/sig/errors.rbs +44 -0
  107. data/sig/multipart_upload.rbs +120 -0
  108. data/sig/multipart_upload_part.rbs +109 -0
  109. data/sig/object.rbs +464 -0
  110. data/sig/object_acl.rbs +86 -0
  111. data/sig/object_summary.rbs +347 -0
  112. data/sig/object_version.rbs +143 -0
  113. data/sig/resource.rbs +141 -0
  114. data/sig/types.rbs +2899 -0
  115. data/sig/waiters.rbs +95 -0
  116. metadata +58 -13
  117. data/lib/aws-sdk-s3/express_credentials_cache.rb +0 -30
  118. data/lib/aws-sdk-s3/plugins/skip_whole_multipart_get_checksums.rb +0 -31
@@ -70,8 +70,10 @@ module Aws::S3
70
70
 
71
71
  # The class of storage used to store the object.
72
72
  #
73
- # <note markdown="1"> **Directory buckets** - Only the S3 Express One Zone storage class is
74
- # supported by directory buckets to store objects.
73
+ # <note markdown="1"> **Directory buckets** - Directory buckets only support
74
+ # `EXPRESS_ONEZONE` (the S3 Express One Zone storage class) in
75
+ # Availability Zones and `ONEZONE_IA` (the S3 One Zone-Infrequent Access
76
+ # storage class) in Dedicated Local Zones.
75
77
  #
76
78
  # </note>
77
79
  # @return [String]
@@ -103,6 +105,18 @@ module Aws::S3
103
105
  data[:checksum_algorithm]
104
106
  end
105
107
 
108
+ # The checksum type that is used to calculate the object’s checksum
109
+ # value. For more information, see [Checking object integrity][1] in the
110
+ # *Amazon S3 User Guide*.
111
+ #
112
+ #
113
+ #
114
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
115
+ # @return [String]
116
+ def checksum_type
117
+ data[:checksum_type]
118
+ end
119
+
106
120
  # @!endgroup
107
121
 
108
122
  # @return [Client]
@@ -227,7 +241,7 @@ module Aws::S3
227
241
  :retry
228
242
  end
229
243
  end
230
- Aws::Plugins::UserAgent.feature('resource') do
244
+ Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
231
245
  Aws::Waiters::Waiter.new(options).wait({})
232
246
  end
233
247
  end
@@ -239,6 +253,7 @@ module Aws::S3
239
253
  # multipart_upload.abort({
240
254
  # request_payer: "requester", # accepts requester
241
255
  # expected_bucket_owner: "AccountId",
256
+ # if_match_initiated_time: Time.now,
242
257
  # })
243
258
  # @param [Hash] options ({})
244
259
  # @option options [String] :request_payer
@@ -261,6 +276,17 @@ module Aws::S3
261
276
  # The account ID of the expected bucket owner. If the account ID that
262
277
  # you provide does not match the actual owner of the bucket, the request
263
278
  # fails with the HTTP status code `403 Forbidden` (access denied).
279
+ # @option options [Time,DateTime,Date,Integer,String] :if_match_initiated_time
280
+ # If present, this header aborts an in progress multipart upload only if
281
+ # it was initiated on the provided timestamp. If the initiated timestamp
282
+ # of the multipart upload does not match the provided value, the
283
+ # operation returns a `412 Precondition Failed` error. If the initiated
284
+ # timestamp matches or if the multipart upload doesn’t exist, the
285
+ # operation returns a `204 Success (No Content)` response.
286
+ #
287
+ # <note markdown="1"> This functionality is only supported for directory buckets.
288
+ #
289
+ # </note>
264
290
  # @return [Types::AbortMultipartUploadOutput]
265
291
  def abort(options = {})
266
292
  options = options.merge(
@@ -268,7 +294,7 @@ module Aws::S3
268
294
  key: @object_key,
269
295
  upload_id: @id
270
296
  )
271
- resp = Aws::Plugins::UserAgent.feature('resource') do
297
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
272
298
  @client.abort_multipart_upload(options)
273
299
  end
274
300
  resp.data
@@ -283,6 +309,7 @@ module Aws::S3
283
309
  # etag: "ETag",
284
310
  # checksum_crc32: "ChecksumCRC32",
285
311
  # checksum_crc32c: "ChecksumCRC32C",
312
+ # checksum_crc64nvme: "ChecksumCRC64NVME",
286
313
  # checksum_sha1: "ChecksumSHA1",
287
314
  # checksum_sha256: "ChecksumSHA256",
288
315
  # part_number: 1,
@@ -291,10 +318,15 @@ module Aws::S3
291
318
  # },
292
319
  # checksum_crc32: "ChecksumCRC32",
293
320
  # checksum_crc32c: "ChecksumCRC32C",
321
+ # checksum_crc64nvme: "ChecksumCRC64NVME",
294
322
  # checksum_sha1: "ChecksumSHA1",
295
323
  # checksum_sha256: "ChecksumSHA256",
324
+ # checksum_type: "COMPOSITE", # accepts COMPOSITE, FULL_OBJECT
325
+ # mpu_object_size: 1,
296
326
  # request_payer: "requester", # accepts requester
297
327
  # expected_bucket_owner: "AccountId",
328
+ # if_match: "IfMatch",
329
+ # if_none_match: "IfNoneMatch",
298
330
  # sse_customer_algorithm: "SSECustomerAlgorithm",
299
331
  # sse_customer_key: "SSECustomerKey",
300
332
  # sse_customer_key_md5: "SSECustomerKeyMD5",
@@ -305,9 +337,9 @@ module Aws::S3
305
337
  # @option options [String] :checksum_crc32
306
338
  # This header can be used as a data integrity check to verify that the
307
339
  # data received is the same data that was originally sent. This header
308
- # specifies the base64-encoded, 32-bit CRC32 checksum of the object. For
309
- # more information, see [Checking object integrity][1] in the *Amazon S3
310
- # User Guide*.
340
+ # specifies the Base64 encoded, 32-bit `CRC32` checksum of the object.
341
+ # For more information, see [Checking object integrity][1] in the
342
+ # *Amazon S3 User Guide*.
311
343
  #
312
344
  #
313
345
  #
@@ -315,17 +347,28 @@ module Aws::S3
315
347
  # @option options [String] :checksum_crc32c
316
348
  # This header can be used as a data integrity check to verify that the
317
349
  # data received is the same data that was originally sent. This header
318
- # specifies the base64-encoded, 32-bit CRC32C checksum of the object.
350
+ # specifies the Base64 encoded, 32-bit `CRC32C` checksum of the object.
319
351
  # For more information, see [Checking object integrity][1] in the
320
352
  # *Amazon S3 User Guide*.
321
353
  #
322
354
  #
323
355
  #
324
356
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
357
+ # @option options [String] :checksum_crc64nvme
358
+ # This header can be used as a data integrity check to verify that the
359
+ # data received is the same data that was originally sent. This header
360
+ # specifies the Base64 encoded, 64-bit `CRC64NVME` checksum of the
361
+ # object. The `CRC64NVME` checksum is always a full object checksum. For
362
+ # more information, see [Checking object integrity in the Amazon S3 User
363
+ # Guide][1].
364
+ #
365
+ #
366
+ #
367
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
325
368
  # @option options [String] :checksum_sha1
326
369
  # This header can be used as a data integrity check to verify that the
327
370
  # data received is the same data that was originally sent. This header
328
- # specifies the base64-encoded, 160-bit SHA-1 digest of the object. For
371
+ # specifies the Base64 encoded, 160-bit `SHA1` digest of the object. For
329
372
  # more information, see [Checking object integrity][1] in the *Amazon S3
330
373
  # User Guide*.
331
374
  #
@@ -335,13 +378,28 @@ module Aws::S3
335
378
  # @option options [String] :checksum_sha256
336
379
  # This header can be used as a data integrity check to verify that the
337
380
  # data received is the same data that was originally sent. This header
338
- # specifies the base64-encoded, 256-bit SHA-256 digest of the object.
381
+ # specifies the Base64 encoded, 256-bit `SHA256` digest of the object.
339
382
  # For more information, see [Checking object integrity][1] in the
340
383
  # *Amazon S3 User Guide*.
341
384
  #
342
385
  #
343
386
  #
344
387
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
388
+ # @option options [String] :checksum_type
389
+ # This header specifies the checksum type of the object, which
390
+ # determines how part-level checksums are combined to create an
391
+ # object-level checksum for multipart objects. You can use this header
392
+ # as a data integrity check to verify that the checksum type that is
393
+ # received is the same checksum that was specified. If the checksum type
394
+ # doesn’t match the checksum type that was specified for the object
395
+ # during the `CreateMultipartUpload` request, it’ll result in a
396
+ # `BadDigest` error. For more information, see Checking object integrity
397
+ # in the Amazon S3 User Guide.
398
+ # @option options [Integer] :mpu_object_size
399
+ # The expected total object size of the multipart upload request. If
400
+ # there’s a mismatch between the specified object size value and the
401
+ # actual object size value, it results in an `HTTP 400 InvalidRequest`
402
+ # error.
345
403
  # @option options [String] :request_payer
346
404
  # Confirms that the requester knows that they will be charged for the
347
405
  # request. Bucket owners need not specify this parameter in their
@@ -362,6 +420,45 @@ module Aws::S3
362
420
  # The account ID of the expected bucket owner. If the account ID that
363
421
  # you provide does not match the actual owner of the bucket, the request
364
422
  # fails with the HTTP status code `403 Forbidden` (access denied).
423
+ # @option options [String] :if_match
424
+ # Uploads the object only if the ETag (entity tag) value provided during
425
+ # the WRITE operation matches the ETag of the object in S3. If the ETag
426
+ # values do not match, the operation returns a `412 Precondition Failed`
427
+ # error.
428
+ #
429
+ # If a conflicting operation occurs during the upload S3 returns a `409
430
+ # ConditionalRequestConflict` response. On a 409 failure you should
431
+ # fetch the object's ETag, re-initiate the multipart upload with
432
+ # `CreateMultipartUpload`, and re-upload each part.
433
+ #
434
+ # Expects the ETag value as a string.
435
+ #
436
+ # For more information about conditional requests, see [RFC 7232][1], or
437
+ # [Conditional requests][2] in the *Amazon S3 User Guide*.
438
+ #
439
+ #
440
+ #
441
+ # [1]: https://tools.ietf.org/html/rfc7232
442
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/conditional-requests.html
443
+ # @option options [String] :if_none_match
444
+ # Uploads the object only if the object key name does not already exist
445
+ # in the bucket specified. Otherwise, Amazon S3 returns a `412
446
+ # Precondition Failed` error.
447
+ #
448
+ # If a conflicting operation occurs during the upload S3 returns a `409
449
+ # ConditionalRequestConflict` response. On a 409 failure you should
450
+ # re-initiate the multipart upload with `CreateMultipartUpload` and
451
+ # re-upload each part.
452
+ #
453
+ # Expects the '*' (asterisk) character.
454
+ #
455
+ # For more information about conditional requests, see [RFC 7232][1], or
456
+ # [Conditional requests][2] in the *Amazon S3 User Guide*.
457
+ #
458
+ #
459
+ #
460
+ # [1]: https://tools.ietf.org/html/rfc7232
461
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/conditional-requests.html
365
462
  # @option options [String] :sse_customer_algorithm
366
463
  # The server-side encryption (SSE) algorithm used to encrypt the object.
367
464
  # This parameter is required only when the object was created using a
@@ -409,7 +506,7 @@ module Aws::S3
409
506
  key: @object_key,
410
507
  upload_id: @id
411
508
  )
412
- Aws::Plugins::UserAgent.feature('resource') do
509
+ Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
413
510
  @client.complete_multipart_upload(options)
414
511
  end
415
512
  Object.new(
@@ -519,7 +616,7 @@ module Aws::S3
519
616
  key: @object_key,
520
617
  upload_id: @id
521
618
  )
522
- resp = Aws::Plugins::UserAgent.feature('resource') do
619
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
523
620
  @client.list_parts(options)
524
621
  end
525
622
  resp.each_page do |page|
@@ -589,3 +686,6 @@ module Aws::S3
589
686
  class Collection < Aws::Resources::Collection; end
590
687
  end
591
688
  end
689
+
690
+ # Load customizations if they exist
691
+ require 'aws-sdk-s3/customizations/multipart_upload'
@@ -2,17 +2,16 @@
2
2
 
3
3
  module Aws
4
4
  module S3
5
+ # Raise when multipart upload fails to complete.
5
6
  class MultipartUploadError < StandardError
6
7
 
7
- def initialize(message, errors)
8
+ def initialize(message, errors = [])
8
9
  @errors = errors
9
10
  super(message)
10
11
  end
11
12
 
12
- # @return [Array<StandardError>] The list of errors encountered
13
- # when uploading or aborting the upload.
13
+ # @return [Array<StandardError>] The list of errors encountered when uploading or aborting the upload.
14
14
  attr_reader :errors
15
-
16
15
  end
17
16
  end
18
17
  end
@@ -76,11 +76,10 @@ module Aws::S3
76
76
  data[:size]
77
77
  end
78
78
 
79
- # This header can be used as a data integrity check to verify that the
80
- # data received is the same data that was originally sent. This header
81
- # specifies the base64-encoded, 32-bit CRC32 checksum of the object. For
82
- # more information, see [Checking object integrity][1] in the *Amazon S3
83
- # User Guide*.
79
+ # The Base64 encoded, 32-bit `CRC32` checksum of the part. This checksum
80
+ # is present if the object was uploaded with the `CRC32` checksum
81
+ # algorithm. For more information, see [Checking object integrity][1] in
82
+ # the *Amazon S3 User Guide*.
84
83
  #
85
84
  #
86
85
  #
@@ -90,45 +89,51 @@ module Aws::S3
90
89
  data[:checksum_crc32]
91
90
  end
92
91
 
93
- # The base64-encoded, 32-bit CRC32C checksum of the object. This will
94
- # only be present if it was uploaded with the object. When you use an
95
- # API operation on an object that was uploaded using multipart uploads,
96
- # this value may not be a direct checksum value of the full object.
97
- # Instead, it's a calculation based on the checksum values of each
98
- # individual part. For more information about how checksums are
99
- # calculated with multipart uploads, see [ Checking object integrity][1]
100
- # in the *Amazon S3 User Guide*.
92
+ # The Base64 encoded, 32-bit `CRC32C` checksum of the part. This
93
+ # checksum is present if the object was uploaded with the `CRC32C`
94
+ # checksum algorithm. For more information, see [Checking object
95
+ # integrity][1] in the *Amazon S3 User Guide*.
101
96
  #
102
97
  #
103
98
  #
104
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
99
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
105
100
  # @return [String]
106
101
  def checksum_crc32c
107
102
  data[:checksum_crc32c]
108
103
  end
109
104
 
110
- # The base64-encoded, 160-bit SHA-1 digest of the object. This will only
111
- # be present if it was uploaded with the object. When you use the API
112
- # operation on an object that was uploaded using multipart uploads, this
113
- # value may not be a direct checksum value of the full object. Instead,
114
- # it's a calculation based on the checksum values of each individual
115
- # part. For more information about how checksums are calculated with
116
- # multipart uploads, see [ Checking object integrity][1] in the *Amazon
117
- # S3 User Guide*.
105
+ # The Base64 encoded, 64-bit `CRC64NVME` checksum of the part. This
106
+ # checksum is present if the multipart upload request was created with
107
+ # the `CRC64NVME` checksum algorithm, or if the object was uploaded
108
+ # without a checksum (and Amazon S3 added the default checksum,
109
+ # `CRC64NVME`, to the uploaded object). For more information, see
110
+ # [Checking object integrity][1] in the *Amazon S3 User Guide*.
118
111
  #
119
112
  #
120
113
  #
121
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
114
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
115
+ # @return [String]
116
+ def checksum_crc64nvme
117
+ data[:checksum_crc64nvme]
118
+ end
119
+
120
+ # The Base64 encoded, 160-bit `SHA1` checksum of the part. This checksum
121
+ # is present if the object was uploaded with the `SHA1` checksum
122
+ # algorithm. For more information, see [Checking object integrity][1] in
123
+ # the *Amazon S3 User Guide*.
124
+ #
125
+ #
126
+ #
127
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
122
128
  # @return [String]
123
129
  def checksum_sha1
124
130
  data[:checksum_sha1]
125
131
  end
126
132
 
127
- # This header can be used as a data integrity check to verify that the
128
- # data received is the same data that was originally sent. This header
129
- # specifies the base64-encoded, 256-bit SHA-256 digest of the object.
130
- # For more information, see [Checking object integrity][1] in the
131
- # *Amazon S3 User Guide*.
133
+ # The Base64 encoded, 256-bit `SHA256` checksum of the part. This
134
+ # checksum is present if the object was uploaded with the `SHA256`
135
+ # checksum algorithm. For more information, see [Checking object
136
+ # integrity][1] in the *Amazon S3 User Guide*.
132
137
  #
133
138
  #
134
139
  #
@@ -262,7 +267,7 @@ module Aws::S3
262
267
  :retry
263
268
  end
264
269
  end
265
- Aws::Plugins::UserAgent.feature('resource') do
270
+ Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
266
271
  Aws::Waiters::Waiter.new(options).wait({})
267
272
  end
268
273
  end
@@ -500,7 +505,7 @@ module Aws::S3
500
505
  upload_id: @multipart_upload_id,
501
506
  part_number: @part_number
502
507
  )
503
- resp = Aws::Plugins::UserAgent.feature('resource') do
508
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
504
509
  @client.upload_part_copy(options)
505
510
  end
506
511
  resp.data
@@ -512,9 +517,10 @@ module Aws::S3
512
517
  # body: source_file,
513
518
  # content_length: 1,
514
519
  # content_md5: "ContentMD5",
515
- # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256
520
+ # checksum_algorithm: "CRC32", # accepts CRC32, CRC32C, SHA1, SHA256, CRC64NVME
516
521
  # checksum_crc32: "ChecksumCRC32",
517
522
  # checksum_crc32c: "ChecksumCRC32C",
523
+ # checksum_crc64nvme: "ChecksumCRC64NVME",
518
524
  # checksum_sha1: "ChecksumSHA1",
519
525
  # checksum_sha256: "ChecksumSHA256",
520
526
  # sse_customer_algorithm: "SSECustomerAlgorithm",
@@ -530,7 +536,7 @@ module Aws::S3
530
536
  # Size of the body in bytes. This parameter is useful when the size of
531
537
  # the body cannot be determined automatically.
532
538
  # @option options [String] :content_md5
533
- # The base64-encoded 128-bit MD5 digest of the part data. This parameter
539
+ # The Base64 encoded 128-bit MD5 digest of the part data. This parameter
534
540
  # is auto-populated when using the command from the CLI. This parameter
535
541
  # is required if object lock parameters are specified.
536
542
  #
@@ -558,9 +564,9 @@ module Aws::S3
558
564
  # @option options [String] :checksum_crc32
559
565
  # This header can be used as a data integrity check to verify that the
560
566
  # data received is the same data that was originally sent. This header
561
- # specifies the base64-encoded, 32-bit CRC32 checksum of the object. For
562
- # more information, see [Checking object integrity][1] in the *Amazon S3
563
- # User Guide*.
567
+ # specifies the Base64 encoded, 32-bit `CRC32` checksum of the object.
568
+ # For more information, see [Checking object integrity][1] in the
569
+ # *Amazon S3 User Guide*.
564
570
  #
565
571
  #
566
572
  #
@@ -568,7 +574,17 @@ module Aws::S3
568
574
  # @option options [String] :checksum_crc32c
569
575
  # This header can be used as a data integrity check to verify that the
570
576
  # data received is the same data that was originally sent. This header
571
- # specifies the base64-encoded, 32-bit CRC32C checksum of the object.
577
+ # specifies the Base64 encoded, 32-bit `CRC32C` checksum of the object.
578
+ # For more information, see [Checking object integrity][1] in the
579
+ # *Amazon S3 User Guide*.
580
+ #
581
+ #
582
+ #
583
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
584
+ # @option options [String] :checksum_crc64nvme
585
+ # This header can be used as a data integrity check to verify that the
586
+ # data received is the same data that was originally sent. This header
587
+ # specifies the Base64 encoded, 64-bit `CRC64NVME` checksum of the part.
572
588
  # For more information, see [Checking object integrity][1] in the
573
589
  # *Amazon S3 User Guide*.
574
590
  #
@@ -578,7 +594,7 @@ module Aws::S3
578
594
  # @option options [String] :checksum_sha1
579
595
  # This header can be used as a data integrity check to verify that the
580
596
  # data received is the same data that was originally sent. This header
581
- # specifies the base64-encoded, 160-bit SHA-1 digest of the object. For
597
+ # specifies the Base64 encoded, 160-bit `SHA1` digest of the object. For
582
598
  # more information, see [Checking object integrity][1] in the *Amazon S3
583
599
  # User Guide*.
584
600
  #
@@ -588,7 +604,7 @@ module Aws::S3
588
604
  # @option options [String] :checksum_sha256
589
605
  # This header can be used as a data integrity check to verify that the
590
606
  # data received is the same data that was originally sent. This header
591
- # specifies the base64-encoded, 256-bit SHA-256 digest of the object.
607
+ # specifies the Base64 encoded, 256-bit `SHA256` digest of the object.
592
608
  # For more information, see [Checking object integrity][1] in the
593
609
  # *Amazon S3 User Guide*.
594
610
  #
@@ -650,7 +666,7 @@ module Aws::S3
650
666
  upload_id: @multipart_upload_id,
651
667
  part_number: @part_number
652
668
  )
653
- resp = Aws::Plugins::UserAgent.feature('resource') do
669
+ resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
654
670
  @client.upload_part(options)
655
671
  end
656
672
  resp.data