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
@@ -13,6 +13,6 @@
13
13
 
14
14
  AWS::Core::Configuration.module_eval do
15
15
 
16
- add_service 'ELB', 'elb', 'elasticloadbalancing.us-east-1.amazonaws.com'
16
+ add_service 'ELB', 'elb', 'elasticloadbalancing.%s.amazonaws.com'
17
17
 
18
18
  end
@@ -17,7 +17,7 @@ module AWS
17
17
 
18
18
  extend Core::LazyErrorClasses
19
19
 
20
- def self.error_class code
20
+ def self.error_class code
21
21
  super(code.sub(/^ElasticLoadBalancing\./, ''))
22
22
  end
23
23
 
@@ -25,13 +25,11 @@ module AWS
25
25
 
26
26
  # Returns an {EC2::Instance} object with 3 extra methods added:
27
27
  #
28
- # * +#load_balancer+
28
+ # * `#load_balancer`
29
+ # * `#remove_from_load_balancer`
30
+ # * `#elb_health`
29
31
  #
30
- # * +#remove_from_load_balancer+
31
- #
32
- # * +#elb_health+
33
- #
34
- # See {#health} for more information about what +#elb_health+ returns.
32
+ # See {#health} for more information about what `#elb_health` returns.
35
33
  #
36
34
  # @return [EC2::Instance] Return an EC2::Instance object with additional
37
35
  # methods added.
@@ -63,13 +61,10 @@ module AWS
63
61
  # Returns an array of instance health descriptions. Each description
64
62
  # is a hash with the following entries:
65
63
  #
66
- # * +:instance+ - The {EC2::Instance} being described.
67
- #
68
- # * +:description+ - Provides a description of the instance.
69
- #
70
- # * +:state+ - Specifies the current state of the instance.
71
- #
72
- # * +:reason_code+ - Provides information about the cause of
64
+ # * `:instance` - The {EC2::Instance} being described.
65
+ # * `:description` - Provides a description of the instance.
66
+ # * `:state` - Specifies the current state of the instance.
67
+ # * `:reason_code` - Provides information about the cause of
73
68
  # OutOfService instances. Specifically, it indicates whether the
74
69
  # cause is Elastic Load Balancing or the instance behind the
75
70
  # load balancer.
@@ -77,27 +72,27 @@ module AWS
77
72
  # You can get the health of all instances for this load balancer
78
73
  # by passing no arguments to this method:
79
74
  #
80
- # # get the health of all instances in the collection
81
- # load_balancer.instances.health.each do |instance_health|
82
- # puts "Instance: " + instance_health[:instance].id
83
- # puts "description: " + instance_health[:description]
84
- # puts "state: " + instance_health[:state]
85
- # puts "reason code: " + instance_health[:reason_code]
86
- # end
75
+ # # get the health of all instances in the collection
76
+ # load_balancer.instances.health.each do |instance_health|
77
+ # puts "Instance: " + instance_health[:instance].id
78
+ # puts "description: " + instance_health[:description]
79
+ # puts "state: " + instance_health[:state]
80
+ # puts "reason code: " + instance_health[:reason_code]
81
+ # end
87
82
  #
88
83
  # If you want the health of a specific list of instances, pass
89
84
  # instance ids or instance objects to this method:
90
85
  #
91
- # # get the health for a few specific instances
92
- # load_balancer.instances.health('i-12345', 'i-67890').each{|h| ... }
86
+ # # get the health for a few specific instances
87
+ # load_balancer.instances.health('i-12345', 'i-67890').each{|h| ... }
93
88
  #
94
- # == Health for a Single Instance
89
+ # ## Health for a Single Instance
95
90
  #
96
91
  # If you want the health of a single instance you can use the {#[]}
97
92
  # instead:
98
93
  #
99
- # load_balancer.instances['i-123456'].elb_health
100
- # # => { :state => ..., :reason_code => ..., :description => ... }
94
+ # load_balancer.instances['i-123456'].elb_health
95
+ # # => { :state => ..., :reason_code => ..., :description => ... }
101
96
  #
102
97
  # @param [String,EC2::Instance] instances A list of instances to
103
98
  # receive health information for.
@@ -140,9 +140,9 @@ module AWS
140
140
 
141
141
  # Returns true if this listener exists.
142
142
  #
143
- # load_balancer = ELB.new.load_balancers['my-load-balancer']
144
- # listener = load_balancer.listeners[80] # port 80
145
- # listener.exists?
143
+ # load_balancer = ELB.new.load_balancers['my-load-balancer']
144
+ # listener = load_balancer.listeners[80] # port 80
145
+ # listener.exists?
146
146
  #
147
147
  # @return [Boolean] Returns true if the load balancer has a listener
148
148
  # on this port.
@@ -51,17 +51,17 @@ module AWS
51
51
  #
52
52
  # This property cannot be modified for the life of the load balacner.
53
53
  #
54
- # NOTE: If the front-end protocol is HTTP or HTTPS, +:instance_protocol+
54
+ # NOTE: If the front-end protocol is HTTP or HTTPS, `:instance_protocol`
55
55
  # has to be at the same protocol layer, i.e., HTTP or HTTPS. Likewise,
56
- # if the front-end protocol is TCP or SSL, +:instance_protocol+ has
56
+ # if the front-end protocol is TCP or SSL, `:instance_protocol` has
57
57
  # to be TCP or SSL.
58
58
  #
59
- # NOTE: If there is another listener with the same +:instance_port+
60
- # whose +:instance_protocol+ is secure, i.e., HTTPS or SSL, the
61
- # listener's +:instance_protocol+ has to be secure, i.e., HTTPS
62
- # or SSL. If there is another listener with the same +:instance_port+
63
- # whose +:instance_protocol+ is HTTP or TCP, the listener's
64
- # +:instance_protocol+ must be either HTTP or TCP.
59
+ # NOTE: If there is another listener with the same `:instance_port`
60
+ # whose `:instance_protocol` is secure, i.e., HTTPS or SSL, the
61
+ # listener's `:instance_protocol` has to be secure, i.e., HTTPS
62
+ # or SSL. If there is another listener with the same `:instance_port`
63
+ # whose `:instance_protocol` is HTTP or TCP, the listener's
64
+ # `:instance_protocol` must be either HTTP or TCP.
65
65
  #
