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
@@ -22,33 +22,33 @@ module AWS
22
22
  #
23
23
  # Given you have a bucket with the following keys:
24
24
  #
25
- # README.txt
26
- # videos/wedding.mpg
27
- # videos/family_reunion.mpg
28
- # photos/2010/house.jpg
29
- # photos/2011/fall/leaves.jpg
30
- # photos/2011/summer/vacation.jpg
31
- # photos/2011/summer/family.jpg
25
+ # README.txt
26
+ # videos/wedding.mpg
27
+ # videos/family_reunion.mpg
28
+ # photos/2010/house.jpg
29
+ # photos/2011/fall/leaves.jpg
30
+ # photos/2011/summer/vacation.jpg
31
+ # photos/2011/summer/family.jpg
32
32
  #
33
33
  # You might like to explore the contents of this bucket as a tree:
34
34
  #
35
- # tree = bucket.as_tree
35
+ # tree = bucket.as_tree
36
36
  #
37
- # directories = tree.children.select(&:branch?).collect(&:prefix)
38
- # #=> ['photos', 'videos']
37
+ # directories = tree.children.select(&:branch?).collect(&:prefix)
38
+ # #=> ['photos', 'videos']
39
39
  #
40
- # files = tree.children.select(&:leaf?).collect(&:key)
41
- # #=> ['README.txt']
40
+ # files = tree.children.select(&:leaf?).collect(&:key)
41
+ # #=> ['README.txt']
42
42
  #
43
43
  # If you want to start further down, pass a prefix to {Bucket#as_tree}:
44
44
  #
45
- # tree = bucket.as_tree(:prefix => 'photos/2011')
45
+ # tree = bucket.as_tree(:prefix => 'photos/2011')
46
46
  #
47
- # directories = tree.children.select(&:branch?).collect(&:prefix)
48
- # #=> ['photos/20011/fall', 'photos/20011/summer']
47
+ # directories = tree.children.select(&:branch?).collect(&:prefix)
48
+ # #=> ['photos/20011/fall', 'photos/20011/summer']
49
49
  #
50
- # files = tree.children.select(&:leaf?).collect(&:key)
51
- # #=> []
50
+ # files = tree.children.select(&:leaf?).collect(&:key)
51
+ # #=> []
52
52
  #
53
53
  # All non-leaf nodes ({Tree} and {Tree::BranchNode} instances)
54
54
  # have a {Tree::Parent#children} method that provides access to
@@ -58,11 +58,11 @@ module AWS
58
58
  # non-leaf nodes are common prefixes to multiple keys
59
59
  # (directories) and leaf nodes are object keys.
60
60
  #
61
- # You can continue crawling the tree using the +children+
61
+ # You can continue crawling the tree using the `children`
62
62
  # collection on each branch node, which will contain the branch
63
63
  # nodes and leaf nodes below it.
64
64
  #
65
- # You can construct a Tree object using the +as_tree+ method of
65
+ # You can construct a Tree object using the `as_tree` method of
66
66
  # any of the following classes:
67
67
  #
68
68
  # * {Bucket} or {ObjectCollection} (for {S3Object} leaf nodes)
@@ -77,13 +77,11 @@ module AWS
77
77
  # using.
78
78
  class Tree
79
79
 
80
- AWS.register_autoloads(self) do
81
- autoload :BranchNode, 'branch_node'
82
- autoload :ChildCollection, 'child_collection'
83
- autoload :LeafNode, 'leaf_node'
84
- autoload :Node, 'node'
85
- autoload :Parent, 'parent'
86
- end
80
+ autoload :BranchNode, 'aws/s3/tree/branch_node'
81
+ autoload :ChildCollection, 'aws/s3/tree/child_collection'
82
+ autoload :LeafNode, 'aws/s3/tree/leaf_node'
83
+ autoload :Node, 'aws/s3/tree/node'
84
+ autoload :Parent, 'aws/s3/tree/parent'
87
85
 
88
86
  include Parent
89
87
 
@@ -95,7 +93,7 @@ module AWS
95
93
  # tree.
96
94
  #
97
95
  # @option options [String] :prefix (nil) Set prefix to choose
98
- # where the top of the tree will be. A value of +nil+ means
96
+ # where the top of the tree will be. A value of `nil` means
99
97
  # that the tree will include all objects in the collection.
100
98
  #
101
99
  # @option options [String] :delimiter ('/') The string that
