aws-sdk-s3 1.48.0 → 1.169.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (134) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGELOG.md +1270 -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 +959 -106
  8. data/lib/aws-sdk-s3/bucket_acl.rb +64 -18
  9. data/lib/aws-sdk-s3/bucket_cors.rb +79 -18
  10. data/lib/aws-sdk-s3/bucket_lifecycle.rb +66 -20
  11. data/lib/aws-sdk-s3/bucket_lifecycle_configuration.rb +106 -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 +107 -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 +13765 -1019
  21. data/lib/aws-sdk-s3/client_api.rb +1137 -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 +592 -0
  61. data/lib/aws-sdk-s3/endpoints.rb +1392 -0
  62. data/lib/aws-sdk-s3/errors.rb +126 -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 +176 -44
  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 +82 -23
  71. data/lib/aws-sdk-s3/multipart_stream_uploader.rb +61 -21
  72. data/lib/aws-sdk-s3/multipart_upload.rb +265 -32
  73. data/lib/aws-sdk-s3/multipart_upload_error.rb +2 -0
  74. data/lib/aws-sdk-s3/multipart_upload_part.rb +367 -45
  75. data/lib/aws-sdk-s3/object.rb +2475 -228
  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 +2075 -203
  80. data/lib/aws-sdk-s3/object_version.rb +492 -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/dualstack.rb +7 -50
  87. data/lib/aws-sdk-s3/plugins/endpoints.rb +86 -0
  88. data/lib/aws-sdk-s3/plugins/expect_100_continue.rb +5 -4
  89. data/lib/aws-sdk-s3/plugins/express_session_auth.rb +97 -0
  90. data/lib/aws-sdk-s3/plugins/get_bucket_location_fix.rb +3 -1
  91. data/lib/aws-sdk-s3/plugins/http_200_errors.rb +60 -15
  92. data/lib/aws-sdk-s3/plugins/iad_regional_endpoint.rb +44 -0
  93. data/lib/aws-sdk-s3/plugins/location_constraint.rb +5 -1
  94. data/lib/aws-sdk-s3/plugins/md5s.rb +35 -30
  95. data/lib/aws-sdk-s3/plugins/redirects.rb +2 -0
  96. data/lib/aws-sdk-s3/plugins/s3_host_id.rb +2 -0
  97. data/lib/aws-sdk-s3/plugins/s3_signer.rb +63 -94
  98. data/lib/aws-sdk-s3/plugins/skip_whole_multipart_get_checksums.rb +31 -0
  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 +138 -59
  104. data/lib/aws-sdk-s3/resource.rb +155 -17
  105. data/lib/aws-sdk-s3/types.rb +12229 -4377
  106. data/lib/aws-sdk-s3/waiters.rb +67 -1
  107. data/lib/aws-sdk-s3.rb +46 -32
  108. data/sig/bucket.rbs +216 -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 +2406 -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 +34 -0
  125. data/sig/multipart_upload.rbs +111 -0
  126. data/sig/multipart_upload_part.rbs +105 -0
  127. data/sig/object.rbs +443 -0
  128. data/sig/object_acl.rbs +86 -0
  129. data/sig/object_summary.rbs +335 -0
  130. data/sig/object_version.rbs +137 -0
  131. data/sig/resource.rbs +132 -0
  132. data/sig/types.rbs +2596 -0
  133. data/sig/waiters.rbs +95 -0
  134. metadata +74 -15