66
66
  # * :tcp, 'TCP'
67
67
  # * :http, 'HTTP'
@@ -21,24 +21,24 @@ module AWS
21
21
  #
22
22
  # @attr_reader [String] canonical_hosted_zone_name Provides the name of
23
23
  # the Amazon Route 53 hosted zone that is associated with the load
24
- # balancer. For more information: {http://docs.amazonwebservices.com/ElasticLoadBalancing/latest/DeveloperGuide/index.html?using-domain-names-with-elb.html}.
24
+ # balancer. For more information: [using-domain-names-with-elb.html](http://docs.amazonwebservices.com/ElasticLoadBalancing/latest/DeveloperGuide/index.html?using-domain-names-with-elb.html).
25
25
  #
26
26
  # @attr_reader [String] canonical_hosted_zone_name_id Provides the ID of
27
27
  # the Amazon Route 53 hosted zone name that is associated with the
28
- # load balancer. For more information: {http://docs.amazonwebservices.com/ElasticLoadBalancing/latest/DeveloperGuide/index.html?using-domain-names-with-elb.html}.
28
+ # load balancer. For more information: [using-domain-names-with-elb.html](http://docs.amazonwebservices.com/ElasticLoadBalancing/latest/DeveloperGuide/index.html?using-domain-names-with-elb.html).
29
29
  #
30
30
  # @attr_reader [String] dns_name Specifies the external DNS name
31
31
  # associated with this load balancer.
32
32
  #
33
33
  # @attr_reader [Hash] policy_descriptions Returns a hash of
34
- # +:app_cookie_stickiness_policies+, +:lb_cookie_stickiness_policies+
35
- # and +:other_policies+. See also {#policies}.
34
+ # `:app_cookie_stickiness_policies`, `:lb_cookie_stickiness_policies`
35
+ # and `:other_policies`. See also {#policies}.
36
36
  #
37
37
  # @attr_reader [String,nil] scheme Specifies the type of LoadBalancer.
38
38
  # This attribute it set only for LoadBalancers attached to an Amazon VPC.
39
39
  # If the Scheme is 'internet-facing', the LoadBalancer has a publicly
40
40
  # resolvable DNS name that resolves to public IP addresses.
41
- # If the Scheme is 'internal', the LoadBalancer has a publicly
41
+ # If the Scheme is 'internal', the LoadBalancer has a publicly
42
42
  # resolvable DNS name that resolves to private IP addresses.
43
43
  #
44
44
  # @attr_reader [Array<String>] subnet_ids Provides a list of VPC subnet IDs
@@ -47,11 +47,11 @@ module AWS
47
47
  # @attr_reader [Hash] health_check
48
48
  # Returns a hash of the various health probes conducted on the
49
49
  # load balancer instances. The following entries are returned:
50
- # * +:healthy_threshold+
51
- # * +:unhealthy_threshold+
52
- # * +:interval+
53
- # * +:target+
54
- # * +:timeout+
50
+ # * `:healthy_threshold`
51
+ # * `:unhealthy_threshold`
52
+ # * `:interval`
53
+ # * `:target`
54
+ # * `:timeout`
55
55
  # See {#configure_health_check} for more details on what each of the
56
56
  # configuration values mean.
57
57
  #
@@ -115,11 +115,11 @@ module AWS
115
115
  #
116
116
  # @example enable an availability zone
117
117
  #
118
- # load_balancer.availability_zones.enable('us-east-1b')
118
+ # load_balancer.availability_zones.enable('us-west-2b')
119
119
  #
120
120
  # @example disable an availability zone
121
121
  #
122
- # load_balancer.availability_zones.disable('us-east-1b')
122
+ # load_balancer.availability_zones.disable('us-west-2b')
123
123
  #
124
124
  # @example list enabled availability zoens
125
125
  #
@@ -176,7 +176,7 @@ module AWS
176
176
  #
177
177
  # @option options [Integer] :timeout Specifies the amount of time, in
178
178
  # seconds, during which no response means a failed health probe.
179
- # This value must be less than the +:interval+ value.
179
+ # This value must be less than the `:interval` value.
180
180
  #
181
181
  # @option options [String] :target Specifies the instance being checked.
182
182
  #
@@ -234,9 +234,8 @@ module AWS
234
234
  # just pass the load balancer as a source to the various
235
235
  # authorize and revoke methods of {EC2::SecurityGroup}:
236
236
  #
237
- # security_group.authorize_ingress(load_balancer)
238
- #
239
- # security_group.revoke_ingress(load_balancer)
237
+ # security_group.authorize_ingress(load_balancer)
238
+ # security_group.revoke_ingress(load_balancer)
240
239
  #
241
240
  # @return [Hash] Returns a hash that can be passed to the following
242
241
  # {EC2::SecurityGroup} methods as a source:
@@ -28,14 +28,14 @@ module AWS
28
28
  # An example that creates a load balancer in two availability zones
29
29
  # with a single listener:
30
30
  #
31
- # load_balancer = elb.load_balancers.create('my-load-balancer',
32
- # :availability_zones => %w(us-east-1a us-east-1b),
33
- # :listeners => [{
34
- # :port => 80,
35
- # :protocol => :http,
36
- # :instance_port => 80,
37
- # :instance_protocol => :http,
38
- # }])
31
+ # load_balancer = elb.load_balancers.create('my-load-balancer',
32
+ # :availability_zones => %w(us-west-2a us-west-2b),
33
+ # :listeners => [{
34
+ # :port => 80,
35
+ # :protocol => :http,
36
+ # :instance_port => 80,
37
+ # :instance_protocol => :http,
38
+ # }])
39
39
  #
40
40
  # @param [String] name The name of your load balancer. The name must
