aws-sdk-iotdataplane 1.15.0 → 1.21.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
- SHA1:
3
- metadata.gz: e358d043df429d119288cc4d8aaf7bf701a4291d
4
- data.tar.gz: f2cfde3d4fdabced2777687fbd407b5f36af8b54
2
+ SHA256:
3
+ metadata.gz: 44f6fa7bbde2302255ed1f63dbb3295dbaa35fa4103a11e9b05130ba74d595e9
4
+ data.tar.gz: c9c71d7819ff2721f9242e76832130e856cc7325c3e92782ddc386447956c357
5
5
  SHA512:
6
- metadata.gz: d6aed52825e887a992a9251b805db0b8ce7f96a2adcb5f03214495bf5c309378226bb19b8bd4dcbc704189ac9e8868be9be64ec967497e7ff5ff7440f8b53939
7
- data.tar.gz: bb863d69d518db489fd25dade85a0dc0097b794f7cb645b442d98e97698db366c9ea9e8191129f8bde97ff9258f09a182240ca712ab0c788a5f6d6ebb76fd3a5
6
+ metadata.gz: 45dcfa823a43306be9d36cff819527c4b3faeaafd2e443904b98d0bd635790b10e0829b549401095c7995ec33cb554dacdff2f37dcb0f3f1e8086bd66f471fa1
7
+ data.tar.gz: f893f62da6c411c75516a350a50218a8219f23be41b56cdc8304b53c0b99435f2f006726c0c438975d8bf1752fddb007ea4de89677b4f172a0a447c928297b8a
@@ -24,17 +24,20 @@ require_relative 'aws-sdk-iotdataplane/customizations'
24
24
  # methods each accept a hash of request parameters and return a response
25
25
  # structure.
26
26
  #
27
+ # io_t_data_plane = Aws::IoTDataPlane::Client.new
28
+ # resp = io_t_data_plane.delete_thing_shadow(params)
29
+ #
27
30
  # See {Client} for more information.
28
31
  #
29
32
  # # Errors
30
33
  #
31
- # Errors returned from AWS IoT Data Plane all
32
- # extend {Errors::ServiceError}.
34
+ # Errors returned from AWS IoT Data Plane are defined in the
35
+ # {Errors} module and all extend {Errors::ServiceError}.
33
36
  #
34
37
  # begin
35
38
  # # do stuff
36
39
  # rescue Aws::IoTDataPlane::Errors::ServiceError
37
- # # rescues all service API errors
40
+ # # rescues all AWS IoT Data Plane API errors
38
41
  # end
39
42
  #
40
43
  # See {Errors} for more information.
@@ -42,6 +45,6 @@ require_relative 'aws-sdk-iotdataplane/customizations'
42
45
  # @service
43
46
  module Aws::IoTDataPlane
44
47
 
45
- GEM_VERSION = '1.15.0'
48
+ GEM_VERSION = '1.21.0'
46
49
 
47
50
  end
@@ -24,12 +24,25 @@ require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
24
24
  require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
25
25
  require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
26
26
  require 'aws-sdk-core/plugins/transfer_encoding.rb'
27
+ require 'aws-sdk-core/plugins/http_checksum.rb'
27
28
  require 'aws-sdk-core/plugins/signature_v4.rb'
28
29
  require 'aws-sdk-core/plugins/protocols/rest_json.rb'
29
30
 
30
31
  Aws::Plugins::GlobalConfiguration.add_identifier(:iotdataplane)
31
32
 
32
33
  module Aws::IoTDataPlane
34
+ # An API client for IoTDataPlane. To construct a client, you need to configure a `:region` and `:credentials`.
35
+ #
36
+ # client = Aws::IoTDataPlane::Client.new(
37
+ # region: region_name,
38
+ # credentials: credentials,
39
+ # # ...
40
+ # )
41
+ #
42
+ # For details on configuring region and credentials see
43
+ # the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).
44
+ #
45
+ # See {#initialize} for a full list of supported configuration options.
33
46
  class Client < Seahorse::Client::Base
34
47
 
35
48
  include Aws::ClientStubs
@@ -57,6 +70,7 @@ module Aws::IoTDataPlane
57
70
  add_plugin(Aws::Plugins::ClientMetricsPlugin)
58
71
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
59
72
  add_plugin(Aws::Plugins::TransferEncoding)
73
+ add_plugin(Aws::Plugins::HttpChecksum)
60
74
  add_plugin(Aws::Plugins::SignatureV4)
61
75
  add_plugin(Aws::Plugins::Protocols::RestJson)
62
76
 
@@ -93,7 +107,7 @@ module Aws::IoTDataPlane
93
107
  # @option options [required, String] :region