@@ -0,0 +1,115 @@
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/BucketLifecycleConfiguration.html
11
+ class BucketLifecycleConfiguration
12
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLifecycleConfiguration.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/BucketLifecycleConfiguration.html#bucket_name-instance_method
18
+ def bucket_name: () -> String
19
+
20
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLifecycleConfiguration.html#rules-instance_method
21
+ def rules: () -> ::Array[Types::LifecycleRule]
22
+
23
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLifecycleConfiguration.html#transition_default_minimum_object_size-instance_method
24
+ def transition_default_minimum_object_size: () -> ("varies_by_storage_class" | "all_storage_classes_128K")
25
+
26
+ def client: () -> Client
27
+
28
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLifecycleConfiguration.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/BucketLifecycleConfiguration.html#data-instance_method
33
+ def data: () -> Types::GetBucketLifecycleConfigurationOutput
34
+
35
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLifecycleConfiguration.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/BucketLifecycleConfiguration.html#delete-instance_method
40
+ def delete: (
41
+ ?expected_bucket_owner: ::String
42
+ ) -> ::Aws::EmptyStructure
43
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
44
+
45
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLifecycleConfiguration.html#put-instance_method
46
+ def put: (
47
+ ?checksum_algorithm: ("CRC32" | "CRC32C" | "SHA1" | "SHA256"),
48
+ ?lifecycle_configuration: {
49
+ rules: Array[
50
+ {
51
+ expiration: {
52
+ date: ::Time?,
53
+ days: ::Integer?,
54
+ expired_object_delete_marker: bool?
55
+ }?,
56
+ id: ::String?,
57
+ prefix: ::String?,
58
+ filter: {
59
+ prefix: ::String?,
60
+ tag: {
61
+ key: ::String,
62
+ value: ::String
63
+ }?,
64
+ object_size_greater_than: ::Integer?,
65
+ object_size_less_than: ::Integer?,
66
+ and: {
67
+ prefix: ::String?,
68
+ tags: Array[
69
+ {
70
+ key: ::String,
71
+ value: ::String
72
+ },
73
+ ]?,
74
+ object_size_greater_than: ::Integer?,
75
+ object_size_less_than: ::Integer?
76
+ }?
77
+ }?,
78
+ status: ("Enabled" | "Disabled"),
79
+ transitions: Array[
80
+ {
81
+ date: ::Time?,
82
+ days: ::Integer?,
83
+ storage_class: ("GLACIER" | "STANDARD_IA" | "ONEZONE_IA" | "INTELLIGENT_TIERING" | "DEEP_ARCHIVE" | "GLACIER_IR")?
84
+ },
85
+ ]?,
86
+ noncurrent_version_transitions: Array[
87
+ {
88
+ noncurrent_days: ::Integer?,
89
+ storage_class: ("GLACIER" | "STANDARD_IA" | "ONEZONE_IA" | "INTELLIGENT_TIERING" | "DEEP_ARCHIVE" | "GLACIER_IR")?,
90
+ newer_noncurrent_versions: ::Integer?
91
+ },
92
+ ]?,
93
+ noncurrent_version_expiration: {
94
+ noncurrent_days: ::Integer?,
95
+ newer_noncurrent_versions: ::Integer?
96
+ }?,
97
+ abort_incomplete_multipart_upload: {
98
+ days_after_initiation: ::Integer?
99
+ }?
100
+ },
101
+ ]
102
+ },
103
+ ?expected_bucket_owner: ::String,
104
+ ?transition_default_minimum_object_size: ("varies_by_storage_class" | "all_storage_classes_128K")
105
+ ) -> Types::PutBucketLifecycleConfigurationOutput
106
+ | (?Hash[Symbol, untyped]) -> Types::PutBucketLifecycleConfigurationOutput
107
+
108
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLifecycleConfiguration.html#bucket-instance_method
109
+ def bucket: () -> Bucket
110
+
111
+ class Collection < ::Aws::Resources::Collection[BucketLifecycleConfiguration]
112
+ end
113
+ end
114
+ end
115
+ end
@@ -0,0 +1,76 @@
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/BucketLogging.html
11
+ class BucketLogging
12
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLogging.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/BucketLogging.html#bucket_name-instance_method
18
+ def bucket_name: () -> String
19
+
20
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLogging.html#logging_enabled-instance_method
21
+ def logging_enabled: () -> Types::LoggingEnabled
22
+
23
+ def client: () -> Client
24
+
25
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLogging.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/BucketLogging.html#data-instance_method
30
+ def data: () -> Types::GetBucketLoggingOutput
31
+
32
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLogging.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/BucketLogging.html#put-instance_method
37
+ def put: (
38
+ bucket_logging_status: {
39
+ logging_enabled: {
40
+ target_bucket: ::String,
41
+ target_grants: Array[
42
+ {
43
+ grantee: {
44
+ display_name: ::String?,
45
+ email_address: ::String?,
46
+ id: ::String?,
47
+ type: ("CanonicalUser" | "AmazonCustomerByEmail" | "Group"),
48
+ uri: ::String?
49
+ }?,
50
+ permission: ("FULL_CONTROL" | "READ" | "WRITE")?
51
+ },
52
+ ]?,
53
+ target_prefix: ::String,
54
+ target_object_key_format: {
55
+ simple_prefix: {
56
+ }?,
57
+ partitioned_prefix: {
58
+ partition_date_source: ("EventTime" | "DeliveryTime")?
59
+ }?
60
+ }?
61
+ }?
62
+ },
63
+ ?content_md5: ::String,
64
+ ?checksum_algorithm: ("CRC32" | "CRC32C" | "SHA1" | "SHA256"),
65
+ ?expected_bucket_owner: ::String
66
+ ) -> ::Aws::EmptyStructure
67
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
68
+
69
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLogging.html#bucket-instance_method
70
+ def bucket: () -> Bucket
71
+
72
+ class Collection < ::Aws::Resources::Collection[BucketLogging]
73
+ end
74
+ end
75
+ end
76
+ end
@@ -0,0 +1,114 @@
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/BucketNotification.html
11
+ class BucketNotification
12
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketNotification.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/BucketNotification.html#bucket_name-instance_method
18
+ def bucket_name: () -> String
19
+
20
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketNotification.html#topic_configurations-instance_method
21
+ def topic_configurations: () -> ::Array[Types::TopicConfiguration]
22
+
23
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketNotification.html#queue_configurations-instance_method
24
+ def queue_configurations: () -> ::Array[Types::QueueConfiguration]
25
+
26
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketNotification.html#lambda_function_configurations-instance_method
27
+ def lambda_function_configurations: () -> ::Array[Types::LambdaFunctionConfiguration]
28
+
29
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketNotification.html#event_bridge_configuration-instance_method
30
+ def event_bridge_configuration: () -> Types::EventBridgeConfiguration
31
+
32
+ def client: () -> Client
33
+
34
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketNotification.html#load-instance_method
35
+ def load: () -> self
36
+ alias reload load
37
+
38
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketNotification.html#data-instance_method
39
+ def data: () -> Types::NotificationConfiguration
40
+
41
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketNotification.html#data_loaded?-instance_method
42
+ def data_loaded?: () -> bool
43
+
44
+
45
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketNotification.html#put-instance_method
46
+ def put: (
47
+ notification_configuration: {
48
+ topic_configurations: Array[
49
+ {
50
+ id: ::String?,
51
+ topic_arn: ::String,
52
+ events: Array[("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:*" | "s3:ObjectRestore:Post" | "s3:ObjectRestore:Completed" | "s3:Replication:*" | "s3:Replication:OperationFailedReplication" | "s3:Replication:OperationNotTracked" | "s3:Replication:OperationMissedThreshold" | "s3:Replication:OperationReplicatedAfterThreshold" | "s3:ObjectRestore:Delete" | "s3:LifecycleTransition" | "s3:IntelligentTiering" | "s3:ObjectAcl:Put" | "s3:LifecycleExpiration:*" | "s3:LifecycleExpiration:Delete" | "s3:LifecycleExpiration:DeleteMarkerCreated" | "s3:ObjectTagging:*" | "s3:ObjectTagging:Put" | "s3:ObjectTagging:Delete")],
53
+ filter: {
54
+ key: {
55
+ filter_rules: Array[
56
+ {
57
+ name: ("prefix" | "suffix")?,
58
+ value: ::String?
59
+ },
60
+ ]?
61
+ }?
62
+ }?
63
+ },
64
+ ]?,
65
+ queue_configurations: Array[
66
+ {
67
+ id: ::String?,
68
+ queue_arn: ::String,
69
+ events: Array[("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:*" | "s3:ObjectRestore:Post" | "s3:ObjectRestore:Completed" | "s3:Replication:*" | "s3:Replication:OperationFailedReplication" | "s3:Replication:OperationNotTracked" | "s3:Replication:OperationMissedThreshold" | "s3:Replication:OperationReplicatedAfterThreshold" | "s3:ObjectRestore:Delete" | "s3:LifecycleTransition" | "s3:IntelligentTiering" | "s3:ObjectAcl:Put" | "s3:LifecycleExpiration:*" | "s3:LifecycleExpiration:Delete" | "s3:LifecycleExpiration:DeleteMarkerCreated" | "s3:ObjectTagging:*" | "s3:ObjectTagging:Put" | "s3:ObjectTagging:Delete")],
70
+ filter: {
71
+ key: {
72
+ filter_rules: Array[
73
+ {
74
+ name: ("prefix" | "suffix")?,
75
+ value: ::String?
76
+ },
77
+ ]?
78
+ }?
79
+ }?
80
+ },
81
+ ]?,
82
+ lambda_function_configurations: Array[
83
+ {
84
+ id: ::String?,
85
+ lambda_function_arn: ::String,
86
+ events: Array[("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:*" | "s3:ObjectRestore:Post" | "s3:ObjectRestore:Completed" | "s3:Replication:*" | "s3:Replication:OperationFailedReplication" | "s3:Replication:OperationNotTracked" | "s3:Replication:OperationMissedThreshold" | "s3:Replication:OperationReplicatedAfterThreshold" | "s3:ObjectRestore:Delete" | "s3:LifecycleTransition" | "s3:IntelligentTiering" | "s3:ObjectAcl:Put" | "s3:LifecycleExpiration:*" | "s3:LifecycleExpiration:Delete" | "s3:LifecycleExpiration:DeleteMarkerCreated" | "s3:ObjectTagging:*" | "s3:ObjectTagging:Put" | "s3:ObjectTagging:Delete")],
87
+ filter: {
88
+ key: {
89
+ filter_rules: Array[
90
+ {
91
+ name: ("prefix" | "suffix")?,
92
+ value: ::String?
93
+ },
94
+ ]?
95
+ }?
96
+ }?
97
+ },
98
+ ]?,
99
+ event_bridge_configuration: {
100
+ }?
101
+ },
102
+ ?expected_bucket_owner: ::String,
103
+ ?skip_destination_validation: bool
104
+ ) -> ::Aws::EmptyStructure
105
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
106
+
107
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketNotification.html#bucket-instance_method
108
+ def bucket: () -> Bucket
109
+
110
+ class Collection < ::Aws::Resources::Collection[BucketNotification]
111
+ end
112
+ end
113
+ end
114
+ end
@@ -0,0 +1,59 @@
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/BucketPolicy.html
11
+ class BucketPolicy
12
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketPolicy.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/BucketPolicy.html#bucket_name-instance_method
18
+ def bucket_name: () -> String
19
+
20
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketPolicy.html#policy-instance_method
21
+ def policy: () -> ::IO
22
+
23
+ def client: () -> Client
24
+
25
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketPolicy.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/BucketPolicy.html#data-instance_method
30
+ def data: () -> Types::GetBucketPolicyOutput
31
+
32
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketPolicy.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/BucketPolicy.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/BucketPolicy.html#put-instance_method
43
+ def put: (
44
+ ?content_md5: ::String,
45
+ ?checksum_algorithm: ("CRC32" | "CRC32C" | "SHA1" | "SHA256"),
46
+ ?confirm_remove_self_bucket_access: bool,
47
+ policy: ::String,
48
+ ?expected_bucket_owner: ::String
49
+ ) -> ::Aws::EmptyStructure
50
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
51
+
52
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketPolicy.html#bucket-instance_method
53
+ def bucket: () -> Bucket
54
+
55
+ class Collection < ::Aws::Resources::Collection[BucketPolicy]
56
+ end
57
+ end
58
+ end
59
+ end
@@ -0,0 +1,54 @@
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/BucketRequestPayment.html
11
+ class BucketRequestPayment
12
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketRequestPayment.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/BucketRequestPayment.html#bucket_name-instance_method
18
+ def bucket_name: () -> String
19
+
20
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketRequestPayment.html#payer-instance_method
21
+ def payer: () -> ("Requester" | "BucketOwner")
22
+
23
+ def client: () -> Client
24
+
25
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketRequestPayment.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/BucketRequestPayment.html#data-instance_method
30
+ def data: () -> Types::GetBucketRequestPaymentOutput
31
+
32
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketRequestPayment.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/BucketRequestPayment.html#put-instance_method
37
+ def put: (
38
+ ?content_md5: ::String,
39
+ ?checksum_algorithm: ("CRC32" | "CRC32C" | "SHA1" | "SHA256"),
40
+ request_payment_configuration: {
41
+ payer: ("Requester" | "BucketOwner")
42
+ },
43
+ ?expected_bucket_owner: ::String
44
+ ) -> ::Aws::EmptyStructure
45
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
46
+
47
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketRequestPayment.html#bucket-instance_method
48
+ def bucket: () -> Bucket
49
+
50
+ class Collection < ::Aws::Resources::Collection[BucketRequestPayment]
51
+ end
52
+ end
53
+ end
54
+ end
@@ -0,0 +1,65 @@
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/BucketTagging.html
11
+ class BucketTagging
12
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketTagging.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/BucketTagging.html#bucket_name-instance_method
18
+ def bucket_name: () -> String
19
+
20
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketTagging.html#tag_set-instance_method
21
+ def tag_set: () -> ::Array[Types::Tag]
22
+
23
+ def client: () -> Client
24
+
25
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketTagging.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/BucketTagging.html#data-instance_method
30
+ def data: () -> Types::GetBucketTaggingOutput
31
+
32
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketTagging.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/BucketTagging.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/BucketTagging.html#put-instance_method
43
+ def put: (
44
+ ?content_md5: ::String,
45
+ ?checksum_algorithm: ("CRC32" | "CRC32C" | "SHA1" | "SHA256"),
46
+ tagging: {
47
+ tag_set: Array[
48
+ {
49
+ key: ::String,
50
+ value: ::String
51
+ },
52
+ ]
53
+ },
54
+ ?expected_bucket_owner: ::String
55
+ ) -> ::Aws::EmptyStructure
56
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
57
+
58
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketTagging.html#bucket-instance_method
59
+ def bucket: () -> Bucket
60
+
61
+ class Collection < ::Aws::Resources::Collection[BucketTagging]
62
+ end
63
+ end
64
+ end
65
+ end
@@ -0,0 +1,77 @@
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/BucketVersioning.html
11
+ class BucketVersioning
12
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketVersioning.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/BucketVersioning.html#bucket_name-instance_method
18
+ def bucket_name: () -> String
19
+
20
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketVersioning.html#status-instance_method
21
+ def status: () -> ("Enabled" | "Suspended")
22
+
23
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketVersioning.html#mfa_delete-instance_method
24
+ def mfa_delete: () -> ("Enabled" | "Disabled")
25
+
26
+ def client: () -> Client
27
+
28
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketVersioning.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/BucketVersioning.html#data-instance_method
33
+ def data: () -> Types::GetBucketVersioningOutput
34
+
35
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketVersioning.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/BucketVersioning.html#enable-instance_method
40
+ def enable: (
41
+ ?content_md5: ::String,
42
+ ?checksum_algorithm: ("CRC32" | "CRC32C" | "SHA1" | "SHA256"),
43
+ ?mfa: ::String,
44
+ ?expected_bucket_owner: ::String
45
+ ) -> ::Aws::EmptyStructure
46
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
47
+
48
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketVersioning.html#put-instance_method
49
+ def put: (
50
+ ?content_md5: ::String,
51
+ ?checksum_algorithm: ("CRC32" | "CRC32C" | "SHA1" | "SHA256"),
52
+ ?mfa: ::String,
53
+ versioning_configuration: {
54
+ mfa_delete: ("Enabled" | "Disabled")?,
55
+ status: ("Enabled" | "Suspended")?
56
+ },
57
+ ?expected_bucket_owner: ::String
58
+ ) -> ::Aws::EmptyStructure
59
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
60
+
61
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketVersioning.html#suspend-instance_method
62
+ def suspend: (
63
+ ?content_md5: ::String,
64
+ ?checksum_algorithm: ("CRC32" | "CRC32C" | "SHA1" | "SHA256"),
65
+ ?mfa: ::String,
66
+ ?expected_bucket_owner: ::String
67
+ ) -> ::Aws::EmptyStructure
68
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
69
+
70
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketVersioning.html#bucket-instance_method
71
+ def bucket: () -> Bucket
72
+
73
+ class Collection < ::Aws::Resources::Collection[BucketVersioning]
74
+ end
75
+ end
76
+ end
77
+ end
@@ -0,0 +1,93 @@
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/BucketWebsite.html
11
+ class BucketWebsite
12
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketWebsite.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/BucketWebsite.html#bucket_name-instance_method
18
+ def bucket_name: () -> String
19
+
20
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketWebsite.html#redirect_all_requests_to-instance_method
21
+ def redirect_all_requests_to: () -> Types::RedirectAllRequestsTo
22
+
23
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketWebsite.html#index_document-instance_method
24
+ def index_document: () -> Types::IndexDocument
25
+
26
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketWebsite.html#error_document-instance_method
27
+ def error_document: () -> Types::ErrorDocument
28
+
29
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketWebsite.html#routing_rules-instance_method
30
+ def routing_rules: () -> ::Array[Types::RoutingRule]
31
+
32
+ def client: () -> Client
33
+
34
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketWebsite.html#load-instance_method
35
+ def load: () -> self
36
+ alias reload load
37
+
38
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketWebsite.html#data-instance_method
39
+ def data: () -> Types::GetBucketWebsiteOutput
40
+
41
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketWebsite.html#data_loaded?-instance_method
42
+ def data_loaded?: () -> bool
43
+
44
+
45
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketWebsite.html#delete-instance_method
46
+ def delete: (
47
+ ?expected_bucket_owner: ::String
48
+ ) -> ::Aws::EmptyStructure
49
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
50
+
51
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketWebsite.html#put-instance_method
52
+ def put: (
53
+ ?content_md5: ::String,
54
+ ?checksum_algorithm: ("CRC32" | "CRC32C" | "SHA1" | "SHA256"),
55
+ website_configuration: {
56
+ error_document: {
57
+ key: ::String
58
+ }?,
59
+ index_document: {
60
+ suffix: ::String
61
+ }?,
62
+ redirect_all_requests_to: {
63
+ host_name: ::String,
64
+ protocol: ("http" | "https")?
65
+ }?,
66
+ routing_rules: Array[
67
+ {
68
+ condition: {
69
+ http_error_code_returned_equals: ::String?,
70
+ key_prefix_equals: ::String?
71
+ }?,
72
+ redirect: {
73
+ host_name: ::String?,
74
+ http_redirect_code: ::String?,
75
+ protocol: ("http" | "https")?,
76
+ replace_key_prefix_with: ::String?,
77
+ replace_key_with: ::String?
78
+ }
79
+ },
80
+ ]?
81
+ },
82
+ ?expected_bucket_owner: ::String
83
+ ) -> ::Aws::EmptyStructure
84
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
85
+
86
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketWebsite.html#bucket-instance_method
87
+ def bucket: () -> Bucket
88
+
89
+ class Collection < ::Aws::Resources::Collection[BucketWebsite]
90
+ end
91
+ end
92
+ end
93
+ end