41
41
  # be unique within your set of load balancers.
@@ -46,21 +46,33 @@ module AWS
46
46
  # one or more availability zones. Values may be availability zone
47
47
  # name strings, or {AWS::EC2::AvailabilityZone} objects.
48
48
  #
49
- # @option options [required,Array<Hash>] :listeners An array of load
50
- # balancer listener options. Each value must be an array with the
51
- # following keys:
52
- # * +:port+
53
- # * +:protocol+
54
- # * +:instance_port+
55
- # * +:instance_protocol+
56
- #
57
- # Port values should be integers, and protocols should be symbols or
58
- # strings (e.g. :http, or 'HTTP'). See {ListenerCollection#create}
59
- # for more detailed description of each option.
60
- #
61
- # @option options [String,IAM::ServerCertificate] :server_certificate (nil)
62
- # The ARN string of an IAM::ServerCertifcate or an
63
- # IAM::ServerCertificate object. Reqruied for HTTPs listeners.
49
+ # @option options [required,Array<Hash>] :listeners An array of load
50
+ # balancer listener options:
51
+ # * `:protocol` - *required* - (String) Specifies the LoadBalancer
52
+ # transport protocol to use for routing - HTTP, HTTPS, TCP or SSL.
53
+ # This property cannot be modified for the life of the
54
+ # LoadBalancer.
55
+ # * `:load_balancer_port` - *required* - (Integer) Specifies the
56
+ # external LoadBalancer port number. This property cannot be
57
+ # modified for the life of the LoadBalancer.
58
+ # * `:instance_protocol` - (String) Specifies the protocol to use for
59
+ # routing traffic to back-end instances - HTTP, HTTPS, TCP, or SSL.
60
+ # This property cannot be modified for the life of the
61
+ # LoadBalancer. If the front-end protocol is HTTP or HTTPS,
62
+ # InstanceProtocol has to be at the same protocol layer, i.e., HTTP
63
+ # or HTTPS. Likewise, if the front-end protocol is TCP or SSL,
64
+ # InstanceProtocol has to be TCP or SSL. If there is another
65
+ # listener with the same InstancePort whose InstanceProtocol is
66
+ # secure, i.e., HTTPS or SSL, the listener's InstanceProtocol has
67
+ # to be secure, i.e., HTTPS or SSL. If there is another listener
68
+ # with the same InstancePort whose InstanceProtocol is HTTP or TCP,
69
+ # the listener's InstanceProtocol must be either HTTP or TCP.
70
+ # * `:instance_port` - *required* - (Integer) Specifies the TCP port
71
+ # on which the instance server is listening. This property cannot
72
+ # be modified for the life of the LoadBalancer.
73
+ # * `:ssl_certificate_id` - (String) The ARN string of the server
74
+ # certificate. To get the ARN of the server certificate, call the
75
+ # AWS Identity and Access Management UploadServerCertificate API.
64
76
  #
65
77
  # @option options [Array] :subnets An list of VPC subets to attach the
66
78
  # load balancer to. This can be an array of subnet ids (strings) or
@@ -70,7 +82,7 @@ module AWS
70
82
  # your load balancer within your VPC. This can be an array of
71
83
  # security group ids or {EC2::SecurityGroup} objects. VPC only.
72
84
  #
73
- # @option options [String] :scheme ('internal' The type of a load
85
+ # @option options [String] :scheme ('internal' The type of a load
74
86
  # balancer. Accepts 'internet-facing' or 'internal'. VPC only.
75
87
  #
76
88
  def create name, options = {}
@@ -66,7 +66,7 @@ module AWS
66
66
 
67
67
  # Useful for determining if a policy with the given name exists:
68
68
  #
69
- # load_balancer.policies['my-policy-name'].exists? # => true/false
69
+ # load_balancer.policies['my-policy-name'].exists? # => true/false
70
70
  #
71
71
  # @return [Boolean] Returns true this policy's load balancer has a
72
72
  # policy with this name.
@@ -31,17 +31,17 @@ module AWS
31
31
  # the front-end listener, or the back-end application server,
32
32
  # depending on your policy type.
33
33
  #
34
- # == Applying Policies
34
+ # ## Applying Policies
35
35
  #
36
36
  # To apply a policy to a front-end listener:
37
37
  #
38
- # # each listener may only have a single policy
39
- # load_balancer.listener[80].policy = listener_policy
38
+ # # each listener may only have a single policy
39
+ # load_balancer.listener[80].policy = listener_policy
40
40
  #
41
41
  # To apply a policy to backend instance port
42
42
  #
43
- # # back end servers can have multiple policies per instance port
44
- # load_balancer.backend_server_policies.add(80, back_end_policy)
43
+ # # back end servers can have multiple policies per instance port
44
+ # load_balancer.backend_server_policies.add(80, back_end_policy)
45
45
  #
46
46
  # @param [String] name The name of the policy being created. The name
47
47
  # must be unique within the set of policies for this load balancer.
@@ -21,40 +21,42 @@ module AWS
21
21
  # MapReduce.
22
22
  #
23
23
  # To use Amazon Elastic MapReduce you must first
24
- # {sign up here}[http://aws.amazon.com/elasticmapreduce/]
24
+ # [sign up here](http://aws.amazon.com/elasticmapreduce/)
25
25
  #
26
26
  # For more information about Amazon Elastic MapReduce, see:
27
27
  #
28
- # * {Amazon Elastic MapReduce}[http://aws.amazon.com/elasticmapreduce/]
29
- # * {Amazon Elastic MapReduce Documentation}[http://aws.amazon.com/documentation/elasticmapreduce/]
28
+ # * [Amazon Elastic MapReduce](http://aws.amazon.com/elasticmapreduce/)
29
+ # * [Amazon Elastic MapReduce Documentation](http://aws.amazon.com/documentation/elasticmapreduce/)
30
30
  #
31
- # == Credentials
31
+ # ## Credentials
32
32
  #
33
33
  # You can setup default credentials for all AWS services via