94
108
  # The AWS region to connect to. The configured `:region` is
95
109
  # used to determine the service `:endpoint`. When not passed,
96
- # a default `:region` is search for in the following locations:
110
+ # a default `:region` is searched for in the following locations:
97
111
  #
98
112
  # * `Aws.config[:region]`
99
113
  # * `ENV['AWS_REGION']`
@@ -108,6 +122,12 @@ module Aws::IoTDataPlane
108
122
  # When set to `true`, a thread polling for endpoints will be running in
109
123
  # the background every 60 secs (default). Defaults to `false`.
110
124
  #
125
+ # @option options [Boolean] :adaptive_retry_wait_to_fill (true)
126
+ # Used only in `adaptive` retry mode. When true, the request will sleep
127
+ # until there is sufficent client side capacity to retry the request.
128
+ # When false, the request will raise a `RetryCapacityNotAvailableError` and will
129
+ # not retry instead of sleeping.
130
+ #
111
131
  # @option options [Boolean] :client_side_monitoring (false)
112
132
  # When `true`, client-side metrics will be collected for all API requests from
113
133
  # this client.
@@ -132,6 +152,10 @@ module Aws::IoTDataPlane
132
152
  # When `true`, an attempt is made to coerce request parameters into
133
153
  # the required types.
134
154
  #
155
+ # @option options [Boolean] :correct_clock_skew (true)
156
+ # Used only in `standard` and adaptive retry modes. Specifies whether to apply
157
+ # a clock skew correction and retry requests with skewed client clocks.
158
+ #
135
159
  # @option options [Boolean] :disable_host_prefix_injection (false)
136
160
  # Set to true to disable SDK automatically adding host prefix
137
161
  # to default service endpoint when available.
@@ -139,7 +163,7 @@ module Aws::IoTDataPlane
139
163
  # @option options [String] :endpoint
140
164
  # The client endpoint is normally constructed from the `:region`
141
165
  # option. You should only configure an `:endpoint` when connecting
142
- # to test endpoints. This should be avalid HTTP(S) URI.
166
+ # to test or custom endpoints. This should be a valid HTTP(S) URI.
143
167
  #
144
168
  # @option options [Integer] :endpoint_cache_max_entries (1000)
145
169
  # Used for the maximum size limit of the LRU cache storing endpoints data
@@ -154,7 +178,7 @@ module Aws::IoTDataPlane
154
178
  # requests fetching endpoints information. Defaults to 60 sec.
155
179
  #
156
180
  # @option options [Boolean] :endpoint_discovery (false)
157
- # When set to `true`, endpoint discovery will be enabled for operations when available. Defaults to `false`.
181
+ # When set to `true`, endpoint discovery will be enabled for operations when available.
158
182
  #
159
183
  # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
160
184
  # The log formatter.
@@ -166,15 +190,29 @@ module Aws::IoTDataPlane
166
190
  # The Logger instance to send log messages to. If this option
167
191
  # is not set, logging will be disabled.
168
192
  #
193
+ # @option options [Integer] :max_attempts (3)
194
+ # An integer representing the maximum number attempts that will be made for
195
+ # a single request, including the initial attempt. For example,
196
+ # setting this value to 5 will result in a request being retried up to
197
+ # 4 times. Used in `standard` and `adaptive` retry modes.
198
+ #
169
199
  # @option options [String] :profile ("default")
170
200
  # Used when loading credentials from the shared credentials file
171
201
  # at HOME/.aws/credentials. When not specified, 'default' is used.
172
202
  #
203
+ # @option options [Proc] :retry_backoff
204
+ # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
205
+ # This option is only used in the `legacy` retry mode.
206
+ #
173
207
  # @option options [Float] :retry_base_delay (0.3)
174
- # The base delay in seconds used by the default backoff function.
208
+ # The base delay in seconds used by the default backoff function. This option
209
+ # is only used in the `legacy` retry mode.
175
210
  #
176
211
  # @option options [Symbol] :retry_jitter (:none)
177
- # A delay randomiser function used by the default backoff function. Some predefined functions can be referenced by name - :none, :equal, :full, otherwise a Proc that takes and returns a number.
212
+ # A delay randomiser function used by the default backoff function.
213
+ # Some predefined functions can be referenced by name - :none, :equal, :full,
214
+ # otherwise a Proc that takes and returns a number. This option is only used
215
+ # in the `legacy` retry mode.
178
216
  #
179
217
  # @see https://www.awsarchitectureblog.com/2015/03/backoff.html
180
218
  #
@@ -182,11 +220,30 @@ module Aws::IoTDataPlane
182
220
  # The maximum number of times to retry failed requests. Only
