aws-sdk-migrationhubconfig 1.20.0 → 1.22.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b8f22c57332a8606e73d395788eb3fdc18c1aa055d9303649c197a94e774d05a
4
- data.tar.gz: b194cd16e0e60e4e87a2aa39dcf23baa26a9c655c560db4e4d1524525bb9f831
3
+ metadata.gz: 83207f46ae01e0f94bf87449cc9311a471b8cc40f60e7c87051e1c3c24f381a8
4
+ data.tar.gz: 95f3bbcbb42a035c64c94063911a09032bebedc8cc74a13d7c5df628deb86dc3
5
5
  SHA512:
6
- metadata.gz: f9b73e0608169481217257d1b34717511b2e6d395bebb9198632d03c74582e4ed636f729326812fd405fb59d255408111e457fc1006ce89cfefc29d87b8388f6
7
- data.tar.gz: cf3f0754a0c61f2575d0e2f1da56b8807cc2c059dd4e91a78fbe0fd0d2a14e038df7ef903c9bba52aefcbcd07ffa5eca4d8c0b23506ec4f1106feca6fbf024f7
6
+ metadata.gz: df950102e20434b6f79f120603e4cad75fa58d0866fb82f8ecb3b91bdd36954fc5906dc18d572a2c2c8f2bec4dce8022a2bdef2b67dc09a3dc8c6c2f08ace8d7
7
+ data.tar.gz: 034ba5f839214eb18bc25723a2c7d08fd6ad197489c0ee7711c478bdebb7f6319296dbae0eeb2dfc431c818edb00160965cbf320ec1f6b549cfd08efd96b9ef1
data/CHANGELOG.md CHANGED
@@ -1,6 +1,18 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.22.0 (2023-01-18)
5
+ ------------------
6
+
7
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
8
+
9
+ * Issue - Replace runtime endpoint resolution approach with generated ruby code.
10
+
11
+ 1.21.0 (2022-10-25)
12
+ ------------------
13
+
14
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
15
+
4
16
  1.20.0 (2022-02-24)
5
17
  ------------------
6
18
 
@@ -110,4 +122,4 @@ Unreleased Changes
110
122
  1.0.0 (2019-11-20)
111
123
  ------------------
112
124
 
113
- * Feature - Initial release of `aws-sdk-migrationhubconfig`.
125
+ * Feature - Initial release of `aws-sdk-migrationhubconfig`.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.20.0
1
+ 1.22.0
@@ -30,7 +30,7 @@ require 'aws-sdk-core/plugins/http_checksum.rb'
30
30
  require 'aws-sdk-core/plugins/checksum_algorithm.rb'
31
31
  require 'aws-sdk-core/plugins/defaults_mode.rb'
32
32
  require 'aws-sdk-core/plugins/recursion_detection.rb'
33
- require 'aws-sdk-core/plugins/signature_v4.rb'
33
+ require 'aws-sdk-core/plugins/sign.rb'
34
34
  require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
35
35
 
36
36
  Aws::Plugins::GlobalConfiguration.add_identifier(:migrationhubconfig)
@@ -79,8 +79,9 @@ module Aws::MigrationHubConfig
79
79
  add_plugin(Aws::Plugins::ChecksumAlgorithm)
80
80
  add_plugin(Aws::Plugins::DefaultsMode)
81
81
  add_plugin(Aws::Plugins::RecursionDetection)
82
- add_plugin(Aws::Plugins::SignatureV4)
82
+ add_plugin(Aws::Plugins::Sign)
83
83
  add_plugin(Aws::Plugins::Protocols::JsonRpc)
84
+ add_plugin(Aws::MigrationHubConfig::Plugins::Endpoints)
84
85
 
85
86
  # @overload initialize(options)
86
87
  # @param [Hash] options
@@ -297,6 +298,19 @@ module Aws::MigrationHubConfig
297
298
  # ** Please note ** When response stubbing is enabled, no HTTP
298
299
  # requests are made, and retries are disabled.
299
300
  #
301
+ # @option options [Aws::TokenProvider] :token_provider
302
+ # A Bearer Token Provider. This can be an instance of any one of the
303
+ # following classes:
304
+ #
305
+ # * `Aws::StaticTokenProvider` - Used for configuring static, non-refreshing
306
+ # tokens.
307
+ #
308
+ # * `Aws::SSOTokenProvider` - Used for loading tokens from AWS SSO using an
309
+ # access token generated from `aws login`.
310
+ #
311
+ # When `:token_provider` is not configured directly, the `Aws::TokenProviderChain`
312
+ # will be used to search for tokens configured for your profile in shared configuration files.
313
+ #
300
314
  # @option options [Boolean] :use_dualstack_endpoint