@@ -23,9 +23,9 @@ module AWS
23
23
  # @private
24
24
  def initialize parent, collection, options = {}
25
25
 
26
- options = {
26
+ options = {
27
27
  :prefix => nil,
28
- :delimiter => '/',
28
+ :delimiter => '/',
29
29
  :append => true,
30
30
  }.merge(options)
31
31
 
@@ -58,7 +58,7 @@ module AWS
58
58
  attr_reader :delimiter
59
59
 
60
60
  # @return [Boolean] Returns true if the tree is set to auto-append
61
- # the delimiter to the prefix when the prefix does not end with
61
+ # the delimiter to the prefix when the prefix does not end with
62
62
  # the delimiter.
63
63
  def append?
64
64
  @append
@@ -64,7 +64,7 @@ module AWS
64
64
  end
65
65
  end
66
66
 
67
- # @return [ObjectVersion] Returns the object version this leaf
67
+ # @return [ObjectVersion] Returns the object version this leaf
68
68
  # node represents.
69
69
  def version
70
70
  if @member.kind_of?(ObjectVersion)
@@ -74,7 +74,7 @@ module AWS
74
74
  end
75
75
  end
76
76
 
77
- # @return [MultipartUpload] Returns the object version this leaf
77
+ # @return [MultipartUpload] Returns the object version this leaf
78
78
  # node represents.
79
79
  def upload
80
80
  if @member.kind_of?(MultipartUpload)
@@ -46,7 +46,7 @@ module AWS
46
46
  attr_reader :collection
47
47
 
48
48
  # A tree may have a prefix of where in the bucket to be based
49
- # from. A value of +nil+ means that the tree will include all
49
+ # from. A value of `nil` means that the tree will include all
50
50
  # objects in the collection.
51
51
  #
52
52
  # @return [String,nil]
@@ -22,13 +22,13 @@ module AWS
22
22
  # Describes the redirect behavior for every request to this
23
23
  # bucket's website endpoint. If this element is present, no
24
24
  # other options are are allowed.
25
- # * +:host_name+ - (*required*, String)
25
+ # * `:host_name` - (*required*, String)
26
26
  # Name of the host where requests will be redirected.
27
- # * +:protocol+ - (String)
27
+ # * `:protocol` - (String)
28
28
  # Protocol to use (http, https) when redirecting requests. The
29
29
  # default is the protocol that is used in the original request.
30
30
  # @option options [Hash] :index_document
31
- # * +:suffix+ - (*required*, String) - A suffix that is appended to
31
+ # * `:suffix` - (*required*, String) - A suffix that is appended to
32
32
  # a request that is for a directory on the website endpoint
33
33
  # (e.g. if the suffix is index.html and you make a request to
34
34
  # samplebucket/images/ the data that is returned will be for
@@ -36,18 +36,18 @@ module AWS
36
36
  # The suffix must not be empty and must not include a
37
37
  # slash character.
38
38
  # @option options [Hash] :error_document
39
- # * +:key+ - (*required*, String) - The object key name to use
39
+ # * `:key` - (*required*, String) - The object key name to use
40
40
  # when a 4XX class error occurs.
41
41
  # @option options [Array<Hash>] :routing_rules
42
- # * +:redirect+ - (*required*, Hash)
43
- # * +:host_name+ - (String)
44
- # * +:protocol+ - (String)
45
- # * +:replace_key_prefix_with+ - (String)
46
- # * +:replace_key_with+ - (String)
47
- # * +:http_redirect_code+ - (String)
48
- # * +:condition+ - (Hash)
49
- # * +:key_prefix_equals+ - (String)
50
- # * +:http_error_code_returned_equals+ - (String)
42
+ # * `:redirect` - (*required*, Hash)
43
+ # * `:host_name` - (String)
44
+ # * `:protocol` - (String)
45
+ # * `:replace_key_prefix_with` - (String)
46
+ # * `:replace_key_with` - (String)
47
+ # * `:http_redirect_code` - (String)
48
+ # * `:condition` - (Hash)
49
+ # * `:key_prefix_equals` - (String)
50
+ # * `:http_error_code_returned_equals` - (String)
51
51
  def initialize options = {}
52
52
  @options = deep_copy(options)
53
53
  if @options.empty?
@@ -18,30 +18,30 @@ module AWS
18
18
 
19
19
  # This class is the starting point for working with Amazon SimpleDB.
20
20
  #
21
- # To use Amazon SimpleDB you must first
22
- # {sign up here}[http://aws.amazon.com/simpledb/].
21
+ # To use Amazon SimpleDB you must first
22
+ # [sign up here](http://aws.amazon.com/simpledb/).
23
23
  #
24
24
  # For more information about Amazon SimpleDB:
25
25
  #
26
- # * {Amazon SimpleDB}[http://aws.amazon.com/simpledb/]
27
- # * {Amazon SimpleDB Documentation}[http://aws.amazon.com/documentation/simpledb/]
26
+ # * [Amazon SimpleDB](http://aws.amazon.com/simpledb/)
27
+ # * [Amazon SimpleDB Documentation](http://aws.amazon.com/documentation/simpledb/)
28
28
  #
29
- # = Credentials
29
+ # # Credentials
30
30
  #
31
- # You can setup default credentials for all AWS services via
31
+ # You can setup default credentials for all AWS services via
32
32
  # AWS.config:
33
33
  #
34
- # AWS.config(
35
- # :access_key_id => 'YOUR_ACCESS_KEY_ID',
36
- # :secret_access_key => 'YOUR_SECRET_ACCESS_KEY')
37
- #
34
+ # AWS.config(
35
+ # :access_key_id => 'YOUR_ACCESS_KEY_ID',
36
+ # :secret_access_key => 'YOUR_SECRET_ACCESS_KEY')
37
+ #
38
38
  # Or you can set them directly on the SimpleDB interface:
39
39
  #
40
- # sdb = AWS::SimpleDB.new(
41
- # :access_key_id => 'YOUR_ACCESS_KEY_ID',
42
- # :secret_access_key => 'YOUR_SECRET_ACCESS_KEY')
40
+ # sdb = AWS::SimpleDB.new(
41
+ # :access_key_id => 'YOUR_ACCESS_KEY_ID',
42
+ # :secret_access_key => 'YOUR_SECRET_ACCESS_KEY')
43
43
  #
44
- # = Understanding the SimpleDB Interface
44
+ # # Understanding the SimpleDB Interface
45
45
  #
46
46
  # SimpleDB stores data in a hierarchy of:
47
47
  #
@@ -49,66 +49,66 @@ module AWS
49
49
  #
50
50
  # These are modeled with the following classes:
51
51
  #
52
- # * {DomainCollection}
53
- # * {Domain}
54
- # * {ItemCollection}
55
- # * {Item}
56
- # * {AttributeCollection}
57
- # * {Attribute}
52
+ # * {DomainCollection}
53
+ # * {Domain}
54
+ # * {ItemCollection}
55
+ # * {Item}
56
+ # * {AttributeCollection}
57
+ # * {Attribute}
58
58
  #
59
59
  # The collection classes listed above make it easy to enumerate,
60
60
  # the objects they represent. They also make it easy to perform
61
61
  # bulk operations on all objects in that collection.
62
62
  #
63
- # = Domains
63
+ # # Domains
64
64
  #
65
65
  # Domains are like database tables. A domain must exist before you can
66
66
  # write to it. To create a domain:
67
67
  #
68
- # sdb = SimpleDB.new
69
- # domain = sdb.domains.create('mydomain')
68
+ # sdb = SimpleDB.new
69
+ # domain = sdb.domains.create('mydomain')
70
70
  #
71
71
  # For more information about working with domains see {DomainCollection}
72
72
  # and {Domain}.
73
73
  #
74
- # = Items & Attributes
74
+ # # Items & Attributes
75
75
  #
76
- # Items exist in SimpleDB when they have attributes. You can delete an
76
+ # Items exist in SimpleDB when they have attributes. You can delete an
77
77
  # item by removing all of its attributes. You create an item by adding
78
78
  # an attribute to it.
79
79
  #
80
80
  # The following example illustrates how you can reference an item that
81
81
  # does not exist yet:
82
82
  #
83
- # sdb = SimpleDB.new
83
+ # sdb = SimpleDB.new
84
84
  #
85
- # # this domain is empty, it has no items
86
- # domain = sdb.domains.create('newdomain')
87
- # domain.items.collect(&:name)
88
- # #=> []
85
+ # # this domain is empty, it has no items
86
+ # domain = sdb.domains.create('newdomain')
87
+ # domain.items.collect(&:name)
88
+ # #=> []
89
89
  #
90
- # # this item doesn't exist yet, so it has no attributes
91
- # item = domain.items['newitem']
92
- # item.attributes.collect(&:name)
93
- # #=> []
90
+ # # this item doesn't exist yet, so it has no attributes
91
+ # item = domain.items['newitem']
92
+ # item.attributes.collect(&:name)
93
+ # #=> []
94
94
  #
95
- # # the item has no attributes
96
- # tags = item.attributes['tags']
97
- # tags.values
98
- # #=> []
95
+ # # the item has no attributes
96
+ # tags = item.attributes['tags']
97
+ # tags.values
98
+ # #=> []
99
99
  #
100
100
  # To create the item in SimpleDB you just need to add an attribute.
101
101
  #
102
- # tags.add %w(first new)
102
+ # tags.add %w(first new)
103
103
  #
104
- # domain.items.collect(&:name)
105
- # #=> ['newitem']
104
+ # domain.items.collect(&:name)
105
+ # #=> ['newitem']
106
106
  #
107
- # item.attributes.collect(&:name)
108
- # #=> ['tags']
107
+ # item.attributes.collect(&:name)
108
+ # #=> ['tags']
109
109
  #
110
- # tags.values
111
- # #=> ['first', 'new']
110
+ # tags.values
111
+ # #=> ['first', 'new']
112
112
  #
113
113
  # For more information about working with items and attributes, see:
114
114
  #
@@ -117,53 +117,53 @@ module AWS
117
117
  # * {AttributeCollection}
118
118
  # * {Attribute}
119
119
  #
120
- # = Lazy Execution
120
+ # # Lazy Execution
121
121
  #
122
122
  # Requests are not made until necessary. This means you can drill down
123
123
  # all the way to an attribute, by name, without making any requests
124
124
  # to SimpleDB.
125
125
  #
126
- # # makes no request to SimpleDB
127
- # sdb = SimpleDB.new
128
- # colors = sdb.domains['mydomain'].items['car'].attributes['colors']
126
+ # # makes no request to SimpleDB
127
+ # sdb = SimpleDB.new
128
+ # colors = sdb.domains['mydomain'].items['car'].attributes['colors']
129
129
  #
130
- # # one request to get the values for 'colors'
131
- # puts colors.values
130
+ # # one request to get the values for 'colors'
131
+ # puts colors.values
132
132
  #
133
- # # one request to add blue and green
134
- # colors.add 'blue', 'green'
133
+ # # one request to add blue and green
134
+ # colors.add 'blue', 'green'
135
135
  #
136
- # # one request to delete the colors attribute
137
- # colors.delete
136
+ # # one request to delete the colors attribute
137
+ # colors.delete
138
138
  #
139
139
  # @!attribute [r] client
140
140
  # @return [Client] the low-level SimpleDB client object
141
141
  class SimpleDB
142
142
 
143
- AWS.register_autoloads(self, 'aws/simple_db') do
144
- autoload :Attribute, 'attribute'
145
- autoload :AttributeCollection, 'attribute_collection'
146
- autoload :Client, 'client'
147
- autoload :ConsistentReadOption, 'consistent_read_option'
148
- autoload :DeleteAttributes, 'delete_attributes'
149
- autoload :Domain, 'domain'
150
- autoload :DomainCollection, 'domain_collection'
151
- autoload :DomainMetadata, 'domain_metadata'
152
- autoload :Errors, 'errors'
153
- autoload :ExpectConditionOption, 'expect_condition_option'
154
- autoload :Item, 'item'
155
- autoload :ItemCollection, 'item_collection'
156
- autoload :ItemData, 'item_data'
157
- autoload :PutAttributes, 'put_attributes'
158
- autoload :Request, 'request'
159
- end
143
+ autoload :Attribute, 'aws/simple_db/attribute'
144
+ autoload :AttributeCollection, 'aws/simple_db/attribute_collection'
145
+ autoload :Client, 'aws/simple_db/client'
146
+ autoload :ConsistentReadOption, 'aws/simple_db/consistent_read_option'
147
+ autoload :DeleteAttributes, 'aws/simple_db/delete_attributes'
148
+ autoload :Domain, 'aws/simple_db/domain'
149
+ autoload :DomainCollection, 'aws/simple_db/domain_collection'
150
+ autoload :DomainMetadata, 'aws/simple_db/domain_metadata'
151
+ autoload :Errors, 'aws/simple_db/errors'
152
+ autoload :ExpectConditionOption, 'aws/simple_db/expect_condition_option'
153
+ autoload :Item, 'aws/simple_db/item'
154
+ autoload :ItemCollection, 'aws/simple_db/item_collection'
155
+ autoload :ItemData, 'aws/simple_db/item_data'
156
+ autoload :PutAttributes, 'aws/simple_db/put_attributes'
157
+ autoload :Request, 'aws/simple_db/request'
160
158
 
161
159
  include Core::ServiceInterface
162
160
 
161
+ endpoint_prefix 'sdb'
162
+
163
163
  # Returns a collection object that represents the domains in your
164
164
  # account.
165
165
  #
166
- # @return [DomainCollection] Returns a collection representing all your
166
+ # @return [DomainCollection] Returns a collection representing all your
167
167
  # domains.
168
168
  def domains
169
169
  DomainCollection.new(:config => config)
@@ -172,22 +172,22 @@ module AWS
172
172
  # Call this method with a block. Code executed inside the block
173
173
  # make consistent reads until the block ends.
174
174
  #
175
- # AWS::SimpleDB.consistent_reads do
176
- # # ...
177
- # end
175
+ # AWS::SimpleDB.consistent_reads do
176
+ # # ...
177
+ # end
178
178
  #
179
- # === Other Modes
179
+ # ### Other Modes
180
180
  #
181
181
  # You can also use this same function to disable consistent reads inside
182
- # a block. This is useful if you have consistent reads enabled by
182
+ # a block. This is useful if you have consistent reads enabled by
183
183
  # default:
184
184
  #
185
- # AWS::SimpleDB.consistent_reads(false) do
186
- # # ...
187
- # end
188
- #
185
+ # AWS::SimpleDB.consistent_reads(false) do
186
+ # # ...
187
+ # end
188
+ #
189
189
  # @param [Boolean] state (true) When true, all SimpleDB read operations
190
- # will be consistent reads inside the block. When false, all
190
+ # will be consistent reads inside the block. When false, all
191
191
  # reads operations will not be consistent reads. The previous state
192
192
  # will be restored after the block executes.
193
193
  # @return Returns the final block value.
@@ -39,9 +39,11 @@ module AWS
39
39
  # Sets all values for this attribute, replacing current values.
40
40
  #
41
41
  # @example Setting a list of values
42
+ #
42
43
  # attributes['colors'].set 'red', 'blue', 'green'
43
44
  #
44
45
  # @example Setting an array of values
46
+ #
45
47
  # attributes['colors'].set ['red', 'blue']
46
48
  #
47
49
  # @param [String] values A list of attribute values to set.
@@ -51,7 +53,7 @@ module AWS
51
53
  nil
52
54
  end
53
55
 
54
- # Appends values to this attribute. Duplicate values are ignored
56
+ # Appends values to this attribute. Duplicate values are ignored
55
57
  # by SimpleDB.
56
58
  #
57
59
  # @example Adding a list of values
@@ -81,7 +83,7 @@ module AWS
81
83
  # item.attributes['color'].delete('red', 'blue')
82
84
  #
83
85
  # @param values One ore more values to remove from this attribute.
84
- # If values is empty, then all attribute values are deleted
86
+ # If values is empty, then all attribute values are deleted
85
87
  # (which deletes this attribute).
86
88
  # @return [nil]
87
89
  def delete *values
@@ -96,14 +98,14 @@ module AWS
96
98
  nil
97
99
  end
98
100
 
99
- # Yields once for each value on this attribute.
101
+ # Yields once for each value on this attribute.
100
102
  #
101
103
  # @yield [attribute_value] Yields once for each domain in the account.
102
104
  # @yieldparam [String] attribute_value
103
- # @param [Hash] options
105
+ # @param [Hash] options
104
106
  # @option options [Boolean] :consistent_read (false) A consistent read
105
107
  # returns values that reflects all writes that received a successful
106
- # response prior to the read.
108
+ # response prior to the read.
107
109
  # @return [nil]
108
110
  def each options = {}, &block
109
111
 
@@ -127,10 +129,10 @@ module AWS
127
129
  # item.attributes['ratings'].values
128
130
  # #=> ['5', '3', '4']
129
131
  #
130
- # @param [Hash] options
132
+ # @param [Hash] options
131
133
  # @option options [Boolean] :consistent_read (false) A consistent read
132
134
  # returns values that reflects all writes that received a successful
133
- # response prior to the read.
135
+ # response prior to the read.
134
136
  # @return [Array<String>] An array of attribute values
135
137
  def values options = {}
136
138
  values = []