aws-sdk-s3 1.9.0 → 1.40.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (37) hide show
  1. checksums.yaml +4 -4
  2. data/lib/aws-sdk-s3/bucket.rb +22 -3
  3. data/lib/aws-sdk-s3/bucket_acl.rb +1 -0
  4. data/lib/aws-sdk-s3/bucket_cors.rb +1 -0
  5. data/lib/aws-sdk-s3/bucket_lifecycle.rb +3 -2
  6. data/lib/aws-sdk-s3/bucket_lifecycle_configuration.rb +3 -2
  7. data/lib/aws-sdk-s3/bucket_notification.rb +9 -5
  8. data/lib/aws-sdk-s3/bucket_tagging.rb +1 -0
  9. data/lib/aws-sdk-s3/bucket_website.rb +4 -0
  10. data/lib/aws-sdk-s3/client.rb +1303 -351
  11. data/lib/aws-sdk-s3/client_api.rb +352 -2
  12. data/lib/aws-sdk-s3/customizations/bucket.rb +2 -2
  13. data/lib/aws-sdk-s3/customizations/object.rb +60 -0
  14. data/lib/aws-sdk-s3/customizations/object_summary.rb +7 -0
  15. data/lib/aws-sdk-s3/customizations.rb +1 -0
  16. data/lib/aws-sdk-s3/encryption/client.rb +1 -1
  17. data/lib/aws-sdk-s3/encryption/io_auth_decrypter.rb +9 -3
  18. data/lib/aws-sdk-s3/event_streams.rb +62 -0
  19. data/lib/aws-sdk-s3/file_downloader.rb +10 -9
  20. data/lib/aws-sdk-s3/file_part.rb +5 -7
  21. data/lib/aws-sdk-s3/file_uploader.rb +1 -3
  22. data/lib/aws-sdk-s3/multipart_stream_uploader.rb +162 -0
  23. data/lib/aws-sdk-s3/multipart_upload.rb +1 -0
  24. data/lib/aws-sdk-s3/multipart_upload_part.rb +2 -2
  25. data/lib/aws-sdk-s3/object.rb +71 -7
  26. data/lib/aws-sdk-s3/object_acl.rb +1 -0
  27. data/lib/aws-sdk-s3/object_summary.rb +54 -7
  28. data/lib/aws-sdk-s3/object_version.rb +11 -0
  29. data/lib/aws-sdk-s3/plugins/accelerate.rb +4 -0
  30. data/lib/aws-sdk-s3/plugins/md5s.rb +4 -1
  31. data/lib/aws-sdk-s3/plugins/redirects.rb +3 -1
  32. data/lib/aws-sdk-s3/plugins/s3_signer.rb +6 -1
  33. data/lib/aws-sdk-s3/presigner.rb +4 -0
  34. data/lib/aws-sdk-s3/resource.rb +4 -0
  35. data/lib/aws-sdk-s3/types.rb +1539 -227
  36. data/lib/aws-sdk-s3.rb +2 -1
  37. metadata +12 -4
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 45344b7320e4213f2e5333ec0b60959fe838e83a
4
- data.tar.gz: 1f4217707ec55a169d92e9fa08708b55f4b8bcda
3
+ metadata.gz: ada09a2dbe02a1e505c2a24abd4032e6b30a4759
4
+ data.tar.gz: 840725a1d9340513b8b827d079caf4483a66d815
5
5
  SHA512:
6
- metadata.gz: 00ceffb9ab0ad1b39df77ca876d0b01cb9cb198513d1950b749e6190817ca562859e35592536ba461d90d3bb6a6aeb028fa984b3c1d83757115c774b1ebeec60
7
- data.tar.gz: 4ba88cfc73b97b0d772423dc273b564938a7e9f8b4faa0133474d9666220e3ae562fde76c51be3daef65319097e9e840d34ab20af06fe2ef0fccf10424463da0
6
+ metadata.gz: a05c4ac4506454ef26fc51ea99e1cdf83424fb2cc73ac0a4c0379d6bbf8ded54616881077a6ff3eb734e97231b9401b5ae5f9e66fc4ed15291cf4bd15b7067ee
7
+ data.tar.gz: 7792d9f9dff6eb0a59d556a77207addf50827c1aefb774582a7d4a01d36ab5d6da9aad2bd43c6d7eed1938b7ee3ff0c86ea40f9bb9c4921c0e04851b3958b843
@@ -223,6 +223,7 @@ module Aws::S3
223
223
  # grant_read_acp: "GrantReadACP",
224
224
  # grant_write: "GrantWrite",
225
225
  # grant_write_acp: "GrantWriteACP",
226
+ # object_lock_enabled_for_bucket: false,
226
227
  # })
