aws-sdk 1.9.5 → 1.10.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.
Files changed (49) hide show
  1. data/lib/aws/api_config/DynamoDB-2012-08-10.yml +4 -0
  2. data/lib/aws/api_config/EC2-2013-02-01.yml +1 -1
  3. data/lib/aws/api_config/ElasticTranscoder-2012-09-25.yml +948 -19
  4. data/lib/aws/api_config/OpsWorks-2013-02-18.yml +83 -2
  5. data/lib/aws/auto_scaling/client.rb +15 -0
  6. data/lib/aws/cloud_formation/client.rb +11 -0
  7. data/lib/aws/cloud_front/client.rb +58 -40
  8. data/lib/aws/cloud_search/client.rb +20 -0
  9. data/lib/aws/cloud_watch/client.rb +5 -0
  10. data/lib/aws/core.rb +5 -4
  11. data/lib/aws/core/configuration.rb +3 -1
  12. data/lib/aws/core/policy.rb +27 -1
  13. data/lib/aws/data_pipeline/client.rb +12 -0
  14. data/lib/aws/direct_connect/client.rb +11 -0
  15. data/lib/aws/dynamo_db/client.rb +17 -0
  16. data/lib/aws/dynamo_db/client_v2.rb +905 -417
  17. data/lib/aws/ec2.rb +1 -1
  18. data/lib/aws/ec2/client.rb +88 -0
  19. data/lib/aws/ec2/instance.rb +3 -1
  20. data/lib/aws/ec2/security_group.rb +1 -1
  21. data/lib/aws/elastic_beanstalk/client.rb +21 -0
  22. data/lib/aws/elastic_transcoder/client.rb +681 -114
  23. data/lib/aws/elasticache/client.rb +23 -0
  24. data/lib/aws/elb/client.rb +13 -0
  25. data/lib/aws/emr/client.rb +3 -0
  26. data/lib/aws/glacier/client.rb +7 -0
  27. data/lib/aws/iam/client.rb +35 -0
  28. data/lib/aws/import_export/client.rb +5 -0
  29. data/lib/aws/ops_works/client.rb +718 -238
  30. data/lib/aws/rds/client.rb +46 -0
  31. data/lib/aws/redshift/client.rb +30 -0
  32. data/lib/aws/route_53/client.rb +10 -0
  33. data/lib/aws/s3.rb +1 -1
  34. data/lib/aws/s3/client.rb +42 -27
  35. data/lib/aws/s3/client/xml.rb +10 -0
  36. data/lib/aws/s3/multipart_upload.rb +43 -16
  37. data/lib/aws/s3/s3_object.rb +61 -26
  38. data/lib/aws/s3/uploaded_part.rb +3 -1
  39. data/lib/aws/s3/uploaded_part_collection.rb +1 -1
  40. data/lib/aws/simple_db/client.rb +10 -0
  41. data/lib/aws/simple_email_service/client.rb +11 -0
  42. data/lib/aws/simple_workflow/client.rb +18 -0
  43. data/lib/aws/sns/client.rb +9 -0
  44. data/lib/aws/sqs/client.rb +9 -0
  45. data/lib/aws/storage_gateway/client.rb +72 -37
  46. data/lib/aws/sts/client.rb +3 -0
  47. data/lib/aws/version.rb +1 -1
  48. metadata +17 -9
  49. checksums.yaml +0 -7
@@ -62,6 +62,7 @@ module AWS
62
62
  # @return [Core::Response]
63
63
  # The #data method of the response object returns
64
64
  # a hash with the following structure:
65
+ #
65
66
  # * `Responses` - (Hash<String,Hash>)
66
67
  # * `member` - (Hash<String,Hash>)
67
68
  # * `S` - (String)
@@ -148,6 +149,7 @@ module AWS
148
149
  # @return [Core::Response]
149
150
  # The #data method of the response object returns
150
151
  # a hash with the following structure:
152
+ #
151
153
  # * `Responses` - (Hash<String,Hash>)
152
154
  # * `ConsumedCapacityUnits` - (Numeric)
153
155
  # * `UnprocessedItems` - (Hash<String,Hash>)
@@ -222,6 +224,7 @@ module AWS
222
224
  # @return [Core::Response]
223
225
  # The #data method of the response object returns
224
226
  # a hash with the following structure:
227
+ #
225
228
  # * `TableDescription` - (Hash)
226
229
  # * `TableName` - (String)
227
230
  # * `KeySchema` - (Hash)
@@ -236,6 +239,7 @@ module AWS
236
239
  # * `ProvisionedThroughput` - (Hash)
237
240
  # * `LastIncreaseDateTime` - (Time)
238
241
  # * `LastDecreaseDateTime` - (Time)
242
+ # * `NumberOfDecreasesToday` - (Integer)
239
243
  # * `ReadCapacityUnits` - (Integer)
240
244
  # * `WriteCapacityUnits` - (Integer)
241
245
  # * `TableSizeBytes` - (Integer)
@@ -307,6 +311,7 @@ module AWS
307
311
  # @return [Core::Response]
308
312
  # The #data method of the response object returns
309
313
  # a hash with the following structure:
314
+ #
310
315
  # * `Attributes` - (Hash<String,Hash>)
311
316
  # * `S` - (String)
312
317
  # * `N` - (String)
@@ -325,6 +330,7 @@ module AWS
325
330
  # @return [Core::Response]
326
331
  # The #data method of the response object returns
327
332
  # a hash with the following structure:
333
+ #
328
334
  # * `TableDescription` - (Hash)
329
335
  # * `TableName` - (String)
330
336
  # * `KeySchema` - (Hash)
@@ -339,6 +345,7 @@ module AWS
339
345
  # * `ProvisionedThroughput` - (Hash)
340
346
  # * `LastIncreaseDateTime` - (Time)
341
347
  # * `LastDecreaseDateTime` - (Time)
348
+ # * `NumberOfDecreasesToday` - (Integer)
342
349
  # * `ReadCapacityUnits` - (Integer)
343
350
  # * `WriteCapacityUnits` - (Integer)
344
351
  # * `TableSizeBytes` - (Integer)
@@ -353,6 +360,7 @@ module AWS
353
360
  # @return [Core::Response]
354
361
  # The #data method of the response object returns
355
362
  # a hash with the following structure:
363
+ #
356
364
  # * `Table` - (Hash)
357
365
  # * `TableName` - (String)
358
366
  # * `KeySchema` - (Hash)
@@ -367,6 +375,7 @@ module AWS
367
375
  # * `ProvisionedThroughput` - (Hash)
368
376
  # * `LastIncreaseDateTime` - (Time)
369
377
  # * `LastDecreaseDateTime` - (Time)
378
+ # * `NumberOfDecreasesToday` - (Integer)
370
379
  # * `ReadCapacityUnits` - (Integer)
371
380
  # * `WriteCapacityUnits` - (Integer)
372
381
  # * `TableSizeBytes` - (Integer)
@@ -417,6 +426,7 @@ module AWS
417
426
  # @return [Core::Response]
418
427
  # The #data method of the response object returns
419
428
  # a hash with the following structure:
429
+ #
420
430
  # * `Item` - (Hash<String,Hash>)
421
431
  # * `S` - (String)
422
432
  # * `N` - (String)
@@ -437,6 +447,7 @@ module AWS
437
447
  # @return [Core::Response]
438
448
  # The #data method of the response object returns
439
449
  # a hash with the following structure:
450
+ #
440
451
  # * `TableNames` - (Array<String>)
441
452
  # * `LastEvaluatedTableName` - (String)
442
453
 
@@ -485,6 +496,7 @@ module AWS
485
496
  # @return [Core::Response]
486
497
  # The #data method of the response object returns
487
498
  # a hash with the following structure:
499
+ #
488
500
  # * `Attributes` - (Hash<String,Hash>)
489
501
  # * `S` - (String)
490
502
  # * `N` - (String)
@@ -606,6 +618,7 @@ module AWS
606
618
  # @return [Core::Response]
607
619
  # The #data method of the response object returns
608
620
  # a hash with the following structure:
621
+ #
609
622
  # * `member` - (Hash<String,Hash>)
610
623
  # * `S` - (String)
611
624
  # * `N` - (String)
@@ -723,6 +736,7 @@ module AWS
723
736
  # @return [Core::Response]
724
737
  # The #data method of the response object returns
725
738
  # a hash with the following structure:
739
+ #
726
740
  # * `member` - (Hash<String,Hash>)
727
741
  # * `S` - (String)
728
742
  # * `N` - (String)
@@ -833,6 +847,7 @@ module AWS
833
847
  # @return [Core::Response]
834
848
  # The #data method of the response object returns
835
849
  # a hash with the following structure:
850
+ #
836
851
  # * `Attributes` - (Hash<String,Hash>)
837
852
  # * `S` - (String)
838
853
  # * `N` - (String)
@@ -861,6 +876,7 @@ module AWS
861
876
  # @return [Core::Response]
862
877
  # The #data method of the response object returns
863
878
  # a hash with the following structure:
879
+ #
864
880
  # * `TableDescription` - (Hash)
865
881
  # * `TableName` - (String)
866
882
  # * `KeySchema` - (Hash)
@@ -875,6 +891,7 @@ module AWS
875
891
  # * `ProvisionedThroughput` - (Hash)
876
892
  # * `LastIncreaseDateTime` - (Time)
877
893
  # * `LastDecreaseDateTime` - (Time)
894
+ # * `NumberOfDecreasesToday` - (Integer)
878
895
  # * `ReadCapacityUnits` - (Integer)
879
896
  # * `WriteCapacityUnits` - (Integer)
880
897
  # * `TableSizeBytes` - (Integer)
@@ -22,28 +22,39 @@ module AWS
22
22
  # @!method batch_get_item(options = {})
23
23
  # Calls the BatchGetItem API operation.
24
24
  # @param [Hash] options
25
- # * `:request_items` - *required* - (Hash<String,Hash>)
26
- # * `:keys` - *required* - (Array<Hash<String,Hash>>)
27
- # * `:s` - (String) Strings are Unicode with UTF-8 binary encoding.
28
- # The maximum size is limited by the size of the primary key
29
- # (1024 bytes as a range part of a key or 2048 bytes as a single
30
- # part hash key) or the item size (64k).
31
- # * `:n` - (String) Numbers are positive or negative exact-value
32
- # decimals and integers. A number can have up to 38 digits
33
- # precision and can be between 10^-128 to 10^+126.
34
- # * `:b` - (String) Binary attributes are sequences of unsigned
35
- # bytes.
36
- # * `:ss` - (Array<String>) A set of strings.
37
- # * `:ns` - (Array<String>) A set of numbers.
38
- # * `:bs` - (Array<String>) A set of binary attributes.
39
- # * `:attributes_to_get` - (Array<String>)
40
- # * `:consistent_read` - (Boolean)
41
- # * `:return_consumed_capacity` - (String) Valid values include:
42
- # * `TOTAL`
43
- # * `NONE`
25
+ # * `:request_items` - *required* - (Hash<String,Hash>) A map of one or
26
+ # more table names and, for each table, the corresponding primary
27
+ # keys for the items to retrieve. Each table name can be invoked only
28
+ # once. Each element in the map consists of the following: Keys - An
29
+ # array of primary key attribute values that define specific items in
30
+ # the table. AttributesToGet - One or more attributes to be retrieved
31
+ # from the table or index. By default, all attributes are returned.
32
+ # If a specified attribute is not found, it does not appear in the
33
+ # result. ConsistentRead - If `true` , a strongly consistent read is
34
+ # used; if `false` (the default), an eventually consistent read is
35
+ # used.
36
+ # * `:keys` - *required* - (Array<Hash<String,Hash>>) Represents the
37
+ # primary key attribute values that define the items and the
38
+ # attributes associated with the items.
39
+ # * `:s` - (String) Represents a String data type
40
+ # * `:n` - (String) Represents a Number data type
41
+ # * `:b` - (String) Represents a Binary data type
42
+ # * `:ss` - (Array<String>) Represents a String set data type
43
+ # * `:ns` - (Array<String>) Represents a Number set data type
44
+ # * `:bs` - (Array<String>) Represents a Binary set data type
45
+ # * `:attributes_to_get` - (Array<String>) Represents one or more
46
+ # attributes to retrieve from the table or index. If no attribute
47
+ # names are specified then all attributes will be returned. If any
48
+ # of the specified attributes are not found, they will not appear
49
+ # in the result.
50
+ # * `:consistent_read` - (Boolean) Represents the consistency of a
51
+ # read operation. If set to `true` , then a strongly consistent
52
+ # read is used; otherwise, an eventually consistent read is used.
53
+ # * `:return_consumed_capacity` - (String)
44
54
  # @return [Core::Response]
