aws-sdk-s3 1.48.0 → 1.183.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 (134) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGELOG.md +1352 -0
  3. data/LICENSE.txt +202 -0
  4. data/VERSION +1 -0
  5. data/lib/aws-sdk-s3/access_grants_credentials.rb +57 -0
  6. data/lib/aws-sdk-s3/access_grants_credentials_provider.rb +250 -0
  7. data/lib/aws-sdk-s3/bucket.rb +1005 -106
  8. data/lib/aws-sdk-s3/bucket_acl.rb +65 -18
  9. data/lib/aws-sdk-s3/bucket_cors.rb +80 -18
  10. data/lib/aws-sdk-s3/bucket_lifecycle.rb +71 -20
  11. data/lib/aws-sdk-s3/bucket_lifecycle_configuration.rb +126 -21
  12. data/lib/aws-sdk-s3/bucket_logging.rb +68 -16
  13. data/lib/aws-sdk-s3/bucket_notification.rb +52 -20
  14. data/lib/aws-sdk-s3/bucket_policy.rb +108 -17
  15. data/lib/aws-sdk-s3/bucket_region_cache.rb +11 -5
  16. data/lib/aws-sdk-s3/bucket_request_payment.rb +60 -15
  17. data/lib/aws-sdk-s3/bucket_tagging.rb +71 -18
  18. data/lib/aws-sdk-s3/bucket_versioning.rb +133 -17
  19. data/lib/aws-sdk-s3/bucket_website.rb +78 -21
  20. data/lib/aws-sdk-s3/client.rb +14517 -941
  21. data/lib/aws-sdk-s3/client_api.rb +1296 -197
  22. data/lib/aws-sdk-s3/customizations/bucket.rb +56 -37
  23. data/lib/aws-sdk-s3/customizations/errors.rb +40 -0
  24. data/lib/aws-sdk-s3/customizations/multipart_upload.rb +2 -0
  25. data/lib/aws-sdk-s3/customizations/object.rb +288 -68
  26. data/lib/aws-sdk-s3/customizations/object_summary.rb +10 -0
  27. data/lib/aws-sdk-s3/customizations/object_version.rb +13 -0
  28. data/lib/aws-sdk-s3/customizations/types/list_object_versions_output.rb +2 -0
  29. data/lib/aws-sdk-s3/customizations/types/permanent_redirect.rb +26 -0
  30. data/lib/aws-sdk-s3/customizations.rb +27 -28
  31. data/lib/aws-sdk-s3/encryption/client.rb +28 -7
  32. data/lib/aws-sdk-s3/encryption/decrypt_handler.rb +71 -29
  33. data/lib/aws-sdk-s3/encryption/default_cipher_provider.rb +43 -5
  34. data/lib/aws-sdk-s3/encryption/default_key_provider.rb +2 -0
  35. data/lib/aws-sdk-s3/encryption/encrypt_handler.rb +13 -2
  36. data/lib/aws-sdk-s3/encryption/errors.rb +2 -0
  37. data/lib/aws-sdk-s3/encryption/io_auth_decrypter.rb +2 -0
  38. data/lib/aws-sdk-s3/encryption/io_decrypter.rb +11 -3
  39. data/lib/aws-sdk-s3/encryption/io_encrypter.rb +2 -0
  40. data/lib/aws-sdk-s3/encryption/key_provider.rb +2 -0
  41. data/lib/aws-sdk-s3/encryption/kms_cipher_provider.rb +46 -11
  42. data/lib/aws-sdk-s3/encryption/materials.rb +8 -6
  43. data/lib/aws-sdk-s3/encryption/utils.rb +25 -0
  44. data/lib/aws-sdk-s3/encryption.rb +4 -0
  45. data/lib/aws-sdk-s3/encryptionV2/client.rb +570 -0
  46. data/lib/aws-sdk-s3/encryptionV2/decrypt_handler.rb +223 -0
  47. data/lib/aws-sdk-s3/encryptionV2/default_cipher_provider.rb +170 -0
  48. data/lib/aws-sdk-s3/encryptionV2/default_key_provider.rb +40 -0
  49. data/lib/aws-sdk-s3/encryptionV2/encrypt_handler.rb +65 -0
  50. data/lib/aws-sdk-s3/encryptionV2/errors.rb +37 -0
  51. data/lib/aws-sdk-s3/encryptionV2/io_auth_decrypter.rb +58 -0
  52. data/lib/aws-sdk-s3/encryptionV2/io_decrypter.rb +37 -0
  53. data/lib/aws-sdk-s3/encryptionV2/io_encrypter.rb +73 -0
  54. data/lib/aws-sdk-s3/encryptionV2/key_provider.rb +31 -0
  55. data/lib/aws-sdk-s3/encryptionV2/kms_cipher_provider.rb +173 -0
  56. data/lib/aws-sdk-s3/encryptionV2/materials.rb +60 -0
  57. data/lib/aws-sdk-s3/encryptionV2/utils.rb +103 -0
  58. data/lib/aws-sdk-s3/encryption_v2.rb +23 -0
  59. data/lib/aws-sdk-s3/endpoint_parameters.rb +181 -0
  60. data/lib/aws-sdk-s3/endpoint_provider.rb +716 -0
  61. data/lib/aws-sdk-s3/endpoints.rb +1434 -0
  62. data/lib/aws-sdk-s3/errors.rb +170 -1
  63. data/lib/aws-sdk-s3/event_streams.rb +8 -1
  64. data/lib/aws-sdk-s3/express_credentials.rb +55 -0
  65. data/lib/aws-sdk-s3/express_credentials_provider.rb +59 -0
  66. data/lib/aws-sdk-s3/file_downloader.rb +161 -46
  67. data/lib/aws-sdk-s3/file_part.rb +11 -6
  68. data/lib/aws-sdk-s3/file_uploader.rb +39 -18
  69. data/lib/aws-sdk-s3/legacy_signer.rb +17 -25
  70. data/lib/aws-sdk-s3/multipart_file_uploader.rb +104 -27
  71. data/lib/aws-sdk-s3/multipart_stream_uploader.rb +61 -21
  72. data/lib/aws-sdk-s3/multipart_upload.rb +342 -32
  73. data/lib/aws-sdk-s3/multipart_upload_error.rb +2 -0
  74. data/lib/aws-sdk-s3/multipart_upload_part.rb +384 -46
  75. data/lib/aws-sdk-s3/object.rb +2600 -231
  76. data/lib/aws-sdk-s3/object_acl.rb +103 -25
  77. data/lib/aws-sdk-s3/object_copier.rb +9 -5
  78. data/lib/aws-sdk-s3/object_multipart_copier.rb +48 -22
  79. data/lib/aws-sdk-s3/object_summary.rb +2174 -204
  80. data/lib/aws-sdk-s3/object_version.rb +539 -80
  81. data/lib/aws-sdk-s3/plugins/accelerate.rb +17 -64
  82. data/lib/aws-sdk-s3/plugins/access_grants.rb +178 -0
  83. data/lib/aws-sdk-s3/plugins/arn.rb +70 -0
  84. data/lib/aws-sdk-s3/plugins/bucket_dns.rb +7 -43
  85. data/lib/aws-sdk-s3/plugins/bucket_name_restrictions.rb +20 -3
  86. data/lib/aws-sdk-s3/plugins/checksum_algorithm.rb +31 -0
  87. data/lib/aws-sdk-s3/plugins/dualstack.rb +7 -50
  88. data/lib/aws-sdk-s3/plugins/endpoints.rb +86 -0
  89. data/lib/aws-sdk-s3/plugins/expect_100_continue.rb +5 -4
  90. data/lib/aws-sdk-s3/plugins/express_session_auth.rb +88 -0
  91. data/lib/aws-sdk-s3/plugins/get_bucket_location_fix.rb +3 -1
  92. data/lib/aws-sdk-s3/plugins/http_200_errors.rb +62 -17
  93. data/lib/aws-sdk-s3/plugins/iad_regional_endpoint.rb +44 -0
  94. data/lib/aws-sdk-s3/plugins/location_constraint.rb +5 -1
  95. data/lib/aws-sdk-s3/plugins/md5s.rb +14 -70
  96. data/lib/aws-sdk-s3/plugins/redirects.rb +2 -0
  97. data/lib/aws-sdk-s3/plugins/s3_host_id.rb +2 -0
  98. data/lib/aws-sdk-s3/plugins/s3_signer.rb +63 -94
  99. data/lib/aws-sdk-s3/plugins/sse_cpk.rb +3 -1
  100. data/lib/aws-sdk-s3/plugins/streaming_retry.rb +139 -0
  101. data/lib/aws-sdk-s3/plugins/url_encoded_keys.rb +2 -0
  102. data/lib/aws-sdk-s3/presigned_post.rb +160 -99
  103. data/lib/aws-sdk-s3/presigner.rb +141 -62
  104. data/lib/aws-sdk-s3/resource.rb +156 -17
  105. data/lib/aws-sdk-s3/types.rb +13021 -4106
  106. data/lib/aws-sdk-s3/waiters.rb +67 -1
  107. data/lib/aws-sdk-s3.rb +46 -32
  108. data/sig/bucket.rbs +222 -0
  109. data/sig/bucket_acl.rbs +78 -0
  110. data/sig/bucket_cors.rbs +69 -0
  111. data/sig/bucket_lifecycle.rbs +88 -0
  112. data/sig/bucket_lifecycle_configuration.rbs +115 -0
  113. data/sig/bucket_logging.rbs +76 -0
  114. data/sig/bucket_notification.rbs +114 -0
  115. data/sig/bucket_policy.rbs +59 -0
  116. data/sig/bucket_request_payment.rbs +54 -0
  117. data/sig/bucket_tagging.rbs +65 -0
  118. data/sig/bucket_versioning.rbs +77 -0
  119. data/sig/bucket_website.rbs +93 -0
  120. data/sig/client.rbs +2472 -0
  121. data/sig/customizations/bucket.rbs +19 -0
  122. data/sig/customizations/object.rbs +38 -0
  123. data/sig/customizations/object_summary.rbs +35 -0
  124. data/sig/errors.rbs +42 -0
  125. data/sig/multipart_upload.rbs +120 -0
  126. data/sig/multipart_upload_part.rbs +109 -0
  127. data/sig/object.rbs +459 -0
  128. data/sig/object_acl.rbs +86 -0
  129. data/sig/object_summary.rbs +345 -0
  130. data/sig/object_version.rbs +143 -0
  131. data/sig/resource.rbs +134 -0
  132. data/sig/types.rbs +2712 -0
  133. data/sig/waiters.rbs +95 -0
  134. metadata +74 -15
