aws-sdk-s3 1.116.0 → 1.117.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.
data/lib/aws-sdk-s3.rb CHANGED
@@ -14,10 +14,14 @@ require 'aws-sdk-core'
14
14
 
15
15
  require_relative 'aws-sdk-s3/types'
16
16
  require_relative 'aws-sdk-s3/client_api'
17
+ require_relative 'aws-sdk-s3/plugins/endpoints.rb'
17
18
  require_relative 'aws-sdk-s3/client'
18
19
  require_relative 'aws-sdk-s3/errors'
19
20
  require_relative 'aws-sdk-s3/waiters'
20
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'
21
25
  require_relative 'aws-sdk-s3/bucket'
22
26
  require_relative 'aws-sdk-s3/bucket_acl'
23
27
  require_relative 'aws-sdk-s3/bucket_cors'
@@ -69,6 +73,6 @@ require_relative 'aws-sdk-s3/event_streams'
69
73
  # @!group service
70
74
  module Aws::S3
71
75
 
72
- GEM_VERSION = '1.116.0'
76
+ GEM_VERSION = '1.117.0'
73
77
 
74
78
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-s3
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.116.0
4
+ version: 1.117.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-10-21 00:00:00.000000000 Z
11
+ date: 2022-10-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-kms
@@ -47,7 +47,7 @@ dependencies:
47
47
  version: '3'
48
48
  - - ">="
49
49
  - !ruby/object:Gem::Version
50
- version: 3.127.0
50
+ version: 3.165.0
51
51
  type: :runtime
52
52
  prerelease: false
53
53
  version_requirements: !ruby/object:Gem::Requirement
@@ -57,7 +57,7 @@ dependencies:
57
57
  version: '3'
58
58
  - - ">="
59
59
  - !ruby/object:Gem::Version
60
- version: 3.127.0
60
+ version: 3.165.0
61
61
  description: Official AWS Ruby gem for Amazon Simple Storage Service (Amazon S3).
62
62
  This gem is part of the AWS SDK for Ruby.
63
63
  email:
@@ -70,10 +70,6 @@ files:
70
70
  - LICENSE.txt
71
71
  - VERSION
72
72
  - lib/aws-sdk-s3.rb
73
- - lib/aws-sdk-s3/arn/access_point_arn.rb
74
- - lib/aws-sdk-s3/arn/multi_region_access_point_arn.rb
75
- - lib/aws-sdk-s3/arn/object_lambda_arn.rb
76
- - lib/aws-sdk-s3/arn/outpost_access_point_arn.rb
77
73
  - lib/aws-sdk-s3/bucket.rb
78
74
  - lib/aws-sdk-s3/bucket_acl.rb
79
75
  - lib/aws-sdk-s3/bucket_cors.rb
@@ -123,6 +119,9 @@ files:
123
119
  - lib/aws-sdk-s3/encryptionV2/materials.rb
124
120
  - lib/aws-sdk-s3/encryptionV2/utils.rb
125
121
  - lib/aws-sdk-s3/encryption_v2.rb
122
+ - lib/aws-sdk-s3/endpoint_parameters.rb
123
+ - lib/aws-sdk-s3/endpoint_provider.rb
124
+ - lib/aws-sdk-s3/endpoints.rb
126
125
  - lib/aws-sdk-s3/errors.rb
127
126
  - lib/aws-sdk-s3/event_streams.rb
128
127
  - lib/aws-sdk-s3/file_downloader.rb
@@ -145,13 +144,13 @@ files:
145
144
  - lib/aws-sdk-s3/plugins/bucket_dns.rb
146
145
  - lib/aws-sdk-s3/plugins/bucket_name_restrictions.rb
147
146
  - lib/aws-sdk-s3/plugins/dualstack.rb
147
+ - lib/aws-sdk-s3/plugins/endpoints.rb
148
148
  - lib/aws-sdk-s3/plugins/expect_100_continue.rb
149
149
  - lib/aws-sdk-s3/plugins/get_bucket_location_fix.rb
150
150
  - lib/aws-sdk-s3/plugins/http_200_errors.rb
151
151
  - lib/aws-sdk-s3/plugins/iad_regional_endpoint.rb
152
152
  - lib/aws-sdk-s3/plugins/location_constraint.rb
153
153
  - lib/aws-sdk-s3/plugins/md5s.rb
154
- - lib/aws-sdk-s3/plugins/object_lambda_endpoint.rb
155
154
  - lib/aws-sdk-s3/plugins/redirects.rb
156
155
  - lib/aws-sdk-s3/plugins/s3_host_id.rb
157
156
  - lib/aws-sdk-s3/plugins/s3_signer.rb