45
55
  # The #data method of the response object returns
46
56
  # a hash with the following structure:
57
+ #
47
58
  # * `:responses` - (Hash<String,Hash>)
48
59
  # * `:member` - (Hash<String,Hash>)
49
60
  # * `:s` - (String)
@@ -70,46 +81,57 @@ module AWS
70
81
  # Calls the BatchWriteItem API operation.
71
82
  # @param [Hash] options
72
83
  # * `:request_items` - *required* - (Hash<String,Array<Hash>>) A map of
73
- # table name to list-of-write-requests. Used as input to the
74
- # BatchWriteItem API call
75
- # * `:put_request` - (Hash)
76
- # * `:item` - *required* - (Hash<String,Hash>) The item to put
77
- # * `:s` - (String) Strings are Unicode with UTF-8 binary
78
- # encoding. The maximum size is limited by the size of the
79
- # primary key (1024 bytes as a range part of a key or 2048
80
- # bytes as a single part hash key) or the item size (64k).
81
- # * `:n` - (String) Numbers are positive or negative exact-value
82
- # decimals and integers. A number can have up to 38 digits
83
- # precision and can be between 10^-128 to 10^+126.
84
- # * `:b` - (String) Binary attributes are sequences of unsigned
85
- # bytes.
86
- # * `:ss` - (Array<String>) A set of strings.
87
- # * `:ns` - (Array<String>) A set of numbers.
88
- # * `:bs` - (Array<String>) A set of binary attributes.
89
- # * `:delete_request` - (Hash)
90
- # * `:key` - *required* - (Hash<String,Hash>) The item's key to be
91
- # delete
92
- # * `:s` - (String) Strings are Unicode with UTF-8 binary
93
- # encoding. The maximum size is limited by the size of the
94
- # primary key (1024 bytes as a range part of a key or 2048
95
- # bytes as a single part hash key) or the item size (64k).
96
- # * `:n` - (String) Numbers are positive or negative exact-value
97
- # decimals and integers. A number can have up to 38 digits
98
- # precision and can be between 10^-128 to 10^+126.
99
- # * `:b` - (String) Binary attributes are sequences of unsigned
100
- # bytes.
101
- # * `:ss` - (Array<String>) A set of strings.
102
- # * `:ns` - (Array<String>) A set of numbers.
103
- # * `:bs` - (Array<String>) A set of binary attributes.
104
- # * `:return_consumed_capacity` - (String) Valid values include:
105
- # * `TOTAL`
106
- # * `NONE`
107
- # * `:return_item_collection_metrics` - (String) Valid values include:
108
- # * `SIZE`
109
- # * `NONE`
84
+ # one or more table names and, for each table, a list of operations
85
+ # to be performed (DeleteRequest or PutRequest). Each element in the
86
+ # map consists of the following: DeleteRequest - Perform a DeleteItem
87
+ # operation on the specified item. The item to be deleted is
88
+ # identified by a Key subelement: Key - A map of primary key
89
+ # attribute values that uniquely identify the item. Each entry in
90
+ # this map consists of an attribute name and an attribute value.
91
+ # PutRequest - Perform a PutItem operation on the specified item. The
92
+ # item to be put is identified by an Item subelement: Item - A map of
93
+ # attributes and their values. Each entry in this map consists of an
94
+ # attribute name and an attribute value. Attribute values must not be
95
+ # null; string and binary type attributes must have lengths greater
96
+ # than zero; and set type attributes must not be empty. Requests that
97
+ # contain empty values will be rejected with a ValidationException.
98
+ # If you specify any attributes that are part of an index key, then
99
+ # the data types for those attributes must match those of the schema
100
+ # in the table's attribute definition.
101
+ # * `:put_request` - (Hash) Represents a request to perform a
102
+ # DeleteItem operation.
103
+ # * `:item` - *required* - (Hash<String,Hash>) A map of attribute
104
+ # name to attribute values, representing the primary key of an
105
+ # item to be processed by PutItem. All of the table's primary key
106
+ # attributes must be specified, and their data types must match
107
+ # those of the table's key schema. If any attributes are present
108
+ # in the item which are part of an index key schema for the
109
+ # table, their types must match the index key schema.
110
+ # * `:s` - (String) Represents a String data type
111
+ # * `:n` - (String) Represents a Number data type
112
+ # * `:b` - (String) Represents a Binary data type
113
+ # * `:ss` - (Array<String>) Represents a String set data type
114
+ # * `:ns` - (Array<String>) Represents a Number set data type
115
+ # * `:bs` - (Array<String>) Represents a Binary set data type
116
+ # * `:delete_request` - (Hash) Represents a request to perform a
117
+ # PutItem operation.
118
+ # * `:key` - *required* - (Hash<String,Hash>) A map of attribute
119
+ # name to attribute values, representing the primary key of the
120
+ # item to delete. All of the table's primary key attributes must
121
+ # be specified, and their data types must match those of the
122
+ # table's key schema.
123
+ # * `:s` - (String) Represents a String data type
124
+ # * `:n` - (String) Represents a Number data type
125
+ # * `:b` - (String) Represents a Binary data type
126
+ # * `:ss` - (Array<String>) Represents a String set data type
127
+ # * `:ns` - (Array<String>) Represents a Number set data type
128
+ # * `:bs` - (Array<String>) Represents a Binary set data type
129
+ # * `:return_consumed_capacity` - (String)
130
+ # * `:return_item_collection_metrics` - (String)
110
131
  # @return [Core::Response]
111
132
  # The #data method of the response object returns
112
133
  # a hash with the following structure:
134
+ #
113
135
  # * `:unprocessed_items` - (Hash<String,Hash>)
114
136
  # * `:value` - (Array<Hash>)
115
137
  # * `:put_request` - (Hash)
@@ -145,48 +167,77 @@ module AWS
145
167
  # @!method create_table(options = {})
146
168
  # Calls the CreateTable API operation.
147
169
  # @param [Hash] options
148
- # * `:attribute_definitions` - *required* - (Array<Hash>)
149
- # * `:attribute_name` - *required* - (String)
150
- # * `:attribute_type` - *required* - (String) Valid values include:
151
- # * `S`
152
- # * `N`
153
- # * `B`
154
- # * `:table_name` - *required* - (String) The name of the table you
155
- # want to create. Allowed characters are a-z, A-Z, 0-9, _
156
- # (underscore), - (hyphen) and . (period).
157
- # * `:key_schema` - *required* - (Array<Hash>)
158
- # * `:attribute_name` - *required* - (String) The AttributeName of
159
- # the KeySchemaElement.
160
- # * `:key_type` - *required* - (String) Valid values include:
161
- # * `HASH`
162
- # * `RANGE`
163
- # * `:local_secondary_indexes` - (Array<Hash>)
164
- # * `:index_name` - *required* - (String)
165
- # * `:key_schema` - *required* - (Array<Hash>)
166
- # * `:attribute_name` - *required* - (String) The AttributeName of
167
- # the KeySchemaElement.
168
- # * `:key_type` - *required* - (String) Valid values include:
169
- # * `HASH`
170
- # * `RANGE`
170
+ # * `:attribute_definitions` - *required* - (Array<Hash>) An array of
171
+ # attributes that describe the key schema for the table and indexes.
172
+ # * `:attribute_name` - *required* - (String) A name for the
173
+ # attribute.
174
+ # * `:attribute_type` - *required* - (String) The data type for the
175
+ # attribute.
176
+ # * `:table_name` - *required* - (String) The name of the table to
177
+ # create.
178
+ # * `:key_schema` - *required* - (Array<Hash>) Specifies the attributes
179
+ # that make up the primary key for the table. The attributes in
180
+ # KeySchema must also be defined in the AttributeDefinitions array.
181
+ # For more information, see Data Model . Each KeySchemaElement in the
182
+ # array is composed of: AttributeName - The name of this key
183
+ # attribute. KeyType - Determines whether the key attribute is HASH
184
+ # or RANGE. For a primary key that consists of a hash attribute, you
185
+ # must specify exactly one element with a KeyType of HASH. For a
186
+ # primary key that consists of hash and range attributes, you must
187
+ # specify exactly two elements, in this order: The first element must
188
+ # have a KeyType of HASH, and the second element must have a KeyType
189
+ # of RANGE. For more information, see Specifying the Primary Key .
190
+ # * `:attribute_name` - *required* - (String) Represents the name of
191
+ # a key attribute.
192
+ # * `:key_type` - *required* - (String) Represents the attribute
193
+ # data, consisting of the data type and the attribute value itself.
194
+ # * `:local_secondary_indexes` - (Array<Hash>) One or more secondary
195
+ # indexes (the maximum is five) to be created on the table. Each
196
+ # index is scoped to a given hash key value. There is a 10 gigabyte
197
+ # size limit per hash key; otherwise, the size of a local secondary
198
+ # index is unconstrained. Each secondary index in the array includes
199
+ # the following: IndexName - The name of the secondary index. Must be
200
+ # unique only for this table. KeySchema - Specifies the key schema
201
+ # for the index. The key schema must begin with the same hash key
202
+ # attribute as the table.
203
+ # * `:index_name` - *required* - (String) Represents the name of the
204
+ # secondary index. The name must be unique among all other indexes
205
+ # on this table.
206
+ # * `:key_schema` - *required* - (Array<Hash>) Represents the
207
+ # complete index key schema, which consists of one or more pairs of
208
+ # attribute names and key types (HASH or RANGE).
209
+ # * `:attribute_name` - *required* - (String) Represents the name
210
+ # of a key attribute.
211
+ # * `:key_type` - *required* - (String) Represents the attribute
212
+ # data, consisting of the data type and the attribute value
213
+ # itself.
171
214
  # * `:projection` - *required* - (Hash)
172
- # * `:projection_type` - (String) Valid values include:
173
- # * `ALL`
174
- # * `KEYS_ONLY`
175
- # * `INCLUDE`
176
- # * `:non_key_attributes` - (Array<String>)
215
+ # * `:projection_type` - (String) Represents the set of attributes
216
+ # that are projected into the index: KEYS_ONLY - Only the index
217
+ # and primary keys are projected into the index. INCLUDE - Only
218
+ # the specified table attributes are projected into the index.
219
+ # The list of projected attributes are in NonKeyAttributes. ALL -
220
+ # All of the table attributes are projected into the index.
221
+ # * `:non_key_attributes` - (Array<String>) Represents the non-key
222
+ # attribute names which will be projected into the index. The
223
+ # total count of attributes specified in NonKeyAttributes, summed
224
+ # across all of the local secondary indexes, must not exceed 20.
225
+ # If you project the same attribute into two different indexes,
226
+ # this counts as two distinct attributes when determining the
227
+ # total.
177
228
  # * `:provisioned_throughput` - *required* - (Hash)
178
- # * `:read_capacity_units` - *required* - (Integer) ReadCapacityUnits
179
- # are in terms of strictly consistent reads, assuming items of 1k.
180
- # 2k items require twice the ReadCapacityUnits.
181
- # Eventually-consistent reads only require half the
182
- # ReadCapacityUnits of stirctly consistent reads.
183
- # * `:write_capacity_units` - *required* - (Integer)
184
- # WriteCapacityUnits are in terms of strictly consistent reads,
185
- # assuming items of 1k. 2k items require twice the
186
- # WriteCapacityUnits.
229
+ # * `:read_capacity_units` - *required* - (Integer) The maximum
230
+ # number of strongly consistent reads consumed per second before
231
+ # returns a ThrottlingException. For more information, see
232
+ # Specifying Read and Write Requirements .
233
+ # * `:write_capacity_units` - *required* - (Integer) The maximum
234
+ # number of writes consumed per second before returns a
235
+ # ThrottlingException. For more information, see Specifying Read
236
+ # and Write Requirements .
187
237
  # @return [Core::Response]