@@ -1,13 +1,79 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
4
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
5
7
  #
6
8
  # WARNING ABOUT GENERATED CODE
7
9
 
8
10
  require 'aws-sdk-core/waiters'
9
11
 
10
12
  module Aws::S3
13
+ # Waiters are utility methods that poll for a particular state to occur
14
+ # on a client. Waiters can fail after a number of attempts at a polling
15
+ # interval defined for the service client.
16
+ #
17
+ # For a list of operations that can be waited for and the
18
+ # client methods called for each operation, see the table below or the
19
+ # {Client#wait_until} field documentation for the {Client}.
20
+ #
21
+ # # Invoking a Waiter
22
+ # To invoke a waiter, call #wait_until on a {Client}. The first parameter
23
+ # is the waiter name, which is specific to the service client and indicates
24
+ # which operation is being waited for. The second parameter is a hash of
25
+ # parameters that are passed to the client method called by the waiter,
26
+ # which varies according to the waiter name.
27
+ #
28
+ # # Wait Failures
29
+ # To catch errors in a waiter, use WaiterFailed,
30
+ # as shown in the following example.
31
+ #
32
+ # rescue rescue Aws::Waiters::Errors::WaiterFailed => error
33
+ # puts "failed waiting for instance running: #{error.message}
34
+ # end
35
+ #
36
+ # # Configuring a Waiter
37
+ # Each waiter has a default polling interval and a maximum number of
38
+ # attempts it will make before returning control to your program.
39
+ # To set these values, use the `max_attempts` and `delay` parameters
40
+ # in your `#wait_until` call.
41
+ # The following example waits for up to 25 seconds, polling every five seconds.
42
+ #
43
+ # client.wait_until(...) do |w|
44
+ # w.max_attempts = 5
45
+ # w.delay = 5
46
+ # end
47
+ #
48
+ # To disable wait failures, set the value of either of these parameters
49
+ # to `nil`.
50
+ #
51
+ # # Extending a Waiter
52
+ # To modify the behavior of waiters, you can register callbacks that are
53
+ # triggered before each polling attempt and before waiting.
54
+ #
55
+ # The following example implements an exponential backoff in a waiter
56
+ # by doubling the amount of time to wait on every attempt.
57
+ #
58
+ # client.wait_until(...) do |w|
59
+ # w.interval = 0 # disable normal sleep
60
+ # w.before_wait do |n, resp|
61
+ # sleep(n ** 2)
62
+ # end
63
+ # end
64
+ #
65
+ # # Available Waiters
66
+ #
67
+ # The following table lists the valid waiter names, the operations they call,
68
+ # and the default `:delay` and `:max_attempts` values.
69
+ #
70
+ # | waiter_name | params | :delay | :max_attempts |
71
+ # | ----------------- | -------------------- | -------- | ------------- |
72
+ # | bucket_exists | {Client#head_bucket} | 5 | 20 |
73
+ # | bucket_not_exists | {Client#head_bucket} | 5 | 20 |
74
+ # | object_exists | {Client#head_object} | 5 | 20 |
75
+ # | object_not_exists | {Client#head_object} | 5 | 20 |
76
+ #
11
77
  module Waiters
