aws-sdk-core 2.0.0.rc1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (417) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +7 -0
  3. data/.simplecov +6 -0
  4. data/.travis.yml +12 -0
  5. data/.yardopts +11 -0
  6. data/Gemfile +26 -0
  7. data/LICENSE.txt +12 -0
  8. data/README.md +169 -0
  9. data/Rakefile +15 -0
  10. data/apis/AutoScaling-2011-01-01.json +1852 -0
  11. data/apis/CloudFormation-2010-05-15.json +981 -0
  12. data/apis/CloudFront-2012-05-05.json +3861 -0
  13. data/apis/CloudFront-2013-05-12.json +4593 -0
  14. data/apis/CloudFront-2013-08-26.json +4849 -0
  15. data/apis/CloudSearch-2011-02-01.json +2080 -0
  16. data/apis/CloudWatch-2010-08-01.json +1206 -0
  17. data/apis/DataPipeline-2012-10-29.json +901 -0
  18. data/apis/DirectConnect-2012-10-25.json +825 -0
  19. data/apis/DynamoDB-2011-12-05.json +2857 -0
  20. data/apis/DynamoDB-2012-08-10.json +3127 -0
  21. data/apis/EC2-2013-06-15.json +13600 -0
  22. data/apis/EC2-2013-10-01.json +14574 -0
  23. data/apis/EMR-2009-03-31.json +957 -0
  24. data/apis/ElastiCache-2012-11-15.json +2921 -0
  25. data/apis/ElastiCache-2013-06-15.json +3586 -0
  26. data/apis/ElasticBeanstalk-2010-12-01.json +2225 -0
  27. data/apis/ElasticLoadBalancing-2012-06-01.json +1215 -0
  28. data/apis/ElasticTranscoder-2012-09-25.json +3692 -0
  29. data/apis/Glacier-2012-06-01.json +1058 -0
  30. data/apis/IAM-2010-05-08.json +2863 -0
  31. data/apis/ImportExport-2010-06-01.json +328 -0
  32. data/apis/OpsWorks-2013-02-18.json +3546 -0
  33. data/apis/RDS-2013-01-10.json +6772 -0
  34. data/apis/RDS-2013-02-12.json +7151 -0
  35. data/apis/RDS-2013-05-15.json +7809 -0
  36. data/apis/Redshift-2012-12-01.json +4180 -0
  37. data/apis/Route53-2012-12-12.json +1018 -0
  38. data/apis/S3-2006-03-01.json +3787 -0
  39. data/apis/SDB-2009-04-15.json +539 -0
  40. data/apis/SES-2010-12-01.json +678 -0
  41. data/apis/SNS-2010-03-31.json +870 -0
  42. data/apis/SQS-2012-11-05.json +798 -0
  43. data/apis/STS-2011-06-15.json +352 -0
  44. data/apis/SWF-2012-01-25.json +5451 -0
  45. data/apis/StorageGateway-2012-06-30.json +1696 -0
  46. data/apis/Support-2013-04-15.json +794 -0
  47. data/apis/configuration/endpoints.json +1337 -0
  48. data/apis/source/autoscaling-2011-01-01.json +3215 -0
  49. data/apis/source/autoscaling-2011-01-01.paginators.json +52 -0
  50. data/apis/source/cloudformation-2010-05-15.json +1260 -0
  51. data/apis/source/cloudformation-2010-05-15.paginators.json +24 -0
  52. data/apis/source/cloudfront-2012-05-05.json +6588 -0
  53. data/apis/source/cloudfront-2012-05-05.paginators.json +28 -0
  54. data/apis/source/cloudfront-2013-05-12.json +7614 -0
  55. data/apis/source/cloudfront-2013-05-12.paginators.json +28 -0
  56. data/apis/source/cloudfront-2013-08-26.json +8016 -0
  57. data/apis/source/cloudfront-2013-08-26.paginators.json +28 -0
  58. data/apis/source/cloudsearch-2011-02-01.json +3585 -0
  59. data/apis/source/cloudsearch-2011-02-01.paginators.json +13 -0
  60. data/apis/source/datapipeline-2012-10-29.json +2144 -0
  61. data/apis/source/datapipeline-2012-10-29.paginators.json +25 -0
  62. data/apis/source/directconnect-2012-10-25.json +1271 -0
  63. data/apis/source/directconnect-2012-10-25.paginators.json +16 -0
  64. data/apis/source/dynamodb-2011-12-05.json +4380 -0
  65. data/apis/source/dynamodb-2011-12-05.paginators.json +24 -0
  66. data/apis/source/dynamodb-2012-08-10.json +4839 -0
  67. data/apis/source/dynamodb-2012-08-10.paginators.json +24 -0
  68. data/apis/source/ec2-2013-02-01.json +18820 -0
  69. data/apis/source/ec2-2013-02-01.paginators.json +115 -0
  70. data/apis/source/ec2-2013-06-15.json +18820 -0
  71. data/apis/source/ec2-2013-06-15.paginators.json +115 -0
  72. data/apis/source/ec2-2013-10-01.json +19885 -0
  73. data/apis/source/ec2-2013-10-01.paginators.json +115 -0
  74. data/apis/source/elasticache-2012-11-15.json +4403 -0
  75. data/apis/source/elasticache-2012-11-15.paginators.json +64 -0
  76. data/apis/source/elasticache-2013-06-15.json +5421 -0
  77. data/apis/source/elasticache-2013-06-15.paginators.json +64 -0
  78. data/apis/source/elasticbeanstalk-2010-12-01.json +3151 -0
  79. data/apis/source/elasticbeanstalk-2010-12-01.paginators.json +25 -0
  80. data/apis/source/elasticloadbalancing-2012-06-01.json +2041 -0
  81. data/apis/source/elasticloadbalancing-2012-06-01.paginators.json +18 -0
  82. data/apis/source/elasticmapreduce-2009-03-31.json +1478 -0
  83. data/apis/source/elasticmapreduce-2009-03-31.paginators.json +7 -0
  84. data/apis/source/elastictranscoder-2012-09-25.json +6148 -0
  85. data/apis/source/elastictranscoder-2012-09-25.paginators.json +20 -0
  86. data/apis/source/email-2010-12-01.json +892 -0
  87. data/apis/source/email-2010-12-01.paginators.json +13 -0
  88. data/apis/source/glacier-2012-06-01.json +3147 -0
  89. data/apis/source/glacier-2012-06-01.paginators.json +28 -0
  90. data/apis/source/iam-2010-05-08.json +5857 -0
  91. data/apis/source/iam-2010-05-08.paginators.json +116 -0
  92. data/apis/source/importexport-2010-06-01.json +876 -0
  93. data/apis/source/importexport-2010-06-01.paginators.json +10 -0
  94. data/apis/source/monitoring-2010-08-01.json +1910 -0
  95. data/apis/source/monitoring-2010-08-01.paginators.json +24 -0
  96. data/apis/source/opsworks-2013-02-18.json +5848 -0
  97. data/apis/source/opsworks-2013-02-18.paginators.json +46 -0
  98. data/apis/source/rds-2013-01-10.json +9283 -0
  99. data/apis/source/rds-2013-01-10.paginators.json +105 -0
  100. data/apis/source/rds-2013-02-12.json +9777 -0
  101. data/apis/source/rds-2013-02-12.paginators.json +105 -0
  102. data/apis/source/rds-2013-05-15.json +10618 -0
  103. data/apis/source/rds-2013-05-15.paginators.json +105 -0
  104. data/apis/source/redshift-2012-12-01.json +5742 -0
  105. data/apis/source/redshift-2012-12-01.paginators.json +74 -0
  106. data/apis/source/route53-2012-12-12.json +2067 -0
  107. data/apis/source/route53-2012-12-12.paginators.json +33 -0
  108. data/apis/source/s3-2006-03-01.json +4261 -0
  109. data/apis/source/s3-2006-03-01.paginators.json +46 -0
  110. data/apis/source/sdb-2009-04-15.json +1145 -0
  111. data/apis/source/sdb-2009-04-15.paginators.json +15 -0
  112. data/apis/source/sns-2010-03-31.json +2234 -0
  113. data/apis/source/sns-2010-03-31.paginators.json +19 -0
  114. data/apis/source/sqs-2012-11-05.json +1162 -0
  115. data/apis/source/sqs-2012-11-05.paginators.json +7 -0
  116. data/apis/source/storagegateway-2012-06-30.json +9487 -0
  117. data/apis/source/storagegateway-2012-06-30.paginators.json +28 -0
  118. data/apis/source/sts-2011-06-15.json +627 -0
  119. data/apis/source/support-2013-04-15.json +1261 -0
  120. data/apis/source/support-2013-04-15.paginators.json +31 -0
  121. data/apis/source/swf-2012-01-25.json +8744 -0
  122. data/apis/source/swf-2012-01-25.paginators.json +46 -0
  123. data/aws-sdk-core.gemspec +21 -0
  124. data/bin/aws.rb +156 -0
  125. data/doc-src/images/lastnode.png +0 -0
  126. data/doc-src/images/node.png +0 -0
  127. data/doc-src/images/vline.png +0 -0
  128. data/doc-src/plugins/apis.rb +205 -0
  129. data/doc-src/templates/default/fulldoc/html/css/common.css +90 -0
  130. data/doc-src/templates/default/fulldoc/html/js/tabs.js +21 -0
  131. data/doc-src/templates/default/fulldoc/html/setup.rb +61 -0
  132. data/doc-src/templates/default/layout/html/footer.erb +29 -0
  133. data/doc-src/templates/default/layout/html/setup.rb +3 -0
  134. data/features/autoscaling/client.feature +22 -0
  135. data/features/autoscaling/setup.rb +6 -0
  136. data/features/cloudformation/client.feature +18 -0
  137. data/features/cloudformation/setup.rb +6 -0
  138. data/features/cloudfront/client.feature +21 -0
  139. data/features/cloudfront/setup.rb +6 -0
  140. data/features/cloudsearch/client.feature +18 -0
  141. data/features/cloudsearch/setup.rb +6 -0
  142. data/features/cloudwatch/client.feature +21 -0
  143. data/features/cloudwatch/setup.rb +6 -0
  144. data/features/common/step_definitions.rb +65 -0
  145. data/features/datapipeline/client.feature +18 -0
  146. data/features/datapipeline/setup.rb +6 -0
  147. data/features/directconnect/client.feature +18 -0
  148. data/features/directconnect/setup.rb +6 -0
  149. data/features/dynamodb/client.feature +21 -0
  150. data/features/dynamodb/setup.rb +8 -0
  151. data/features/dynamodb/simplified.feature +32 -0
  152. data/features/dynamodb/step_definitions.rb +3 -0
  153. data/features/ec2/client.feature +21 -0
  154. data/features/ec2/setup.rb +6 -0
  155. data/features/ec2/step_definitions.rb +19 -0
  156. data/features/elasticache/client.feature +18 -0
  157. data/features/elasticache/setup.rb +6 -0
  158. data/features/elasticbeanstalk/client.feature +18 -0
  159. data/features/elasticbeanstalk/setup.rb +6 -0
  160. data/features/elasticloadbalancing/client.feature +18 -0
  161. data/features/elasticloadbalancing/setup.rb +6 -0
  162. data/features/elastictranscoder/client.feature +18 -0
  163. data/features/elastictranscoder/setup.rb +6 -0
  164. data/features/emr/client.feature +18 -0
  165. data/features/emr/setup.rb +6 -0
  166. data/features/env.rb +23 -0
  167. data/features/glacier/client.feature +28 -0
  168. data/features/glacier/setup.rb +16 -0
  169. data/features/glacier/step_definitions.rb +25 -0
  170. data/features/iam/client.feature +18 -0
  171. data/features/iam/setup.rb +6 -0
  172. data/features/importexport/client.feature +18 -0
  173. data/features/importexport/setup.rb +6 -0
  174. data/features/opsworks/client.feature +18 -0
  175. data/features/opsworks/setup.rb +6 -0
  176. data/features/rds/client.feature +18 -0
  177. data/features/rds/setup.rb +6 -0
  178. data/features/redshift/client.feature +18 -0
  179. data/features/redshift/setup.rb +6 -0
  180. data/features/route53/client.feature +18 -0
  181. data/features/route53/setup.rb +6 -0
  182. data/features/s3/buckets.feature +22 -0
  183. data/features/s3/objects.feature +18 -0
  184. data/features/s3/setup.rb +17 -0
  185. data/features/s3/step_definitions.rb +66 -0
  186. data/features/s3/test.png +0 -0
  187. data/features/sdb/client.feature +18 -0
  188. data/features/sdb/setup.rb +6 -0
  189. data/features/ses/client.feature +18 -0
  190. data/features/ses/setup.rb +6 -0
  191. data/features/sns/client.feature +18 -0
  192. data/features/sns/setup.rb +6 -0
  193. data/features/sqs/client.feature +23 -0
  194. data/features/sqs/setup.rb +10 -0
  195. data/features/sqs/step_definitions.rb +18 -0
  196. data/features/storagegateway/client.feature +18 -0
  197. data/features/storagegateway/setup.rb +6 -0
  198. data/features/sts/client.feature +18 -0
  199. data/features/sts/setup.rb +6 -0
  200. data/features/swf/client.feature +21 -0
  201. data/features/swf/setup.rb +6 -0
  202. data/integration-test-config.json.sample +3 -0
  203. data/lib/aws-sdk-core.rb +11 -0
  204. data/lib/aws.rb +175 -0
  205. data/lib/aws/api/base_translator.rb +72 -0
  206. data/lib/aws/api/doc_example.rb +116 -0
  207. data/lib/aws/api/documentor.rb +140 -0
  208. data/lib/aws/api/operation_translator.rb +77 -0
  209. data/lib/aws/api/service_namer.rb +40 -0
  210. data/lib/aws/api/service_translators/cloud_front.rb +19 -0
  211. data/lib/aws/api/service_translators/dynamo_db.rb +7 -0
  212. data/lib/aws/api/service_translators/glacier.rb +37 -0
  213. data/lib/aws/api/service_translators/import_export.rb +15 -0
  214. data/lib/aws/api/service_translators/route53.rb +23 -0
  215. data/lib/aws/api/service_translators/s3.rb +11 -0
  216. data/lib/aws/api/service_translators/sqs.rb +10 -0
  217. data/lib/aws/api/service_translators/swf.rb +7 -0
  218. data/lib/aws/api/shape_translator.rb +96 -0
  219. data/lib/aws/api/translator.rb +150 -0
  220. data/lib/aws/api/visitor.rb +32 -0
  221. data/lib/aws/credentials.rb +35 -0
  222. data/lib/aws/error_handler.rb +48 -0
  223. data/lib/aws/errors.rb +83 -0
  224. data/lib/aws/json/builder.rb +77 -0
  225. data/lib/aws/json/error_parser.rb +20 -0
  226. data/lib/aws/json/parser.rb +67 -0
  227. data/lib/aws/json/serializer.rb +15 -0
  228. data/lib/aws/plugins/credentials.rb +48 -0
  229. data/lib/aws/plugins/dynamodb_extended_retries.rb +22 -0
  230. data/lib/aws/plugins/glacier_api_version.rb +19 -0
  231. data/lib/aws/plugins/glacier_checksums.rb +100 -0
  232. data/lib/aws/plugins/global_configuration.rb +79 -0
  233. data/lib/aws/plugins/json_protocol.rb +30 -0
  234. data/lib/aws/plugins/json_rpc_headers.rb +34 -0
  235. data/lib/aws/plugins/query_protocol.rb +11 -0
  236. data/lib/aws/plugins/regional_endpoint.rb +37 -0
  237. data/lib/aws/plugins/retry_errors.rb +149 -0
  238. data/lib/aws/plugins/s3_bucket_dns.rb +78 -0
  239. data/lib/aws/plugins/s3_complete_multipart_upload_fix.rb +38 -0
  240. data/lib/aws/plugins/s3_get_bucket_location_fix.rb +21 -0
  241. data/lib/aws/plugins/s3_md5s.rb +61 -0
  242. data/lib/aws/plugins/s3_redirects.rb +38 -0
  243. data/lib/aws/plugins/s3_regional_endpoint.rb +19 -0
  244. data/lib/aws/plugins/s3_signer.rb +9 -0
  245. data/lib/aws/plugins/signature_v2.rb +9 -0
  246. data/lib/aws/plugins/signature_v3.rb +9 -0
  247. data/lib/aws/plugins/signature_v4.rb +29 -0
  248. data/lib/aws/plugins/sqs_queue_urls.rb +33 -0
  249. data/lib/aws/plugins/swf_read_timeouts.rb +23 -0
  250. data/lib/aws/plugins/user_agent.rb +32 -0
  251. data/lib/aws/plugins/xml_protocol.rb +11 -0
  252. data/lib/aws/query/builder.rb +102 -0
  253. data/lib/aws/query/param.rb +43 -0
  254. data/lib/aws/query/param_list.rb +91 -0
  255. data/lib/aws/query/serializer.rb +24 -0
  256. data/lib/aws/request_handler.rb +39 -0
  257. data/lib/aws/response_handler.rb +38 -0
  258. data/lib/aws/service.rb +237 -0
  259. data/lib/aws/signers/base.rb +29 -0
  260. data/lib/aws/signers/handler.rb +18 -0
  261. data/lib/aws/signers/s3.rb +162 -0
  262. data/lib/aws/signers/v2.rb +48 -0
  263. data/lib/aws/signers/v3.rb +34 -0
  264. data/lib/aws/signers/v4.rb +142 -0
  265. data/lib/aws/structure.rb +38 -0
  266. data/lib/aws/timestamp_formatter.rb +16 -0
  267. data/lib/aws/util.rb +38 -0
  268. data/lib/aws/version.rb +3 -0
  269. data/lib/aws/xml/builder.rb +134 -0
  270. data/lib/aws/xml/error_parser.rb +24 -0
  271. data/lib/aws/xml/parser.rb +147 -0
  272. data/lib/aws/xml/serializer.rb +16 -0
  273. data/spec/aws/credentials_spec.rb +39 -0
  274. data/spec/aws/iam_spec.rb +17 -0
  275. data/spec/aws/json/builder_spec.rb +183 -0
  276. data/spec/aws/json/parser_spec.rb +238 -0
  277. data/spec/aws/operations_spec.rb +145 -0
  278. data/spec/aws/plugins/credentials_spec.rb +76 -0
  279. data/spec/aws/plugins/global_configuration_spec.rb +56 -0
  280. data/spec/aws/plugins/region_endpoint_spec.rb +77 -0
  281. data/spec/aws/plugins/retry_errors_spec.rb +253 -0
  282. data/spec/aws/query/builder_spec.rb +361 -0
  283. data/spec/aws/query/param_list_spec.rb +80 -0
  284. data/spec/aws/query/param_spec.rb +59 -0
  285. data/spec/aws/service_spec.rb +247 -0
  286. data/spec/aws/signers/v4_spec.rb +141 -0
  287. data/spec/aws/structure_spec.rb +103 -0
  288. data/spec/aws/xml/builder_spec.rb +404 -0
  289. data/spec/aws/xml/parser_spec.rb +716 -0
  290. data/spec/aws_spec.rb +89 -0
  291. data/spec/fixtures/api/swf.json +100 -0
  292. data/spec/fixtures/operations/cloudfront/list_distributions.yml +195 -0
  293. data/spec/fixtures/operations/cloudfront/max_items.yml +12 -0
  294. data/spec/fixtures/operations/dynamodb/error_parsing.yml +13 -0
  295. data/spec/fixtures/operations/glacier/error_parsing.yml +10 -0
  296. data/spec/fixtures/operations/glacier/list_vaults.yml +24 -0
  297. data/spec/fixtures/operations/iam/result_wrapped_elements.yml +31 -0
  298. data/spec/fixtures/operations/s3/304_response.yml +12 -0
  299. data/spec/fixtures/operations/s3/400_response.yml +12 -0
  300. data/spec/fixtures/operations/s3/403_response.yml +12 -0
  301. data/spec/fixtures/operations/s3/404_response.yml +12 -0
  302. data/spec/fixtures/operations/s3/comlete_multipart_upload_error.yml +18 -0
  303. data/spec/fixtures/operations/s3/create_bucket_with_location_constraint.yml +25 -0
  304. data/spec/fixtures/operations/s3/create_bucket_without_location_constraint.yml +9 -0
  305. data/spec/fixtures/operations/s3/delete_objects.yml +54 -0
  306. data/spec/fixtures/operations/s3/error_parsing.yml +17 -0
  307. data/spec/fixtures/operations/s3/get_bucket_location.yml +17 -0
  308. data/spec/fixtures/operations/s3/get_bucket_location_classic.yml +17 -0
  309. data/spec/fixtures/operations/s3/head_bucket_with_dns_incompatible_name.yml +12 -0
  310. data/spec/fixtures/operations/s3/head_object.yml +50 -0
  311. data/spec/fixtures/operations/s3/list_buckets.yml +41 -0
  312. data/spec/fixtures/operations/s3/md5_checksum_disabled.yml +10 -0
  313. data/spec/fixtures/operations/s3/md5_checksum_enabled.yml +8 -0
  314. data/spec/fixtures/operations/swf/list_domains.yml +20 -0
  315. data/spec/spec_helper.rb +55 -0
  316. data/tasks/apis.rake +51 -0
  317. data/tasks/docs.rake +59 -0
  318. data/tasks/test.rake +39 -0
  319. data/vendor/seahorse/.gitignore +5 -0
  320. data/vendor/seahorse/.simplecov +4 -0
  321. data/vendor/seahorse/.yardopts +10 -0
  322. data/vendor/seahorse/Gemfile +20 -0
  323. data/vendor/seahorse/LICENSE.txt +12 -0
  324. data/vendor/seahorse/README.md +129 -0
  325. data/vendor/seahorse/Rakefile +7 -0
  326. data/vendor/seahorse/ca-bundle.crt +3554 -0
  327. data/vendor/seahorse/lib/seahorse.rb +6 -0
  328. data/vendor/seahorse/lib/seahorse/client.rb +61 -0
  329. data/vendor/seahorse/lib/seahorse/client/base.rb +239 -0
  330. data/vendor/seahorse/lib/seahorse/client/block_io.rb +39 -0
  331. data/vendor/seahorse/lib/seahorse/client/configuration.rb +197 -0
  332. data/vendor/seahorse/lib/seahorse/client/handler.rb +26 -0
  333. data/vendor/seahorse/lib/seahorse/client/handler_builder.rb +49 -0
  334. data/vendor/seahorse/lib/seahorse/client/handler_list.rb +250 -0
  335. data/vendor/seahorse/lib/seahorse/client/http/endpoint.rb +95 -0
  336. data/vendor/seahorse/lib/seahorse/client/http/headers.rb +94 -0
  337. data/vendor/seahorse/lib/seahorse/client/http/plain_string_io.rb +11 -0
  338. data/vendor/seahorse/lib/seahorse/client/http/request.rb +78 -0
  339. data/vendor/seahorse/lib/seahorse/client/http/response.rb +45 -0
  340. data/vendor/seahorse/lib/seahorse/client/logging/formatter.rb +319 -0
  341. data/vendor/seahorse/lib/seahorse/client/logging/handler.rb +35 -0
  342. data/vendor/seahorse/lib/seahorse/client/net_http/connection_pool.rb +339 -0
  343. data/vendor/seahorse/lib/seahorse/client/net_http/handler.rb +109 -0
  344. data/vendor/seahorse/lib/seahorse/client/param_converter.rb +202 -0
  345. data/vendor/seahorse/lib/seahorse/client/param_validator.rb +139 -0
  346. data/vendor/seahorse/lib/seahorse/client/plugin.rb +80 -0
  347. data/vendor/seahorse/lib/seahorse/client/plugin_list.rb +142 -0
  348. data/vendor/seahorse/lib/seahorse/client/plugins/api.rb +11 -0
  349. data/vendor/seahorse/lib/seahorse/client/plugins/content_length.rb +22 -0
  350. data/vendor/seahorse/lib/seahorse/client/plugins/endpoint.rb +36 -0
  351. data/vendor/seahorse/lib/seahorse/client/plugins/json_simple.rb +34 -0
  352. data/vendor/seahorse/lib/seahorse/client/plugins/logging.rb +37 -0
  353. data/vendor/seahorse/lib/seahorse/client/plugins/net_http.rb +26 -0
  354. data/vendor/seahorse/lib/seahorse/client/plugins/operation_methods.rb +48 -0
  355. data/vendor/seahorse/lib/seahorse/client/plugins/param_conversion.rb +29 -0
  356. data/vendor/seahorse/lib/seahorse/client/plugins/param_validation.rb +30 -0
  357. data/vendor/seahorse/lib/seahorse/client/plugins/raise_response_errors.rb +29 -0
  358. data/vendor/seahorse/lib/seahorse/client/plugins/restful_bindings.rb +205 -0
  359. data/vendor/seahorse/lib/seahorse/client/request.rb +62 -0
  360. data/vendor/seahorse/lib/seahorse/client/request_context.rb +68 -0
  361. data/vendor/seahorse/lib/seahorse/client/response.rb +106 -0
  362. data/vendor/seahorse/lib/seahorse/client/xml/builder.rb +92 -0
  363. data/vendor/seahorse/lib/seahorse/model.rb +38 -0
  364. data/vendor/seahorse/lib/seahorse/model/api.rb +39 -0
  365. data/vendor/seahorse/lib/seahorse/model/node.rb +102 -0
  366. data/vendor/seahorse/lib/seahorse/model/operation.rb +32 -0
  367. data/vendor/seahorse/lib/seahorse/model/operation_input.rb +30 -0
  368. data/vendor/seahorse/lib/seahorse/model/operations.rb +59 -0
  369. data/vendor/seahorse/lib/seahorse/model/property.rb +141 -0
  370. data/vendor/seahorse/lib/seahorse/model/shapes/shape.rb +229 -0
  371. data/vendor/seahorse/lib/seahorse/model/types.rb +8 -0
  372. data/vendor/seahorse/lib/seahorse/version.rb +3 -0
  373. data/vendor/seahorse/seahorse.gemspec +20 -0
  374. data/vendor/seahorse/spec/fixtures/plugin.rb +4 -0
  375. data/vendor/seahorse/spec/seahorse/client/base_spec.rb +308 -0
  376. data/vendor/seahorse/spec/seahorse/client/configuration_spec.rb +118 -0
  377. data/vendor/seahorse/spec/seahorse/client/handler_builder_spec.rb +159 -0
  378. data/vendor/seahorse/spec/seahorse/client/handler_list_spec.rb +243 -0
  379. data/vendor/seahorse/spec/seahorse/client/handler_spec.rb +40 -0
  380. data/vendor/seahorse/spec/seahorse/client/http/endpoint_spec.rb +168 -0
  381. data/vendor/seahorse/spec/seahorse/client/http/headers_spec.rb +213 -0
  382. data/vendor/seahorse/spec/seahorse/client/http/plain_string_io_spec.rb +23 -0
  383. data/vendor/seahorse/spec/seahorse/client/http/request_spec.rb +142 -0
  384. data/vendor/seahorse/spec/seahorse/client/http/response_spec.rb +77 -0
  385. data/vendor/seahorse/spec/seahorse/client/logging/formatter_spec.rb +197 -0
  386. data/vendor/seahorse/spec/seahorse/client/logging/handler_spec.rb +63 -0
  387. data/vendor/seahorse/spec/seahorse/client/net_http/connection_pool_spec.rb +10 -0
  388. data/vendor/seahorse/spec/seahorse/client/net_http/handler_spec.rb +232 -0
  389. data/vendor/seahorse/spec/seahorse/client/param_converter_spec.rb +318 -0
  390. data/vendor/seahorse/spec/seahorse/client/param_validator_spec.rb +271 -0
  391. data/vendor/seahorse/spec/seahorse/client/plugin_list_spec.rb +166 -0
  392. data/vendor/seahorse/spec/seahorse/client/plugin_spec.rb +118 -0
  393. data/vendor/seahorse/spec/seahorse/client/plugins/content_length_spec.rb +19 -0
  394. data/vendor/seahorse/spec/seahorse/client/plugins/endpoint_spec.rb +43 -0
  395. data/vendor/seahorse/spec/seahorse/client/plugins/logging_spec.rb +46 -0
  396. data/vendor/seahorse/spec/seahorse/client/plugins/net_http_spec.rb +71 -0
  397. data/vendor/seahorse/spec/seahorse/client/plugins/operation_methods_spec.rb +74 -0
  398. data/vendor/seahorse/spec/seahorse/client/plugins/restful_bindings/uri_path_builder_spec.rb +91 -0
  399. data/vendor/seahorse/spec/seahorse/client/request_context_spec.rb +105 -0
  400. data/vendor/seahorse/spec/seahorse/client/request_spec.rb +102 -0
  401. data/vendor/seahorse/spec/seahorse/client/response_spec.rb +171 -0
  402. data/vendor/seahorse/spec/seahorse/client/xml/builder/xml_doc_spec.rb +142 -0
  403. data/vendor/seahorse/spec/seahorse/client/xml/builder_spec.rb +10 -0
  404. data/vendor/seahorse/spec/seahorse/client_spec.rb +13 -0
  405. data/vendor/seahorse/spec/seahorse/model/api_spec.rb +72 -0
  406. data/vendor/seahorse/spec/seahorse/model/node_spec.rb +114 -0
  407. data/vendor/seahorse/spec/seahorse/model/operation_input_spec.rb +53 -0
  408. data/vendor/seahorse/spec/seahorse/model/operation_spec.rb +48 -0
  409. data/vendor/seahorse/spec/seahorse/model/operations_spec.rb +64 -0
  410. data/vendor/seahorse/spec/seahorse/model/property_spec.rb +136 -0
  411. data/vendor/seahorse/spec/seahorse/model/shapes/shape_spec.rb +105 -0
  412. data/vendor/seahorse/spec/seahorse/version_spec.rb +11 -0
  413. data/vendor/seahorse/spec/spec_helper.rb +34 -0
  414. data/vendor/seahorse/tasks/ca_bundle.rake +23 -0
  415. data/vendor/seahorse/tasks/docs.rake +11 -0
  416. data/vendor/seahorse/tasks/test.rake +26 -0
  417. metadata +614 -0