188
238
  # The #data method of the response object returns
189
239
  # a hash with the following structure:
240
+ #
190
241
  # * `:table_description` - (Hash)
191
242
  # * `:attribute_definitions` - (Array<Hash>)
192
243
  # * `:attribute_name` - (String)
@@ -219,54 +270,61 @@ module AWS
219
270
  # @!method delete_item(options = {})
220
271
  # Calls the DeleteItem API operation.
221
272
  # @param [Hash] options
222
- # * `:table_name` - *required* - (String) The name of the table in
223
- # which you want to delete an item. Allowed characters are a-z, A-Z,
224
- # 0-9, _ (underscore), - (hyphen) and . (period).
225
- # * `:key` - *required* - (Hash<String,Hash>)
226
- # * `:s` - (String) Strings are Unicode with UTF-8 binary encoding.
227
- # The maximum size is limited by the size of the primary key (1024
228
- # bytes as a range part of a key or 2048 bytes as a single part
229
- # hash key) or the item size (64k).
230
- # * `:n` - (String) Numbers are positive or negative exact-value
231
- # decimals and integers. A number can have up to 38 digits
232
- # precision and can be between 10^-128 to 10^+126.
233
- # * `:b` - (String) Binary attributes are sequences of unsigned
234
- # bytes.
235
- # * `:ss` - (Array<String>) A set of strings.
236
- # * `:ns` - (Array<String>) A set of numbers.
237
- # * `:bs` - (Array<String>) A set of binary attributes.
238
- # * `:expected` - (Hash<String,Hash>)
273
+ # * `:table_name` - *required* - (String) The name of the table from
274
+ # which to delete the item.
275
+ # * `:key` - *required* - (Hash<String,Hash>) A map of attribute names
276
+ # to AttributeValue objects, representing the primary key of the item
277
+ # to delete.
278
+ # * `:s` - (String) Represents a String data type
279
+ # * `:n` - (String) Represents a Number data type
280
+ # * `:b` - (String) Represents a Binary data type
281
+ # * `:ss` - (Array<String>) Represents a String set data type
282
+ # * `:ns` - (Array<String>) Represents a Number set data type
283
+ # * `:bs` - (Array<String>) Represents a Binary set data type
284
+ # * `:expected` - (Hash<String,Hash>) A map of attribute/condition
285
+ # pairs. This is the conditional block for the DeleteItemoperation.
286
+ # All the conditions must be met for the operation to succeed.
239
287
  # * `:value` - (Hash) Specify whether or not a value already exists
240
288
  # and has a specific content for the attribute name-value pair.
241
- # * `:s` - (String) Strings are Unicode with UTF-8 binary encoding.
242
- # The maximum size is limited by the size of the primary key
243
- # (1024 bytes as a range part of a key or 2048 bytes as a single
244
- # part hash key) or the item size (64k).
245
- # * `:n` - (String) Numbers are positive or negative exact-value
246
- # decimals and integers. A number can have up to 38 digits
247
- # precision and can be between 10^-128 to 10^+126.
248
- # * `:b` - (String) Binary attributes are sequences of unsigned
249
- # bytes.
250
- # * `:ss` - (Array<String>) A set of strings.
251
- # * `:ns` - (Array<String>) A set of numbers.
252
- # * `:bs` - (Array<String>) A set of binary attributes.
253
- # * `:exists` - (Boolean) Specify whether or not a value already
254
- # exists for the attribute name-value pair.
255
- # * `:return_values` - (String) Valid values include:
256
- # * `NONE`
257
- # * `ALL_OLD`
258
- # * `UPDATED_OLD`
259
- # * `ALL_NEW`
260
- # * `UPDATED_NEW`
261
- # * `:return_consumed_capacity` - (String) Valid values include:
262
- # * `TOTAL`
263
- # * `NONE`
264
- # * `:return_item_collection_metrics` - (String) Valid values include:
265
- # * `SIZE`
266
- # * `NONE`
289
+ # * `:s` - (String) Represents a String data type
290
+ # * `:n` - (String) Represents a Number data type
291
+ # * `:b` - (String) Represents a Binary data type
292
+ # * `:ss` - (Array<String>) Represents a String set data type
293
+ # * `:ns` - (Array<String>) Represents a Number set data type
294
+ # * `:bs` - (Array<String>) Represents a Binary set data type
295
+ # * `:exists` - (Boolean) Causes to evaluate the value before
296
+ # attempting a conditional operation: If Exists is `true` , will
297
+ # check to see if that attribute value already exists in the table.
298
+ # If it is found, then the operation succeeds. If it is not found,
299
+ # the operation fails with a ConditionalCheckFailedException. If
300
+ # Exists is `false` , assumes that the attribute value does not
301
+ # exist in the table. If in fact the value does not exist, then the
302
+ # assumption is valid and the operation succeeds. If the value is
303
+ # found, despite the assumption that it does not exist, the
304
+ # operation fails with a ConditionalCheckFailedException. The
305
+ # default setting for Exists is `true` . If you supply a Value all
306
+ # by itself, assumes the attribute exists: You don't have to set
307
+ # Exists to `true` , because it is implied. returns a
308
+ # ValidationException if: Exists is `true` but there is no Value to
309
+ # check. (You expect a value to exist, but don't specify what that
310
+ # value is.) Exists is `false` but you also specify a Value. (You
311
+ # cannot expect an attribute to have a value, while also expecting
312
+ # it not to exist.) If you specify more than one condition for
313
+ # Exists, then all of the conditions must evaluate to `true` . (In
314
+ # other words, the conditions are ANDed together.) Otherwise, the
315
+ # conditional operation will fail.
316
+ # * `:return_values` - (String) Use ReturnValues if you want to get the
317
+ # item attributes as they appeared before they were deleted. For
318
+ # DeleteItem, the valid values are: NONE - If ReturnValues is not
319
+ # specified, or if its value is NONE, then nothing is returned. (This
320
+ # is the default for ReturnValues.) ALL_OLD - The content of the old
321
+ # item is returned.
322
+ # * `:return_consumed_capacity` - (String)
323
+ # * `:return_item_collection_metrics` - (String)
267
324
  # @return [Core::Response]
268
325
  # The #data method of the response object returns
269
326
  # a hash with the following structure:
327
+ #
270
328
  # * `:attributes` - (Hash<String,Hash>)
271
329
  # * `:s` - (String)
272
330
  # * `:n` - (String)
@@ -290,12 +348,12 @@ module AWS
290
348
  # @!method delete_table(options = {})
291
349
  # Calls the DeleteTable API operation.
292
350
  # @param [Hash] options
293
- # * `:table_name` - *required* - (String) The name of the table you
294
- # want to delete. Allowed characters are a-z, A-Z, 0-9, _
295
- # (underscore), - (hyphen) and . (period).
351
+ # * `:table_name` - *required* - (String) The name of the table to
352
+ # delete.
296
353
  # @return [Core::Response]
297
354
  # The #data method of the response object returns
298
355
  # a hash with the following structure:
356
+ #
299
357
  # * `:table_description` - (Hash)
300
358
  # * `:attribute_definitions` - (Array<Hash>)
301
359
  # * `:attribute_name` - (String)
@@ -328,12 +386,12 @@ module AWS
328
386
  # @!method describe_table(options = {})
329
387
  # Calls the DescribeTable API operation.
330
388
  # @param [Hash] options
331
- # * `:table_name` - *required* - (String) The name of the table you
332
- # want to describe. Allowed characters are a-z, A-Z, 0-9, _
333
- # (underscore), - (hyphen) and . (period).
389
+ # * `:table_name` - *required* - (String) The name of the table to
390
+ # describe.
334
391
  # @return [Core::Response]
335
392
  # The #data method of the response object returns
336
393
  # a hash with the following structure:
394
+ #
337
395
  # * `:table` - (Hash)
338
396
  # * `:attribute_definitions` - (Array<Hash>)
339
397
  # * `:attribute_name` - (String)
@@ -366,30 +424,24 @@ module AWS
366
424
  # @!method get_item(options = {})
367
425
  # Calls the GetItem API operation.
368
426
  # @param [Hash] options
369
- # * `:table_name` - *required* - (String) The name of the table in
370
- # which you want to get an item. Allowed characters are a-z, A-Z,
371
- # 0-9, _ (underscore), - (hyphen) and . (period).
372
- # * `:key` - *required* - (Hash<String,Hash>)
373
- # * `:s` - (String) Strings are Unicode with UTF-8 binary encoding.
374
- # The maximum size is limited by the size of the primary key (1024
375
- # bytes as a range part of a key or 2048 bytes as a single part
376
- # hash key) or the item size (64k).
377
- # * `:n` - (String) Numbers are positive or negative exact-value
378
- # decimals and integers. A number can have up to 38 digits
379
- # precision and can be between 10^-128 to 10^+126.
380
- # * `:b` - (String) Binary attributes are sequences of unsigned
381
- # bytes.
382
- # * `:ss` - (Array<String>) A set of strings.
383
- # * `:ns` - (Array<String>) A set of numbers.
384
- # * `:bs` - (Array<String>) A set of binary attributes.
427
+ # * `:table_name` - *required* - (String) The name of the table
428
+ # containing the requested item.
429
+ # * `:key` - *required* - (Hash<String,Hash>) A map of attribute names
430
+ # to AttributeValue objects, representing the primary key of the item
431
+ # to retrieve.
432
+ # * `:s` - (String) Represents a String data type
433
+ # * `:n` - (String) Represents a Number data type
434
+ # * `:b` - (String) Represents a Binary data type
435
+ # * `:ss` - (Array<String>) Represents a String set data type
436
+ # * `:ns` - (Array<String>) Represents a Number set data type
437
+ # * `:bs` - (Array<String>) Represents a Binary set data type
385
438
  # * `:attributes_to_get` - (Array<String>)
386
439
  # * `:consistent_read` - (Boolean)
387
- # * `:return_consumed_capacity` - (String) Valid values include:
388
- # * `TOTAL`
389
- # * `NONE`
440
+ # * `:return_consumed_capacity` - (String)
390
441
  # @return [Core::Response]
391
442
  # The #data method of the response object returns
392
443
  # a hash with the following structure:
444
+ #
393
445
  # * `:item` - (Hash<String,Hash>)
394
446
  # * `:s` - (String)
395
447
  # * `:n` - (String)
@@ -406,66 +458,80 @@ module AWS
406
458
  # @param [Hash] options
407
459
  # * `:exclusive_start_table_name` - (String) The name of the table that
408
460
  # starts the list. If you already ran a ListTables operation and
409
- # recieved a LastEvaluatedTableName value in the response, use that
461
+ # received a LastEvaluatedTableName value in the response, use that
410
462
  # value here to continue the list.
411
- # * `:limit` - (Integer)
463
+ # * `:limit` - (Integer) A maximum number of table names to return.
412
464
  # @return [Core::Response]
413
465
  # The #data method of the response object returns
414
466
  # a hash with the following structure:
467
+ #
415
468
  # * `:table_names` - (Array<String>)
416
469
  # * `:last_evaluated_table_name` - (String)
417
470
 
418
471
  # @!method put_item(options = {})
419
472
  # Calls the PutItem API operation.
420
473
  # @param [Hash] options
