aws-sdk 1.8.5 → 1.9.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 (386) hide show
  1. checksums.yaml +7 -0
  2. data/.yardopts +1 -0
  3. data/README.rdoc +8 -0
  4. data/lib/aws-sdk.rb +39 -35
  5. data/lib/aws/api_config/CloudFront-2012-07-01.yml +2398 -0
  6. data/lib/aws/api_config/DirectConnect-2012-10-25.yml +475 -0
  7. data/lib/aws/api_config/DynamoDB-2011-12-05.yml +8 -0
  8. data/lib/aws/api_config/DynamoDB-2012-08-10.yml +1516 -0
  9. data/lib/aws/api_config/OpsWorks-2013-02-18.yml +2 -2
  10. data/lib/aws/auto_scaling.rb +44 -44
  11. data/lib/aws/auto_scaling/activity.rb +1 -1
  12. data/lib/aws/auto_scaling/activity_collection.rb +14 -15
  13. data/lib/aws/auto_scaling/client.rb +277 -277
  14. data/lib/aws/auto_scaling/config.rb +1 -1
  15. data/lib/aws/auto_scaling/group.rb +35 -36
  16. data/lib/aws/auto_scaling/group_collection.rb +10 -10
  17. data/lib/aws/auto_scaling/group_options.rb +19 -19
  18. data/lib/aws/auto_scaling/instance.rb +27 -27
  19. data/lib/aws/auto_scaling/instance_collection.rb +10 -10
  20. data/lib/aws/auto_scaling/launch_configuration.rb +3 -3
  21. data/lib/aws/auto_scaling/launch_configuration_collection.rb +1 -1
  22. data/lib/aws/auto_scaling/notification_configuration.rb +2 -2
  23. data/lib/aws/auto_scaling/notification_configuration_collection.rb +37 -38
  24. data/lib/aws/auto_scaling/scaling_policy.rb +3 -3
  25. data/lib/aws/auto_scaling/scaling_policy_collection.rb +6 -6
  26. data/lib/aws/auto_scaling/scaling_policy_options.rb +8 -7
  27. data/lib/aws/auto_scaling/scheduled_action.rb +3 -3
  28. data/lib/aws/auto_scaling/scheduled_action_collection.rb +28 -28
  29. data/lib/aws/auto_scaling/tag_collection.rb +30 -28
  30. data/lib/aws/cloud_formation.rb +95 -94
  31. data/lib/aws/cloud_formation/client.rb +136 -133
  32. data/lib/aws/cloud_formation/config.rb +1 -1
  33. data/lib/aws/cloud_formation/stack.rb +37 -37
  34. data/lib/aws/cloud_formation/stack_collection.rb +28 -27
  35. data/lib/aws/cloud_formation/stack_event.rb +9 -11
  36. data/lib/aws/cloud_formation/stack_output.rb +1 -1
  37. data/lib/aws/cloud_formation/stack_resource.rb +6 -6
  38. data/lib/aws/cloud_formation/stack_resource_collection.rb +11 -12
  39. data/lib/aws/cloud_formation/stack_resource_summary_collection.rb +11 -11
  40. data/lib/aws/cloud_formation/stack_summary_collection.rb +39 -39
  41. data/lib/aws/cloud_front.rb +21 -21
  42. data/lib/aws/cloud_front/client.rb +853 -652
  43. data/lib/aws/cloud_front/request.rb +3 -0
  44. data/lib/aws/cloud_search.rb +22 -22
  45. data/lib/aws/cloud_search/client.rb +322 -315
  46. data/lib/aws/cloud_search/config.rb +1 -1
  47. data/lib/aws/cloud_watch.rb +39 -39
  48. data/lib/aws/cloud_watch/alarm.rb +55 -37
  49. data/lib/aws/cloud_watch/alarm_collection.rb +18 -18
  50. data/lib/aws/cloud_watch/alarm_history_item_collection.rb +2 -2
  51. data/lib/aws/cloud_watch/client.rb +360 -146
  52. data/lib/aws/cloud_watch/config.rb +1 -1
  53. data/lib/aws/cloud_watch/metric.rb +15 -15
  54. data/lib/aws/cloud_watch/metric_alarm_collection.rb +17 -17
  55. data/lib/aws/cloud_watch/metric_collection.rb +16 -16
  56. data/lib/aws/cloud_watch/metric_statistics.rb +11 -11
  57. data/lib/aws/core.rb +243 -225
  58. data/lib/aws/core/async_handle.rb +13 -13
  59. data/lib/aws/core/cacheable.rb +14 -15
  60. data/lib/aws/core/client.rb +40 -15
  61. data/lib/aws/core/collection.rb +42 -46
  62. data/lib/aws/core/collection/with_limit_and_next_token.rb +1 -1
  63. data/lib/aws/core/collection/with_next_token.rb +1 -1
  64. data/lib/aws/core/configuration.rb +97 -133
  65. data/lib/aws/core/credential_providers.rb +16 -16
  66. data/lib/aws/core/data.rb +23 -23
  67. data/lib/aws/core/http/connection_pool.rb +348 -0
  68. data/lib/aws/core/http/net_http_handler.rb +17 -26
  69. data/lib/aws/core/http/patch.rb +102 -0
  70. data/lib/aws/core/http/request.rb +13 -19
  71. data/lib/aws/core/http/response.rb +2 -2
  72. data/lib/aws/core/lazy_error_classes.rb +17 -17
  73. data/lib/aws/core/log_formatter.rb +70 -104
  74. data/lib/aws/core/options/json_serializer.rb +1 -1
  75. data/lib/aws/core/options/validator.rb +4 -4
  76. data/lib/aws/core/page_result.rb +8 -8
  77. data/lib/aws/core/policy.rb +49 -49
  78. data/lib/aws/core/region.rb +72 -0
  79. data/lib/aws/core/region_collection.rb +106 -0
  80. data/lib/aws/core/resource.rb +5 -5
  81. data/lib/aws/core/response.rb +20 -17
  82. data/lib/aws/core/rest_request_builder.rb +4 -4
  83. data/lib/aws/core/service_interface.rb +24 -2
  84. data/lib/aws/core/signature/version_3.rb +2 -2
  85. data/lib/aws/core/uri_escape.rb +1 -1
  86. data/lib/aws/core/xml/frame_stack.rb +1 -1
  87. data/lib/aws/core/xml/grammar.rb +3 -4
  88. data/lib/aws/core/xml/sax_handlers/libxml.rb +2 -2
  89. data/lib/aws/core/xml/sax_handlers/nokogiri.rb +3 -3
  90. data/lib/aws/core/xml/sax_handlers/rexml.rb +5 -5
  91. data/lib/aws/core/xml/stub.rb +9 -9
  92. data/lib/aws/data_pipeline.rb +21 -21
  93. data/lib/aws/data_pipeline/client.rb +189 -133
  94. data/lib/aws/data_pipeline/config.rb +1 -1
  95. data/lib/aws/direct_connect.rb +74 -0
  96. data/lib/aws/direct_connect/client.rb +253 -0
  97. data/lib/aws/direct_connect/config.rb +18 -0
  98. data/lib/aws/direct_connect/errors.rb +22 -0
  99. data/lib/aws/direct_connect/request.rb +27 -0
  100. data/lib/aws/dynamo_db.rb +71 -69
  101. data/lib/aws/dynamo_db/attribute_collection.rb +53 -58
  102. data/lib/aws/dynamo_db/batch_get.rb +23 -23
  103. data/lib/aws/dynamo_db/batch_write.rb +43 -43
  104. data/lib/aws/dynamo_db/binary.rb +9 -9
  105. data/lib/aws/dynamo_db/client.rb +494 -509
  106. data/lib/aws/dynamo_db/client_base.rb +91 -0
  107. data/lib/aws/dynamo_db/client_v2.rb +825 -0
  108. data/lib/aws/dynamo_db/config.rb +1 -1
  109. data/lib/aws/dynamo_db/item.rb +10 -10
  110. data/lib/aws/dynamo_db/item_collection.rb +75 -75
  111. data/lib/aws/dynamo_db/table.rb +85 -85
  112. data/lib/aws/dynamo_db/table_collection.rb +13 -13
  113. data/lib/aws/ec2.rb +132 -142
  114. data/lib/aws/ec2/attachment.rb +31 -36
  115. data/lib/aws/ec2/attachment_collection.rb +1 -1
  116. data/lib/aws/ec2/availability_zone.rb +4 -4
  117. data/lib/aws/ec2/client.rb +2272 -2125
  118. data/lib/aws/ec2/config.rb +1 -1
  119. data/lib/aws/ec2/customer_gateway.rb +6 -6
  120. data/lib/aws/ec2/customer_gateway_collection.rb +6 -6
  121. data/lib/aws/ec2/dhcp_options.rb +3 -3
  122. data/lib/aws/ec2/dhcp_options_collection.rb +10 -10
  123. data/lib/aws/ec2/elastic_ip.rb +15 -15
  124. data/lib/aws/ec2/elastic_ip_collection.rb +11 -15
  125. data/lib/aws/ec2/export_task.rb +4 -4
  126. data/lib/aws/ec2/export_task_collection.rb +11 -11
  127. data/lib/aws/ec2/filtered_collection.rb +6 -8
  128. data/lib/aws/ec2/image.rb +46 -40
  129. data/lib/aws/ec2/image_collection.rb +44 -52
  130. data/lib/aws/ec2/instance.rb +64 -62
  131. data/lib/aws/ec2/instance_collection.rb +47 -50
  132. data/lib/aws/ec2/internet_gateway.rb +6 -6
  133. data/lib/aws/ec2/internet_gateway/attachment.rb +13 -13
  134. data/lib/aws/ec2/internet_gateway_collection.rb +3 -3
  135. data/lib/aws/ec2/key_pair.rb +3 -3
  136. data/lib/aws/ec2/key_pair_collection.rb +12 -12
  137. data/lib/aws/ec2/network_acl.rb +39 -39
  138. data/lib/aws/ec2/network_acl/association.rb +2 -2
  139. data/lib/aws/ec2/network_acl/entry.rb +22 -22
  140. data/lib/aws/ec2/network_acl_collection.rb +2 -2
  141. data/lib/aws/ec2/network_interface.rb +13 -4
  142. data/lib/aws/ec2/network_interface/attachment.rb +3 -3
  143. data/lib/aws/ec2/network_interface_collection.rb +5 -5
  144. data/lib/aws/ec2/permission_collection.rb +1 -1
  145. data/lib/aws/ec2/region.rb +6 -6
  146. data/lib/aws/ec2/region_collection.rb +1 -1
  147. data/lib/aws/ec2/reserved_instances_collection.rb +2 -2
  148. data/lib/aws/ec2/reserved_instances_offering_collection.rb +2 -2
  149. data/lib/aws/ec2/resource_tag_collection.rb +5 -5
  150. data/lib/aws/ec2/route_table.rb +14 -14
  151. data/lib/aws/ec2/route_table/association.rb +22 -22
  152. data/lib/aws/ec2/route_table/route.rb +8 -8
  153. data/lib/aws/ec2/route_table_collection.rb +3 -3
  154. data/lib/aws/ec2/security_group.rb +39 -41
  155. data/lib/aws/ec2/security_group_collection.rb +19 -21
  156. data/lib/aws/ec2/snapshot.rb +3 -3
  157. data/lib/aws/ec2/snapshot_collection.rb +11 -12
  158. data/lib/aws/ec2/subnet.rb +2 -2
  159. data/lib/aws/ec2/subnet_collection.rb +17 -17
  160. data/lib/aws/ec2/tag_collection.rb +1 -1
  161. data/lib/aws/ec2/tagged_collection.rb +7 -7
  162. data/lib/aws/ec2/tagged_item.rb +10 -10
  163. data/lib/aws/ec2/volume.rb +16 -16
  164. data/lib/aws/ec2/volume_collection.rb +9 -12
  165. data/lib/aws/ec2/vpc.rb +6 -6
  166. data/lib/aws/ec2/vpc_collection.rb +10 -10
  167. data/lib/aws/ec2/vpn_connection.rb +4 -4
  168. data/lib/aws/ec2/vpn_connection/telemetry.rb +1 -1
  169. data/lib/aws/ec2/vpn_connection_collection.rb +6 -6
  170. data/lib/aws/ec2/vpn_gateway.rb +2 -2
  171. data/lib/aws/ec2/vpn_gateway_collection.rb +5 -5
  172. data/lib/aws/elastic_beanstalk.rb +12 -12
  173. data/lib/aws/elastic_beanstalk/client.rb +376 -368
  174. data/lib/aws/elastic_beanstalk/config.rb +1 -1
  175. data/lib/aws/elastic_transcoder.rb +5 -5
  176. data/lib/aws/elastic_transcoder/client.rb +283 -283
  177. data/lib/aws/elastic_transcoder/config.rb +1 -1
  178. data/lib/aws/elasticache.rb +12 -12
  179. data/lib/aws/elasticache/client.rb +484 -479
  180. data/lib/aws/elasticache/config.rb +1 -1
  181. data/lib/aws/elb.rb +23 -23
  182. data/lib/aws/elb/availability_zone_collection.rb +34 -34
  183. data/lib/aws/elb/backend_server_policy_collection.rb +24 -24
  184. data/lib/aws/elb/client.rb +153 -153
  185. data/lib/aws/elb/config.rb +1 -1
  186. data/lib/aws/elb/errors.rb +1 -1
  187. data/lib/aws/elb/instance_collection.rb +20 -25
  188. data/lib/aws/elb/listener.rb +3 -3
  189. data/lib/aws/elb/listener_collection.rb +8 -8
  190. data/lib/aws/elb/load_balancer.rb +15 -16
  191. data/lib/aws/elb/load_balancer_collection.rb +36 -24
  192. data/lib/aws/elb/load_balancer_policy.rb +1 -1
  193. data/lib/aws/elb/load_balancer_policy_collection.rb +5 -5
  194. data/lib/aws/emr.rb +28 -26
  195. data/lib/aws/emr/client.rb +165 -149
  196. data/lib/aws/emr/config.rb +1 -1
  197. data/lib/aws/emr/instance_group.rb +1 -1
  198. data/lib/aws/emr/instance_group_collection.rb +1 -1
  199. data/lib/aws/emr/job_flow.rb +27 -26
  200. data/lib/aws/emr/job_flow_collection.rb +34 -34
  201. data/lib/aws/errors.rb +7 -7
  202. data/lib/aws/glacier.rb +21 -21
  203. data/lib/aws/glacier/archive_collection.rb +2 -2
  204. data/lib/aws/glacier/client.rb +139 -140
  205. data/lib/aws/glacier/config.rb +1 -1
  206. data/lib/aws/glacier/vault.rb +2 -2
  207. data/lib/aws/glacier/vault_collection.rb +1 -1
  208. data/lib/aws/iam.rb +133 -144
  209. data/lib/aws/iam/access_key.rb +17 -17
  210. data/lib/aws/iam/access_key_collection.rb +22 -22
  211. data/lib/aws/iam/account_alias_collection.rb +2 -2
  212. data/lib/aws/iam/client.rb +429 -420
  213. data/lib/aws/iam/collection.rb +1 -1
  214. data/lib/aws/iam/config.rb +2 -2
  215. data/lib/aws/iam/group.rb +8 -8
  216. data/lib/aws/iam/group_collection.rb +16 -16
  217. data/lib/aws/iam/group_policy_collection.rb +6 -6
  218. data/lib/aws/iam/group_user_collection.rb +3 -3
  219. data/lib/aws/iam/mfa_device.rb +1 -1
  220. data/lib/aws/iam/mfa_device_collection.rb +9 -9
  221. data/lib/aws/iam/policy_collection.rb +4 -4
  222. data/lib/aws/iam/resource.rb +2 -2
  223. data/lib/aws/iam/server_certificate.rb +1 -1
  224. data/lib/aws/iam/server_certificate_collection.rb +15 -15
  225. data/lib/aws/iam/signing_certificate.rb +29 -29
  226. data/lib/aws/iam/signing_certificate_collection.rb +23 -23
  227. data/lib/aws/iam/user.rb +33 -38
  228. data/lib/aws/iam/user_collection.rb +27 -27
  229. data/lib/aws/iam/user_group_collection.rb +3 -3
  230. data/lib/aws/iam/user_policy_collection.rb +6 -6
  231. data/lib/aws/iam/virtual_mfa_device.rb +12 -12
  232. data/lib/aws/iam/virtual_mfa_device_collection.rb +4 -4
  233. data/lib/aws/import_export.rb +22 -21
  234. data/lib/aws/import_export/client.rb +47 -43
  235. data/lib/aws/ops_works.rb +5 -5
  236. data/lib/aws/ops_works/client.rb +484 -438
  237. data/lib/aws/ops_works/config.rb +1 -1
  238. data/lib/aws/rails.rb +34 -34
  239. data/lib/aws/rds.rb +18 -18
  240. data/lib/aws/rds/client.rb +1286 -1277
  241. data/lib/aws/rds/config.rb +1 -1
  242. data/lib/aws/rds/db_instance.rb +15 -4
  243. data/lib/aws/rds/db_snapshot.rb +1 -1
  244. data/lib/aws/record.rb +50 -24
  245. data/lib/aws/record/abstract_base.rb +52 -60
  246. data/lib/aws/record/attributes.rb +79 -79
  247. data/lib/aws/record/conversion.rb +1 -1
  248. data/lib/aws/record/dirty_tracking.rb +69 -67
  249. data/lib/aws/record/errors.rb +21 -21
  250. data/lib/aws/record/exceptions.rb +2 -2
  251. data/lib/aws/record/hash_model.rb +20 -21
  252. data/lib/aws/record/hash_model/attributes.rb +13 -15
  253. data/lib/aws/record/hash_model/finder_methods.rb +46 -46
  254. data/lib/aws/record/hash_model/scope.rb +31 -31
  255. data/lib/aws/record/model.rb +136 -136
  256. data/lib/aws/record/model/attributes.rb +57 -59
  257. data/lib/aws/record/model/finder_methods.rb +67 -67
  258. data/lib/aws/record/model/scope.rb +48 -49
  259. data/lib/aws/record/naming.rb +1 -1
  260. data/lib/aws/record/scope.rb +23 -19
  261. data/lib/aws/record/validations.rb +253 -271
  262. data/lib/aws/record/validator.rb +3 -3
  263. data/lib/aws/record/validators/acceptance.rb +1 -3
  264. data/lib/aws/record/validators/block.rb +1 -3
  265. data/lib/aws/record/validators/confirmation.rb +1 -3
  266. data/lib/aws/record/validators/count.rb +2 -4
  267. data/lib/aws/record/validators/exclusion.rb +2 -4
  268. data/lib/aws/record/validators/format.rb +2 -4
  269. data/lib/aws/record/validators/inclusion.rb +1 -3
  270. data/lib/aws/record/validators/length.rb +5 -7
  271. data/lib/aws/record/validators/method.rb +1 -3
  272. data/lib/aws/record/validators/numericality.rb +6 -8
  273. data/lib/aws/record/validators/presence.rb +1 -3
  274. data/lib/aws/redshift.rb +14 -14
  275. data/lib/aws/redshift/client.rb +596 -592
  276. data/lib/aws/redshift/config.rb +1 -1
  277. data/lib/aws/route_53.rb +30 -30
  278. data/lib/aws/route_53/change_batch.rb +7 -7
  279. data/lib/aws/route_53/client.rb +188 -152
  280. data/lib/aws/route_53/hosted_zone.rb +4 -4
  281. data/lib/aws/route_53/hosted_zone_collection.rb +7 -7
  282. data/lib/aws/route_53/resource_record_set.rb +10 -10
  283. data/lib/aws/route_53/resource_record_set_collection.rb +6 -6
  284. data/lib/aws/s3.rb +79 -79
  285. data/lib/aws/s3/access_control_list.rb +44 -36
  286. data/lib/aws/s3/acl_options.rb +51 -51
  287. data/lib/aws/s3/bucket.rb +146 -146
  288. data/lib/aws/s3/bucket_collection.rb +21 -21
  289. data/lib/aws/s3/bucket_lifecycle_configuration.rb +81 -82
  290. data/lib/aws/s3/bucket_tag_collection.rb +4 -2
  291. data/lib/aws/s3/cipher_io.rb +5 -4
  292. data/lib/aws/s3/client.rb +89 -84
  293. data/lib/aws/s3/client/xml.rb +1 -1
  294. data/lib/aws/s3/config.rb +7 -1
  295. data/lib/aws/s3/cors_rule.rb +2 -0
  296. data/lib/aws/s3/cors_rule_collection.rb +42 -40
  297. data/lib/aws/s3/data_options.rb +16 -11
  298. data/lib/aws/s3/encryption_utils.rb +2 -2
  299. data/lib/aws/s3/errors.rb +7 -7
  300. data/lib/aws/s3/multipart_upload.rb +30 -33
  301. data/lib/aws/s3/multipart_upload_collection.rb +8 -6
  302. data/lib/aws/s3/object_collection.rb +35 -35
  303. data/lib/aws/s3/object_metadata.rb +6 -6
  304. data/lib/aws/s3/object_version.rb +4 -4
  305. data/lib/aws/s3/object_version_collection.rb +15 -15
  306. data/lib/aws/s3/policy.rb +2 -2
  307. data/lib/aws/s3/prefixed_collection.rb +9 -5
  308. data/lib/aws/s3/presigned_post.rb +39 -37
  309. data/lib/aws/s3/request.rb +11 -11
  310. data/lib/aws/s3/s3_object.rb +210 -200
  311. data/lib/aws/s3/tree.rb +25 -27
  312. data/lib/aws/s3/tree/child_collection.rb +3 -3
  313. data/lib/aws/s3/tree/leaf_node.rb +2 -2
  314. data/lib/aws/s3/tree/parent.rb +1 -1
  315. data/lib/aws/s3/website_configuration.rb +13 -13
  316. data/lib/aws/simple_db.rb +83 -83
  317. data/lib/aws/simple_db/attribute.rb +9 -7
  318. data/lib/aws/simple_db/attribute_collection.rb +22 -13
  319. data/lib/aws/simple_db/client.rb +107 -107
  320. data/lib/aws/simple_db/config.rb +7 -1
  321. data/lib/aws/simple_db/consistent_read_option.rb +5 -5
  322. data/lib/aws/simple_db/domain.rb +4 -2
  323. data/lib/aws/simple_db/domain_collection.rb +4 -4
  324. data/lib/aws/simple_db/domain_metadata.rb +5 -5
  325. data/lib/aws/simple_db/errors.rb +9 -9
  326. data/lib/aws/simple_db/item.rb +5 -5
  327. data/lib/aws/simple_db/item_collection.rb +83 -81
  328. data/lib/aws/simple_db/item_data.rb +4 -4
  329. data/lib/aws/simple_db/put_attributes.rb +3 -3
  330. data/lib/aws/simple_email_service.rb +140 -140
  331. data/lib/aws/simple_email_service/client.rb +82 -76
  332. data/lib/aws/simple_email_service/config.rb +1 -2
  333. data/lib/aws/simple_email_service/email_address_collection.rb +3 -3
  334. data/lib/aws/simple_email_service/identity.rb +8 -8
  335. data/lib/aws/simple_email_service/quotas.rb +8 -6
  336. data/lib/aws/simple_workflow.rb +106 -106
  337. data/lib/aws/simple_workflow/activity_task.rb +15 -22
  338. data/lib/aws/simple_workflow/activity_task_collection.rb +15 -15
  339. data/lib/aws/simple_workflow/activity_type.rb +23 -23
  340. data/lib/aws/simple_workflow/activity_type_collection.rb +23 -23
  341. data/lib/aws/simple_workflow/client.rb +1004 -956
  342. data/lib/aws/simple_workflow/config.rb +1 -1
  343. data/lib/aws/simple_workflow/count.rb +5 -5
  344. data/lib/aws/simple_workflow/decision_task.rb +129 -129
  345. data/lib/aws/simple_workflow/decision_task_collection.rb +59 -59
  346. data/lib/aws/simple_workflow/domain.rb +11 -11
  347. data/lib/aws/simple_workflow/domain_collection.rb +26 -26
  348. data/lib/aws/simple_workflow/history_event.rb +32 -32
  349. data/lib/aws/simple_workflow/history_event_collection.rb +3 -3
  350. data/lib/aws/simple_workflow/option_formatters.rb +5 -5
  351. data/lib/aws/simple_workflow/request.rb +1 -1
  352. data/lib/aws/simple_workflow/resource.rb +1 -1
  353. data/lib/aws/simple_workflow/type.rb +8 -8
  354. data/lib/aws/simple_workflow/type_collection.rb +15 -15
  355. data/lib/aws/simple_workflow/workflow_execution.rb +70 -72
  356. data/lib/aws/simple_workflow/workflow_execution_collection.rb +130 -130
  357. data/lib/aws/simple_workflow/workflow_type.rb +27 -25
  358. data/lib/aws/simple_workflow/workflow_type_collection.rb +20 -20
  359. data/lib/aws/sns.rb +25 -25
  360. data/lib/aws/sns/client.rb +55 -55
  361. data/lib/aws/sns/config.rb +1 -1
  362. data/lib/aws/sns/policy.rb +1 -1
  363. data/lib/aws/sns/subscription.rb +7 -7
  364. data/lib/aws/sns/subscription_collection.rb +5 -5
  365. data/lib/aws/sns/topic.rb +49 -49
  366. data/lib/aws/sns/topic_collection.rb +2 -2
  367. data/lib/aws/sns/topic_subscription_collection.rb +5 -5
  368. data/lib/aws/sqs.rb +20 -20
  369. data/lib/aws/sqs/client.rb +78 -78
  370. data/lib/aws/sqs/config.rb +1 -1
  371. data/lib/aws/sqs/errors.rb +12 -12
  372. data/lib/aws/sqs/queue.rb +66 -67
  373. data/lib/aws/sqs/queue_collection.rb +16 -8
  374. data/lib/aws/sqs/received_message.rb +7 -6
  375. data/lib/aws/storage_gateway.rb +21 -21
  376. data/lib/aws/storage_gateway/client.rb +269 -202
  377. data/lib/aws/storage_gateway/config.rb +1 -1
  378. data/lib/aws/sts.rb +10 -8
  379. data/lib/aws/sts/client.rb +35 -35
  380. data/lib/aws/sts/session.rb +3 -3
  381. data/lib/aws/version.rb +1 -2
  382. metadata +23 -21
  383. data/lib/aws/core/autoloader.rb +0 -64
  384. data/lib/net/http/connection_pool.rb +0 -226
  385. data/lib/net/http/connection_pool/connection.rb +0 -189
  386. data/lib/net/http/connection_pool/session.rb +0 -126