12
78
 
13
79
  class BucketExists
data/lib/aws-sdk-s3.rb CHANGED
@@ -1,40 +1,18 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
4
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
5
7
  #
6
8
  # WARNING ABOUT GENERATED CODE
7
9
 
10
+
8
11
  require 'aws-sdk-kms'
9
12
  require 'aws-sigv4'
10
13
  require 'aws-sdk-core'
11
14
 
12
- require_relative 'aws-sdk-s3/types'
13
- require_relative 'aws-sdk-s3/client_api'
14
- require_relative 'aws-sdk-s3/client'
15
- require_relative 'aws-sdk-s3/errors'
16
- require_relative 'aws-sdk-s3/waiters'
17
- require_relative 'aws-sdk-s3/resource'
18
- require_relative 'aws-sdk-s3/bucket'
19
- require_relative 'aws-sdk-s3/bucket_acl'
20
- require_relative 'aws-sdk-s3/bucket_cors'
21
- require_relative 'aws-sdk-s3/bucket_lifecycle'
22
- require_relative 'aws-sdk-s3/bucket_lifecycle_configuration'
23
- require_relative 'aws-sdk-s3/bucket_logging'
24
- require_relative 'aws-sdk-s3/bucket_notification'
25
- require_relative 'aws-sdk-s3/bucket_policy'
26
- require_relative 'aws-sdk-s3/bucket_request_payment'
27
- require_relative 'aws-sdk-s3/bucket_tagging'
28
- require_relative 'aws-sdk-s3/bucket_versioning'
29
- require_relative 'aws-sdk-s3/bucket_website'
30
- require_relative 'aws-sdk-s3/multipart_upload'
31
- require_relative 'aws-sdk-s3/multipart_upload_part'
32
- require_relative 'aws-sdk-s3/object'
33
- require_relative 'aws-sdk-s3/object_acl'
34
- require_relative 'aws-sdk-s3/object_summary'
35
- require_relative 'aws-sdk-s3/object_version'
36
- require_relative 'aws-sdk-s3/customizations'
37
- require_relative 'aws-sdk-s3/event_streams'
15
+ Aws::Plugins::GlobalConfiguration.add_identifier(:s3)
38
16
 