34
34
  # AWS.config:
35
35
  #
36
- # AWS.config(
37
- # :access_key_id => 'YOUR_ACCESS_KEY_ID',
38
- # :secret_access_key => 'YOUR_SECRET_ACCESS_KEY')
36
+ # AWS.config(
37
+ # :access_key_id => 'YOUR_ACCESS_KEY_ID',
38
+ # :secret_access_key => 'YOUR_SECRET_ACCESS_KEY')
39
39
  #
40
40
  # Or you can set them directly on the EMR interface:
41
41
  #
42
- # emr = AWS::EMR.new(
43
- # :access_key_id => 'YOUR_ACCESS_KEY_ID',
44
- # :secret_access_key => 'YOUR_SECRET_ACCESS_KEY')
42
+ # emr = AWS::EMR.new(
43
+ # :access_key_id => 'YOUR_ACCESS_KEY_ID',
44
+ # :secret_access_key => 'YOUR_SECRET_ACCESS_KEY')
45
45
  #
46
- # = Job Flows
46
+ # # Job Flows
47
47
  #
48
48
  # The {#job_flows} method returns a collection you use to interact
49
49
  # with your job flows.
50
50
  #
51
- # # creating a job flow
52
- # job_flow = emr.job_flows.create(...)
51
+ # emr = AWS::EMR.new
53
52
  #
54
- # # enumerating job flows
55
- # emr.job_flows.each do |job_flow|
56
- # puts job_flow.id
57
- # end
53
+ # # creating a job flow
54
+ # job_flow = emr.job_flows.create(...)
55
+ #
56
+ # # enumerating job flows
57
+ # emr.job_flows.each do |job_flow|
58
+ # puts job_flow.id
59
+ # end
58
60
  #
59
61
  # See {JobFlowCollection} and {JobFlow} for more information on working
60
62
  # with job flows.
@@ -63,18 +65,18 @@ module AWS
63
65
  # @return [Client] the low-level EMR client object
64
66
  class EMR
65
67
 
66
- AWS.register_autoloads(self) do
67
- autoload :Client, 'client'
68
- autoload :Errors, 'errors'
69
- autoload :InstanceGroup, 'instance_group'
70
- autoload :InstanceGroupCollection, 'instance_group_collection'
71
- autoload :JobFlow, 'job_flow'
72
- autoload :JobFlowCollection, 'job_flow_collection'
73
- autoload :Request, 'request'
74
- end
68
+ autoload :Client, 'aws/emr/client'
69
+ autoload :Errors, 'aws/emr/errors'
70
+ autoload :InstanceGroup, 'aws/emr/instance_group'
71
+ autoload :InstanceGroupCollection, 'aws/emr/instance_group_collection'
72
+ autoload :JobFlow, 'aws/emr/job_flow'
73
+ autoload :JobFlowCollection, 'aws/emr/job_flow_collection'
74
+ autoload :Request, 'aws/emr/request'
75
75
 
76
76
  include Core::ServiceInterface
77
77
 
78
+ endpoint_prefix 'elasticmapreduce'
79
+
78
80
  # @return [JobFlowCollection] Returns a collection that represents all
79
81
  # job flows.
80
82
  def job_flows
@@ -25,157 +25,165 @@ module AWS
25
25
  # @!method add_instance_groups(options = {})
26
26
  # Calls the AddInstanceGroups API operation.
27
27
  # @param [Hash] options
28
- # * +:instance_groups+ - *required* - (Array<Hash>) Instance Groups to
28
+ # * `:instance_groups` - *required* - (Array<Hash>) Instance Groups to
29
29
  # add.
30
- # * +:name+ - (String) Friendly name given to the instance group.
31
- # * +:market+ - (String) Market type of the Amazon EC2 instances used
32
- # to create a cluster node.
33
- # * +:instance_role+ - *required* - (String) The role of the instance
34
- # group in the cluster.
35
- # * +:bid_price+ - (String) Bid price for each Amazon EC2 instance in
30
+ # * `:name` - (String) Friendly name given to the instance group.
31
+ # * `:market` - (String) Market type of the Amazon EC2 instances used
32
+ # to create a cluster node. Valid values include:
33
+ # * `ON_DEMAND`
34
+ # * `SPOT`
35
+ # * `:instance_role` - *required* - (String) The role of the instance
36
+ # group in the cluster. Valid values include:
37
+ # * `MASTER`
38
+ # * `CORE`
39
+ # * `TASK`
40
+ # * `:bid_price` - (String) Bid price for each Amazon EC2 instance in
36
41
  # the instance group when launching nodes as Spot Instances,
37
42
  # expressed in USD.
38
- # * +:instance_type+ - *required* - (String) The Amazon EC2 instance
43
+ # * `:instance_type` - *required* - (String) The Amazon EC2 instance
39
44
  # type for all instances in the instance group.
40
- # * +:instance_count+ - *required* - (Integer) Target number of
45
+ # * `:instance_count` - *required* - (Integer) Target number of
41
46
  # instances for the instance group.
42
- # * +:job_flow_id+ - *required* - (String) Job flow in which to add the
47
+ # * `:job_flow_id` - *required* - (String) Job flow in which to add the
43
48
  # instance groups.
44
49
  # @return [Core::Response]
45
50
  # The #data method of the response object returns
46
51
  # a hash with the following structure:
47
- # * +:job_flow_id+ - (String)
48
- # * +:instance_group_ids+ - (Array<String>)
52
+ # * `:job_flow_id` - (String)
53
+ # * `:instance_group_ids` - (Array<String>)
49
54
 
50
55
  # @!method add_job_flow_steps(options = {})
51
56
  # Calls the AddJobFlowSteps API operation.
52
57
  # @param [Hash] options
53
- # * +:job_flow_id+ - *required* - (String) A string that uniquely
58
+ # * `:job_flow_id` - *required* - (String) A string that uniquely
54
59
  # identifies the job flow. This identifier is returned by RunJobFlow