421
- # * `:table_name` - *required* - (String) The name of the table in
422
- # which you want to put an item. Allowed characters are a-z, A-Z,
423
- # 0-9, _ (underscore), - (hyphen) and . (period).
424
- # * `:item` - *required* - (Hash<String,Hash>)
425
- # * `:s` - (String) Strings are Unicode with UTF-8 binary encoding.
426
- # The maximum size is limited by the size of the primary key (1024
427
- # bytes as a range part of a key or 2048 bytes as a single part
428
- # hash key) or the item size (64k).
429
- # * `:n` - (String) Numbers are positive or negative exact-value
430
- # decimals and integers. A number can have up to 38 digits
431
- # precision and can be between 10^-128 to 10^+126.
432
- # * `:b` - (String) Binary attributes are sequences of unsigned
433
- # bytes.
434
- # * `:ss` - (Array<String>) A set of strings.
435
- # * `:ns` - (Array<String>) A set of numbers.
436
- # * `:bs` - (Array<String>) A set of binary attributes.
437
- # * `:expected` - (Hash<String,Hash>)
474
+ # * `:table_name` - *required* - (String) The name of the table to
475
+ # contain the item.
476
+ # * `:item` - *required* - (Hash<String,Hash>) A map of attribute
477
+ # name/value pairs, one for each attribute. Only the primary key
478
+ # attributes are required; you can optionally provide other attribute
479
+ # name-value pairs for the item. If you specify any attributes that
480
+ # are part of an index key, then the data types for those attributes
481
+ # must match those of the schema in the table's attribute definition.
482
+ # For more information about primary keys, see Primary Key . Each
483
+ # element in the Item map is an AttributeValue object.
484
+ # * `:s` - (String) Represents a String data type
485
+ # * `:n` - (String) Represents a Number data type
486
+ # * `:b` - (String) Represents a Binary data type
487
+ # * `:ss` - (Array<String>) Represents a String set data type
488
+ # * `:ns` - (Array<String>) Represents a Number set data type
489
+ # * `:bs` - (Array<String>) Represents a Binary set data type
490
+ # * `:expected` - (Hash<String,Hash>) A map of attribute/condition
491
+ # pairs. This is the conditional block for the PutItem operation. All
492
+ # the conditions must be met for the operation to succeed.
438
493
  # * `:value` - (Hash) Specify whether or not a value already exists
439
494
  # and has a specific content for the attribute name-value pair.
440
- # * `:s` - (String) Strings are Unicode with UTF-8 binary encoding.
441
- # The maximum size is limited by the size of the primary key
442
- # (1024 bytes as a range part of a key or 2048 bytes as a single
443
- # part hash key) or the item size (64k).
444
- # * `:n` - (String) Numbers are positive or negative exact-value
445
- # decimals and integers. A number can have up to 38 digits
446
- # precision and can be between 10^-128 to 10^+126.
447
- # * `:b` - (String) Binary attributes are sequences of unsigned
448
- # bytes.
449
- # * `:ss` - (Array<String>) A set of strings.
450
- # * `:ns` - (Array<String>) A set of numbers.
451
- # * `:bs` - (Array<String>) A set of binary attributes.
452
- # * `:exists` - (Boolean) Specify whether or not a value already
453
- # exists for the attribute name-value pair.
454
- # * `:return_values` - (String) Valid values include:
455
- # * `NONE`
456
- # * `ALL_OLD`
457
- # * `UPDATED_OLD`
458
- # * `ALL_NEW`
459
- # * `UPDATED_NEW`
460
- # * `:return_consumed_capacity` - (String) Valid values include:
461
- # * `TOTAL`
462
- # * `NONE`
463
- # * `:return_item_collection_metrics` - (String) Valid values include:
464
- # * `SIZE`
465
- # * `NONE`
495
+ # * `:s` - (String) Represents a String data type
496
+ # * `:n` - (String) Represents a Number data type
497
+ # * `:b` - (String) Represents a Binary data type
498
+ # * `:ss` - (Array<String>) Represents a String set data type
499
+ # * `:ns` - (Array<String>) Represents a Number set data type
500
+ # * `:bs` - (Array<String>) Represents a Binary set data type
501
+ # * `:exists` - (Boolean) Causes to evaluate the value before
502
+ # attempting a conditional operation: If Exists is `true` , will
503
+ # check to see if that attribute value already exists in the table.
504
+ # If it is found, then the operation succeeds. If it is not found,
505
+ # the operation fails with a ConditionalCheckFailedException. If
506
+ # Exists is `false` , assumes that the attribute value does not
507
+ # exist in the table. If in fact the value does not exist, then the
508
+ # assumption is valid and the operation succeeds. If the value is
509
+ # found, despite the assumption that it does not exist, the
510
+ # operation fails with a ConditionalCheckFailedException. The
511
+ # default setting for Exists is `true` . If you supply a Value all
512
+ # by itself, assumes the attribute exists: You don't have to set
513
+ # Exists to `true` , because it is implied. returns a
514
+ # ValidationException if: Exists is `true` but there is no Value to
515
+ # check. (You expect a value to exist, but don't specify what that
516
+ # value is.) Exists is `false` but you also specify a Value. (You
517
+ # cannot expect an attribute to have a value, while also expecting
518
+ # it not to exist.) If you specify more than one condition for
519
+ # Exists, then all of the conditions must evaluate to `true` . (In
520
+ # other words, the conditions are ANDed together.) Otherwise, the
521
+ # conditional operation will fail.
522
+ # * `:return_values` - (String) Use ReturnValues if you want to get the
523
+ # item attributes as they appeared before they were updated with the
524
+ # PutItem request. For PutItem, the valid values are: NONE - If
525
+ # ReturnValues is not specified, or if its value is NONE, then
526
+ # nothing is returned. (This is the default for ReturnValues.)
527
+ # ALL_OLD - If PutItem overwrote an attribute name-value pair, then
528
+ # the content of the old item is returned.
529
+ # * `:return_consumed_capacity` - (String)
530
+ # * `:return_item_collection_metrics` - (String)
466
531
  # @return [Core::Response]
467
532
  # The #data method of the response object returns
468
533
  # a hash with the following structure:
534
+ #
469
535
  # * `:attributes` - (Hash<String,Hash>)
470
536
  # * `:s` - (String)
471
537
  # * `:n` - (String)
@@ -489,83 +555,221 @@ module AWS
489
555
  # @!method query(options = {})
490
556
  # Calls the Query API operation.
491
557
  # @param [Hash] options
492
- # * `:table_name` - *required* - (String) The name of the table in
493
- # which you want to query. Allowed characters are a-z, A-Z, 0-9, _
494
- # (underscore), - (hyphen) and . (period).
495
- # * `:index_name` - (String)
496
- # * `:select` - (String) Valid values include:
497
- # * `ALL_ATTRIBUTES`
498
- # * `ALL_PROJECTED_ATTRIBUTES`
499
- # * `SPECIFIC_ATTRIBUTES`
500
- # * `COUNT`
501
- # * `:attributes_to_get` - (Array<String>)
502
- # * `:limit` - (Integer) The maximum number of items to return. If
503
- # Amazon DynamoDB hits this limit while querying the table, it stops
504
- # the query and returns the matching values up to the limit, and a
505
- # LastEvaluatedKey to apply in a subsequent operation to continue the
506
- # query. Also, if the result set size exceeds 1MB before Amazon
507
- # DynamoDB hits this limit, it stops the query and returns the
508
- # matching values, and a LastEvaluatedKey to apply in a subsequent
509
- # operation to continue the query.
558
+ # * `:table_name` - *required* - (String) The name of the table
559
+ # containing the requested items.
560
+ # * `:index_name` - (String) The name of an index on the table to
561
+ # query.
562
+ # * `:select` - (String) The attributes to be returned in the result.
563
+ # You can retrieve all item attributes, specific item attributes, the
564
+ # count of matching items, or in the case of an index, some or all of
565
+ # the attributes projected into the index. ALL_ATTRIBUTES: Returns
566
+ # all of the item attributes. For a table, this is the default. For
567
+ # an index, this mode causes to fetch the full item from the table
568
+ # for each matching item in the index. If the index is configured to
569
+ # project all item attributes, the matching items will not be fetched
570
+ # from the table. Fetching items from the table incurs additional
571
+ # throughput cost and latency. ALL_PROJECTED_ATTRIBUTES: Allowed only
572
+ # when querying an index. Retrieves all attributes which have been
573
+ # projected into the index. If the index is configured to project all
574
+ # attributes, this is equivalent to specifying ALL_ATTRIBUTES. COUNT:
575
+ # Returns the number of matching items, rather than the matching
576
+ # items themselves. SPECIFIC_ATTRIBUTES : Returns only the attributes
577
+ # listed in AttributesToGet. This is equivalent to specifying
578
+ # AttributesToGet without specifying any value for Select. When
579
+ # neither Select nor AttributesToGet are specified, defaults to
580
+ # ALL_ATTRIBUTES when accessing a table, and ALL_PROJECTED_ATTRIBUTES
581
+ # when accessing an index. You cannot use both Select and
582
+ # AttributesToGet together in a single request, unless the value for
583
+ # Select is SPECIFIC_ATTRIBUTES. (This usage is equivalent to
584
+ # specifying AttributesToGet without any value for Select.)
585
+ # * `:attributes_to_get` - (Array<String>) You cannot use both
586
+ # AttributesToGet and Select together in a Query request, unless the
587
+ # value for Select is SPECIFIC_ATTRIBUTES. (This usage is equivalent
588
+ # to specifying AttributesToGet without any value for Select.)
589
+ # * `:limit` - (Integer)
510
590
  # * `:consistent_read` - (Boolean)
