aws-sdk-iotjobsdataplane 1.36.0 → 1.38.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f05550fda203e01d74b2b29a045552696f19cca23d49fef829ad2a5a0e4500c2
4
- data.tar.gz: 7149f68086e54ac2510f676242e5359e221581cb65fe157e201b91c60afc80c6
3
+ metadata.gz: ecf455c653eb4109e5a7c55fdd9698091a19c8f6e0bc90d7e755ab9e88515369
4
+ data.tar.gz: e04dafb914fafdde36bcab0e9bdc28cd372eba52a86f4e9d96c9f7f9ddeb4a49
5
5
  SHA512:
6
- metadata.gz: feb5448027da6b3658b20e52377f3dc8c85c0ca2dae219222f8b3cd10b58a904227af67fd570418f99d1eec5dfaed6a39978f6363e8f33ea5e3b223d59f5ceca
7
- data.tar.gz: 2c8c2f7fc7bbb0a3fda62af2a29bbd3bb6e025b8051172af8b4b3e19dd77a539b191889c2554b292321cef3eb5809ea74fc661d2527b552ed69334c528f77f21
6
+ metadata.gz: 641145d1064641e37cb23aa7069bd499da32e7388bb7b16d35b0fbe032df65e1e6ae530b47b9f11408625c6e8c7aafe04259861db06bc20539815be5bc48035c
7
+ data.tar.gz: 120965b45d550a4dbb3719ecfc5a70389139faeb08238311a5ab1b74feb9bb5b1525c612909c40d252f801409f27d4cd8880703bcf8e539feaf7639c28f9cbbf
data/CHANGELOG.md CHANGED
@@ -1,6 +1,18 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.38.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.37.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.36.0 (2022-02-24)
5
17
  ------------------
6
18
 
@@ -190,4 +202,4 @@ Unreleased Changes
190
202
  1.0.0 (2017-11-29)
191
203
  ------------------
192
204
 
193
- * Feature - Initial release of `aws-sdk-iotjobsdataplane`.
205
+ * Feature - Initial release of `aws-sdk-iotjobsdataplane`.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.36.0
1
+ 1.38.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/rest_json.rb'
35
35
 
36
36
  Aws::Plugins::GlobalConfiguration.add_identifier(:iotjobsdataplane)
@@ -79,8 +79,9 @@ module Aws::IoTJobsDataPlane
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::RestJson)
84
+ add_plugin(Aws::IoTJobsDataPlane::Plugins::Endpoints)
84
85
 
85
86
  # @overload initialize(options)
86
87
  # @param [Hash] options
@@ -287,6 +288,19 @@ module Aws::IoTJobsDataPlane
287
288
  # ** Please note ** When response stubbing is enabled, no HTTP
288
289
  # requests are made, and retries are disabled.
289
290
  #
291
+ # @option options [Aws::TokenProvider] :token_provider
292
+ # A Bearer Token Provider. This can be an instance of any one of the
293
+ # following classes:
294
+ #
295
+ # * `Aws::StaticTokenProvider` - Used for configuring static, non-refreshing
296
+ # tokens.
297
+ #
298
+ # * `Aws::SSOTokenProvider` - Used for loading tokens from AWS SSO using an
299
+ # access token generated from `aws login`.
300
+ #
301
+ # When `:token_provider` is not configured directly, the `Aws::TokenProviderChain`
302
+ # will be used to search for tokens configured for your profile in shared configuration files.
303
+ #
290
304
  # @option options [Boolean] :use_dualstack_endpoint
291
305
  # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
292
306
  # will be used if available.
@@ -300,6 +314,9 @@ module Aws::IoTJobsDataPlane
300
314
  # When `true`, request parameters are validated before
301
315
  # sending the request.
302
316
  #
317
+ # @option options [Aws::IoTJobsDataPlane::EndpointProvider] :endpoint_provider
318
+ # The endpoint provider used to resolve endpoints. Any object that responds to `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::IoTJobsDataPlane::EndpointParameters`
319
+ #
303
320
  # @option options [URI::HTTP,String] :http_proxy A proxy to send
304
321
  # requests through. Formatted like 'http://proxy.com:123'.
