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
@@ -55,7 +55,7 @@ module AWS
55
55
  # @param [Object] resource The item to tag. This should be a taggable
56
56
  # EC2 resource, like an instance, security group, etc.
57
57
  # @param [String] key The tag key (or name).
58
- # @param [Hash] options
58
+ # @param [Hash] options
59
59
  # @option optins [String] :value ('') The optional tag value. When
60
60
  # left blank its assigned the empty string.
61
61
  # @return [Tag]
@@ -14,35 +14,35 @@
14
14
  module AWS
15
15
  class EC2
16
16
 
17
- # Most of the AWS::EC2 collections include TaggedCollection. This
17
+ # Most of the AWS::EC2 collections include TaggedCollection. This
18
18
  # module provides methods for filtering the collection with
19
19
  # tags.
20
20
  #
21
- # collecion.tagged('prod').each do {|obj| ... }
21
+ # collecion.tagged('prod').each do {|obj| ... }
22
22
  #
23
23
  module TaggedCollection
24
24
 
25
25
  # Filter the collection by one or more tag keys. If you pass multiple
26
- # tag keys they will be be treated as OR conditions. If you want to
26
+ # tag keys they will be be treated as OR conditions. If you want to
27
27
  # AND them together call tagged multiple times (chained).
28
28
  #
29
29
  # Filter the collection to items items tagged 'live' OR 'test'
30
30
  #
31
- # collection.tagged('live', 'test')
31
+ # collection.tagged('live', 'test')
32
32
  #
33
33
  # Filter the collection to items tagged 'live' AND 'webserver'
34
34
  #
35
- # collection.tagged('live').tagged('webserver')
35
+ # collection.tagged('live').tagged('webserver')
36
36
  #
37
37
  def tagged *keys
38
38
  filter('tag-key', *keys)
39
39
  end
40
40
 
41
41
  # Filter the collection by one or more tag values. If you pass multiple
42
- # tag values they will be be treated as OR conditions. If you want to
42
+ # tag values they will be be treated as OR conditions. If you want to
43
43
  # AND them together call tagged multiple times (chained).
44
44
  #
45
- # collection.tagged('stage').tagged_values('production')
45
+ # collection.tagged('stage').tagged_values('production')
46
46
  #
47
47
  def tagged_values *values
48
48
  filter('tag-value', *values)
@@ -17,11 +17,11 @@ module AWS
17
17
 
18
18
  # Adds a single tag with an optional tag value.
19
19
  #
20
- # # adds a tag with the key production
21
- # resource.tag('production')
20
+ # # adds a tag with the key production
21
+ # resource.tag('production')
22
22
  #
23
- # # adds a tag with the optional value set to production
24
- # resource.tag('role', :value => 'webserver')
23
+ # # adds a tag with the optional value set to production
24
+ # resource.tag('role', :value => 'webserver')
25
25
  #
26
26
  # @param [String] key The name of the tag to add.
27
27
  # @param [Hash] options
@@ -29,7 +29,7 @@ module AWS
29
29
  # @return [Tag] The tag that was created.
30
30
  def add_tag key, options = {}
31
31
  client.create_tags({
32
- :resources => [id],
32
+ :resources => [id],
33
33
  :tags => [{ :key => key, :value => options[:value].to_s }],
34
34
  })
35
35
  Tag.new(self, key, options.merge(:config => config))
@@ -47,11 +47,11 @@ module AWS
47
47
  # this resource.
48
48
  #
49
49
  # @example Manipulating the tags of an EC2 instance
50
- # i = ec2.instances["i-123"]
51
- # i.tags.to_h # => { "foo" => "bar", ... }
52
- # i.tags.clear
53
- # i.tags.stage = "production"
54
- # i.tags.stage # => "production"
50
+ # i = ec2.instances["i-123"]
51
+ # i.tags.to_h # => { "foo" => "bar", ... }
52
+ # i.tags.clear
53
+ # i.tags.stage = "production"
54
+ # i.tags.stage # => "production"
55
55
  #
56
56
  # @return [ResourceTagCollection] A collection of tags that
57
57
  # belong to this resource.
@@ -17,27 +17,27 @@ module AWS
17
17
  # Represents an Amazon EBS volume.
18
18
  #