511
- # * `:key_conditions` - (Hash<String,Hash>)
512
- # * `:attribute_value_list` - (Array<Hash>)
513
- # * `:s` - (String) Strings are Unicode with UTF-8 binary encoding.
514
- # The maximum size is limited by the size of the primary key
515
- # (1024 bytes as a range part of a key or 2048 bytes as a single
516
- # part hash key) or the item size (64k).
517
- # * `:n` - (String) Numbers are positive or negative exact-value
518
- # decimals and integers. A number can have up to 38 digits
519
- # precision and can be between 10^-128 to 10^+126.
520
- # * `:b` - (String) Binary attributes are sequences of unsigned
521
- # bytes.
522
- # * `:ss` - (Array<String>) A set of strings.
523
- # * `:ns` - (Array<String>) A set of numbers.
524
- # * `:bs` - (Array<String>) A set of binary attributes.
525
- # * `:comparison_operator` - *required* - (String) Valid values
526
- # include:
527
- # * `EQ`
528
- # * `NE`
529
- # * `IN`
530
- # * `LE`
531
- # * `LT`
532
- # * `GE`
533
- # * `GT`
534
- # * `BETWEEN`
535
- # * `NOT_NULL`
536
- # * `NULL`
537
- # * `CONTAINS`
538
- # * `NOT_CONTAINS`
539
- # * `BEGINS_WITH`
540
- # * `:scan_index_forward` - (Boolean) Specifies forward or backward
541
- # traversal of the index. Amazon DynamoDB returns results reflecting
542
- # the requested order, determined by the range key. Default is +true+
543
- # (forward).
544
- # * `:exclusive_start_key` - (Hash<String,Hash>) Primary key of the
545
- # item from which to continue an earlier query. An earlier query
546
- # might provide this value as the LastEvaluatedKey if that query
547
- # operation was interrupted before completing the query; either
548
- # because of the result set size or the Limit parameter. The
549
- # LastEvaluatedKey can be passed back in a new query request to
550
- # continue the operation from that point.
551
- # * `:s` - (String) Strings are Unicode with UTF-8 binary encoding.
552
- # The maximum size is limited by the size of the primary key (1024
553
- # bytes as a range part of a key or 2048 bytes as a single part
554
- # hash key) or the item size (64k).
555
- # * `:n` - (String) Numbers are positive or negative exact-value
556
- # decimals and integers. A number can have up to 38 digits
557
- # precision and can be between 10^-128 to 10^+126.
558
- # * `:b` - (String) Binary attributes are sequences of unsigned
559
- # bytes.
560
- # * `:ss` - (Array<String>) A set of strings.
561
- # * `:ns` - (Array<String>) A set of numbers.
562
- # * `:bs` - (Array<String>) A set of binary attributes.
563
- # * `:return_consumed_capacity` - (String) Valid values include:
564
- # * `TOTAL`
565
- # * `NONE`
591
+ # * `:key_conditions` - (Hash<String,Hash>) The selection criteria for
592
+ # the query. For a query on a table, you can only have conditions on
593
+ # the table primary key attributes. you must specify the hash key
594
+ # attribute name and value as an EQ condition. You can optionally
595
+ # specify a second condition, referring to the range key attribute.
596
+ # For a query on a secondary index, you can only have conditions on
597
+ # the index key attributes. You must specify the index hash attribute
598
+ # name and value as an EQ condition. You can optionally specify a
599
+ # second condition, referring to the index key range attribute.
600
+ # Multiple conditions are evaluated using "AND"; in other words, all
601
+ # of the conditions must be met in order for an item to appear in the
602
+ # results results. Each KeyConditions element consists of an
603
+ # attribute name to compare, along with the following:
604
+ # AttributeValueList - One or more values to evaluate against the
605
+ # supplied attribute. This list contains exactly one value, except
606
+ # for a BETWEEN or IN comparison, in which case the list contains two
607
+ # values. For type Number, value comparisons are numeric. String
608
+ # value comparisons for greater than, equals, or less than are based
609
+ # on ASCII character code values. For example, a is greater than A,
610
+ # and aa is greater than B. For a list of code values, see
611
+ # http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters. For
612
+ # Binary, treats each byte of the binary data as unsigned when it
613
+ # compares binary values, for example when evaluating query
614
+ # expressions. ComparisonOperator - A comparator for evaluating
615
+ # attributes. For example, equals, greater than, less than, etc. For
616
+ # information on specifying data types in JSON, see JSON Data Format
617
+ # . The following are descriptions of each comparison operator. EQ :
618
+ # Equal. AttributeValueList can contain only one AttributeValue of
619
+ # type String, Number, or Binary (not a set). If an item contains an
620
+ # AttributeValue of a different type than the one specified in the
621
+ # request, the value does not match. For example, {"S":"6"} does not
622
+ # equal {"N":"6"}. Also, {"N":"6"} does not equal {"NS":["6", "2",
623
+ # "1"]}. LE : Less than or equal. AttributeValueList can contain only
624
+ # one AttributeValue of type String, Number, or Binary (not a set).
625
+ # If an item contains an AttributeValue of a different type than the
626
+ # one specified in the request, the value does not match. For
627
+ # example, {"S":"6"} does not equal {"N":"6"}. Also, {"N":"6"} does
628
+ # not compare to {"NS":["6", "2", "1"]}. LT : Less than.
629
+ # AttributeValueList can contain only one AttributeValue of type
630
+ # String, Number, or Binary (not a set). If an item contains an
631
+ # AttributeValue of a different type than the one specified in the
632
+ # request, the value does not match. For example, {"S":"6"} does not
633
+ # equal {"N":"6"}. Also, {"N":"6"} does not compare to {"NS":["6",
634
+ # "2", "1"]}. GE : Greater than or equal. AttributeValueList can
635
+ # contain only one AttributeValue of type String, Number, or Binary
636
+ # (not a set). If an item contains an AttributeValue of a different
637
+ # type than the one specified in the request, the value does not
638
+ # match. For example, {"S":"6"} does not equal {"N":"6"}. Also,
639
+ # {"N":"6"} does not compare to {"NS":["6", "2", "1"]}. GT : Greater
640
+ # than. AttributeValueList can contain only one AttributeValue of
641
+ # type String, Number, or Binary (not a set). If an item contains an
642
+ # AttributeValue of a different type than the one specified in the
643
+ # request, the value does not match. For example, {"S":"6"} does not
644
+ # equal {"N":"6"}. Also, {"N":"6"} does not compare to {"NS":["6",
645
+ # "2", "1"]}. BEGINS_WITH : checks for a prefix. AttributeValueList
646
+ # can contain only one AttributeValue of type String or Binary (not a
647
+ # Number or a set). The target attribute of the comparison must be a
648
+ # String or Binary (not a Number or a set). BETWEEN : Greater than or
649
+ # equal to the first value, and less than or equal to the second
650
+ # value. AttributeValueList must contain two AttributeValue elements
651
+ # of the same type, either String, Number, or Binary (not a set). A
652
+ # target attribute matches if the target value is greater than, or
653
+ # equal to, the first element and less than, or equal to, the second
654
+ # element. If an item contains an AttributeValue of a different type
655
+ # than the one specified in the request, the value does not match.
656
+ # For example, {"S":"6"} does not compare to {"N":"6"}. Also,
657
+ # {"N":"6"} does not compare to {"NS":["6", "2", "1"]}
658
+ # * `:attribute_value_list` - (Array<Hash>) Represents one or more
659
+ # values to evaluate against the supplied attribute. This list
660
+ # contains exactly one value, except for a BETWEEN or IN
661
+ # comparison, in which case the list contains two values. For type
662
+ # Number, value comparisons are numeric. String value comparisons
663
+ # for greater than, equals, or less than are based on ASCII
664
+ # character code values. For example, a is greater than A, and aa
665
+ # is greater than B. For a list of code values, see
666
+ # http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters.
667
+ # For Binary, treats each byte of the binary data as unsigned when
668
+ # it compares binary values, for example when evaluating query
669
+ # expressions.
670
+ # * `:s` - (String) Represents a String data type
671
+ # * `:n` - (String) Represents a Number data type
672
+ # * `:b` - (String) Represents a Binary data type
673
+ # * `:ss` - (Array<String>) Represents a String set data type
674
+ # * `:ns` - (Array<String>) Represents a Number set data type
675
+ # * `:bs` - (Array<String>) Represents a Binary set data type
676
+ # * `:comparison_operator` - *required* - (String) Represents a
677
+ # comparator for evaluating attributes. For example, equals,
678
+ # greater than, less than, etc. For information on specifying data
679
+ # types in JSON, see JSON Data Format . The following are
680
+ # descriptions of each comparison operator. EQ : Equal.
681
+ # AttributeValueList can contain only one AttributeValue of type
682
+ # String, Number, or Binary (not a set). If an item contains an
683
+ # AttributeValue of a different type than the one specified in the
684
+ # request, the value does not match. For example, {"S":"6"} does
685
+ # not equal {"N":"6"}. Also, {"N":"6"} does not equal {"NS":["6",
686
+ # "2", "1"]}. NE : Not equal. AttributeValueList can contain only
687
+ # one AttributeValue of type String, Number, or Binary (not a set).
688
+ # If an item contains an AttributeValue of a different type than
689
+ # the one specified in the request, the value does not match. For
690
+ # example, {"S":"6"} does not equal {"N":"6"}. Also, {"N":"6"} does
691
+ # not equal {"NS":["6", "2", "1"]}. LE : Less than or equal.
692
+ # AttributeValueList can contain only one AttributeValue of type
693
+ # String, Number, or Binary (not a set). If an item contains an
694
+ # AttributeValue of a different type than the one specified in the
695
+ # request, the value does not match. For example, {"S":"6"} does
696
+ # not equal {"N":"6"}. Also, {"N":"6"} does not compare to
697
+ # {"NS":["6", "2", "1"]}. LT : Less than. AttributeValueList can
698
+ # contain only one AttributeValue of type String, Number, or Binary
699
+ # (not a set). If an item contains an AttributeValue of a different
700
+ # type than the one specified in the request, the value does not
701
+ # match. For example, {"S":"6"} does not equal {"N":"6"}. Also,
702
+ # {"N":"6"} does not compare to {"NS":["6", "2", "1"]}. GE :
703
+ # Greater than or equal. AttributeValueList can contain only one
704
+ # AttributeValue of type String, Number, or Binary (not a set). If
705
+ # an item contains an AttributeValue of a different type than the
706
+ # one specified in the request, the value does not match. For
707
+ # example, {"S":"6"} does not equal {"N":"6"}. Also, {"N":"6"} does
708
+ # not compare to {"NS":["6", "2", "1"]}. GT : Greater than.
709
+ # AttributeValueList can contain only one AttributeValue of type
710
+ # String, Number, or Binary (not a set). If an item contains an
711
+ # AttributeValue of a different type than the one specified in the
712
+ # request, the value does not match. For example, {"S":"6"} does
713
+ # not equal {"N":"6"}. Also, {"N":"6"} does not compare to
714
+ # {"NS":["6", "2", "1"]}. NOT_NULL : The attribute exists. NULL :
715
+ # The attribute does not exist. CONTAINS : checks for a
716
+ # subsequence, or value in a set. AttributeValueList can contain
717
+ # only one AttributeValue of type String, Number, or Binary (not a
718
+ # set). If the target attribute of the comparison is a String, then
719
+ # the operation checks for a substring match. If the target
720
+ # attribute of the comparison is Binary, then the operation looks
721
+ # for a subsequence of the target that matches the input. If the
722
+ # target attribute of the comparison is a set ("SS", "NS", or
723
+ # "BS"), then the operation checks for a member of the set (not as
724
+ # a substring). NOT_CONTAINS : checks for absence of a subsequence,
725
+ # or absence of a value in a set. AttributeValueList can contain
726
+ # only one AttributeValue of type String, Number, or Binary (not a
727
+ # set). If the target attribute of the comparison is a String, then
728
+ # the operation checks for the absence of a substring match. If the
729
+ # target attribute of the comparison is Binary, then the operation
730
+ # checks for the absence of a subsequence of the target that
731
+ # matches the input. If the target attribute of the comparison is a
732
+ # set ("SS", "NS", or "BS"), then the operation checks for the
733
+ # absence of a member of the set (not as a substring). BEGINS_WITH
734
+ # : checks for a prefix. AttributeValueList can contain only one
735
+ # AttributeValue of type String or Binary (not a Number or a set).
736
+ # The target attribute of the comparison must be a String or Binary
737
+ # (not a Number or a set). IN : checks for exact matches.
738
+ # AttributeValueList can contain more than one AttributeValue of
739
+ # type String, Number, or Binary (not a set). The target attribute
740
+ # of the comparison must be of the same type and exact value to
741
+ # match. A String never matches a String set. BETWEEN : Greater
742
+ # than or equal to the first value, and less than or equal to the
743
+ # second value. AttributeValueList must contain two AttributeValue
744
+ # elements of the same type, either String, Number, or Binary (not
745
+ # a set). A target attribute matches if the target value is greater
746
+ # than, or equal to, the first element and less than, or equal to,
747
+ # the second element. If an item contains an AttributeValue of a
748
+ # different type than the one specified in the request, the value
749
+ # does not match. For example, {"S":"6"} does not compare to
750
+ # {"N":"6"}. Also, {"N":"6"} does not compare to {"NS":["6", "2",
751
+ # "1"]}
752
+ # * `:scan_index_forward` - (Boolean) Specifies ascending ( `true` ) or
753
+ # descending ( `false` ) traversal of the index. returns results
754
+ # reflecting the requested order determined by the range key. If the
755
+ # data type is Number, the results are returned in numeric order. For
756
+ # String, the results are returned in order of ASCII character code
757
+ # values. For Binary, Amazon DynamoDB treats each byte of the binary
758
+ # data as unsigned when it compares binary values. If
759
+ # ScanIndexForward is not specified, the results are returned in
760
+ # ascending order.
761
+ # * `:exclusive_start_key` - (Hash<String,Hash>)
762
+ # * `:s` - (String) Represents a String data type
763
+ # * `:n` - (String) Represents a Number data type
764
+ # * `:b` - (String) Represents a Binary data type
765
+ # * `:ss` - (Array<String>) Represents a String set data type
766
+ # * `:ns` - (Array<String>) Represents a Number set data type
767
+ # * `:bs` - (Array<String>) Represents a Binary set data type
768
+ # * `:return_consumed_capacity` - (String)
566
769
  # @return [Core::Response]
567
770
  # The #data method of the response object returns
568
771
  # a hash with the following structure:
772
+ #
569
773
  # * `:member` - (Hash<String,Hash>)
570
774
  # * `:s` - (String)
571
775
  # * `:n` - (String)
@@ -588,77 +792,251 @@ module AWS
588
792
  # @!method scan(options = {})
589
793
  # Calls the Scan API operation.
590
794
  # @param [Hash] options
591
- # * `:table_name` - *required* - (String) The name of the table in
592
- # which you want to scan. Allowed characters are a-z, A-Z, 0-9, _
593
- # (underscore), - (hyphen) and . (period).
795
+ # * `:table_name` - *required* - (String) The name of the table
796
+ # containing the requested items.
594
797
  # * `:attributes_to_get` - (Array<String>)