@@ -80,9 +80,9 @@ module AWS
80
80
  # Behaves like Hash#each; yields each attribute as a name/value
81
81
  # pair.
82
82
  #
83
- # attributes.each { |(name, value)| puts "#{name} = #{value}" }
83
+ # attributes.each { |(name, value)| puts "#{name} = #{value}" }
84
84
  #
85
- # attributes.each { |name, value| puts "#{name} = #{value}" }
85
+ # attributes.each { |name, value| puts "#{name} = #{value}" }
86
86
  #
87
87
  # @param (see #to_hash)
88
88
  #
@@ -164,17 +164,16 @@ module AWS
164
164
  # attribute is a number, the original value is incremented by
165
165
  # the numeric value provided to this method. For example:
166
166
  #
167
- # item = table.items.put(
168
- # :id => "abc123",
169
- # :colors => ["red", "white"],
170
- # :age => 3
171
- # )
172
- # item.attributes.add(
173
- # { :colors => ["muave"],
174
- # :age => 1 },
175
- # :return => :updated_new
176
- # ) # => { "colors" => Set["red", "white", "mauve"],
177
- # # "age" => 4 }
167
+ # item = table.items.put(
168
+ # :id => "abc123",
169
+ # :colors => ["red", "white"],
170
+ # :age => 3
171
+ # )
172
+ # item.attributes.add(
173
+ # { :colors => ["muave"],
174
+ # :age => 1 },
175
+ # :return => :updated_new
176
+ # ) # => { "colors" => Set["red", "white", "mauve"], "age" => 4 }
178
177
  #
179
178
  # @param [Hash] attributes The attribute values to add. The
180
179
  # keys of the hash may be strings or symbols. The values may
@@ -309,20 +308,20 @@ module AWS
309
308
  # sequence, and it also allows you to group different kinds of
310
309
  # updates into an atomic operation.
311
310
  #
312
- # item.attributes.update do |u|
311
+ # item.attributes.update do |u|
313
312
  #
314
- # # add 12 to the (numeric) value of "views"
315
- # u.add(:views => 12)
313
+ # # add 12 to the (numeric) value of "views"
314
+ # u.add(:views => 12)
316
315
  #
317
- # # delete attributes
318
- # u.delete(:foo, :bar)
316
+ # # delete attributes
317
+ # u.delete(:foo, :bar)
319
318
  #
320
- # # delete values out of a set attribute
321
- # u.delete(:colors => ["red", "blue"])
319
+ # # delete values out of a set attribute
320
+ # u.delete(:colors => ["red", "blue"])
322
321
  #
323
- # # replace values
324
- # u.set(:title => "More Automobiles")
325
- # end
322
+ # # replace values
323
+ # u.set(:title => "More Automobiles")
324
+ # end
326
325
  #
327
326
  # @param [Hash] options Options for updating the item.
328
327
  #
@@ -330,47 +329,43 @@ module AWS
330
329
  # The operation will fail unless the item exists and has the
331
330
  # attributes in the value for this option. For example:
332
331
  #
333
- # # throws DynamoDB::Errors::ConditionalCheckFailedException
334
- # # unless the item has "color" set to "red"
335
- # item.attributes.update(:if => { :color => "red" }) do |u|
336
- # # ...
337
- # end
332
+ # # throws DynamoDB::Errors::ConditionalCheckFailedException
333
+ # # unless the item has "color" set to "red"
334
+ # item.attributes.update(:if => { :color => "red" }) do |u|
335
+ # # ...
336
+ # end
338
337
  #
339
338
  # @option options [String, Symbol, Array] :unless_exists A name
340
339
  # or collection of attribute names; if the item already exists
341
340
  # and has a value for any of these attributes, this method
342
341
  # will raise
343
- # +DynamoDB::Errors::ConditionalCheckFailedException+. For example:
342
+ # `DynamoDB::Errors::ConditionalCheckFailedException`. For example:
344
343
  #