@@ -0,0 +1,25 @@
1
+ {
2
+ "pagination": {
3
+ "DescribeApplicationVersions": {
4
+ "result_key": "ApplicationVersions"
5
+ },
6
+ "DescribeApplications": {
7
+ "result_key": "Applications"
8
+ },
9
+ "DescribeConfigurationOptions": {
10
+ "result_key": "Options"
11
+ },
12
+ "DescribeEnvironments": {
13
+ "result_key": "Environments"
14
+ },
15
+ "DescribeEvents": {
16
+ "input_token": "NextToken",
17
+ "output_token": "NextToken",
18
+ "limit_key": "MaxRecords",
19
+ "result_key": "Events"
20
+ },
21
+ "ListAvailableSolutionStacks": {
22
+ "result_key": "SolutionStacks"
23
+ }
24
+ }
25
+ }
@@ -0,0 +1,2041 @@
1
+ {
2
+ "api_version": "2012-06-01",
3
+ "type": "query",
4
+ "result_wrapped": true,
5
+ "signature_version": "v4",
6
+ "service_full_name": "Elastic Load Balancing",
7
+ "endpoint_prefix": "elasticloadbalancing",
8
+ "xmlnamespace": "http://elasticloadbalancing.amazonaws.com/doc/2012-06-01/",
9
+ "documentation": "\n \t<fullname>Elastic Load Balancing</fullname>\n \n <p>\n Elastic Load Balancing is a cost-effective and easy\n to use web service to help you improve the availability and\n scalability of your application running on Amazon Elastic Cloud Compute (Amazon EC2). It makes it easy for\n you to distribute application loads between two or more\n EC2 instances. Elastic Load Balancing supports the growth in traffic of your application by enabling availability through redundancy.\n </p>\n \n <p>This guide provides detailed information about Elastic Load Balancing \n actions, data types, and parameters that can be used for sending a \n query request. Query requests are HTTP or HTTPS requests that use the \n HTTP verb GET or POST and a query parameter named Action or Operation. \n Action is used throughout this documentation, although Operation is \n supported for backward compatibility with other AWS Query APIs.</p>\n \n <p>For detailed information on constructing a query request using the actions, data types, and parameters mentioned in this guide,\n go to <a href=\"http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/using-query-api.html\">Using the Query API</a>\n in the <i>Elastic Load Balancing Developer Guide</i>.</p>\n \n <p>For detailed information about Elastic Load Balancing features and their associated actions, go to \n <a href=\"http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/UserScenarios.html\">Using Elastic Load Balancing</a>\n in the <i>Elastic Load Balancing Developer Guide</i>.</p>\n \n <p>This reference guide is based on the current WSDL, which is available at:\n <a href=\"http://elasticloadbalancing.amazonaws.com/doc/2012-06-01/ElasticLoadBalancing.wsdl\"></a> \n </p>\n \n ",
10
+ "operations": {
11
+ "ApplySecurityGroupsToLoadBalancer": {
12
+ "name": "ApplySecurityGroupsToLoadBalancer",
13
+ "input": {
14
+ "shape_name": "ApplySecurityGroupsToLoadBalancerInput",
15
+ "type": "structure",
16
+ "members": {
17
+ "LoadBalancerName": {
18
+ "shape_name": "AccessPointName",
19
+ "type": "string",
20
+ "documentation": "\n <p>\n The name associated with the LoadBalancer.\n The name must be unique within the client AWS account. \n </p> \n ",
21
+ "required": true
22
+ },
23
+ "SecurityGroups": {
24
+ "shape_name": "SecurityGroups",
25
+ "type": "list",
26
+ "members": {
27
+ "shape_name": "SecurityGroupId",
28
+ "type": "string",
29
+ "documentation": null
30
+ },
31
+ "documentation": "\n <p>\n A list of security group IDs to associate with your LoadBalancer in VPC. The security\n group IDs must be provided as the ID and not the security group name (For example, sg-1234).\n </p> \n ",
32
+ "required": true
33
+ }
34
+ },
35
+ "documentation": "\n <p>\n The input for the <a>ApplySecurityGroupsToLoadBalancer</a> action.\n </p> \n "
36
+ },
37
+ "output": {
38
+ "shape_name": "ApplySecurityGroupsToLoadBalancerOutput",
39
+ "type": "structure",
40
+ "members": {
41
+ "SecurityGroups": {
42
+ "shape_name": "SecurityGroups",
43
+ "type": "list",
44
+ "members": {
45
+ "shape_name": "SecurityGroupId",
46
+ "type": "string",
47
+ "documentation": null
48
+ },
49
+ "documentation": "\n <p>\n A list of security group IDs associated with your LoadBalancer.\n </p> \n "
50
+ }
51
+ },
52
+ "documentation": "\n <p>\n The out for the <a>ApplySecurityGroupsToLoadBalancer</a> action.\n </p> \n "
53
+ },
54
+ "errors": [
55
+ {
56
+ "shape_name": "AccessPointNotFoundException",
57
+ "type": "structure",
58
+ "members": {
59
+ },
60
+ "documentation": "\n <p>\n The specified LoadBalancer could not be found.\n </p>\n "
61
+ },
62
+ {
63
+ "shape_name": "InvalidConfigurationRequestException",
64
+ "type": "structure",
65
+ "members": {
66
+ },
67
+ "documentation": "\n <p>\n Requested configuration change is invalid.\n </p>\n "
68
+ },
69
+ {
70
+ "shape_name": "InvalidSecurityGroupException",
71
+ "type": "structure",
72
+ "members": {
73
+ },
74
+ "documentation": "\n <p>\n One or more specified security groups do not exist. \n </p>\n "
75
+ }
76
+ ],
77
+ "documentation": "\n <p>\n Associates one or more security groups with your LoadBalancer in VPC. \n The provided security group IDs will override any currently applied security groups.\n </p> \n "
78
+ },
79
+ "AttachLoadBalancerToSubnets": {
80
+ "name": "AttachLoadBalancerToSubnets",
81
+ "input": {
82
+ "shape_name": "AttachLoadBalancerToSubnetsInput",
83
+ "type": "structure",
84
+ "members": {
85
+ "LoadBalancerName": {
86
+ "shape_name": "AccessPointName",
87
+ "type": "string",
88
+ "documentation": "\n <p>\n The name associated with the LoadBalancer.\n The name must be unique within the client AWS account.\n </p>\n ",
89
+ "required": true
90
+ },
91
+ "Subnets": {
92
+ "shape_name": "Subnets",
93
+ "type": "list",
94
+ "members": {
95
+ "shape_name": "SubnetId",
96
+ "type": "string",
97
+ "documentation": null
98
+ },
99
+ "documentation": "\n <p>\n A list of subnet IDs to add for the LoadBalancer.\n </p> \n ",
100
+ "required": true
101
+ }
102
+ },
103
+ "documentation": "\n <p>\n The input for the <a>AttachLoadBalancerToSubnets</a> action. \n </p> \n "
104
+ },
105
+ "output": {
106
+ "shape_name": "AttachLoadBalancerToSubnetsOutput",
107
+ "type": "structure",
108
+ "members": {
109
+ "Subnets": {
110
+ "shape_name": "Subnets",
111
+ "type": "list",
112
+ "members": {
113
+ "shape_name": "SubnetId",
114
+ "type": "string",
115
+ "documentation": null
116
+ },
117
+ "documentation": "\n <p>\n A list of subnet IDs added for the LoadBalancer. \n </p> \n "
118
+ }
119
+ },
120
+ "documentation": "\n <p>\n The output for the <a>AttachLoadBalancerToSubnets</a> action.\n </p>\n "
121
+ },
122
+ "errors": [
123
+ {
124
+ "shape_name": "AccessPointNotFoundException",
125
+ "type": "structure",
126
+ "members": {
127
+ },
128
+ "documentation": "\n <p>\n The specified LoadBalancer could not be found.\n </p>\n "
129
+ },
130
+ {
131
+ "shape_name": "InvalidConfigurationRequestException",
132
+ "type": "structure",
133
+ "members": {
134
+ },
135
+ "documentation": "\n <p>\n Requested configuration change is invalid.\n </p>\n "
136
+ },
137
+ {
138
+ "shape_name": "SubnetNotFoundException",
139
+ "type": "structure",
140
+ "members": {
141
+ },
142
+ "documentation": "\n <p>\n One or more subnets were not found.\n </p>\n "
143
+ },
144
+ {
145
+ "shape_name": "InvalidSubnetException",
146
+ "type": "structure",
147
+ "members": {
148
+ },
149
+ "documentation": "\n <p>\n The VPC has no Internet gateway. \n </p>\n "
150
+ }
151
+ ],
152
+ "documentation": "\n <p>\n Adds one or more subnets to the set of configured subnets in the VPC for the LoadBalancer.\n </p> \n <p>\n The Loadbalancers evenly distribute requests across all of the registered subnets. \n </p>\n "
153
+ },
154
+ "ConfigureHealthCheck": {
155
+ "name": "ConfigureHealthCheck",
156
+ "input": {
157
+ "shape_name": "ConfigureHealthCheckInput",
158
+ "type": "structure",
159
+ "members": {
160
+ "LoadBalancerName": {
161
+ "shape_name": "AccessPointName",
162
+ "type": "string",
163
+ "documentation": "\n <p>\n The mnemonic name associated with the LoadBalancer.\n This name must be unique within the client AWS account.\n </p>\n ",
164
+ "required": true
165
+ },
166
+ "HealthCheck": {
167
+ "shape_name": "HealthCheck",
168
+ "type": "structure",
169
+ "members": {
170
+ "Target": {
171
+ "shape_name": "HealthCheckTarget",
172
+ "type": "string",
173
+ "documentation": "\n <p>\n Specifies the instance being checked. The protocol is either TCP, HTTP, HTTPS, or SSL.\n The range of valid ports is one (1) through 65535.\n </p>\n <note>\n <p>\n TCP is the default, specified as a TCP: port pair,\n for example \"TCP:5000\". In this case a healthcheck simply\n attempts to open a TCP connection to the instance on the\n specified port. Failure to connect within the configured\n timeout is considered unhealthy.\n </p>\n <p>SSL is also specified as SSL: port pair, for example, SSL:5000.</p>\n <p>\n For HTTP or HTTPS protocol, the situation is different. You have to include a ping path in the string. HTTP is specified\n as a HTTP:port;/;PathToPing; grouping, for example\n \"HTTP:80/weather/us/wa/seattle\". In this case, a HTTP GET\n request is issued to the instance on the given port and path.\n Any answer other than \"200 OK\" within the timeout period is\n considered unhealthy.\n </p>\n <p>\n The total length of the HTTP ping target needs to\n be 1024 16-bit Unicode characters or less.\n </p>\n </note>\n ",
174
+ "required": true
175
+ },
176
+ "Interval": {
177
+ "shape_name": "HealthCheckInterval",
178
+ "type": "integer",
179
+ "min_length": 1,
180
+ "max_length": 300,
181
+ "documentation": "\n <p>\n Specifies the approximate interval, in seconds,\n between health checks of an individual instance.\n </p>\n ",
182
+ "required": true
183
+ },
184
+ "Timeout": {
185
+ "shape_name": "HealthCheckTimeout",
186
+ "type": "integer",
187
+ "min_length": 1,
188
+ "max_length": 300,
189
+ "documentation": "\n <p>\n Specifies the amount of time, in seconds, during which no response\n means a failed health probe.\n </p>\n <note>\n This value must be less than the <i>Interval</i> value.\n </note>\n ",
190
+ "required": true
191
+ },
192
+ "UnhealthyThreshold": {
193
+ "shape_name": "UnhealthyThreshold",
194
+ "type": "integer",
195
+ "min_length": 2,
196
+ "max_length": 10,
197
+ "documentation": "\n <p>\n Specifies the number of consecutive health probe failures required\n before moving the instance to the <i>Unhealthy</i> state.\n </p>\n ",
198
+ "required": true
199
+ },
200
+ "HealthyThreshold": {
201
+ "shape_name": "HealthyThreshold",
202
+ "type": "integer",
203
+ "min_length": 2,
204
+ "max_length": 10,
205
+ "documentation": "\n <p>\n Specifies the number of consecutive health probe successes required before\n moving the instance to the <i>Healthy</i> state.\n </p>\n ",
206
+ "required": true
207
+ }
208
+ },
209
+ "documentation": "\n <p>\n A structure containing the configuration information\n for the new healthcheck.\n </p>\n ",
210
+ "required": true
211
+ }
212
+ },
213
+ "documentation": "\n \t<p>\n \tInput for the <a>ConfigureHealthCheck</a> action.\n \t</p>\n "
214
+ },
215
+ "output": {
216
+ "shape_name": "ConfigureHealthCheckOutput",
217
+ "type": "structure",
218
+ "members": {
219
+ "HealthCheck": {
220
+ "shape_name": "HealthCheck",
221
+ "type": "structure",
222
+ "members": {
223
+ "Target": {
224
+ "shape_name": "HealthCheckTarget",
225
+ "type": "string",
226
+ "documentation": "\n <p>\n Specifies the instance being checked. The protocol is either TCP, HTTP, HTTPS, or SSL.\n The range of valid ports is one (1) through 65535.\n </p>\n <note>\n <p>\n TCP is the default, specified as a TCP: port pair,\n for example \"TCP:5000\". In this case a healthcheck simply\n attempts to open a TCP connection to the instance on the\n specified port. Failure to connect within the configured\n timeout is considered unhealthy.\n </p>\n <p>SSL is also specified as SSL: port pair, for example, SSL:5000.</p>\n <p>\n For HTTP or HTTPS protocol, the situation is different. You have to include a ping path in the string. HTTP is specified\n as a HTTP:port;/;PathToPing; grouping, for example\n \"HTTP:80/weather/us/wa/seattle\". In this case, a HTTP GET\n request is issued to the instance on the given port and path.\n Any answer other than \"200 OK\" within the timeout period is\n considered unhealthy.\n </p>\n <p>\n The total length of the HTTP ping target needs to\n be 1024 16-bit Unicode characters or less.\n </p>\n </note>\n ",
227
+ "required": true
228
+ },
229
+ "Interval": {
230
+ "shape_name": "HealthCheckInterval",
231
+ "type": "integer",
232
+ "min_length": 1,
233
+ "max_length": 300,
234
+ "documentation": "\n <p>\n Specifies the approximate interval, in seconds,\n between health checks of an individual instance.\n </p>\n ",
235
+ "required": true
236
+ },
237
+ "Timeout": {
238
+ "shape_name": "HealthCheckTimeout",
239
+ "type": "integer",
240
+ "min_length": 1,
241
+ "max_length": 300,
242
+ "documentation": "\n <p>\n Specifies the amount of time, in seconds, during which no response\n means a failed health probe.\n </p>\n <note>\n This value must be less than the <i>Interval</i> value.\n </note>\n ",
243
+ "required": true
244
+ },
245
+ "UnhealthyThreshold": {
246
+ "shape_name": "UnhealthyThreshold",
247
+ "type": "integer",
248
+ "min_length": 2,
249
+ "max_length": 10,
250
+ "documentation": "\n <p>\n Specifies the number of consecutive health probe failures required\n before moving the instance to the <i>Unhealthy</i> state.\n </p>\n ",
251
+ "required": true
252
+ },
253
+ "HealthyThreshold": {
254
+ "shape_name": "HealthyThreshold",
255
+ "type": "integer",
256
+ "min_length": 2,
257
+ "max_length": 10,
258
+ "documentation": "\n <p>\n Specifies the number of consecutive health probe successes required before\n moving the instance to the <i>Healthy</i> state.\n </p>\n ",
259
+ "required": true
260
+ }
261
+ },
262
+ "documentation": "\n <p>\n The updated healthcheck for the instances.\n </p>\n "
263
+ }
264
+ },
265
+ "documentation": "\n \t<p>\n \tThe output for the <a>ConfigureHealthCheck</a> action.\n \t</p>\n "
266
+ },
267
+ "errors": [
268
+ {
269
+ "shape_name": "AccessPointNotFoundException",
270
+ "type": "structure",
271
+ "members": {
272
+ },
273
+ "documentation": "\n <p>\n The specified LoadBalancer could not be found.\n </p>\n "
274
+ }
275
+ ],
276
+ "documentation": "\n <p>\n Enables the client to define an application\n healthcheck for the instances.\n </p>\n "
277
+ },
278
+ "CreateAppCookieStickinessPolicy": {
279
+ "name": "CreateAppCookieStickinessPolicy",
280
+ "input": {
281
+ "shape_name": "CreateAppCookieStickinessPolicyInput",
282
+ "type": "structure",
283
+ "members": {
284
+ "LoadBalancerName": {
285
+ "shape_name": "AccessPointName",
286
+ "type": "string",
287
+ "documentation": "\n <p>\n The name associated with the LoadBalancer.\n The name must be unique within the client AWS account.\n </p>\n ",
288
+ "required": true
289
+ },
290
+ "PolicyName": {
291
+ "shape_name": "PolicyName",
292
+ "type": "string",
293
+ "documentation": "\n <p>\n The name of the policy being created. \n The name must be unique within the set of policies for this LoadBalancer. \n </p>\n ",
294
+ "required": true
295
+ },
296
+ "CookieName": {
297
+ "shape_name": "CookieName",
298
+ "type": "string",
299
+ "documentation": "\n <p>\n Name of the application cookie used for stickiness. \n </p>\n ",
300
+ "required": true
301
+ }
302
+ },
303
+ "documentation": "\n\t\t<p>\n\t\tThe input for the <a>CreateAppCookieStickinessPolicy</a> action.\n\t\t</p>\n "
304
+ },
305
+ "output": {
306
+ "shape_name": "CreateAppCookieStickinessPolicyOutput",
307
+ "type": "structure",
308
+ "members": {
309
+ },
310
+ "documentation": "\n\t\t<p>\n\t\tThe output for the <a>CreateAppCookieStickinessPolicy</a> action.\n\t\t</p>\n "
311
+ },
312
+ "errors": [
313
+ {
314
+ "shape_name": "AccessPointNotFoundException",
315
+ "type": "structure",
316
+ "members": {
317
+ },
318
+ "documentation": "\n <p>\n The specified LoadBalancer could not be found.\n </p>\n "
319
+ },
320
+ {
321
+ "shape_name": "DuplicatePolicyNameException",
322
+ "type": "structure",
323
+ "members": {
324
+ },
325
+ "documentation": "\n <p>\n Policy with the same name exists for this LoadBalancer.\n Please choose another name.\n </p>\n "
326
+ },
327
+ {
328
+ "shape_name": "TooManyPoliciesException",
329
+ "type": "structure",
330
+ "members": {
331
+ },
332
+ "documentation": "\n <p>\n Quota for number of policies for this LoadBalancer\n has already been reached.\n </p>\n "
333
+ },
334
+ {
335
+ "shape_name": "InvalidConfigurationRequestException",
336
+ "type": "structure",
337
+ "members": {
338
+ },
339
+ "documentation": "\n <p>\n Requested configuration change is invalid.\n </p>\n "
340
+ }
341
+ ],
342
+ "documentation": "\n <p>\n Generates a stickiness policy with sticky session lifetimes that follow \n that of an application-generated cookie. This policy can be associated\n only with HTTP/HTTPS listeners.\n </p>\n <p>\n This policy is similar to the policy created by <a>CreateLBCookieStickinessPolicy</a>, \n except that the lifetime of the special Elastic Load Balancing cookie follows the\n lifetime of the application-generated cookie specified in the policy configuration. \n The LoadBalancer only inserts a new stickiness cookie when the application response\n includes a new application cookie. \n </p>\n <p>\n If the application cookie is explicitly removed or expires, the session stops being\n sticky until a new application cookie is issued. \n </p>\n <note>\n An application client must receive and send two cookies: the application-generated \n cookie and the special Elastic Load Balancing cookie named <code>AWSELB</code>. \n This is the default behavior for many common web browsers.\n </note>\n <p>For information on using <a>CreateAppCookieStickinessPolicy</a>, see <i>Using the Query API</i> in the <a href=\"http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/US_StickySessions.html#US_EnableStickySessionsAppCookies\">Enabling Application-Controlled Sesssion Stickiness</a> section of\n the <i>Elastic Load Balancing Developer Guide</i>.</p>\n "
343
+ },
344
+ "CreateLBCookieStickinessPolicy": {
345
+ "name": "CreateLBCookieStickinessPolicy",
346
+ "input": {
347
+ "shape_name": "CreateLBCookieStickinessPolicyInput",
348
+ "type": "structure",
349
+ "members": {
350
+ "LoadBalancerName": {
351
+ "shape_name": "AccessPointName",
352
+ "type": "string",
353
+ "documentation": "\n <p>\n The name associated with the LoadBalancer.\n The name must be unique within the client AWS account.\n </p>\n ",
354
+ "required": true
355
+ },
356
+ "PolicyName": {
357
+ "shape_name": "PolicyName",
358
+ "type": "string",
359
+ "documentation": "\n <p>\n The name of the policy being created. \n The name must be unique within the set of policies for this LoadBalancer. \n </p>\n ",
360
+ "required": true
361
+ },
362
+ "CookieExpirationPeriod": {
363
+ "shape_name": "CookieExpirationPeriod",
364
+ "type": "long",
365
+ "documentation": "\n <p>\n The time period in seconds after which the cookie should be considered stale. \n Not specifying this parameter indicates that the sticky session will last for the duration \n of the browser session. \n </p>\n "
366
+ }
367
+ },
368
+ "documentation": "\n\t\t<p>\n\t\tThe input for the <a>CreateLBCookieStickinessPolicy</a> action.\n\t\t</p>\n "
369
+ },
370
+ "output": {
371
+ "shape_name": "CreateLBCookieStickinessPolicyOutput",
372
+ "type": "structure",
373
+ "members": {
374
+ },
375
+ "documentation": "\n\t\t<p>\n\t\tThe output for the <a>CreateLBCookieStickinessPolicy</a> action.\n\t\t</p>\n "
376
+ },
377
+ "errors": [
378
+ {
379
+ "shape_name": "AccessPointNotFoundException",
380
+ "type": "structure",
381
+ "members": {
382
+ },
383
+ "documentation": "\n <p>\n The specified LoadBalancer could not be found.\n </p>\n "
384
+ },
385
+ {
386
+ "shape_name": "DuplicatePolicyNameException",
387
+ "type": "structure",
388
+ "members": {
389
+ },
390
+ "documentation": "\n <p>\n Policy with the same name exists for this LoadBalancer.\n Please choose another name.\n </p>\n "
391
+ },
392
+ {
393
+ "shape_name": "TooManyPoliciesException",
394
+ "type": "structure",
395
+ "members": {
396
+ },
397
+ "documentation": "\n <p>\n Quota for number of policies for this LoadBalancer\n has already been reached.\n </p>\n "
398
+ },
399
+ {
400
+ "shape_name": "InvalidConfigurationRequestException",
401
+ "type": "structure",
402
+ "members": {
403
+ },
404
+ "documentation": "\n <p>\n Requested configuration change is invalid.\n </p>\n "
405
+ }
406
+ ],
407
+ "documentation": "\n <p>\n Generates a stickiness policy with sticky session lifetimes controlled by the \n lifetime of the browser (user-agent) or a specified expiration period. This \n policy can be associated only with HTTP/HTTPS listeners.\n </p>\n <p>\n When a LoadBalancer implements this policy, the LoadBalancer uses a special\n cookie to track the backend server instance for each request. When the LoadBalancer\n receives a request, it first checks to see if this cookie is present in the request. \n If so, the LoadBalancer sends the request to the application server specified in the\n cookie. If not, the LoadBalancer sends the request to a server that is chosen based on\n the existing load balancing algorithm.\n </p>\n <p>\n A cookie is inserted into the response for binding subsequent requests from the same user to\n that server. The validity of the cookie is based on the cookie expiration time, which is \n specified in the policy configuration. \n </p>\n \n <p>For information on using <a>CreateLBCookieStickinessPolicy</a>, see <i>Using the Query API</i> in the <a href=\"http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/US_StickySessions.html#US_EnableStickySessionsLBCookies\">Enabling Duration-Based Sesssion Stickiness</a> section of\n the <i>Elastic Load Balancing Developer Guide</i>.</p>\n "
408
+ },
409
+ "CreateLoadBalancer": {
410
+ "name": "CreateLoadBalancer",
411
+ "input": {
412
+ "shape_name": "CreateAccessPointInput",
413
+ "type": "structure",
414
+ "members": {
415
+ "LoadBalancerName": {
416
+ "shape_name": "AccessPointName",
417
+ "type": "string",
418
+ "documentation": "\n <p>\n The name associated with the LoadBalancer.\n The name must be unique within your set of LoadBalancers.\n </p>\n ",
419
+ "required": true
420
+ },
421
+ "Listeners": {
422
+ "shape_name": "Listeners",
423
+ "type": "list",
424
+ "members": {
425
+ "shape_name": "Listener",
426
+ "type": "structure",
427
+ "members": {
428
+ "Protocol": {
429
+ "shape_name": "Protocol",
430
+ "type": "string",
431
+ "documentation": "\n <p>\n Specifies the LoadBalancer transport protocol to use for routing\n - HTTP, HTTPS, TCP or SSL.\n This property cannot be modified for the life of the LoadBalancer.\n </p>\n ",
432
+ "required": true
433
+ },
434
+ "LoadBalancerPort": {
435
+ "shape_name": "AccessPointPort",
436
+ "type": "integer",
437
+ "documentation": "\n <p>\n Specifies the external LoadBalancer port number.\n This property cannot be modified for the life of the LoadBalancer.\n </p>\n ",
438
+ "required": true
439
+ },
440
+ "InstanceProtocol": {
441
+ "shape_name": "Protocol",
442
+ "type": "string",
443
+ "documentation": "\n \t<p>\n \tSpecifies the protocol to use for routing traffic to back-end instances - HTTP, HTTPS, TCP, or SSL.\n \tThis property cannot be modified for the life of the LoadBalancer.\n \t</p>\n \t<note>\n \tIf the front-end protocol is HTTP or HTTPS, <code>InstanceProtocol</code> has to be at the same protocol layer,\n \t i.e., HTTP or HTTPS. Likewise, if the front-end protocol is TCP or SSL, InstanceProtocol has to be TCP or SSL.\n \t</note>\n \t<note>\n \tIf there is another listener with the same <code>InstancePort</code> whose <code>InstanceProtocol</code> is secure,\n \ti.e., HTTPS or SSL, the listener's <code>InstanceProtocol</code> has to be secure, i.e., HTTPS or SSL. \n If there is another listener with the same <code>InstancePort</code> whose <code>InstanceProtocol</code> is HTTP or TCP,\n the listener's <code>InstanceProtocol</code> must be either HTTP or TCP. \n \t</note>\n "
444
+ },
445
+ "InstancePort": {
446
+ "shape_name": "InstancePort",
447
+ "type": "integer",
448
+ "min_length": 1,
449
+ "max_length": 65535,
450
+ "documentation": "\n <p>\n Specifies the TCP port on which the instance server is listening.\n This property cannot be modified for the life of the LoadBalancer.\n </p>\n ",
451
+ "required": true
452
+ },
453
+ "SSLCertificateId": {
454
+ "shape_name": "SSLCertificateId",
455
+ "type": "string",
456
+ "documentation": "\n \t<p>\n \tThe ARN string of the server certificate. \n \tTo get the ARN of the server certificate, call the AWS Identity and Access Management \n \t <a href=\"http://docs.aws.amazon.com/IAM/latest/APIReference/index.html?API_UploadServerCertificate.html\">UploadServerCertificate \t\n \t</a> API. </p>\n "
457
+ }
458
+ },
459
+ "documentation": "\n <p>\n The Listener data type.\n </p>\n "
460
+ },
461
+ "documentation": "\n <p>\n A list of the following tuples:\n LoadBalancerPort, InstancePort, and Protocol.\n </p>\n ",
462
+ "required": true
463
+ },
464
+ "AvailabilityZones": {
465
+ "shape_name": "AvailabilityZones",
466
+ "type": "list",
467
+ "members": {
468
+ "shape_name": "AvailabilityZone",
469
+ "type": "string",
470
+ "documentation": null
471
+ },
472
+ "documentation": "\n <p>\n A list of Availability Zones.\n </p>\n <p>\n At least one Availability Zone must be specified.\n Specified Availability Zones must be in the same EC2 Region\n as the LoadBalancer.\n Traffic will be equally distributed across all zones.\n </p>\n <p>\n This list can be modified \n after the creation of the LoadBalancer by calling <a>EnableAvailabilityZonesForLoadBalancer</a>.\n </p>\n "
473
+ },
474
+ "Subnets": {
475
+ "shape_name": "Subnets",
476
+ "type": "list",
477
+ "members": {
478
+ "shape_name": "SubnetId",
479
+ "type": "string",
480
+ "documentation": null
481
+ },
482
+ "documentation": "\n <p>\n A list of subnet IDs in your VPC to attach to your LoadBalancer.\n </p> \n "
483
+ },
484
+ "SecurityGroups": {
485
+ "shape_name": "SecurityGroups",
486
+ "type": "list",
487
+ "members": {
488
+ "shape_name": "SecurityGroupId",
489
+ "type": "string",
490
+ "documentation": null
491
+ },
492
+ "documentation": "\n <p>\n The security groups assigned to your LoadBalancer within your VPC.\n </p> \n "
493
+ },
494
+ "Scheme": {
495
+ "shape_name": "LoadBalancerScheme",
496
+ "type": "string",
497
+ "documentation": "\n <p>The type of a LoadBalancer. </p> \n \n <p>By default, Elastic Load Balancing creates an Internet-facing LoadBalancer\n with a publicly resolvable DNS name, which resolves to public IP addresses. </p>\n \n <p>Specify the value <code>internal</code> for this option to create an internal LoadBalancer\n with a DNS name that resolves to private IP addresses.</p>\n \n <p>This option is only available for LoadBalancers attached to an Amazon VPC.</p>\n \n "
498
+ }
499
+ },
500
+ "documentation": "\n \t<p>\n \tThe input for the <a>CreateLoadBalancer</a> action.\n \t</p>\n "
501
+ },
502
+ "output": {
503
+ "shape_name": "CreateAccessPointOutput",
504
+ "type": "structure",
505
+ "members": {
506
+ "DNSName": {
507
+ "shape_name": "DNSName",
508
+ "type": "string",
509
+ "documentation": "\n <p>\n The DNS name for the LoadBalancer.\n </p>\n "
510
+ }
511
+ },
512
+ "documentation": "\n\t\t<p>\n\t\tThe output for the <a>CreateLoadBalancer</a> action.\n\t\t</p>\n "
513
+ },
514
+ "errors": [
515
+ {
516
+ "shape_name": "DuplicateAccessPointNameException",
517
+ "type": "structure",
518
+ "members": {
519
+ },
520
+ "documentation": "\n <p>\n LoadBalancer name already exists for this account.\n Please choose another name.\n </p>\n "
521
+ },
522
+ {
523
+ "shape_name": "TooManyAccessPointsException",
524
+ "type": "structure",
525
+ "members": {
526
+ },
527
+ "documentation": "\n <p>\n The quota for the number of LoadBalancers has already been reached.\n </p>\n "
528
+ },
529
+ {
530
+ "shape_name": "CertificateNotFoundException",
531
+ "type": "structure",
532
+ "members": {
533
+ },
534
+ "documentation": "\n \t<p>\n The specified SSL ID does not refer to a valid SSL certificate \n in the AWS Identity and Access Management Service.\n \t</p>\n "
535
+ },
536
+ {
537
+ "shape_name": "InvalidConfigurationRequestException",
538
+ "type": "structure",
539
+ "members": {
540
+ },
541
+ "documentation": "\n <p>\n Requested configuration change is invalid.\n </p>\n "
542
+ },
543
+ {
544
+ "shape_name": "SubnetNotFoundException",
545
+ "type": "structure",
546
+ "members": {
547
+ },
548
+ "documentation": "\n <p>\n One or more subnets were not found.\n </p>\n "
549
+ },
550
+ {
551
+ "shape_name": "InvalidSubnetException",
552
+ "type": "structure",
553
+ "members": {
554
+ },
555
+ "documentation": "\n <p>\n The VPC has no Internet gateway. \n </p>\n "
556
+ },
557
+ {
558
+ "shape_name": "InvalidSecurityGroupException",
559
+ "type": "structure",
560
+ "members": {
561
+ },
562
+ "documentation": "\n <p>\n One or more specified security groups do not exist. \n </p>\n "
563
+ },
564
+ {
565
+ "shape_name": "InvalidSchemeException",
566
+ "type": "structure",
567
+ "members": {
568
+ },
569
+ "documentation": "\n <p>\n Invalid value for scheme. Scheme can only be specified for load balancers in VPC. \n </p>\n "
570
+ }
571
+ ],
572
+ "documentation": "\n <p>\n Creates a new LoadBalancer.\n </p>\n <p>\n After the call has completed successfully, a new LoadBalancer\n is created; however, it will not be usable until at least\n one instance has been registered.\n When the LoadBalancer creation is completed,\n the client can check whether or not it is usable by\n using the <a>DescribeInstanceHealth</a> action.\n The LoadBalancer is usable as soon as any registered instance\n is <i>InService</i>.\n </p>\n <note>\n Currently, the client's quota of LoadBalancers is\n limited to ten per Region.\n </note>\n <note>\n <p>\n LoadBalancer DNS names vary depending on the Region\n they're created in. For LoadBalancers created in the United States,\n the DNS name ends with:\n </p>\n <ul>\n <li>\n <i>us-east-1.elb.amazonaws.com</i> (for the Northern Virginia Region)\n </li>\n <li>\n <i>us-west-1.elb.amazonaws.com</i> (for the Northern California Region)\n </li>\n </ul>\n <p>\n For LoadBalancers created in the EU (Ireland) Region,\n the DNS name ends with:\n </p>\n <ul>\n <li>\n <i>eu-west-1.elb.amazonaws.com</i>\n </li>\n </ul>\n </note>\n <p>For information on using <a>CreateLoadBalancer</a> to create a new LoadBalancer in Amazon EC2, go to <a href=\"http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/creating_lb_QueryAPI.html\">Using Query API</a> \n section in the <i>Creating a Load Balancer With SSL Cipher Settings and Back-end Authentication</i> topic of the <i>Elastic Load Balancing Developer Guide</i>.</p>\n \n <p>For information on using <a>CreateLoadBalancer</a> to create a new LoadBalancer in Amazon VPC, see <i>Using the Query API</i> in the <a href=\"http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/USVPC_creating_basic_lb.html\">Creating a Basic Load Balancer in Amazon VPC</a> \n section in the <i>Elastic Load Balancing Developer Guide</i>.</p>\n "
573
+ },
574
+ "CreateLoadBalancerListeners": {
575
+ "name": "CreateLoadBalancerListeners",
576
+ "input": {
577
+ "shape_name": "CreateLoadBalancerListenerInput",
578
+ "type": "structure",
579
+ "members": {
580
+ "LoadBalancerName": {
581
+ "shape_name": "AccessPointName",
582
+ "type": "string",
583
+ "documentation": "\n \t<p>\n \tThe name of the LoadBalancer. \n \t</p>\n ",
584
+ "required": true
585
+ },
586
+ "Listeners": {
587
+ "shape_name": "Listeners",
588
+ "type": "list",
589
+ "members": {
590
+ "shape_name": "Listener",
591
+ "type": "structure",
592
+ "members": {
593
+ "Protocol": {
594
+ "shape_name": "Protocol",
595
+ "type": "string",
596
+ "documentation": "\n <p>\n Specifies the LoadBalancer transport protocol to use for routing\n - HTTP, HTTPS, TCP or SSL.\n This property cannot be modified for the life of the LoadBalancer.\n </p>\n ",
597
+ "required": true
598
+ },
599
+ "LoadBalancerPort": {
600
+ "shape_name": "AccessPointPort",
601
+ "type": "integer",
602
+ "documentation": "\n <p>\n Specifies the external LoadBalancer port number.\n This property cannot be modified for the life of the LoadBalancer.\n </p>\n ",
603
+ "required": true
604
+ },
605
+ "InstanceProtocol": {
606
+ "shape_name": "Protocol",
607
+ "type": "string",
608
+ "documentation": "\n \t<p>\n \tSpecifies the protocol to use for routing traffic to back-end instances - HTTP, HTTPS, TCP, or SSL.\n \tThis property cannot be modified for the life of the LoadBalancer.\n \t</p>\n \t<note>\n \tIf the front-end protocol is HTTP or HTTPS, <code>InstanceProtocol</code> has to be at the same protocol layer,\n \t i.e., HTTP or HTTPS. Likewise, if the front-end protocol is TCP or SSL, InstanceProtocol has to be TCP or SSL.\n \t</note>\n \t<note>\n \tIf there is another listener with the same <code>InstancePort</code> whose <code>InstanceProtocol</code> is secure,\n \ti.e., HTTPS or SSL, the listener's <code>InstanceProtocol</code> has to be secure, i.e., HTTPS or SSL. \n If there is another listener with the same <code>InstancePort</code> whose <code>InstanceProtocol</code> is HTTP or TCP,\n the listener's <code>InstanceProtocol</code> must be either HTTP or TCP. \n \t</note>\n "
609
+ },
610
+ "InstancePort": {
611
+ "shape_name": "InstancePort",
612
+ "type": "integer",
613
+ "min_length": 1,
614
+ "max_length": 65535,
615
+ "documentation": "\n <p>\n Specifies the TCP port on which the instance server is listening.\n This property cannot be modified for the life of the LoadBalancer.\n </p>\n ",
616
+ "required": true
617
+ },
618
+ "SSLCertificateId": {
619
+ "shape_name": "SSLCertificateId",
620
+ "type": "string",
621
+ "documentation": "\n \t<p>\n \tThe ARN string of the server certificate. \n \tTo get the ARN of the server certificate, call the AWS Identity and Access Management \n \t <a href=\"http://docs.aws.amazon.com/IAM/latest/APIReference/index.html?API_UploadServerCertificate.html\">UploadServerCertificate \t\n \t</a> API. </p>\n "
622
+ }
623
+ },
624
+ "documentation": "\n <p>\n The Listener data type.\n </p>\n "
625
+ },
626
+ "documentation": "\n \t<p>\n \tA list of <code>LoadBalancerPort</code>, \n \t<code>InstancePort</code>, \n \t<code>Protocol</code>, and \n \t<code>SSLCertificateId</code> items. \t\n \t</p>\n ",
627
+ "required": true
628
+ }
629
+ },
630
+ "documentation": "\n\t\t<p>\n\t\tThe input for the <a>CreateLoadBalancerListeners</a> action.\n\t\t</p>\n "
631
+ },
632
+ "output": {
633
+ "shape_name": "CreateLoadBalancerListenerOutput",
634
+ "type": "structure",
635
+ "members": {
636
+ },
637
+ "documentation": "\n\t\t<p>\n\t\tThe output for the <a>CreateLoadBalancerListeners</a> action.\n\t\t</p>\n "
638
+ },
639
+ "errors": [
640
+ {
641
+ "shape_name": "AccessPointNotFoundException",
642
+ "type": "structure",
643
+ "members": {
644
+ },
645
+ "documentation": "\n <p>\n The specified LoadBalancer could not be found.\n </p>\n "
646
+ },
647
+ {
648
+ "shape_name": "DuplicateListenerException",
649
+ "type": "structure",
650
+ "members": {
651
+ },
652
+ "documentation": "\n \t<p>\n \tA <code>Listener</code> already exists for the given \n \t<code>LoadBalancerName</code> and <code>LoadBalancerPort</code>, \n \tbut with a different <code>InstancePort</code>, <code>Protocol</code>, \n \tor <code>SSLCertificateId</code>. \t\n \t</p>\n "
653
+ },
654
+ {
655
+ "shape_name": "CertificateNotFoundException",
656
+ "type": "structure",
657
+ "members": {
658
+ },
659
+ "documentation": "\n \t<p>\n The specified SSL ID does not refer to a valid SSL certificate \n in the AWS Identity and Access Management Service.\n \t</p>\n "
660
+ },
661
+ {
662
+ "shape_name": "InvalidConfigurationRequestException",
663
+ "type": "structure",
664
+ "members": {
665
+ },
666
+ "documentation": "\n <p>\n Requested configuration change is invalid.\n </p>\n "
667
+ }
668
+ ],
669
+ "documentation": "\n \t<p>\n \tCreates one or more listeners on a LoadBalancer for the specified port. \n \tIf a listener with the given port does not already exist, it will be created; \n \totherwise, the properties of the new listener must match the properties \n \tof the existing listener. \n \t</p>\n "
670
+ },
671
+ "CreateLoadBalancerPolicy": {
672
+ "name": "CreateLoadBalancerPolicy",
673
+ "input": {
674
+ "shape_name": "CreateLoadBalancerPolicyInput",
675
+ "type": "structure",
676
+ "members": {
677
+ "LoadBalancerName": {
678
+ "shape_name": "AccessPointName",
679
+ "type": "string",
680
+ "documentation": "\n \t<p>\n \tThe name associated with the LoadBalancer for which the policy is being created.\n \tThis name must be unique within the client AWS account.\n \t</p>\n ",
681
+ "required": true
682
+ },
683
+ "PolicyName": {
684
+ "shape_name": "PolicyName",
685
+ "type": "string",
686
+ "documentation": "\n \t<p>\n \tThe name of the LoadBalancer policy being created.\n \tThe name must be unique within the set of policies for this LoadBalancer.\n \t</p>\n ",
687
+ "required": true
688
+ },
689
+ "PolicyTypeName": {
690
+ "shape_name": "PolicyTypeName",
691
+ "type": "string",
692
+ "documentation": "\n \t<p>\n \tThe name of the base policy type being used to create this policy.\n \tTo get the list of policy types, use the <a>DescribeLoadBalancerPolicyTypes</a> action.\n \t</p>\n ",
693
+ "required": true
694
+ },
695
+ "PolicyAttributes": {
696
+ "shape_name": "PolicyAttributes",
697
+ "type": "list",
698
+ "members": {
699
+ "shape_name": "PolicyAttribute",
700
+ "type": "structure",
701
+ "members": {
702
+ "AttributeName": {
703
+ "shape_name": "AttributeName",
704
+ "type": "string",
705
+ "documentation": "\n \t<p>\n \tThe name of the attribute associated with the policy.\n \t</p>\n "
706
+ },
707
+ "AttributeValue": {
708
+ "shape_name": "AttributeValue",
709
+ "type": "string",
710
+ "documentation": "\n \t<p>\n \tThe value of the attribute associated with the policy.\n \t</p>\n "
711
+ }
712
+ },
713
+ "documentation": "\n \t<p>\n \tThe <a>PolicyAttribute</a> data type. This data type contains a key/value pair that defines properties of\n \ta specific policy.\n \t</p>\n "
714
+ },
715
+ "documentation": "\n \t<p>\n \tA list of attributes associated with the policy being created.\n \t</p>\n "
716
+ }
717
+ },
718
+ "documentation": "\n "
719
+ },
720
+ "output": {
721
+ "shape_name": "CreateLoadBalancerPolicyOutput",
722
+ "type": "structure",
723
+ "members": {
724
+ },
725
+ "documentation": "\n <p>The output for the <a>CreateLoadBalancerPolicy</a> action.\n </p>\n "
726
+ },
727
+ "errors": [
728
+ {
729
+ "shape_name": "AccessPointNotFoundException",
730
+ "type": "structure",
731
+ "members": {
732
+ },
733
+ "documentation": "\n <p>\n The specified LoadBalancer could not be found.\n </p>\n "
734
+ },
735
+ {
736
+ "shape_name": "PolicyTypeNotFoundException",
737
+ "type": "structure",
738
+ "members": {
739
+ },
740
+ "documentation": "\n \t<p>\n \tOne or more of the specified policy types do not exist.\n \t</p>\n "
741
+ },
742
+ {
743
+ "shape_name": "DuplicatePolicyNameException",
744
+ "type": "structure",
745
+ "members": {
746
+ },
747
+ "documentation": "\n <p>\n Policy with the same name exists for this LoadBalancer.\n Please choose another name.\n </p>\n "
748
+ },
749
+ {
750
+ "shape_name": "TooManyPoliciesException",
751
+ "type": "structure",
752
+ "members": {
753
+ },
754
+ "documentation": "\n <p>\n Quota for number of policies for this LoadBalancer\n has already been reached.\n </p>\n "
755
+ },
756
+ {
757
+ "shape_name": "InvalidConfigurationRequestException",
758
+ "type": "structure",
759
+ "members": {
760
+ },
761
+ "documentation": "\n <p>\n Requested configuration change is invalid.\n </p>\n "
762
+ }
763
+ ],
764
+ "documentation": "\n \t<p>\n \tCreates a new policy that contains the necessary attributes depending on the policy type.\n \tPolicies are settings that are saved for your Elastic LoadBalancer and that can be applied to the\n \tfront-end listener, or the back-end application server, depending on your policy type.\n \t</p>\n "
765
+ },
766
+ "DeleteLoadBalancer": {
767
+ "name": "DeleteLoadBalancer",
768
+ "input": {
769
+ "shape_name": "DeleteAccessPointInput",
770
+ "type": "structure",
771
+ "members": {
772
+ "LoadBalancerName": {
773
+ "shape_name": "AccessPointName",
774
+ "type": "string",
775
+ "documentation": "\n <p>\n The name associated with the LoadBalancer.\n The name must be unique within the client AWS account.\n </p>\n ",
776
+ "required": true
777
+ }
778
+ },
779
+ "documentation": "\n\t\t<p>\n\t\tThe input for the <a>DeleteLoadBalancer</a> action.\n\t\t</p>\n "
780
+ },
781
+ "output": {
782
+ "shape_name": "DeleteAccessPointOutput",
783
+ "type": "structure",
784
+ "members": {
785
+ },
786
+ "documentation": "\n\t\t<p>\n\t\tThe output for the <a>DeleteLoadBalancer</a> action.\n\t\t</p>\n "
787
+ },
788
+ "errors": [
789
+
790
+ ],
791
+ "documentation": "\n <p>\n Deletes the specified LoadBalancer.\n </p>\n <p>\n If attempting to recreate the LoadBalancer,\n the client must reconfigure all the settings.\n The DNS name associated with a deleted LoadBalancer\n will no longer be usable.\n Once deleted, the name and associated DNS record of the\n LoadBalancer no longer exist and traffic sent to any of its\n IP addresses will no longer be delivered to client instances.\n The client will not receive the same DNS name even if a\n new LoadBalancer with same LoadBalancerName is created.\n </p>\n <p>\n To successfully call this API, the client must provide the same\n account credentials as were used to create the LoadBalancer.\n </p>\n <note>\n By design, if the LoadBalancer does not exist or has already been deleted,\n DeleteLoadBalancer still succeeds.\n </note>\n "
792
+ },
793
+ "DeleteLoadBalancerListeners": {
794
+ "name": "DeleteLoadBalancerListeners",
795
+ "input": {
796
+ "shape_name": "DeleteLoadBalancerListenerInput",
797
+ "type": "structure",
798
+ "members": {
799
+ "LoadBalancerName": {
800
+ "shape_name": "AccessPointName",
801
+ "type": "string",
802
+ "documentation": "\n \t<p>\n \tThe mnemonic name associated with the LoadBalancer. \n \t</p>\n ",
803
+ "required": true
804
+ },
805
+ "LoadBalancerPorts": {
806
+ "shape_name": "Ports",
807
+ "type": "list",
808
+ "members": {
809
+ "shape_name": "AccessPointPort",
810
+ "type": "integer",
811
+ "documentation": null
812
+ },
813
+ "documentation": "\n \t<p>\n The client port number(s) of the LoadBalancerListener(s) to be removed. \n \t</p>\n ",
814
+ "required": true
815
+ }
816
+ },
817
+ "documentation": "\n\t\t<p>\n\t\tThe input for the <a>DeleteLoadBalancerListeners</a> action.\n\t\t</p>\n "
818
+ },
819
+ "output": {
820
+ "shape_name": "DeleteLoadBalancerListenerOutput",
821
+ "type": "structure",
822
+ "members": {
823
+ },
824
+ "documentation": "\n\t\t<p>\n\t\tThe output for the <a>DeleteLoadBalancerListeners</a> action.\n\t\t</p>\n "
825
+ },
826
+ "errors": [
827
+ {
828
+ "shape_name": "AccessPointNotFoundException",
829
+ "type": "structure",
830
+ "members": {
831
+ },
832
+ "documentation": "\n <p>\n The specified LoadBalancer could not be found.\n </p>\n "
833
+ }
834
+ ],
835
+ "documentation": "\n \t<p>\n \tDeletes listeners from the LoadBalancer for the specified port.\n \t</p>\n \n "
836
+ },
837
+ "DeleteLoadBalancerPolicy": {
838
+ "name": "DeleteLoadBalancerPolicy",
839
+ "input": {
840
+ "shape_name": "DeleteLoadBalancerPolicyInput",
841
+ "type": "structure",
842
+ "members": {
843
+ "LoadBalancerName": {
844
+ "shape_name": "AccessPointName",
845
+ "type": "string",
846
+ "documentation": "\n \t<p>\n \tThe mnemonic name associated with the LoadBalancer. \n \tThe name must be unique within your AWS account.\n \t</p>\n ",
847
+ "required": true
848
+ },
849
+ "PolicyName": {
850
+ "shape_name": "PolicyName",
851
+ "type": "string",
852
+ "documentation": "\n \t<p>\n \tThe mnemonic name for the policy being deleted. \n \t</p>\n ",
853
+ "required": true
854
+ }
855
+ },
856
+ "documentation": "\n\t\t<p>\n\t\tThe input for the <a>DeleteLoadBalancerPolicy</a> action.\n\t\t</p>\n "
857
+ },
858
+ "output": {
859
+ "shape_name": "DeleteLoadBalancerPolicyOutput",
860
+ "type": "structure",
861
+ "members": {
862
+ },
863
+ "documentation": "\n\t\t<p>\n\t\tThe output for the <a>DeleteLoadBalancerPolicy</a> action.\n\t\t</p>\n "
864
+ },
865
+ "errors": [
866
+ {
867
+ "shape_name": "AccessPointNotFoundException",
868
+ "type": "structure",
869
+ "members": {
870
+ },
871
+ "documentation": "\n <p>\n The specified LoadBalancer could not be found.\n </p>\n "
872
+ },
873
+ {
874
+ "shape_name": "InvalidConfigurationRequestException",
875
+ "type": "structure",
876
+ "members": {
877
+ },
878
+ "documentation": "\n <p>\n Requested configuration change is invalid.\n </p>\n "
879
+ }
880
+ ],
881
+ "documentation": "\n \t<p>\n \tDeletes a policy from the LoadBalancer. \n \tThe specified policy must not be enabled for any listeners.\n \t</p>\n "
882
+ },
883
+ "DeregisterInstancesFromLoadBalancer": {
884
+ "name": "DeregisterInstancesFromLoadBalancer",
885
+ "input": {
886
+ "shape_name": "DeregisterEndPointsInput",
887
+ "type": "structure",
888
+ "members": {
889
+ "LoadBalancerName": {
890
+ "shape_name": "AccessPointName",
891
+ "type": "string",
892
+ "documentation": "\n <p>\n The name associated with the LoadBalancer.\n The name must be unique within the client AWS account.\n </p>\n ",
893
+ "required": true
894
+ },
895
+ "Instances": {
896
+ "shape_name": "Instances",
897
+ "type": "list",
898
+ "members": {
899
+ "shape_name": "Instance",
900
+ "type": "structure",
901
+ "members": {
902
+ "InstanceId": {
903
+ "shape_name": "InstanceId",
904
+ "type": "string",
905
+ "documentation": "\n <p>\n Provides an EC2 instance ID.\n </p>\n "
906
+ }
907
+ },
908
+ "documentation": "\n <p>\n The Instance data type.\n </p>\n "
909
+ },
910
+ "documentation": "\n <p>\n A list of EC2 instance IDs consisting of all\n instances to be deregistered.\n </p>\n ",
911
+ "required": true
912
+ }
913
+ },
914
+ "documentation": "\n\t\t<p>\n\t\tThe input for the <a>DeregisterInstancesFromLoadBalancer</a> action.\n\t\t</p>\n "
915
+ },
916
+ "output": {
917
+ "shape_name": "DeregisterEndPointsOutput",
918
+ "type": "structure",
919
+ "members": {
920
+ "Instances": {
921
+ "shape_name": "Instances",
922
+ "type": "list",
923
+ "members": {
924
+ "shape_name": "Instance",
925
+ "type": "structure",
926
+ "members": {
927
+ "InstanceId": {
928
+ "shape_name": "InstanceId",
929
+ "type": "string",
930
+ "documentation": "\n <p>\n Provides an EC2 instance ID.\n </p>\n "
931
+ }
932
+ },
933
+ "documentation": "\n <p>\n The Instance data type.\n </p>\n "
934
+ },
935
+ "documentation": "\n <p>\n An updated list of remaining instances\n registered with the LoadBalancer.\n </p>\n "
936
+ }
937
+ },
938
+ "documentation": "\n\t\t<p>\n\t\tThe output for the <a>DeregisterInstancesFromLoadBalancer</a> action.\n\t\t</p>\n "
939
+ },
940
+ "errors": [
941
+ {
942
+ "shape_name": "AccessPointNotFoundException",
943
+ "type": "structure",
944
+ "members": {
945
+ },
946
+ "documentation": "\n <p>\n The specified LoadBalancer could not be found.\n </p>\n "
947
+ },
948
+ {
949
+ "shape_name": "InvalidEndPointException",
950
+ "type": "structure",
951
+ "members": {
952
+ },
953
+ "documentation": "\n <p>\n The specified EndPoint is not valid.\n </p>\n "
954
+ }
955
+ ],
956
+ "documentation": "\n <p>\n Deregisters instances from the LoadBalancer.\n Once the instance is deregistered,\n it will stop receiving traffic from the LoadBalancer.\n </p>\n <p>\n In order to successfully call this API,\n the same account credentials as those\n used to create the LoadBalancer must be provided.\n </p>\n "
957
+ },
958
+ "DescribeInstanceHealth": {
959
+ "name": "DescribeInstanceHealth",
960
+ "input": {
961
+ "shape_name": "DescribeEndPointStateInput",
962
+ "type": "structure",
963
+ "members": {
964
+ "LoadBalancerName": {
965
+ "shape_name": "AccessPointName",
966
+ "type": "string",
967
+ "documentation": "\n <p>\n The name associated with the LoadBalancer.\n The name must be unique within the client AWS account.\n </p>\n ",
968
+ "required": true
969
+ },
970
+ "Instances": {
971
+ "shape_name": "Instances",
972
+ "type": "list",
973
+ "members": {
974
+ "shape_name": "Instance",
975
+ "type": "structure",
976
+ "members": {
977
+ "InstanceId": {
978
+ "shape_name": "InstanceId",
979
+ "type": "string",
980
+ "documentation": "\n <p>\n Provides an EC2 instance ID.\n </p>\n "
981
+ }
982
+ },
983
+ "documentation": "\n <p>\n The Instance data type.\n </p>\n "
984
+ },
985
+ "documentation": "\n <p>\n A list of instance IDs whose states are being queried.\n </p>\n "
986
+ }
987
+ },
988
+ "documentation": "\n <p>\n Returns the current state of the instances of the\n specified LoadBalancer. If no instances are specified,\n the state of all the instances for the LoadBalancer is returned.\n </p>\n "
989
+ },
990
+ "output": {
991
+ "shape_name": "DescribeEndPointStateOutput",
992
+ "type": "structure",
993
+ "members": {
994
+ "InstanceStates": {
995
+ "shape_name": "InstanceStates",
996
+ "type": "list",
997
+ "members": {
998
+ "shape_name": "InstanceState",
999
+ "type": "structure",
1000
+ "members": {
1001
+ "InstanceId": {
1002
+ "shape_name": "InstanceId",
1003
+ "type": "string",
1004
+ "documentation": "\n <p>\n Provides an EC2 instance ID.\n </p>\n "
1005
+ },
1006
+ "State": {
1007
+ "shape_name": "State",
1008
+ "type": "string",
1009
+ "documentation": "\n <p>\n Specifies the current state of the instance.\n Valid value: InService|OutOfService\n </p>\n "
1010
+ },
1011
+ "ReasonCode": {
1012
+ "shape_name": "ReasonCode",
1013
+ "type": "string",
1014
+ "documentation": "\n <p>\n Provides information about the cause of <i>OutOfService</i> instances.\n Specifically, it indicates whether the cause is Elastic Load Balancing\n or the instance behind the LoadBalancer.\n </p>\n "
1015
+ },
1016
+ "Description": {
1017
+ "shape_name": "Description",
1018
+ "type": "string",
1019
+ "documentation": "\n <p>\n Provides a description of the instance state.\n </p>\n "
1020
+ }
1021
+ },
1022
+ "documentation": "\n <p>\n The InstanceState data type.\n </p>\n "
1023
+ },
1024
+ "documentation": "\n <p>\n A list containing health information\n for the specified instances.\n </p>\n "
1025
+ }
1026
+ },
1027
+ "documentation": "\n\t\t<p>\n\t\tThe output for the <a>DescribeInstanceHealth</a> action.\n\t\t</p>\n "
1028
+ },
1029
+ "errors": [
1030
+ {
1031
+ "shape_name": "AccessPointNotFoundException",
1032
+ "type": "structure",
1033
+ "members": {
1034
+ },
1035
+ "documentation": "\n <p>\n The specified LoadBalancer could not be found.\n </p>\n "
1036
+ },
1037
+ {
1038
+ "shape_name": "InvalidEndPointException",
1039
+ "type": "structure",
1040
+ "members": {
1041
+ },
1042
+ "documentation": "\n <p>\n The specified EndPoint is not valid.\n </p>\n "
1043
+ }
1044
+ ],
1045
+ "documentation": "\n <p>\n Returns the current state of the instances of the specified LoadBalancer.\n If no instances are specified, the state of all the instances for the\n LoadBalancer is returned.\n </p>\n <note>\n The client must have created the specified input\n LoadBalancer in order to retrieve this information;\n the client must provide the same account credentials\n as those that were used to create the LoadBalancer.\n </note>\n "
1046
+ },
1047
+ "DescribeLoadBalancerPolicies": {
1048
+ "name": "DescribeLoadBalancerPolicies",
1049
+ "input": {
1050
+ "shape_name": "DescribeLoadBalancerPoliciesInput",
1051
+ "type": "structure",
1052
+ "members": {
1053
+ "LoadBalancerName": {
1054
+ "shape_name": "AccessPointName",
1055
+ "type": "string",
1056
+ "documentation": "\n \t<p>\n \tThe mnemonic name associated with the LoadBalancer.\n \tIf no name is specified, the operation returns the attributes of either all the sample policies pre-defined by Elastic Load Balancing or the specified sample polices.\n \t</p>\n "
1057
+ },
1058
+ "PolicyNames": {
1059
+ "shape_name": "PolicyNames",
1060
+ "type": "list",
1061
+ "members": {
1062
+ "shape_name": "PolicyName",
1063
+ "type": "string",
1064
+ "documentation": null
1065
+ },
1066
+ "documentation": "\n \t<p>\n \t The names of LoadBalancer policies you've created or Elastic Load Balancing sample policy names.\n \t</p>\n "
1067
+ }
1068
+ },
1069
+ "documentation": "\n "
1070
+ },
1071
+ "output": {
1072
+ "shape_name": "DescribeLoadBalancerPoliciesOutput",
1073
+ "type": "structure",
1074
+ "members": {
1075
+ "PolicyDescriptions": {
1076
+ "shape_name": "PolicyDescriptions",
1077
+ "type": "list",
1078
+ "members": {
1079
+ "shape_name": "PolicyDescription",
1080
+ "type": "structure",
1081
+ "members": {
1082
+ "PolicyName": {
1083
+ "shape_name": "PolicyName",
1084
+ "type": "string",
1085
+ "documentation": "\n \t<p>\n \tThe name mof the policy associated with the LoadBalancer.\n \t</p>\n "
1086
+ },
1087
+ "PolicyTypeName": {
1088
+ "shape_name": "PolicyTypeName",
1089
+ "type": "string",
1090
+ "documentation": "\n \t<p>\n \tThe name of the policy type associated with the LoadBalancer.\n \t</p>\n "
1091
+ },
1092
+ "PolicyAttributeDescriptions": {
1093
+ "shape_name": "PolicyAttributeDescriptions",
1094
+ "type": "list",
1095
+ "members": {
1096
+ "shape_name": "PolicyAttributeDescription",
1097
+ "type": "structure",
1098
+ "members": {
1099
+ "AttributeName": {
1100
+ "shape_name": "AttributeName",
1101
+ "type": "string",
1102
+ "documentation": "\n \t<p>\n \tThe name of the attribute associated with the policy.\n \t</p>\n "
1103
+ },
1104
+ "AttributeValue": {
1105
+ "shape_name": "AttributeValue",
1106
+ "type": "string",
1107
+ "documentation": "\n \t<p>\n \tThe value of the attribute associated with the policy.\n \t</p>\n "
1108
+ }
1109
+ },
1110
+ "documentation": "\n \t<p>\n \tThe <code>PolicyAttributeDescription</code> data type.\n \tThis data type is used to describe the attributes and values\n \tassociated with a policy.\n \t</p>\n "
1111
+ },
1112
+ "documentation": "\n \t<p>\n \tA list of policy attribute description structures.\n \t</p>\n "
1113
+ }
1114
+ },
1115
+ "documentation": "\n \t<p>\n \tThe <code>PolicyDescription</code> data type.\n \t</p>\n "
1116
+ },
1117
+ "documentation": "\n \t<p>\n \tA list of policy description structures.\n \t</p>\n "
1118
+ }
1119
+ },
1120
+ "documentation": "\n <p>The output for the <a>DescribeLoadBalancerPolicies</a> action.\n </p>\n "
1121
+ },
1122
+ "errors": [
1123
+ {
1124
+ "shape_name": "AccessPointNotFoundException",
1125
+ "type": "structure",
1126
+ "members": {
1127
+ },
1128
+ "documentation": "\n <p>\n The specified LoadBalancer could not be found.\n </p>\n "
1129
+ },
1130
+ {
1131
+ "shape_name": "PolicyNotFoundException",
1132
+ "type": "structure",
1133
+ "members": {
1134
+ },
1135
+ "documentation": "\n <p>\n One or more specified policies were not found.\n </p>\n "
1136
+ }
1137
+ ],
1138
+ "documentation": "\n <p>Returns detailed descriptions of the policies.\n If you specify a LoadBalancer name, the operation returns either the descriptions of the specified policies, or descriptions of all the policies created for the LoadBalancer.\n If you don't specify a LoadBalancer name, the operation returns descriptions of the specified sample policies, or descriptions of all the sample policies.\n The names of the sample policies have the <code>ELBSample-</code> prefix.\n </p>\n "
1139
+ },
1140
+ "DescribeLoadBalancerPolicyTypes": {
1141
+ "name": "DescribeLoadBalancerPolicyTypes",
1142
+ "input": {
1143
+ "shape_name": "DescribeLoadBalancerPolicyTypesInput",
1144
+ "type": "structure",
1145
+ "members": {
1146
+ "PolicyTypeNames": {
1147
+ "shape_name": "PolicyTypeNames",
1148
+ "type": "list",
1149
+ "members": {
1150
+ "shape_name": "PolicyTypeName",
1151
+ "type": "string",
1152
+ "documentation": null
1153
+ },
1154
+ "documentation": "\n \t<p>\n \tSpecifies the name of the policy types. If no names are specified,\n \treturns the description of all\n \tthe policy types defined by Elastic Load Balancing service.\n \t</p>\n "
1155
+ }
1156
+ },
1157
+ "documentation": "\n \t"
1158
+ },
1159
+ "output": {
1160
+ "shape_name": "DescribeLoadBalancerPolicyTypesOutput",
1161
+ "type": "structure",
1162
+ "members": {
1163
+ "PolicyTypeDescriptions": {
1164
+ "shape_name": "PolicyTypeDescriptions",
1165
+ "type": "list",
1166
+ "members": {
1167
+ "shape_name": "PolicyTypeDescription",
1168
+ "type": "structure",
1169
+ "members": {
1170
+ "PolicyTypeName": {
1171
+ "shape_name": "PolicyTypeName",
1172
+ "type": "string",
1173
+ "documentation": "\n \t<p>\n \tThe name of the policy type.\n \t</p>\n "
1174
+ },
1175
+ "Description": {
1176
+ "shape_name": "Description",
1177
+ "type": "string",
1178
+ "documentation": "\n \t<p>\n \tA human-readable description of the policy type.\n \t</p>\n "
1179
+ },
1180
+ "PolicyAttributeTypeDescriptions": {
1181
+ "shape_name": "PolicyAttributeTypeDescriptions",
1182
+ "type": "list",
1183
+ "members": {
1184
+ "shape_name": "PolicyAttributeTypeDescription",
1185
+ "type": "structure",
1186
+ "members": {
1187
+ "AttributeName": {
1188
+ "shape_name": "AttributeName",
1189
+ "type": "string",
1190
+ "documentation": "\n \t<p>\n \tThe name of the attribute associated with the policy type.\n \t</p>\n "
1191
+ },
1192
+ "AttributeType": {
1193
+ "shape_name": "AttributeType",
1194
+ "type": "string",
1195
+ "documentation": "\n \t<p>\n \tThe type of attribute. For example, Boolean, Integer, etc.\n \t</p>\n "
1196
+ },
1197
+ "Description": {
1198
+ "shape_name": "Description",
1199
+ "type": "string",
1200
+ "documentation": "\n \t<p>\n \tA human-readable description of the attribute.\n \t</p>\n "
1201
+ },
1202
+ "DefaultValue": {
1203
+ "shape_name": "DefaultValue",
1204
+ "type": "string",
1205
+ "documentation": "\n \t<p>\n \tThe default value of the attribute, if applicable.\n \t</p>\n "
1206
+ },
1207
+ "Cardinality": {
1208
+ "shape_name": "Cardinality",
1209
+ "type": "string",
1210
+ "documentation": "\n \t<p>\n \tThe cardinality of the attribute. Valid Values:\n \t\t<ul>\n \t\t\t<li>ONE(1) : Single value required</li>\n \t\t\t<li>ZERO_OR_ONE(0..1) : Up to one value can be supplied</li>\n \t\t\t<li>ZERO_OR_MORE(0..*) : Optional. Multiple values are allowed</li>\n \t\t\t<li>ONE_OR_MORE(1..*0) : Required. Multiple values are allowed</li>\n \t\t</ul>\n \t</p>\n "
1211
+ }
1212
+ },
1213
+ "documentation": "\n \t<p>\n \tThe <code>PolicyAttributeTypeDescription</code> data type. This data type is used to describe values\n \tthat are acceptable for the policy attribute.\n \t</p>\n "
1214
+ },
1215
+ "documentation": "\n \t<p>\n \tThe description of the policy attributes associated with the LoadBalancer policies defined by the Elastic Load Balancing service.\n \t</p>\n "
1216
+ }
1217
+ },
1218
+ "documentation": "\n \t<p>\n \tThe <a>PolicyTypeDescription</a> data type.\n \t</p>\n "
1219
+ },
1220
+ "documentation": "\n \t<p>\n \tList of policy type description structures of the specified policy type.\n \tIf no policy type names are specified,\n \treturns the description of all the policy types defined by Elastic Load Balancing service.\n \t</p>\n "
1221
+ }
1222
+ },
1223
+ "documentation": "\n \t<p>\n \tThe output for the <a>DescribeLoadBalancerPolicyTypes</a> action.\n \t</p>\n "
1224
+ },
1225
+ "errors": [
1226
+ {
1227
+ "shape_name": "PolicyTypeNotFoundException",
1228
+ "type": "structure",
1229
+ "members": {
1230
+ },
1231
+ "documentation": "\n \t<p>\n \tOne or more of the specified policy types do not exist.\n \t</p>\n "
1232
+ }
1233
+ ],
1234
+ "documentation": "\n \t<p>\n \tReturns meta-information on the specified LoadBalancer policies defined by the\n \tElastic Load Balancing service. The policy types that are\n \treturned from this action can be used in a <a>CreateLoadBalancerPolicy</a> action to\n \tinstantiate specific policy configurations that will be applied to an Elastic LoadBalancer.\n \t</p>\n "
1235
+ },
1236
+ "DescribeLoadBalancers": {
1237
+ "name": "DescribeLoadBalancers",
1238
+ "input": {
1239
+ "shape_name": "DescribeAccessPointsInput",
1240
+ "type": "structure",
1241
+ "members": {
1242
+ "LoadBalancerNames": {
1243
+ "shape_name": "LoadBalancerNames",
1244
+ "type": "list",
1245
+ "members": {
1246
+ "shape_name": "AccessPointName",
1247
+ "type": "string",
1248
+ "documentation": null
1249
+ },
1250
+ "documentation": "\n <p>\n A list of names associated with the LoadBalancers at creation time.\n </p>\n "
1251
+ },
1252
+ "Marker": {
1253
+ "shape_name": "Marker",
1254
+ "type": "string",
1255
+ "documentation": "\n <p>\n An optional parameter reserved for future use.\n </p>\n "
1256
+ }
1257
+ },
1258
+ "documentation": "\n\t\t<p>\n\t\tThe input for the <a>DescribeLoadBalancers</a> action.\n\t\t</p>\n "
1259
+ },
1260
+ "output": {
1261
+ "shape_name": "DescribeAccessPointsOutput",
1262
+ "type": "structure",
1263
+ "members": {
1264
+ "LoadBalancerDescriptions": {
1265
+ "shape_name": "LoadBalancerDescriptions",
1266
+ "type": "list",
1267
+ "members": {
1268
+ "shape_name": "LoadBalancerDescription",
1269
+ "type": "structure",
1270
+ "members": {
1271
+ "LoadBalancerName": {
1272
+ "shape_name": "AccessPointName",
1273
+ "type": "string",
1274
+ "documentation": "\n <p>\n Specifies the name associated with the LoadBalancer.\n </p>\n "
1275
+ },
1276
+ "DNSName": {
1277
+ "shape_name": "DNSName",
1278
+ "type": "string",
1279
+ "documentation": "\n <p>\n Specifies the external DNS name associated with the LoadBalancer.\n </p>\n "
1280
+ },
1281
+ "CanonicalHostedZoneName": {
1282
+ "shape_name": "DNSName",
1283
+ "type": "string",
1284
+ "documentation": "\n <p>\n Provides the name of the Amazon Route 53 hosted zone that is associated\n with the LoadBalancer. For information on how to associate your load\n balancer with a hosted zone, go to <a href=\"http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/using-domain-names-with-elb.html\">Using Domain Names With Elastic Load Balancing</a>\n in the <i>Elastic Load Balancing Developer Guide</i>.\n </p>\n "
1285
+ },
1286
+ "CanonicalHostedZoneNameID": {
1287
+ "shape_name": "DNSName",
1288
+ "type": "string",
1289
+ "documentation": "\n <p>\n Provides the ID of the Amazon Route 53 hosted zone name that is associated\n with the LoadBalancer. For information on how to associate or disassociate your load\n balancer with a hosted zone, go to <a href=\"http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/using-domain-names-with-elb.html\">Using Domain Names With Elastic Load Balancing</a>\n in the <i>Elastic Load Balancing Developer Guide</i>. \n </p>\n "
1290
+ },
1291
+ "ListenerDescriptions": {
1292
+ "shape_name": "ListenerDescriptions",
1293
+ "type": "list",
1294
+ "members": {
1295
+ "shape_name": "ListenerDescription",
1296
+ "type": "structure",
1297
+ "members": {
1298
+ "Listener": {
1299
+ "shape_name": "Listener",
1300
+ "type": "structure",
1301
+ "members": {
1302
+ "Protocol": {
1303
+ "shape_name": "Protocol",
1304
+ "type": "string",
1305
+ "documentation": "\n <p>\n Specifies the LoadBalancer transport protocol to use for routing\n - HTTP, HTTPS, TCP or SSL.\n This property cannot be modified for the life of the LoadBalancer.\n </p>\n ",
1306
+ "required": true
1307
+ },
1308
+ "LoadBalancerPort": {
1309
+ "shape_name": "AccessPointPort",
1310
+ "type": "integer",
1311
+ "documentation": "\n <p>\n Specifies the external LoadBalancer port number.\n This property cannot be modified for the life of the LoadBalancer.\n </p>\n ",
1312
+ "required": true
1313
+ },
1314
+ "InstanceProtocol": {
1315
+ "shape_name": "Protocol",
1316
+ "type": "string",
1317
+ "documentation": "\n \t<p>\n \tSpecifies the protocol to use for routing traffic to back-end instances - HTTP, HTTPS, TCP, or SSL.\n \tThis property cannot be modified for the life of the LoadBalancer.\n \t</p>\n \t<note>\n \tIf the front-end protocol is HTTP or HTTPS, <code>InstanceProtocol</code> has to be at the same protocol layer,\n \t i.e., HTTP or HTTPS. Likewise, if the front-end protocol is TCP or SSL, InstanceProtocol has to be TCP or SSL.\n \t</note>\n \t<note>\n \tIf there is another listener with the same <code>InstancePort</code> whose <code>InstanceProtocol</code> is secure,\n \ti.e., HTTPS or SSL, the listener's <code>InstanceProtocol</code> has to be secure, i.e., HTTPS or SSL. \n If there is another listener with the same <code>InstancePort</code> whose <code>InstanceProtocol</code> is HTTP or TCP,\n the listener's <code>InstanceProtocol</code> must be either HTTP or TCP. \n \t</note>\n "
1318
+ },
1319
+ "InstancePort": {
1320
+ "shape_name": "InstancePort",
1321
+ "type": "integer",
1322
+ "min_length": 1,
1323
+ "max_length": 65535,
1324
+ "documentation": "\n <p>\n Specifies the TCP port on which the instance server is listening.\n This property cannot be modified for the life of the LoadBalancer.\n </p>\n ",
1325
+ "required": true
1326
+ },
1327
+ "SSLCertificateId": {
1328
+ "shape_name": "SSLCertificateId",
1329
+ "type": "string",
1330
+ "documentation": "\n \t<p>\n \tThe ARN string of the server certificate. \n \tTo get the ARN of the server certificate, call the AWS Identity and Access Management \n \t <a href=\"http://docs.aws.amazon.com/IAM/latest/APIReference/index.html?API_UploadServerCertificate.html\">UploadServerCertificate \t\n \t</a> API. </p>\n "
1331
+ }
1332
+ },
1333
+ "documentation": "\n <p>\n The Listener data type.\n </p>\n "
1334
+ },
1335
+ "PolicyNames": {
1336
+ "shape_name": "PolicyNames",
1337
+ "type": "list",
1338
+ "members": {
1339
+ "shape_name": "PolicyName",
1340
+ "type": "string",
1341
+ "documentation": null
1342
+ },
1343
+ "documentation": "\n \t<p>\n \tA list of policies enabled for this listener. \n \tAn empty list indicates that no policies are enabled.\n \t</p>\n "
1344
+ }
1345
+ },
1346
+ "documentation": "\n \t<p>\n \tThe ListenerDescription data type. \n \t</p>\n "
1347
+ },
1348
+ "documentation": "\n <p>\n LoadBalancerPort, InstancePort, Protocol, InstanceProtocol, and PolicyNames are returned\n in a list of tuples in the ListenerDescriptions element.\n </p>\n "
1349
+ },
1350
+ "Policies": {
1351
+ "shape_name": "Policies",
1352
+ "type": "structure",
1353
+ "members": {
1354
+ "AppCookieStickinessPolicies": {
1355
+ "shape_name": "AppCookieStickinessPolicies",
1356
+ "type": "list",
1357
+ "members": {
1358
+ "shape_name": "AppCookieStickinessPolicy",
1359
+ "type": "structure",
1360
+ "members": {
1361
+ "PolicyName": {
1362
+ "shape_name": "PolicyName",
1363
+ "type": "string",
1364
+ "documentation": "\n <p>The mnemonic name for the policy being created. The name must be unique within a set of policies for this LoadBalancer.\n </p>\n "
1365
+ },
1366
+ "CookieName": {
1367
+ "shape_name": "CookieName",
1368
+ "type": "string",
1369
+ "documentation": "\n <p>The name of the application cookie used for stickiness.\n </p>\n \n "
1370
+ }
1371
+ },
1372
+ "documentation": "\n <p>The AppCookieStickinessPolicy data type.\n </p>\n "
1373
+ },
1374
+ "documentation": "\n \t<p>\n \tA list of the <a>AppCookieStickinessPolicy</a> objects created with <a>CreateAppCookieStickinessPolicy</a>.\n \t</p>\n "
1375
+ },
1376
+ "LBCookieStickinessPolicies": {
1377
+ "shape_name": "LBCookieStickinessPolicies",
1378
+ "type": "list",
1379
+ "members": {
1380
+ "shape_name": "LBCookieStickinessPolicy",
1381
+ "type": "structure",
1382
+ "members": {
1383
+ "PolicyName": {
1384
+ "shape_name": "PolicyName",
1385
+ "type": "string",
1386
+ "documentation": "\n <p>The name for the policy being created. The name must be unique within the set of policies for this LoadBalancer.\n </p>\n "
1387
+ },
1388
+ "CookieExpirationPeriod": {
1389
+ "shape_name": "CookieExpirationPeriod",
1390
+ "type": "long",
1391
+ "documentation": "\n <p>The time period in seconds after which the cookie should be considered stale. Not specifying this parameter indicates that the stickiness session will last for the duration of the browser session.\n </p>\n "
1392
+ }
1393
+ },
1394
+ "documentation": "\n <p>The LBCookieStickinessPolicy data type.\n </p>\n "
1395
+ },
1396
+ "documentation": "\n \t<p>\n \tA list of <a>LBCookieStickinessPolicy</a> objects created with <a>CreateAppCookieStickinessPolicy</a>.\n \t</p>\n "
1397
+ },
1398
+ "OtherPolicies": {
1399
+ "shape_name": "PolicyNames",
1400
+ "type": "list",
1401
+ "members": {
1402
+ "shape_name": "PolicyName",
1403
+ "type": "string",
1404
+ "documentation": null
1405
+ },
1406
+ "documentation": "\n \t<p>\n \tA list of policy names other than the stickiness policies.\n \t</p>\n "
1407
+ }
1408
+ },
1409
+ "documentation": "\n \t\t<p>\n \t\tProvides a list of policies defined for the LoadBalancer.\n \t\t</p>\n \t"
1410
+ },
1411
+ "BackendServerDescriptions": {
1412
+ "shape_name": "BackendServerDescriptions",
1413
+ "type": "list",
1414
+ "members": {
1415
+ "shape_name": "BackendServerDescription",
1416
+ "type": "structure",
1417
+ "members": {
1418
+ "InstancePort": {
1419
+ "shape_name": "InstancePort",
1420
+ "type": "integer",
1421
+ "min_length": 1,
1422
+ "max_length": 65535,
1423
+ "documentation": "\n \t<p>\n \tProvides the port on which the back-end server is listening.\n \t</p>\n "
1424
+ },
1425
+ "PolicyNames": {
1426
+ "shape_name": "PolicyNames",
1427
+ "type": "list",
1428
+ "members": {
1429
+ "shape_name": "PolicyName",
1430
+ "type": "string",
1431
+ "documentation": null
1432
+ },
1433
+ "documentation": "\n \t<p>\n \tProvides a list of policy names enabled for the back-end server.\n \t</p>\n "
1434
+ }
1435
+ },
1436
+ "documentation": "\n \t<p>\n \tThis data type is used as a response element in the <a>DescribeLoadBalancers</a> action to describe the configuration of the back-end server.\n \t</p>\n "
1437
+ },
1438
+ "documentation": "\n \t<p>\n \tContains a list of back-end server descriptions.\n \t</p>\n "
1439
+ },
1440
+ "AvailabilityZones": {
1441
+ "shape_name": "AvailabilityZones",
1442
+ "type": "list",
1443
+ "members": {
1444
+ "shape_name": "AvailabilityZone",
1445
+ "type": "string",
1446
+ "documentation": null
1447
+ },
1448
+ "documentation": "\n <p>\n Specifies a list of Availability Zones.\n </p>\n "
1449
+ },
1450
+ "Subnets": {
1451
+ "shape_name": "Subnets",
1452
+ "type": "list",
1453
+ "members": {
1454
+ "shape_name": "SubnetId",
1455
+ "type": "string",
1456
+ "documentation": null
1457
+ },
1458
+ "documentation": "\n <p>\n Provides a list of VPC subnet IDs for the LoadBalancer.\n </p> \n "
1459
+ },
1460
+ "VPCId": {
1461
+ "shape_name": "VPCId",
1462
+ "type": "string",
1463
+ "documentation": "\n <p>\n Provides the ID of the VPC attached to the LoadBalancer.\n </p> \n "
1464
+ },
1465
+ "Instances": {
1466
+ "shape_name": "Instances",
1467
+ "type": "list",
1468
+ "members": {
1469
+ "shape_name": "Instance",
1470
+ "type": "structure",
1471
+ "members": {
1472
+ "InstanceId": {
1473
+ "shape_name": "InstanceId",
1474
+ "type": "string",
1475
+ "documentation": "\n <p>\n Provides an EC2 instance ID.\n </p>\n "
1476
+ }
1477
+ },
1478
+ "documentation": "\n <p>\n The Instance data type.\n </p>\n "
1479
+ },
1480
+ "documentation": "\n <p>\n Provides a list of EC2 instance IDs for the LoadBalancer.\n </p>\n "
1481
+ },
1482
+ "HealthCheck": {
1483
+ "shape_name": "HealthCheck",
1484
+ "type": "structure",
1485
+ "members": {
1486
+ "Target": {
1487
+ "shape_name": "HealthCheckTarget",
1488
+ "type": "string",
1489
+ "documentation": "\n <p>\n Specifies the instance being checked. The protocol is either TCP, HTTP, HTTPS, or SSL.\n The range of valid ports is one (1) through 65535.\n </p>\n <note>\n <p>\n TCP is the default, specified as a TCP: port pair,\n for example \"TCP:5000\". In this case a healthcheck simply\n attempts to open a TCP connection to the instance on the\n specified port. Failure to connect within the configured\n timeout is considered unhealthy.\n </p>\n <p>SSL is also specified as SSL: port pair, for example, SSL:5000.</p>\n <p>\n For HTTP or HTTPS protocol, the situation is different. You have to include a ping path in the string. HTTP is specified\n as a HTTP:port;/;PathToPing; grouping, for example\n \"HTTP:80/weather/us/wa/seattle\". In this case, a HTTP GET\n request is issued to the instance on the given port and path.\n Any answer other than \"200 OK\" within the timeout period is\n considered unhealthy.\n </p>\n <p>\n The total length of the HTTP ping target needs to\n be 1024 16-bit Unicode characters or less.\n </p>\n </note>\n ",
1490
+ "required": true
1491
+ },
1492
+ "Interval": {
1493
+ "shape_name": "HealthCheckInterval",
1494
+ "type": "integer",
1495
+ "min_length": 1,
1496
+ "max_length": 300,
1497
+ "documentation": "\n <p>\n Specifies the approximate interval, in seconds,\n between health checks of an individual instance.\n </p>\n ",
1498
+ "required": true
1499
+ },
1500
+ "Timeout": {
1501
+ "shape_name": "HealthCheckTimeout",
1502
+ "type": "integer",
1503
+ "min_length": 1,
1504
+ "max_length": 300,
1505
+ "documentation": "\n <p>\n Specifies the amount of time, in seconds, during which no response\n means a failed health probe.\n </p>\n <note>\n This value must be less than the <i>Interval</i> value.\n </note>\n ",
1506
+ "required": true
1507
+ },
1508
+ "UnhealthyThreshold": {
1509
+ "shape_name": "UnhealthyThreshold",
1510
+ "type": "integer",
1511
+ "min_length": 2,
1512
+ "max_length": 10,
1513
+ "documentation": "\n <p>\n Specifies the number of consecutive health probe failures required\n before moving the instance to the <i>Unhealthy</i> state.\n </p>\n ",
1514
+ "required": true
1515
+ },
1516
+ "HealthyThreshold": {
1517
+ "shape_name": "HealthyThreshold",
1518
+ "type": "integer",
1519
+ "min_length": 2,
1520
+ "max_length": 10,
1521
+ "documentation": "\n <p>\n Specifies the number of consecutive health probe successes required before\n moving the instance to the <i>Healthy</i> state.\n </p>\n ",
1522
+ "required": true
1523
+ }
1524
+ },
1525
+ "documentation": "\n <p>\n Specifies information regarding the\n various health probes conducted on the LoadBalancer.\n </p>\n "
1526
+ },
1527
+ "SourceSecurityGroup": {
1528
+ "shape_name": "SourceSecurityGroup",
1529
+ "type": "structure",
1530
+ "members": {
1531
+ "OwnerAlias": {
1532
+ "shape_name": "SecurityGroupOwnerAlias",
1533
+ "type": "string",
1534
+ "documentation": "\n <p>\n Owner of the source security group. Use this value for the \n <code>--source-group-user</code> parameter of the <code>ec2-authorize</code>\n command in the Amazon EC2 command line tool.\n </p>\n "
1535
+ },
1536
+ "GroupName": {
1537
+ "shape_name": "SecurityGroupName",
1538
+ "type": "string",
1539
+ "documentation": "\n <p>\n Name of the source security group. Use this value for the \n <code>--source-group</code> parameter of the <code>ec2-authorize</code>\n command in the Amazon EC2 command line tool.\n </p>\n "
1540
+ }
1541
+ },
1542
+ "documentation": "\n <p>\n The security group that you can use as part of your inbound rules for \n your LoadBalancer's back-end Amazon EC2 application instances. \n To only allow traffic from LoadBalancers, add a security group rule to your back end instance that specifies this\n source security group as the inbound source. \n </p>\n "
1543
+ },
1544
+ "SecurityGroups": {
1545
+ "shape_name": "SecurityGroups",
1546
+ "type": "list",
1547
+ "members": {
1548
+ "shape_name": "SecurityGroupId",
1549
+ "type": "string",
1550
+ "documentation": null
1551
+ },
1552
+ "documentation": "\n <p>\n The security groups the LoadBalancer is a member of (VPC only).\n </p> \n "
1553
+ },
1554
+ "CreatedTime": {
1555
+ "shape_name": "CreatedTime",
1556
+ "type": "timestamp",
1557
+ "documentation": "\n <p>\n Provides the date and time the LoadBalancer was created.\n </p>\n "
1558
+ },
1559
+ "Scheme": {
1560
+ "shape_name": "LoadBalancerScheme",
1561
+ "type": "string",
1562
+ "documentation": "\n <p>Specifies the type of LoadBalancer.</p>\n\n <p>If the <code>Scheme</code> is <code>internet-facing</code>, the LoadBalancer\n has a publicly resolvable DNS name that resolves to public IP addresses.</p>\n \n <p>If the <code>Scheme</code> is <code>internal</code>, the LoadBalancer has a publicly resolvable\n DNS name that resolves to private IP addresses.</p>\n \n <p> This option is only available for LoadBalancers attached to an Amazon VPC. </p> \n "
1563
+ }
1564
+ },
1565
+ "documentation": "\n <p>\n Contains the result of a successful invocation of <a>DescribeLoadBalancers</a>.\n </p>\n "
1566
+ },
1567
+ "documentation": "\n <p>\n A list of LoadBalancer description structures.\n </p>\n "
1568
+ },
1569
+ "NextMarker": {
1570
+ "shape_name": "Marker",
1571
+ "type": "string",
1572
+ "documentation": "\n <p>\n An optional parameter reserved for future use.\n </p>\n "
1573
+ }
1574
+ },
1575
+ "documentation": "\n\t\t<p>\n\t\tThe output for the <a>DescribeLoadBalancers</a> action.\n\t\t</p>\n "
1576
+ },
1577
+ "errors": [
1578
+ {
1579
+ "shape_name": "AccessPointNotFoundException",
1580
+ "type": "structure",
1581
+ "members": {
1582
+ },
1583
+ "documentation": "\n <p>\n The specified LoadBalancer could not be found.\n </p>\n "
1584
+ }
1585
+ ],
1586
+ "documentation": "\n <p>\n Returns detailed configuration information\n for the specified LoadBalancers. If no LoadBalancers are specified,\n the operation returns configuration information\n for all LoadBalancers created by the caller.\n </p>\n <note>\n The client must have created the specified input\n LoadBalancers in order to retrieve this information;\n the client must provide the same account credentials\n as those that were used to create the LoadBalancer.\n </note>\n "
1587
+ },
1588
+ "DetachLoadBalancerFromSubnets": {
1589
+ "name": "DetachLoadBalancerFromSubnets",
1590
+ "input": {
1591
+ "shape_name": "DetachLoadBalancerFromSubnetsInput",
1592
+ "type": "structure",
1593
+ "members": {
1594
+ "LoadBalancerName": {
1595
+ "shape_name": "AccessPointName",
1596
+ "type": "string",
1597
+ "documentation": "\n <p>\n The name associated with the LoadBalancer to be detached.\n The name must be unique within the client AWS account.\n </p>\n ",
1598
+ "required": true
1599
+ },
1600
+ "Subnets": {
1601
+ "shape_name": "Subnets",
1602
+ "type": "list",
1603
+ "members": {
1604
+ "shape_name": "SubnetId",
1605
+ "type": "string",
1606
+ "documentation": null
1607
+ },
1608
+ "documentation": "\n <p>\n A list of subnet IDs to remove from the set of configured subnets for the LoadBalancer.\n </p> \n ",
1609
+ "required": true
1610
+ }
1611
+ },
1612
+ "documentation": "\n <p>\n The input for the <a>DetachLoadBalancerFromSubnets</a> action. \n </p> \n "
1613
+ },
1614
+ "output": {
1615
+ "shape_name": "DetachLoadBalancerFromSubnetsOutput",
1616
+ "type": "structure",
1617
+ "members": {
1618
+ "Subnets": {
1619
+ "shape_name": "Subnets",
1620
+ "type": "list",
1621
+ "members": {
1622
+ "shape_name": "SubnetId",
1623
+ "type": "string",
1624
+ "documentation": null
1625
+ },
1626
+ "documentation": "\n <p>\n A list of subnet IDs removed from the configured set of subnets for the LoadBalancer. \n </p> \n "
1627
+ }
1628
+ },
1629
+ "documentation": "\n <p>\n The output for the <a>DetachLoadBalancerFromSubnets</a> action.\n </p>\n "
1630
+ },
1631
+ "errors": [
1632
+ {
1633
+ "shape_name": "AccessPointNotFoundException",
1634
+ "type": "structure",
1635
+ "members": {
1636
+ },
1637
+ "documentation": "\n <p>\n The specified LoadBalancer could not be found.\n </p>\n "
1638
+ },
1639
+ {
1640
+ "shape_name": "InvalidConfigurationRequestException",
1641
+ "type": "structure",
1642
+ "members": {
1643
+ },
1644
+ "documentation": "\n <p>\n Requested configuration change is invalid.\n </p>\n "
1645
+ }
1646
+ ],
1647
+ "documentation": "\n <p>\n Removes subnets from the set of configured subnets in the VPC for the LoadBalancer. \n </p> \n <p>\n After a subnet is removed all of the EndPoints registered with the LoadBalancer that are \n in the removed subnet will go into the <i>OutOfService</i> state. When a subnet is removed, the LoadBalancer\n will balance the traffic among the remaining routable subnets for the LoadBalancer. \n </p>\n "
1648
+ },
1649
+ "DisableAvailabilityZonesForLoadBalancer": {
1650
+ "name": "DisableAvailabilityZonesForLoadBalancer",
1651
+ "input": {
1652
+ "shape_name": "RemoveAvailabilityZonesInput",
1653
+ "type": "structure",
1654
+ "members": {
1655
+ "LoadBalancerName": {
1656
+ "shape_name": "AccessPointName",
1657
+ "type": "string",
1658
+ "documentation": "\n <p>\n The name associated with the LoadBalancer.\n The name must be unique within the client AWS account.\n </p>\n ",
1659
+ "required": true
1660
+ },
1661
+ "AvailabilityZones": {
1662
+ "shape_name": "AvailabilityZones",
1663
+ "type": "list",
1664
+ "members": {
1665
+ "shape_name": "AvailabilityZone",
1666
+ "type": "string",
1667
+ "documentation": null
1668
+ },
1669
+ "documentation": "\n <p>\n A list of Availability Zones to be removed from the LoadBalancer.\n </p>\n <note>\n There must be at least one Availability Zone\n registered with a LoadBalancer at all times.\n The client cannot remove all the Availability Zones from a LoadBalancer.\n Specified Availability Zones must be in the same Region.\n </note>\n ",
1670
+ "required": true
1671
+ }
1672
+ },
1673
+ "documentation": "\n\t\t<p>\n\t\tThe input for the <a>DisableAvailabilityZonesForLoadBalancer</a> action.\n\t\t</p>\n "
1674
+ },
1675
+ "output": {
1676
+ "shape_name": "RemoveAvailabilityZonesOutput",
1677
+ "type": "structure",
1678
+ "members": {
1679
+ "AvailabilityZones": {
1680
+ "shape_name": "AvailabilityZones",
1681
+ "type": "list",
1682
+ "members": {
1683
+ "shape_name": "AvailabilityZone",
1684
+ "type": "string",
1685
+ "documentation": null
1686
+ },
1687
+ "documentation": "\n <p>\n A list of updated Availability Zones for the LoadBalancer.\n </p>\n "
1688
+ }
1689
+ },
1690
+ "documentation": "\n\t\t<p>\n\t\tThe output for the <a>DisableAvailabilityZonesForLoadBalancer</a> action.\n\t\t</p>\n "
1691
+ },
1692
+ "errors": [
1693
+ {
1694
+ "shape_name": "AccessPointNotFoundException",
1695
+ "type": "structure",
1696
+ "members": {
1697
+ },
1698
+ "documentation": "\n <p>\n The specified LoadBalancer could not be found.\n </p>\n "
1699
+ },
1700
+ {
1701
+ "shape_name": "InvalidConfigurationRequestException",
1702
+ "type": "structure",
1703
+ "members": {
1704
+ },
1705
+ "documentation": "\n <p>\n Requested configuration change is invalid.\n </p>\n "
1706
+ }
1707
+ ],
1708
+ "documentation": "\n <p>\n Removes the specified EC2 Availability Zones from\n the set of configured Availability Zones for the LoadBalancer.\n </p>\n <p>\n There must be at least one Availability Zone registered\n with a LoadBalancer at all times. A client cannot remove all\n the Availability Zones from a LoadBalancer.\n Once an Availability Zone is removed, all the instances\n registered with the LoadBalancer that are in the removed\n Availability Zone go into the OutOfService state. Upon Availability\n Zone removal, the LoadBalancer attempts to equally balance\n the traffic among its remaining usable Availability Zones.\n Trying to remove an Availability Zone that was not associated with\n the LoadBalancer does nothing.\n </p>\n <note>\n In order for this call to be successful, the client\n must have created the LoadBalancer.\n The client must provide the same account credentials\n as those that were used to create the LoadBalancer.\n </note>\n "
1709
+ },
1710
+ "EnableAvailabilityZonesForLoadBalancer": {
1711
+ "name": "EnableAvailabilityZonesForLoadBalancer",
1712
+ "input": {
1713
+ "shape_name": "AddAvailabilityZonesInput",
1714
+ "type": "structure",
1715
+ "members": {
1716
+ "LoadBalancerName": {
1717
+ "shape_name": "AccessPointName",
1718
+ "type": "string",
1719
+ "documentation": "\n <p>\n The name associated with the LoadBalancer.\n The name must be unique within the client AWS account.\n </p>\n ",
1720
+ "required": true
1721
+ },
1722
+ "AvailabilityZones": {
1723
+ "shape_name": "AvailabilityZones",
1724
+ "type": "list",
1725
+ "members": {
1726
+ "shape_name": "AvailabilityZone",
1727
+ "type": "string",
1728
+ "documentation": null
1729
+ },
1730
+ "documentation": "\n <p>\n A list of new Availability Zones for the LoadBalancer.\n Each Availability Zone must be in the same Region as the LoadBalancer.\n </p>\n ",
1731
+ "required": true
1732
+ }
1733
+ },
1734
+ "documentation": "\n\t\t<p>\n\t\tThe input for the <a>EnableAvailabilityZonesForLoadBalancer</a> action.\n\t\t</p>\n "
1735
+ },
1736
+ "output": {
1737
+ "shape_name": "AddAvailabilityZonesOutput",
1738
+ "type": "structure",
1739
+ "members": {
1740
+ "AvailabilityZones": {
1741
+ "shape_name": "AvailabilityZones",
1742
+ "type": "list",
1743
+ "members": {
1744
+ "shape_name": "AvailabilityZone",
1745
+ "type": "string",
1746
+ "documentation": null
1747
+ },
1748
+ "documentation": "\n <p>\n An updated list of Availability Zones for the LoadBalancer.\n </p>\n "
1749
+ }
1750
+ },
1751
+ "documentation": "\n\t\t<p>\n\t\tThe output for the <a>EnableAvailabilityZonesForLoadBalancer</a> action.\n\t\t</p>\n "
1752
+ },
1753
+ "errors": [
1754
+ {
1755
+ "shape_name": "AccessPointNotFoundException",
1756
+ "type": "structure",
1757
+ "members": {
1758
+ },
1759
+ "documentation": "\n <p>\n The specified LoadBalancer could not be found.\n </p>\n "
1760
+ }
1761
+ ],
1762
+ "documentation": "\n <p>\n Adds one or more EC2 Availability Zones to the LoadBalancer.\n </p>\n <p>\n The LoadBalancer evenly distributes requests across all\n its registered Availability Zones that contain instances.\n As a result, the client must ensure that its LoadBalancer is\n appropriately scaled for each registered Availability Zone.\n </p>\n <note>\n The new EC2 Availability Zones to be added must be in the same\n EC2 Region as the Availability Zones for which the\n LoadBalancer was created.\n </note>\n "
1763
+ },
1764
+ "RegisterInstancesWithLoadBalancer": {
1765
+ "name": "RegisterInstancesWithLoadBalancer",
1766
+ "input": {
1767
+ "shape_name": "RegisterEndPointsInput",
1768
+ "type": "structure",
1769
+ "members": {
1770
+ "LoadBalancerName": {
1771
+ "shape_name": "AccessPointName",
1772
+ "type": "string",
1773
+ "documentation": "\n <p>\n The name associated with the LoadBalancer.\n The name must be unique within the client AWS account.\n </p>\n ",
1774
+ "required": true
1775
+ },
1776
+ "Instances": {
1777
+ "shape_name": "Instances",
1778
+ "type": "list",
1779
+ "members": {
1780
+ "shape_name": "Instance",
1781
+ "type": "structure",
1782
+ "members": {
1783
+ "InstanceId": {
1784
+ "shape_name": "InstanceId",
1785
+ "type": "string",
1786
+ "documentation": "\n <p>\n Provides an EC2 instance ID.\n </p>\n "
1787
+ }
1788
+ },
1789
+ "documentation": "\n <p>\n The Instance data type.\n </p>\n "
1790
+ },
1791
+ "documentation": "\n <p>\n A list of instance IDs that should be registered with the LoadBalancer.</p>\n <note>When the instance is stopped and then restarted, the IP addresses associated \n with your instance changes. Elastic Load Balancing cannot recognize the new IP address,\n which prevents it from routing traffic to your instances. We recommend that you \n de-register your Amazon EC2 instances from your load balancer after you stop your \n instance, and then register the load balancer with your instance after you've restarted. \n To de-register your instances from load balancer, use <a>DeregisterInstancesFromLoadBalancer</a> action.</note>\n \n ",
1792
+ "required": true
1793
+ }
1794
+ },
1795
+ "documentation": "\n\t\t<p>\n\t\tThe input for the <a>RegisterInstancesWithLoadBalancer</a> action.\n\t\t</p>\n "
1796
+ },
1797
+ "output": {
1798
+ "shape_name": "RegisterEndPointsOutput",
1799
+ "type": "structure",
1800
+ "members": {
1801
+ "Instances": {
1802
+ "shape_name": "Instances",
1803
+ "type": "list",
1804
+ "members": {
1805
+ "shape_name": "Instance",
1806
+ "type": "structure",
1807
+ "members": {
1808
+ "InstanceId": {
1809
+ "shape_name": "InstanceId",
1810
+ "type": "string",
1811
+ "documentation": "\n <p>\n Provides an EC2 instance ID.\n </p>\n "
1812
+ }
1813
+ },
1814
+ "documentation": "\n <p>\n The Instance data type.\n </p>\n "
1815
+ },
1816
+ "documentation": "\n <p>\n An updated list of instances for the LoadBalancer.\n </p>\n "
1817
+ }
1818
+ },
1819
+ "documentation": "\n\t\t<p>\n\t\tThe output for the <a>RegisterInstancesWithLoadBalancer</a> action.\n\t\t</p>\n "
1820
+ },
1821
+ "errors": [
1822
+ {
1823
+ "shape_name": "AccessPointNotFoundException",
1824
+ "type": "structure",
1825
+ "members": {
1826
+ },
1827
+ "documentation": "\n <p>\n The specified LoadBalancer could not be found.\n </p>\n "
1828
+ },
1829
+ {
1830
+ "shape_name": "InvalidEndPointException",
1831
+ "type": "structure",
1832
+ "members": {
1833
+ },
1834
+ "documentation": "\n <p>\n The specified EndPoint is not valid.\n </p>\n "
1835
+ }
1836
+ ],
1837
+ "documentation": "\n <p>\n Adds new instances to the LoadBalancer.\n </p>\n <p>\n Once the instance is registered, it starts receiving traffic\n and requests from the LoadBalancer. Any instance that is not\n in any of the Availability Zones registered for the LoadBalancer\n will be moved to the <i>OutOfService</i> state. It will move to the\n <i>InService</i> state when the Availability Zone is added to the LoadBalancer.\n </p>\n <note>\n In order for this call to be successful, the client\n must have created the LoadBalancer.\n The client must provide the same account credentials\n as those that were used to create the LoadBalancer.\n </note>\n <note>\n Completion of this API does not guarantee that operation has completed.\n Rather, it means that the request has been registered and the\n changes will happen shortly.\n </note>\n \n "
1838
+ },
1839
+ "SetLoadBalancerListenerSSLCertificate": {
1840
+ "name": "SetLoadBalancerListenerSSLCertificate",
1841
+ "input": {
1842
+ "shape_name": "SetLoadBalancerListenerSSLCertificateInput",
1843
+ "type": "structure",
1844
+ "members": {
1845
+ "LoadBalancerName": {
1846
+ "shape_name": "AccessPointName",
1847
+ "type": "string",
1848
+ "documentation": "\n \t<p>\n \tThe name of the the LoadBalancer. \n \t</p>\n ",
1849
+ "required": true
1850
+ },
1851
+ "LoadBalancerPort": {
1852
+ "shape_name": "AccessPointPort",
1853
+ "type": "integer",
1854
+ "documentation": "\n \t<p>\n \tThe port that uses the specified SSL certificate. \n \t</p>\n ",
1855
+ "required": true
1856
+ },
1857
+ "SSLCertificateId": {
1858
+ "shape_name": "SSLCertificateId",
1859
+ "type": "string",
1860
+ "documentation": "\n \t<p>\n \tThe ID of the SSL certificate chain to use. \n \tFor more information on SSL certificates, see \n \t<a href=\"http://docs.aws.amazon.com/IAM/latest/UserGuide/ManagingServerCerts.html\">\n \tManaging Server Certificates\n \t</a>\n \tin the AWS Identity and Access Management documentation. \n \t</p>\n ",
1861
+ "required": true
1862
+ }
1863
+ },
1864
+ "documentation": "\n\t\t<p>\n\t\tThe input for the <a>SetLoadBalancerListenerSSLCertificate</a> action.\n\t\t</p>\n "
1865
+ },
1866
+ "output": {
1867
+ "shape_name": "SetLoadBalancerListenerSSLCertificateOutput",
1868
+ "type": "structure",
1869
+ "members": {
1870
+ },
1871
+ "documentation": "\n\t\t<p>\n\t\tThe output for the <a>SetLoadBalancerListenerSSLCertificate</a> action.\n\t\t</p>\n "
1872
+ },
1873
+ "errors": [
1874
+ {
1875
+ "shape_name": "CertificateNotFoundException",
1876
+ "type": "structure",
1877
+ "members": {
1878
+ },
1879
+ "documentation": "\n \t<p>\n The specified SSL ID does not refer to a valid SSL certificate \n in the AWS Identity and Access Management Service.\n \t</p>\n "
1880
+ },
1881
+ {
1882
+ "shape_name": "AccessPointNotFoundException",
1883
+ "type": "structure",
1884
+ "members": {
1885
+ },
1886
+ "documentation": "\n <p>\n The specified LoadBalancer could not be found.\n </p>\n "
1887
+ },
1888
+ {
1889
+ "shape_name": "ListenerNotFoundException",
1890
+ "type": "structure",
1891
+ "members": {
1892
+ },
1893
+ "documentation": "\n <p>\n LoadBalancer does not have a listener configured at the given port.\n </p>\n "
1894
+ },
1895
+ {
1896
+ "shape_name": "InvalidConfigurationRequestException",
1897
+ "type": "structure",
1898
+ "members": {
1899
+ },
1900
+ "documentation": "\n <p>\n Requested configuration change is invalid.\n </p>\n "
1901
+ }
1902
+ ],
1903
+ "documentation": "\n \t<p>\n \tSets the certificate that terminates the specified listener's SSL connections. \n \tThe specified certificate replaces any prior certificate that was used on the same LoadBalancer and port. \n \t</p>\n <p>For information on using <a>SetLoadBalancerListenerSSLCertificate</a>, see <i>Using the Query API </i> in the <a href=\"http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/US_UpdatingLoadBalancerSSL.html\">Updating an SSL Certificate for a Load Balancer</a>\nsection in of the <i>Elastic Load Balancing Developer Guide</i>.</p>\n "
1904
+ },
1905
+ "SetLoadBalancerPoliciesForBackendServer": {
1906
+ "name": "SetLoadBalancerPoliciesForBackendServer",
1907
+ "input": {
1908
+ "shape_name": "SetLoadBalancerPoliciesForBackendServerInput",
1909
+ "type": "structure",
1910
+ "members": {
1911
+ "LoadBalancerName": {
1912
+ "shape_name": "AccessPointName",
1913
+ "type": "string",
1914
+ "documentation": "\n \t<p>\n \tThe mnemonic name associated with the LoadBalancer.\n \tThis name must be unique within the client AWS account.\n \t</p>\n ",
1915
+ "required": true
1916
+ },
1917
+ "InstancePort": {
1918
+ "shape_name": "EndPointPort",
1919
+ "type": "integer",
1920
+ "documentation": "\n \t<p>\n \tThe port number associated with the back-end server.\n \t</p>\n ",
1921
+ "required": true
1922
+ },
1923
+ "PolicyNames": {
1924
+ "shape_name": "PolicyNames",
1925
+ "type": "list",
1926
+ "members": {
1927
+ "shape_name": "PolicyName",
1928
+ "type": "string",
1929
+ "documentation": null
1930
+ },
1931
+ "documentation": "\n \t<p>\n \tList of policy names to be set. If the list is empty, then all current polices are\n \tremoved from the back-end server.\n \t</p>\n ",
1932
+ "required": true
1933
+ }
1934
+ },
1935
+ "documentation": "\n "
1936
+ },
1937
+ "output": {
1938
+ "shape_name": "SetLoadBalancerPoliciesForBackendServerOutput",
1939
+ "type": "structure",
1940
+ "members": {
1941
+ },
1942
+ "documentation": "\n \t<p>\n \t\tThe output for the <a>SetLoadBalancerPoliciesForBackendServer</a> action.\n \t</p>\n "
1943
+ },
1944
+ "errors": [
1945
+ {
1946
+ "shape_name": "AccessPointNotFoundException",
1947
+ "type": "structure",
1948
+ "members": {
1949
+ },
1950
+ "documentation": "\n <p>\n The specified LoadBalancer could not be found.\n </p>\n "
1951
+ },
1952
+ {
1953
+ "shape_name": "PolicyNotFoundException",
1954
+ "type": "structure",
1955
+ "members": {
1956
+ },
1957
+ "documentation": "\n <p>\n One or more specified policies were not found.\n </p>\n "
1958
+ },
1959
+ {
1960
+ "shape_name": "InvalidConfigurationRequestException",
1961
+ "type": "structure",
1962
+ "members": {
1963
+ },
1964
+ "documentation": "\n <p>\n Requested configuration change is invalid.\n </p>\n "
1965
+ }
1966
+ ],
1967
+ "documentation": "\n <p>\n Replaces the current set of policies associated with a port on which the back-end server is listening with a new set of policies. After the policies have been created using <a>CreateLoadBalancerPolicy</a>, \n they can be applied here as a list. At this time, only the back-end server authentication policy type can be applied to the back-end ports; this policy type is composed of multiple public key policies.\n </p>\n "
1968
+ },
1969
+ "SetLoadBalancerPoliciesOfListener": {
1970
+ "name": "SetLoadBalancerPoliciesOfListener",
1971
+ "input": {
1972
+ "shape_name": "SetLoadBalancerPoliciesOfListenerInput",
1973
+ "type": "structure",
1974
+ "members": {
1975
+ "LoadBalancerName": {
1976
+ "shape_name": "AccessPointName",
1977
+ "type": "string",
1978
+ "documentation": "\n <p>\n The name associated with the LoadBalancer.\n The name must be unique within the client AWS account.\n </p>\n ",
1979
+ "required": true
1980
+ },
1981
+ "LoadBalancerPort": {
1982
+ "shape_name": "AccessPointPort",
1983
+ "type": "integer",
1984
+ "documentation": "\n <p>\n The external port of the LoadBalancer with which this policy applies to. \n </p>\n ",
1985
+ "required": true
1986
+ },
1987
+ "PolicyNames": {
1988
+ "shape_name": "PolicyNames",
1989
+ "type": "list",
1990
+ "members": {
1991
+ "shape_name": "PolicyName",
1992
+ "type": "string",
1993
+ "documentation": null
1994
+ },
1995
+ "documentation": "\n <p>\n List of policies to be associated with the listener. Currently this list can have at most\n one policy. If the list is empty, the current policy is removed from the listener.\n </p>\n ",
1996
+ "required": true
1997
+ }
1998
+ },
1999
+ "documentation": "\n\t\t<p>\n\t\tThe input for the <a>SetLoadBalancerPoliciesOfListener</a> action.\n\t\t</p>\n "
2000
+ },
2001
+ "output": {
2002
+ "shape_name": "SetLoadBalancerPoliciesOfListenerOutput",
2003
+ "type": "structure",
2004
+ "members": {
2005
+ },
2006
+ "documentation": "\n\t\t<p>\n\t\tThe output for the <a>SetLoadBalancerPoliciesOfListener</a> action.\n\t\t</p>\n "
2007
+ },
2008
+ "errors": [
2009
+ {
2010
+ "shape_name": "AccessPointNotFoundException",
2011
+ "type": "structure",
2012
+ "members": {
2013
+ },
2014
+ "documentation": "\n <p>\n The specified LoadBalancer could not be found.\n </p>\n "
2015
+ },
2016
+ {
2017
+ "shape_name": "PolicyNotFoundException",
2018
+ "type": "structure",
2019
+ "members": {
2020
+ },
2021
+ "documentation": "\n <p>\n One or more specified policies were not found.\n </p>\n "
2022
+ },
2023
+ {
2024
+ "shape_name": "ListenerNotFoundException",
2025
+ "type": "structure",
2026
+ "members": {
2027
+ },
2028
+ "documentation": "\n <p>\n LoadBalancer does not have a listener configured at the given port.\n </p>\n "
2029
+ },
2030
+ {
2031
+ "shape_name": "InvalidConfigurationRequestException",
2032
+ "type": "structure",
2033
+ "members": {
2034
+ },
2035
+ "documentation": "\n <p>\n Requested configuration change is invalid.\n </p>\n "
2036
+ }
2037
+ ],
2038
+ "documentation": "\n <p>\n Associates, updates, or disables a policy with a listener on the LoadBalancer. \n You can associate multiple policies with a listener. \n </p>\n "
2039
+ }
2040
+ }
2041
+ }