595
- # * `:limit` - (Integer) The maximum number of items to return. If
596
- # Amazon DynamoDB hits this limit while scanning the table, it stops
597
- # the scan and returns the matching values up to the limit, and a
598
- # LastEvaluatedKey to apply in a subsequent operation to continue the
599
- # scan. Also, if the scanned data set size exceeds 1MB before Amazon
600
- # DynamoDB hits this limit, it stops the scan and returns the
601
- # matching values up to the limit, and a LastEvaluatedKey to apply in
602
- # a subsequent operation to continue the scan.
603
- # * `:select` - (String) Valid values include:
604
- # * `ALL_ATTRIBUTES`
605
- # * `ALL_PROJECTED_ATTRIBUTES`
606
- # * `SPECIFIC_ATTRIBUTES`
607
- # * `COUNT`
798
+ # * `:limit` - (Integer)
799
+ # * `:select` - (String) The attributes to be returned in the result.
800
+ # You can retrieve all item attributes, specific item attributes, the
801
+ # count of matching items, or in the case of an index, some or all of
802
+ # the attributes projected into the index. ALL_ATTRIBUTES: Returns
803
+ # all of the item attributes. For a table, this is the default. For
804
+ # an index, this mode causes to fetch the full item from the table
805
+ # for each matching item in the index. If the index is configured to
806
+ # project all item attributes, the matching items will not be fetched
807
+ # from the table. Fetching items from the table incurs additional
808
+ # throughput cost and latency. ALL_PROJECTED_ATTRIBUTES: Retrieves
809
+ # all attributes which have been projected into the index. If the
810
+ # index is configured to project all attributes, this is equivalent
811
+ # to specifying ALL_ATTRIBUTES. COUNT: Returns the number of matching
812
+ # items, rather than the matching items themselves.
813
+ # SPECIFIC_ATTRIBUTES : Returns only the attributes listed in
814
+ # AttributesToGet. This is equivalent to specifying AttributesToGet
815
+ # without specifying any value for Select. When neither Select nor
816
+ # AttributesToGet are specified, defaults to ALL_ATTRIBUTES when
817
+ # accessing a table, and ALL_PROJECTED_ATTRIBUTES when accessing an
818
+ # index. You cannot use both Select and AttributesToGet together in a
819
+ # single request, unless the value for Select is SPECIFIC_ATTRIBUTES.
820
+ # (This usage is equivalent to specifying AttributesToGet without any
821
+ # value for Select.)
608
822
  # * `:scan_filter` - (Hash<String,Hash>) Evaluates the scan results and
609
- # returns only the desired values.
610
- # * `:attribute_value_list` - (Array<Hash>)
611
- # * `:s` - (String) Strings are Unicode with UTF-8 binary encoding.
612
- # The maximum size is limited by the size of the primary key
613
- # (1024 bytes as a range part of a key or 2048 bytes as a single
614
- # part hash key) or the item size (64k).
615
- # * `:n` - (String) Numbers are positive or negative exact-value
616
- # decimals and integers. A number can have up to 38 digits
617
- # precision and can be between 10^-128 to 10^+126.
618
- # * `:b` - (String) Binary attributes are sequences of unsigned
619
- # bytes.
620
- # * `:ss` - (Array<String>) A set of strings.
621
- # * `:ns` - (Array<String>) A set of numbers.
622
- # * `:bs` - (Array<String>) A set of binary attributes.
623
- # * `:comparison_operator` - *required* - (String) Valid values
624
- # include:
625
- # * `EQ`
626
- # * `NE`
627
- # * `IN`
628
- # * `LE`
629
- # * `LT`
630
- # * `GE`
631
- # * `GT`
632
- # * `BETWEEN`
633
- # * `NOT_NULL`
634
- # * `NULL`
635
- # * `CONTAINS`
636
- # * `NOT_CONTAINS`
637
- # * `BEGINS_WITH`
638
- # * `:exclusive_start_key` - (Hash<String,Hash>) Primary key of the
639
- # item from which to continue an earlier scan. An earlier scan might
640
- # provide this value if that scan operation was interrupted before
641
- # scanning the entire table; either because of the result set size or
642
- # the Limit parameter. The LastEvaluatedKey can be passed back in a
643
- # new scan request to continue the operation from that point.
644
- # * `:s` - (String) Strings are Unicode with UTF-8 binary encoding.
645
- # The maximum size is limited by the size of the primary key (1024
646
- # bytes as a range part of a key or 2048 bytes as a single part
647
- # hash key) or the item size (64k).
648
- # * `:n` - (String) Numbers are positive or negative exact-value
649
- # decimals and integers. A number can have up to 38 digits
650
- # precision and can be between 10^-128 to 10^+126.
651
- # * `:b` - (String) Binary attributes are sequences of unsigned
652
- # bytes.
653
- # * `:ss` - (Array<String>) A set of strings.
654
- # * `:ns` - (Array<String>) A set of numbers.
655
- # * `:bs` - (Array<String>) A set of binary attributes.
656
- # * `:return_consumed_capacity` - (String) Valid values include:
657
- # * `TOTAL`
658
- # * `NONE`
823
+ # returns only the desired values. Multiple conditions are treated as
824
+ # "AND" operations: all conditions must be met to be included in the
825
+ # results. Each ScanConditions element consists of an attribute name
826
+ # to compare, along with the following: AttributeValueList - One or
827
+ # more values to evaluate against the supplied attribute. This list
828
+ # contains exactly one value, except for a BETWEEN or IN comparison,
829
+ # in which case the list contains two values. For type Number, value
830
+ # comparisons are numeric. String value comparisons for greater than,
831
+ # equals, or less than are based on ASCII character code values. For
832
+ # example, a is greater than A, and aa is greater than B. For a list
833
+ # of code values, see
834
+ # http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters. For
835
+ # Binary, treats each byte of the binary data as unsigned when it
836
+ # compares binary values, for example when evaluating query
837
+ # expressions. ComparisonOperator - A comparator for evaluating
838
+ # attributes. For example, equals, greater than, less than, etc. For
839
+ # information on specifying data types in JSON, see JSON Data Format
840
+ # . The following are descriptions of each comparison operator. EQ :
841
+ # Equal. AttributeValueList can contain only one AttributeValue of
842
+ # type String, Number, or Binary (not a set). If an item contains an
843
+ # AttributeValue of a different type than the one specified in the
844
+ # request, the value does not match. For example, {"S":"6"} does not
845
+ # equal {"N":"6"}. Also, {"N":"6"} does not equal {"NS":["6", "2",
846
+ # "1"]}. NE : Not equal. AttributeValueList can contain only one
847
+ # AttributeValue of type String, Number, or Binary (not a set). If an
848
+ # item contains an AttributeValue of a different type than the one
849
+ # specified in the request, the value does not match. For example,
850
+ # {"S":"6"} does not equal {"N":"6"}. Also, {"N":"6"} does not equal
851
+ # {"NS":["6", "2", "1"]}. LE : Less than or equal. AttributeValueList
852
+ # can contain only one AttributeValue of type String, Number, or
853
+ # Binary (not a set). If an item contains an AttributeValue of a
854
+ # different type than the one specified in the request, the value
855
+ # does not match. For example, {"S":"6"} does not equal {"N":"6"}.
856
+ # Also, {"N":"6"} does not compare to {"NS":["6", "2", "1"]}. LT :
857
+ # Less than. AttributeValueList can contain only one AttributeValue
858
+ # of type String, Number, or Binary (not a set). If an item contains
859
+ # an AttributeValue of a different type than the one specified in the
860
+ # request, the value does not match. For example, {"S":"6"} does not
861
+ # equal {"N":"6"}. Also, {"N":"6"} does not compare to {"NS":["6",
862
+ # "2", "1"]}. GE : Greater than or equal. AttributeValueList can
863
+ # contain only one AttributeValue of type String, Number, or Binary
864
+ # (not a set). If an item contains an AttributeValue of a different
865
+ # type than the one specified in the request, the value does not
866
+ # match. For example, {"S":"6"} does not equal {"N":"6"}. Also,
867
+ # {"N":"6"} does not compare to {"NS":["6", "2", "1"]}. GT : Greater
868
+ # than. AttributeValueList can contain only one AttributeValue of
869
+ # type String, Number, or Binary (not a set). If an item contains an
870
+ # AttributeValue of a different type than the one specified in the
871
+ # request, the value does not match. For example, {"S":"6"} does not
872
+ # equal {"N":"6"}. Also, {"N":"6"} does not compare to {"NS":["6",
873
+ # "2", "1"]}. NOT_NULL : The attribute exists. NULL : The attribute
874
+ # does not exist. CONTAINS : checks for a subsequence, or value in a
875
+ # set. AttributeValueList can contain only one AttributeValue of type
876
+ # String, Number, or Binary (not a set). If the target attribute of
877
+ # the comparison is a String, then the operation checks for a
878
+ # substring match. If the target attribute of the comparison is
879
+ # Binary, then the operation looks for a subsequence of the target
880
+ # that matches the input. If the target attribute of the comparison
881
+ # is a set ("SS", "NS", or "BS"), then the operation checks for a
882
+ # member of the set (not as a substring). NOT_CONTAINS : checks for
883
+ # absence of a subsequence, or absence of a value in a set.
884
+ # AttributeValueList can contain only one AttributeValue of type
885
+ # String, Number, or Binary (not a set). If the target attribute of
886
+ # the comparison is a String, then the operation checks for the
887
+ # absence of a substring match. If the target attribute of the
888
+ # comparison is Binary, then the operation checks for the absence of
889
+ # a subsequence of the target that matches the input. If the target
890
+ # attribute of the comparison is a set ("SS", "NS", or "BS"), then
891
+ # the operation checks for the absence of a member of the set (not as
892
+ # a substring). BEGINS_WITH : checks for a prefix. AttributeValueList
893
+ # can contain only one AttributeValue of type String or Binary (not a
894
+ # Number or a set). The target attribute of the comparison must be a
895
+ # String or Binary (not a Number or a set). IN : checks for exact
896
+ # matches. AttributeValueList can contain more than one
897
+ # AttributeValue of type String, Number, or Binary (not a set). The
898
+ # target attribute of the comparison must be of the same type and
899
+ # exact value to match. A String never matches a String set. BETWEEN
900
+ # : Greater than or equal to the first value, and less than or equal
901
+ # to the second value. AttributeValueList must contain two
902
+ # AttributeValue elements of the same type, either String, Number, or
903
+ # Binary (not a set). A target attribute matches if the target value
904
+ # is greater than, or equal to, the first element and less than, or
905
+ # equal to, the second element. If an item contains an AttributeValue
906
+ # of a different type than the one specified in the request, the
907
+ # value does not match. For example, {"S":"6"} does not compare to
908
+ # {"N":"6"}. Also, {"N":"6"} does not compare to {"NS":["6", "2",
909
+ # "1"]}
910
+ # * `:attribute_value_list` - (Array<Hash>) Represents one or more
911
+ # values to evaluate against the supplied attribute. This list
912
+ # contains exactly one value, except for a BETWEEN or IN
913
+ # comparison, in which case the list contains two values. For type
914
+ # Number, value comparisons are numeric. String value comparisons
915
+ # for greater than, equals, or less than are based on ASCII
916
+ # character code values. For example, a is greater than A, and aa
917
+ # is greater than B. For a list of code values, see
918
+ # http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters.
919
+ # For Binary, treats each byte of the binary data as unsigned when
920
+ # it compares binary values, for example when evaluating query
921
+ # expressions.
922
+ # * `:s` - (String) Represents a String data type
923
+ # * `:n` - (String) Represents a Number data type
924
+ # * `:b` - (String) Represents a Binary data type
925
+ # * `:ss` - (Array<String>) Represents a String set data type
926
+ # * `:ns` - (Array<String>) Represents a Number set data type
927
+ # * `:bs` - (Array<String>) Represents a Binary set data type
928
+ # * `:comparison_operator` - *required* - (String) Represents a
929
+ # comparator for evaluating attributes. For example, equals,
930
+ # greater than, less than, etc. For information on specifying data
931
+ # types in JSON, see JSON Data Format . The following are
932
+ # descriptions of each comparison operator. EQ : Equal.
933
+ # AttributeValueList can contain only one AttributeValue of type
934
+ # String, Number, or Binary (not a set). If an item contains an
935
+ # AttributeValue of a different type than the one specified in the
936
+ # request, the value does not match. For example, {"S":"6"} does
937
+ # not equal {"N":"6"}. Also, {"N":"6"} does not equal {"NS":["6",
938
+ # "2", "1"]}. NE : Not equal. AttributeValueList can contain only
939
+ # one AttributeValue of type String, Number, or Binary (not a set).
940
+ # If an item contains an AttributeValue of a different type than
941
+ # the one specified in the request, the value does not match. For
942
+ # example, {"S":"6"} does not equal {"N":"6"}. Also, {"N":"6"} does
943
+ # not equal {"NS":["6", "2", "1"]}. LE : Less than or equal.
944
+ # AttributeValueList can contain only one AttributeValue of type
945
+ # String, Number, or Binary (not a set). If an item contains an
946
+ # AttributeValue of a different type than the one specified in the
947
+ # request, the value does not match. For example, {"S":"6"} does
948
+ # not equal {"N":"6"}. Also, {"N":"6"} does not compare to
949
+ # {"NS":["6", "2", "1"]}. LT : Less than. AttributeValueList can
950
+ # contain only one AttributeValue of type String, Number, or Binary
951
+ # (not a set). If an item contains an AttributeValue of a different
952
+ # type than the one specified in the request, the value does not
953
+ # match. For example, {"S":"6"} does not equal {"N":"6"}. Also,
954
+ # {"N":"6"} does not compare to {"NS":["6", "2", "1"]}. GE :
955
+ # Greater than or equal. AttributeValueList can contain only one
956
+ # AttributeValue of type String, Number, or Binary (not a set). If
957
+ # an item contains an AttributeValue of a different type than the
958
+ # one specified in the request, the value does not match. For
959
+ # example, {"S":"6"} does not equal {"N":"6"}. Also, {"N":"6"} does
960
+ # not compare to {"NS":["6", "2", "1"]}. GT : Greater than.
961
+ # AttributeValueList can contain only one AttributeValue of type
962
+ # String, Number, or Binary (not a set). If an item contains an
963
+ # AttributeValue of a different type than the one specified in the
964
+ # request, the value does not match. For example, {"S":"6"} does
965
+ # not equal {"N":"6"}. Also, {"N":"6"} does not compare to
966
+ # {"NS":["6", "2", "1"]}. NOT_NULL : The attribute exists. NULL :
967
+ # The attribute does not exist. CONTAINS : checks for a
968
+ # subsequence, or value in a set. AttributeValueList can contain
969
+ # only one AttributeValue of type String, Number, or Binary (not a
970
+ # set). If the target attribute of the comparison is a String, then
971
+ # the operation checks for a substring match. If the target
972
+ # attribute of the comparison is Binary, then the operation looks
973
+ # for a subsequence of the target that matches the input. If the
974
+ # target attribute of the comparison is a set ("SS", "NS", or
975
+ # "BS"), then the operation checks for a member of the set (not as
976
+ # a substring). NOT_CONTAINS : checks for absence of a subsequence,
977
+ # or absence of a value in a set. AttributeValueList can contain
978
+ # only one AttributeValue of type String, Number, or Binary (not a
979
+ # set). If the target attribute of the comparison is a String, then
980
+ # the operation checks for the absence of a substring match. If the
981
+ # target attribute of the comparison is Binary, then the operation
982
+ # checks for the absence of a subsequence of the target that
983
+ # matches the input. If the target attribute of the comparison is a
984
+ # set ("SS", "NS", or "BS"), then the operation checks for the
985
+ # absence of a member of the set (not as a substring). BEGINS_WITH
986
+ # : checks for a prefix. AttributeValueList can contain only one
987
+ # AttributeValue of type String or Binary (not a Number or a set).
988
+ # The target attribute of the comparison must be a String or Binary
989
+ # (not a Number or a set). IN : checks for exact matches.
990
+ # AttributeValueList can contain more than one AttributeValue of
991
+ # type String, Number, or Binary (not a set). The target attribute
992
+ # of the comparison must be of the same type and exact value to
993
+ # match. A String never matches a String set. BETWEEN : Greater
994
+ # than or equal to the first value, and less than or equal to the
995
+ # second value. AttributeValueList must contain two AttributeValue
996
+ # elements of the same type, either String, Number, or Binary (not
997
+ # a set). A target attribute matches if the target value is greater
998
+ # than, or equal to, the first element and less than, or equal to,
999
+ # the second element. If an item contains an AttributeValue of a
1000
+ # different type than the one specified in the request, the value
1001
+ # does not match. For example, {"S":"6"} does not compare to
1002
+ # {"N":"6"}. Also, {"N":"6"} does not compare to {"NS":["6", "2",
1003
+ # "1"]}
1004
+ # * `:exclusive_start_key` - (Hash<String,Hash>) In a parallel scan, a
1005
+ # Scan request that includes ExclusiveStartKey must specify the same
1006
+ # segment whose previous Scan returned the corresponding value of
1007
+ # LastEvaluatedKey.
1008
+ # * `:s` - (String) Represents a String data type
1009
+ # * `:n` - (String) Represents a Number data type
1010
+ # * `:b` - (String) Represents a Binary data type
1011
+ # * `:ss` - (Array<String>) Represents a String set data type
1012
+ # * `:ns` - (Array<String>) Represents a Number set data type
1013
+ # * `:bs` - (Array<String>) Represents a Binary set data type
1014
+ # * `:return_consumed_capacity` - (String)
1015
+ # * `:total_segments` - (Integer) For a parallel Scan request,
1016
+ # TotalSegments represents the total number of segments into which
1017
+ # the Scan operation will be divided. The value of TotalSegments
1018
+ # corresponds to the number of application workers that will perform
1019
+ # the parallel scan. For example, if you want to scan a table using
1020
+ # four application threads, you would specify a TotalSegments value
1021
+ # of 4. The value for TotalSegments must be greater than or equal to
1022
+ # 1, and less than or equal to 4096. If you specify a TotalSegments
1023
+ # value of 1, the Scan will be sequential rather than parallel. If
1024
+ # you specify TotalSegments, you must also specify Segment.
1025
+ # * `:segment` - (Integer) For a parallel Scan request, Segment
1026
+ # identifies an individual segment to be scanned by an application
1027
+ # worker. Segment IDs are zero-based, so the first segment is always
1028
+ # 0. For example, if you want to scan a table using four application
1029
+ # threads, the first thread would specify a Segment value of 0, the
1030
+ # second thread would specify 1, and so on. The value of
1031
+ # LastEvaluatedKey returned from a parallel Scan request must be used
1032
+ # as ExclusiveStartKey with the same Segment ID in a subsequent Scan
1033
+ # operation. The value for Segment must be greater than or equal to
1034
+ # 0, and less than the value provided for TotalSegments. If you
1035
+ # specify Segment, you must also specify TotalSegments.
659
1036
  # @return [Core::Response]