183
221
  # ~ 500 level server errors and certain ~ 400 level client errors
184
222
  # are retried. Generally, these are throttling errors, data
185
- # checksum errors, networking errors, timeout errors and auth
186
- # errors from expired credentials.
223
+ # checksum errors, networking errors, timeout errors, auth errors,
224
+ # endpoint discovery, and errors from expired credentials.
225
+ # This option is only used in the `legacy` retry mode.
187
226
  #
188
227
  # @option options [Integer] :retry_max_delay (0)
189
- # The maximum number of seconds to delay between retries (0 for no limit) used by the default backoff function.
228
+ # The maximum number of seconds to delay between retries (0 for no limit)
229
+ # used by the default backoff function. This option is only used in the
230
+ # `legacy` retry mode.
231
+ #
232
+ # @option options [String] :retry_mode ("legacy")
233
+ # Specifies which retry algorithm to use. Values are:
234
+ #
235
+ # * `legacy` - The pre-existing retry behavior. This is default value if
236
+ # no retry mode is provided.
237
+ #
238
+ # * `standard` - A standardized set of retry rules across the AWS SDKs.
239
+ # This includes support for retry quotas, which limit the number of
240
+ # unsuccessful retries a client can make.
241
+ #
242
+ # * `adaptive` - An experimental retry mode that includes all the
243
+ # functionality of `standard` mode along with automatic client side
244
+ # throttling. This is a provisional mode that may change behavior
245
+ # in the future.
246
+ #
190
247
  #
191
248
  # @option options [String] :secret_access_key
192
249
  #
@@ -209,16 +266,15 @@ module Aws::IoTDataPlane
209
266
  # requests through. Formatted like 'http://proxy.com:123'.
210
267
  #
211
268
  # @option options [Float] :http_open_timeout (15) The number of
212
- # seconds to wait when opening a HTTP session before rasing a
269
+ # seconds to wait when opening a HTTP session before raising a
213
270
  # `Timeout::Error`.
214
271
  #
215
272
  # @option options [Integer] :http_read_timeout (60) The default
216
273
  # number of seconds to wait for response data. This value can
217
- # safely be set
218
- # per-request on the session yeidled by {#session_for}.
274
+ # safely be set per-request on the session.
219
275
  #
220
276
  # @option options [Float] :http_idle_timeout (5) The number of
221
- # seconds a connection is allowed to sit idble before it is
277
+ # seconds a connection is allowed to sit idle before it is
222
278
  # considered stale. Stale connections are closed and removed
223
279
  # from the pool before making a request.
224
280
  #
@@ -227,7 +283,7 @@ module Aws::IoTDataPlane
227
283
  # request body. This option has no effect unless the request has
228
284
  # "Expect" header set to "100-continue". Defaults to `nil` which
229
285
  # disables this behaviour. This value can safely be set per
230
- # request on the session yeidled by {#session_for}.
286
+ # request on the session.
231
287
  #
232
288
  # @option options [Boolean] :http_wire_trace (false) When `true`,
233
289
  # HTTP debug output will be sent to the `:logger`.
@@ -254,10 +310,10 @@ module Aws::IoTDataPlane
254
310
 
255
311
  # @!group API Operations
256
312
 
257
- # Deletes the thing shadow for the specified thing.
313
+ # Deletes the shadow for the specified thing.
258
314
  #
259
- # For more information, see [DeleteThingShadow][1] in the *AWS IoT
260
- # Developer Guide*.
315
+ # For more information, see [DeleteThingShadow][1] in the AWS IoT
316
+ # Developer Guide.
261
317
  #
262
318
  #
263
319
  #
@@ -266,6 +322,9 @@ module Aws::IoTDataPlane
266
322
  # @option params [required, String] :thing_name
267
323
  # The name of the thing.
268
324
  #
325
+ # @option params [String] :shadow_name
326
+ # The name of the shadow.
327
+ #
269
328
  # @return [Types::DeleteThingShadowResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
270
329
  #
271
330
  # * {Types::DeleteThingShadowResponse#payload #payload} => String
@@ -274,6 +333,7 @@ module Aws::IoTDataPlane
274
333
  #
275
334
  # resp = client.delete_thing_shadow({
276
335
  # thing_name: "ThingName", # required
336
+ # shadow_name: "ShadowName",
277
337
  # })
278
338
  #
279
339
  # @example Response structure
@@ -287,10 +347,10 @@ module Aws::IoTDataPlane
287
347
  req.send_request(options)
288
348
  end
289
349
 
290
- # Gets the thing shadow for the specified thing.
350
+ # Gets the shadow for the specified thing.
291
351
  #