227
228
  # @param [Hash] options ({})
228
229
  # @option options [String] :acl
@@ -240,6 +241,9 @@ module Aws::S3
240
241
  # bucket.
241
242
  # @option options [String] :grant_write_acp
242
243
  # Allows grantee to write the ACL for the applicable bucket.
244
+ # @option options [Boolean] :object_lock_enabled_for_bucket
245
+ # Specifies whether you want S3 Object Lock to be enabled for the new
246
+ # bucket.
243
247
  # @return [Types::CreateBucketOutput]
244
248
  def create(options = {})
245
249
  options = options.merge(bucket: @name)
@@ -272,6 +276,7 @@ module Aws::S3
272
276
  # },
273
277
  # mfa: "MFA",
274
278
  # request_payer: "requester", # accepts requester
279
+ # bypass_governance_retention: false,
275
280
  # })
276
281
  # @param [Hash] options ({})
277
282
  # @option options [required, Types::Delete] :delete
@@ -284,6 +289,10 @@ module Aws::S3
284
289
  # requests. Documentation on downloading objects from requester pays
285
290
  # buckets can be found at
286
291
  # http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
292
+ # @option options [Boolean] :bypass_governance_retention
293
+ # Specifies whether you want to delete this object even if it has a
294
+ # Governance-type Object Lock in place. You must have sufficient
295
+ # permissions to perform this operation.
287
296
  # @return [Types::DeleteObjectsOutput]
288
297
  def delete_objects(options = {})
289
298
  options = options.merge(bucket: @name)
@@ -313,7 +322,7 @@ module Aws::S3
313
322
  # "MetadataKey" => "MetadataValue",
314
323
  # },
315
324
  # server_side_encryption: "AES256", # accepts AES256, aws:kms
316
- # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA
325
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE
317
326
  # website_redirect_location: "WebsiteRedirectLocation",
318
327
  # sse_customer_algorithm: "SSECustomerAlgorithm",
319
328
  # sse_customer_key: "SSECustomerKey",
@@ -321,6 +330,9 @@ module Aws::S3
321
330
  # ssekms_key_id: "SSEKMSKeyId",
322
331
  # request_payer: "requester", # accepts requester
323
332
  # tagging: "TaggingHeader",
333
+ # object_lock_mode: "GOVERNANCE", # accepts GOVERNANCE, COMPLIANCE
334
+ # object_lock_retain_until_date: Time.now,
335
+ # object_lock_legal_hold_status: "ON", # accepts ON, OFF
324
336
  # })
325
337
  # @param [Hash] options ({})
326
338
  # @option options [String] :acl
@@ -341,7 +353,8 @@ module Aws::S3
341
353
  # Size of the body in bytes. This parameter is useful when the size of
342
354
  # the body cannot be determined automatically.
343
355
  # @option options [String] :content_md5
344
- # The base64-encoded 128-bit MD5 digest of the part data.
356
+ # The base64-encoded 128-bit MD5 digest of the part data. This parameter
357
+ # is auto-populated when using the command from the CLI
345
358
  # @option options [String] :content_type
346
359
  # A standard MIME type describing the format of the object data.
347
360
  # @option options [Time,DateTime,Date,Integer,String] :expires
@@ -395,7 +408,13 @@ module Aws::S3
395
408
  # http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
396
409
  # @option options [String] :tagging
397
410
  # The tag-set for the object. The tag-set must be encoded as URL Query
398
- # parameters
411
+ # parameters. (For example, "Key1=Value1")
412
+ # @option options [String] :object_lock_mode
413
+ # The Object Lock mode that you want to apply to this object.
414
+ # @option options [Time,DateTime,Date,Integer,String] :object_lock_retain_until_date
415
+ # The date and time when you want this object's Object Lock to expire.
416
+ # @option options [String] :object_lock_legal_hold_status
417
+ # The Legal Hold status that you want to apply to the specified object.
399
418
  # @return [Object]
400
419
  def put_object(options = {})
401
420
  options = options.merge(bucket: @name)
@@ -30,6 +30,7 @@ module Aws::S3
30
30
  @bucket_name
31
31
  end
32
32
 
33
+
33
34
  # @return [Types::Owner]
34
35
  def owner
35
36
  data[:owner]
@@ -30,6 +30,7 @@ module Aws::S3
30
30
  @bucket_name
31
31
  end
32
32
 
33
+
33
34
  # @return [Array<Types::CORSRule>]
34
35
  def cors_rules
35
36
  data[:cors_rules]
@@ -30,6 +30,7 @@ module Aws::S3
30
30
  @bucket_name
31
31
  end
32
32
 
