aws_sdk 3.1.5

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 (390) hide show
  1. data/lib/aws-sdk.rb +14 -0
  2. data/lib/aws.rb +49 -0
  3. data/lib/aws/api_config/AutoScaling-2011-01-01.yml +791 -0
  4. data/lib/aws/api_config/CloudFormation-2010-05-15.yml +303 -0
  5. data/lib/aws/api_config/DynamoDB-2011-12-05.yml +540 -0
  6. data/lib/aws/api_config/EC2-2011-12-15.yml +3638 -0
  7. data/lib/aws/api_config/EC2-2012-04-01.yml +3739 -0
  8. data/lib/aws/api_config/ELB-2011-08-15.yml +512 -0
  9. data/lib/aws/api_config/IAM-2010-05-08.yml +1221 -0
  10. data/lib/aws/api_config/SNS-2010-03-31.yml +248 -0
  11. data/lib/aws/api_config/SQS-2011-10-01.yml +314 -0
  12. data/lib/aws/api_config/STS-2011-06-15.yml +54 -0
  13. data/lib/aws/api_config/SimpleDB-2009-04-15.yml +305 -0
  14. data/lib/aws/api_config/SimpleEmailService-2010-12-01.yml +231 -0
  15. data/lib/aws/api_config/SimpleWorkflow-2012-01-25.yml +721 -0
  16. data/lib/aws/auto_scaling.rb +162 -0
  17. data/lib/aws/auto_scaling/activity.rb +102 -0
  18. data/lib/aws/auto_scaling/activity_collection.rb +82 -0
  19. data/lib/aws/auto_scaling/client.rb +765 -0
  20. data/lib/aws/auto_scaling/config.rb +18 -0
  21. data/lib/aws/auto_scaling/errors.rb +22 -0
  22. data/lib/aws/auto_scaling/group.rb +420 -0
  23. data/lib/aws/auto_scaling/group_collection.rb +96 -0
  24. data/lib/aws/auto_scaling/group_options.rb +146 -0
  25. data/lib/aws/auto_scaling/instance.rb +192 -0
  26. data/lib/aws/auto_scaling/instance_collection.rb +63 -0
  27. data/lib/aws/auto_scaling/launch_configuration.rb +150 -0
  28. data/lib/aws/auto_scaling/launch_configuration_collection.rb +144 -0
  29. data/lib/aws/auto_scaling/notification_configuration.rb +89 -0
  30. data/lib/aws/auto_scaling/notification_configuration_collection.rb +184 -0
  31. data/lib/aws/auto_scaling/request.rb +23 -0
  32. data/lib/aws/auto_scaling/scaling_policy.rb +125 -0
  33. data/lib/aws/auto_scaling/scaling_policy_collection.rb +72 -0
  34. data/lib/aws/auto_scaling/scaling_policy_options.rb +61 -0
  35. data/lib/aws/auto_scaling/scheduled_action.rb +145 -0
  36. data/lib/aws/auto_scaling/scheduled_action_collection.rb +195 -0
  37. data/lib/aws/auto_scaling/tag.rb +59 -0
  38. data/lib/aws/auto_scaling/tag_collection.rb +112 -0
  39. data/lib/aws/cloud_formation.rb +270 -0
  40. data/lib/aws/cloud_formation/client.rb +339 -0
  41. data/lib/aws/cloud_formation/config.rb +18 -0
  42. data/lib/aws/cloud_formation/errors.rb +22 -0
  43. data/lib/aws/cloud_formation/request.rb +29 -0
  44. data/lib/aws/cloud_formation/stack.rb +256 -0
  45. data/lib/aws/cloud_formation/stack_collection.rb +206 -0
  46. data/lib/aws/cloud_formation/stack_event.rb +75 -0
  47. data/lib/aws/cloud_formation/stack_event_collection.rb +47 -0
  48. data/lib/aws/cloud_formation/stack_options.rb +72 -0
  49. data/lib/aws/cloud_formation/stack_output.rb +53 -0
  50. data/lib/aws/cloud_formation/stack_resource.rb +117 -0
  51. data/lib/aws/cloud_formation/stack_resource_collection.rb +84 -0
  52. data/lib/aws/cloud_formation/stack_resource_summary_collection.rb +72 -0
  53. data/lib/aws/cloud_formation/stack_summary.rb +71 -0
  54. data/lib/aws/cloud_formation/stack_summary_collection.rb +127 -0
  55. data/lib/aws/core.rb +474 -0
  56. data/lib/aws/core/async_handle.rb +90 -0
  57. data/lib/aws/core/autoloader.rb +64 -0
  58. data/lib/aws/core/cacheable.rb +78 -0
  59. data/lib/aws/core/client.rb +541 -0
  60. data/lib/aws/core/client/query_json.rb +110 -0
  61. data/lib/aws/core/client/query_xml.rb +122 -0
  62. data/lib/aws/core/collection.rb +234 -0
  63. data/lib/aws/core/collection/limitable.rb +99 -0
  64. data/lib/aws/core/collection/simple.rb +90 -0
  65. data/lib/aws/core/configuration.rb +445 -0
  66. data/lib/aws/core/data.rb +242 -0
  67. data/lib/aws/core/default_signer.rb +67 -0
  68. data/lib/aws/core/http/curb_handler.rb +136 -0
  69. data/lib/aws/core/http/handler.rb +77 -0
  70. data/lib/aws/core/http/httparty_handler.rb +114 -0
  71. data/lib/aws/core/http/net_http_handler.rb +85 -0
  72. data/lib/aws/core/http/request.rb +250 -0
  73. data/lib/aws/core/http/response.rb +74 -0
  74. data/lib/aws/core/indifferent_hash.rb +88 -0
  75. data/lib/aws/core/inflection.rb +47 -0
  76. data/lib/aws/core/lazy_error_classes.rb +90 -0
  77. data/lib/aws/core/log_formatter.rb +454 -0
  78. data/lib/aws/core/meta_utils.rb +45 -0
  79. data/lib/aws/core/model.rb +57 -0
  80. data/lib/aws/core/naming.rb +30 -0
  81. data/lib/aws/core/option_grammar.rb +700 -0
  82. data/lib/aws/core/page_result.rb +73 -0
  83. data/lib/aws/core/policy.rb +916 -0
  84. data/lib/aws/core/resource.rb +408 -0
  85. data/lib/aws/core/resource_cache.rb +40 -0
  86. data/lib/aws/core/response.rb +202 -0
  87. data/lib/aws/core/response_cache.rb +50 -0
  88. data/lib/aws/core/service_interface.rb +61 -0
  89. data/lib/aws/core/session_signer.rb +90 -0
  90. data/lib/aws/core/signature/version_2.rb +42 -0
  91. data/lib/aws/core/signature/version_3.rb +73 -0
  92. data/lib/aws/core/signature/version_3_http.rb +72 -0
  93. data/lib/aws/core/signature/version_4.rb +138 -0
  94. data/lib/aws/core/uri_escape.rb +42 -0
  95. data/lib/aws/core/xml/frame.rb +242 -0
  96. data/lib/aws/core/xml/frame_stack.rb +85 -0
  97. data/lib/aws/core/xml/grammar.rb +299 -0
  98. data/lib/aws/core/xml/parser.rb +70 -0
  99. data/lib/aws/core/xml/root_frame.rb +65 -0
  100. data/lib/aws/core/xml/sax_handlers/libxml.rb +47 -0
  101. data/lib/aws/core/xml/sax_handlers/nokogiri.rb +55 -0
  102. data/lib/aws/core/xml/sax_handlers/ox.rb +41 -0
  103. data/lib/aws/core/xml/sax_handlers/rexml.rb +43 -0
  104. data/lib/aws/core/xml/stub.rb +123 -0
  105. data/lib/aws/dynamo_db.rb +213 -0
  106. data/lib/aws/dynamo_db/attribute_collection.rb +460 -0
  107. data/lib/aws/dynamo_db/batch_get.rb +206 -0
  108. data/lib/aws/dynamo_db/batch_write.rb +251 -0
  109. data/lib/aws/dynamo_db/client.rb +888 -0
  110. data/lib/aws/dynamo_db/config.rb +20 -0
  111. data/lib/aws/dynamo_db/errors.rb +20 -0
  112. data/lib/aws/dynamo_db/expectations.rb +40 -0
  113. data/lib/aws/dynamo_db/item.rb +130 -0
  114. data/lib/aws/dynamo_db/item_collection.rb +852 -0
  115. data/lib/aws/dynamo_db/item_data.rb +31 -0
  116. data/lib/aws/dynamo_db/keys.rb +41 -0
  117. data/lib/aws/dynamo_db/primary_key_element.rb +47 -0
  118. data/lib/aws/dynamo_db/request.rb +28 -0
  119. data/lib/aws/dynamo_db/resource.rb +33 -0
  120. data/lib/aws/dynamo_db/table.rb +489 -0
  121. data/lib/aws/dynamo_db/table_collection.rb +165 -0
  122. data/lib/aws/dynamo_db/types.rb +86 -0
  123. data/lib/aws/ec2.rb +431 -0
  124. data/lib/aws/ec2/attachment.rb +140 -0
  125. data/lib/aws/ec2/attachment_collection.rb +54 -0
  126. data/lib/aws/ec2/availability_zone.rb +87 -0
  127. data/lib/aws/ec2/availability_zone_collection.rb +43 -0
  128. data/lib/aws/ec2/block_device_mappings.rb +53 -0
  129. data/lib/aws/ec2/client.rb +4121 -0
  130. data/lib/aws/ec2/collection.rb +36 -0
  131. data/lib/aws/ec2/config.rb +18 -0
  132. data/lib/aws/ec2/config_transform.rb +63 -0
  133. data/lib/aws/ec2/customer_gateway.rb +90 -0
  134. data/lib/aws/ec2/customer_gateway_collection.rb +73 -0
  135. data/lib/aws/ec2/dhcp_options.rb +106 -0
  136. data/lib/aws/ec2/dhcp_options_collection.rb +87 -0
  137. data/lib/aws/ec2/elastic_ip.rb +157 -0
  138. data/lib/aws/ec2/elastic_ip_collection.rb +97 -0
  139. data/lib/aws/ec2/errors.rb +32 -0
  140. data/lib/aws/ec2/filtered_collection.rb +90 -0
  141. data/lib/aws/ec2/has_permissions.rb +44 -0
  142. data/lib/aws/ec2/image.rb +254 -0
  143. data/lib/aws/ec2/image_collection.rb +228 -0
  144. data/lib/aws/ec2/instance.rb +669 -0
  145. data/lib/aws/ec2/instance_collection.rb +346 -0
  146. data/lib/aws/ec2/internet_gateway.rb +122 -0
  147. data/lib/aws/ec2/internet_gateway/attachment.rb +78 -0
  148. data/lib/aws/ec2/internet_gateway_collection.rb +54 -0
  149. data/lib/aws/ec2/key_pair.rb +82 -0
  150. data/lib/aws/ec2/key_pair_collection.rb +99 -0
  151. data/lib/aws/ec2/network_acl.rb +256 -0
  152. data/lib/aws/ec2/network_acl/association.rb +56 -0
  153. data/lib/aws/ec2/network_acl/entry.rb +147 -0
  154. data/lib/aws/ec2/network_acl_collection.rb +64 -0
  155. data/lib/aws/ec2/network_interface.rb +228 -0
  156. data/lib/aws/ec2/network_interface/attachment.rb +100 -0
  157. data/lib/aws/ec2/network_interface_collection.rb +103 -0
  158. data/lib/aws/ec2/permission_collection.rb +174 -0
  159. data/lib/aws/ec2/region.rb +97 -0
  160. data/lib/aws/ec2/region_collection.rb +51 -0
  161. data/lib/aws/ec2/request.rb +22 -0
  162. data/lib/aws/ec2/reserved_instances.rb +53 -0
  163. data/lib/aws/ec2/reserved_instances_collection.rb +40 -0
  164. data/lib/aws/ec2/reserved_instances_offering.rb +58 -0
  165. data/lib/aws/ec2/reserved_instances_offering_collection.rb +39 -0
  166. data/lib/aws/ec2/resource.rb +161 -0
  167. data/lib/aws/ec2/resource_tag_collection.rb +211 -0
  168. data/lib/aws/ec2/route_table.rb +205 -0
  169. data/lib/aws/ec2/route_table/association.rb +119 -0
  170. data/lib/aws/ec2/route_table/route.rb +113 -0
  171. data/lib/aws/ec2/route_table_collection.rb +72 -0
  172. data/lib/aws/ec2/security_group.rb +458 -0
  173. data/lib/aws/ec2/security_group/egress_ip_permission_collection.rb +63 -0
  174. data/lib/aws/ec2/security_group/ingress_ip_permission_collection.rb +61 -0
  175. data/lib/aws/ec2/security_group/ip_permission.rb +128 -0
  176. data/lib/aws/ec2/security_group_collection.rb +135 -0
  177. data/lib/aws/ec2/snapshot.rb +143 -0
  178. data/lib/aws/ec2/snapshot_collection.rb +131 -0
  179. data/lib/aws/ec2/subnet.rb +161 -0
  180. data/lib/aws/ec2/subnet_collection.rb +115 -0
  181. data/lib/aws/ec2/tag.rb +81 -0
  182. data/lib/aws/ec2/tag_collection.rb +107 -0
  183. data/lib/aws/ec2/tagged_collection.rb +53 -0
  184. data/lib/aws/ec2/tagged_item.rb +85 -0
  185. data/lib/aws/ec2/volume.rb +170 -0
  186. data/lib/aws/ec2/volume_collection.rb +97 -0
  187. data/lib/aws/ec2/vpc.rb +166 -0
  188. data/lib/aws/ec2/vpc_collection.rb +70 -0
  189. data/lib/aws/ec2/vpn_connection.rb +99 -0
  190. data/lib/aws/ec2/vpn_connection/telemetry.rb +49 -0
  191. data/lib/aws/ec2/vpn_connection_collection.rb +96 -0
  192. data/lib/aws/ec2/vpn_gateway.rb +123 -0
  193. data/lib/aws/ec2/vpn_gateway/attachment.rb +45 -0
  194. data/lib/aws/ec2/vpn_gateway_collection.rb +77 -0
  195. data/lib/aws/elb.rb +65 -0
  196. data/lib/aws/elb/availability_zone_collection.rb +138 -0
  197. data/lib/aws/elb/backend_server_policy_collection.rb +140 -0
  198. data/lib/aws/elb/client.rb +539 -0
  199. data/lib/aws/elb/config.rb +18 -0
  200. data/lib/aws/elb/errors.rb +26 -0
  201. data/lib/aws/elb/instance_collection.rb +174 -0
  202. data/lib/aws/elb/listener.rb +189 -0
  203. data/lib/aws/elb/listener_collection.rb +119 -0
  204. data/lib/aws/elb/listener_opts.rb +45 -0
  205. data/lib/aws/elb/load_balancer.rb +253 -0
  206. data/lib/aws/elb/load_balancer_collection.rb +113 -0
  207. data/lib/aws/elb/load_balancer_policy.rb +93 -0
  208. data/lib/aws/elb/load_balancer_policy_collection.rb +208 -0
  209. data/lib/aws/elb/request.rb +23 -0
  210. data/lib/aws/errors.rb +122 -0
  211. data/lib/aws/iam.rb +418 -0
  212. data/lib/aws/iam/access_key.rb +180 -0
  213. data/lib/aws/iam/access_key_collection.rb +128 -0
  214. data/lib/aws/iam/account_alias_collection.rb +79 -0
  215. data/lib/aws/iam/client.rb +1609 -0
  216. data/lib/aws/iam/collection.rb +83 -0
  217. data/lib/aws/iam/config.rb +18 -0
  218. data/lib/aws/iam/errors.rb +22 -0
  219. data/lib/aws/iam/group.rb +111 -0
  220. data/lib/aws/iam/group_collection.rb +132 -0
  221. data/lib/aws/iam/group_policy_collection.rb +47 -0
  222. data/lib/aws/iam/group_user_collection.rb +84 -0
  223. data/lib/aws/iam/login_profile.rb +99 -0
  224. data/lib/aws/iam/mfa_device.rb +52 -0
  225. data/lib/aws/iam/mfa_device_collection.rb +127 -0
  226. data/lib/aws/iam/policy.rb +46 -0
  227. data/lib/aws/iam/policy_collection.rb +188 -0
  228. data/lib/aws/iam/request.rb +29 -0
  229. data/lib/aws/iam/resource.rb +71 -0
  230. data/lib/aws/iam/server_certificate.rb +141 -0
  231. data/lib/aws/iam/server_certificate_collection.rb +138 -0
  232. data/lib/aws/iam/signing_certificate.rb +169 -0
  233. data/lib/aws/iam/signing_certificate_collection.rb +131 -0
  234. data/lib/aws/iam/user.rb +205 -0
  235. data/lib/aws/iam/user_collection.rb +133 -0
  236. data/lib/aws/iam/user_group_collection.rb +98 -0
  237. data/lib/aws/iam/user_policy.rb +90 -0
  238. data/lib/aws/iam/user_policy_collection.rb +45 -0
  239. data/lib/aws/iam/virtual_mfa_device.rb +139 -0
  240. data/lib/aws/iam/virtual_mfa_device_collection.rb +73 -0
  241. data/lib/aws/rails.rb +195 -0
  242. data/lib/aws/record.rb +116 -0
  243. data/lib/aws/record/abstract_base.rb +645 -0
  244. data/lib/aws/record/attributes.rb +384 -0
  245. data/lib/aws/record/conversion.rb +38 -0
  246. data/lib/aws/record/dirty_tracking.rb +285 -0
  247. data/lib/aws/record/errors.rb +143 -0
  248. data/lib/aws/record/exceptions.rb +48 -0
  249. data/lib/aws/record/hash_model.rb +161 -0
  250. data/lib/aws/record/hash_model/attributes.rb +182 -0
  251. data/lib/aws/record/hash_model/finder_methods.rb +172 -0
  252. data/lib/aws/record/hash_model/scope.rb +108 -0
  253. data/lib/aws/record/model.rb +427 -0
  254. data/lib/aws/record/model/attributes.rb +379 -0
  255. data/lib/aws/record/model/finder_methods.rb +232 -0
  256. data/lib/aws/record/model/scope.rb +213 -0
  257. data/lib/aws/record/naming.rb +31 -0
  258. data/lib/aws/record/scope.rb +199 -0
  259. data/lib/aws/record/validations.rb +694 -0
  260. data/lib/aws/record/validator.rb +237 -0
  261. data/lib/aws/record/validators/acceptance.rb +51 -0
  262. data/lib/aws/record/validators/block.rb +38 -0
  263. data/lib/aws/record/validators/confirmation.rb +43 -0
  264. data/lib/aws/record/validators/count.rb +108 -0
  265. data/lib/aws/record/validators/exclusion.rb +43 -0
  266. data/lib/aws/record/validators/format.rb +57 -0
  267. data/lib/aws/record/validators/inclusion.rb +56 -0
  268. data/lib/aws/record/validators/length.rb +107 -0
  269. data/lib/aws/record/validators/method.rb +33 -0
  270. data/lib/aws/record/validators/numericality.rb +138 -0
  271. data/lib/aws/record/validators/presence.rb +45 -0
  272. data/lib/aws/s3.rb +135 -0
  273. data/lib/aws/s3/access_control_list.rb +250 -0
  274. data/lib/aws/s3/acl_object.rb +264 -0
  275. data/lib/aws/s3/bucket.rb +393 -0
  276. data/lib/aws/s3/bucket_collection.rb +143 -0
  277. data/lib/aws/s3/bucket_lifecycle_configuration.rb +360 -0
  278. data/lib/aws/s3/bucket_version_collection.rb +77 -0
  279. data/lib/aws/s3/client.rb +1184 -0
  280. data/lib/aws/s3/client/xml.rb +177 -0
  281. data/lib/aws/s3/config.rb +26 -0
  282. data/lib/aws/s3/data_options.rb +100 -0
  283. data/lib/aws/s3/errors.rb +81 -0
  284. data/lib/aws/s3/multipart_upload.rb +317 -0
  285. data/lib/aws/s3/multipart_upload_collection.rb +68 -0
  286. data/lib/aws/s3/object_collection.rb +337 -0
  287. data/lib/aws/s3/object_metadata.rb +96 -0
  288. data/lib/aws/s3/object_upload_collection.rb +77 -0
  289. data/lib/aws/s3/object_version.rb +143 -0
  290. data/lib/aws/s3/object_version_collection.rb +89 -0
  291. data/lib/aws/s3/paginated_collection.rb +75 -0
  292. data/lib/aws/s3/policy.rb +74 -0
  293. data/lib/aws/s3/prefix_and_delimiter_collection.rb +47 -0
  294. data/lib/aws/s3/prefixed_collection.rb +81 -0
  295. data/lib/aws/s3/presigned_post.rb +553 -0
  296. data/lib/aws/s3/request.rb +201 -0
  297. data/lib/aws/s3/s3_object.rb +1037 -0
  298. data/lib/aws/s3/tree.rb +118 -0
  299. data/lib/aws/s3/tree/branch_node.rb +68 -0
  300. data/lib/aws/s3/tree/child_collection.rb +104 -0
  301. data/lib/aws/s3/tree/leaf_node.rb +94 -0
  302. data/lib/aws/s3/tree/node.rb +22 -0
  303. data/lib/aws/s3/tree/parent.rb +87 -0
  304. data/lib/aws/s3/uploaded_part.rb +80 -0
  305. data/lib/aws/s3/uploaded_part_collection.rb +84 -0
  306. data/lib/aws/simple_db.rb +217 -0
  307. data/lib/aws/simple_db/attribute.rb +154 -0
  308. data/lib/aws/simple_db/attribute_collection.rb +231 -0
  309. data/lib/aws/simple_db/client.rb +349 -0
  310. data/lib/aws/simple_db/config.rb +20 -0
  311. data/lib/aws/simple_db/consistent_read_option.rb +42 -0
  312. data/lib/aws/simple_db/delete_attributes.rb +62 -0
  313. data/lib/aws/simple_db/domain.rb +121 -0
  314. data/lib/aws/simple_db/domain_collection.rb +113 -0
  315. data/lib/aws/simple_db/domain_metadata.rb +110 -0
  316. data/lib/aws/simple_db/errors.rb +55 -0
  317. data/lib/aws/simple_db/expect_condition_option.rb +45 -0
  318. data/lib/aws/simple_db/item.rb +93 -0
  319. data/lib/aws/simple_db/item_collection.rb +649 -0
  320. data/lib/aws/simple_db/item_data.rb +73 -0
  321. data/lib/aws/simple_db/put_attributes.rb +60 -0
  322. data/lib/aws/simple_db/request.rb +23 -0
  323. data/lib/aws/simple_email_service.rb +426 -0
  324. data/lib/aws/simple_email_service/client.rb +286 -0
  325. data/lib/aws/simple_email_service/config.rb +19 -0
  326. data/lib/aws/simple_email_service/email_address_collection.rb +69 -0
  327. data/lib/aws/simple_email_service/errors.rb +22 -0
  328. data/lib/aws/simple_email_service/identity.rb +91 -0
  329. data/lib/aws/simple_email_service/identity_collection.rb +81 -0
  330. data/lib/aws/simple_email_service/quotas.rb +64 -0
  331. data/lib/aws/simple_email_service/request.rb +29 -0
  332. data/lib/aws/simple_workflow.rb +226 -0
  333. data/lib/aws/simple_workflow/activity_task.rb +173 -0
  334. data/lib/aws/simple_workflow/activity_task_collection.rb +123 -0
  335. data/lib/aws/simple_workflow/activity_type.rb +131 -0
  336. data/lib/aws/simple_workflow/activity_type_collection.rb +93 -0
  337. data/lib/aws/simple_workflow/client.rb +1434 -0
  338. data/lib/aws/simple_workflow/config.rb +18 -0
  339. data/lib/aws/simple_workflow/count.rb +49 -0
  340. data/lib/aws/simple_workflow/decision_task.rb +601 -0
  341. data/lib/aws/simple_workflow/decision_task_collection.rb +225 -0
  342. data/lib/aws/simple_workflow/domain.rb +122 -0
  343. data/lib/aws/simple_workflow/domain_collection.rb +169 -0
  344. data/lib/aws/simple_workflow/errors.rb +20 -0
  345. data/lib/aws/simple_workflow/history_event.rb +276 -0
  346. data/lib/aws/simple_workflow/history_event_collection.rb +76 -0
  347. data/lib/aws/simple_workflow/option_formatters.rb +82 -0
  348. data/lib/aws/simple_workflow/request.rb +36 -0
  349. data/lib/aws/simple_workflow/resource.rb +94 -0
  350. data/lib/aws/simple_workflow/type.rb +89 -0
  351. data/lib/aws/simple_workflow/type_collection.rb +140 -0
  352. data/lib/aws/simple_workflow/workflow_execution.rb +386 -0
  353. data/lib/aws/simple_workflow/workflow_execution_collection.rb +617 -0
  354. data/lib/aws/simple_workflow/workflow_type.rb +177 -0
  355. data/lib/aws/simple_workflow/workflow_type_collection.rb +91 -0
  356. data/lib/aws/sns.rb +74 -0
  357. data/lib/aws/sns/client.rb +371 -0
  358. data/lib/aws/sns/config.rb +18 -0
  359. data/lib/aws/sns/errors.rb +22 -0
  360. data/lib/aws/sns/has_delivery_policy.rb +68 -0
  361. data/lib/aws/sns/policy.rb +47 -0
  362. data/lib/aws/sns/request.rb +23 -0
  363. data/lib/aws/sns/subscription.rb +144 -0
  364. data/lib/aws/sns/subscription_collection.rb +80 -0
  365. data/lib/aws/sns/topic.rb +403 -0
  366. data/lib/aws/sns/topic_collection.rb +67 -0
  367. data/lib/aws/sns/topic_subscription_collection.rb +55 -0
  368. data/lib/aws/sqs.rb +79 -0
  369. data/lib/aws/sqs/client.rb +360 -0
  370. data/lib/aws/sqs/config.rb +18 -0
  371. data/lib/aws/sqs/errors.rb +101 -0
  372. data/lib/aws/sqs/policy.rb +48 -0
  373. data/lib/aws/sqs/queue.rb +725 -0
  374. data/lib/aws/sqs/queue_collection.rb +170 -0
  375. data/lib/aws/sqs/received_message.rb +181 -0
  376. data/lib/aws/sqs/received_sns_message.rb +112 -0
  377. data/lib/aws/sqs/request.rb +43 -0
  378. data/lib/aws/sts.rb +152 -0
  379. data/lib/aws/sts/client.rb +105 -0
  380. data/lib/aws/sts/config.rb +18 -0
  381. data/lib/aws/sts/errors.rb +22 -0
  382. data/lib/aws/sts/federated_session.rb +56 -0
  383. data/lib/aws/sts/policy.rb +30 -0
  384. data/lib/aws/sts/request.rb +29 -0
  385. data/lib/aws/sts/session.rb +48 -0
  386. data/lib/net/http/connection_pool.rb +210 -0
  387. data/lib/net/http/connection_pool/connection.rb +132 -0
  388. data/lib/net/http/connection_pool/session.rb +93 -0
  389. data/lib/user.rb +49 -0
  390. metadata +433 -0