@@ -1,69 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Aws
4
- module S3
5
- # @api private
6
- class AccessPointARN < Aws::ARN
7
- def initialize(options)
8
- super(options)
9
- @type, @access_point_name, @extra = @resource.split(/[:,\/]/)
10
- end
11
-
12
- def support_dualstack?
13
- true
14
- end
15
-
16
- def support_fips?
17
- true
18
- end
19
-
20
- def validate_arn!
21
- unless @service == 's3'
22
- raise ArgumentError, 'Must provide a valid S3 Access Point ARN.'
23
- end
24
-
25
- if @region.empty? || @account_id.empty?
26
- raise ArgumentError,
27
- 'S3 Access Point ARNs must contain both a region '\
28
- 'and an account ID.'
29
- end
30
-
31
- if @region.include?('-fips') || @region.include?('fips-')
32
- raise ArgumentError,
33
- 'S3 Access Point ARNs cannot contain a FIPS region.'
34
- end
35
-
36
- if @type != 'accesspoint'
37
- raise ArgumentError, 'Invalid ARN, resource format is not correct.'
38
- end
39
-
40
- if @access_point_name.nil? || @access_point_name.empty?
41
- raise ArgumentError, 'Missing ARN Access Point name.'
42
- end
43
-
44
- if @extra
45
- raise ArgumentError,
46
- 'ARN Access Point resource must be a single value.'
47
- end
48
-
49
- unless Seahorse::Util.host_label?(
50
- "#{@access_point_name}-#{@account_id}"
51
- )
52
- raise ArgumentError,
53
- "#{@access_point_name}-#{@account_id} is not a valid "\
54
- 'host label.'
55
- end
56
- end
57
-
58
- def host_url(region, fips = false, dualstack = false, custom_endpoint = nil)
59
- pfx = "#{@access_point_name}-#{@account_id}"
60
- if custom_endpoint
61
- "#{pfx}.#{custom_endpoint}"
62
- else
63
- sfx = Aws::Partitions::EndpointProvider.dns_suffix_for(region, 's3')
64
- "#{pfx}.s3-accesspoint#{'-fips' if fips}#{'.dualstack' if dualstack}.#{region}.#{sfx}"
65
- end
66
- end
67
- end
68
- end
69
- end
@@ -1,68 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Aws
4
- module S3
5
- # @api private
6
- class MultiRegionAccessPointARN < Aws::ARN
7
- def initialize(options)
8
- super(options)
9
- @type, @mrap_alias, @extra = @resource.split(/[:,\/]/)
10
- end
11
-
12
- attr_reader :mrap_alias
13
-
14
- def support_dualstack?
15
- false
16
- end
17
-
18
- def support_fips?
19
- false
20
- end
21
-
22
- def validate_arn!
23
- unless @service == 's3'
24
- raise ArgumentError,
25
- 'Must provide a valid S3 multi-region access point ARN.'
26
- end
27
-
28
- if @account_id.empty?
29
- raise ArgumentError,
30
- 'S3 multi-region access point ARNs must contain '\
31
- 'an account id.'
32
- end
33
-
34
- unless @region.empty?
35
- raise ArgumentError,
36
- 'Multi-region access points must have an empty region.'
37
- end
38
-
39
- if @type != 'accesspoint'
40
- raise ArgumentError, 'Invalid ARN, resource format is not correct'
41
- end
42
-
43
- if @mrap_alias.nil? || @mrap_alias.empty?
44
- raise ArgumentError, 'Missing ARN multi-region access points alias.'
45
- end
46
-
47
- unless @mrap_alias.split('.').all? { |s| Seahorse::Util.host_label?(s) }
48
- raise ArgumentError, "#{@mrap_alias} is not a valid "\
49
- 'multi region access point alias.'
50
- end
51
-
52
- if @extra
53
- raise ArgumentError,
54
- 'ARN access point resource must be a single value.'
55
- end
56
- end
57
-
58
- def host_url(_region, _fips = false, _dualstack = false, custom_endpoint = nil)
59
- if custom_endpoint
60
- "#{@mrap_alias}.#{custom_endpoint}"
61
- else
62
- sfx = Aws::Partitions::EndpointProvider.dns_suffix_for(@partition, 's3')
63
- "#{@mrap_alias}.accesspoint.s3-global.#{sfx}"
64
- end
65
- end
66
- end
67
- end
68
- end
@@ -1,69 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Aws
4
- module S3
5
- # @api private
6
- class ObjectLambdaARN < Aws::ARN
7
- def initialize(options)
8
- super(options)
9
- @type, @access_point_name, @extra = @resource.split(/[:,\/]/)
10
- end
11
-
12
- def support_dualstack?
13
- false
14
- end
15
-
16
- def support_fips?
17
- true
18
- end
19
-
20
- def validate_arn!
21
- unless @service == 's3-object-lambda'
22
- raise ArgumentError, 'Must provide a valid S3 Object Lambda ARN.'
23
- end
24
-
25
- if @region.empty? || @account_id.empty?
26
- raise ArgumentError,
27
- 'S3 Object Lambdas ARNs must contain both a region '\
28
- 'and an account ID.'
29
- end
30
-
31
- if @region.include?('-fips') || @region.include?('fips-')
32
- raise ArgumentError,
33
- 'S3 Object Lambda ARNs cannot contain a FIPS region'
34
- end
35
-
36
- if @type != 'accesspoint'
37
- raise ArgumentError, 'Invalid ARN, resource format is not correct.'
38
- end
39
-
40
- if @access_point_name.nil? || @access_point_name.empty?
41
- raise ArgumentError, 'Missing ARN Access Point name.'
42
- end
43
-
44
- if @extra
45
- raise ArgumentError,
46
- 'ARN Access Point resource must be a single value.'
47
- end
48
-
49
- unless Seahorse::Util.host_label?(
50
- "#{@access_point_name}-#{@account_id}"
51
- )
52
- raise ArgumentError,
53
- "#{@access_point_name}-#{@account_id} is not a valid "\
54
- 'host label.'
55
- end
56
- end
57
-
58
- def host_url(region, fips = false, _dualstack = false, custom_endpoint = nil)
59
- pfx = "#{@access_point_name}-#{@account_id}"
60
- if custom_endpoint
61
- "#{pfx}.#{custom_endpoint}"
62
- else
63
- sfx = Aws::Partitions::EndpointProvider.dns_suffix_for(region, 's3')
64
- "#{pfx}.s3-object-lambda#{'-fips' if fips}.#{region}.#{sfx}"
65
- end
66
- end
67
- end
68
- end
69
- end
@@ -1,74 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Aws
4
- module S3
5
- # @api private
6
- class OutpostAccessPointARN < Aws::ARN
7
- def initialize(options)
8
- super(options)
9
- @type, @outpost_id, @subtype, @access_point_name, @extra =
10
- @resource.split(/[:,\/]/)
11
- end
12
-
13
- def support_dualstack?
14
- false
15
- end
16
-
17
- def support_fips?
18
- false
19
- end
20
-
21
- def validate_arn!
22
- unless @service == 's3-outposts'
23
- raise ArgumentError, 'Must provide a valid S3 Outpost Access '\
24
- 'Point ARN.'
25
- end
26
-
27
- if @region.empty? || @account_id.empty?
28
- raise ArgumentError,
29
- 'S3 Outpost Access Point ARNs must contain both a region '\
30
- 'and an account ID.'
31
- end
32
-
33
- if @type != 'outpost' && @subtype != 'accesspoint'
34
- raise ArgumentError, 'Invalid ARN, resource format is not correct.'
35
- end
36
-
37
- if @outpost_id.nil? || @outpost_id.empty?
38
- raise ArgumentError, 'Missing ARN Outpost ID.'
39
- end
40
-
41
- if @access_point_name.nil? || @access_point_name.empty?
42
- raise ArgumentError, 'Missing ARN Access Point name.'
43
- end
44
-
45
- if @extra
46
- raise ArgumentError,
47
- 'ARN Access Point resource must be a single value.'
48
- end
49
-
50
- unless Seahorse::Util.host_label?(
51
- "#{@access_point_name}-#{@account_id}"
52
- )
53
- raise ArgumentError,
54
- "#{@access_point_name}-#{@account_id} is not a valid "\
55
- 'host label.'
56
- end
57
-
58
- unless Seahorse::Util.host_label?(@outpost_id)
59
- raise ArgumentError, "#{@outpost_id} is not a valid host label."
60
- end
61
- end
62
-
63
- # Outpost ARNs currently do not support dualstack
64
- def host_url(region, _fips = false, _dualstack = false, custom_endpoint = nil)
65
- pfx = "#{@access_point_name}-#{@account_id}.#{@outpost_id}"
66
- if custom_endpoint
67
- "#{pfx}.#{custom_endpoint}"
68
- else
69
- "#{pfx}.s3-outposts.#{region}.amazonaws.com"
70
- end
71
- end
72
- end
73
- end
74
- end
@@ -1,25 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Aws
4
- module S3
5
- module Plugins
6
- # WriteGetObjectResponse is called from Lambda after a data transform.
7
- # If there is no custom endpoint, we change the endpoint from s3 to
8
- # s3-object-lambda just for this operation.
9
- class ObjectLambdaEndpoint < Seahorse::Client::Plugin
10
- class Handler < Seahorse::Client::Handler
11
- def call(context)
12
- if context.config.regional_endpoint
13
- host = context.http_request.endpoint.host
14
- host = host.sub('s3.', 's3-object-lambda.')
15
- context.http_request.endpoint.host = host
16
- end
17
- @handler.call(context)
18
- end
19
- end
20
-
21
- handler(Handler, operations: [:write_get_object_response])
22
- end
23
- end
24
- end
25
- end