55
60
  # and can also be obtained from DescribeJobFlows.
56
- # * +:steps+ - *required* - (Array<Hash>) A list of StepConfig to be
61
+ # * `:steps` - *required* - (Array<Hash>) A list of StepConfig to be
57
62
  # executed by the job flow.
58
- # * +:name+ - *required* - (String) The name of the job flow step.
59
- # * +:action_on_failure+ - (String) Specifies the action to take if
60
- # the job flow step fails.
61
- # * +:hadoop_jar_step+ - *required* - (Hash) Specifies the JAR file
63
+ # * `:name` - *required* - (String) The name of the job flow step.
64
+ # * `:action_on_failure` - (String) Specifies the action to take if
65
+ # the job flow step fails. Valid values include:
66
+ # * `TERMINATE_JOB_FLOW`
67
+ # * `CANCEL_AND_WAIT`
68
+ # * `CONTINUE`
69
+ # * `:hadoop_jar_step` - *required* - (Hash) Specifies the JAR file
62
70
  # used for the job flow step.
63
- # * +:properties+ - (Array<Hash>) A list of Java properties that
71
+ # * `:properties` - (Array<Hash>) A list of Java properties that
64
72
  # are set when the step runs. You can use these properties to
65
73
  # pass key value pairs to your main function.
66
- # * +:key+ - (String) The unique identifier of a key value pair.
67
- # * +:value+ - (String) The value part of the identified key.
68
- # * +:jar+ - *required* - (String) A path to a JAR file run during
74
+ # * `:key` - (String) The unique identifier of a key value pair.
75
+ # * `:value` - (String) The value part of the identified key.
76
+ # * `:jar` - *required* - (String) A path to a JAR file run during
69
77
  # the step.
70
- # * +:main_class+ - (String) The name of the main class in the
78
+ # * `:main_class` - (String) The name of the main class in the
71
79
  # specified Java file. If not specified, the JAR file should
72
80
  # specify a Main-Class in its manifest file.
73
- # * +:args+ - (Array<String>) A list of command line arguments
81
+ # * `:args` - (Array<String>) A list of command line arguments
74
82
  # passed to the JAR file's main function when executed.
75
83
  # @return [Core::Response]
76
84
 
77
85
  # @!method describe_job_flows(options = {})
78
86
  # Calls the DescribeJobFlows API operation.
79
87
  # @param [Hash] options
80
- # * +:created_after+ - (String<ISO8601 datetime>) Return only job flows
88
+ # * `:created_after` - (String<ISO8601 datetime>) Return only job flows
81
89
  # created after this date and time.
82
- # * +:created_before+ - (String<ISO8601 datetime>) Return only job
90
+ # * `:created_before` - (String<ISO8601 datetime>) Return only job
83
91
  # flows created before this date and time.
84
- # * +:job_flow_ids+ - (Array<String>) Return only job flows whose job
92
+ # * `:job_flow_ids` - (Array<String>) Return only job flows whose job
85
93
  # flow ID is contained in this list.
86
- # * +:job_flow_states+ - (Array<String>) Return only job flows whose
94
+ # * `:job_flow_states` - (Array<String>) Return only job flows whose
87
95
  # state is contained in this list.
88
96
  # @return [Core::Response]
89
97
  # The #data method of the response object returns
90
98
  # a hash with the following structure:
91
- # * +:job_flows+ - (Array<Hash>)
92
- # * +:job_flow_id+ - (String)
93
- # * +:name+ - (String)
94
- # * +:log_uri+ - (String)
95
- # * +:ami_version+ - (String)
96
- # * +:execution_status_detail+ - (Hash)
97
- # * +:state+ - (String)
98
- # * +:creation_date_time+ - (Time)
99
- # * +:start_date_time+ - (Time)
100
- # * +:ready_date_time+ - (Time)
101
- # * +:end_date_time+ - (Time)
102
- # * +:last_state_change_reason+ - (String)
103
- # * +:instances+ - (Hash)
104
- # * +:master_instance_type+ - (String)
105
- # * +:master_public_dns_name+ - (String)
106
- # * +:master_instance_id+ - (String)
107
- # * +:slave_instance_type+ - (String)
108
- # * +:instance_count+ - (Integer)
109
- # * +:instance_groups+ - (Array<Hash>)
110
- # * +:instance_group_id+ - (String)
111
- # * +:name+ - (String)
112
- # * +:market+ - (String)
113
- # * +:instance_role+ - (String)
114
- # * +:bid_price+ - (String)
115
- # * +:instance_type+ - (String)
116
- # * +:instance_request_count+ - (Integer)
117
- # * +:instance_running_count+ - (Integer)
118
- # * +:state+ - (String)
119
- # * +:last_state_change_reason+ - (String)
120
- # * +:creation_date_time+ - (Time)
121
- # * +:start_date_time+ - (Time)
122
- # * +:ready_date_time+ - (Time)
123
- # * +:end_date_time+ - (Time)
124
- # * +:normalized_instance_hours+ - (Integer)
125
- # * +:ec2_key_name+ - (String)
126
- # * +:ec2_subnet_id+ - (String)
127
- # * +:placement+ - (Hash)
128
- # * +:availability_zone+ - (String)
129
- # * +:keep_job_flow_alive_when_no_steps+ - (Boolean)
130
- # * +:termination_protected+ - (Boolean)
131
- # * +:hadoop_version+ - (String)
132
- # * +:steps+ - (Array<Hash>)
133
- # * +:step_config+ - (Hash)
134
- # * +:name+ - (String)
135
- # * +:action_on_failure+ - (String)
136
- # * +:hadoop_jar_step+ - (Hash)
137
- # * +:properties+ - (Array<Hash>)
138
- # * +:key+ - (String)
139
- # * +:value+ - (String)
140
- # * +:jar+ - (String)
141
- # * +:main_class+ - (String)
142
- # * +:args+ - (Array<String>)
143
- # * +:execution_status_detail+ - (Hash)
144
- # * +:state+ - (String)
145
- # * +:creation_date_time+ - (Time)
146
- # * +:start_date_time+ - (Time)
147
- # * +:end_date_time+ - (Time)
148
- # * +:last_state_change_reason+ - (String)
149
- # * +:bootstrap_actions+ - (Array<Hash>)
150
- # * +:bootstrap_action_config+ - (Hash)
151
- # * +:name+ - (String)
152
- # * +:script_bootstrap_action+ - (Hash)
153
- # * +:path+ - (String)
154
- # * +:args+ - (Array<String>)
155
- # * +:supported_products+ - (Array<String>)
156
- # * +:visible_to_all_users+ - (Boolean)
157
- # * +:job_flow_role+ - (String)
99
+ # * `:job_flows` - (Array<Hash>)
100
+ # * `:job_flow_id` - (String)
101
+ # * `:name` - (String)
102
+ # * `:log_uri` - (String)
103
+ # * `:ami_version` - (String)
104
+ # * `:execution_status_detail` - (Hash)
105
+ # * `:state` - (String)
106
+ # * `:creation_date_time` - (Time)
107
+ # * `:start_date_time` - (Time)
108
+ # * `:ready_date_time` - (Time)
109
+ # * `:end_date_time` - (Time)
110
+ # * `:last_state_change_reason` - (String)
111
+ # * `:instances` - (Hash)
112
+ # * `:master_instance_type` - (String)
113
+ # * `:master_public_dns_name` - (String)
114
+ # * `:master_instance_id` - (String)
115
+ # * `:slave_instance_type` - (String)
116
+ # * `:instance_count` - (Integer)
117
+ # * `:instance_groups` - (Array<Hash>)
118
+ # * `:instance_group_id` - (String)
119
+ # * `:name` - (String)
120
+ # * `:market` - (String)
121
+ # * `:instance_role` - (String)
122
+ # * `:bid_price` - (String)
123
+ # * `:instance_type` - (String)
124
+ # * `:instance_request_count` - (Integer)
125
+ # * `:instance_running_count` - (Integer)
126
+ # * `:state` - (String)
127
+ # * `:last_state_change_reason` - (String)
128
+ # * `:creation_date_time` - (Time)
129
+ # * `:start_date_time` - (Time)
130
+ # * `:ready_date_time` - (Time)
131
+ # * `:end_date_time` - (Time)
132
+ # * `:normalized_instance_hours` - (Integer)
133
+ # * `:ec2_key_name` - (String)
134
+ # * `:ec2_subnet_id` - (String)
135
+ # * `:placement` - (Hash)
136
+ # * `:availability_zone` - (String)
137
+ # * `:keep_job_flow_alive_when_no_steps` - (Boolean)
138
+ # * `:termination_protected` - (Boolean)
139
+ # * `:hadoop_version` - (String)
140
+ # * `:steps` - (Array<Hash>)
141
+ # * `:step_config` - (Hash)
142
+ # * `:name` - (String)
143
+ # * `:action_on_failure` - (String)
144
+ # * `:hadoop_jar_step` - (Hash)
145
+ # * `:properties` - (Array<Hash>)
146
+ # * `:key` - (String)
147
+ # * `:value` - (String)
148
+ # * `:jar` - (String)
149
+ # * `:main_class` - (String)
150
+ # * `:args` - (Array<String>)
151
+ # * `:execution_status_detail` - (Hash)
152
+ # * `:state` - (String)
153
+ # * `:creation_date_time` - (Time)
154
+ # * `:start_date_time` - (Time)
155
+ # * `:end_date_time` - (Time)
156
+ # * `:last_state_change_reason` - (String)
157
+ # * `:bootstrap_actions` - (Array<Hash>)
158
+ # * `:bootstrap_action_config` - (Hash)
159
+ # * `:name` - (String)
160
+ # * `:script_bootstrap_action` - (Hash)
161
+ # * `:path` - (String)
162
+ # * `:args` - (Array<String>)
163
+ # * `:supported_products` - (Array<String>)
164
+ # * `:visible_to_all_users` - (Boolean)
165
+ # * `:job_flow_role` - (String)
158
166
 
159
167
  # @!method modify_instance_groups(options = {})
160
168
  # Calls the ModifyInstanceGroups API operation.
161
169
  # @param [Hash] options
162
- # * +:instance_groups+ - (Array<Hash>) Instance groups to change.
163
- # * +:instance_group_id+ - *required* - (String) Unique ID of the
170
+ # * `:instance_groups` - (Array<Hash>) Instance groups to change.
171
+ # * `:instance_group_id` - *required* - (String) Unique ID of the
164
172
  # instance group to expand or shrink.
165
- # * +:instance_count+ - *required* - (Integer) Target size for the
173
+ # * `:instance_count` - *required* - (Integer) Target size for the
166
174
  # instance group.
167
175
  # @return [Core::Response]
168
176
 
169
177
  # @!method run_job_flow(options = {})
170
178
  # Calls the RunJobFlow API operation.
171
179
  # @param [Hash] options
172
- # * +:name+ - *required* - (String) The name of the job flow.
173
- # * +:log_uri+ - (String) Specifies the location in Amazon S3 to write
180
+ # * `:name` - *required* - (String) The name of the job flow.
181
+ # * `:log_uri` - (String) Specifies the location in Amazon S3 to write
174
182
  # the log files of the job flow. If a value is not provided, logs are
175
183
  # not created.
176
- # * +:additional_info+ - (String) A JSON string for selecting
184
+ # * `:additional_info` - (String) A JSON string for selecting
177
185
  # additional features.
178
- # * +:ami_version+ - (String) The version of the Amazon Machine Image
186
+ # * `:ami_version` - (String) The version of the Amazon Machine Image
179
187
  # (AMI) to use when launching Amazon EC2 instances in the job flow.
180
188
  # The following values are valid: "latest" (uses the latest AMI) The
181
189
  # version number of the AMI to use, for example, "2.0" If this value
@@ -187,47 +195,52 @@ module AWS
187
195
  # the AMI versions currently supported by Amazon ElasticMapReduce, go