305
322
  #
@@ -599,7 +616,7 @@ module Aws::IoTJobsDataPlane
599
616
  params: params,
600
617
  config: config)
601
618
  context[:gem_name] = 'aws-sdk-iotjobsdataplane'
602
- context[:gem_version] = '1.36.0'
619
+ context[:gem_version] = '1.38.0'
603
620
  Seahorse::Client::Request.new(handlers, context)
604
621
  end
605
622
 
@@ -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::IoTJobsDataPlane
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::IoTJobsDataPlane
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://data.jobs.iot-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://data.jobs.iot-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://data.jobs.iot.#{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://data.jobs.iot.#{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,71 @@
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::IoTJobsDataPlane
12
+ module Endpoints
13
+
14
+ class DescribeJobExecution
15
+ def self.build(context)
16
+ unless context.config.regional_endpoint
17
+ endpoint = context.config.endpoint.to_s
18
+ end
19
+ Aws::IoTJobsDataPlane::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 GetPendingJobExecutions
29
+ def self.build(context)
30
+ unless context.config.regional_endpoint
31
+ endpoint = context.config.endpoint.to_s
32
+ end
33
+ Aws::IoTJobsDataPlane::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 StartNextPendingJobExecution
43
+ def self.build(context)
44
+ unless context.config.regional_endpoint
45
+ endpoint = context.config.endpoint.to_s
46
+ end
47
+ Aws::IoTJobsDataPlane::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
+ class UpdateJobExecution
57
+ def self.build(context)
58
+ unless context.config.regional_endpoint
59
+ endpoint = context.config.endpoint.to_s
60
+ end
61
+ Aws::IoTJobsDataPlane::EndpointParameters.new(
62
+ region: context.config.region,
63
+ use_dual_stack: context.config.use_dualstack_endpoint,
64
+ use_fips: context.config.use_fips_endpoint,
65
+ endpoint: endpoint,
66
+ )
67
+ end
68
+ end
69
+
70
+ end
71
+ end
@@ -0,0 +1,76 @@
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::IoTJobsDataPlane
12
+ module Plugins
13
+ class Endpoints < Seahorse::Client::Plugin
14
+ option(
15
+ :endpoint_provider,
16
+ doc_type: 'Aws::IoTJobsDataPlane::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::IoTJobsDataPlane::EndpointParameters`'
21
+ ) do |cfg|
22
+ Aws::IoTJobsDataPlane::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 :describe_job_execution
60
+ Aws::IoTJobsDataPlane::Endpoints::DescribeJobExecution.build(context)
61
+ when :get_pending_job_executions
62
+ Aws::IoTJobsDataPlane::Endpoints::GetPendingJobExecutions.build(context)
63
+ when :start_next_pending_job_execution
64
+ Aws::IoTJobsDataPlane::Endpoints::StartNextPendingJobExecution.build(context)
65
+ when :update_job_execution
66
+ Aws::IoTJobsDataPlane::Endpoints::UpdateJobExecution.build(context)
67
+ end
68
+ end
69
+ end
70
+
71
+ def add_handlers(handlers, _config)
72
+ handlers.add(Handler, step: :build, priority: 75)
73
+ end
74
+ end
75
+ end
76
+ end
@@ -22,16 +22,6 @@ module Aws::IoTJobsDataPlane
22
22
  include Aws::Structure
23
23
  end
24
24
 
25
- # @note When making an API call, you may pass DescribeJobExecutionRequest
26
- # data as a hash:
27
- #
28
- # {
29
- # job_id: "DescribeJobExecutionJobId", # required
30
- # thing_name: "ThingName", # required
31
- # include_job_document: false,
32
- # execution_number: 1,
33
- # }
34
- #
35
25
  # @!attribute [rw] job_id
36
26
  # The unique identifier assigned to this job when it was created.
37
27
  # @return [String]
@@ -71,13 +61,6 @@ module Aws::IoTJobsDataPlane
71
61
  include Aws::Structure
72
62
  end
73
63
 
74
- # @note When making an API call, you may pass GetPendingJobExecutionsRequest
75
- # data as a hash:
76
- #
77
- # {
78
- # thing_name: "ThingName", # required
79
- # }
80
- #
81
64
  # @!attribute [rw] thing_name
