aws-sdk-dynamodb 1.84.0 → 1.118.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +177 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-dynamodb/client.rb +940 -312
- data/lib/aws-sdk-dynamodb/client_api.rb +204 -34
- data/lib/aws-sdk-dynamodb/customizations/client.rb +5 -3
- data/lib/aws-sdk-dynamodb/endpoint_provider.rb +2 -2
- data/lib/aws-sdk-dynamodb/endpoints.rb +57 -0
- data/lib/aws-sdk-dynamodb/errors.rb +21 -0
- data/lib/aws-sdk-dynamodb/plugins/endpoints.rb +12 -2
- data/lib/aws-sdk-dynamodb/plugins/simple_attributes.rb +21 -7
- data/lib/aws-sdk-dynamodb/resource.rb +62 -18
- data/lib/aws-sdk-dynamodb/table.rb +102 -26
- data/lib/aws-sdk-dynamodb/types.rb +776 -119
- data/lib/aws-sdk-dynamodb.rb +1 -1
- data/sig/client.rbs +1495 -0
- data/sig/errors.rbs +114 -0
- data/sig/resource.rbs +206 -0
- data/sig/table.rbs +359 -0
- data/sig/types.rbs +1811 -0
- data/sig/waiters.rbs +33 -0
- metadata +17 -11
@@ -21,9 +21,11 @@ module Aws
|
|
21
21
|
def data_to_http_resp(operation_name, data)
|
22
22
|
api = config.api
|
23
23
|
operation = api.operation(operation_name)
|
24
|
-
|
25
|
-
|
26
|
-
|
24
|
+
if config.simple_attributes
|
25
|
+
translator = Plugins::SimpleAttributes::ValueTranslator
|
26
|
+
translator = translator.new(operation.output, :marshal)
|
27
|
+
data = translator.apply(data)
|
28
|
+
end
|
27
29
|
ParamValidator.validate!(operation.output, data)
|
28
30
|
protocol_helper.stub_data(api, operation, data)
|
29
31
|
end
|
@@ -32,8 +32,8 @@ module Aws::DynamoDB
|
|
32
32
|
raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
|
33
33
|
end
|
34
34
|
if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
|
35
|
-
if Aws::Endpoints::Matchers.boolean_equals?(
|
36
|
-
if Aws::Endpoints::Matchers.string_equals?(
|
35
|
+
if Aws::Endpoints::Matchers.boolean_equals?(Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"), true)
|
36
|
+
if Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(partition_result, "name"), "aws-us-gov")
|
37
37
|
return Aws::Endpoints::Endpoint.new(url: "https://dynamodb.#{region}.amazonaws.com", headers: {}, properties: {})
|
38
38
|
end
|
39
39
|
return Aws::Endpoints::Endpoint.new(url: "https://dynamodb-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
|
@@ -9,6 +9,7 @@
|
|
9
9
|
|
10
10
|
|
11
11
|
module Aws::DynamoDB
|
12
|
+
# @api private
|
12
13
|
module Endpoints
|
13
14
|
|
14
15
|
class BatchExecuteStatement
|
@@ -123,6 +124,20 @@ module Aws::DynamoDB
|
|
123
124
|
end
|
124
125
|
end
|
125
126
|
|
127
|
+
class DeleteResourcePolicy
|
128
|
+
def self.build(context)
|
129
|
+
unless context.config.regional_endpoint
|
130
|
+
endpoint = context.config.endpoint.to_s
|
131
|
+
end
|
132
|
+
Aws::DynamoDB::EndpointParameters.new(
|
133
|
+
region: context.config.region,
|
134
|
+
use_dual_stack: context.config.use_dualstack_endpoint,
|
135
|
+
use_fips: context.config.use_fips_endpoint,
|
136
|
+
endpoint: endpoint,
|
137
|
+
)
|
138
|
+
end
|
139
|
+
end
|
140
|
+
|
126
141
|
class DeleteTable
|
127
142
|
def self.build(context)
|
128
143
|
unless context.config.regional_endpoint
|
@@ -403,6 +418,20 @@ module Aws::DynamoDB
|
|
403
418
|
end
|
404
419
|
end
|
405
420
|
|
421
|
+
class GetResourcePolicy
|
422
|
+
def self.build(context)
|
423
|
+
unless context.config.regional_endpoint
|
424
|
+
endpoint = context.config.endpoint.to_s
|
425
|
+
end
|
426
|
+
Aws::DynamoDB::EndpointParameters.new(
|
427
|
+
region: context.config.region,
|
428
|
+
use_dual_stack: context.config.use_dualstack_endpoint,
|
429
|
+
use_fips: context.config.use_fips_endpoint,
|
430
|
+
endpoint: endpoint,
|
431
|
+
)
|
432
|
+
end
|
433
|
+
end
|
434
|
+
|
406
435
|
class ImportTable
|
407
436
|
def self.build(context)
|
408
437
|
unless context.config.regional_endpoint
|
@@ -529,6 +558,20 @@ module Aws::DynamoDB
|
|
529
558
|
end
|
530
559
|
end
|
531
560
|
|
561
|
+
class PutResourcePolicy
|
562
|
+
def self.build(context)
|
563
|
+
unless context.config.regional_endpoint
|
564
|
+
endpoint = context.config.endpoint.to_s
|
565
|
+
end
|
566
|
+
Aws::DynamoDB::EndpointParameters.new(
|
567
|
+
region: context.config.region,
|
568
|
+
use_dual_stack: context.config.use_dualstack_endpoint,
|
569
|
+
use_fips: context.config.use_fips_endpoint,
|
570
|
+
endpoint: endpoint,
|
571
|
+
)
|
572
|
+
end
|
573
|
+
end
|
574
|
+
|
532
575
|
class Query
|
533
576
|
def self.build(context)
|
534
577
|
unless context.config.regional_endpoint
|
@@ -711,6 +754,20 @@ module Aws::DynamoDB
|
|
711
754
|
end
|
712
755
|
end
|
713
756
|
|
757
|
+
class UpdateKinesisStreamingDestination
|
758
|
+
def self.build(context)
|
759
|
+
unless context.config.regional_endpoint
|
760
|
+
endpoint = context.config.endpoint.to_s
|
761
|
+
end
|
762
|
+
Aws::DynamoDB::EndpointParameters.new(
|
763
|
+
region: context.config.region,
|
764
|
+
use_dual_stack: context.config.use_dualstack_endpoint,
|
765
|
+
use_fips: context.config.use_fips_endpoint,
|
766
|
+
endpoint: endpoint,
|
767
|
+
)
|
768
|
+
end
|
769
|
+
end
|
770
|
+
|
714
771
|
class UpdateTable
|
715
772
|
def self.build(context)
|
716
773
|
unless context.config.regional_endpoint
|
@@ -46,6 +46,7 @@ module Aws::DynamoDB
|
|
46
46
|
# * {ItemCollectionSizeLimitExceededException}
|
47
47
|
# * {LimitExceededException}
|
48
48
|
# * {PointInTimeRecoveryUnavailableException}
|
49
|
+
# * {PolicyNotFoundException}
|
49
50
|
# * {ProvisionedThroughputExceededException}
|
50
51
|
# * {ReplicaAlreadyExistsException}
|
51
52
|
# * {ReplicaNotFoundException}
|
@@ -108,6 +109,11 @@ module Aws::DynamoDB
|
|
108
109
|
def message
|
109
110
|
@message || @data[:message]
|
110
111
|
end
|
112
|
+
|
113
|
+
# @return [String]
|
114
|
+
def item
|
115
|
+
@data[:item]
|
116
|
+
end
|
111
117
|
end
|
112
118
|
|
113
119
|
class ContinuousBackupsUnavailableException < ServiceError
|
@@ -350,6 +356,21 @@ module Aws::DynamoDB
|
|
350
356
|
end
|
351
357
|
end
|
352
358
|
|
359
|
+
class PolicyNotFoundException < ServiceError
|
360
|
+
|
361
|
+
# @param [Seahorse::Client::RequestContext] context
|
362
|
+
# @param [String] message
|
363
|
+
# @param [Aws::DynamoDB::Types::PolicyNotFoundException] data
|
364
|
+
def initialize(context, message, data = Aws::EmptyStructure.new)
|
365
|
+
super(context, message, data)
|
366
|
+
end
|
367
|
+
|
368
|
+
# @return [String]
|
369
|
+
def message
|
370
|
+
@message || @data[:message]
|
371
|
+
end
|
372
|
+
end
|
373
|
+
|
353
374
|
class ProvisionedThroughputExceededException < ServiceError
|
354
375
|
|
355
376
|
# @param [Seahorse::Client::RequestContext] context
|
@@ -14,6 +14,7 @@ module Aws::DynamoDB
|
|
14
14
|
option(
|
15
15
|
:endpoint_provider,
|
16
16
|
doc_type: 'Aws::DynamoDB::EndpointProvider',
|
17
|
+
rbs_type: 'untyped',
|
17
18
|
docstring: 'The endpoint provider used to resolve endpoints. Any '\
|
18
19
|
'object that responds to `#resolve_endpoint(parameters)` '\
|
19
20
|
'where `parameters` is a Struct similar to '\
|
@@ -25,16 +26,17 @@ module Aws::DynamoDB
|
|
25
26
|
# @api private
|
26
27
|
class Handler < Seahorse::Client::Handler
|
27
28
|
def call(context)
|
28
|
-
# If endpoint was discovered, do not resolve or apply the endpoint.
|
29
29
|
unless context[:discovered_endpoint]
|
30
30
|
params = parameters_for_operation(context)
|
31
31
|
endpoint = context.config.endpoint_provider.resolve_endpoint(params)
|
32
32
|
|
33
33
|
context.http_request.endpoint = endpoint.url
|
34
34
|
apply_endpoint_headers(context, endpoint.headers)
|
35
|
+
|
36
|
+
context[:endpoint_params] = params
|
37
|
+
context[:endpoint_properties] = endpoint.properties
|
35
38
|
end
|
36
39
|
|
37
|
-
context[:endpoint_params] = params
|
38
40
|
context[:auth_scheme] =
|
39
41
|
Aws::Endpoints.resolve_auth_scheme(context, endpoint)
|
40
42
|
|
@@ -72,6 +74,8 @@ module Aws::DynamoDB
|
|
72
74
|
Aws::DynamoDB::Endpoints::DeleteBackup.build(context)
|
73
75
|
when :delete_item
|
74
76
|
Aws::DynamoDB::Endpoints::DeleteItem.build(context)
|
77
|
+
when :delete_resource_policy
|
78
|
+
Aws::DynamoDB::Endpoints::DeleteResourcePolicy.build(context)
|
75
79
|
when :delete_table
|
76
80
|
Aws::DynamoDB::Endpoints::DeleteTable.build(context)
|
77
81
|
when :describe_backup
|
@@ -112,6 +116,8 @@ module Aws::DynamoDB
|
|
112
116
|
Aws::DynamoDB::Endpoints::ExportTableToPointInTime.build(context)
|
113
117
|
when :get_item
|
114
118
|
Aws::DynamoDB::Endpoints::GetItem.build(context)
|
119
|
+
when :get_resource_policy
|
120
|
+
Aws::DynamoDB::Endpoints::GetResourcePolicy.build(context)
|
115
121
|
when :import_table
|
116
122
|
Aws::DynamoDB::Endpoints::ImportTable.build(context)
|
117
123
|
when :list_backups
|
@@ -130,6 +136,8 @@ module Aws::DynamoDB
|
|
130
136
|
Aws::DynamoDB::Endpoints::ListTagsOfResource.build(context)
|
131
137
|
when :put_item
|
132
138
|
Aws::DynamoDB::Endpoints::PutItem.build(context)
|
139
|
+
when :put_resource_policy
|
140
|
+
Aws::DynamoDB::Endpoints::PutResourcePolicy.build(context)
|
133
141
|
when :query
|
134
142
|
Aws::DynamoDB::Endpoints::Query.build(context)
|
135
143
|
when :restore_table_from_backup
|
@@ -156,6 +164,8 @@ module Aws::DynamoDB
|
|
156
164
|
Aws::DynamoDB::Endpoints::UpdateGlobalTableSettings.build(context)
|
157
165
|
when :update_item
|
158
166
|
Aws::DynamoDB::Endpoints::UpdateItem.build(context)
|
167
|
+
when :update_kinesis_streaming_destination
|
168
|
+
Aws::DynamoDB::Endpoints::UpdateKinesisStreamingDestination.build(context)
|
159
169
|
when :update_table
|
160
170
|
Aws::DynamoDB::Endpoints::UpdateTable.build(context)
|
161
171
|
when :update_table_replica_auto_scaling
|
@@ -83,11 +83,11 @@ module Aws
|
|
83
83
|
# # note that the request `:key` had to be type prefixed
|
84
84
|
# resp = dynamodb.get(table_name: 'aws-sdk', key: { 'id' => { s: 'uuid' }})
|
85
85
|
# resp.item
|
86
|
-
#
|
87
|
-
#
|
88
|
-
#
|
89
|
-
#
|
90
|
-
#
|
86
|
+
# {
|
87
|
+
# "id"=> <struct s='uuid', n=nil, b=nil, ss=nil, ns=nil, bs=nil, m=nil, l=nil, null=nil, bool=nil>
|
88
|
+
# "age"=> <struct s=nil, n="35", b=nil, ss=nil, ns=nil, bs=nil, m=nil, l=nil, null=nil, bool=nil>
|
89
|
+
# ...
|
90
|
+
# }
|
91
91
|
#
|
92
92
|
class SimpleAttributes < Seahorse::Client::Plugin
|
93
93
|
|
@@ -119,12 +119,15 @@ their types specified, e.g. `{ s: 'abc' }` instead of simply
|
|
119
119
|
@handler.call(context).on(200) do |response|
|
120
120
|
response.data = translate_output(response)
|
121
121
|
end
|
122
|
+
rescue Aws::Errors::ServiceError => e
|
123
|
+
e.data = translate_error_data(context, e.data)
|
124
|
+
raise e
|
122
125
|
end
|
123
126
|
|
124
127
|
private
|
125
128
|
|
126
129
|
def translate_input(context)
|
127
|
-
if shape = context.operation.input
|
130
|
+
if (shape = context.operation.input)
|
128
131
|
ValueTranslator.new(shape, :marshal).apply(context.params)
|
129
132
|
else
|
130
133
|
context.params
|
@@ -132,13 +135,24 @@ their types specified, e.g. `{ s: 'abc' }` instead of simply
|
|
132
135
|
end
|
133
136
|
|
134
137
|
def translate_output(response)
|
135
|
-
if shape = response.context.operation.output
|
138
|
+
if (shape = response.context.operation.output)
|
136
139
|
ValueTranslator.new(shape, :unmarshal).apply(response.data)
|
137
140
|
else
|
138
141
|
response.data
|
139
142
|
end
|
140
143
|
end
|
141
144
|
|
145
|
+
def translate_error_data(context, error_data)
|
146
|
+
shape = context.operation.errors.find do |e|
|
147
|
+
error_data.is_a?(e.shape.struct_class)
|
148
|
+
end
|
149
|
+
if shape
|
150
|
+
ValueTranslator.new(shape, :unmarshal).apply(error_data)
|
151
|
+
else
|
152
|
+
error_data
|
153
|
+
end
|
154
|
+
end
|
155
|
+
|
142
156
|
end
|
143
157
|
|
144
158
|
# @api private
|
@@ -39,7 +39,7 @@ module Aws::DynamoDB
|
|
39
39
|
#
|
40
40
|
# dynamo_db.batch_get_item({
|
41
41
|
# request_items: { # required
|
42
|
-
# "
|
42
|
+
# "TableArn" => {
|
43
43
|
# keys: [ # required
|
44
44
|
# {
|
45
45
|
# "AttributeName" => "value", # value <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
|
@@ -57,9 +57,9 @@ module Aws::DynamoDB
|
|
57
57
|
# })
|
58
58
|
# @param [Hash] options ({})
|
59
59
|
# @option options [required, Hash<String,Types::KeysAndAttributes>] :request_items
|
60
|
-
# A map of one or more table names and, for each table, a
|
61
|
-
# describes one or more items to retrieve from that table. Each
|
62
|
-
# name can be used only once per `BatchGetItem` request.
|
60
|
+
# A map of one or more table names or table ARNs and, for each table, a
|
61
|
+
# map that describes one or more items to retrieve from that table. Each
|
62
|
+
# table name or ARN can be used only once per `BatchGetItem` request.
|
63
63
|
#
|
64
64
|
# Each element in the map of items to retrieve consists of the
|
65
65
|
# following:
|
@@ -160,7 +160,9 @@ module Aws::DynamoDB
|
|
160
160
|
# * `NONE` - No `ConsumedCapacity` details are included in the response.
|
161
161
|
# @return [Types::BatchGetItemOutput]
|
162
162
|
def batch_get_item(options = {})
|
163
|
-
resp =
|
163
|
+
resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
|
164
|
+
@client.batch_get_item(options)
|
165
|
+
end
|
164
166
|
resp.data
|
165
167
|
end
|
166
168
|
|
@@ -168,7 +170,7 @@ module Aws::DynamoDB
|
|
168
170
|
#
|
169
171
|
# dynamo_db.batch_write_item({
|
170
172
|
# request_items: { # required
|
171
|
-
# "
|
173
|
+
# "TableArn" => [
|
172
174
|
# {
|
173
175
|
# put_request: {
|
174
176
|
# item: { # required
|
@@ -188,9 +190,9 @@ module Aws::DynamoDB
|
|
188
190
|
# })
|
189
191
|
# @param [Hash] options ({})
|
190
192
|
# @option options [required, Hash<String,Array>] :request_items
|
191
|
-
# A map of one or more table names and, for each table, a
|
192
|
-
# operations to be performed (`DeleteRequest` or `PutRequest`).
|
193
|
-
# element in the map consists of the following:
|
193
|
+
# A map of one or more table names or table ARNs and, for each table, a
|
194
|
+
# list of operations to be performed (`DeleteRequest` or `PutRequest`).
|
195
|
+
# Each element in the map consists of the following:
|
194
196
|
#
|
195
197
|
# * `DeleteRequest` - Perform a `DeleteItem` operation on the specified
|
196
198
|
# item. The item to be deleted is identified by a `Key` subelement:
|
@@ -241,7 +243,9 @@ module Aws::DynamoDB
|
|
241
243
|
# response. If set to `NONE` (the default), no statistics are returned.
|
242
244
|
# @return [Types::BatchWriteItemOutput]
|
243
245
|
def batch_write_item(options = {})
|
244
|
-
resp =
|
246
|
+
resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
|
247
|
+
@client.batch_write_item(options)
|
248
|
+
end
|
245
249
|
resp.data
|
246
250
|
end
|
247
251
|
|
@@ -254,7 +258,7 @@ module Aws::DynamoDB
|
|
254
258
|
# attribute_type: "S", # required, accepts S, N, B
|
255
259
|
# },
|
256
260
|
# ],
|
257
|
-
# table_name: "
|
261
|
+
# table_name: "TableArn", # required
|
258
262
|
# key_schema: [ # required
|
259
263
|
# {
|
260
264
|
# attribute_name: "KeySchemaAttributeName", # required
|
@@ -293,6 +297,10 @@ module Aws::DynamoDB
|
|
293
297
|
# read_capacity_units: 1, # required
|
294
298
|
# write_capacity_units: 1, # required
|
295
299
|
# },
|
300
|
+
# on_demand_throughput: {
|
301
|
+
# max_read_request_units: 1,
|
302
|
+
# max_write_request_units: 1,
|
303
|
+
# },
|
296
304
|
# },
|
297
305
|
# ],
|
298
306
|
# billing_mode: "PROVISIONED", # accepts PROVISIONED, PAY_PER_REQUEST
|
@@ -317,13 +325,19 @@ module Aws::DynamoDB
|
|
317
325
|
# ],
|
318
326
|
# table_class: "STANDARD", # accepts STANDARD, STANDARD_INFREQUENT_ACCESS
|
319
327
|
# deletion_protection_enabled: false,
|
328
|
+
# resource_policy: "ResourcePolicy",
|
329
|
+
# on_demand_throughput: {
|
330
|
+
# max_read_request_units: 1,
|
331
|
+
# max_write_request_units: 1,
|
332
|
+
# },
|
320
333
|
# })
|
321
334
|
# @param [Hash] options ({})
|
322
335
|
# @option options [required, Array<Types::AttributeDefinition>] :attribute_definitions
|
323
336
|
# An array of attributes that describe the key schema for the table and
|
324
337
|
# indexes.
|
325
338
|
# @option options [required, String] :table_name
|
326
|
-
# The name of the table to create.
|
339
|
+
# The name of the table to create. You can also provide the Amazon
|
340
|
+
# Resource Name (ARN) of the table in this parameter.
|
327
341
|
# @option options [required, Array<Types::KeySchemaElement>] :key_schema
|
328
342
|
# Specifies the attributes that make up the primary key for a table or
|
329
343
|
# an index. The attributes in `KeySchema` must also be defined in the
|
@@ -453,16 +467,16 @@ module Aws::DynamoDB
|
|
453
467
|
#
|
454
468
|
# * `PROVISIONED` - We recommend using `PROVISIONED` for predictable
|
455
469
|
# workloads. `PROVISIONED` sets the billing mode to [Provisioned
|
456
|
-
#
|
470
|
+
# capacity mode][1].
|
457
471
|
#
|
458
472
|
# * `PAY_PER_REQUEST` - We recommend using `PAY_PER_REQUEST` for
|
459
473
|
# unpredictable workloads. `PAY_PER_REQUEST` sets the billing mode to
|
460
|
-
# [On-
|
474
|
+
# [On-demand capacity mode][2].
|
461
475
|
#
|
462
476
|
#
|
463
477
|
#
|
464
|
-
# [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/
|
465
|
-
# [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/
|
478
|
+
# [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/provisioned-capacity-mode.html
|
479
|
+
# [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/on-demand-capacity-mode.html
|
466
480
|
# @option options [Types::ProvisionedThroughput] :provisioned_throughput
|
467
481
|
# Represents the provisioned throughput settings for a specified table
|
468
482
|
# or index. The settings can be modified using the `UpdateTable`
|
@@ -516,9 +530,37 @@ module Aws::DynamoDB
|
|
516
530
|
# @option options [Boolean] :deletion_protection_enabled
|
517
531
|
# Indicates whether deletion protection is to be enabled (true) or
|
518
532
|
# disabled (false) on the table.
|
533
|
+
# @option options [String] :resource_policy
|
534
|
+
# An Amazon Web Services resource-based policy document in JSON format
|
535
|
+
# that will be attached to the table.
|
536
|
+
#
|
537
|
+
# When you attach a resource-based policy while creating a table, the
|
538
|
+
# policy application is *strongly consistent*.
|
539
|
+
#
|
540
|
+
# The maximum size supported for a resource-based policy document is 20
|
541
|
+
# KB. DynamoDB counts whitespaces when calculating the size of a policy
|
542
|
+
# against this limit. For a full list of all considerations that apply
|
543
|
+
# for resource-based policies, see [Resource-based policy
|
544
|
+
# considerations][1].
|
545
|
+
#
|
546
|
+
# <note markdown="1"> You need to specify the `CreateTable` and `PutResourcePolicy` IAM
|
547
|
+
# actions for authorizing a user to create a table with a resource-based
|
548
|
+
# policy.
|
549
|
+
#
|
550
|
+
# </note>
|
551
|
+
#
|
552
|
+
#
|
553
|
+
#
|
554
|
+
# [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/rbac-considerations.html
|
555
|
+
# @option options [Types::OnDemandThroughput] :on_demand_throughput
|
556
|
+
# Sets the maximum number of read and write units for the specified
|
557
|
+
# table in on-demand capacity mode. If you use this parameter, you must
|
558
|
+
# specify `MaxReadRequestUnits`, `MaxWriteRequestUnits`, or both.
|
519
559
|
# @return [Table]
|
520
560
|
def create_table(options = {})
|
521
|
-
resp =
|
561
|
+
resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
|
562
|
+
@client.create_table(options)
|
563
|
+
end
|
522
564
|
Table.new(
|
523
565
|
name: resp.data.table_description.table_name,
|
524
566
|
data: resp.data.table_description,
|
@@ -544,7 +586,9 @@ module Aws::DynamoDB
|
|
544
586
|
# @return [Table::Collection]
|
545
587
|
def tables(options = {})
|
546
588
|
batches = Enumerator.new do |y|
|
547
|
-
resp =
|
589
|
+
resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
|
590
|
+
@client.list_tables(options)
|
591
|
+
end
|
548
592
|
resp.each_page do |page|
|
549
593
|
batch = []
|
550
594
|
page.data.table_names.each do |t|
|