345
- # item.attributes.update(:unless_exists => :color) do |u|
346
- # # ...
347
- # end
344
+ # item.attributes.update(:unless_exists => :color) do |u|
345
+ # # ...
346
+ # end
348
347
  #
349
- # @option options [Symbol] :return (+:none+) Changes the return
348
+ # @option options [Symbol] :return (`:none`) Changes the return
350
349
  # value of the method. Valid values:
351
350
  #
352
- # [+:none+] Return +nil+
353
- #
354
- # [+:all_old+] Returns a hash containing all of the original
355
- # values of the attributes before the update, or
356
- # +nil+ if the item did not exist at the time of
357
- # the update.
358
- #
359
- # [+:updated_old+] Returns a hash containing the original
360
- # values of the attributes that were modified
361
- # as part of this operation. This includes
362
- # attributes that were deleted, and
363
- # set-valued attributes whose member values
364
- # were deleted.
365
- #
366
- # [+:updated_new+] Returns a hash containing the new values of
367
- # the attributes that were modified as part
368
- # of this operation. This includes
369
- # set-valued attributes whose member values
370
- # were deleted.
371
- #
372
- # [+:all_new+] Returns a hash containing the new values of all
373
- # of the attributes.
351
+ # * `:none` - Return `nil`
352
+ # * `:all_old` - Returns a hash containing all of the original
353
+ # values of the attributes before the update, or
354
+ # `nil` if the item did not exist at the time of
355
+ # the update.
356
+ # * `:updated_old` - Returns a hash containing the original
357
+ # values of the attributes that were modified
358
+ # as part of this operation. This includes
359
+ # attributes that were deleted, and
360
+ # set-valued attributes whose member values
361
+ # were deleted.
362
+ # * `:updated_new` - Returns a hash containing the new values of
363
+ # the attributes that were modified as part
364
+ # of this operation. This includes
365
+ # set-valued attributes whose member values
366
+ # were deleted.
367
+ # * `:all_new` - Returns a hash containing the new values of all
368
+ # of the attributes.
374
369
  #
375
370
  # @yieldparam [UpdateBuilder] builder A handle for describing
376
371
  # the update.
@@ -379,7 +374,7 @@ module AWS
379
374
  # single operation. This method will raise an ArgumentError
380
375
  # if multiple updates are described for a single attribute.
381
376
  #
382
- # @return [nil] See the documentation for the +:return+ option
377
+ # @return [nil] See the documentation for the `:return` option
383
378
  # above.
384
379
  def update(options = {})
385
380
  builder = UpdateBuilder.new
@@ -393,7 +388,7 @@ module AWS
393
388
  # @param [Array<String, Symbol>] attributes The names of the
394
389
  # attributes to retrieve. The last argument may be a hash of
395
390
  # options for retrieving attributes from the item. Currently
396
- # the only supported option is +:consistent_read+; If set to
391
+ # the only supported option is `:consistent_read`; If set to
397
392
  # true, then a consistent read is issued, otherwise an
398
393
  # eventually consistent read is used.
399
394
  #
@@ -401,7 +396,7 @@ module AWS
401
396
  # value of the attribute at that index in the argument list.
402
397
  # Values may be Strings, BigDecimals, Sets of Strings or Sets
403
398
  # or BigDecimals. If a requested attribute does not exist,
404
- # the corresponding member of the output array will be +nil+.
399
+ # the corresponding member of the output array will be `nil`.
405
400
  def values_at(*attributes)
406
401
  options = {}
407
402
  options = attributes.pop if attributes.last.kind_of?(Hash)
@@ -38,33 +38,33 @@ module AWS
38
38
  #
39
39
  # @param [Symbol, String, Array<String>] attributes The list of attributes
40
40
  # to fetch. If you want to load *ALL* attributes for the named items,
41
- # then pass the symbol +:all+.
41
+ # then pass the symbol `:all`.
42
42
  #
43
- # # get all attributes
44
- # batch_get.table('mytable', :all, items)
43
+ # # get all attributes
44
+ # batch_get.table('mytable', :all, items)
45
45
  #
46
- # # get one attribute for each item
47
- # batch_get.table('mytable', ['name'], items)
46
+ # # get one attribute for each item
47
+ # batch_get.table('mytable', ['name'], items)
48
48
  #
49
- # # get a list of attributes for each item
50
- # batch_get.table('mytable', ['name', 'size'], items)
49
+ # # get a list of attributes for each item
50
+ # batch_get.table('mytable', ['name', 'size'], items)
51
51
  #
52
52
  # @param [Array<Item,Array>] items One or more items to fetch attributes
53
53
  # for. Each attribute should be one of the following:
54
54
  #
55
- # * an {Item} object
56
- # * a hash key value
57
- # * a hash key value and a range key value
55
+ # * an {Item} object
56
+ # * a hash key value
57
+ # * a hash key value and a range key value
58
58
  #
59
59
  # You must provide both the hash key and range key values if the table
60
60
  # schema has both.
61
61
  #
62
- # batch_get.table('mytable', :all, [%w(hk1 rk1), %w(hk1 rk2), ...])
62
+ # batch_get.table('mytable', :all, [%w(hk1 rk1), %w(hk1 rk2), ...])
63
63
  #
64
64
  # @param [Hash] options
65
65
  #
66
- # @option options [Boolean] :consistent_read (false) When +true+, items
67
- # are read from this table with consistent reads. When +false+, reads
66
+ # @option options [Boolean] :consistent_read (false) When `true`, items
67
+ # are read from this table with consistent reads. When `false`, reads
68
68
  # are eventually consistent.
69
69
  #
70
70
  # @return [nil]
@@ -88,8 +88,8 @@ module AWS
88
88
  end
89
89
  end
90
90
 
91
- ## ensure we don't receive 2 different lists of attributes for
92
- ## the same table
91
+ # ensure we don't receive 2 different lists of attributes for
92
+ # the same table
93
93
 
94
94
  if
95
95
  @request_items.has_key?(table) and
@@ -101,7 +101,7 @@ module AWS
101
101
  raise ArgumentError, msg
102
102
  end
103
103
 
104
- ## merge attributes and items with the request items
104
+ # merge attributes and items with the request items
105
105
 
106
106
  @request_items[table] ||= { :keys => [] }
107
107
  @request_items[table][:attributes_to_get] = attributes if attributes
@@ -118,16 +118,16 @@ module AWS
118
118
  #
119
119
  # @param [Symbol, String, Array<String>] attributes The list of attributes
120
120
  # to fetch. If you want to load *ALL* attributes for the named items,
121
- # then pass the symbol +:all+.
121
+ # then pass the symbol `:all`.
122
122
  #
123
- # # get all attributes
124
- # batch_get.table('mytable', :all, items)
123
+ # # get all attributes
124
+ # batch_get.table('mytable', :all, items)
125
125
  #
126
- # # get one attribute for each item
127
- # batch_get.table('mytable', ['name'], items)
126
+ # # get one attribute for each item
127
+ # batch_get.table('mytable', ['name'], items)
128
128
  #
129
- # # get a list of attributes for each item
130
- # batch_get.table('mytable', ['name', 'size'], items)
129
+ # # get a list of attributes for each item
130
+ # batch_get.table('mytable', ['name', 'size'], items)
131
131
  #
132
132
  # @param [Item] items One or more {Item} objects to fetch attributes
133
133
  # for. These items may come from any number of different tables.
@@ -25,25 +25,25 @@ module AWS
25
25
 
26
26
  # Adds one or more items to the batch write operation.
27
27
  #
28
- # # adding one item at a time to the batch
29
- # batch = AWS::DynamoDB::BatchWrite.new
30
- # batch.put('table-name', :id => 'id1', :color => 'red')
31
- # batch.put('table-name', :id => 'id2', :color => 'blue')
32
- # batch.process!
33
- #
34
- # # adding multiple items to a batch
35
- # batch = AWS::DynamoDB::BatchWrite.new
36
- # batch.put('table-name', [
37
- # { :id => 'id1', :color => 'red' },
38
- # { :id => 'id2', :color => 'blue' },
39
- # { :id => 'id3', :color => 'green' },
40
- # ])
41
- # batch.process!
28
+ # # adding one item at a time to the batch
29
+ # batch = AWS::DynamoDB::BatchWrite.new
30
+ # batch.put('table-name', :id => 'id1', :color => 'red')
31
+ # batch.put('table-name', :id => 'id2', :color => 'blue')
32
+ # batch.process!
33
+ #
34
+ # # adding multiple items to a batch
35
+ # batch = AWS::DynamoDB::BatchWrite.new
36
+ # batch.put('table-name', [
37
+ # { :id => 'id1', :color => 'red' },
38
+ # { :id => 'id2', :color => 'blue' },
39
+ # { :id => 'id3', :color => 'green' },
40
+ # ])
41
+ # batch.process!
42
42
  #
43
43
  # @param [Table,String] table A {Table} object or table name string.
44
44
  #
45
45
  # @param [Array<Hash>] items A list of item attributes to put.
46
- # The hash must contain the table hash key element and range key
46
+ # The hash must contain the table hash key element and range key
47
47
  # element (if one is defined).
48
48
  #
49
49
  # @return [nil]
@@ -55,28 +55,28 @@ module AWS
55
55
 
56
56
  # Adds one or more items to the batch to delete.
57
57
  #
58
- # # for a table w/out a range key
59
- # batch = AWS::DynamoDB::BatchWrite.new
60
- # batch.delete('table-name', %w(hk1 hk2))
61
- # batch.process!
58
+ # # for a table w/out a range key
59
+ # batch = AWS::DynamoDB::BatchWrite.new
60
+ # batch.delete('table-name', %w(hk1 hk2))
61
+ # batch.process!
62
62
  #
63
- # # for a table with a range key
64
- # batch = AWS::DynamoDB::BatchWrite.new
65
- # batch.delete('table-name', [['hk1', 'rk2'], ['hk1', 'rk2']]])
66
- # batch.process!
63
+ # # for a table with a range key
64
+ # batch = AWS::DynamoDB::BatchWrite.new
65
+ # batch.delete('table-name', [['hk1', 'rk2'], ['hk1', 'rk2']]])
66
+ # batch.process!
67
67
  #
68
68
  # @param [Table,String] table A {Table} object or table name string.
69
69
  #
70
- # @param [Array<String>,Array<Array>] items A list of item keys to
70
+ # @param [Array<String>,Array<Array>] items A list of item keys to
71
71
  # delete. For tables without a range key, items should be an array
72
72
  # of hash key strings.
73
73
  #
74
- # batch.delete('table-name', ['hk1', 'hk2', 'hk3'])
74
+ # batch.delete('table-name', ['hk1', 'hk2', 'hk3'])
75
75
  #
76
- # For tables with a range key, items should be an array of
76
+ # For tables with a range key, items should be an array of
77
77
  # hash key and range key pairs.
78
78
  #
79
- # batch.delete('table-name', [['hk1', 'rk1'], ['hk1', 'rk2']])
79
+ # batch.delete('table-name', [['hk1', 'rk1'], ['hk1', 'rk2']])
80
80
  #
81
81
  # @return [nil]
82
82
  #
@@ -95,27 +95,27 @@ module AWS
95
95
  # @option options [Array<Hash>] :put An array of items to put. Each item
96
96
  # should be an array of attribute hashes.
97
97
  #
98
- # # add 3 items to the batch
99
- # batch.write(table, :put => [
100
- # { :id => 'abc', :color => 'red', :count => 2 },
101
- # { :id => 'mno', :color => 'blue', :count => 3 },
102
- # { :id => 'xyz', :color => 'green', :count => 5 },
103
- # ])
98
+ # # add 3 items to the batch
99
+ # batch.write(table, :put => [
100
+ # { :id => 'abc', :color => 'red', :count => 2 },
101
+ # { :id => 'mno', :color => 'blue', :count => 3 },
102
+ # { :id => 'xyz', :color => 'green', :count => 5 },
103
+ # ])
104
104
  #
105
105
  # @option options [Array<String>,Array<Array>] :delete A list of item keys
106
106
  # to delete. For tables without a range key, items should be an array
107
107
  # of hash key strings.
108
108
  #
109
- # batch.write('table-name', :delete => ['hk1', 'hk2', 'hk3'])
109
+ # batch.write('table-name', :delete => ['hk1', 'hk2', 'hk3'])
110
110
  #
111
- # For tables with a range key, items should be an array of
111
+ # For tables with a range key, items should be an array of
112
112
  # hash key and range key pairs.
113
113
  #
114
- # batch.write('table-name', :delete => [['hk1', 'rk1'], ['hk1', 'rk2']])
114
+ # batch.write('table-name', :delete => [['hk1', 'rk1'], ['hk1', 'rk2']])
115
115
  #
116
116
  def write table, options = {}
117
117
 
118
- items = table_items(table)
118
+ items = table_items(table)
119
119
 
120
120
  if put = options[:put]
121
121
  put.each do |attributes|
@@ -198,7 +198,7 @@ module AWS
198
198
 
199
199
  item = request.values.first
200
200
 
201
- request_items[table] <<
201
+ request_items[table] <<
202
202
  case request.keys.first
203
203
  when 'PutRequest' then convert_put_item(item['Item'])
204
204
  when 'DeleteRequest' then convert_delete_item(item['Key'])
@@ -213,13 +213,13 @@ module AWS
213
213
  end
214
214
 
215
215
  def convert_put_item item
216
-
216
+
217
217
  attributes = {}
218
218
  item.each_pair do |name,value|
219
219
  attributes[name] = str2sym(value)
220
220
  end
221
-
222
- { :put_request => { :item => attributes }}
221
+
222
+ { :put_request => { :item => attributes }}
223
223
 
224
224
  end
225
225
 
@@ -227,7 +227,7 @@ module AWS
227
227
 
228
228
  key = {}
229
229
  key[:hash_key_element] = str2sym(item['HashKeyElement'])
230
- key[:range_key_element] = str2sym(item['RangeKeyElement']) if
230
+ key[:range_key_element] = str2sym(item['RangeKeyElement']) if
231
231
  item['RangeKeyElement']
232
232
 
233
233
  { :delete_request => { :key => key}}
@@ -242,7 +242,7 @@ module AWS
242
242
  when "N" then { :n => value }
243
243
  when "SS" then { :ss => value }
244
244
  when "NS" then { :ns => value }
245
- else
245
+ else
246
246
  raise "unhandled key type: #{type.inspect}"
247
247
  end
248
248
  end
@@ -18,16 +18,16 @@ module AWS
18
18
  # to store as a binary attribute. This can reduce the size
19
19
  # of larger attributes to save on storage costs.
20
20
  #
21
- # table = AWS::DynamoDB.new.tables['data-table']
22
- # table.hash_key = { 'id' => :string }
23
- # table.range_key = { 'position' => :number }
21
+ # table = AWS::DynamoDB.new.tables['data-table']
22
+ # table.hash_key = { 'id' => :string }
23
+ # table.range_key = { 'position' => :number }
24
24
  #
25
- # # put an item with a binary data attribute
26
- # table.items.create(
27
- # 'id' => 'abc',
28
- # 'position' => 5,
29
- # 'data' => AWS::DynamoDB::Binary.new('abc')
30
- # )
25
+ # # put an item with a binary data attribute
26
+ # table.items.create(
27
+ # 'id' => 'abc',
28
+ # 'position' => 5,
29
+ # 'data' => AWS::DynamoDB::Binary.new('abc')
30
+ # )
31
31
  #