82
65
  # The name of the thing that is executing the job.
83
66
  # @return [String]
@@ -296,17 +279,6 @@ module Aws::IoTJobsDataPlane
296
279
  include Aws::Structure
297
280
  end
298
281
 
299
- # @note When making an API call, you may pass StartNextPendingJobExecutionRequest
300
- # data as a hash:
301
- #
302
- # {
303
- # thing_name: "ThingName", # required
304
- # status_details: {
305
- # "DetailsKey" => "DetailsValue",
306
- # },
307
- # step_timeout_in_minutes: 1,
308
- # }
309
- #
310
282
  # @!attribute [rw] thing_name
311
283
  # The name of the thing associated with the device.
312
284
  # @return [String]
@@ -374,23 +346,6 @@ module Aws::IoTJobsDataPlane
374
346
  include Aws::Structure
375
347
  end
376
348
 
377
- # @note When making an API call, you may pass UpdateJobExecutionRequest
378
- # data as a hash:
379
- #
380
- # {
381
- # job_id: "JobId", # required
382
- # thing_name: "ThingName", # required
383
- # status: "QUEUED", # required, accepts QUEUED, IN_PROGRESS, SUCCEEDED, FAILED, TIMED_OUT, REJECTED, REMOVED, CANCELED
384
- # status_details: {
385
- # "DetailsKey" => "DetailsValue",
386
- # },
387
- # step_timeout_in_minutes: 1,
388
- # expected_version: 1,
389
- # include_job_execution_state: false,
390
- # include_job_document: false,
391
- # execution_number: 1,
392
- # }
393
- #
394
349
  # @!attribute [rw] job_id
395
350
  # The unique identifier assigned to this job when it was created.
396
351
  # @return [String]
@@ -13,9 +13,13 @@ require 'aws-sigv4'
13
13
 
14
14
  require_relative 'aws-sdk-iotjobsdataplane/types'
15
15
  require_relative 'aws-sdk-iotjobsdataplane/client_api'
16
+ require_relative 'aws-sdk-iotjobsdataplane/plugins/endpoints.rb'
16
17
  require_relative 'aws-sdk-iotjobsdataplane/client'
17
18
  require_relative 'aws-sdk-iotjobsdataplane/errors'
18
19
  require_relative 'aws-sdk-iotjobsdataplane/resource'
20
+ require_relative 'aws-sdk-iotjobsdataplane/endpoint_parameters'
21
+ require_relative 'aws-sdk-iotjobsdataplane/endpoint_provider'
22
+ require_relative 'aws-sdk-iotjobsdataplane/endpoints'
19
23
  require_relative 'aws-sdk-iotjobsdataplane/customizations'
20
24
 
21
25
  # This module provides support for AWS IoT Jobs Data Plane. This module is available in the
@@ -48,6 +52,6 @@ require_relative 'aws-sdk-iotjobsdataplane/customizations'
48
52
  # @!group service
49
53
  module Aws::IoTJobsDataPlane
50
54
 
51
- GEM_VERSION = '1.36.0'
55
+ GEM_VERSION = '1.38.0'
52
56
 
53
57
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-iotjobsdataplane
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.36.0
4
+ version: 1.38.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-iotjobsdataplane/client.rb
60
60
  - lib/aws-sdk-iotjobsdataplane/client_api.rb
61
61
  - lib/aws-sdk-iotjobsdataplane/customizations.rb
62
+ - lib/aws-sdk-iotjobsdataplane/endpoint_parameters.rb
63
+ - lib/aws-sdk-iotjobsdataplane/endpoint_provider.rb
64
+ - lib/aws-sdk-iotjobsdataplane/endpoints.rb
62
65
  - lib/aws-sdk-iotjobsdataplane/errors.rb
66
+ - lib/aws-sdk-iotjobsdataplane/plugins/endpoints.rb
63
67
  - lib/aws-sdk-iotjobsdataplane/resource.rb
64
68
  - lib/aws-sdk-iotjobsdataplane/types.rb
65
69
  homepage: https://github.com/aws/aws-sdk-ruby