292
- # For more information, see [GetThingShadow][1] in the *AWS IoT
293
- # Developer Guide*.
352
+ # For more information, see [GetThingShadow][1] in the AWS IoT Developer
353
+ # Guide.
294
354
  #
295
355
  #
296
356
  #
@@ -299,6 +359,9 @@ module Aws::IoTDataPlane
299
359
  # @option params [required, String] :thing_name
300
360
  # The name of the thing.
301
361
  #
362
+ # @option params [String] :shadow_name
363
+ # The name of the shadow.
364
+ #
302
365
  # @return [Types::GetThingShadowResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
303
366
  #
304
367
  # * {Types::GetThingShadowResponse#payload #payload} => String
@@ -307,6 +370,7 @@ module Aws::IoTDataPlane
307
370
  #
308
371
  # resp = client.get_thing_shadow({
309
372
  # thing_name: "ThingName", # required
373
+ # shadow_name: "ShadowName",
310
374
  # })
311
375
  #
312
376
  # @example Response structure
@@ -320,10 +384,49 @@ module Aws::IoTDataPlane
320
384
  req.send_request(options)
321
385
  end
322
386
 
387
+ # Lists the shadows for the specified thing.
388
+ #
389
+ # @option params [required, String] :thing_name
390
+ # The name of the thing.
391
+ #
392
+ # @option params [String] :next_token
393
+ # The token to retrieve the next set of results.
394
+ #
395
+ # @option params [Integer] :page_size
396
+ # The result page size.
397
+ #
398
+ # @return [Types::ListNamedShadowsForThingResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
399
+ #
400
+ # * {Types::ListNamedShadowsForThingResponse#results #results} => Array&lt;String&gt;
401
+ # * {Types::ListNamedShadowsForThingResponse#next_token #next_token} => String
402
+ # * {Types::ListNamedShadowsForThingResponse#timestamp #timestamp} => Integer
403
+ #
404
+ # @example Request syntax with placeholder values
405
+ #
406
+ # resp = client.list_named_shadows_for_thing({
407
+ # thing_name: "ThingName", # required
408
+ # next_token: "NextToken",
409
+ # page_size: 1,
410
+ # })
411
+ #
412
+ # @example Response structure
413
+ #
414
+ # resp.results #=> Array
415
+ # resp.results[0] #=> String
416
+ # resp.next_token #=> String
417
+ # resp.timestamp #=> Integer
418
+ #
419
+ # @overload list_named_shadows_for_thing(params = {})
420
+ # @param [Hash] params ({})
421
+ def list_named_shadows_for_thing(params = {}, options = {})
422
+ req = build_request(:list_named_shadows_for_thing, params)
423
+ req.send_request(options)
424
+ end
425
+
323
426
  # Publishes state information.
324
427
  #
325
- # For more information, see [HTTP Protocol][1] in the *AWS IoT Developer
326
- # Guide*.
428
+ # For more information, see [HTTP Protocol][1] in the AWS IoT Developer
429
+ # Guide.
327
430
  #
328
431
  #
329
432
  #
@@ -355,10 +458,10 @@ module Aws::IoTDataPlane
355
458
  req.send_request(options)
356
459
  end
357
460
 
358
- # Updates the thing shadow for the specified thing.
461
+ # Updates the shadow for the specified thing.
359
462
  #
360
- # For more information, see [UpdateThingShadow][1] in the *AWS IoT
361
- # Developer Guide*.
463
+ # For more information, see [UpdateThingShadow][1] in the AWS IoT
464
+ # Developer Guide.
362
465
  #
363
466
  #
364
467
  #
@@ -367,6 +470,9 @@ module Aws::IoTDataPlane
367
470
  # @option params [required, String] :thing_name
368
471
  # The name of the thing.
369
472
  #
473
+ # @option params [String] :shadow_name
474
+ # The name of the shadow.
475
+ #
370
476
  # @option params [required, String, IO] :payload
371
477
  # The state information, in JSON format.
372
478
  #
@@ -378,6 +484,7 @@ module Aws::IoTDataPlane
378
484
  #
379
485
  # resp = client.update_thing_shadow({
380
486
  # thing_name: "ThingName", # required
487
+ # shadow_name: "ShadowName",
381
488
  # payload: "data", # required
382
489
  # })
383
490
  #
@@ -405,7 +512,7 @@ module Aws::IoTDataPlane
405
512
  params: params,
406
513
  config: config)
407
514
  context[:gem_name] = 'aws-sdk-iotdataplane'
408
- context[:gem_version] = '1.15.0'
515
+ context[:gem_version] = '1.21.0'
409
516
  Seahorse::Client::Request.new(handlers, context)
410
517
  end
411
518
 