32
32
  class Binary < String; end
33
33
 
@@ -11,487 +11,497 @@
11
11
  # ANY KIND, either express or implied. See the License for the specific
12
12
  # language governing permissions and limitations under the License.
13
13
 
14
- require 'zlib'
15
-
16
14
  module AWS
17
15
  class DynamoDB
18
16
 
19
17
  # Client class for Amazon DynamoDB.
20
- class Client < Core::JSONClient
21
-
22
- # @private
23
- REGION_US_E1 = 'dynamodb.us-east-1.amazonaws.com'
24
-
25
- # @private
26
- CACHEABLE_REQUESTS = Set[:list_tables, :describe_table]
18
+ class Client < ClientBase
27
19
 
28
20
  # client methods #
29
21
 
30
22
  # @!method batch_get_item(options = {})
31
23
  # Calls the BatchGetItem API operation.
32
24
  # @param [Hash] options
33
- # * +:request_items+ - *required* - (Hash<String,Hash>)
34
- # * +:keys+ - *required* - (Array<Hash>)
35
- # * +:hash_key_element+ - *required* - (Hash) A hash key element is
25
+ # * `:request_items` - *required* - (Hash<String,Hash>)
26
+ # * `:keys` - *required* - (Array<Hash>)
27
+ # * `:hash_key_element` - *required* - (Hash) A hash key element is
36
28
  # treated as the primary key, and can be a string or a number.
37
29
  # Single attribute primary keys have one index value. The value
38
30
  # can be String, Number, StringSet, NumberSet.
39
- # * +:s+ - (String) Strings are Unicode with UTF-8 binary
31
+ # * `:s` - (String) Strings are Unicode with UTF-8 binary
40
32
  # encoding. The maximum size is limited by the size of the
41
33
  # primary key (1024 bytes as a range part of a key or 2048
42
34
  # bytes as a single part hash key) or the item size (64k).
43
- # * +:n+ - (String) Numbers are positive or negative exact-value
35
+ # * `:n` - (String) Numbers are positive or negative exact-value
44
36
  # decimals and integers. A number can have up to 38 digits
45
37
  # precision and can be between 10^-128 to 10^+126.
46
- # * +:b+ - (String) Binary attributes are sequences of unsigned
38
+ # * `:b` - (String) Binary attributes are sequences of unsigned
47
39
  # bytes.
48
- # * +:ss+ - (Array<String>) A set of strings.
49
- # * +:ns+ - (Array<String>) A set of numbers.
50
- # * +:bs+ - (Array<String>) A set of binary attributes.
51
- # * +:range_key_element+ - (Hash) A range key element is treated as
40
+ # * `:ss` - (Array<String>) A set of strings.
41
+ # * `:ns` - (Array<String>) A set of numbers.
42
+ # * `:bs` - (Array<String>) A set of binary attributes.
43
+ # * `:range_key_element` - (Hash) A range key element is treated as
52
44
  # a secondary key (used in conjunction with the primary key), and
53
45
  # can be a string or a number, and is only used for
54
46
  # hash-and-range primary keys. The value can be String, Number,
55
47
  # StringSet, NumberSet.
56
- # * +:s+ - (String) Strings are Unicode with UTF-8 binary
48
+ # * `:s` - (String) Strings are Unicode with UTF-8 binary
57
49
  # encoding. The maximum size is limited by the size of the
58
50
  # primary key (1024 bytes as a range part of a key or 2048
59
51
  # bytes as a single part hash key) or the item size (64k).
60
- # * +:n+ - (String) Numbers are positive or negative exact-value
52
+ # * `:n` - (String) Numbers are positive or negative exact-value
61
53
  # decimals and integers. A number can have up to 38 digits
62
54
  # precision and can be between 10^-128 to 10^+126.
63
- # * +:b+ - (String) Binary attributes are sequences of unsigned
55
+ # * `:b` - (String) Binary attributes are sequences of unsigned
64
56
  # bytes.
65
- # * +:ss+ - (Array<String>) A set of strings.
66
- # * +:ns+ - (Array<String>) A set of numbers.
67
- # * +:bs+ - (Array<String>) A set of binary attributes.
68
- # * +:attributes_to_get+ - (Array<String>)
69
- # * +:consistent_read+ - (Boolean)
57
+ # * `:ss` - (Array<String>) A set of strings.
58
+ # * `:ns` - (Array<String>) A set of numbers.
59
+ # * `:bs` - (Array<String>) A set of binary attributes.
60
+ # * `:attributes_to_get` - (Array<String>)
61
+ # * `:consistent_read` - (Boolean)
70
62
  # @return [Core::Response]
71
63
  # The #data method of the response object returns
72
64
  # a hash with the following structure:
73
- # * +Responses+ - (Hash<String,Hash>)
74
- # * +member+ - (Hash<String,Hash>)
75
- # * +S+ - (String)
76
- # * +N+ - (String)
77
- # * +B+ - (String)
78
- # * +SS+ - (Array<String>)
79
- # * +NS+ - (Array<String>)
80
- # * +BS+ - (Array<Blob>)
81
- # * +ConsumedCapacityUnits+ - (Numeric)
82
- # * +UnprocessedKeys+ - (Hash<String,Hash>)
83
- # * +Keys+ - (Array<Hash>)
84
- # * +HashKeyElement+ - (Hash)
85
- # * +S+ - (String)
86
- # * +N+ - (String)
87
- # * +B+ - (String)
88
- # * +SS+ - (Array<String>)
89
- # * +NS+ - (Array<String>)
90
- # * +BS+ - (Array<Blob>)
91
- # * +RangeKeyElement+ - (Hash)
92
- # * +S+ - (String)
93
- # * +N+ - (String)
94
- # * +B+ - (String)
95
- # * +SS+ - (Array<String>)
96
- # * +NS+ - (Array<String>)
97
- # * +BS+ - (Array<Blob>)
98
- # * +AttributesToGet+ - (Array<String>)
99
- # * +ConsistentRead+ - (Boolean)
65
+ # * `Responses` - (Hash<String,Hash>)
66
+ # * `member` - (Hash<String,Hash>)
67
+ # * `S` - (String)
68
+ # * `N` - (String)
69
+ # * `B` - (String)
70
+ # * `SS` - (Array<String>)
71
+ # * `NS` - (Array<String>)
72
+ # * `BS` - (Array<Blob>)
73
+ # * `ConsumedCapacityUnits` - (Numeric)
74
+ # * `UnprocessedKeys` - (Hash<String,Hash>)
75
+ # * `Keys` - (Array<Hash>)
76
+ # * `HashKeyElement` - (Hash)
77
+ # * `S` - (String)
78
+ # * `N` - (String)
79
+ # * `B` - (String)
80
+ # * `SS` - (Array<String>)
81
+ # * `NS` - (Array<String>)
82
+ # * `BS` - (Array<Blob>)
83
+ # * `RangeKeyElement` - (Hash)
84
+ # * `S` - (String)
85
+ # * `N` - (String)
86
+ # * `B` - (String)
87
+ # * `SS` - (Array<String>)
88
+ # * `NS` - (Array<String>)
89
+ # * `BS` - (Array<Blob>)
90
+ # * `AttributesToGet` - (Array<String>)
91
+ # * `ConsistentRead` - (Boolean)
100
92
 
101
93
  # @!method batch_write_item(options = {})
102
94
  # Calls the BatchWriteItem API operation.
103
95
  # @param [Hash] options
104
- # * +:request_items+ - *required* - (Hash<String,Array<Hash>>) A map of
96
+ # * `:request_items` - *required* - (Hash<String,Array<Hash>>) A map of
105
97
  # table name to list-of-write-requests. Used as input to the
106
98
  # BatchWriteItem API call
107
- # * +:put_request+ - (Hash)
108
- # * +:item+ - *required* - (Hash<String,Hash>) The item to put
109
- # * +:s+ - (String) Strings are Unicode with UTF-8 binary
99
+ # * `:put_request` - (Hash)
100
+ # * `:item` - *required* - (Hash<String,Hash>) The item to put
101
+ # * `:s` - (String) Strings are Unicode with UTF-8 binary
110
102
  # encoding. The maximum size is limited by the size of the
111
103
  # primary key (1024 bytes as a range part of a key or 2048
112
104
  # bytes as a single part hash key) or the item size (64k).
113
- # * +:n+ - (String) Numbers are positive or negative exact-value
105
+ # * `:n` - (String) Numbers are positive or negative exact-value
114
106
  # decimals and integers. A number can have up to 38 digits
115
107
  # precision and can be between 10^-128 to 10^+126.
116
- # * +:b+ - (String) Binary attributes are sequences of unsigned
108
+ # * `:b` - (String) Binary attributes are sequences of unsigned
117
109
  # bytes.
118
- # * +:ss+ - (Array<String>) A set of strings.
119
- # * +:ns+ - (Array<String>) A set of numbers.
120
- # * +:bs+ - (Array<String>) A set of binary attributes.
121
- # * +:delete_request+ - (Hash)
122
- # * +:key+ - *required* - (Hash) The item's key to be delete
123
- # * +:hash_key_element+ - *required* - (Hash) A hash key element
110
+ # * `:ss` - (Array<String>) A set of strings.
111
+ # * `:ns` - (Array<String>) A set of numbers.
112
+ # * `:bs` - (Array<String>) A set of binary attributes.
113
+ # * `:delete_request` - (Hash)
114
+ # * `:key` - *required* - (Hash) The item's key to be delete
115
+ # * `:hash_key_element` - *required* - (Hash) A hash key element
124
116
  # is treated as the primary key, and can be a string or a
125
117
  # number. Single attribute primary keys have one index value.
126
118
  # The value can be String, Number, StringSet, NumberSet.
127
- # * +:s+ - (String) Strings are Unicode with UTF-8 binary
119
+ # * `:s` - (String) Strings are Unicode with UTF-8 binary
128
120
  # encoding. The maximum size is limited by the size of the
129
121
  # primary key (1024 bytes as a range part of a key or 2048
130
122
  # bytes as a single part hash key) or the item size (64k).
131
- # * +:n+ - (String) Numbers are positive or negative
123
+ # * `:n` - (String) Numbers are positive or negative
132
124
  # exact-value decimals and integers. A number can have up to
133
125
  # 38 digits precision and can be between 10^-128 to 10^+126.
134
- # * +:b+ - (String) Binary attributes are sequences of unsigned
126
+ # * `:b` - (String) Binary attributes are sequences of unsigned
135
127
  # bytes.
136
- # * +:ss+ - (Array<String>) A set of strings.
137
- # * +:ns+ - (Array<String>) A set of numbers.
138
- # * +:bs+ - (Array<String>) A set of binary attributes.
139
- # * +:range_key_element+ - (Hash) A range key element is treated
128
+ # * `:ss` - (Array<String>) A set of strings.
129
+ # * `:ns` - (Array<String>) A set of numbers.
130
+ # * `:bs` - (Array<String>) A set of binary attributes.
131
+ # * `:range_key_element` - (Hash) A range key element is treated
140
132
  # as a secondary key (used in conjunction with the primary
141
133
  # key), and can be a string or a number, and is only used for
142
134
  # hash-and-range primary keys. The value can be String, Number,
143
135
  # StringSet, NumberSet.
144
- # * +:s+ - (String) Strings are Unicode with UTF-8 binary
136
+ # * `:s` - (String) Strings are Unicode with UTF-8 binary
145
137
  # encoding. The maximum size is limited by the size of the
146
138
  # primary key (1024 bytes as a range part of a key or 2048
147
139
  # bytes as a single part hash key) or the item size (64k).
148
- # * +:n+ - (String) Numbers are positive or negative
140
+ # * `:n` - (String) Numbers are positive or negative
149
141
  # exact-value decimals and integers. A number can have up to
150
142
  # 38 digits precision and can be between 10^-128 to 10^+126.
151
- # * +:b+ - (String) Binary attributes are sequences of unsigned
143
+ # * `:b` - (String) Binary attributes are sequences of unsigned
152
144
  # bytes.
153
- # * +:ss+ - (Array<String>) A set of strings.
154
- # * +:ns+ - (Array<String>) A set of numbers.
155
- # * +:bs+ - (Array<String>) A set of binary attributes.
145
+ # * `:ss` - (Array<String>) A set of strings.
146
+ # * `:ns` - (Array<String>) A set of numbers.
147
+ # * `:bs` - (Array<String>) A set of binary attributes.
156
148
  # @return [Core::Response]
157
149
  # The #data method of the response object returns
158
150
  # a hash with the following structure:
159
- # * +Responses+ - (Hash<String,Hash>)
160
- # * +ConsumedCapacityUnits+ - (Numeric)
161
- # * +UnprocessedItems+ - (Hash<String,Hash>)
162
- # * +value+ - (Array<Hash>)
163
- # * +PutRequest+ - (Hash)
164
- # * +Item+ - (Hash<String,Hash>)
165
- # * +S+ - (String)
166
- # * +N+ - (String)
167
- # * +B+ - (String)
168
- # * +SS+ - (Array<String>)
169
- # * +NS+ - (Array<String>)
170
- # * +BS+ - (Array<Blob>)
171
- # * +DeleteRequest+ - (Hash)
172
- # * +Key+ - (Hash)
173
- # * +HashKeyElement+ - (Hash)
174
- # * +S+ - (String)
175
- # * +N+ - (String)
176
- # * +B+ - (String)
177
- # * +SS+ - (Array<String>)
178
- # * +NS+ - (Array<String>)
179
- # * +BS+ - (Array<Blob>)
180
- # * +RangeKeyElement+ - (Hash)
181
- # * +S+ - (String)
182
- # * +N+ - (String)
183
- # * +B+ - (String)
184
- # * +SS+ - (Array<String>)
185
- # * +NS+ - (Array<String>)
186
- # * +BS+ - (Array<Blob>)
151
+ # * `Responses` - (Hash<String,Hash>)
152
+ # * `ConsumedCapacityUnits` - (Numeric)
153
+ # * `UnprocessedItems` - (Hash<String,Hash>)
154
+ # * `value` - (Array<Hash>)
155
+ # * `PutRequest` - (Hash)
156
+ # * `Item` - (Hash<String,Hash>)
157
+ # * `S` - (String)
158
+ # * `N` - (String)
159
+ # * `B` - (String)
160
+ # * `SS` - (Array<String>)
161
+ # * `NS` - (Array<String>)
162
+ # * `BS` - (Array<Blob>)
163
+ # * `DeleteRequest` - (Hash)
164
+ # * `Key` - (Hash)
165
+ # * `HashKeyElement` - (Hash)
166
+ # * `S` - (String)
167
+ # * `N` - (String)
168
+ # * `B` - (String)
169
+ # * `SS` - (Array<String>)
170
+ # * `NS` - (Array<String>)
171
+ # * `BS` - (Array<Blob>)
172
+ # * `RangeKeyElement` - (Hash)
173
+ # * `S` - (String)
174
+ # * `N` - (String)
175
+ # * `B` - (String)
176
+ # * `SS` - (Array<String>)
177
+ # * `NS` - (Array<String>)
178
+ # * `BS` - (Array<Blob>)
187
179
 
188
180
  # @!method create_table(options = {})
189
181
  # Calls the CreateTable API operation.
190
182
  # @param [Hash] options
