aws-sdk-s3 1.45.0 → 1.143.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (128) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGELOG.md +1106 -0
  3. data/LICENSE.txt +202 -0
  4. data/VERSION +1 -0
  5. data/lib/aws-sdk-s3/bucket.rb +784 -98
  6. data/lib/aws-sdk-s3/bucket_acl.rb +64 -18
  7. data/lib/aws-sdk-s3/bucket_cors.rb +79 -18
  8. data/lib/aws-sdk-s3/bucket_lifecycle.rb +66 -20
  9. data/lib/aws-sdk-s3/bucket_lifecycle_configuration.rb +68 -20
  10. data/lib/aws-sdk-s3/bucket_logging.rb +68 -16
  11. data/lib/aws-sdk-s3/bucket_notification.rb +52 -20
  12. data/lib/aws-sdk-s3/bucket_policy.rb +107 -17
  13. data/lib/aws-sdk-s3/bucket_region_cache.rb +2 -0
  14. data/lib/aws-sdk-s3/bucket_request_payment.rb +60 -15
  15. data/lib/aws-sdk-s3/bucket_tagging.rb +71 -18
  16. data/lib/aws-sdk-s3/bucket_versioning.rb +133 -17
  17. data/lib/aws-sdk-s3/bucket_website.rb +78 -21
  18. data/lib/aws-sdk-s3/client.rb +12610 -902
  19. data/lib/aws-sdk-s3/client_api.rb +1086 -191
  20. data/lib/aws-sdk-s3/customizations/bucket.rb +56 -37
  21. data/lib/aws-sdk-s3/customizations/errors.rb +27 -0
  22. data/lib/aws-sdk-s3/customizations/multipart_upload.rb +2 -0
  23. data/lib/aws-sdk-s3/customizations/object.rb +282 -68
  24. data/lib/aws-sdk-s3/customizations/object_summary.rb +5 -0
  25. data/lib/aws-sdk-s3/customizations/types/list_object_versions_output.rb +2 -0
  26. data/lib/aws-sdk-s3/customizations/types/permanent_redirect.rb +26 -0
  27. data/lib/aws-sdk-s3/customizations.rb +11 -1
  28. data/lib/aws-sdk-s3/encryption/client.rb +28 -7
  29. data/lib/aws-sdk-s3/encryption/decrypt_handler.rb +71 -29
  30. data/lib/aws-sdk-s3/encryption/default_cipher_provider.rb +43 -5
  31. data/lib/aws-sdk-s3/encryption/default_key_provider.rb +2 -0
  32. data/lib/aws-sdk-s3/encryption/encrypt_handler.rb +13 -2
  33. data/lib/aws-sdk-s3/encryption/errors.rb +2 -0
  34. data/lib/aws-sdk-s3/encryption/io_auth_decrypter.rb +2 -0
  35. data/lib/aws-sdk-s3/encryption/io_decrypter.rb +11 -3
  36. data/lib/aws-sdk-s3/encryption/io_encrypter.rb +2 -0
  37. data/lib/aws-sdk-s3/encryption/key_provider.rb +2 -0
  38. data/lib/aws-sdk-s3/encryption/kms_cipher_provider.rb +46 -11
  39. data/lib/aws-sdk-s3/encryption/materials.rb +8 -6
  40. data/lib/aws-sdk-s3/encryption/utils.rb +25 -0
  41. data/lib/aws-sdk-s3/encryption.rb +4 -0
  42. data/lib/aws-sdk-s3/encryptionV2/client.rb +570 -0
  43. data/lib/aws-sdk-s3/encryptionV2/decrypt_handler.rb +223 -0
  44. data/lib/aws-sdk-s3/encryptionV2/default_cipher_provider.rb +170 -0
  45. data/lib/aws-sdk-s3/encryptionV2/default_key_provider.rb +40 -0
  46. data/lib/aws-sdk-s3/encryptionV2/encrypt_handler.rb +65 -0
  47. data/lib/aws-sdk-s3/encryptionV2/errors.rb +37 -0
  48. data/lib/aws-sdk-s3/encryptionV2/io_auth_decrypter.rb +58 -0
  49. data/lib/aws-sdk-s3/encryptionV2/io_decrypter.rb +37 -0
  50. data/lib/aws-sdk-s3/encryptionV2/io_encrypter.rb +73 -0
  51. data/lib/aws-sdk-s3/encryptionV2/key_provider.rb +31 -0
  52. data/lib/aws-sdk-s3/encryptionV2/kms_cipher_provider.rb +173 -0
  53. data/lib/aws-sdk-s3/encryptionV2/materials.rb +60 -0
  54. data/lib/aws-sdk-s3/encryptionV2/utils.rb +103 -0
  55. data/lib/aws-sdk-s3/encryption_v2.rb +23 -0
  56. data/lib/aws-sdk-s3/endpoint_parameters.rb +178 -0
  57. data/lib/aws-sdk-s3/endpoint_provider.rb +591 -0
  58. data/lib/aws-sdk-s3/endpoints.rb +2590 -0
  59. data/lib/aws-sdk-s3/errors.rb +123 -1
  60. data/lib/aws-sdk-s3/event_streams.rb +8 -1
  61. data/lib/aws-sdk-s3/express_credentials.rb +55 -0
  62. data/lib/aws-sdk-s3/express_credentials_cache.rb +30 -0
  63. data/lib/aws-sdk-s3/express_credentials_provider.rb +36 -0
  64. data/lib/aws-sdk-s3/file_downloader.rb +176 -44
  65. data/lib/aws-sdk-s3/file_part.rb +11 -6
  66. data/lib/aws-sdk-s3/file_uploader.rb +39 -18
  67. data/lib/aws-sdk-s3/legacy_signer.rb +17 -25
  68. data/lib/aws-sdk-s3/multipart_file_uploader.rb +78 -20
  69. data/lib/aws-sdk-s3/multipart_stream_uploader.rb +56 -18
  70. data/lib/aws-sdk-s3/multipart_upload.rb +242 -32
  71. data/lib/aws-sdk-s3/multipart_upload_error.rb +2 -0
  72. data/lib/aws-sdk-s3/multipart_upload_part.rb +367 -45
  73. data/lib/aws-sdk-s3/object.rb +2191 -227
  74. data/lib/aws-sdk-s3/object_acl.rb +103 -25
  75. data/lib/aws-sdk-s3/object_copier.rb +9 -5
  76. data/lib/aws-sdk-s3/object_multipart_copier.rb +43 -19
  77. data/lib/aws-sdk-s3/object_summary.rb +1811 -208
  78. data/lib/aws-sdk-s3/object_version.rb +452 -80
  79. data/lib/aws-sdk-s3/plugins/accelerate.rb +17 -64
  80. data/lib/aws-sdk-s3/plugins/arn.rb +70 -0
  81. data/lib/aws-sdk-s3/plugins/bucket_dns.rb +7 -43
  82. data/lib/aws-sdk-s3/plugins/bucket_name_restrictions.rb +20 -3
  83. data/lib/aws-sdk-s3/plugins/dualstack.rb +7 -50
  84. data/lib/aws-sdk-s3/plugins/endpoints.rb +274 -0
  85. data/lib/aws-sdk-s3/plugins/expect_100_continue.rb +5 -4
  86. data/lib/aws-sdk-s3/plugins/express_session_auth.rb +91 -0
  87. data/lib/aws-sdk-s3/plugins/get_bucket_location_fix.rb +3 -1
  88. data/lib/aws-sdk-s3/plugins/http_200_errors.rb +11 -3
  89. data/lib/aws-sdk-s3/plugins/iad_regional_endpoint.rb +44 -0
  90. data/lib/aws-sdk-s3/plugins/location_constraint.rb +5 -1
  91. data/lib/aws-sdk-s3/plugins/md5s.rb +35 -30
  92. data/lib/aws-sdk-s3/plugins/redirects.rb +2 -0
  93. data/lib/aws-sdk-s3/plugins/s3_host_id.rb +2 -0
  94. data/lib/aws-sdk-s3/plugins/s3_signer.rb +56 -92
  95. data/lib/aws-sdk-s3/plugins/skip_whole_multipart_get_checksums.rb +31 -0
  96. data/lib/aws-sdk-s3/plugins/sse_cpk.rb +3 -1
  97. data/lib/aws-sdk-s3/plugins/streaming_retry.rb +139 -0
  98. data/lib/aws-sdk-s3/plugins/url_encoded_keys.rb +2 -0
  99. data/lib/aws-sdk-s3/presigned_post.rb +160 -99
  100. data/lib/aws-sdk-s3/presigner.rb +171 -80
  101. data/lib/aws-sdk-s3/resource.rb +120 -8
  102. data/lib/aws-sdk-s3/types.rb +11353 -4225
  103. data/lib/aws-sdk-s3/waiters.rb +67 -1
  104. data/lib/aws-sdk-s3.rb +16 -6
  105. data/sig/bucket.rbs +212 -0
  106. data/sig/bucket_acl.rbs +78 -0
  107. data/sig/bucket_cors.rbs +69 -0
  108. data/sig/bucket_lifecycle.rbs +88 -0
  109. data/sig/bucket_lifecycle_configuration.rbs +111 -0
  110. data/sig/bucket_logging.rbs +76 -0
  111. data/sig/bucket_notification.rbs +114 -0
  112. data/sig/bucket_policy.rbs +59 -0
  113. data/sig/bucket_request_payment.rbs +54 -0
  114. data/sig/bucket_tagging.rbs +65 -0
  115. data/sig/bucket_versioning.rbs +77 -0
  116. data/sig/bucket_website.rbs +93 -0
  117. data/sig/client.rbs +2360 -0
  118. data/sig/errors.rbs +34 -0
  119. data/sig/multipart_upload.rbs +110 -0
  120. data/sig/multipart_upload_part.rbs +105 -0
  121. data/sig/object.rbs +436 -0
  122. data/sig/object_acl.rbs +86 -0
  123. data/sig/object_summary.rbs +334 -0
  124. data/sig/object_version.rbs +131 -0
  125. data/sig/resource.rbs +124 -0
  126. data/sig/types.rbs +2562 -0
  127. data/sig/waiters.rbs +83 -0
  128. metadata +68 -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,20 +1,27 @@
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
15
  require_relative 'aws-sdk-s3/types'