301
315
  # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
302
316
  # will be used if available.
@@ -310,6 +324,9 @@ module Aws::MigrationHubConfig
310
324
  # When `true`, request parameters are validated before
311
325
  # sending the request.
312
326
  #
327
+ # @option options [Aws::MigrationHubConfig::EndpointProvider] :endpoint_provider
328
+ # The endpoint provider used to resolve endpoints. Any object that responds to `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::MigrationHubConfig::EndpointParameters`
329
+ #
313
330
  # @option options [URI::HTTP,String] :http_proxy A proxy to send
314
331
  # requests through. Formatted like 'http://proxy.com:123'.
315
332
  #
@@ -504,7 +521,7 @@ module Aws::MigrationHubConfig
504
521
  params: params,
505
522
  config: config)
506
523
  context[:gem_name] = 'aws-sdk-migrationhubconfig'
507
- context[:gem_version] = '1.20.0'
524
+ context[:gem_version] = '1.22.0'
508
525
  Seahorse::Client::Request.new(handlers, context)
509
526
  end
510
527
 
@@ -0,0 +1,66 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::MigrationHubConfig
11
+ # Endpoint parameters used to influence endpoints per request.
12
+ #
13
+ # @!attribute region
14
+ # The AWS region used to dispatch the request.
15
+ #
16
+ # @return [String]
17
+ #
18
+ # @!attribute use_dual_stack
19
+ # When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.
20
+ #
21
+ # @return [Boolean]
22
+ #
23
+ # @!attribute use_fips
24
+ # When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.
25
+ #
26
+ # @return [Boolean]
27
+ #
28
+ # @!attribute endpoint
29
+ # Override the endpoint used to send this request
30
+ #
31
+ # @return [String]
32
+ #
33
+ EndpointParameters = Struct.new(
34
+ :region,
35
+ :use_dual_stack,
36
+ :use_fips,
37
+ :endpoint,
38
+ ) do
39
+ include Aws::Structure
40
+
41
+ # @api private
42
+ class << self
43
+ PARAM_MAP = {
44
+ 'Region' => :region,
45
+ 'UseDualStack' => :use_dual_stack,
46
+ 'UseFIPS' => :use_fips,
47
+ 'Endpoint' => :endpoint,
48
+ }.freeze
49
+ end
50
+
51
+ def initialize(options = {})
52
+ self[:region] = options[:region]
53
+ self[:use_dual_stack] = options[:use_dual_stack]
54
+ self[:use_dual_stack] = false if self[:use_dual_stack].nil?
55
+ if self[:use_dual_stack].nil?
56
+ raise ArgumentError, "Missing required EndpointParameter: :use_dual_stack"
57
+ end
58
+ self[:use_fips] = options[:use_fips]
59
+ self[:use_fips] = false if self[:use_fips].nil?
60
+ if self[:use_fips].nil?
61
+ raise ArgumentError, "Missing required EndpointParameter: :use_fips"
62
+ end
63
+ self[:endpoint] = options[:endpoint]
64
+ end
65
+ end
66
+ end
@@ -0,0 +1,51 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::MigrationHubConfig
11
+ class EndpointProvider
12
+ def resolve_endpoint(parameters)
13
+ region = parameters.region
14
+ use_dual_stack = parameters.use_dual_stack
15
+ use_fips = parameters.use_fips
16
+ endpoint = parameters.endpoint
17
+ if (partition_result = Aws::Endpoints::Matchers.aws_partition(region))
18
+ if Aws::Endpoints::Matchers.set?(endpoint) && (url = Aws::Endpoints::Matchers.parse_url(endpoint))
19
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
20
+ raise ArgumentError, "Invalid Configuration: FIPS and custom endpoint are not supported"
21
+ end
22
+ if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
23
+ raise ArgumentError, "Invalid Configuration: Dualstack and custom endpoint are not supported"
24
+ end
25
+ return Aws::Endpoints::Endpoint.new(url: endpoint, headers: {}, properties: {})
26
+ end
27
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
28
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS")) && Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
29
+ return Aws::Endpoints::Endpoint.new(url: "https://migrationhub-config-fips.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
30
+ end
31
+ raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
32
+ end
33
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
34
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"))
35
+ return Aws::Endpoints::Endpoint.new(url: "https://migrationhub-config-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
36
+ end
37
+ raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
38
+ end
39
+ if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
40
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
41
+ return Aws::Endpoints::Endpoint.new(url: "https://migrationhub-config.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
42
+ end
43
+ raise ArgumentError, "DualStack is enabled but this partition does not support DualStack"
44
+ end
45
+ return Aws::Endpoints::Endpoint.new(url: "https://migrationhub-config.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
46
+ end
47
+ raise ArgumentError, 'No endpoint could be resolved'
48
+
49
+ end
50
+ end
51
+ end
@@ -0,0 +1,57 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+
11
+ module Aws::MigrationHubConfig
12
+ module Endpoints
13
+
14
+ class CreateHomeRegionControl
15
+ def self.build(context)
16
+ unless context.config.regional_endpoint
17
+ endpoint = context.config.endpoint.to_s
18
+ end
19
+ Aws::MigrationHubConfig::EndpointParameters.new(
20
+ region: context.config.region,
21
+ use_dual_stack: context.config.use_dualstack_endpoint,
22
+ use_fips: context.config.use_fips_endpoint,
23
+ endpoint: endpoint,
24
+ )
25
+ end
26
+ end
27
+
28
+ class DescribeHomeRegionControls
29
+ def self.build(context)
30
+ unless context.config.regional_endpoint
31
+ endpoint = context.config.endpoint.to_s
32
+ end
33
+ Aws::MigrationHubConfig::EndpointParameters.new(
34
+ region: context.config.region,
35
+ use_dual_stack: context.config.use_dualstack_endpoint,
36
+ use_fips: context.config.use_fips_endpoint,
37
+ endpoint: endpoint,
38
+ )
39
+ end
40
+ end
41
+
42
+ class GetHomeRegion
43
+ def self.build(context)
44
+ unless context.config.regional_endpoint
45
+ endpoint = context.config.endpoint.to_s
46
+ end
47
+ Aws::MigrationHubConfig::EndpointParameters.new(
48
+ region: context.config.region,
49
+ use_dual_stack: context.config.use_dualstack_endpoint,
50
+ use_fips: context.config.use_fips_endpoint,
51
+ endpoint: endpoint,
52
+ )
53
+ end
54
+ end
55
+
56
+ end
57
+ end
@@ -0,0 +1,74 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+
11
+ module Aws::MigrationHubConfig
12
+ module Plugins
13
+ class Endpoints < Seahorse::Client::Plugin
14
+ option(
15
+ :endpoint_provider,
16
+ doc_type: 'Aws::MigrationHubConfig::EndpointProvider',
17
+ docstring: 'The endpoint provider used to resolve endpoints. Any '\
18
+ 'object that responds to `#resolve_endpoint(parameters)` '\
19
+ 'where `parameters` is a Struct similar to '\
20
+ '`Aws::MigrationHubConfig::EndpointParameters`'
21
+ ) do |cfg|
22
+ Aws::MigrationHubConfig::EndpointProvider.new
23
+ end
24
+
25
+ # @api private
26
+ class Handler < Seahorse::Client::Handler
27
+ def call(context)
28
+ # If endpoint was discovered, do not resolve or apply the endpoint.
29
+ unless context[:discovered_endpoint]
30
+ params = parameters_for_operation(context)
31
+ endpoint = context.config.endpoint_provider.resolve_endpoint(params)
32
+
33
+ context.http_request.endpoint = endpoint.url
34
+ apply_endpoint_headers(context, endpoint.headers)
35
+ end
36
+
37
+ context[:endpoint_params] = params
38
+ context[:auth_scheme] =
39
+ Aws::Endpoints.resolve_auth_scheme(context, endpoint)
40
+
41
+ @handler.call(context)
42
+ end
43
+
44
+ private
45
+
46
+ def apply_endpoint_headers(context, headers)
47
+ headers.each do |key, values|
48
+ value = values
49
+ .compact
50
+ .map { |s| Seahorse::Util.escape_header_list_string(s.to_s) }
51
+ .join(',')
52
+
53
+ context.http_request.headers[key] = value
54
+ end
55
+ end
56
+
57
+ def parameters_for_operation(context)
58
+ case context.operation_name
59
+ when :create_home_region_control
60
+ Aws::MigrationHubConfig::Endpoints::CreateHomeRegionControl.build(context)
61
+ when :describe_home_region_controls
62
+ Aws::MigrationHubConfig::Endpoints::DescribeHomeRegionControls.build(context)
63
+ when :get_home_region
64
+ Aws::MigrationHubConfig::Endpoints::GetHomeRegion.build(context)
65
+ end
66
+ end
67
+ end
68
+
69
+ def add_handlers(handlers, _config)
70
+ handlers.add(Handler, step: :build, priority: 75)
71
+ end
72
+ end
73
+ end
74
+ end
@@ -23,18 +23,6 @@ module Aws::MigrationHubConfig
23
23
  include Aws::Structure
24
24
  end
25
25
 
26
- # @note When making an API call, you may pass CreateHomeRegionControlRequest
27
- # data as a hash:
28
- #
29
- # {
30
- # home_region: "HomeRegion", # required
31
- # target: { # required
32
- # type: "ACCOUNT", # required, accepts ACCOUNT
33
- # id: "TargetId",
34
- # },
35
- # dry_run: false,
36
- # }
37
- #
38
26
  # @!attribute [rw] home_region
39
27
  # The name of the home region of the calling account.
40
28
  # @return [String]
@@ -72,20 +60,6 @@ module Aws::MigrationHubConfig
72
60
  include Aws::Structure
73
61
  end
74
62
 
75
- # @note When making an API call, you may pass DescribeHomeRegionControlsRequest
76
- # data as a hash:
77
- #
78
- # {
79
- # control_id: "ControlId",
80
- # home_region: "HomeRegion",
81
- # target: {
82
- # type: "ACCOUNT", # required, accepts ACCOUNT
83
- # id: "TargetId",
84
- # },
85
- # max_results: 1,
86
- # next_token: "Token",
87
- # }
88
- #
89
63
  # @!attribute [rw] control_id
90
64
  # The `ControlID` is a unique identifier string of your
91
65
  # `HomeRegionControl` object.
@@ -258,14 +232,6 @@ module Aws::MigrationHubConfig
258
232
  # is applied, which is always an `ACCOUNT`. It applies the home region
259
233
  # to the current `ACCOUNT`.
260
234
  #
261
- # @note When making an API call, you may pass Target
262
- # data as a hash:
263
- #
264
- # {
265
- # type: "ACCOUNT", # required, accepts ACCOUNT
266
- # id: "TargetId",
267
- # }
268
- #
269
235
  # @!attribute [rw] type
270
236
  # The target type is always an `ACCOUNT`.
271
237
  # @return [String]
@@ -13,9 +13,13 @@ require 'aws-sigv4'
13
13
 
14
14
  require_relative 'aws-sdk-migrationhubconfig/types'
15
15
  require_relative 'aws-sdk-migrationhubconfig/client_api'
16
+ require_relative 'aws-sdk-migrationhubconfig/plugins/endpoints.rb'
16
17
  require_relative 'aws-sdk-migrationhubconfig/client'
17
18
  require_relative 'aws-sdk-migrationhubconfig/errors'
18
19
  require_relative 'aws-sdk-migrationhubconfig/resource'
20
+ require_relative 'aws-sdk-migrationhubconfig/endpoint_parameters'
21
+ require_relative 'aws-sdk-migrationhubconfig/endpoint_provider'
22
+ require_relative 'aws-sdk-migrationhubconfig/endpoints'
19
23
  require_relative 'aws-sdk-migrationhubconfig/customizations'
20
24
 
21
25
  # This module provides support for AWS Migration Hub Config. This module is available in the
@@ -48,6 +52,6 @@ require_relative 'aws-sdk-migrationhubconfig/customizations'
48
52
  # @!group service
49
53
  module Aws::MigrationHubConfig
50
54
 
51
- GEM_VERSION = '1.20.0'
55
+ GEM_VERSION = '1.22.0'
52
56
 
53
57
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-migrationhubconfig
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.20.0
4
+ version: 1.22.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-02-24 00:00:00.000000000 Z
11
+ date: 2023-01-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: '3'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 3.127.0
22
+ version: 3.165.0
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,7 +29,7 @@ dependencies:
29
29
  version: '3'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 3.127.0
32
+ version: 3.165.0
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: aws-sigv4
35
35
  requirement: !ruby/object:Gem::Requirement
@@ -59,7 +59,11 @@ files:
59
59
  - lib/aws-sdk-migrationhubconfig/client.rb
60
60
  - lib/aws-sdk-migrationhubconfig/client_api.rb
61
61
  - lib/aws-sdk-migrationhubconfig/customizations.rb
62
+ - lib/aws-sdk-migrationhubconfig/endpoint_parameters.rb
63
+ - lib/aws-sdk-migrationhubconfig/endpoint_provider.rb
64
+ - lib/aws-sdk-migrationhubconfig/endpoints.rb
62
65
  - lib/aws-sdk-migrationhubconfig/errors.rb
66
+ - lib/aws-sdk-migrationhubconfig/plugins/endpoints.rb
63
67
  - lib/aws-sdk-migrationhubconfig/resource.rb
64
68
  - lib/aws-sdk-migrationhubconfig/types.rb
65
69
  homepage: https://github.com/aws/aws-sdk-ruby