191
- # * +:table_name+ - *required* - (String) The name of the table you
183
+ # * `:table_name` - *required* - (String) The name of the table you
192
184
  # want to create. Allowed characters are a-z, A-Z, 0-9, _
193
185
  # (underscore), - (hyphen) and . (period).
194
- # * +:key_schema+ - *required* - (Hash)
195
- # * +:hash_key_element+ - *required* - (Hash) A hash key element is
186
+ # * `:key_schema` - *required* - (Hash)
187
+ # * `:hash_key_element` - *required* - (Hash) A hash key element is
196
188
  # treated as the primary key, and can be a string or a number.
197
189
  # Single attribute primary keys have one index value. The value can
198
190
  # be String, Number, StringSet, NumberSet.
199
- # * +:attribute_name+ - *required* - (String) The AttributeName of
191
+ # * `:attribute_name` - *required* - (String) The AttributeName of
200
192
  # the KeySchemaElement.
201
- # * +:attribute_type+ - *required* - (String) The AttributeType of
202
- # the KeySchemaElement which can be a String or a Number.
203
- # * +:range_key_element+ - (Hash) A range key element is treated as a
193
+ # * `:attribute_type` - *required* - (String) The AttributeType of
194
+ # the KeySchemaElement which can be a String or a Number. Valid
195
+ # values include:
196
+ # * `S`
197
+ # * `N`
198
+ # * `B`
199
+ # * `:range_key_element` - (Hash) A range key element is treated as a
204
200
  # secondary key (used in conjunction with the primary key), and can
205
201
  # be a string or a number, and is only used for hash-and-range
206
202
  # primary keys. The value can be String, Number, StringSet,
207
203
  # NumberSet.
208
- # * +:attribute_name+ - *required* - (String) The AttributeName of
204
+ # * `:attribute_name` - *required* - (String) The AttributeName of
209
205
  # the KeySchemaElement.
210
- # * +:attribute_type+ - *required* - (String) The AttributeType of
211
- # the KeySchemaElement which can be a String or a Number.
212
- # * +:provisioned_throughput+ - *required* - (Hash)
213
- # * +:read_capacity_units+ - *required* - (Integer) ReadCapacityUnits
206
+ # * `:attribute_type` - *required* - (String) The AttributeType of
207
+ # the KeySchemaElement which can be a String or a Number. Valid
208
+ # values include:
209
+ # * `S`
210
+ # * `N`
211
+ # * `B`
212
+ # * `:provisioned_throughput` - *required* - (Hash)
213
+ # * `:read_capacity_units` - *required* - (Integer) ReadCapacityUnits
214
214
  # are in terms of strictly consistent reads, assuming items of 1k.
215
215
  # 2k items require twice the ReadCapacityUnits.
216
216
  # Eventually-consistent reads only require half the
217
217
  # ReadCapacityUnits of stirctly consistent reads.
218
- # * +:write_capacity_units+ - *required* - (Integer)
218
+ # * `:write_capacity_units` - *required* - (Integer)
219
219
  # WriteCapacityUnits are in terms of strictly consistent reads,
220
220
  # assuming items of 1k. 2k items require twice the
221
221
  # WriteCapacityUnits.
222
222
  # @return [Core::Response]
223
223
  # The #data method of the response object returns
224
224
  # a hash with the following structure:
225
- # * +TableDescription+ - (Hash)
226
- # * +TableName+ - (String)
227
- # * +KeySchema+ - (Hash)
228
- # * +HashKeyElement+ - (Hash)
229
- # * +AttributeName+ - (String)
230
- # * +AttributeType+ - (String)
231
- # * +RangeKeyElement+ - (Hash)
232
- # * +AttributeName+ - (String)
233
- # * +AttributeType+ - (String)
234
- # * +TableStatus+ - (String)
235
- # * +CreationDateTime+ - (Time)
236
- # * +ProvisionedThroughput+ - (Hash)
237
- # * +LastIncreaseDateTime+ - (Time)
238
- # * +LastDecreaseDateTime+ - (Time)
239
- # * +ReadCapacityUnits+ - (Integer)
240
- # * +WriteCapacityUnits+ - (Integer)
241
- # * +TableSizeBytes+ - (Integer)
242
- # * +ItemCount+ - (Integer)
225
+ # * `TableDescription` - (Hash)
226
+ # * `TableName` - (String)
227
+ # * `KeySchema` - (Hash)
228
+ # * `HashKeyElement` - (Hash)
229
+ # * `AttributeName` - (String)
230
+ # * `AttributeType` - (String)
231
+ # * `RangeKeyElement` - (Hash)
232
+ # * `AttributeName` - (String)
233
+ # * `AttributeType` - (String)
234
+ # * `TableStatus` - (String)
235
+ # * `CreationDateTime` - (Time)
236
+ # * `ProvisionedThroughput` - (Hash)
237
+ # * `LastIncreaseDateTime` - (Time)
238
+ # * `LastDecreaseDateTime` - (Time)
239
+ # * `ReadCapacityUnits` - (Integer)
240
+ # * `WriteCapacityUnits` - (Integer)
241
+ # * `TableSizeBytes` - (Integer)
242
+ # * `ItemCount` - (Integer)
243
243
 
244
244
  # @!method delete_item(options = {})
245
245
  # Calls the DeleteItem API operation.
246
246
  # @param [Hash] options
247
- # * +:table_name+ - *required* - (String) The name of the table in
247
+ # * `:table_name` - *required* - (String) The name of the table in
248
248
  # which you want to delete an item. Allowed characters are a-z, A-Z,
249
249
  # 0-9, _ (underscore), - (hyphen) and . (period).
250
- # * +:key+ - *required* - (Hash)
251
- # * +:hash_key_element+ - *required* - (Hash) A hash key element is
250
+ # * `:key` - *required* - (Hash)
251
+ # * `:hash_key_element` - *required* - (Hash) A hash key element is
252
252
  # treated as the primary key, and can be a string or a number.
253
253
  # Single attribute primary keys have one index value. The value can
254
254
  # be String, Number, StringSet, NumberSet.
255
- # * +:s+ - (String) Strings are Unicode with UTF-8 binary encoding.
255
+ # * `:s` - (String) Strings are Unicode with UTF-8 binary encoding.
256
256
  # The maximum size is limited by the size of the primary key
257
257
  # (1024 bytes as a range part of a key or 2048 bytes as a single
258
258
  # part hash key) or the item size (64k).
259
- # * +:n+ - (String) Numbers are positive or negative exact-value
259
+ # * `:n` - (String) Numbers are positive or negative exact-value
260
260
  # decimals and integers. A number can have up to 38 digits
261
261
  # precision and can be between 10^-128 to 10^+126.
262
- # * +:b+ - (String) Binary attributes are sequences of unsigned
262
+ # * `:b` - (String) Binary attributes are sequences of unsigned
263
263
  # bytes.
264
- # * +:ss+ - (Array<String>) A set of strings.
265
- # * +:ns+ - (Array<String>) A set of numbers.
266
- # * +:bs+ - (Array<String>) A set of binary attributes.
267
- # * +:range_key_element+ - (Hash) A range key element is treated as a
264
+ # * `:ss` - (Array<String>) A set of strings.
265
+ # * `:ns` - (Array<String>) A set of numbers.
266
+ # * `:bs` - (Array<String>) A set of binary attributes.
267
+ # * `:range_key_element` - (Hash) A range key element is treated as a
268
268
  # secondary key (used in conjunction with the primary key), and can
269
269
  # be a string or a number, and is only used for hash-and-range
270
270
  # primary keys. The value can be String, Number, StringSet,
271
271
  # NumberSet.
272
- # * +:s+ - (String) Strings are Unicode with UTF-8 binary encoding.
272
+ # * `:s` - (String) Strings are Unicode with UTF-8 binary encoding.
273
273
  # The maximum size is limited by the size of the primary key
274
274
  # (1024 bytes as a range part of a key or 2048 bytes as a single
275
275
  # part hash key) or the item size (64k).
276
- # * +:n+ - (String) Numbers are positive or negative exact-value
276
+ # * `:n` - (String) Numbers are positive or negative exact-value
277
277
  # decimals and integers. A number can have up to 38 digits
278
278
  # precision and can be between 10^-128 to 10^+126.
279
- # * +:b+ - (String) Binary attributes are sequences of unsigned
279
+ # * `:b` - (String) Binary attributes are sequences of unsigned
280
280
  # bytes.
281
- # * +:ss+ - (Array<String>) A set of strings.
282
- # * +:ns+ - (Array<String>) A set of numbers.
283
- # * +:bs+ - (Array<String>) A set of binary attributes.
284
- # * +:expected+ - (Hash<String,Hash>)
285
- # * +:value+ - (Hash) Specify whether or not a value already exists
281
+ # * `:ss` - (Array<String>) A set of strings.
282
+ # * `:ns` - (Array<String>) A set of numbers.
283
+ # * `:bs` - (Array<String>) A set of binary attributes.
284
+ # * `:expected` - (Hash<String,Hash>)
285
+ # * `:value` - (Hash) Specify whether or not a value already exists
286
286
  # and has a specific content for the attribute name-value pair.
287
- # * +:s+ - (String) Strings are Unicode with UTF-8 binary encoding.
287
+ # * `:s` - (String) Strings are Unicode with UTF-8 binary encoding.
288
288
  # The maximum size is limited by the size of the primary key
289
289
  # (1024 bytes as a range part of a key or 2048 bytes as a single
290
290
  # part hash key) or the item size (64k).
291
- # * +:n+ - (String) Numbers are positive or negative exact-value
291
+ # * `:n` - (String) Numbers are positive or negative exact-value
292
292
  # decimals and integers. A number can have up to 38 digits
293
293
  # precision and can be between 10^-128 to 10^+126.
294
- # * +:b+ - (String) Binary attributes are sequences of unsigned
294
+ # * `:b` - (String) Binary attributes are sequences of unsigned
295
295
  # bytes.
296
- # * +:ss+ - (Array<String>) A set of strings.
297
- # * +:ns+ - (Array<String>) A set of numbers.
298
- # * +:bs+ - (Array<String>) A set of binary attributes.
299
- # * +:exists+ - (Boolean) Specify whether or not a value already
296
+ # * `:ss` - (Array<String>) A set of strings.
297
+ # * `:ns` - (Array<String>) A set of numbers.
298
+ # * `:bs` - (Array<String>) A set of binary attributes.
299
+ # * `:exists` - (Boolean) Specify whether or not a value already
300
300
  # exists for the attribute name-value pair.
301
- # * +:return_values+ - (String)
301
+ # * `:return_values` - (String) Valid values include:
302
+ # * `NONE`
303
+ # * `ALL_OLD`
304
+ # * `UPDATED_OLD`
305
+ # * `ALL_NEW`
306
+ # * `UPDATED_NEW`
302
307
  # @return [Core::Response]
303
308
  # The #data method of the response object returns
304
309
  # a hash with the following structure:
305
- # * +Attributes+ - (Hash<String,Hash>)
306
- # * +S+ - (String)
307
- # * +N+ - (String)
308
- # * +B+ - (String)
309
- # * +SS+ - (Array<String>)
310
- # * +NS+ - (Array<String>)
311
- # * +BS+ - (Array<Blob>)
312
- # * +ConsumedCapacityUnits+ - (Numeric)
310
+ # * `Attributes` - (Hash<String,Hash>)
311
+ # * `S` - (String)
312
+ # * `N` - (String)
313
+ # * `B` - (String)
314
+ # * `SS` - (Array<String>)
315
+ # * `NS` - (Array<String>)
316
+ # * `BS` - (Array<Blob>)
317
+ # * `ConsumedCapacityUnits` - (Numeric)
313
318
 
314
319
  # @!method delete_table(options = {})
315
320
  # Calls the DeleteTable API operation.
316
321
  # @param [Hash] options
317
- # * +:table_name+ - *required* - (String) The name of the table you
322
+ # * `:table_name` - *required* - (String) The name of the table you
318
323
  # want to delete. Allowed characters are a-z, A-Z, 0-9, _
319
324
  # (underscore), - (hyphen) and . (period).
320
325
  # @return [Core::Response]
321
326
  # The #data method of the response object returns
322
327
  # a hash with the following structure:
323
- # * +TableDescription+ - (Hash)
324
- # * +TableName+ - (String)
325
- # * +KeySchema+ - (Hash)
326
- # * +HashKeyElement+ - (Hash)
327
- # * +AttributeName+ - (String)
328
- # * +AttributeType+ - (String)
329
- # * +RangeKeyElement+ - (Hash)
330
- # * +AttributeName+ - (String)
331
- # * +AttributeType+ - (String)
332
- # * +TableStatus+ - (String)
333
- # * +CreationDateTime+ - (Time)
334
- # * +ProvisionedThroughput+ - (Hash)
335
- # * +LastIncreaseDateTime+ - (Time)
336
- # * +LastDecreaseDateTime+ - (Time)
337
- # * +ReadCapacityUnits+ - (Integer)
338
- # * +WriteCapacityUnits+ - (Integer)
339
- # * +TableSizeBytes+ - (Integer)
340
- # * +ItemCount+ - (Integer)
328
+ # * `TableDescription` - (Hash)
329
+ # * `TableName` - (String)
330
+ # * `KeySchema` - (Hash)
331
+ # * `HashKeyElement` - (Hash)
332
+ # * `AttributeName` - (String)
333
+ # * `AttributeType` - (String)
334
+ # * `RangeKeyElement` - (Hash)
335
+ # * `AttributeName` - (String)
336
+ # * `AttributeType` - (String)
337
+ # * `TableStatus` - (String)
338
+ # * `CreationDateTime` - (Time)
339
+ # * `ProvisionedThroughput` - (Hash)
340
+ # * `LastIncreaseDateTime` - (Time)
341
+ # * `LastDecreaseDateTime` - (Time)
342
+ # * `ReadCapacityUnits` - (Integer)
343
+ # * `WriteCapacityUnits` - (Integer)
344
+ # * `TableSizeBytes` - (Integer)
345
+ # * `ItemCount` - (Integer)
341
346
 
342
347
  # @!method describe_table(options = {})
343
348
  # Calls the DescribeTable API operation.
344
349
  # @param [Hash] options
345
- # * +:table_name+ - *required* - (String) The name of the table you
350
+ # * `:table_name` - *required* - (String) The name of the table you
346
351
  # want to describe. Allowed characters are a-z, A-Z, 0-9, _
347
352
  # (underscore), - (hyphen) and . (period).
348
353
  # @return [Core::Response]
349
354
  # The #data method of the response object returns
350
355
  # a hash with the following structure:
351
- # * +Table+ - (Hash)
352
- # * +TableName+ - (String)
353
- # * +KeySchema+ - (Hash)
354
- # * +HashKeyElement+ - (Hash)
355
- # * +AttributeName+ - (String)
356
- # * +AttributeType+ - (String)
357
- # * +RangeKeyElement+ - (Hash)
358
- # * +AttributeName+ - (String)
359
- # * +AttributeType+ - (String)
360
- # * +TableStatus+ - (String)
361
- # * +CreationDateTime+ - (Time)
362
- # * +ProvisionedThroughput+ - (Hash)
363
- # * +LastIncreaseDateTime+ - (Time)
364
- # * +LastDecreaseDateTime+ - (Time)
365
- # * +ReadCapacityUnits+ - (Integer)
366
- # * +WriteCapacityUnits+ - (Integer)
367
- # * +TableSizeBytes+ - (Integer)
368
- # * +ItemCount+ - (Integer)
356
+ # * `Table` - (Hash)
357
+ # * `TableName` - (String)
358
+ # * `KeySchema` - (Hash)
359
+ # * `HashKeyElement` - (Hash)
360
+ # * `AttributeName` - (String)
361
+ # * `AttributeType` - (String)
362
+ # * `RangeKeyElement` - (Hash)
363
+ # * `AttributeName` - (String)
364
+ # * `AttributeType` - (String)
365
+ # * `TableStatus` - (String)
366
+ # * `CreationDateTime` - (Time)
367
+ # * `ProvisionedThroughput` - (Hash)
368
+ # * `LastIncreaseDateTime` - (Time)
369
+ # * `LastDecreaseDateTime` - (Time)
370
+ # * `ReadCapacityUnits` - (Integer)
371
+ # * `WriteCapacityUnits` - (Integer)
372
+ # * `TableSizeBytes` - (Integer)
373
+ # * `ItemCount` - (Integer)
369
374
 
370
375
  # @!method get_item(options = {})
371
376
  # Calls the GetItem API operation.
372
377
  # @param [Hash] options
373
- # * +:table_name+ - *required* - (String) The name of the table in
378
+ # * `:table_name` - *required* - (String) The name of the table in
374
379
  # which you want to get an item. Allowed characters are a-z, A-Z,
375
380
  # 0-9, _ (underscore), - (hyphen) and . (period).
376
- # * +:key+ - *required* - (Hash)
377
- # * +:hash_key_element+ - *required* - (Hash) A hash key element is
381
+ # * `:key` - *required* - (Hash)
382
+ # * `:hash_key_element` - *required* - (Hash) A hash key element is
378
383
  # treated as the primary key, and can be a string or a number.
379
384
  # Single attribute primary keys have one index value. The value can
380
385
  # be String, Number, StringSet, NumberSet.
381
- # * +:s+ - (String) Strings are Unicode with UTF-8 binary encoding.
386
+ # * `:s` - (String) Strings are Unicode with UTF-8 binary encoding.
382
387
  # The maximum size is limited by the size of the primary key
383
388
  # (1024 bytes as a range part of a key or 2048 bytes as a single
384
389
  # part hash key) or the item size (64k).
385
- # * +:n+ - (String) Numbers are positive or negative exact-value
390
+ # * `:n` - (String) Numbers are positive or negative exact-value
386
391
  # decimals and integers. A number can have up to 38 digits
387
392
  # precision and can be between 10^-128 to 10^+126.
388
- # * +:b+ - (String) Binary attributes are sequences of unsigned
393
+ # * `:b` - (String) Binary attributes are sequences of unsigned
389
394
  # bytes.
390
- # * +:ss+ - (Array<String>) A set of strings.
391
- # * +:ns+ - (Array<String>) A set of numbers.
392
- # * +:bs+ - (Array<String>) A set of binary attributes.
393
- # * +:range_key_element+ - (Hash) A range key element is treated as a
395
+ # * `:ss` - (Array<String>) A set of strings.
396
+ # * `:ns` - (Array<String>) A set of numbers.
397
+ # * `:bs` - (Array<String>) A set of binary attributes.
398
+ # * `:range_key_element` - (Hash) A range key element is treated as a
394
399
  # secondary key (used in conjunction with the primary key), and can
395
400
  # be a string or a number, and is only used for hash-and-range
396
401
  # primary keys. The value can be String, Number, StringSet,
397
402
  # NumberSet.
398
- # * +:s+ - (String) Strings are Unicode with UTF-8 binary encoding.
403
+ # * `:s` - (String) Strings are Unicode with UTF-8 binary encoding.
399
404
  # The maximum size is limited by the size of the primary key
400
405
  # (1024 bytes as a range part of a key or 2048 bytes as a single
401
406
  # part hash key) or the item size (64k).
402
- # * +:n+ - (String) Numbers are positive or negative exact-value
407
+ # * `:n` - (String) Numbers are positive or negative exact-value
403
408
  # decimals and integers. A number can have up to 38 digits
404
409
  # precision and can be between 10^-128 to 10^+126.
405
- # * +:b+ - (String) Binary attributes are sequences of unsigned
410
+ # * `:b` - (String) Binary attributes are sequences of unsigned
406
411
  # bytes.
407
- # * +:ss+ - (Array<String>) A set of strings.
408
- # * +:ns+ - (Array<String>) A set of numbers.
409
- # * +:bs+ - (Array<String>) A set of binary attributes.
410
- # * +:attributes_to_get+ - (Array<String>)
411
- # * +:consistent_read+ - (Boolean)
412
+ # * `:ss` - (Array<String>) A set of strings.
413
+ # * `:ns` - (Array<String>) A set of numbers.
414
+ # * `:bs` - (Array<String>) A set of binary attributes.
415
+ # * `:attributes_to_get` - (Array<String>)
416
+ # * `:consistent_read` - (Boolean)
412
417
  # @return [Core::Response]
413
418
  # The #data method of the response object returns
414
419
  # a hash with the following structure:
415
- # * +Item+ - (Hash<String,Hash>)
416
- # * +S+ - (String)
417
- # * +N+ - (String)
418
- # * +B+ - (String)
419
- # * +SS+ - (Array<String>)
420
- # * +NS+ - (Array<String>)
421
- # * +BS+ - (Array<Blob>)
422
- # * +ConsumedCapacityUnits+ - (Numeric)
420
+ # * `Item` - (Hash<String,Hash>)
421
+ # * `S` - (String)
422
+ # * `N` - (String)
423
+ # * `B` - (String)
424
+ # * `SS` - (Array<String>)
425
+ # * `NS` - (Array<String>)
426
+ # * `BS` - (Array<Blob>)
427
+ # * `ConsumedCapacityUnits` - (Numeric)
423
428
 
424
429
  # @!method list_tables(options = {})
425
430
  # Calls the ListTables API operation.
426
431
  # @param [Hash] options
427
- # * +:exclusive_start_table_name+ - (String) The name of the table that
432
+ # * `:exclusive_start_table_name` - (String) The name of the table that
428
433
  # starts the list. If you already ran a ListTables operation and
429
434
  # recieved a LastEvaluatedTableName value in the response, use that
430
435
  # value here to continue the list.
431
- # * +:limit+ - (Integer)
436
+ # * `:limit` - (Integer)
432
437
  # @return [Core::Response]
433
438
  # The #data method of the response object returns
434
439
  # a hash with the following structure:
435
- # * +TableNames+ - (Array<String>)
436
- # * +LastEvaluatedTableName+ - (String)
440
+ # * `TableNames` - (Array<String>)
441
+ # * `LastEvaluatedTableName` - (String)
437
442
 
438
443
  # @!method put_item(options = {})
439
444
  # Calls the PutItem API operation.
440
445
  # @param [Hash] options
441
- # * +:table_name+ - *required* - (String) The name of the table in
446
+ # * `:table_name` - *required* - (String) The name of the table in
442
447
  # which you want to put an item. Allowed characters are a-z, A-Z,
443
448
  # 0-9, _ (underscore), - (hyphen) and . (period).
444
- # * +:item+ - *required* - (Hash<String,Hash>)
445
- # * +:s+ - (String) Strings are Unicode with UTF-8 binary encoding.
449
+ # * `:item` - *required* - (Hash<String,Hash>)
450
+ # * `:s` - (String) Strings are Unicode with UTF-8 binary encoding.
446
451
  # The maximum size is limited by the size of the primary key (1024
447
452
  # bytes as a range part of a key or 2048 bytes as a single part
448
453
  # hash key) or the item size (64k).
449
- # * +:n+ - (String) Numbers are positive or negative exact-value
454
+ # * `:n` - (String) Numbers are positive or negative exact-value
450
455
  # decimals and integers. A number can have up to 38 digits
451
456
  # precision and can be between 10^-128 to 10^+126.
452
- # * +:b+ - (String) Binary attributes are sequences of unsigned
457
+ # * `:b` - (String) Binary attributes are sequences of unsigned
453
458
  # bytes.
454
- # * +:ss+ - (Array<String>) A set of strings.
455
- # * +:ns+ - (Array<String>) A set of numbers.
456
- # * +:bs+ - (Array<String>) A set of binary attributes.
457
- # * +:expected+ - (Hash<String,Hash>)
458
- # * +:value+ - (Hash) Specify whether or not a value already exists
459
+ # * `:ss` - (Array<String>) A set of strings.
460
+ # * `:ns` - (Array<String>) A set of numbers.
461
+ # * `:bs` - (Array<String>) A set of binary attributes.
462
+ # * `:expected` - (Hash<String,Hash>)
463
+ # * `:value` - (Hash) Specify whether or not a value already exists
459
464
  # and has a specific content for the attribute name-value pair.
460
- # * +:s+ - (String) Strings are Unicode with UTF-8 binary encoding.
465
+ # * `:s` - (String) Strings are Unicode with UTF-8 binary encoding.
461
466
  # The maximum size is limited by the size of the primary key
462
467
  # (1024 bytes as a range part of a key or 2048 bytes as a single
463
468
  # part hash key) or the item size (64k).
464
- # * +:n+ - (String) Numbers are positive or negative exact-value
469
+ # * `:n` - (String) Numbers are positive or negative exact-value
465
470
  # decimals and integers. A number can have up to 38 digits
466
471
  # precision and can be between 10^-128 to 10^+126.
467
- # * +:b+ - (String) Binary attributes are sequences of unsigned
472
+ # * `:b` - (String) Binary attributes are sequences of unsigned
468
473
  # bytes.
469
- # * +:ss+ - (Array<String>) A set of strings.
470
- # * +:ns+ - (Array<String>) A set of numbers.
471
- # * +:bs+ - (Array<String>) A set of binary attributes.
472
- # * +:exists+ - (Boolean) Specify whether or not a value already
474
+ # * `:ss` - (Array<String>) A set of strings.
475
+ # * `:ns` - (Array<String>) A set of numbers.
476
+ # * `:bs` - (Array<String>) A set of binary attributes.
477
+ # * `:exists` - (Boolean) Specify whether or not a value already
473
478
  # exists for the attribute name-value pair.
474
- # * +:return_values+ - (String)
479
+ # * `:return_values` - (String) Valid values include:
480
+ # * `NONE`
481
+ # * `ALL_OLD`
482
+ # * `UPDATED_OLD`
483
+ # * `ALL_NEW`
484
+ # * `UPDATED_NEW`
475
485
  # @return [Core::Response]
476
486
  # The #data method of the response object returns
477
487
  # a hash with the following structure:
478
- # * +Attributes+ - (Hash<String,Hash>)
479
- # * +S+ - (String)
480
- # * +N+ - (String)
481
- # * +B+ - (String)
482
- # * +SS+ - (Array<String>)
483
- # * +NS+ - (Array<String>)
484
- # * +BS+ - (Array<Blob>)
485
- # * +ConsumedCapacityUnits+ - (Numeric)
488
+ # * `Attributes` - (Hash<String,Hash>)
489
+ # * `S` - (String)
490
+ # * `N` - (String)
491
+ # * `B` - (String)
492
+ # * `SS` - (Array<String>)
493
+ # * `NS` - (Array<String>)
494
+ # * `BS` - (Array<Blob>)
495
+ # * `ConsumedCapacityUnits` - (Numeric)
486
496
 
487
497
  # @!method query(options = {})
488
498
  # Calls the Query API operation.
489
499
  # @param [Hash] options
490
- # * +:table_name+ - *required* - (String) The name of the table in
500
+ # * `:table_name` - *required* - (String) The name of the table in
491
501
  # which you want to query. Allowed characters are a-z, A-Z, 0-9, _
492
502
  # (underscore), - (hyphen) and . (period).
493
- # * +:attributes_to_get+ - (Array<String>)
494
- # * +:limit+ - (Integer) The maximum number of items to return. If
503
+ # * `:attributes_to_get` - (Array<String>)
504
+ # * `:limit` - (Integer) The maximum number of items to return. If
495
505
  # Amazon DynamoDB hits this limit while querying the table, it stops
496
506
  # the query and returns the matching values up to the limit, and a
497
507
  # LastEvaluatedKey to apply in a subsequent operation to continue the
@@ -499,122 +509,136 @@ module AWS
499
509
  # DynamoDB hits this limit, it stops the query and returns the
500
510
  # matching values, and a LastEvaluatedKey to apply in a subsequent
501
511
  # operation to continue the query.
502
- # * +:consistent_read+ - (Boolean)
503
- # * +:count+ - (Boolean) If set to +true+ , Amazon DynamoDB returns a
512
+ # * `:consistent_read` - (Boolean)
513
+ # * `:count` - (Boolean) If set to `true` , Amazon DynamoDB returns a
504
514
  # total number of items that match the query parameters, instead of a
505
515
  # list of the matching items and their attributes. Do not set Count
506
- # to +true+ while providing a list of AttributesToGet, otherwise
516
+ # to `true` while providing a list of AttributesToGet, otherwise
507
517
  # Amazon DynamoDB returns a validation error.
508
- # * +:hash_key_value+ - *required* - (Hash) Attribute value of the hash
518
+ # * `:hash_key_value` - *required* - (Hash) Attribute value of the hash
509
519
  # component of the composite primary key.
510
- # * +:s+ - (String) Strings are Unicode with UTF-8 binary encoding.
520
+ # * `:s` - (String) Strings are Unicode with UTF-8 binary encoding.
511
521
  # The maximum size is limited by the size of the primary key (1024
512
522
  # bytes as a range part of a key or 2048 bytes as a single part
513
523
  # hash key) or the item size (64k).
514
- # * +:n+ - (String) Numbers are positive or negative exact-value
524
+ # * `:n` - (String) Numbers are positive or negative exact-value
515
525
  # decimals and integers. A number can have up to 38 digits
516
526
  # precision and can be between 10^-128 to 10^+126.
517
- # * +:b+ - (String) Binary attributes are sequences of unsigned
527
+ # * `:b` - (String) Binary attributes are sequences of unsigned
518
528
  # bytes.
519
- # * +:ss+ - (Array<String>) A set of strings.
520
- # * +:ns+ - (Array<String>) A set of numbers.
521
- # * +:bs+ - (Array<String>) A set of binary attributes.
522
- # * +:range_key_condition+ - (Hash) A container for the attribute
529
+ # * `:ss` - (Array<String>) A set of strings.
530
+ # * `:ns` - (Array<String>) A set of numbers.
531
+ # * `:bs` - (Array<String>) A set of binary attributes.
532
+ # * `:range_key_condition` - (Hash) A container for the attribute
523
533
  # values and comparison operators to use for the query.
524
- # * +:attribute_value_list+ - (Array<Hash>)
525
- # * +:s+ - (String) Strings are Unicode with UTF-8 binary encoding.
534
+ # * `:attribute_value_list` - (Array<Hash>)
535
+ # * `:s` - (String) Strings are Unicode with UTF-8 binary encoding.
526
536
  # The maximum size is limited by the size of the primary key
527
537
  # (1024 bytes as a range part of a key or 2048 bytes as a single
528
538
  # part hash key) or the item size (64k).
529
- # * +:n+ - (String) Numbers are positive or negative exact-value
539
+ # * `:n` - (String) Numbers are positive or negative exact-value
530
540
  # decimals and integers. A number can have up to 38 digits