13
16
  require_relative 'aws-sdk-s3/client_api'
17
+ require_relative 'aws-sdk-s3/plugins/endpoints.rb'
14
18
  require_relative 'aws-sdk-s3/client'
15
19
  require_relative 'aws-sdk-s3/errors'
16
20
  require_relative 'aws-sdk-s3/waiters'
17
21
  require_relative 'aws-sdk-s3/resource'
22
+ require_relative 'aws-sdk-s3/endpoint_parameters'
23
+ require_relative 'aws-sdk-s3/endpoint_provider'
24
+ require_relative 'aws-sdk-s3/endpoints'
18
25
  require_relative 'aws-sdk-s3/bucket'
19
26
  require_relative 'aws-sdk-s3/bucket_acl'
20
27
  require_relative 'aws-sdk-s3/bucket_cors'
@@ -45,24 +52,27 @@ require_relative 'aws-sdk-s3/event_streams'
45
52
  # methods each accept a hash of request parameters and return a response
46
53
  # structure.
47
54
  #
55
+ # s3 = Aws::S3::Client.new
56
+ # resp = s3.abort_multipart_upload(params)
57
+ #
48
58
  # See {Client} for more information.
49
59
  #
50
60
  # # Errors
51
61
  #
52
- # Errors returned from Amazon Simple Storage Service all
53
- # extend {Errors::ServiceError}.
62
+ # Errors returned from Amazon Simple Storage Service are defined in the
63
+ # {Errors} module and all extend {Errors::ServiceError}.
54
64
  #