@@ -14,21 +14,27 @@ module Aws::IoTDataPlane
14
14
  ConflictException = Shapes::StructureShape.new(name: 'ConflictException')
15
15
  DeleteThingShadowRequest = Shapes::StructureShape.new(name: 'DeleteThingShadowRequest')
16
16
  DeleteThingShadowResponse = Shapes::StructureShape.new(name: 'DeleteThingShadowResponse')
17
- ErrorMessage = Shapes::StringShape.new(name: 'ErrorMessage')
18
17
  GetThingShadowRequest = Shapes::StructureShape.new(name: 'GetThingShadowRequest')
19
18
  GetThingShadowResponse = Shapes::StructureShape.new(name: 'GetThingShadowResponse')
20
19
  InternalFailureException = Shapes::StructureShape.new(name: 'InternalFailureException')
21
20
  InvalidRequestException = Shapes::StructureShape.new(name: 'InvalidRequestException')
22
21
  JsonDocument = Shapes::BlobShape.new(name: 'JsonDocument')
22
+ ListNamedShadowsForThingRequest = Shapes::StructureShape.new(name: 'ListNamedShadowsForThingRequest')
23
+ ListNamedShadowsForThingResponse = Shapes::StructureShape.new(name: 'ListNamedShadowsForThingResponse')
23
24
  MethodNotAllowedException = Shapes::StructureShape.new(name: 'MethodNotAllowedException')
25
+ NamedShadowList = Shapes::ListShape.new(name: 'NamedShadowList')
26
+ NextToken = Shapes::StringShape.new(name: 'NextToken')
27
+ PageSize = Shapes::IntegerShape.new(name: 'PageSize')
24
28
  Payload = Shapes::BlobShape.new(name: 'Payload')
25
29
  PublishRequest = Shapes::StructureShape.new(name: 'PublishRequest')
26
30
  Qos = Shapes::IntegerShape.new(name: 'Qos')
27
31
  RequestEntityTooLargeException = Shapes::StructureShape.new(name: 'RequestEntityTooLargeException')
28
32
  ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
29
33
  ServiceUnavailableException = Shapes::StructureShape.new(name: 'ServiceUnavailableException')
34
+ ShadowName = Shapes::StringShape.new(name: 'ShadowName')
30
35
  ThingName = Shapes::StringShape.new(name: 'ThingName')
31
36
  ThrottlingException = Shapes::StructureShape.new(name: 'ThrottlingException')
37
+ Timestamp = Shapes::IntegerShape.new(name: 'Timestamp')
32
38
  Topic = Shapes::StringShape.new(name: 'Topic')
33
39
  UnauthorizedException = Shapes::StructureShape.new(name: 'UnauthorizedException')
34
40
  UnsupportedDocumentEncodingException = Shapes::StructureShape.new(name: 'UnsupportedDocumentEncodingException')
@@ -36,10 +42,11 @@ module Aws::IoTDataPlane
36
42
  UpdateThingShadowResponse = Shapes::StructureShape.new(name: 'UpdateThingShadowResponse')
37
43
  errorMessage = Shapes::StringShape.new(name: 'errorMessage')
38
44
 
39
- ConflictException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "message"))
45
+ ConflictException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
40
46
  ConflictException.struct_class = Types::ConflictException
41
47
 
42
48
  DeleteThingShadowRequest.add_member(:thing_name, Shapes::ShapeRef.new(shape: ThingName, required: true, location: "uri", location_name: "thingName"))
49
+ DeleteThingShadowRequest.add_member(:shadow_name, Shapes::ShapeRef.new(shape: ShadowName, location: "querystring", location_name: "name"))
43
50
  DeleteThingShadowRequest.struct_class = Types::DeleteThingShadowRequest
44
51
 
45
52
  DeleteThingShadowResponse.add_member(:payload, Shapes::ShapeRef.new(shape: JsonDocument, required: true, location_name: "payload"))
@@ -48,6 +55,7 @@ module Aws::IoTDataPlane
48
55
  DeleteThingShadowResponse[:payload_member] = DeleteThingShadowResponse.member(:payload)
49
56
 
50
57
  GetThingShadowRequest.add_member(:thing_name, Shapes::ShapeRef.new(shape: ThingName, required: true, location: "uri", location_name: "thingName"))
58
+ GetThingShadowRequest.add_member(:shadow_name, Shapes::ShapeRef.new(shape: ShadowName, location: "querystring", location_name: "name"))
51
59
  GetThingShadowRequest.struct_class = Types::GetThingShadowRequest
52
60
 
53
61
  GetThingShadowResponse.add_member(:payload, Shapes::ShapeRef.new(shape: JsonDocument, location_name: "payload"))