39
17
  # This module provides support for Amazon Simple Storage Service. This module is available in the
40
18
  # `aws-sdk-s3` gem.
@@ -45,24 +23,60 @@ require_relative 'aws-sdk-s3/event_streams'
45
23
  # methods each accept a hash of request parameters and return a response
46
24
  # structure.
47
25
  #
26
+ # s3 = Aws::S3::Client.new
27
+ # resp = s3.abort_multipart_upload(params)
28
+ #
48
29
  # See {Client} for more information.
49
30
  #
50
31
  # # Errors
51
32
  #
52
- # Errors returned from Amazon Simple Storage Service all
53
- # extend {Errors::ServiceError}.
33
+ # Errors returned from Amazon Simple Storage Service are defined in the
34
+ # {Errors} module and all extend {Errors::ServiceError}.
54
35
  #
55
36
  # begin
56
37
  # # do stuff
57
38
  # rescue Aws::S3::Errors::ServiceError
58
- # # rescues all service API errors
39
+ # # rescues all Amazon Simple Storage Service API errors
59
40
  # end
60
41
  #
61
42
  # See {Errors} for more information.
62
43
  #
63
- # @service
44
+ # @!group service
64
45
  module Aws::S3
46
+ autoload :Types, 'aws-sdk-s3/types'
47
+ autoload :ClientApi, 'aws-sdk-s3/client_api'
48
+ module Plugins
49
+ autoload :Endpoints, 'aws-sdk-s3/plugins/endpoints.rb'
50
+ end
51
+ autoload :Client, 'aws-sdk-s3/client'
52
+ autoload :Errors, 'aws-sdk-s3/errors'
53
+ autoload :Waiters, 'aws-sdk-s3/waiters'
54
+ autoload :Resource, 'aws-sdk-s3/resource'
55
+ autoload :EndpointParameters, 'aws-sdk-s3/endpoint_parameters'
56
+ autoload :EndpointProvider, 'aws-sdk-s3/endpoint_provider'
57
+ autoload :Endpoints, 'aws-sdk-s3/endpoints'
58
+ autoload :Bucket, 'aws-sdk-s3/bucket'
59
+ autoload :BucketAcl, 'aws-sdk-s3/bucket_acl'
60
+ autoload :BucketCors, 'aws-sdk-s3/bucket_cors'
61
+ autoload :BucketLifecycle, 'aws-sdk-s3/bucket_lifecycle'
62
+ autoload :BucketLifecycleConfiguration, 'aws-sdk-s3/bucket_lifecycle_configuration'
63
+ autoload :BucketLogging, 'aws-sdk-s3/bucket_logging'
64
+ autoload :BucketNotification, 'aws-sdk-s3/bucket_notification'
65
+ autoload :BucketPolicy, 'aws-sdk-s3/bucket_policy'
66
+ autoload :BucketRequestPayment, 'aws-sdk-s3/bucket_request_payment'
67
+ autoload :BucketTagging, 'aws-sdk-s3/bucket_tagging'
68
+ autoload :BucketVersioning, 'aws-sdk-s3/bucket_versioning'
69
+ autoload :BucketWebsite, 'aws-sdk-s3/bucket_website'
70
+ autoload :MultipartUpload, 'aws-sdk-s3/multipart_upload'
71
+ autoload :MultipartUploadPart, 'aws-sdk-s3/multipart_upload_part'
72
+ autoload :Object, 'aws-sdk-s3/object'
73
+ autoload :ObjectAcl, 'aws-sdk-s3/object_acl'
74
+ autoload :ObjectSummary, 'aws-sdk-s3/object_summary'
75
+ autoload :ObjectVersion, 'aws-sdk-s3/object_version'
76
+ autoload :EventStreams, 'aws-sdk-s3/event_streams'
65
77
 