660
1037
  # The #data method of the response object returns
661
1038
  # a hash with the following structure:
1039
+ #
662
1040
  # * `:member` - (Hash<String,Hash>)
663
1041
  # * `:s` - (String)
664
1042
  # * `:n` - (String)
@@ -682,72 +1060,183 @@ module AWS
682
1060
  # @!method update_item(options = {})
683
1061
  # Calls the UpdateItem API operation.
684
1062
  # @param [Hash] options
685
- # * `:table_name` - *required* - (String) The name of the table in
686
- # which you want to update an item. Allowed characters are a-z, A-Z,
687
- # 0-9, _ (underscore), - (hyphen) and . (period).
688
- # * `:key` - *required* - (Hash<String,Hash>)
689
- # * `:s` - (String) Strings are Unicode with UTF-8 binary encoding.
690
- # The maximum size is limited by the size of the primary key (1024
691
- # bytes as a range part of a key or 2048 bytes as a single part
692
- # hash key) or the item size (64k).
693
- # * `:n` - (String) Numbers are positive or negative exact-value
694
- # decimals and integers. A number can have up to 38 digits
695
- # precision and can be between 10^-128 to 10^+126.
696
- # * `:b` - (String) Binary attributes are sequences of unsigned
697
- # bytes.
698
- # * `:ss` - (Array<String>) A set of strings.
699
- # * `:ns` - (Array<String>) A set of numbers.
700
- # * `:bs` - (Array<String>) A set of binary attributes.
701
- # * `:attribute_updates` - (Hash<String,Hash>)
1063
+ # * `:table_name` - *required* - (String) The name of the table
1064
+ # containing the item to update.
1065
+ # * `:key` - *required* - (Hash<String,Hash>) The primary key that
1066
+ # defines the item. Each element consists of an attribute name and a
1067
+ # value for that attribute.
1068
+ # * `:s` - (String) Represents a String data type
1069
+ # * `:n` - (String) Represents a Number data type
1070
+ # * `:b` - (String) Represents a Binary data type
1071
+ # * `:ss` - (Array<String>) Represents a String set data type
1072
+ # * `:ns` - (Array<String>) Represents a Number set data type
1073
+ # * `:bs` - (Array<String>) Represents a Binary set data type
1074
+ # * `:attribute_updates` - (Hash<String,Hash>) The names of attributes
1075
+ # to be modified, the action to perform on each, and the new value
1076
+ # for each. If you are updating an attribute that is an index key
1077
+ # attribute for any indexes on that table, the attribute type must
1078
+ # match the index key type defined in the AttributesDefinition of the
1079
+ # table description. You can use UpdateItem to update any non-key
1080
+ # attributes. Attribute values cannot be null. String and binary type
1081
+ # attributes must have lengths greater than zero. Set type attributes
1082
+ # must not be empty. Requests with empty values will be rejected with
1083
+ # a ValidationException. Each AttributeUpdates element consists of an
1084
+ # attribute name to modify, along with the following: Value - The new
1085
+ # value, if applicable, for this attribute. Action - Specifies how to
1086
+ # perform the update. Valid values for Action are PUT, DELETE, and
1087
+ # ADD. The behavior depends on whether the specified primary key
1088
+ # already exists in the table. If an item with the specified Key is
1089
+ # found in the table: PUT - Adds the specified attribute to the item.
1090
+ # If the attribute already exists, it is replaced by the new value.
1091
+ # DELETE - If no value is specified, the attribute and its value are
1092
+ # removed from the item. The data type of the specified value must
1093
+ # match the existing value's data type. If a set of values is
1094
+ # specified, then those values are subtracted from the old set. For
1095
+ # example, if the attribute value was the set [a,b,c] and the DELETE
1096
+ # action specified [a,c], then the final attribute value would be
1097
+ # [b]. Specifying an empty set is an error. ADD - If the attribute
1098
+ # does not already exist, then the attribute and its values are added
1099
+ # to the item. If the attribute does exist, then the behavior of ADD
1100
+ # depends on the data type of the attribute: If the existing
1101
+ # attribute is a number, and if Value is also a number, then the
1102
+ # Value is mathematically added to the existing attribute. If Value
1103
+ # is a negative number, then it is subtracted from the existing
1104
+ # attribute. If you use ADD to increment or decrement a number value
1105
+ # for an item that doesn't exist before the update, uses 0 as the
1106
+ # initial value. In addition, if you use ADD to update an existing
1107
+ # item, and intend to increment or decrement an attribute value which
1108
+ # does not yet exist, uses 0 as the initial value. For example,
1109
+ # suppose that the item you want to update does not yet have an
1110
+ # attribute named itemcount, but you decide to ADD the number 3 to
1111
+ # this attribute anyway, even though it currently does not exist.
1112
+ # will create the itemcount attribute, set its initial value to 0,
1113
+ # and finally add 3 to it. The result will be a new itemcount
1114
+ # attribute in the item, with a value of 3. If the existing data type
1115
+ # is a set, and if the Value is also a set, then the Value is added
1116
+ # to the existing set. (This is a set operation, not mathematical
1117
+ # addition.) For example, if the attribute value was the set [1,2],
1118
+ # and the ADD action specified [3], then the final attribute value
1119
+ # would be [1,2,3]. An error occurs if an Add action is specified for
1120
+ # a set attribute and the attribute type specified does not match the
1121
+ # existing set type. Both sets must have the same primitive data
1122
+ # type. For example, if the existing data type is a set of strings,
1123
+ # the Value must also be a set of strings. The same holds `true` for
1124
+ # number sets and binary sets. This action is only valid for an
1125
+ # existing attribute whose data type is number or is a set. Do not
1126
+ # use ADD for any other data types. If no item with the specified Key
1127
+ # is found: PUT - creates a new item with the specified primary key,
1128
+ # and then adds the attribute. DELETE - Nothing happens; there is no
1129
+ # attribute to delete. ADD - creates an item with the supplied
1130
+ # primary key and number (or set of numbers) for the attribute value.
1131
+ # The only data types allowed are number and number set; no other
1132
+ # data types can be specified. If you specify any attributes that are
1133
+ # part of an index key, then the data types for those attributes must
1134
+ # match those of the schema in the table's attribute definition.
702
1135
  # * `:value` - (Hash)