@@ -61,9 +69,21 @@ module Aws::IoTDataPlane
61
69
  InvalidRequestException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
62
70
  InvalidRequestException.struct_class = Types::InvalidRequestException
63
71
 
64
- MethodNotAllowedException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "message"))
72
+ ListNamedShadowsForThingRequest.add_member(:thing_name, Shapes::ShapeRef.new(shape: ThingName, required: true, location: "uri", location_name: "thingName"))
73
+ ListNamedShadowsForThingRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location: "querystring", location_name: "nextToken"))
74
+ ListNamedShadowsForThingRequest.add_member(:page_size, Shapes::ShapeRef.new(shape: PageSize, location: "querystring", location_name: "pageSize"))
75
+ ListNamedShadowsForThingRequest.struct_class = Types::ListNamedShadowsForThingRequest
76
+
77
+ ListNamedShadowsForThingResponse.add_member(:results, Shapes::ShapeRef.new(shape: NamedShadowList, location_name: "results"))
78
+ ListNamedShadowsForThingResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
79
+ ListNamedShadowsForThingResponse.add_member(:timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "timestamp"))
80
+ ListNamedShadowsForThingResponse.struct_class = Types::ListNamedShadowsForThingResponse
81
+
82
+ MethodNotAllowedException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
65
83
  MethodNotAllowedException.struct_class = Types::MethodNotAllowedException
66
84
 
85
+ NamedShadowList.member = Shapes::ShapeRef.new(shape: ShadowName)
86
+
67
87
  PublishRequest.add_member(:topic, Shapes::ShapeRef.new(shape: Topic, required: true, location: "uri", location_name: "topic"))
68
88
  PublishRequest.add_member(:qos, Shapes::ShapeRef.new(shape: Qos, location: "querystring", location_name: "qos"))
69
89
  PublishRequest.add_member(:payload, Shapes::ShapeRef.new(shape: Payload, location_name: "payload"))
@@ -71,7 +91,7 @@ module Aws::IoTDataPlane
71
91
  PublishRequest[:payload] = :payload
72
92
  PublishRequest[:payload_member] = PublishRequest.member(:payload)
73
93
 
74
- RequestEntityTooLargeException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "message"))
94
+ RequestEntityTooLargeException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
75
95
  RequestEntityTooLargeException.struct_class = Types::RequestEntityTooLargeException
76
96
 
77
97
  ResourceNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: errorMessage, location_name: "message"))
@@ -90,6 +110,7 @@ module Aws::IoTDataPlane
90
110
  UnsupportedDocumentEncodingException.struct_class = Types::UnsupportedDocumentEncodingException
91
111
 
92
112
  UpdateThingShadowRequest.add_member(:thing_name, Shapes::ShapeRef.new(shape: ThingName, required: true, location: "uri", location_name: "thingName"))
113
+ UpdateThingShadowRequest.add_member(:shadow_name, Shapes::ShapeRef.new(shape: ShadowName, location: "querystring", location_name: "name"))
93
114
  UpdateThingShadowRequest.add_member(:payload, Shapes::ShapeRef.new(shape: JsonDocument, required: true, location_name: "payload"))
94
115
  UpdateThingShadowRequest.struct_class = Types::UpdateThingShadowRequest
95
116
  UpdateThingShadowRequest[:payload] = :payload
@@ -110,6 +131,7 @@ module Aws::IoTDataPlane
110
131
  "apiVersion" => "2015-05-28",
111
132
  "protocol" => "rest-json",
112
133
  "serviceFullName" => "AWS IoT Data Plane",
134
+ "serviceId" => "IoT Data Plane",
113
135
  "signatureVersion" => "v4",
114
136
  "signingName" => "iotdata",
115
137
  "uid" => "iot-data-2015-05-28",
@@ -147,6 +169,21 @@ module Aws::IoTDataPlane
147
169
  o.errors << Shapes::ShapeRef.new(shape: UnsupportedDocumentEncodingException)
148
170
  end)
149
171
 