188
196
  # to AMI Versions Supported in Elastic MapReduce in the Amazon
189
197
  # Elastic MapReduce Developer's Guide.
190
- # * +:instances+ - *required* - (Hash) A specification of the number
198
+ # * `:instances` - *required* - (Hash) A specification of the number
191
199
  # and type of Amazon EC2 instances on which to run the job flow.
192
- # * +:master_instance_type+ - (String) The EC2 instance type of the
200
+ # * `:master_instance_type` - (String) The EC2 instance type of the
193
201
  # master node.
194
- # * +:slave_instance_type+ - (String) The EC2 instance type of the
202
+ # * `:slave_instance_type` - (String) The EC2 instance type of the
195
203
  # slave nodes.
196
- # * +:instance_count+ - (Integer) The number of Amazon EC2 instances
204
+ # * `:instance_count` - (Integer) The number of Amazon EC2 instances
197
205
  # used to execute the job flow.
198
- # * +:instance_groups+ - (Array<Hash>) Configuration for the job
206
+ # * `:instance_groups` - (Array<Hash>) Configuration for the job
199
207
  # flow's instance groups.
200
- # * +:name+ - (String) Friendly name given to the instance group.
201
- # * +:market+ - (String) Market type of the Amazon EC2 instances
202
- # used to create a cluster node.
203
- # * +:instance_role+ - *required* - (String) The role of the
204
- # instance group in the cluster.
205
- # * +:bid_price+ - (String) Bid price for each Amazon EC2 instance
208
+ # * `:name` - (String) Friendly name given to the instance group.
209
+ # * `:market` - (String) Market type of the Amazon EC2 instances
210
+ # used to create a cluster node. Valid values include:
211
+ # * `ON_DEMAND`
212
+ # * `SPOT`
213
+ # * `:instance_role` - *required* - (String) The role of the
214
+ # instance group in the cluster. Valid values include:
215
+ # * `MASTER`
216
+ # * `CORE`
217
+ # * `TASK`
218
+ # * `:bid_price` - (String) Bid price for each Amazon EC2 instance
206
219
  # in the instance group when launching nodes as Spot Instances,
207
220
  # expressed in USD.
208
- # * +:instance_type+ - *required* - (String) The Amazon EC2
221
+ # * `:instance_type` - *required* - (String) The Amazon EC2
209
222
  # instance type for all instances in the instance group.
210
- # * +:instance_count+ - *required* - (Integer) Target number of
223
+ # * `:instance_count` - *required* - (Integer) Target number of
211
224
  # instances for the instance group.
212
- # * +:ec2_key_name+ - (String) Specifies the name of the Amazon EC2
225
+ # * `:ec2_key_name` - (String) Specifies the name of the Amazon EC2
213
226
  # key pair that can be used to ssh to the master node as the user
214
227
  # called "hadoop."
215
- # * +:placement+ - (Hash) Specifies the Availability Zone the job
228
+ # * `:placement` - (Hash) Specifies the Availability Zone the job
216
229
  # flow will run in.
217
- # * +:availability_zone+ - *required* - (String) The Amazon EC2
230
+ # * `:availability_zone` - *required* - (String) The Amazon EC2
218
231
  # Availability Zone for the job flow.
219
- # * +:keep_job_flow_alive_when_no_steps+ - (Boolean) Specifies
232
+ # * `:keep_job_flow_alive_when_no_steps` - (Boolean) Specifies
220
233
  # whether the job flow should terminate after completing all steps.
221
- # * +:termination_protected+ - (Boolean) Specifies whether to lock
234
+ # * `:termination_protected` - (Boolean) Specifies whether to lock
222
235
  # the job flow to prevent the Amazon EC2 instances from being
223
236
  # terminated by API call, user intervention, or in the event of a
224
237
  # job flow error.
225
- # * +:hadoop_version+ - (String) Specifies the Hadoop version for the
238
+ # * `:hadoop_version` - (String) Specifies the Hadoop version for the
226
239
  # job flow. Valid inputs are "0.18", "0.20", or "0.20.205". If you
227
240
  # do not set this value, the default of 0.18 is used, unless the
228
241
  # AmiVersion parameter is set in the RunJobFlow call, in which case
229
242
  # the default version of Hadoop for that AMI version is used.
230
- # * +:ec2_subnet_id+ - (String) To launch the job flow in Amazon
243
+ # * `:ec2_subnet_id` - (String) To launch the job flow in Amazon
231
244
  # Virtual Private Cloud (Amazon VPC), set this parameter to the
232
245
  # identifier of the Amazon VPC subnet where you want the job flow
233
246
  # to launch. If you do not specify this value, the job flow is
@@ -236,65 +249,68 @@ module AWS
236
249
  # quadruple extra large (cc1.4xlarge) instances. Thus you cannot
237
250
  # specify the cc1.4xlarge instance type for nodes of a job flow
238
251
  # launched in a Amazon VPC.
239
- # * +:steps+ - (Array<Hash>) A list of steps to be executed by the job
252
+ # * `:steps` - (Array<Hash>) A list of steps to be executed by the job
240
253
  # flow.
241
- # * +:name+ - *required* - (String) The name of the job flow step.
242
- # * +:action_on_failure+ - (String) Specifies the action to take if
243
- # the job flow step fails.
244
- # * +:hadoop_jar_step+ - *required* - (Hash) Specifies the JAR file
254
+ # * `:name` - *required* - (String) The name of the job flow step.
255
+ # * `:action_on_failure` - (String) Specifies the action to take if
256
+ # the job flow step fails. Valid values include:
257
+ # * `TERMINATE_JOB_FLOW`
258
+ # * `CANCEL_AND_WAIT`
259
+ # * `CONTINUE`
260
+ # * `:hadoop_jar_step` - *required* - (Hash) Specifies the JAR file
245
261
  # used for the job flow step.