703
- # * `:s` - (String) Strings are Unicode with UTF-8 binary encoding.
704
- # The maximum size is limited by the size of the primary key
705
- # (1024 bytes as a range part of a key or 2048 bytes as a single
706
- # part hash key) or the item size (64k).
707
- # * `:n` - (String) Numbers are positive or negative exact-value
708
- # decimals and integers. A number can have up to 38 digits
709
- # precision and can be between 10^-128 to 10^+126.
710
- # * `:b` - (String) Binary attributes are sequences of unsigned
711
- # bytes.
712
- # * `:ss` - (Array<String>) A set of strings.
713
- # * `:ns` - (Array<String>) A set of numbers.
714
- # * `:bs` - (Array<String>) A set of binary attributes.
715
- # * `:action` - (String) Valid values include:
716
- # * `ADD`
717
- # * `PUT`
718
- # * `DELETE`
719
- # * `:expected` - (Hash<String,Hash>)
1136
+ # * `:s` - (String) Represents a String data type
1137
+ # * `:n` - (String) Represents a Number data type
1138
+ # * `:b` - (String) Represents a Binary data type
1139
+ # * `:ss` - (Array<String>) Represents a String set data type
1140
+ # * `:ns` - (Array<String>) Represents a Number set data type
1141
+ # * `:bs` - (Array<String>) Represents a Binary set data type
1142
+ # * `:action` - (String) Specifies how to perform the update. Valid
1143
+ # values are PUT, DELETE, and ADD. The behavior depends on whether
1144
+ # the specified primary key already exists in the table. If an item
1145
+ # with the specified Key is found in the table: PUT - Adds the
1146
+ # specified attribute to the item. If the attribute already exists,
1147
+ # it is replaced by the new value. DELETE - If no value is
1148
+ # specified, the attribute and its value are removed from the item.
1149
+ # The data type of the specified value must match the existing
1150
+ # value's data type. If a set of values is specified, then those
1151
+ # values are subtracted from the old set. For example, if the
1152
+ # attribute value was the set [a,b,c] and the DELETE action
1153
+ # specified [a,c], then the final attribute value would be [b].
1154
+ # Specifying an empty set is an error. ADD - If the attribute does
1155
+ # not already exist, then the attribute and its values are added to
1156
+ # the item. If the attribute does exist, then the behavior of ADD
1157
+ # depends on the data type of the attribute: If the existing
1158
+ # attribute is a number, and if Value is also a number, then the
1159
+ # Value is mathematically added to the existing attribute. If Value
1160
+ # is a negative number, then it is subtracted from the existing
1161
+ # attribute. If you use ADD to increment or decrement a number
1162
+ # value for an item that doesn't exist before the update, uses 0 as
1163
+ # the initial value. In addition, if you use ADD to update an
1164
+ # existing item, and intend to increment or decrement an attribute
1165
+ # value which does not yet exist, uses 0 as the initial value. For
1166
+ # example, suppose that the item you want to update does not yet
1167
+ # have an attribute named itemcount, but you decide to ADD the
1168
+ # number 3 to this attribute anyway, even though it currently does
1169
+ # not exist. will create the itemcount attribute, set its initial
1170
+ # value to 0, and finally add 3 to it. The result will be a new
1171
+ # itemcount attribute in the item, with a value of 3. If the
1172
+ # existing data type is a set, and if the Value is also a set, then
1173
+ # the Value is added to the existing set. (This is a set operation,
1174
+ # not mathematical addition.) For example, if the attribute value
1175
+ # was the set [1,2], and the ADD action specified [3], then the
1176
+ # final attribute value would be [1,2,3]. An error occurs if an Add
1177
+ # action is specified for a set attribute and the attribute type
1178
+ # specified does not match the existing set type. Both sets must
1179
+ # have the same primitive data type. For example, if the existing
1180
+ # data type is a set of strings, the Value must also be a set of
1181
+ # strings. The same holds `true` for number sets and binary sets.
1182
+ # This action is only valid for an existing attribute whose data
1183
+ # type is number or is a set. Do not use ADD for any other data
1184
+ # types. If no item with the specified Key is found: PUT - creates
1185
+ # a new item with the specified primary key, and then adds the
1186
+ # attribute. DELETE - Nothing happens; there is no attribute to
1187
+ # delete. ADD - creates an item with the supplied primary key and
1188
+ # number (or set of numbers) for the attribute value. The only data
1189
+ # types allowed are number and number set; no other data types can
1190
+ # be specified.
1191
+ # * `:expected` - (Hash<String,Hash>) A map of attribute/condition
1192
+ # pairs. This is the conditional block for the UpdateItem operation.
1193
+ # All the conditions must be met for the operation to succeed.
720
1194
  # * `:value` - (Hash) Specify whether or not a value already exists
721
1195
  # and has a specific content for the attribute name-value pair.
722
- # * `:s` - (String) Strings are Unicode with UTF-8 binary encoding.
723
- # The maximum size is limited by the size of the primary key
724
- # (1024 bytes as a range part of a key or 2048 bytes as a single
725
- # part hash key) or the item size (64k).
726
- # * `:n` - (String) Numbers are positive or negative exact-value
727
- # decimals and integers. A number can have up to 38 digits
728
- # precision and can be between 10^-128 to 10^+126.
729
- # * `:b` - (String) Binary attributes are sequences of unsigned
730
- # bytes.
731
- # * `:ss` - (Array<String>) A set of strings.
732
- # * `:ns` - (Array<String>) A set of numbers.
733
- # * `:bs` - (Array<String>) A set of binary attributes.
734
- # * `:exists` - (Boolean) Specify whether or not a value already
735
- # exists for the attribute name-value pair.
736
- # * `:return_values` - (String) Valid values include:
737
- # * `NONE`
738
- # * `ALL_OLD`
739
- # * `UPDATED_OLD`
740
- # * `ALL_NEW`
741
- # * `UPDATED_NEW`
742
- # * `:return_consumed_capacity` - (String) Valid values include:
743
- # * `TOTAL`
744
- # * `NONE`
745
- # * `:return_item_collection_metrics` - (String) Valid values include:
746
- # * `SIZE`
747
- # * `NONE`
1196
+ # * `:s` - (String) Represents a String data type
1197
+ # * `:n` - (String) Represents a Number data type
1198
+ # * `:b` - (String) Represents a Binary data type
1199
+ # * `:ss` - (Array<String>) Represents a String set data type
1200
+ # * `:ns` - (Array<String>) Represents a Number set data type
1201
+ # * `:bs` - (Array<String>) Represents a Binary set data type
1202
+ # * `:exists` - (Boolean) Causes to evaluate the value before
1203
+ # attempting a conditional operation: If Exists is `true` , will
1204
+ # check to see if that attribute value already exists in the table.
1205
+ # If it is found, then the operation succeeds. If it is not found,
1206
+ # the operation fails with a ConditionalCheckFailedException. If
1207
+ # Exists is `false` , assumes that the attribute value does not
1208
+ # exist in the table. If in fact the value does not exist, then the
1209
+ # assumption is valid and the operation succeeds. If the value is
1210
+ # found, despite the assumption that it does not exist, the
1211
+ # operation fails with a ConditionalCheckFailedException. The
1212
+ # default setting for Exists is `true` . If you supply a Value all
1213
+ # by itself, assumes the attribute exists: You don't have to set
1214
+ # Exists to `true` , because it is implied. returns a
1215
+ # ValidationException if: Exists is `true` but there is no Value to
1216
+ # check. (You expect a value to exist, but don't specify what that
1217
+ # value is.) Exists is `false` but you also specify a Value. (You
1218
+ # cannot expect an attribute to have a value, while also expecting
1219
+ # it not to exist.) If you specify more than one condition for
1220
+ # Exists, then all of the conditions must evaluate to `true` . (In
1221
+ # other words, the conditions are ANDed together.) Otherwise, the
1222
+ # conditional operation will fail.
1223
+ # * `:return_values` - (String) Use ReturnValues if you want to get the
1224
+ # item attributes as they appeared either before or after they were
1225
+ # updated. For UpdateItem, the valid values are: NONE - If
1226
+ # ReturnValues is not specified, or if its value is NONE, then
1227
+ # nothing is returned. (This is the default for ReturnValues.)
1228
+ # ALL_OLD - If UpdateItem overwrote an attribute name-value pair,
1229
+ # then the content of the old item is returned. UPDATED_OLD - The old
1230
+ # versions of only the updated attributes are returned. ALL_NEW - All
1231
+ # of the attributes of the new version of the item are returned.
1232
+ # UPDATED_NEW - The new versions of only the updated attributes are
1233
+ # returned.
1234
+ # * `:return_consumed_capacity` - (String)
1235
+ # * `:return_item_collection_metrics` - (String)
748
1236
  # @return [Core::Response]
749
1237
  # The #data method of the response object returns
750
1238
  # a hash with the following structure:
1239
+ #
751
1240
  # * `:attributes` - (Hash<String,Hash>)
752
1241
  # * `:s` - (String)
753
1242
  # * `:n` - (String)
@@ -771,22 +1260,21 @@ module AWS
771
1260
  # @!method update_table(options = {})
772
1261
  # Calls the UpdateTable API operation.
773
1262
  # @param [Hash] options
774
- # * `:table_name` - *required* - (String) The name of the table you
775
- # want to update. Allowed characters are a-z, A-Z, 0-9, _
776
- # (underscore), - (hyphen) and . (period).
1263
+ # * `:table_name` - *required* - (String) The name of the table to be
1264
+ # updated.
777
1265
  # * `:provisioned_throughput` - *required* - (Hash)
778
- # * `:read_capacity_units` - *required* - (Integer) ReadCapacityUnits
779
- # are in terms of strictly consistent reads, assuming items of 1k.
780
- # 2k items require twice the ReadCapacityUnits.
781
- # Eventually-consistent reads only require half the
782
- # ReadCapacityUnits of stirctly consistent reads.
783
- # * `:write_capacity_units` - *required* - (Integer)
784
- # WriteCapacityUnits are in terms of strictly consistent reads,
785
- # assuming items of 1k. 2k items require twice the
786
- # WriteCapacityUnits.
1266
+ # * `:read_capacity_units` - *required* - (Integer) The maximum
1267
+ # number of strongly consistent reads consumed per second before
1268
+ # returns a ThrottlingException. For more information, see
1269
+ # Specifying Read and Write Requirements .
1270
+ # * `:write_capacity_units` - *required* - (Integer) The maximum
1271
+ # number of writes consumed per second before returns a
1272
+ # ThrottlingException. For more information, see Specifying Read
1273
+ # and Write Requirements .
787
1274
  # @return [Core::Response]
788
1275
  # The #data method of the response object returns
789
1276
  # a hash with the following structure:
1277
+ #
790
1278
  # * `:table_description` - (Hash)
791
1279
  # * `:attribute_definitions` - (Array<Hash>)
792
1280
  # * `:attribute_name` - (String)