531
541
  # precision and can be between 10^-128 to 10^+126.
532
- # * +:b+ - (String) Binary attributes are sequences of unsigned
542
+ # * `:b` - (String) Binary attributes are sequences of unsigned
533
543
  # bytes.
534
- # * +:ss+ - (Array<String>) A set of strings.
535
- # * +:ns+ - (Array<String>) A set of numbers.
536
- # * +:bs+ - (Array<String>) A set of binary attributes.
537
- # * +:comparison_operator+ - *required* - (String)
538
- # * +:scan_index_forward+ - (Boolean) Specifies forward or backward
544
+ # * `:ss` - (Array<String>) A set of strings.
545
+ # * `:ns` - (Array<String>) A set of numbers.
546
+ # * `:bs` - (Array<String>) A set of binary attributes.
547
+ # * `:comparison_operator` - *required* - (String) Valid values
548
+ # include:
549
+ # * `EQ`
550
+ # * `NE`
551
+ # * `IN`
552
+ # * `LE`
553
+ # * `LT`
554
+ # * `GE`
555
+ # * `GT`
556
+ # * `BETWEEN`
557
+ # * `NOT_NULL`
558
+ # * `NULL`
559
+ # * `CONTAINS`
560
+ # * `NOT_CONTAINS`
561
+ # * `BEGINS_WITH`
562
+ # * `:scan_index_forward` - (Boolean) Specifies forward or backward
539
563
  # traversal of the index. Amazon DynamoDB returns results reflecting
540
- # the requested order, determined by the range key. Default is +true+
564
+ # the requested order, determined by the range key. Default is `true`
541
565
  # (forward).
542
- # * +:exclusive_start_key+ - (Hash) Primary key of the item from which
566
+ # * `:exclusive_start_key` - (Hash) Primary key of the item from which
543
567
  # to continue an earlier query. An earlier query might provide this
544
568
  # value as the LastEvaluatedKey if that query operation was
545
569
  # interrupted before completing the query; either because of the
546
570
  # result set size or the Limit parameter. The LastEvaluatedKey can be
547
571
  # passed back in a new query request to continue the operation from
548
572
  # that point.
549
- # * +:hash_key_element+ - *required* - (Hash) A hash key element is
573
+ # * `:hash_key_element` - *required* - (Hash) A hash key element is
550
574
  # treated as the primary key, and can be a string or a number.
551
575
  # Single attribute primary keys have one index value. The value can
552
576
  # be String, Number, StringSet, NumberSet.
553
- # * +:s+ - (String) Strings are Unicode with UTF-8 binary encoding.
577
+ # * `:s` - (String) Strings are Unicode with UTF-8 binary encoding.
554
578
  # The maximum size is limited by the size of the primary key
555
579
  # (1024 bytes as a range part of a key or 2048 bytes as a single
556
580
  # part hash key) or the item size (64k).
557
- # * +:n+ - (String) Numbers are positive or negative exact-value
581
+ # * `:n` - (String) Numbers are positive or negative exact-value
558
582
  # decimals and integers. A number can have up to 38 digits
559
583
  # precision and can be between 10^-128 to 10^+126.
560
- # * +:b+ - (String) Binary attributes are sequences of unsigned
584
+ # * `:b` - (String) Binary attributes are sequences of unsigned
561
585
  # bytes.
562
- # * +:ss+ - (Array<String>) A set of strings.
563
- # * +:ns+ - (Array<String>) A set of numbers.
564
- # * +:bs+ - (Array<String>) A set of binary attributes.
565
- # * +:range_key_element+ - (Hash) A range key element is treated as a
586
+ # * `:ss` - (Array<String>) A set of strings.
587
+ # * `:ns` - (Array<String>) A set of numbers.
588
+ # * `:bs` - (Array<String>) A set of binary attributes.
589
+ # * `:range_key_element` - (Hash) A range key element is treated as a
566
590
  # secondary key (used in conjunction with the primary key), and can
567
591
  # be a string or a number, and is only used for hash-and-range
568
592
  # primary keys. The value can be String, Number, StringSet,
569
593
  # NumberSet.
570
- # * +:s+ - (String) Strings are Unicode with UTF-8 binary encoding.
594
+ # * `:s` - (String) Strings are Unicode with UTF-8 binary encoding.
571
595
  # The maximum size is limited by the size of the primary key
572
596
  # (1024 bytes as a range part of a key or 2048 bytes as a single
573
597
  # part hash key) or the item size (64k).
574
- # * +:n+ - (String) Numbers are positive or negative exact-value
598
+ # * `:n` - (String) Numbers are positive or negative exact-value
575
599
  # decimals and integers. A number can have up to 38 digits
576
600
  # precision and can be between 10^-128 to 10^+126.
577
- # * +:b+ - (String) Binary attributes are sequences of unsigned
601
+ # * `:b` - (String) Binary attributes are sequences of unsigned
578
602
  # bytes.
579
- # * +:ss+ - (Array<String>) A set of strings.
580
- # * +:ns+ - (Array<String>) A set of numbers.
581
- # * +:bs+ - (Array<String>) A set of binary attributes.
603
+ # * `:ss` - (Array<String>) A set of strings.
604
+ # * `:ns` - (Array<String>) A set of numbers.
605
+ # * `:bs` - (Array<String>) A set of binary attributes.
582
606
  # @return [Core::Response]
583
607
  # The #data method of the response object returns
584
608
  # a hash with the following structure:
585
- # * +member+ - (Hash<String,Hash>)
586
- # * +S+ - (String)
587
- # * +N+ - (String)
588
- # * +B+ - (String)
589
- # * +SS+ - (Array<String>)
590
- # * +NS+ - (Array<String>)
591
- # * +BS+ - (Array<Blob>)
592
- # * +Count+ - (Integer)
593
- # * +LastEvaluatedKey+ - (Hash)
594
- # * +HashKeyElement+ - (Hash)
595
- # * +S+ - (String)
596
- # * +N+ - (String)
597
- # * +B+ - (String)
598
- # * +SS+ - (Array<String>)
599
- # * +NS+ - (Array<String>)
600
- # * +BS+ - (Array<Blob>)
601
- # * +RangeKeyElement+ - (Hash)
602
- # * +S+ - (String)
603
- # * +N+ - (String)
604
- # * +B+ - (String)
605
- # * +SS+ - (Array<String>)
606
- # * +NS+ - (Array<String>)
607
- # * +BS+ - (Array<Blob>)
608
- # * +ConsumedCapacityUnits+ - (Numeric)
609
+ # * `member` - (Hash<String,Hash>)
610
+ # * `S` - (String)
611
+ # * `N` - (String)
612
+ # * `B` - (String)
613
+ # * `SS` - (Array<String>)
614
+ # * `NS` - (Array<String>)
615
+ # * `BS` - (Array<Blob>)
616
+ # * `Count` - (Integer)
617
+ # * `LastEvaluatedKey` - (Hash)
618
+ # * `HashKeyElement` - (Hash)
619
+ # * `S` - (String)
620
+ # * `N` - (String)
621
+ # * `B` - (String)
622
+ # * `SS` - (Array<String>)
623
+ # * `NS` - (Array<String>)
624
+ # * `BS` - (Array<Blob>)
625
+ # * `RangeKeyElement` - (Hash)
626
+ # * `S` - (String)
627
+ # * `N` - (String)
628
+ # * `B` - (String)
629
+ # * `SS` - (Array<String>)
630
+ # * `NS` - (Array<String>)
631
+ # * `BS` - (Array<Blob>)
632
+ # * `ConsumedCapacityUnits` - (Numeric)
609
633
 
610
634
  # @!method scan(options = {})
611
635
  # Calls the Scan API operation.
612
636
  # @param [Hash] options
613
- # * +:table_name+ - *required* - (String) The name of the table in
637
+ # * `:table_name` - *required* - (String) The name of the table in
614
638
  # which you want to scan. Allowed characters are a-z, A-Z, 0-9, _
615
639
  # (underscore), - (hyphen) and . (period).
616
- # * +:attributes_to_get+ - (Array<String>)
617
- # * +:limit+ - (Integer) The maximum number of items to return. If
640
+ # * `:attributes_to_get` - (Array<String>)
641
+ # * `:limit` - (Integer) The maximum number of items to return. If
618
642
  # Amazon DynamoDB hits this limit while scanning the table, it stops
619
643
  # the scan and returns the matching values up to the limit, and a
620
644
  # LastEvaluatedKey to apply in a subsequent operation to continue the
@@ -622,283 +646,244 @@ module AWS
622
646
  # DynamoDB hits this limit, it stops the scan and returns the
623
647
  # matching values up to the limit, and a LastEvaluatedKey to apply in
624
648
  # a subsequent operation to continue the scan.
625
- # * +:count+ - (Boolean) If set to +true+ , Amazon DynamoDB returns a
649
+ # * `:count` - (Boolean) If set to `true` , Amazon DynamoDB returns a
626
650
  # total number of items for the Scan operation, even if the operation
627
651
  # has no matching items for the assigned filter. Do not set Count to
628
- # +true+ while providing a list of AttributesToGet, otherwise Amazon
652
+ # `true` while providing a list of AttributesToGet, otherwise Amazon
629
653
  # DynamoDB returns a validation error.
630
- # * +:scan_filter+ - (Hash<String,Hash>) Evaluates the scan results and
654
+ # * `:scan_filter` - (Hash<String,Hash>) Evaluates the scan results and
631
655
  # returns only the desired values.
632
- # * +:attribute_value_list+ - (Array<Hash>)
633
- # * +:s+ - (String) Strings are Unicode with UTF-8 binary encoding.
656
+ # * `:attribute_value_list` - (Array<Hash>)
657
+ # * `:s` - (String) Strings are Unicode with UTF-8 binary encoding.
634
658
  # The maximum size is limited by the size of the primary key
635
659
  # (1024 bytes as a range part of a key or 2048 bytes as a single
636
660
  # part hash key) or the item size (64k).
637
- # * +:n+ - (String) Numbers are positive or negative exact-value
661
+ # * `:n` - (String) Numbers are positive or negative exact-value
638
662
  # decimals and integers. A number can have up to 38 digits
639
663
  # precision and can be between 10^-128 to 10^+126.
640
- # * +:b+ - (String) Binary attributes are sequences of unsigned
664
+ # * `:b` - (String) Binary attributes are sequences of unsigned
641
665
  # bytes.
642
- # * +:ss+ - (Array<String>) A set of strings.
643
- # * +:ns+ - (Array<String>) A set of numbers.
644
- # * +:bs+ - (Array<String>) A set of binary attributes.
645
- # * +:comparison_operator+ - *required* - (String)
646
- # * +:exclusive_start_key+ - (Hash) Primary key of the item from which
666
+ # * `:ss` - (Array<String>) A set of strings.
667
+ # * `:ns` - (Array<String>) A set of numbers.
668
+ # * `:bs` - (Array<String>) A set of binary attributes.
669
+ # * `:comparison_operator` - *required* - (String) Valid values
670
+ # include:
671
+ # * `EQ`
672
+ # * `NE`
673
+ # * `IN`
674
+ # * `LE`
675
+ # * `LT`
676
+ # * `GE`
677
+ # * `GT`
678
+ # * `BETWEEN`
679
+ # * `NOT_NULL`
680
+ # * `NULL`
681
+ # * `CONTAINS`
682
+ # * `NOT_CONTAINS`
683
+ # * `BEGINS_WITH`
684
+ # * `:exclusive_start_key` - (Hash) Primary key of the item from which
647
685
  # to continue an earlier scan. An earlier scan might provide this
648
686
  # value if that scan operation was interrupted before scanning the
649
687
  # entire table; either because of the result set size or the Limit
650
688
  # parameter. The LastEvaluatedKey can be passed back in a new scan
651
689
  # request to continue the operation from that point.
652
- # * +:hash_key_element+ - *required* - (Hash) A hash key element is
690
+ # * `:hash_key_element` - *required* - (Hash) A hash key element is
653
691
  # treated as the primary key, and can be a string or a number.
654
692
  # Single attribute primary keys have one index value. The value can
655
693
  # be String, Number, StringSet, NumberSet.
656
- # * +:s+ - (String) Strings are Unicode with UTF-8 binary encoding.
694
+ # * `:s` - (String) Strings are Unicode with UTF-8 binary encoding.
657
695
  # The maximum size is limited by the size of the primary key
658
696
  # (1024 bytes as a range part of a key or 2048 bytes as a single
659
697
  # part hash key) or the item size (64k).
660
- # * +:n+ - (String) Numbers are positive or negative exact-value
698
+ # * `:n` - (String) Numbers are positive or negative exact-value
661
699
  # decimals and integers. A number can have up to 38 digits
662
700
  # precision and can be between 10^-128 to 10^+126.
663
- # * +:b+ - (String) Binary attributes are sequences of unsigned
701
+ # * `:b` - (String) Binary attributes are sequences of unsigned
664
702
  # bytes.
665
- # * +:ss+ - (Array<String>) A set of strings.
666
- # * +:ns+ - (Array<String>) A set of numbers.
667
- # * +:bs+ - (Array<String>) A set of binary attributes.
668
- # * +:range_key_element+ - (Hash) A range key element is treated as a
703
+ # * `:ss` - (Array<String>) A set of strings.
704
+ # * `:ns` - (Array<String>) A set of numbers.
705
+ # * `:bs` - (Array<String>) A set of binary attributes.
706
+ # * `:range_key_element` - (Hash) A range key element is treated as a
669
707
  # secondary key (used in conjunction with the primary key), and can
670
708
  # be a string or a number, and is only used for hash-and-range
671
709
  # primary keys. The value can be String, Number, StringSet,
672
710
  # NumberSet.
673
- # * +:s+ - (String) Strings are Unicode with UTF-8 binary encoding.
711
+ # * `:s` - (String) Strings are Unicode with UTF-8 binary encoding.
674
712
  # The maximum size is limited by the size of the primary key
675
713
  # (1024 bytes as a range part of a key or 2048 bytes as a single
676
714
  # part hash key) or the item size (64k).
677
- # * +:n+ - (String) Numbers are positive or negative exact-value
715
+ # * `:n` - (String) Numbers are positive or negative exact-value
678
716
  # decimals and integers. A number can have up to 38 digits
679
717
  # precision and can be between 10^-128 to 10^+126.
680
- # * +:b+ - (String) Binary attributes are sequences of unsigned
718
+ # * `:b` - (String) Binary attributes are sequences of unsigned
681
719
  # bytes.
682
- # * +:ss+ - (Array<String>) A set of strings.
683
- # * +:ns+ - (Array<String>) A set of numbers.
684
- # * +:bs+ - (Array<String>) A set of binary attributes.
720
+ # * `:ss` - (Array<String>) A set of strings.
721
+ # * `:ns` - (Array<String>) A set of numbers.
722
+ # * `:bs` - (Array<String>) A set of binary attributes.
685
723
  # @return [Core::Response]
686
724
  # The #data method of the response object returns
687
725
  # a hash with the following structure:
688
- # * +member+ - (Hash<String,Hash>)
689
- # * +S+ - (String)
690
- # * +N+ - (String)
691
- # * +B+ - (String)
692
- # * +SS+ - (Array<String>)
693
- # * +NS+ - (Array<String>)
694
- # * +BS+ - (Array<Blob>)
695
- # * +Count+ - (Integer)
696
- # * +ScannedCount+ - (Integer)
697
- # * +LastEvaluatedKey+ - (Hash)
698
- # * +HashKeyElement+ - (Hash)
699
- # * +S+ - (String)
700
- # * +N+ - (String)
701
- # * +B+ - (String)
702
- # * +SS+ - (Array<String>)
703
- # * +NS+ - (Array<String>)
704
- # * +BS+ - (Array<Blob>)
705
- # * +RangeKeyElement+ - (Hash)
706
- # * +S+ - (String)
707
- # * +N+ - (String)
708
- # * +B+ - (String)
709
- # * +SS+ - (Array<String>)
710
- # * +NS+ - (Array<String>)
711
- # * +BS+ - (Array<Blob>)
712
- # * +ConsumedCapacityUnits+ - (Numeric)
726
+ # * `member` - (Hash<String,Hash>)
727
+ # * `S` - (String)
728
+ # * `N` - (String)
729
+ # * `B` - (String)
730
+ # * `SS` - (Array<String>)
731
+ # * `NS` - (Array<String>)
732
+ # * `BS` - (Array<Blob>)
733
+ # * `Count` - (Integer)
734
+ # * `ScannedCount` - (Integer)
735
+ # * `LastEvaluatedKey` - (Hash)
736
+ # * `HashKeyElement` - (Hash)
737
+ # * `S` - (String)
738
+ # * `N` - (String)
739
+ # * `B` - (String)
740
+ # * `SS` - (Array<String>)
741
+ # * `NS` - (Array<String>)
742
+ # * `BS` - (Array<Blob>)
743
+ # * `RangeKeyElement` - (Hash)
744
+ # * `S` - (String)
745
+ # * `N` - (String)
746
+ # * `B` - (String)
747
+ # * `SS` - (Array<String>)
748
+ # * `NS` - (Array<String>)
749
+ # * `BS` - (Array<Blob>)
750
+ # * `ConsumedCapacityUnits` - (Numeric)
713
751
 
714
752
  # @!method update_item(options = {})
715
753
  # Calls the UpdateItem API operation.
716
754
  # @param [Hash] options
717
- # * +:table_name+ - *required* - (String) The name of the table in
755
+ # * `:table_name` - *required* - (String) The name of the table in
718
756
  # which you want to update an item. Allowed characters are a-z, A-Z,
719
757
  # 0-9, _ (underscore), - (hyphen) and . (period).
720
- # * +:key+ - *required* - (Hash)
721
- # * +:hash_key_element+ - *required* - (Hash) A hash key element is
758
+ # * `:key` - *required* - (Hash)
759
+ # * `:hash_key_element` - *required* - (Hash) A hash key element is
722
760
  # treated as the primary key, and can be a string or a number.
723
761
  # Single attribute primary keys have one index value. The value can
724
762
  # be String, Number, StringSet, NumberSet.
725
- # * +:s+ - (String) Strings are Unicode with UTF-8 binary encoding.
763
+ # * `:s` - (String) Strings are Unicode with UTF-8 binary encoding.
726
764
  # The maximum size is limited by the size of the primary key
727
765
  # (1024 bytes as a range part of a key or 2048 bytes as a single
728
766
  # part hash key) or the item size (64k).
729
- # * +:n+ - (String) Numbers are positive or negative exact-value
767
+ # * `:n` - (String) Numbers are positive or negative exact-value
730
768
  # decimals and integers. A number can have up to 38 digits
731
769
  # precision and can be between 10^-128 to 10^+126.
732
- # * +:b+ - (String) Binary attributes are sequences of unsigned
770
+ # * `:b` - (String) Binary attributes are sequences of unsigned
733
771
  # bytes.
734
- # * +:ss+ - (Array<String>) A set of strings.
735
- # * +:ns+ - (Array<String>) A set of numbers.
736
- # * +:bs+ - (Array<String>) A set of binary attributes.
737
- # * +:range_key_element+ - (Hash) A range key element is treated as a
772
+ # * `:ss` - (Array<String>) A set of strings.
773
+ # * `:ns` - (Array<String>) A set of numbers.
774
+ # * `:bs` - (Array<String>) A set of binary attributes.
775
+ # * `:range_key_element` - (Hash) A range key element is treated as a
738
776
  # secondary key (used in conjunction with the primary key), and can
739
777
  # be a string or a number, and is only used for hash-and-range
740
778
  # primary keys. The value can be String, Number, StringSet,
741
779
  # NumberSet.
742
- # * +:s+ - (String) Strings are Unicode with UTF-8 binary encoding.
780
+ # * `:s` - (String) Strings are Unicode with UTF-8 binary encoding.
743
781
  # The maximum size is limited by the size of the primary key
744
782
  # (1024 bytes as a range part of a key or 2048 bytes as a single
745
783
  # part hash key) or the item size (64k).
746
- # * +:n+ - (String) Numbers are positive or negative exact-value
784
+ # * `:n` - (String) Numbers are positive or negative exact-value
747
785
  # decimals and integers. A number can have up to 38 digits
748
786
  # precision and can be between 10^-128 to 10^+126.
749
- # * +:b+ - (String) Binary attributes are sequences of unsigned
787
+ # * `:b` - (String) Binary attributes are sequences of unsigned
750
788
  # bytes.
751
- # * +:ss+ - (Array<String>) A set of strings.
752
- # * +:ns+ - (Array<String>) A set of numbers.
753
- # * +:bs+ - (Array<String>) A set of binary attributes.
754
- # * +:attribute_updates+ - *required* - (Hash<String,Hash>)
755
- # * +:value+ - (Hash)
756
- # * +:s+ - (String) Strings are Unicode with UTF-8 binary encoding.
789
+ # * `:ss` - (Array<String>) A set of strings.
790
+ # * `:ns` - (Array<String>) A set of numbers.
791
+ # * `:bs` - (Array<String>) A set of binary attributes.
792
+ # * `:attribute_updates` - *required* - (Hash<String,Hash>)
793
+ # * `:value` - (Hash)
794
+ # * `:s` - (String) Strings are Unicode with UTF-8 binary encoding.
757
795
  # The maximum size is limited by the size of the primary key
758
796
  # (1024 bytes as a range part of a key or 2048 bytes as a single
759
797
  # part hash key) or the item size (64k).
760
- # * +:n+ - (String) Numbers are positive or negative exact-value
798
+ # * `:n` - (String) Numbers are positive or negative exact-value
761
799
  # decimals and integers. A number can have up to 38 digits
762
800
  # precision and can be between 10^-128 to 10^+126.
763
- # * +:b+ - (String) Binary attributes are sequences of unsigned
801
+ # * `:b` - (String) Binary attributes are sequences of unsigned
764
802
  # bytes.
765
- # * +:ss+ - (Array<String>) A set of strings.
766
- # * +:ns+ - (Array<String>) A set of numbers.
767
- # * +:bs+ - (Array<String>) A set of binary attributes.
768
- # * +:action+ - (String)
769
- # * +:expected+ - (Hash<String,Hash>)
770
- # * +:value+ - (Hash) Specify whether or not a value already exists
803
+ # * `:ss` - (Array<String>) A set of strings.
804
+ # * `:ns` - (Array<String>) A set of numbers.
805
+ # * `:bs` - (Array<String>) A set of binary attributes.
806
+ # * `:action` - (String) Valid values include:
807
+ # * `ADD`
808
+ # * `PUT`
809
+ # * `DELETE`
810
+ # * `:expected` - (Hash<String,Hash>)
811
+ # * `:value` - (Hash) Specify whether or not a value already exists
771
812
  # and has a specific content for the attribute name-value pair.
772
- # * +:s+ - (String) Strings are Unicode with UTF-8 binary encoding.
813
+ # * `:s` - (String) Strings are Unicode with UTF-8 binary encoding.
773
814
  # The maximum size is limited by the size of the primary key
774
815
  # (1024 bytes as a range part of a key or 2048 bytes as a single
775
816
  # part hash key) or the item size (64k).
776
- # * +:n+ - (String) Numbers are positive or negative exact-value
817
+ # * `:n` - (String) Numbers are positive or negative exact-value
777
818
  # decimals and integers. A number can have up to 38 digits
778
819
  # precision and can be between 10^-128 to 10^+126.
779
- # * +:b+ - (String) Binary attributes are sequences of unsigned
820
+ # * `:b` - (String) Binary attributes are sequences of unsigned
780
821
  # bytes.
781
- # * +:ss+ - (Array<String>) A set of strings.
782
- # * +:ns+ - (Array<String>) A set of numbers.
783
- # * +:bs+ - (Array<String>) A set of binary attributes.
784
- # * +:exists+ - (Boolean) Specify whether or not a value already
822
+ # * `:ss` - (Array<String>) A set of strings.
823
+ # * `:ns` - (Array<String>) A set of numbers.
824
+ # * `:bs` - (Array<String>) A set of binary attributes.
825
+ # * `:exists` - (Boolean) Specify whether or not a value already
785
826
  # exists for the attribute name-value pair.
786
- # * +:return_values+ - (String)
827
+ # * `:return_values` - (String) Valid values include:
828
+ # * `NONE`
829
+ # * `ALL_OLD`
830
+ # * `UPDATED_OLD`
831
+ # * `ALL_NEW`
832
+ # * `UPDATED_NEW`
787
833
  # @return [Core::Response]
788
834
  # The #data method of the response object returns
789
835
  # a hash with the following structure:
790
- # * +Attributes+ - (Hash<String,Hash>)
791
- # * +S+ - (String)
792
- # * +N+ - (String)
793
- # * +B+ - (String)
794
- # * +SS+ - (Array<String>)
795
- # * +NS+ - (Array<String>)
796
- # * +BS+ - (Array<Blob>)
797
- # * +ConsumedCapacityUnits+ - (Numeric)
836
+ # * `Attributes` - (Hash<String,Hash>)
837
+ # * `S` - (String)
838
+ # * `N` - (String)
839
+ # * `B` - (String)
840
+ # * `SS` - (Array<String>)
841
+ # * `NS` - (Array<String>)
842
+ # * `BS` - (Array<Blob>)
843
+ # * `ConsumedCapacityUnits` - (Numeric)
798
844
 
799
845
  # @!method update_table(options = {})
800
846
  # Calls the UpdateTable API operation.
801
847
  # @param [Hash] options
802
- # * +:table_name+ - *required* - (String) The name of the table you
848
+ # * `:table_name` - *required* - (String) The name of the table you
803
849
  # want to update. Allowed characters are a-z, A-Z, 0-9, _
804
850
  # (underscore), - (hyphen) and . (period).
805
- # * +:provisioned_throughput+ - *required* - (Hash)
806
- # * +:read_capacity_units+ - *required* - (Integer) ReadCapacityUnits
851
+ # * `:provisioned_throughput` - *required* - (Hash)
852
+ # * `:read_capacity_units` - *required* - (Integer) ReadCapacityUnits
807
853
  # are in terms of strictly consistent reads, assuming items of 1k.
808
854
  # 2k items require twice the ReadCapacityUnits.
809
855
  # Eventually-consistent reads only require half the
810
856
  # ReadCapacityUnits of stirctly consistent reads.
811
- # * +:write_capacity_units+ - *required* - (Integer)
857
+ # * `:write_capacity_units` - *required* - (Integer)
812
858
  # WriteCapacityUnits are in terms of strictly consistent reads,
813
859
  # assuming items of 1k. 2k items require twice the
814
860
  # WriteCapacityUnits.
815
861
  # @return [Core::Response]
816
862
  # The #data method of the response object returns
817
863
  # a hash with the following structure:
818
- # * +TableDescription+ - (Hash)
819
- # * +TableName+ - (String)
820
- # * +KeySchema+ - (Hash)
821
- # * +HashKeyElement+ - (Hash)
822
- # * +AttributeName+ - (String)
823
- # * +AttributeType+ - (String)
824
- # * +RangeKeyElement+ - (Hash)
825
- # * +AttributeName+ - (String)
826
- # * +AttributeType+ - (String)
827
- # * +TableStatus+ - (String)
828
- # * +CreationDateTime+ - (Time)
829
- # * +ProvisionedThroughput+ - (Hash)
830
- # * +LastIncreaseDateTime+ - (Time)
831
- # * +LastDecreaseDateTime+ - (Time)
832
- # * +ReadCapacityUnits+ - (Integer)
833
- # * +WriteCapacityUnits+ - (Integer)
834
- # * +TableSizeBytes+ - (Integer)
835
- # * +ItemCount+ - (Integer)
864
+ # * `TableDescription` - (Hash)
865
+ # * `TableName` - (String)
866
+ # * `KeySchema` - (Hash)
867
+ # * `HashKeyElement` - (Hash)
868
+ # * `AttributeName` - (String)
869
+ # * `AttributeType` - (String)
870
+ # * `RangeKeyElement` - (Hash)
871
+ # * `AttributeName` - (String)
872
+ # * `AttributeType` - (String)
873
+ # * `TableStatus` - (String)
874
+ # * `CreationDateTime` - (Time)
875
+ # * `ProvisionedThroughput` - (Hash)
876
+ # * `LastIncreaseDateTime` - (Time)
877
+ # * `LastDecreaseDateTime` - (Time)
878
+ # * `ReadCapacityUnits` - (Integer)
879
+ # * `WriteCapacityUnits` - (Integer)
880
+ # * `TableSizeBytes` - (Integer)
881
+ # * `ItemCount` - (Integer)
836
882
 
837
883
  # end client methods #
838
884
 
839
885
  define_client_methods('2011-12-05')
840
886
 
841
- protected
842
-
843
- def extract_error_details response
844
- if response.http_response.status == 413
845
- ['RequestEntityTooLarge', 'Request entity too large']
846
- elsif crc32_is_valid?(response) == false
847
- ['CRC32CheckFailed', 'CRC32 integrity check failed']
848
- else
849
- super
850
- end
851
- end
852
-
853
- def retryable_error? response
854
- case response.error
855
- when Errors::ProvisionedThroughputExceededException
856
- config.dynamo_db_retry_throughput_errors?
857
- when Errors::CRC32CheckFailed
858
- true
859
- else
860
- super
861
- end
862
- end
863
-
864
- def sleep_durations response
865
-
866
- retry_count =
867
- if expired_credentials?(response)
868
- config.max_retries == 0 ? 0 : 1
869
- else
870
- config.max_retries { 10 }
871
- end
872
-
873
- # given a retry_count of 10, the sleep durations will look like:
874
- # 0, 50, 100, 200, 400, 800, 1600, 3200, 6400, 12800 (milliseconds)
875
- (0...retry_count).map do |n|
876
- if n == 0
877
- 0
878
- else
879
- 50 * (2 ** (n - 1)) / 1000.0
880
- end
881
- end
882
-
883
- end
884
-
885
- private
886
-
887
- # @return [Boolean] whether the CRC32 response header matches the body.
888
- # @return [nil] if no CRC32 header is present or we are not verifying CRC32
889
- def crc32_is_valid? response
890
- return nil unless config.dynamo_db_crc32
891
- if crcs = response.http_response.headers['x-amz-crc32']
892
- crcs[0].to_i == calculate_crc32(response)
893
- else
894
- nil
895
- end
896
- end
897
-
898
- def calculate_crc32 response
899
- Zlib.crc32(response.http_response.body)
900
- end
901
-
902
887
  end
903
888
  end
904
889
  end