66
- GEM_VERSION = '1.48.0'
78
+ GEM_VERSION = '1.183.0'
67
79
 
68
80
  end
81
+
82
+ require_relative 'aws-sdk-s3/customizations'
data/sig/bucket.rbs ADDED
@@ -0,0 +1,222 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module S3
10
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html
11
+ class Bucket
12
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#initialize-instance_method
13
+ def initialize: (String name, Hash[Symbol, untyped] options) -> void
14
+ | (name: String, ?client: Client) -> void
15
+ | (Hash[Symbol, untyped] args) -> void
16
+
17
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#name-instance_method
18
+ def name: () -> String
19
+
20
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#creation_date-instance_method
21
+ def creation_date: () -> ::Time
22
+
23
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#bucket_region-instance_method
24
+ def bucket_region: () -> ::String
25
+
26
+ def client: () -> Client
27
+
28
+
29
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#data-instance_method
30
+ def data: () -> Types::Bucket
31
+
32
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#data_loaded?-instance_method
33
+ def data_loaded?: () -> bool
34
+
35
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#exists?-instance_method
36
+ def exists?: (?max_attempts: Integer, ?delay: Numeric, ?before_attempt: (^(Integer attempts) -> void), ?before_wait: (^(Integer attempts, untyped response) -> void)) -> bool
37
+ | (?Hash[Symbol, untyped]) -> bool
38
+
39
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#wait_until_exists-instance_method
40
+ def wait_until_exists: (?max_attempts: Integer, ?delay: Numeric, ?before_attempt: (^(Integer attempts) -> void), ?before_wait: (^(Integer attempts, untyped response) -> void)) ?{ (untyped waiter) -> void } -> Bucket
41
+ | (?Hash[Symbol, untyped]) ?{ (untyped waiter) -> void } -> Bucket
42
+
43
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#wait_until_not_exists-instance_method
44
+ def wait_until_not_exists: (?max_attempts: Integer, ?delay: Numeric, ?before_attempt: (^(Integer attempts) -> void), ?before_wait: (^(Integer attempts, untyped response) -> void)) ?{ (untyped waiter) -> void } -> Bucket
45
+ | (?Hash[Symbol, untyped]) ?{ (untyped waiter) -> void } -> Bucket
46
+
47
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#create-instance_method
48
+ def create: (
49
+ ?acl: ("private" | "public-read" | "public-read-write" | "authenticated-read"),
50
+ ?create_bucket_configuration: {
51
+ location_constraint: ("af-south-1" | "ap-east-1" | "ap-northeast-1" | "ap-northeast-2" | "ap-northeast-3" | "ap-south-1" | "ap-south-2" | "ap-southeast-1" | "ap-southeast-2" | "ap-southeast-3" | "ap-southeast-4" | "ap-southeast-5" | "ca-central-1" | "cn-north-1" | "cn-northwest-1" | "EU" | "eu-central-1" | "eu-central-2" | "eu-north-1" | "eu-south-1" | "eu-south-2" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "il-central-1" | "me-central-1" | "me-south-1" | "sa-east-1" | "us-east-2" | "us-gov-east-1" | "us-gov-west-1" | "us-west-1" | "us-west-2")?,
52
+ location: {
53
+ type: ("AvailabilityZone" | "LocalZone")?,
54
+ name: ::String?
55
+ }?,
56
+ bucket: {
57
+ data_redundancy: ("SingleAvailabilityZone" | "SingleLocalZone")?,
58
+ type: ("Directory")?
59
+ }?
60
+ },
61
+ ?grant_full_control: ::String,
62
+ ?grant_read: ::String,
63
+ ?grant_read_acp: ::String,
64
+ ?grant_write: ::String,
65
+ ?grant_write_acp: ::String,
66
+ ?object_lock_enabled_for_bucket: bool,
67
+ ?object_ownership: ("BucketOwnerPreferred" | "ObjectWriter" | "BucketOwnerEnforced")
68
+ ) -> Types::CreateBucketOutput
69
+ | (?Hash[Symbol, untyped]) -> Types::CreateBucketOutput
70
+
71
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#delete-instance_method
72
+ def delete: (
73
+ ?expected_bucket_owner: ::String
74
+ ) -> ::Aws::EmptyStructure
75
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
76
+
77
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#delete_objects-instance_method
78
+ def delete_objects: (
79
+ delete: {
80
+ objects: Array[
81
+ {
82
+ key: ::String,
83
+ version_id: ::String?,
84
+ etag: ::String?,
85
+ last_modified_time: ::Time?,
86
+ size: ::Integer?
87
+ },
88
+ ],
89
+ quiet: bool?
90
+ },
91
+ ?mfa: ::String,
92
+ ?request_payer: ("requester"),
93
+ ?bypass_governance_retention: bool,
94
+ ?expected_bucket_owner: ::String,
95
+ ?checksum_algorithm: ("CRC32" | "CRC32C" | "SHA1" | "SHA256" | "CRC64NVME")
96
+ ) -> Types::DeleteObjectsOutput
97
+ | (?Hash[Symbol, untyped]) -> Types::DeleteObjectsOutput
98
+
99
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#put_object-instance_method
100
+ def put_object: (
101
+ ?acl: ("private" | "public-read" | "public-read-write" | "authenticated-read" | "aws-exec-read" | "bucket-owner-read" | "bucket-owner-full-control"),
102
+ ?body: ::String | ::StringIO | ::File,
103
+ ?cache_control: ::String,
104
+ ?content_disposition: ::String,
105
+ ?content_encoding: ::String,
106
+ ?content_language: ::String,
107
+ ?content_length: ::Integer,
108
+ ?content_md5: ::String,
109
+ ?content_type: ::String,
110
+ ?checksum_algorithm: ("CRC32" | "CRC32C" | "SHA1" | "SHA256" | "CRC64NVME"),
111
+ ?checksum_crc32: ::String,
112
+ ?checksum_crc32c: ::String,
113
+ ?checksum_crc64nvme: ::String,
114
+ ?checksum_sha1: ::String,
115
+ ?checksum_sha256: ::String,
116
+ ?expires: ::Time,
117
+ ?if_match: ::String,
118
+ ?if_none_match: ::String,
119
+ ?grant_full_control: ::String,
120
+ ?grant_read: ::String,
121
+ ?grant_read_acp: ::String,
122
+ ?grant_write_acp: ::String,
123
+ key: ::String,
124
+ ?write_offset_bytes: ::Integer,
125
+ ?metadata: Hash[::String, ::String],
126
+ ?server_side_encryption: ("AES256" | "aws:kms" | "aws:kms:dsse"),
127
+ ?storage_class: ("STANDARD" | "REDUCED_REDUNDANCY" | "STANDARD_IA" | "ONEZONE_IA" | "INTELLIGENT_TIERING" | "GLACIER" | "DEEP_ARCHIVE" | "OUTPOSTS" | "GLACIER_IR" | "SNOW" | "EXPRESS_ONEZONE"),
128
+ ?website_redirect_location: ::String,
129
+ ?sse_customer_algorithm: ::String,
130
+ ?sse_customer_key: ::String,
131
+ ?sse_customer_key_md5: ::String,
132
+ ?ssekms_key_id: ::String,
133
+ ?ssekms_encryption_context: ::String,
134
+ ?bucket_key_enabled: bool,
135
+ ?request_payer: ("requester"),
136
+ ?tagging: ::String,
137
+ ?object_lock_mode: ("GOVERNANCE" | "COMPLIANCE"),
138
+ ?object_lock_retain_until_date: ::Time,
139
+ ?object_lock_legal_hold_status: ("ON" | "OFF"),
140
+ ?expected_bucket_owner: ::String
141
+ ) -> Object
142
+ | (?Hash[Symbol, untyped]) -> Object
143
+
144
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#acl-instance_method
145
+ def acl: () -> BucketAcl
146
+
147
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#cors-instance_method
148
+ def cors: () -> BucketCors
149
+
150
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#lifecycle-instance_method
151
+ def lifecycle: () -> BucketLifecycle
152
+
153
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#lifecycle_configuration-instance_method
154
+ def lifecycle_configuration: () -> BucketLifecycleConfiguration
155
+
156
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#logging-instance_method
157
+ def logging: () -> BucketLogging
158
+
159
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#multipart_uploads-instance_method
160
+ def multipart_uploads: (
161
+ ?delimiter: ::String,
162
+ ?encoding_type: ("url"),
163
+ ?key_marker: ::String,
164
+ ?prefix: ::String,
165
+ ?upload_id_marker: ::String,
166
+ ?expected_bucket_owner: ::String,
167
+ ?request_payer: ("requester")
168
+ ) -> MultipartUpload::Collection
169
+ | (?Hash[Symbol, untyped]) -> MultipartUpload::Collection
170
+
171
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#notification-instance_method
172
+ def notification: () -> BucketNotification
173
+
174
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#object-instance_method
175
+ def object: (String key) -> Object
176
+
177
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#object_versions-instance_method
178
+ def object_versions: (
179
+ ?delimiter: ::String,
180
+ ?encoding_type: ("url"),
181
+ ?key_marker: ::String,
182
+ ?prefix: ::String,
183
+ ?version_id_marker: ::String,
184
+ ?expected_bucket_owner: ::String,
185
+ ?request_payer: ("requester"),
186
+ ?optional_object_attributes: Array[("RestoreStatus")]
187
+ ) -> ObjectVersion::Collection
188
+ | (?Hash[Symbol, untyped]) -> ObjectVersion::Collection
189
+
190
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#objects-instance_method
191
+ def objects: (
192
+ ?delimiter: ::String,
193
+ ?encoding_type: ("url"),
194
+ ?prefix: ::String,
195
+ ?fetch_owner: bool,
196
+ ?start_after: ::String,
197
+ ?request_payer: ("requester"),
198
+ ?expected_bucket_owner: ::String,
199
+ ?optional_object_attributes: Array[("RestoreStatus")]
200
+ ) -> ObjectSummary::Collection
201
+ | (?Hash[Symbol, untyped]) -> ObjectSummary::Collection
202
+
203
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#policy-instance_method
204
+ def policy: () -> BucketPolicy
205
+
206
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#request_payment-instance_method
207
+ def request_payment: () -> BucketRequestPayment
208
+
209
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#tagging-instance_method
210
+ def tagging: () -> BucketTagging
211
+
212
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#versioning-instance_method
213
+ def versioning: () -> BucketVersioning
214
+
215
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#website-instance_method
216
+ def website: () -> BucketWebsite
217
+
218
+ class Collection < ::Aws::Resources::Collection[Bucket]
219
+ end
220
+ end
221
+ end
222
+ end
@@ -0,0 +1,78 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module S3
10
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketAcl.html
11
+ class BucketAcl
12
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketAcl.html#initialize-instance_method
13
+ def initialize: (String bucket_name, Hash[Symbol, untyped] options) -> void
14
+ | (bucket_name: String, ?client: Client) -> void
15
+ | (Hash[Symbol, untyped] args) -> void
16
+
17
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketAcl.html#bucket_name-instance_method
18
+ def bucket_name: () -> String
19
+
20
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketAcl.html#owner-instance_method
21
+ def owner: () -> Types::Owner
22
+
23
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketAcl.html#grants-instance_method
24
+ def grants: () -> ::Array[Types::Grant]
25
+
26
+ def client: () -> Client
27
+
28
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketAcl.html#load-instance_method
29
+ def load: () -> self
30
+ alias reload load
31
+
32
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketAcl.html#data-instance_method
33
+ def data: () -> Types::GetBucketAclOutput
34
+
35
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketAcl.html#data_loaded?-instance_method
36
+ def data_loaded?: () -> bool
37
+
38
+
39
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketAcl.html#put-instance_method
40
+ def put: (
41
+ ?acl: ("private" | "public-read" | "public-read-write" | "authenticated-read"),
42
+ ?access_control_policy: {
43
+ grants: Array[
44
+ {
45
+ grantee: {
46
+ display_name: ::String?,
47
+ email_address: ::String?,
48
+ id: ::String?,
49
+ type: ("CanonicalUser" | "AmazonCustomerByEmail" | "Group"),
50
+ uri: ::String?
51
+ }?,
52
+ permission: ("FULL_CONTROL" | "WRITE" | "WRITE_ACP" | "READ" | "READ_ACP")?
53
+ },
54
+ ]?,
55
+ owner: {
56
+ display_name: ::String?,
57
+ id: ::String?
58
+ }?
59
+ },
60
+ ?content_md5: ::String,
61
+ ?checksum_algorithm: ("CRC32" | "CRC32C" | "SHA1" | "SHA256" | "CRC64NVME"),
62
+ ?grant_full_control: ::String,
63
+ ?grant_read: ::String,
64
+ ?grant_read_acp: ::String,
65
+ ?grant_write: ::String,
66
+ ?grant_write_acp: ::String,
67
+ ?expected_bucket_owner: ::String
68
+ ) -> ::Aws::EmptyStructure
69
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
70
+
71
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketAcl.html#bucket-instance_method
72
+ def bucket: () -> Bucket
73
+
74
+ class Collection < ::Aws::Resources::Collection[BucketAcl]
75
+ end
76
+ end
77
+ end
78
+ end
@@ -0,0 +1,69 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module S3
10
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketCors.html
11
+ class BucketCors
12
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketCors.html#initialize-instance_method
13
+ def initialize: (String bucket_name, Hash[Symbol, untyped] options) -> void
14
+ | (bucket_name: String, ?client: Client) -> void
15
+ | (Hash[Symbol, untyped] args) -> void
16
+
17
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketCors.html#bucket_name-instance_method
18
+ def bucket_name: () -> String
19
+
20
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketCors.html#cors_rules-instance_method
21
+ def cors_rules: () -> ::Array[Types::CORSRule]
22
+
23
+ def client: () -> Client
24
+
25
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketCors.html#load-instance_method
26
+ def load: () -> self
27
+ alias reload load
28
+
29
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketCors.html#data-instance_method
30
+ def data: () -> Types::GetBucketCorsOutput
31
+
32
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketCors.html#data_loaded?-instance_method
33
+ def data_loaded?: () -> bool
34
+
35
+
36
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketCors.html#delete-instance_method
37
+ def delete: (
38
+ ?expected_bucket_owner: ::String
39
+ ) -> ::Aws::EmptyStructure
40
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
41
+
42
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketCors.html#put-instance_method
43
+ def put: (
44
+ cors_configuration: {
45
+ cors_rules: Array[
46
+ {
47
+ id: ::String?,
48
+ allowed_headers: Array[::String]?,
49
+ allowed_methods: Array[::String],
50
+ allowed_origins: Array[::String],
51
+ expose_headers: Array[::String]?,
52
+ max_age_seconds: ::Integer?
53
+ },
54
+ ]
55
+ },
56
+ ?content_md5: ::String,
57
+ ?checksum_algorithm: ("CRC32" | "CRC32C" | "SHA1" | "SHA256" | "CRC64NVME"),
58
+ ?expected_bucket_owner: ::String
59
+ ) -> ::Aws::EmptyStructure
60
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
61
+
62
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketCors.html#bucket-instance_method
63
+ def bucket: () -> Bucket
64
+
65
+ class Collection < ::Aws::Resources::Collection[BucketCors]
66
+ end
67
+ end
68
+ end
69
+ end
@@ -0,0 +1,88 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module S3
10
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLifecycle.html
11
+ class BucketLifecycle
12
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLifecycle.html#initialize-instance_method
13
+ def initialize: (String bucket_name, Hash[Symbol, untyped] options) -> void
14
+ | (bucket_name: String, ?client: Client) -> void
15
+ | (Hash[Symbol, untyped] args) -> void
16
+
17
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLifecycle.html#bucket_name-instance_method
18
+ def bucket_name: () -> String
19
+
20
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLifecycle.html#rules-instance_method
21
+ def rules: () -> ::Array[Types::Rule]
22
+
23
+ def client: () -> Client
24
+
25
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLifecycle.html#load-instance_method
26
+ def load: () -> self
27
+ alias reload load
28
+
29
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLifecycle.html#data-instance_method
30
+ def data: () -> Types::GetBucketLifecycleOutput
31
+
32
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLifecycle.html#data_loaded?-instance_method
33
+ def data_loaded?: () -> bool
34
+
35
+
36
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLifecycle.html#delete-instance_method
37
+ def delete: (
38
+ ?expected_bucket_owner: ::String
39
+ ) -> ::Aws::EmptyStructure
40
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
41
+
42
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLifecycle.html#put-instance_method
43
+ def put: (
44
+ ?content_md5: ::String,
45
+ ?checksum_algorithm: ("CRC32" | "CRC32C" | "SHA1" | "SHA256" | "CRC64NVME"),
46
+ ?lifecycle_configuration: {
47
+ rules: Array[
48
+ {
49
+ expiration: {
50
+ date: ::Time?,
51
+ days: ::Integer?,
52
+ expired_object_delete_marker: bool?
53
+ }?,
54
+ id: ::String?,
55
+ prefix: ::String,
56
+ status: ("Enabled" | "Disabled"),
57
+ transition: {
58
+ date: ::Time?,
59
+ days: ::Integer?,
60
+ storage_class: ("GLACIER" | "STANDARD_IA" | "ONEZONE_IA" | "INTELLIGENT_TIERING" | "DEEP_ARCHIVE" | "GLACIER_IR")?
61
+ }?,
62
+ noncurrent_version_transition: {
63
+ noncurrent_days: ::Integer?,
64
+ storage_class: ("GLACIER" | "STANDARD_IA" | "ONEZONE_IA" | "INTELLIGENT_TIERING" | "DEEP_ARCHIVE" | "GLACIER_IR")?,
65
+ newer_noncurrent_versions: ::Integer?
66
+ }?,
67
+ noncurrent_version_expiration: {
68
+ noncurrent_days: ::Integer?,
69
+ newer_noncurrent_versions: ::Integer?
70
+ }?,
71
+ abort_incomplete_multipart_upload: {
72
+ days_after_initiation: ::Integer?
73
+ }?
74
+ },
75
+ ]
76
+ },
77
+ ?expected_bucket_owner: ::String
78
+ ) -> ::Aws::EmptyStructure
79
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
80
+
81
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLifecycle.html#bucket-instance_method
82
+ def bucket: () -> Bucket
83
+
84
+ class Collection < ::Aws::Resources::Collection[BucketLifecycle]
85
+ end
86
+ end
87
+ end
88
+ end