55
65
  # begin
56
66
  # # do stuff
57
67
  # rescue Aws::S3::Errors::ServiceError
58
- # # rescues all service API errors
68
+ # # rescues all Amazon Simple Storage Service API errors
59
69
  # end
60
70
  #
61
71
  # See {Errors} for more information.
62
72
  #
63
- # @service
73
+ # @!group service
64
74
  module Aws::S3
65
75
 
66
- GEM_VERSION = '1.45.0'
76
+ GEM_VERSION = '1.143.0'
67
77
 
68
78
  end
data/sig/bucket.rbs ADDED
@@ -0,0 +1,212 @@
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
+ def client: () -> Client
24
+
25
+
26
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#data-instance_method
27
+ def data: () -> Types::Bucket
28
+
29
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#data_loaded?-instance_method
30
+ def data_loaded?: () -> bool
31
+
32
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#exists?-instance_method
33
+ def exists?: (?max_attempts: Integer, ?delay: Numeric, ?before_attempt: (^(Integer attempts) -> void), ?before_wait: (^(Integer attempts, untyped response) -> void)) -> bool
34
+ | (?Hash[Symbol, untyped]) -> bool
35
+
36
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#wait_until_exists-instance_method
37
+ 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
38
+ | (?Hash[Symbol, untyped]) ?{ (untyped waiter) -> void } -> Bucket
39
+
40
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#wait_until_not_exists-instance_method
41
+ 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
42
+ | (?Hash[Symbol, untyped]) ?{ (untyped waiter) -> void } -> Bucket
43
+
44
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#create-instance_method
45
+ def create: (
46
+ ?acl: ("private" | "public-read" | "public-read-write" | "authenticated-read"),
47
+ ?create_bucket_configuration: {
48
+ 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" | "ca-central-1" | "cn-north-1" | "cn-northwest-1" | "EU" | "eu-central-1" | "eu-north-1" | "eu-south-1" | "eu-south-2" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "me-south-1" | "sa-east-1" | "us-east-2" | "us-gov-east-1" | "us-gov-west-1" | "us-west-1" | "us-west-2")?,
49
+ location: {
50
+ type: ("AvailabilityZone")?,
51
+ name: ::String?
52
+ }?,
53
+ bucket: {
54
+ data_redundancy: ("SingleAvailabilityZone")?,
55
+ type: ("Directory")?
56
+ }?
57
+ },
58
+ ?grant_full_control: ::String,
59
+ ?grant_read: ::String,
60
+ ?grant_read_acp: ::String,
61
+ ?grant_write: ::String,
62
+ ?grant_write_acp: ::String,
63
+ ?object_lock_enabled_for_bucket: bool,
64
+ ?object_ownership: ("BucketOwnerPreferred" | "ObjectWriter" | "BucketOwnerEnforced")
65
+ ) -> Types::CreateBucketOutput
66
+ | (?Hash[Symbol, untyped]) -> Types::CreateBucketOutput
67
+
68
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#delete-instance_method
69
+ def delete: (
70
+ ?expected_bucket_owner: ::String
71
+ ) -> ::Aws::EmptyStructure
72
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
73
+
74
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#delete_objects-instance_method
75
+ def delete_objects: (
76
+ delete: {
77
+ objects: Array[
78
+ {
79
+ key: ::String,
80
+ version_id: ::String?
81
+ },
82
+ ],
83
+ quiet: bool?
84
+ },
85
+ ?mfa: ::String,
86
+ ?request_payer: ("requester"),
87
+ ?bypass_governance_retention: bool,
88
+ ?expected_bucket_owner: ::String,
89
+ ?checksum_algorithm: ("CRC32" | "CRC32C" | "SHA1" | "SHA256")
90
+ ) -> Types::DeleteObjectsOutput
91
+ | (?Hash[Symbol, untyped]) -> Types::DeleteObjectsOutput
92
+
93
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#put_object-instance_method
94
+ def put_object: (
95
+ ?acl: ("private" | "public-read" | "public-read-write" | "authenticated-read" | "aws-exec-read" | "bucket-owner-read" | "bucket-owner-full-control"),
96
+ ?body: ::String | ::StringIO | ::File,
97
+ ?cache_control: ::String,
98
+ ?content_disposition: ::String,
99
+ ?content_encoding: ::String,
100
+ ?content_language: ::String,
101
+ ?content_length: ::Integer,
102
+ ?content_md5: ::String,
103
+ ?content_type: ::String,
104
+ ?checksum_algorithm: ("CRC32" | "CRC32C" | "SHA1" | "SHA256"),
105
+ ?checksum_crc32: ::String,
106
+ ?checksum_crc32c: ::String,
107
+ ?checksum_sha1: ::String,
108
+ ?checksum_sha256: ::String,
109
+ ?expires: ::Time,
110
+ ?grant_full_control: ::String,
111
+ ?grant_read: ::String,
112
+ ?grant_read_acp: ::String,
113
+ ?grant_write_acp: ::String,
114
+ key: ::String,
115
+ ?metadata: Hash[::String, ::String],
116
+ ?server_side_encryption: ("AES256" | "aws:kms" | "aws:kms:dsse"),
117
+ ?storage_class: ("STANDARD" | "REDUCED_REDUNDANCY" | "STANDARD_IA" | "ONEZONE_IA" | "INTELLIGENT_TIERING" | "GLACIER" | "DEEP_ARCHIVE" | "OUTPOSTS" | "GLACIER_IR" | "SNOW" | "EXPRESS_ONEZONE"),
118
+ ?website_redirect_location: ::String,
119
+ ?sse_customer_algorithm: ::String,
120
+ ?sse_customer_key: ::String,
121
+ ?sse_customer_key_md5: ::String,
122
+ ?ssekms_key_id: ::String,
123
+ ?ssekms_encryption_context: ::String,
124
+ ?bucket_key_enabled: bool,
125
+ ?request_payer: ("requester"),
126
+ ?tagging: ::String,
127
+ ?object_lock_mode: ("GOVERNANCE" | "COMPLIANCE"),
128
+ ?object_lock_retain_until_date: ::Time,
129
+ ?object_lock_legal_hold_status: ("ON" | "OFF"),
130
+ ?expected_bucket_owner: ::String
131
+ ) -> Object
132
+ | (?Hash[Symbol, untyped]) -> Object
133
+
134
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#acl-instance_method
135
+ def acl: () -> BucketAcl
136
+
137
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#cors-instance_method
138
+ def cors: () -> BucketCors
139
+
140
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#lifecycle-instance_method
141
+ def lifecycle: () -> BucketLifecycle
142
+
143
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#lifecycle_configuration-instance_method
144
+ def lifecycle_configuration: () -> BucketLifecycleConfiguration
145
+
146
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#logging-instance_method
147
+ def logging: () -> BucketLogging
148
+
149
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#multipart_uploads-instance_method
150
+ def multipart_uploads: (
151
+ ?delimiter: ::String,
152
+ ?encoding_type: ("url"),
153
+ ?key_marker: ::String,
154
+ ?prefix: ::String,
155
+ ?upload_id_marker: ::String,
156
+ ?expected_bucket_owner: ::String,
157
+ ?request_payer: ("requester")
158
+ ) -> MultipartUpload::Collection
159
+ | (?Hash[Symbol, untyped]) -> MultipartUpload::Collection
160
+
161
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#notification-instance_method
162
+ def notification: () -> BucketNotification
163
+
164
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#object-instance_method
165
+ def object: (String key) -> Object
166
+
167
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#object_versions-instance_method
168
+ def object_versions: (
169
+ ?delimiter: ::String,
170
+ ?encoding_type: ("url"),
171
+ ?key_marker: ::String,
172
+ ?prefix: ::String,
173
+ ?version_id_marker: ::String,
174
+ ?expected_bucket_owner: ::String,
175
+ ?request_payer: ("requester"),
176
+ ?optional_object_attributes: Array[("RestoreStatus")]
177
+ ) -> ObjectVersion::Collection
178
+ | (?Hash[Symbol, untyped]) -> ObjectVersion::Collection
179
+
180
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#objects-instance_method
181
+ def objects: (
182
+ ?delimiter: ::String,
183
+ ?encoding_type: ("url"),
184
+ ?prefix: ::String,
185
+ ?fetch_owner: bool,
186
+ ?start_after: ::String,
187
+ ?request_payer: ("requester"),
188
+ ?expected_bucket_owner: ::String,
189
+ ?optional_object_attributes: Array[("RestoreStatus")]
190
+ ) -> ObjectSummary::Collection
191
+ | (?Hash[Symbol, untyped]) -> ObjectSummary::Collection
192
+
193
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#policy-instance_method
194
+ def policy: () -> BucketPolicy
195
+
196
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#request_payment-instance_method
197
+ def request_payment: () -> BucketRequestPayment
198
+
199
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#tagging-instance_method
200
+ def tagging: () -> BucketTagging
201
+
202
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#versioning-instance_method
203
+ def versioning: () -> BucketVersioning
204
+
205
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Bucket.html#website-instance_method
206
+ def website: () -> BucketWebsite
207
+
208
+ class Collection < ::Aws::Resources::Collection[Bucket]
209
+ end
210
+ end
211
+ end
212
+ 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"),
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"),
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"),
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