246
- # * +:properties+ - (Array<Hash>) A list of Java properties that
262
+ # * `:properties` - (Array<Hash>) A list of Java properties that
247
263
  # are set when the step runs. You can use these properties to
248
264
  # pass key value pairs to your main function.
249
- # * +:key+ - (String) The unique identifier of a key value pair.
250
- # * +:value+ - (String) The value part of the identified key.
251
- # * +:jar+ - *required* - (String) A path to a JAR file run during
265
+ # * `:key` - (String) The unique identifier of a key value pair.
266
+ # * `:value` - (String) The value part of the identified key.
267
+ # * `:jar` - *required* - (String) A path to a JAR file run during
252
268
  # the step.
253
- # * +:main_class+ - (String) The name of the main class in the
269
+ # * `:main_class` - (String) The name of the main class in the
254
270
  # specified Java file. If not specified, the JAR file should
255
271
  # specify a Main-Class in its manifest file.
256
- # * +:args+ - (Array<String>) A list of command line arguments
272
+ # * `:args` - (Array<String>) A list of command line arguments
257
273
  # passed to the JAR file's main function when executed.
258
- # * +:bootstrap_actions+ - (Array<Hash>) A list of bootstrap actions
274
+ # * `:bootstrap_actions` - (Array<Hash>) A list of bootstrap actions
259
275
  # that will be run before Hadoop is started on the cluster nodes.
260
- # * +:name+ - *required* - (String) The name of the bootstrap action.
261
- # * +:script_bootstrap_action+ - *required* - (Hash) The script run
276
+ # * `:name` - *required* - (String) The name of the bootstrap action.
277
+ # * `:script_bootstrap_action` - *required* - (Hash) The script run
262
278
  # by the bootstrap action.
263
- # * +:path+ - *required* - (String) Location of the script to run
279
+ # * `:path` - *required* - (String) Location of the script to run
264
280
  # during a bootstrap action. Can be either a location in Amazon
265
281
  # S3 or on a local file system.
266
- # * +:args+ - (Array<String>) A list of command line arguments to
282
+ # * `:args` - (Array<String>) A list of command line arguments to
267
283
  # pass to the bootstrap action script.
268
- # * +:supported_products+ - (Array<String>) A list of strings that
284
+ # * `:supported_products` - (Array<String>) A list of strings that
269
285
  # indicates third-party software to use with the job flow. For more
270
286
  # information, go to Use Third Party Applications with Amazon EMR.
271
287
  # Currently supported values are: "karmasphere-enterprise-utility" -
272
288
  # tag the job flow for management by Karmasphere. "mapr-m3" - launch
273
289
  # the job flow using MapR M3 Edition. "mapr-m5" - launch the job flow
274
290
  # using MapR M5 Edition.
275
- # * +:visible_to_all_users+ - (Boolean) Whether the job flow is visible
291
+ # * `:visible_to_all_users` - (Boolean) Whether the job flow is visible
276
292
  # to all IAM users of the AWS account associated with the job flow.
277
- # If this value is set to +true+ , all IAM users of that AWS account
293
+ # If this value is set to `true` , all IAM users of that AWS account
278
294
  # can view and (if they have the proper policy permissions set)
279
- # manage the job flow. If it is set to +false+ , only the IAM user
295
+ # manage the job flow. If it is set to `false` , only the IAM user
280
296
  # that created the job flow can view and manage it.
281
- # * +:job_flow_role+ - (String) An IAM role for the job flow. The EC2
297
+ # * `:job_flow_role` - (String) An IAM role for the job flow. The EC2
282
298
  # instances of the job flow assume this role. The default role is
283
299
  # EMRJobflowDefault. In order to use the default role, you must have
284
300
  # already created it using the CLI.
285
301
  # @return [Core::Response]
286
302
  # The #data method of the response object returns
287
303
  # a hash with the following structure:
288
- # * +:job_flow_id+ - (String)
304
+ # * `:job_flow_id` - (String)
289
305
 
290
306
  # @!method set_termination_protection(options = {})
291
307
  # Calls the SetTerminationProtection API operation.
292
308
  # @param [Hash] options
293
- # * +:job_flow_ids+ - *required* - (Array<String>) A list of strings
309
+ # * `:job_flow_ids` - *required* - (Array<String>) A list of strings
294
310
  # that uniquely identify the job flows to protect. This identifier is
295
311
  # returned by RunJobFlow and can also be obtained from
296
312
  # DescribeJobFlows .
297
- # * +:termination_protected+ - *required* - (Boolean) A Boolean that
313
+ # * `:termination_protected` - *required* - (Boolean) A Boolean that
298
314
  # indicates whether to protect the job flow and prevent the Amazon
299
315
  # EC2 instances in the cluster from shutting down due to API calls,
300
316
  # user intervention, or job-flow error.
@@ -303,9 +319,9 @@ module AWS
303
319
  # @!method set_visible_to_all_users(options = {})
304
320
  # Calls the SetVisibleToAllUsers API operation.
305
321
  # @param [Hash] options
306
- # * +:job_flow_ids+ - *required* - (Array<String>) Identifiers of the
322
+ # * `:job_flow_ids` - *required* - (Array<String>) Identifiers of the
307
323
  # job flows to receive the new visibility setting.
308
- # * +:visible_to_all_users+ - *required* - (Boolean) Whether the
324
+ # * `:visible_to_all_users` - *required* - (Boolean) Whether the
309
325
  # specified job flows are visible to all IAM users of the AWS account
310
326
  # associated with the job flow. If this value is set to True, all IAM
311
327
  # users of that AWS account can view and, if they have the proper IAM
@@ -317,7 +333,7 @@ module AWS
317
333
  # @!method terminate_job_flows(options = {})
318
334
  # Calls the TerminateJobFlows API operation.
319
335
  # @param [Hash] options
320
- # * +:job_flow_ids+ - *required* - (Array<String>) A list of job flows
336
+ # * `:job_flow_ids` - *required* - (Array<String>) A list of job flows
321
337
  # to be shutdown.
322
338
  # @return [Core::Response]
323
339