@@ -0,0 +1,140 @@
1
+ # Copyright 2011-2012 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License"). You
4
+ # may not use this file except in compliance with the License. A copy of
5
+ # the License is located at
6
+ #
7
+ # http://aws.amazon.com/apache2.0/
8
+ #
9
+ # or in the "license" file accompanying this file. This file is
10
+ # distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
11
+ # ANY KIND, either express or implied. See the License for the specific
12
+ # language governing permissions and limitations under the License.
13
+
14
+ module AWS
15
+ class ELB
16
+
17
+ # Helps manage policies assigned to backend server instnace ports.
18
+ #
19
+ # == Creating a Backend Server Policy
20
+ #
21
+ # Creating a backend server policy can be a bit tricky. A
22
+ # BackendServerAuthenticationPolicyType policy only has one
23
+ # attribute, a list of public key policies.
24
+ #
25
+ # Before you can assign a policy to a backend server instance port you
26
+ # must create on of the appropriate type:
27
+ #
28
+ # # step 1, create one (or more) PublicKeyPolicyType policies
29
+ #
30
+ # public_key1 = <<-KEY
31
+ # -----BEGIN CERTIFICATE-----
32
+ # MIICaTCCAdICCQDuvCF4erLGSjANBgkqhkiG9w0BAQUFADB5MQswCQYDVQQGEwJa
33
+ # ....
34
+ # o50MymfqtoVcebZcXbiDVAXW1cPEHKLBXecX6/LZ+GOzEsUOxgt7Xs9uabqp
35
+ # -----END CERTIFICATE-----
36
+ # KEY
37
+ #
38
+ # public_key_policy = load_balancer.policies.create("pkp",
39
+ # 'PublicKeyPolicyType', 'PublicKey' => public_key.strip)
40
+ #
41
+ # # step 2, create the backend server policy, passing the public key policy
42
+ #
43
+ # name = 'backend-policy'
44
+ # type = 'BackendServerAuthenticationPolicyType'
45
+ # attributes = {
46
+ # # note: you can pass more than one public key policy here
47
+ # 'PublicKeyPolicyName' => [public_key_policy]
48
+ # }
49
+ #
50
+ # backend_policy = @load_balancer.policies.create(name, type, attributes)
51
+ # 'BackendServerAuthenticationPolicyType', attributes)
52
+ #
53
+ # Once you have created a backend server authentication policy, you
54
+ # can assign it to a backend instance port:
55
+ #
56
+ # load_balancer.backend_server_policies[80] = backend_policy
57
+ #
58
+ # If you want to remove the policy you can pass nil instead.
59
+ #
60
+ # # removes the policy from instance port 80
61
+ # load_balancer.backend_server_policies[80] = nil
62
+ #
63
+ # You can also get the current policy:
64
+ #
65
+ # load_balancer.backend_server_policies[80] # returns a policy or nil
66
+ #
67
+ class BackendServerPolicyCollection
68
+
69
+ include Core::Collection::Simple
70
+
71
+ def initialize load_balancer, options = {}
72
+ @load_balancer = load_balancer
73
+ super
74
+ end
75
+
76
+ # @return [LoadBalancer]
77
+ attr_reader :load_balancer
78
+
79
+ # Returns the policy currently assigned to the given instance port.
80
+ #
81
+ # @param [Integer] instance_port The backend server port to
82
+ # get the currently policy of.
83
+ #
84
+ # @return [LoadBalancerPolicy,nil] Returns the load balancer policy
85
+ # currently assigned to the given instance port. Returns nil if
86
+ # no policy has been assigned.
87
+ #
88
+ def [] instance_port
89
+ enum(:instance_port => instance_port).first
90
+ end
91
+
92
+ # Sets the policy for the given backend server instance port.
93
+ #
94
+ # @param [Integer] instance_port The instance port you want to set
95
+ # backend server policies for.
96
+ #
97
+ # @param [String,LoadBalancerPolicy,nil] policy Load balancer policy
98
+ # name or object. Passing nil removes the current policy.
99
+ #
100
+ # @return [nil]
101
+ #
102
+ def []= instance_port, policy
103
+
104
+ client.set_load_balancer_policies_for_backend_server(
105
+ :load_balancer_name => load_balancer.name,
106
+ :instance_port => instance_port.to_i,
107
+ :policy_names => [policy_name(policy)].compact)
108
+
109
+ nil
110
+
111
+ end
112
+
113
+ protected
114
+ def policy_name policy
115
+ case policy
116
+ when nil then nil
117
+ when LoadBalancerPolicy then policy.name
118
+ else policy.to_s
119
+ end
120
+ end
121
+
122
+ protected
123
+ def _each_item options = {}
124
+
125
+ instance_port = options[:instance_port]
126
+
127
+ load_balancer.backend_server_descriptions.each do |desc|
128
+ if instance_port.nil? or desc.instance_port == instance_port
129
+ desc.policy_names.collect do |policy_name|
130
+ policy = load_balancer.policies[policy_name]
131
+ yield(policy)
132
+ end
133
+ end
134
+ end
135
+
136
+ end
137
+
138
+ end
139
+ end
140
+ end
@@ -0,0 +1,539 @@
1
+ # Copyright 2011-2012 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License"). You
4
+ # may not use this file except in compliance with the License. A copy of
5
+ # the License is located at
6
+ #
7
+ # http://aws.amazon.com/apache2.0/
8
+ #
9
+ # or in the "license" file accompanying this file. This file is
10
+ # distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
11
+ # ANY KIND, either express or implied. See the License for the specific
12
+ # language governing permissions and limitations under the License.
13
+
14
+ module AWS
15
+ class ELB
16
+
17
+ # Client class for Elastic Load Balancing (ELB).
18
+ class Client < Core::Client
19
+
20
+ API_VERSION = '2011-08-15'
21
+
22
+ extend Core::Client::QueryXML
23
+
24
+ # @private
25
+ CACHEABLE_REQUESTS = Set[]
26
+
27
+ ## client methods ##
28
+
29
+ # Calls the ConfigureHealthCheck API operation.
30
+ # @method configure_health_check(options = {})
31
+ #
32
+ # === Options:
33
+ #
34
+ # * +:load_balancer_name+ - *required* - (String) The mnemonic name
35
+ # associated with the LoadBalancer. This name must be unique within the
36
+ # client AWS account.
37
+ # * +:health_check+ - *required* - (Hash) A structure containing the
38
+ # configuration information for the new healthcheck.
39
+ # * +:target+ - *required* - (String) Specifies the instance being
40
+ # checked. The protocol is either TCP or HTTP. The range of valid
41
+ # ports is one (1) through 65535. TCP is the default, specified as a
42
+ # TCP: port pair, for example "TCP:5000". In this case a healthcheck
43
+ # simply attempts to open a TCP connection to the instance on the
44
+ # specified port. Failure to connect within the configured timeout is
45
+ # considered unhealthy. For HTTP, the situation is different. HTTP is
46
+ # specified as a HTTP:port;/;PathToPing; grouping, for example
47
+ # "HTTP:80/weather/us/wa/seattle". In this case, a HTTP GET request
48
+ # is issued to the instance on the given port and path. Any answer
49
+ # other than "200 OK" within the timeout period is considered
50
+ # unhealthy. The total length of the HTTP ping target needs to be
51
+ # 1024 16-bit Unicode characters or less.
52
+ # * +:interval+ - *required* - (Integer) Specifies the approximate
53
+ # interval, in seconds, between health checks of an individual
54
+ # instance.
55
+ # * +:timeout+ - *required* - (Integer) Specifies the amount of time,
56
+ # in seconds, during which no response means a failed health probe.
57
+ # This value must be less than the Interval value.
58
+ # * +:unhealthy_threshold+ - *required* - (Integer) Specifies the
59
+ # number of consecutive health probe failures required before moving
60
+ # the instance to the Unhealthy state.
61
+ # * +:healthy_threshold+ - *required* - (Integer) Specifies the number
62
+ # of consecutive health probe successes required before moving the
63
+ # instance to the Healthy state.
64
+ #
65
+ # === Response Structure:
66
+ #
67
+ # * +:health_check+ - (Hash)
68
+ # * +:target+ - (String)
69
+ # * +:interval+ - (Integer)
70
+ # * +:timeout+ - (Integer)
71
+ # * +:unhealthy_threshold+ - (Integer)
72
+ # * +:healthy_threshold+ - (Integer)
73
+ #
74
+ # @return [Core::Response]
75
+ #
76
+ define_client_method :configure_health_check, 'ConfigureHealthCheck'
77
+
78
+ # Calls the CreateAppCookieStickinessPolicy API operation.
79
+ # @method create_app_cookie_stickiness_policy(options = {})
80
+ #
81
+ # === Options:
82
+ #
83
+ # * +:load_balancer_name+ - *required* - (String) The name associated
84
+ # with the LoadBalancer. The name must be unique within the client AWS
85
+ # account.
86
+ # * +:policy_name+ - *required* - (String) The name of the policy being
87
+ # created. The name must be unique within the set of policies for this
88
+ # Load Balancer.
89
+ # * +:cookie_name+ - *required* - (String) Name of the application cookie
90
+ # used for stickiness.
91
+ #
92
+ # === Response Structure:
93
+ #
94
+ # This method returns no response data.
95
+ #
96
+ # @return [Core::Response]
97
+ #
98
+ define_client_method :create_app_cookie_stickiness_policy, 'CreateAppCookieStickinessPolicy'
99
+
100
+ # Calls the CreateLBCookieStickinessPolicy API operation.
101
+ # @method create_lb_cookie_stickiness_policy(options = {})
102
+ #
103
+ # === Options:
104
+ #
105
+ # * +:load_balancer_name+ - *required* - (String) The name associated
106
+ # with the LoadBalancer. The name must be unique within the client AWS
107
+ # account.
108
+ # * +:policy_name+ - *required* - (String) The name of the policy being
109
+ # created. The name must be unique within the set of policies for this
110
+ # Load Balancer.
111
+ # * +:cookie_expiration_period+ - (Integer) The time period in seconds
112
+ # after which the cookie should be considered stale. Not specifying
113
+ # this parameter indicates that the sticky session will last for the
114
+ # duration of the browser session.
115
+ #
116
+ # === Response Structure:
117
+ #
118
+ # This method returns no response data.
119
+ #
120
+ # @return [Core::Response]
121
+ #
122
+ define_client_method :create_lb_cookie_stickiness_policy, 'CreateLBCookieStickinessPolicy'
123
+
124
+ # Calls the CreateLoadBalancer API operation.
125
+ # @method create_load_balancer(options = {})
126
+ #
127
+ # === Options:
128
+ #
129
+ # * +:load_balancer_name+ - *required* - (String) The name associated
130
+ # with the LoadBalancer. The name must be unique within your set of
131
+ # LoadBalancers.
132
+ # * +:listeners+ - *required* - (Array<Hash>) A list of the following
133
+ # tuples: LoadBalancerPort, InstancePort, and Protocol.
134
+ # * +:protocol+ - *required* - (String) Specifies the LoadBalancer
135
+ # transport protocol to use for routing - TCP or HTTP. This property
136
+ # cannot be modified for the life of the LoadBalancer.
137
+ # * +:load_balancer_port+ - *required* - (Integer) Specifies the
138
+ # external LoadBalancer port number. This property cannot be modified
139
+ # for the life of the LoadBalancer.
140
+ # * +:instance_protocol+ - (String)
141
+ # * +:instance_port+ - *required* - (Integer) Specifies the TCP port on
142
+ # which the instance server is listening. This property cannot be
143
+ # modified for the life of the LoadBalancer.
144
+ # * +:ssl_certificate_id+ - (String) The ID of the SSL certificate
145
+ # chain to use. For more information on SSL certificates, see
146
+ # Managing Keys and Certificates in the AWS Identity and Access
147
+ # Management documentation.
148
+ # * +:availability_zones+ - *required* - (Array<String>) A list of
149
+ # Availability Zones. At least one Availability Zone must be specified.
150
+ # Specified Availability Zones must be in the same EC2 Region as the
151
+ # LoadBalancer. Traffic will be equally distributed across all zones.
152
+ # This list can be modified after the creation of the LoadBalancer.
153
+ #
154
+ # === Response Structure:
155
+ #
156
+ # * +:dns_name+ - (String)
157
+ #
158
+ # @return [Core::Response]
159
+ #
160
+ define_client_method :create_load_balancer, 'CreateLoadBalancer'
161
+
162
+ # Calls the CreateLoadBalancerListeners API operation.
163
+ # @method create_load_balancer_listeners(options = {})
164
+ #
165
+ # === Options:
166
+ #
167
+ # * +:load_balancer_name+ - *required* - (String) The name of the new
168
+ # LoadBalancer. The name must be unique within your AWS account.
169
+ # * +:listeners+ - *required* - (Array<Hash>) A list of LoadBalancerPort,
170
+ # InstancePort, Protocol, and SSLCertificateId items.
171
+ # * +:protocol+ - *required* - (String) Specifies the LoadBalancer
172
+ # transport protocol to use for routing - TCP or HTTP. This property
173
+ # cannot be modified for the life of the LoadBalancer.
174
+ # * +:load_balancer_port+ - *required* - (Integer) Specifies the
175
+ # external LoadBalancer port number. This property cannot be modified
176
+ # for the life of the LoadBalancer.
177
+ # * +:instance_protocol+ - (String)
178
+ # * +:instance_port+ - *required* - (Integer) Specifies the TCP port on
179
+ # which the instance server is listening. This property cannot be
180
+ # modified for the life of the LoadBalancer.
181
+ # * +:ssl_certificate_id+ - (String) The ID of the SSL certificate
182
+ # chain to use. For more information on SSL certificates, see
183
+ # Managing Keys and Certificates in the AWS Identity and Access
184
+ # Management documentation.
185
+ #
186
+ # === Response Structure:
187
+ #
188
+ # This method returns no response data.
189
+ #
190
+ # @return [Core::Response]
191
+ #
192
+ define_client_method :create_load_balancer_listeners, 'CreateLoadBalancerListeners'
193
+
194
+ # Calls the CreateLoadBalancerPolicy API operation.
195
+ # @method create_load_balancer_policy(options = {})
196
+ #
197
+ # === Options:
198
+ #
199
+ # * +:load_balancer_name+ - *required* - (String)
200
+ # * +:policy_name+ - *required* - (String)
201
+ # * +:policy_type_name+ - *required* - (String)
202
+ # * +:policy_attributes+ - (Array<Hash>)
203
+ # * +:attribute_name+ - (String)
204
+ # * +:attribute_value+ - (String)
205
+ #
206
+ # === Response Structure:
207
+ #
208
+ # This method returns no response data.
209
+ #
210
+ # @return [Core::Response]
211
+ #
212
+ define_client_method :create_load_balancer_policy, 'CreateLoadBalancerPolicy'
213
+
214
+ # Calls the DeleteLoadBalancer API operation.
215
+ # @method delete_load_balancer(options = {})
216
+ #
217
+ # === Options:
218
+ #
219
+ # * +:load_balancer_name+ - *required* - (String) The name associated
220
+ # with the LoadBalancer. The name must be unique within the client AWS
221
+ # account.
222
+ #
223
+ # === Response Structure:
224
+ #
225
+ # This method returns no response data.
226
+ #
227
+ # @return [Core::Response]
228
+ #
229
+ define_client_method :delete_load_balancer, 'DeleteLoadBalancer'
230
+
231
+ # Calls the DeleteLoadBalancerListeners API operation.
232
+ # @method delete_load_balancer_listeners(options = {})
233
+ #
234
+ # === Options:
235
+ #
236
+ # * +:load_balancer_name+ - *required* - (String) The mnemonic name
237
+ # associated with the LoadBalancer.
238
+ # * +:load_balancer_ports+ - *required* - (Array<Integer>) The client
239
+ # port number(s) of the LoadBalancerListener(s) to be removed.
240
+ #
241
+ # === Response Structure:
242
+ #
243
+ # This method returns no response data.
244
+ #
245
+ # @return [Core::Response]
246
+ #
247
+ define_client_method :delete_load_balancer_listeners, 'DeleteLoadBalancerListeners'
248
+
249
+ # Calls the DeleteLoadBalancerPolicy API operation.
250
+ # @method delete_load_balancer_policy(options = {})
251
+ #
252
+ # === Options:
253
+ #
254
+ # * +:load_balancer_name+ - *required* - (String) The mnemonic name
255
+ # associated with the LoadBalancer. The name must be unique within your
256
+ # AWS account.
257
+ # * +:policy_name+ - *required* - (String) The mnemonic name for the
258
+ # policy being deleted.
259
+ #
260
+ # === Response Structure:
261
+ #
262
+ # This method returns no response data.
263
+ #
264
+ # @return [Core::Response]
265
+ #
266
+ define_client_method :delete_load_balancer_policy, 'DeleteLoadBalancerPolicy'
267
+
268
+ # Calls the DeregisterInstancesFromLoadBalancer API operation.
269
+ # @method deregister_instances_from_load_balancer(options = {})
270
+ #
271
+ # === Options:
272
+ #
273
+ # * +:load_balancer_name+ - *required* - (String) The name associated
274
+ # with the LoadBalancer. The name must be unique within the client AWS
275
+ # account.
276
+ # * +:instances+ - *required* - (Array<Hash>) A list of EC2 instance IDs
277
+ # consisting of all instances to be deregistered.
278
+ # * +:instance_id+ - (String) Provides an EC2 instance ID.
279
+ #
280
+ # === Response Structure:
281
+ #
282
+ # * +:instances+ - (Array<Hash>)
283
+ # * +:instance_id+ - (String)
284
+ #
285
+ # @return [Core::Response]
286
+ #
287
+ define_client_method :deregister_instances_from_load_balancer, 'DeregisterInstancesFromLoadBalancer'
288
+
289
+ # Calls the DescribeInstanceHealth API operation.
290
+ # @method describe_instance_health(options = {})
291
+ #
292
+ # === Options:
293
+ #
294
+ # * +:load_balancer_name+ - *required* - (String) The name associated
295
+ # with the LoadBalancer. The name must be unique within the client AWS
296
+ # account.
297
+ # * +:instances+ - (Array<Hash>) A list of instance IDs whose states are
298
+ # being queried.
299
+ # * +:instance_id+ - (String) Provides an EC2 instance ID.
300
+ #
301
+ # === Response Structure:
302
+ #
303
+ # * +:instance_states+ - (Array<Hash>)
304
+ # * +:instance_id+ - (String)
305
+ # * +:state+ - (String)
306
+ # * +:reason_code+ - (String)
307
+ # * +:description+ - (String)
308
+ #
309
+ # @return [Core::Response]
310
+ #
311
+ define_client_method :describe_instance_health, 'DescribeInstanceHealth'
312
+
313
+ # Calls the DescribeLoadBalancerPolicies API operation.
314
+ # @method describe_load_balancer_policies(options = {})
315
+ #
316
+ # === Options:
317
+ #
318
+ # * +:load_balancer_name+ - (String)
319
+ # * +:policy_names+ - (Array<String>)
320
+ #
321
+ # === Response Structure:
322
+ #
323
+ # * +:policy_descriptions+ - (Array<Hash>)
324
+ # * +:policy_name+ - (String)
325
+ # * +:policy_type_name+ - (String)
326
+ # * +:policy_attribute_descriptions+ - (Array<Hash>)
327
+ # * +:attribute_name+ - (String)
328
+ # * +:attribute_value+ - (String)
329
+ #
330
+ # @return [Core::Response]
331
+ #
332
+ define_client_method :describe_load_balancer_policies, 'DescribeLoadBalancerPolicies'
333
+
334
+ # Calls the DescribeLoadBalancerPolicyTypes API operation.
335
+ # @method describe_load_balancer_policy_types(options = {})
336
+ #
337
+ # === Options:
338
+ #
339
+ # * +:policy_type_names+ - (Array<String>)
340
+ #
341
+ # === Response Structure:
342
+ #
343
+ # * +:policy_type_descriptions+ - (Array<Hash>)
344
+ # * +:policy_type_name+ - (String)
345
+ # * +:description+ - (String)
346
+ # * +:policy_attribute_type_descriptions+ - (Array<Hash>)
347
+ # * +:attribute_name+ - (String)
348
+ # * +:attribute_type+ - (String)
349
+ # * +:description+ - (String)
350
+ # * +:default_value+ - (String)
351
+ # * +:cardinality+ - (String)
352
+ #
353
+ # @return [Core::Response]
354
+ #
355
+ define_client_method :describe_load_balancer_policy_types, 'DescribeLoadBalancerPolicyTypes'
356
+
357
+ # Calls the DescribeLoadBalancers API operation.
358
+ # @method describe_load_balancers(options = {})
359
+ #
360
+ # === Options:
361
+ #
362
+ # * +:load_balancer_names+ - (Array<String>) A list of names associated
363
+ # with the LoadBalancers at creation time.
364
+ #
365
+ # === Response Structure:
366
+ #
367
+ # * +:load_balancer_descriptions+ - (Array<Hash>)
368
+ # * +:load_balancer_name+ - (String)
369
+ # * +:dns_name+ - (String)
370
+ # * +:canonical_hosted_zone_name+ - (String)
371
+ # * +:canonical_hosted_zone_name_id+ - (String)
372
+ # * +:listener_descriptions+ - (Array<Hash>)
373
+ # * +:listener+ - (Hash)
374
+ # * +:protocol+ - (String)
375
+ # * +:load_balancer_port+ - (Integer)
376
+ # * +:instance_protocol+ - (String)
377
+ # * +:instance_port+ - (Integer)
378
+ # * +:ssl_certificate_id+ - (String)
379
+ # * +:policy_names+ - (Array<String>)
380
+ # * +:policies+ - (Hash)
381
+ # * +:app_cookie_stickiness_policies+ - (Array<Hash>)
382
+ # * +:policy_name+ - (String)
383
+ # * +:cookie_name+ - (String)
384
+ # * +:lb_cookie_stickiness_policies+ - (Array<Hash>)
385
+ # * +:policy_name+ - (String)
386
+ # * +:cookie_expiration_period+ - (Integer)
387
+ # * +:other_policies+ - (Array<String>)
388
+ # * +:backend_server_descriptions+ - (Array<Hash>)
389
+ # * +:instance_port+ - (Integer)
390
+ # * +:policy_names+ - (Array<String>)
391
+ # * +:availability_zones+ - (Array<String>)
392
+ # * +:instances+ - (Array<Hash>)
393
+ # * +:instance_id+ - (String)
394
+ # * +:health_check+ - (Hash)
395
+ # * +:target+ - (String)
396
+ # * +:interval+ - (Integer)
397
+ # * +:timeout+ - (Integer)
398
+ # * +:unhealthy_threshold+ - (Integer)
399
+ # * +:healthy_threshold+ - (Integer)
400
+ # * +:source_security_group+ - (Hash)
401
+ # * +:owner_alias+ - (String)
402
+ # * +:group_name+ - (String)
403
+ # * +:created_time+ - (Time)
404
+ #
405
+ # @return [Core::Response]
406
+ #
407
+ define_client_method :describe_load_balancers, 'DescribeLoadBalancers'
408
+
409
+ # Calls the DisableAvailabilityZonesForLoadBalancer API operation.
410
+ # @method disable_availability_zones_for_load_balancer(options = {})
411
+ #
412
+ # === Options:
413
+ #
414
+ # * +:load_balancer_name+ - *required* - (String) The name associated
415
+ # with the LoadBalancer. The name must be unique within the client AWS
416
+ # account.
417
+ # * +:availability_zones+ - *required* - (Array<String>) A list of
418
+ # Availability Zones to be removed from the LoadBalancer. There must be
419
+ # at least one Availability Zone registered with a LoadBalancer at all
420
+ # times. The client cannot remove all the Availability Zones from a
421
+ # LoadBalancer. Specified Availability Zones must be in the same
422
+ # Region.
423
+ #
424
+ # === Response Structure:
425
+ #
426
+ # * +:availability_zones+ - (Array<String>)
427
+ #
428
+ # @return [Core::Response]
429
+ #
430
+ define_client_method :disable_availability_zones_for_load_balancer, 'DisableAvailabilityZonesForLoadBalancer'
431
+
432
+ # Calls the EnableAvailabilityZonesForLoadBalancer API operation.
433
+ # @method enable_availability_zones_for_load_balancer(options = {})
434
+ #
435
+ # === Options:
436
+ #
437
+ # * +:load_balancer_name+ - *required* - (String) The name associated
438
+ # with the LoadBalancer. The name must be unique within the client AWS
439
+ # account.
440
+ # * +:availability_zones+ - *required* - (Array<String>) A list of new
441
+ # Availability Zones for the LoadBalancer. Each Availability Zone must
442
+ # be in the same Region as the LoadBalancer.
443
+ #
444
+ # === Response Structure:
445
+ #
446
+ # * +:availability_zones+ - (Array<String>)
447
+ #
448
+ # @return [Core::Response]
449
+ #
450
+ define_client_method :enable_availability_zones_for_load_balancer, 'EnableAvailabilityZonesForLoadBalancer'
451
+
452
+ # Calls the RegisterInstancesWithLoadBalancer API operation.
453
+ # @method register_instances_with_load_balancer(options = {})
454
+ #
455
+ # === Options:
456
+ #
457
+ # * +:load_balancer_name+ - *required* - (String) The name associated
458
+ # with the LoadBalancer. The name must be unique within the client AWS
459
+ # account.
460
+ # * +:instances+ - *required* - (Array<Hash>) A list of instances IDs
461
+ # that should be registered with the LoadBalancer.
462
+ # * +:instance_id+ - (String) Provides an EC2 instance ID.
463
+ #
464
+ # === Response Structure:
465
+ #
466
+ # * +:instances+ - (Array<Hash>)
467
+ # * +:instance_id+ - (String)
468
+ #
469
+ # @return [Core::Response]
470
+ #
471
+ define_client_method :register_instances_with_load_balancer, 'RegisterInstancesWithLoadBalancer'
472
+
473
+ # Calls the SetLoadBalancerListenerSSLCertificate API operation.
474
+ # @method set_load_balancer_listener_ssl_certificate(options = {})
475
+ #
476
+ # === Options:
477
+ #
478
+ # * +:load_balancer_name+ - *required* - (String) The name of the the
479
+ # LoadBalancer.
480
+ # * +:load_balancer_port+ - *required* - (Integer) The port that uses the
481
+ # specified SSL certificate.
482
+ # * +:ssl_certificate_id+ - *required* - (String) The ID of the SSL
483
+ # certificate chain to use. For more information on SSL certificates,
484
+ # see Managing Server Certificates in the AWS Identity and Access
485
+ # Management documentation.
486
+ #
487
+ # === Response Structure:
488
+ #
489
+ # This method returns no response data.
490
+ #
491
+ # @return [Core::Response]
492
+ #
493
+ define_client_method :set_load_balancer_listener_ssl_certificate, 'SetLoadBalancerListenerSSLCertificate'
494
+
495
+ # Calls the SetLoadBalancerPoliciesForBackendServer API operation.
496
+ # @method set_load_balancer_policies_for_backend_server(options = {})
497
+ #
498
+ # === Options:
499
+ #
500
+ # * +:load_balancer_name+ - *required* - (String)
501
+ # * +:instance_port+ - *required* - (Integer)
502
+ # * +:policy_names+ - *required* - (Array<String>)
503
+ #
504
+ # === Response Structure:
505
+ #
506
+ # This method returns no response data.
507
+ #
508
+ # @return [Core::Response]
509
+ #
510
+ define_client_method :set_load_balancer_policies_for_backend_server, 'SetLoadBalancerPoliciesForBackendServer'
511
+
512
+ # Calls the SetLoadBalancerPoliciesOfListener API operation.
513
+ # @method set_load_balancer_policies_of_listener(options = {})
514
+ #
515
+ # === Options:
516
+ #
517
+ # * +:load_balancer_name+ - *required* - (String) The name associated
518
+ # with the LoadBalancer. The name must be unique within the client AWS
519
+ # account.
520
+ # * +:load_balancer_port+ - *required* - (Integer) The external port of
521
+ # the LoadBalancer with which this policy has to be associated.
522
+ # * +:policy_names+ - *required* - (Array<String>) List of policies to be
523
+ # associated with the listener. Currently this list can have at most
524
+ # one policy. If the list is empty, the current policy is removed from
525
+ # the listener.
526
+ #
527
+ # === Response Structure:
528
+ #
529
+ # This method returns no response data.
530
+ #
531
+ # @return [Core::Response]
532
+ #
533
+ define_client_method :set_load_balancer_policies_of_listener, 'SetLoadBalancerPoliciesOfListener'
534
+
535
+ ## end client methods ##
536
+
537
+ end
538
+ end
539
+ end