172
+ api.add_operation(:list_named_shadows_for_thing, Seahorse::Model::Operation.new.tap do |o|
173
+ o.name = "ListNamedShadowsForThing"
174
+ o.http_method = "GET"
175
+ o.http_request_uri = "/api/things/shadow/ListNamedShadowsForThing/{thingName}"
176
+ o.input = Shapes::ShapeRef.new(shape: ListNamedShadowsForThingRequest)
177
+ o.output = Shapes::ShapeRef.new(shape: ListNamedShadowsForThingResponse)
178
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
179
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
180
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
181
+ o.errors << Shapes::ShapeRef.new(shape: UnauthorizedException)
182
+ o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
183
+ o.errors << Shapes::ShapeRef.new(shape: InternalFailureException)
184
+ o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
185
+ end)
186
+
150
187
  api.add_operation(:publish, Seahorse::Model::Operation.new.tap do |o|
151
188
  o.name = "Publish"
152
189
  o.http_method = "POST"
@@ -6,6 +6,38 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::IoTDataPlane
9
+
10
+ # When IoTDataPlane returns an error response, the Ruby SDK constructs and raises an error.
11
+ # These errors all extend Aws::IoTDataPlane::Errors::ServiceError < {Aws::Errors::ServiceError}
12
+ #
13
+ # You can rescue all IoTDataPlane errors using ServiceError:
14
+ #
15
+ # begin
16
+ # # do stuff
17
+ # rescue Aws::IoTDataPlane::Errors::ServiceError
18
+ # # rescues all IoTDataPlane API errors
19
+ # end
20
+ #
21
+ #
22
+ # ## Request Context
23
+ # ServiceError objects have a {Aws::Errors::ServiceError#context #context} method that returns
24
+ # information about the request that generated the error.
25
+ # See {Seahorse::Client::RequestContext} for more information.
26
+ #
27
+ # ## Error Classes
28
+ # * {ConflictException}
29
+ # * {InternalFailureException}
30
+ # * {InvalidRequestException}
31
+ # * {MethodNotAllowedException}
32
+ # * {RequestEntityTooLargeException}
33
+ # * {ResourceNotFoundException}
34
+ # * {ServiceUnavailableException}
35
+ # * {ThrottlingException}
36
+ # * {UnauthorizedException}
37
+ # * {UnsupportedDocumentEncodingException}
38
+ #
39
+ # Additionally, error classes are dynamically generated for service errors based on the error code
40
+ # if they are not defined above.
9
41
  module Errors
10
42
 
11
43
  extend Aws::Errors::DynamicErrors
@@ -23,7 +55,6 @@ module Aws::IoTDataPlane
23
55
  def message
24
56
  @message || @data[:message]
25
57
  end
26
-
27
58
  end
28
59
 
29
60
  class InternalFailureException < ServiceError
@@ -39,7 +70,6 @@ module Aws::IoTDataPlane
39
70
  def message
40
71
  @message || @data[:message]
41
72
  end
42
-
43
73
  end
44
74
 
45
75
  class InvalidRequestException < ServiceError
@@ -55,7 +85,6 @@ module Aws::IoTDataPlane
55
85
  def message
56
86
  @message || @data[:message]
57
87
  end
58
-
59
88
  end
60
89
 
61
90
  class MethodNotAllowedException < ServiceError
@@ -71,7 +100,6 @@ module Aws::IoTDataPlane
71
100
  def message
72
101
  @message || @data[:message]
73
102
  end
74
-
75
103
  end
76
104
 
77
105
  class RequestEntityTooLargeException < ServiceError
@@ -87,7 +115,6 @@ module Aws::IoTDataPlane
87
115
  def message
88
116
  @message || @data[:message]
89
117
  end
90
-
91
118
  end
92
119
 
93
120
  class ResourceNotFoundException < ServiceError
@@ -103,7 +130,6 @@ module Aws::IoTDataPlane
103
130
  def message
104
131
  @message || @data[:message]
105
132
  end
106
-
107
133
  end
108
134
 
109
135
  class ServiceUnavailableException < ServiceError
@@ -119,7 +145,6 @@ module Aws::IoTDataPlane
119
145
  def message
120
146
  @message || @data[:message]
121
147
  end
122
-
123
148
  end
124
149
 
125
150
  class ThrottlingException < ServiceError
@@ -135,7 +160,6 @@ module Aws::IoTDataPlane
135
160
  def message
136
161
  @message || @data[:message]
137
162
  end
138
-
139
163
  end
140
164
 
141
165
  class UnauthorizedException < ServiceError
@@ -151,7 +175,6 @@ module Aws::IoTDataPlane
151
175
  def message
152
176
  @message || @data[:message]
153
177
  end
154
-
155
178
  end
156
179
 
157
180
  class UnsupportedDocumentEncodingException < ServiceError
@@ -167,7 +190,6 @@ module Aws::IoTDataPlane
167
190
  def message
168
191
  @message || @data[:message]
169
192
  end
170
-
171
193
  end
172
194
 
173
195
  end
@@ -6,6 +6,7 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::IoTDataPlane
9
+
9
10
  class Resource
10
11
 
11
12
  # @param options ({})
@@ -26,14 +26,20 @@ module Aws::IoTDataPlane
26
26
  #
27
27
  # {
28
28
  # thing_name: "ThingName", # required
29
+ # shadow_name: "ShadowName",
29
30
  # }
30
31
  #
31
32
  # @!attribute [rw] thing_name
32
33
  # The name of the thing.
33
34
  # @return [String]
34
35
  #
36
+ # @!attribute [rw] shadow_name
37
+ # The name of the shadow.
38
+ # @return [String]
39
+ #
35
40
  class DeleteThingShadowRequest < Struct.new(
36
- :thing_name)
41
+ :thing_name,
42
+ :shadow_name)
37
43
  include Aws::Structure