19
19
  # @example Create an empty 15GiB volume and attach it to an instance
20
- # volume = ec2.volumes.create(:size => 15,
21
- # :availability_zone => "us-east-1a")
22
- # attachment = volume.attach_to(ec2.instances["i-123"], "/dev/sdf")
23
- # sleep 1 until attachment.status != :attaching
20
+ # volume = ec2.volumes.create(:size => 15,
21
+ # :availability_zone => "us-west-2a")
22
+ # attachment = volume.attach_to(ec2.instances["i-123"], "/dev/sdf")
23
+ # sleep 1 until attachment.status != :attaching
24
24
  #
25
25
  # @example Remove all attachments from a volume and then delete it
26
- # volume.attachments.each do |attachment|
27
- # attachment.delete(:force => true)
28
- # end
29
- # sleep 1 until volume.status == :available
30
- # volume.delete
26
+ # volume.attachments.each do |attachment|
27
+ # attachment.delete(:force => true)
28
+ # end
29
+ # sleep 1 until volume.status == :available
30
+ # volume.delete
31
31
  #
32
32
  # @attr_reader [Symbol] status The status of the volume.
33
33
  # Possible values:
34
34
  #
35
- # * +:creating+
36
- # * +:available+
37
- # * +:in_use+
38
- # * +:deleting+
39
- # * +:deleted+
40
- # * +:error+
35
+ # * `:creating`
36
+ # * `:available`
37
+ # * `:in_use`
38
+ # * `:deleting`
39
+ # * `:deleted`
40
+ # * `:error`
41
41
  #
42
42
  # @attr_reader [Integer] size The size of the volume in
43
43
  # gigabytes.
@@ -144,7 +144,7 @@ module AWS
144
144
  def exists?
145
145
  resp = client.describe_volumes(:filters => [
146
146
  { :name => 'volume-id', :values => [id] }
147
- ])
147
+ ])
148
148
  resp.volume_index.key?(id)
149
149
  end
150
150
 
@@ -18,12 +18,11 @@ module AWS
18
18
  # should get an instance of this class by calling {EC2#volumes}.
19
19
  #
20
20
  # @example Create an empty 15GiB volume
21
- # ec2.volumes.create(:size => 15,
22
- # :availability_zone => "us-east-1a")
21
+ # ec2.volumes.create(:size => 15, :availability_zone => "us-west-2a")
23
22
  #
24
23
  # @example Get a volume by ID
25
- # volume = ec2.volumes["vol-123"]
26
- # volume.exists?
24
+ # volume = ec2.volumes["vol-123"]
25
+ # volume.exists?
27
26
  #
28
27
  # @example Get a map of volume IDs to volume status
29
28
  # ec2.volumes.inject({}) { |m, v| m[v.id] = v.status; m }
@@ -38,7 +37,7 @@ module AWS
38
37
  resp = filtered_request(:describe_volumes)
39
38
  resp.volume_set.each do |v|
40
39
 