33
+
33
34
  # @return [Array<Types::Rule>]
34
35
  def rules
35
36
  data[:rules]
@@ -196,11 +197,11 @@ module Aws::S3
196
197
  # transition: {
197
198
  # date: Time.now,
198
199
  # days: 1,
199
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA
200
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
200
201
  # },
201
202
  # noncurrent_version_transition: {
202
203
  # noncurrent_days: 1,
203
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA
204
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
204
205
  # },
205
206
  # noncurrent_version_expiration: {
206
207
  # noncurrent_days: 1,
@@ -30,6 +30,7 @@ module Aws::S3
30
30
  @bucket_name
31
31
  end
32
32
 
33
+
33
34
  # @return [Array<Types::LifecycleRule>]
34
35
  def rules
35
36
  data[:rules]
@@ -212,13 +213,13 @@ module Aws::S3
212
213
  # {
213
214
  # date: Time.now,
214
215
  # days: 1,
215
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA
216
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
216
217
  # },
217
218
  # ],
218
219
  # noncurrent_version_transitions: [
219
220
  # {
220
221
  # noncurrent_days: 1,
221
- # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA
222
+ # storage_class: "GLACIER", # accepts GLACIER, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, DEEP_ARCHIVE
222
223
  # },
223
224
  # ],
224
225
  # noncurrent_version_expiration: {
@@ -30,16 +30,19 @@ module Aws::S3
30
30
  @bucket_name
31
31
  end
32
32
 
33
+
33
34
  # @return [Array<Types::TopicConfiguration>]
34
35
  def topic_configurations
35
36
  data[:topic_configurations]
36
37
  end
37
38
 
39
+
38
40
  # @return [Array<Types::QueueConfiguration>]
39
41
  def queue_configurations
40
42
  data[:queue_configurations]
41
43
  end
42
44
 
45
+
43
46
  # @return [Array<Types::LambdaFunctionConfiguration>]
44
47
  def lambda_function_configurations
45
48
  data[:lambda_function_configurations]
@@ -185,7 +188,7 @@ module Aws::S3
185
188
  # {
186
189
  # id: "NotificationId",
187
190
  # topic_arn: "TopicArn", # required
188
- # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated
191
+ # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:Post, s3:ObjectRestore:Completed
189
192
  # filter: {
190
193
  # key: {
191
194
  # filter_rules: [
@@ -202,7 +205,7 @@ module Aws::S3
202
205
  # {
203
206
  # id: "NotificationId",
204
207
  # queue_arn: "QueueArn", # required
205
- # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated
208
+ # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:Post, s3:ObjectRestore:Completed
206
209
  # filter: {
207
210
  # key: {
208
211
  # filter_rules: [
@@ -219,7 +222,7 @@ module Aws::S3
219
222
  # {
220
223
  # id: "NotificationId",
221
224
  # lambda_function_arn: "LambdaFunctionArn", # required
222
- # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated
225
+ # events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:Post, s3:ObjectRestore:Completed
223
226
  # filter: {
224
227
  # key: {
225
228
  # filter_rules: [
@@ -236,8 +239,9 @@ module Aws::S3
236
239
  # })
237
240
  # @param [Hash] options ({})
238
241
  # @option options [required, Types::NotificationConfiguration] :notification_configuration
239
- # Container for specifying the notification configuration of the bucket.
240
- # If this element is empty, notifications are turned off on the bucket.
242
+ # A container for specifying the notification configuration of the
243
+ # bucket. If this element is empty, notifications are turned off for the
244
+ # bucket.
241
245
  # @return [EmptyStructure]
242
246
  def put(options = {})
243
247
  options = options.merge(bucket: @bucket_name)
@@ -30,6 +30,7 @@ module Aws::S3
30
30
  @bucket_name
31
31
  end
32
32
 
33
+
33
34
  # @return [Array<Types::Tag>]
34
35
  def tag_set
35
36
  data[:tag_set]
@@ -30,21 +30,25 @@ module Aws::S3
30
30
  @bucket_name
31
31
  end
32
32
 
33
+
33
34
  # @return [Types::RedirectAllRequestsTo]
34
35
  def redirect_all_requests_to
35
36
  data[:redirect_all_requests_to]
36
37
  end
37
38
 
39
+
38
40
  # @return [Types::IndexDocument]
39
41
  def index_document
40
42
  data[:index_document]
41
43
  end
42
44
 
45
+
43
46
  # @return [Types::ErrorDocument]
44
47
  def error_document
45
48
  data[:error_document]
46
49
  end
47
50
 
51
+
48
52
  # @return [Array<Types::RoutingRule>]
49
53
  def routing_rules
50
54
  data[:routing_rules]