38
44
  end
39
45
 
@@ -55,14 +61,20 @@ module Aws::IoTDataPlane
55
61
  #
56
62
  # {
57
63
  # thing_name: "ThingName", # required
64
+ # shadow_name: "ShadowName",
58
65
  # }
59
66
  #
60
67
  # @!attribute [rw] thing_name
61
68
  # The name of the thing.
62
69
  # @return [String]
63
70
  #
71
+ # @!attribute [rw] shadow_name
72
+ # The name of the shadow.
73
+ # @return [String]
74
+ #
64
75
  class GetThingShadowRequest < Struct.new(
65
- :thing_name)
76
+ :thing_name,
77
+ :shadow_name)
66
78
  include Aws::Structure
67
79
  end
68
80
 
@@ -99,6 +111,54 @@ module Aws::IoTDataPlane
99
111
  include Aws::Structure
100
112
  end
101
113
 
114
+ # @note When making an API call, you may pass ListNamedShadowsForThingRequest
115
+ # data as a hash:
116
+ #
117
+ # {
118
+ # thing_name: "ThingName", # required
119
+ # next_token: "NextToken",
120
+ # page_size: 1,
121
+ # }
122
+ #
123
+ # @!attribute [rw] thing_name
124
+ # The name of the thing.
125
+ # @return [String]
126
+ #
127
+ # @!attribute [rw] next_token
128
+ # The token to retrieve the next set of results.
129
+ # @return [String]
130
+ #
131
+ # @!attribute [rw] page_size
132
+ # The result page size.
133
+ # @return [Integer]
134
+ #
135
+ class ListNamedShadowsForThingRequest < Struct.new(
136
+ :thing_name,
137
+ :next_token,
138
+ :page_size)
139
+ include Aws::Structure
140
+ end
141
+
142
+ # @!attribute [rw] results
143
+ # The list of shadows for the specified thing.
144
+ # @return [Array<String>]
145
+ #
146
+ # @!attribute [rw] next_token
147
+ # The token for the next set of results, or null if there are no
148
+ # additional results.
149
+ # @return [String]
150
+ #
151
+ # @!attribute [rw] timestamp
152
+ # The Epoch date and time the response was generated by AWS IoT.
153
+ # @return [Integer]
154
+ #
155
+ class ListNamedShadowsForThingResponse < Struct.new(
156
+ :results,
157
+ :next_token,
158
+ :timestamp)
159
+ include Aws::Structure
160
+ end
161
+
102
162
  # The specified combination of HTTP verb and URI is not supported.
103
163
  #
104
164
  # @!attribute [rw] message
@@ -213,6 +273,7 @@ module Aws::IoTDataPlane
213
273
  #
214
274
  # {
215
275
  # thing_name: "ThingName", # required
276
+ # shadow_name: "ShadowName",
216
277
  # payload: "data", # required
217
278
  # }
218
279
  #
@@ -220,12 +281,17 @@ module Aws::IoTDataPlane
220
281
  # The name of the thing.
221
282
  # @return [String]
222
283
  #
284
+ # @!attribute [rw] shadow_name
285
+ # The name of the shadow.
286
+ # @return [String]
287
+ #
223
288
  # @!attribute [rw] payload
224
289
  # The state information, in JSON format.
225
290
  # @return [String]
226
291
  #
227
292
  class UpdateThingShadowRequest < Struct.new(
228
293
  :thing_name,
294
+ :shadow_name,
229
295
  :payload)
230
296
  include Aws::Structure
231
297
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-iotdataplane
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.15.0
4
+ version: 1.21.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: 2019-07-25 00:00:00.000000000 Z
11
+ date: 2020-06-11 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.61.1
22
+ version: 3.99.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.61.1
32
+ version: 3.99.0
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: aws-sigv4
35
35
  requirement: !ruby/object:Gem::Requirement
@@ -81,7 +81,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
81
81
  version: '0'
82
82
  requirements: []
83
83
  rubyforge_project:
84
- rubygems_version: 2.5.2.3
84
+ rubygems_version: 2.7.6.2
85
85
  signing_key:
86
86
  specification_version: 4
87
87
  summary: AWS SDK for Ruby - AWS IoT Data Plane