41
- volume = Volume.new_from(:describe_volumes, v,
40
+ volume = Volume.new_from(:describe_volumes, v,
42
41
  v.volume_id, :config => config)
43
42
 
44
43
  yield(volume)
@@ -49,19 +48,17 @@ module AWS
49
48
 
50
49
  # Creates a new Amazon EBS volume that any Amazon EC2 instance
51
50
  # in the same Availability Zone can attach to. For more
52
- # information about Amazon EBS, go to the {Amazon Elastic
53
- # Compute Cloud User
54
- # Guide}[http://docs.amazonwebservices.com/AWSEC2/latest/UserGuide/index.html?using-ebs.html].
51
+ # information about Amazon EBS, go to the [Amazon Elastic Compute Cloud User Guide](http://docs.amazonwebservices.com/AWSEC2/latest/UserGuide/index.html?using-ebs.html).
55
52
  #
56
53
  # @return [Volume] An object representing the new volume.
57
54
  #
58
55
  # @param [Hash] options Options for creating the volume.
59
- # +:availability_zone+ and one of +:size+, +:snapshot+, or
60
- # +:snapshot_id+ is required.
56
+ # `:availability_zone` and one of `:size`, `:snapshot`, or
57
+ # `:snapshot_id` is required.
61
58
  #
62
59
  # @option options [Integer] :size The size of the volume, in
63
- # GiBs. Valid values: 1 - 1024. If +:snapshot+ or
64
- # +:snapshot_id+ is specified, this defaults to the size of
60
+ # GiBs. Valid values: 1 - 1024. If `:snapshot` or
61
+ # `:snapshot_id` is specified, this defaults to the size of
65
62
  # the specified snapshot.
66
63
  #
67
64
  # @option options [Snapshot] :snapshot The snapshot from which to
@@ -68,7 +68,7 @@ module AWS
68
68
  SecurityGroupCollection.new(:config => config).filter('vpc-id', vpc_id)
69
69
  end
70
70
 
71
- # @return [SubnetCollection] Returns a filtered collection of
71
+ # @return [SubnetCollection] Returns a filtered collection of
72
72
  # subnets that are in this VPC.
73
73
  def subnets
74
74
  SubnetCollection.new(:config => config).filter('vpc-id', vpc_id)
@@ -120,12 +120,12 @@ module AWS
120
120
 
121
121
  if internet_gateway
122
122
  unless internet_gateway.is_a?(InternetGateway)
123
- internet_gateway = InternetGateway.new(internet_gateway,
123
+ internet_gateway = InternetGateway.new(internet_gateway,
124
124
  :config => config)
125
125
  end
126
126
  internet_gateway.attach(self)
127
127
  end
128
-
128
+
129
129
  end
130
130
 
131
131
  # @return [VPNGateway,nil] Returns the vpn gateway attached to
@@ -136,7 +136,7 @@ module AWS
136
136
  gateways.filter('attachment.vpc-id', vpc_id).first
137
137
  end
138
138
 
139
- # @return [DHCPOptions] Returns the dhcp options associated with
139
+ # @return [DHCPOptions] Returns the dhcp options associated with
140
140
  # this VPC.
141
141
  def dhcp_options
142
142
  DHCPOptions.new(dhcp_options_id, :config => config)
@@ -153,9 +153,9 @@ module AWS
153
153
  #
154
154
  # @param [DHCPOptions,String] dhcp_options A {DHCPOptions} object
155
155
  # or a dhcp options id string.
156
- #
156
+ #
157
157
  def dhcp_options= dhcp_options
158
- unless dhcp_options.is_a?(DHCPOptions)
158
+ unless dhcp_options.is_a?(DHCPOptions)
159
159
  dhcp_options = DHCPOptions.new(dhcp_options, :config => config)
160
160
  end
161
161
  dhcp_options.associate(self)
@@ -19,27 +19,27 @@ module AWS
19
19
  include TaggedCollection
20
20
  include Core::Collection::Simple
21
21
 
22
- # Creates a VPC with the CIDR block you specify. The smallest VPC you
23
- # can create uses a /28 netmask (16 IP addresses), and the largest
24
- # uses a /16 netmask (65,536 IP addresses).
22
+ # Creates a VPC with the CIDR block you specify. The smallest VPC you
23
+ # can create uses a /28 netmask (16 IP addresses), and the largest
24
+ # uses a /16 netmask (65,536 IP addresses).
25
25
  #
26
- # vpc = ec2.vpcs.create('10.0.0.0/16')
26
+ # vpc = ec2.vpcs.create('10.0.0.0/16')
27
27
  #
28
- # @param [String] cidr_block The CIDR block you want the VPC to
28
+ # @param [String] cidr_block The CIDR block you want the VPC to
29
29
  # cover (e.g., 10.0.0.0/16).
30
30
  #
31
31
  # @param [Hash] options
32
32
  #
33
- # @option options [Boolean] :instance_tenancy (:default)
34
- # The allowed tenancy of instances launched into the VPC. A value of
35
- # +:default+ means instances can be launched with any tenancy; a value
36
- # of +:dedicated+ means all instances launched into the VPC will be launched with
33
+ # @option options [Boolean] :instance_tenancy (:default)
34
+ # The allowed tenancy of instances launched into the VPC. A value of
35
+ # `:default` means instances can be launched with any tenancy; a value
36
+ # of `:dedicated` means all instances launched into the VPC will be launched with
37
37
  # dedicated tenancy regardless of the tenancy assigned to the instance at launch.
38
38
  #
39
39
  # @return [VPC]
40
40
  #
41
41
  def create cidr_block, options = {}
42
-
42
+
43
43
  tenancy = options.key?(:instance_tenancy) ?
44
44
  options[:instance_tenancy].to_s : 'default'
45
45
 
@@ -25,8 +25,8 @@ module AWS
25
25
  # @attr_reader [String] customer_gateway_id
26
26
  #
27
27
  # @attr_reader [String] customer_gateway_configuration
28
- # Configuration XML for the VPN connection's customer gateway This
29
- # attribute is always present after creating a vpn connection while
28
+ # Configuration XML for the VPN connection's customer gateway This
29
+ # attribute is always present after creating a vpn connection while
30
30
  # the connection state is :pending or :available.
31
31
  #
32
32
  class VPNConnection < Resource
@@ -57,13 +57,13 @@ module AWS
57
57
  attribute :vgw_telemetry_details, :from => :vgw_telemetry
58
58
 
59
59
  protected :vgw_telemetry_details
60
-
60
+
61
61
  populates_from(:create_vpn_connection) do |resp|
62
62
  resp.vpn_connection if resp.vpn_connection.vpn_connection_id == id
63
63
  end
64
64
 
65
65
  populates_from(:describe_vpn_connections) do |resp|
66
- resp.vpn_connection_set.find do |vpn_connection|
66
+ resp.vpn_connection_set.find do |vpn_connection|
67
67
  vpn_connection.vpn_connection_id == vpn_connection_id
68
68
  end
69
69
  end
@@ -15,7 +15,7 @@ module AWS
15
15
  class EC2
16
16
  class VPNConnection < Resource
17
17
  class Telemetry
18
-
18
+
19
19
  def initialize vpn_connection, details
20
20
  @vpn_connection = vpn_connection
21
21
  @outside_ip_address = details.outside_ip_address
@@ -19,7 +19,7 @@ module AWS
19
19
  include TaggedCollection
20
20
  include Core::Collection::Simple
21
21
 
22
- # Creates a new VPN connection between an existing virtual private
22
+ # Creates a new VPN connection between an existing virtual private
23
23
  # gateway and a VPN customer gateway.
24
24
  #
25
25
  # @param [Hash] options
@@ -30,13 +30,13 @@ module AWS
30
30
  # @option options [VPNGateway,String] :vpn_gateway
31
31
  # The {VPNGateway} object or vpn gateway id string.
32
32
  #
33
- # @option options [String] :vpn_type ('ipsec.1')
33
+ # @option options [String] :vpn_type ('ipsec.1')
34
34
  # The type of VPN connection.
35
35
  #
36
36
  # @return [VPNConnection]
37
37
  #
38
38
  def create options = {}
39
-
39
+
40
40
  client_opts = {}
41
41
  client_opts[:customer_gateway_id] = customer_gateway_id(options)
42
42
  client_opts[:vpn_gateway_id] = vpn_gateway_id(options)
@@ -51,8 +51,8 @@ module AWS
51
51
 
52
52
  # Returns a reference to the VPN connection with the given id.
53
53
  #
54
- # vpn_connection = ec2.vpn_connections['vpn-connection-id']
55
- #
54
+ # vpn_connection = ec2.vpn_connections['vpn-connection-id']
55
+ #
56
56
  # @param [String] vpn_connection_id
57
57
  #
58
58
  # @return [VPNConnection]
@@ -67,7 +67,7 @@ module AWS
67
67
  response = filtered_request(:describe_vpn_connections, options, &block)
68
68
  response.vpn_connection_set.each do |c|
69
69
 
70
- vpn_connection = VPNConnection.new_from(:describe_vpn_connections,
70
+ vpn_connection = VPNConnection.new_from(:describe_vpn_connections,
71
71
  c, c.vpn_connection_id, :config => config)
72
72
 
73
73
  yield(vpn_connection)
@@ -43,7 +43,7 @@ module AWS
43
43
  end
44
44
 
45
45
  populates_from(:describe_vpn_gateways) do |resp|
46
- resp.vpn_gateway_set.find do |gateway|
46
+ resp.vpn_gateway_set.find do |gateway|
47
47
  gateway.vpn_gateway_id == vpn_gateway_id
48
48
  end
49
49
  end
@@ -56,7 +56,7 @@ module AWS
56
56
  # @return [VPC,nil] Returns the currently attached VPC, or nil
57
57
  # if this gateway has not been attached.
58
58
  def vpc
59
- if attachment = attachments.first
59
+ if attachment = attachments.first
60
60
  attachment.vpc
61
61
  end
62
62
  end
@@ -19,20 +19,20 @@ module AWS
19
19
  include TaggedCollection
20
20
  include Core::Collection::Simple
21
21
 
22
- # Creates a new virtual private gateway. A virtual private gateway is
23
- # the VPC-side endpoint for your VPN connection. You can create a
22
+ # Creates a new virtual private gateway. A virtual private gateway is
23
+ # the VPC-side endpoint for your VPN connection. You can create a
24
24
  # virtual private gateway before creating the VPC itself.
25
25
  #
26
26
  # @param [Hash] options
27
27
  #
28
- # @option options [String] :vpn_type ('ipsec.1') The type of VPN
28
+ # @option options [String] :vpn_type ('ipsec.1') The type of VPN
29
29
  # connection this virtual private gateway supports.
30
30
  #
31
31
  # @option options [AvailabilityZone,String] :availability_zone
32
32
  # The Availability Zone where you want the virtual private gateway.
33
33
  # AWS can select a default zone for you. This can be an
34
34
  # {AvailabilityZone} object or availability zone name string.
35
- #
35
+ #
36
36
  # @return [VPNGateway]
37
37
  #
38
38
  def create options = {}
@@ -64,7 +64,7 @@ module AWS
64
64
  response = filtered_request(:describe_vpn_gateways, options, &block)
65
65
  response.vpn_gateway_set.each do |g|
66
66
 
67
- gateway = VPNGateway.new_from(:describe_vpn_gateways, g,
67
+ gateway = VPNGateway.new_from(:describe_vpn_gateways, g,
68
68
  g.vpn_gateway_id, :config => config)
69
69
 
70
70
  yield(gateway)
@@ -18,33 +18,33 @@ module AWS
18
18
 
19
19
  # Provides an expressive, object-oriented interface to AWS Elastic Beanstalk.
20
20
  #
21
- # == Credentials
21
+ # ## Credentials
22
22
  #
23
23
  # You can setup default credentials for all AWS services via
24
24
  # AWS.config:
25
25
  #
26
- # AWS.config(
27
- # :access_key_id => 'YOUR_ACCESS_KEY_ID',
28
- # :secret_access_key => 'YOUR_SECRET_ACCESS_KEY')
26
+ # AWS.config(
27
+ # :access_key_id => 'YOUR_ACCESS_KEY_ID',
28
+ # :secret_access_key => 'YOUR_SECRET_ACCESS_KEY')
29
29
  #
30
30
  # Or you can set them directly on the ElasticBeanstalk interface:
31
31
  #
32
- # beanstalk = AWS::ElasticBeanstalk.new(
33
- # :access_key_id => 'YOUR_ACCESS_KEY_ID',
34
- # :secret_access_key => 'YOUR_SECRET_ACCESS_KEY')
32
+ # beanstalk = AWS::ElasticBeanstalk.new(
33
+ # :access_key_id => 'YOUR_ACCESS_KEY_ID',
34
+ # :secret_access_key => 'YOUR_SECRET_ACCESS_KEY')
35
35
  #
36
36
  # @!attribute [r] client
37
37
  # @return [Client] the low-level ElasticBeanstalk client object
38
38
  class ElasticBeanstalk
39
39
 
40
- AWS.register_autoloads(self, 'aws/elastic_beanstalk') do
41
- autoload :Client, 'client'
42
- autoload :Errors, 'errors'
43
- autoload :Request, 'request'
44
- end
40
+ autoload :Client, 'aws/elastic_beanstalk/client'
41
+ autoload :Errors, 'aws/elastic_beanstalk/errors'
42
+ autoload :Request, 'aws/elastic_beanstalk/request'
45
43
 
46
44
  include Core::ServiceInterface
47
45
 
46
+ endpoint_prefix 'elasticbeanstalk'
47
+
48
48
  end
49
49
 
50
50
  end