aws-sdk-core 2.3.23 → 3.89.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (496) hide show
  1. checksums.yaml +5 -5
  2. data/VERSION +1 -0
  3. data/ca-bundle.crt +3615 -3541
  4. data/lib/aws-sdk-core.rb +106 -404
  5. data/lib/aws-sdk-core/arn.rb +77 -0
  6. data/lib/aws-sdk-core/arn_parser.rb +38 -0
  7. data/lib/aws-sdk-core/assume_role_web_identity_credentials.rb +101 -0
  8. data/lib/aws-sdk-core/async_client_stubs.rb +80 -0
  9. data/lib/aws-sdk-core/binary.rb +6 -0
  10. data/lib/aws-sdk-core/binary/decode_handler.rb +56 -0
  11. data/lib/aws-sdk-core/binary/encode_handler.rb +32 -0
  12. data/lib/aws-sdk-core/binary/event_builder.rb +122 -0
  13. data/lib/aws-sdk-core/binary/event_parser.rb +134 -0
  14. data/lib/aws-sdk-core/binary/event_stream_decoder.rb +62 -0
  15. data/lib/aws-sdk-core/binary/event_stream_encoder.rb +53 -0
  16. data/lib/aws-sdk-core/client_side_monitoring/publisher.rb +49 -0
  17. data/lib/aws-sdk-core/client_side_monitoring/request_metrics.rb +197 -0
  18. data/lib/aws-sdk-core/client_stubs.rb +73 -10
  19. data/lib/aws-sdk-core/credential_provider.rb +0 -29
  20. data/lib/aws-sdk-core/credential_provider_chain.rb +56 -6
  21. data/lib/aws-sdk-core/deprecations.rb +16 -10
  22. data/lib/aws-sdk-core/ecs_credentials.rb +14 -10
  23. data/lib/aws-sdk-core/endpoint_cache.rb +191 -0
  24. data/lib/aws-sdk-core/errors.rb +221 -11
  25. data/lib/aws-sdk-core/event_emitter.rb +62 -0
  26. data/lib/aws-sdk-core/ini_parser.rb +41 -0
  27. data/lib/aws-sdk-core/instance_profile_credentials.rb +133 -42
  28. data/lib/aws-sdk-core/json.rb +9 -10
  29. data/lib/aws-sdk-core/json/builder.rb +4 -2
  30. data/lib/aws-sdk-core/json/error_handler.rb +19 -2
  31. data/lib/aws-sdk-core/json/handler.rb +22 -3
  32. data/lib/aws-sdk-core/json/parser.rb +1 -1
  33. data/lib/aws-sdk-core/log/formatter.rb +7 -1
  34. data/lib/aws-sdk-core/log/param_filter.rb +4 -3
  35. data/lib/aws-sdk-core/pageable_response.rb +1 -0
  36. data/lib/aws-sdk-core/pager.rb +30 -25
  37. data/lib/aws-sdk-core/param_converter.rb +3 -3
  38. data/lib/aws-sdk-core/param_validator.rb +60 -26
  39. data/lib/aws-sdk-core/plugins/api_key.rb +52 -0
  40. data/lib/aws-sdk-core/plugins/apig_authorizer_token.rb +30 -0
  41. data/lib/aws-sdk-core/plugins/apig_credentials_configuration.rb +34 -0
  42. data/lib/aws-sdk-core/plugins/apig_user_agent.rb +37 -0
  43. data/lib/aws-sdk-core/plugins/client_metrics_plugin.rb +280 -0
  44. data/lib/aws-sdk-core/plugins/client_metrics_send_plugin.rb +84 -0
  45. data/lib/aws-sdk-core/plugins/credentials_configuration.rb +62 -0
  46. data/lib/aws-sdk-core/plugins/endpoint_discovery.rb +160 -0
  47. data/lib/aws-sdk-core/plugins/endpoint_pattern.rb +63 -0
  48. data/lib/aws-sdk-core/plugins/event_stream_configuration.rb +30 -0
  49. data/lib/aws-sdk-core/plugins/global_configuration.rb +19 -10
  50. data/lib/aws-sdk-core/plugins/helpful_socket_errors.rb +41 -0
  51. data/lib/aws-sdk-core/plugins/idempotency_token.rb +36 -0
  52. data/lib/aws-sdk-core/plugins/invocation_id.rb +33 -0
  53. data/lib/aws-sdk-core/plugins/jsonvalue_converter.rb +29 -0
  54. data/lib/aws-sdk-core/plugins/logging.rb +18 -18
  55. data/lib/aws-sdk-core/plugins/param_converter.rb +9 -5
  56. data/lib/aws-sdk-core/plugins/param_validator.rb +8 -5
  57. data/lib/aws-sdk-core/plugins/protocols/api_gateway.rb +10 -0
  58. data/lib/aws-sdk-core/plugins/protocols/ec2.rb +2 -1
  59. data/lib/aws-sdk-core/plugins/protocols/json_rpc.rb +13 -12
  60. data/lib/aws-sdk-core/plugins/protocols/query.rb +2 -2
  61. data/lib/aws-sdk-core/plugins/regional_endpoint.rb +48 -19
  62. data/lib/aws-sdk-core/plugins/response_paging.rb +5 -18
  63. data/lib/aws-sdk-core/plugins/retry_errors.rb +102 -24
  64. data/lib/aws-sdk-core/plugins/signature_v2.rb +51 -0
  65. data/lib/aws-sdk-core/plugins/signature_v4.rb +141 -0
  66. data/lib/aws-sdk-core/plugins/stub_responses.rb +35 -18
  67. data/lib/aws-sdk-core/plugins/transfer_encoding.rb +53 -0
  68. data/lib/aws-sdk-core/plugins/user_agent.rb +23 -10
  69. data/lib/aws-sdk-core/process_credentials.rb +80 -0
  70. data/lib/aws-sdk-core/query.rb +5 -0
  71. data/lib/aws-sdk-core/query/ec2_param_builder.rb +9 -3
  72. data/lib/aws-sdk-core/query/handler.rb +20 -16
  73. data/lib/aws-sdk-core/query/param_builder.rb +10 -4
  74. data/lib/aws-sdk-core/refreshing_credentials.rb +1 -1
  75. data/lib/aws-sdk-core/resources/collection.rb +121 -0
  76. data/lib/aws-sdk-core/rest.rb +10 -0
  77. data/lib/aws-sdk-core/rest/handler.rb +1 -0
  78. data/lib/aws-sdk-core/rest/request/builder.rb +2 -1
  79. data/lib/aws-sdk-core/rest/request/endpoint.rb +11 -66
  80. data/lib/aws-sdk-core/rest/request/headers.rb +20 -1
  81. data/lib/aws-sdk-core/rest/request/querystring_builder.rb +103 -0
  82. data/lib/aws-sdk-core/rest/response/body.rb +14 -1
  83. data/lib/aws-sdk-core/rest/response/headers.rb +9 -0
  84. data/lib/aws-sdk-core/rest/response/parser.rb +18 -14
  85. data/lib/aws-sdk-core/shared_config.rb +451 -0
  86. data/lib/aws-sdk-core/shared_credentials.rb +16 -53
  87. data/lib/aws-sdk-core/structure.rb +22 -13
  88. data/lib/aws-sdk-core/stubbing/data_applicator.rb +1 -1
  89. data/lib/aws-sdk-core/stubbing/empty_stub.rb +10 -3
  90. data/lib/aws-sdk-core/stubbing/protocols/api_gateway.rb +8 -0
  91. data/lib/aws-sdk-core/stubbing/protocols/ec2.rb +1 -1
  92. data/lib/aws-sdk-core/stubbing/protocols/rest.rb +99 -1
  93. data/lib/aws-sdk-core/stubbing/protocols/rest_json.rb +5 -1
  94. data/lib/aws-sdk-core/stubbing/protocols/rest_xml.rb +9 -5
  95. data/lib/aws-sdk-core/stubbing/stub_data.rb +16 -3
  96. data/lib/aws-sdk-core/util.rb +66 -0
  97. data/lib/aws-sdk-core/waiters.rb +3 -0
  98. data/lib/aws-sdk-core/waiters/poller.rb +5 -7
  99. data/lib/aws-sdk-core/waiters/waiter.rb +3 -2
  100. data/lib/aws-sdk-core/xml.rb +9 -0
  101. data/lib/aws-sdk-core/xml/builder.rb +11 -5
  102. data/lib/aws-sdk-core/xml/error_handler.rb +27 -5
  103. data/lib/aws-sdk-core/xml/parser.rb +1 -11
  104. data/lib/aws-sdk-core/xml/parser/engines/ox.rb +5 -1
  105. data/lib/aws-sdk-core/xml/parser/frame.rb +6 -6
  106. data/lib/aws-sdk-sts.rb +45 -0
  107. data/lib/aws-sdk-sts/client.rb +2156 -0
  108. data/lib/aws-sdk-sts/client_api.rb +336 -0
  109. data/lib/aws-sdk-sts/customizations.rb +2 -0
  110. data/lib/aws-sdk-sts/errors.rb +142 -0
  111. data/lib/aws-sdk-sts/plugins/sts_regional_endpoints.rb +32 -0
  112. data/lib/aws-sdk-sts/presigner.rb +67 -0
  113. data/lib/aws-sdk-sts/resource.rb +23 -0
  114. data/lib/aws-sdk-sts/types.rb +1504 -0
  115. data/lib/seahorse.rb +60 -60
  116. data/lib/seahorse/client/async_base.rb +50 -0
  117. data/lib/seahorse/client/async_response.rb +62 -0
  118. data/lib/seahorse/client/base.rb +5 -9
  119. data/lib/seahorse/client/configuration.rb +10 -2
  120. data/lib/seahorse/client/events.rb +1 -1
  121. data/lib/seahorse/client/h2/connection.rb +246 -0
  122. data/lib/seahorse/client/h2/handler.rb +151 -0
  123. data/lib/seahorse/client/handler_list_entry.rb +2 -2
  124. data/lib/seahorse/client/http/async_response.rb +42 -0
  125. data/lib/seahorse/client/http/response.rb +13 -8
  126. data/lib/seahorse/client/logging/formatter.rb +7 -1
  127. data/lib/seahorse/client/logging/handler.rb +2 -0
  128. data/lib/seahorse/client/net_http/connection_pool.rb +46 -28
  129. data/lib/seahorse/client/net_http/handler.rb +17 -3
  130. data/lib/seahorse/client/net_http/patches.rb +9 -1
  131. data/lib/seahorse/client/networking_error.rb +28 -0
  132. data/lib/seahorse/client/plugin.rb +67 -6
  133. data/lib/seahorse/client/plugin_list.rb +3 -1
  134. data/lib/seahorse/client/plugins/content_length.rb +7 -2
  135. data/lib/seahorse/client/plugins/endpoint.rb +14 -10
  136. data/lib/seahorse/client/plugins/h2.rb +64 -0
  137. data/lib/seahorse/client/plugins/logging.rb +17 -19
  138. data/lib/seahorse/client/plugins/net_http.rb +23 -15
  139. data/lib/seahorse/client/plugins/raise_response_errors.rb +4 -4
  140. data/lib/seahorse/client/plugins/response_target.rb +10 -1
  141. data/lib/seahorse/client/request_context.rb +5 -0
  142. data/lib/seahorse/client/response.rb +9 -20
  143. data/lib/seahorse/model/api.rb +37 -0
  144. data/lib/seahorse/model/authorizer.rb +21 -0
  145. data/lib/seahorse/model/operation.rb +20 -0
  146. data/lib/seahorse/model/shapes.rb +44 -2
  147. data/lib/seahorse/util.rb +1 -21
  148. metadata +127 -360
  149. data/apis/acm/2015-12-08/api-2.json +0 -495
  150. data/apis/acm/2015-12-08/examples-1.json +0 -5
  151. data/apis/acm/2015-12-08/paginators-1.json +0 -10
  152. data/apis/apigateway/2015-07-09/api-2.json +0 -3347
  153. data/apis/apigateway/2015-07-09/examples-1.json +0 -5
  154. data/apis/apigateway/2015-07-09/paginators-1.json +0 -52
  155. data/apis/application-autoscaling/2016-02-06/api-2.json +0 -502
  156. data/apis/application-autoscaling/2016-02-06/examples-1.json +0 -5
  157. data/apis/application-autoscaling/2016-02-06/paginators-1.json +0 -22
  158. data/apis/autoscaling/2011-01-01/api-2.json +0 -2038
  159. data/apis/autoscaling/2011-01-01/examples-1.json +0 -5
  160. data/apis/autoscaling/2011-01-01/paginators-1.json +0 -52
  161. data/apis/autoscaling/2011-01-01/resources-1.json +0 -1613
  162. data/apis/autoscaling/2011-01-01/waiters-2.json +0 -62
  163. data/apis/cloudformation/2010-05-15/api-2.json +0 -1299
  164. data/apis/cloudformation/2010-05-15/examples-1.json +0 -5
  165. data/apis/cloudformation/2010-05-15/paginators-1.json +0 -27
  166. data/apis/cloudformation/2010-05-15/resources-1.json +0 -202
  167. data/apis/cloudformation/2010-05-15/waiters-2.json +0 -235
  168. data/apis/cloudfront/2016-01-28/api-2.json +0 -2218
  169. data/apis/cloudfront/2016-01-28/examples-1.json +0 -5
  170. data/apis/cloudfront/2016-01-28/paginators-1.json +0 -32
  171. data/apis/cloudfront/2016-01-28/waiters-2.json +0 -47
  172. data/apis/cloudhsm/2014-05-30/api-2.json +0 -877
  173. data/apis/cloudhsm/2014-05-30/examples-1.json +0 -5
  174. data/apis/cloudsearch/2013-01-01/api-2.json +0 -2001
  175. data/apis/cloudsearch/2013-01-01/paginators-1.json +0 -20
  176. data/apis/cloudsearchdomain/2013-01-01/api-2.json +0 -373
  177. data/apis/cloudsearchdomain/2013-01-01/examples-1.json +0 -5
  178. data/apis/cloudtrail/2013-11-01/api-2.json +0 -801
  179. data/apis/cloudtrail/2013-11-01/examples-1.json +0 -5
  180. data/apis/cloudtrail/2013-11-01/paginators-1.json +0 -7
  181. data/apis/codecommit/2015-04-13/api-2.json +0 -916
  182. data/apis/codecommit/2015-04-13/examples-1.json +0 -5
  183. data/apis/codecommit/2015-04-13/paginators-1.json +0 -14
  184. data/apis/codedeploy/2014-10-06/api-2.json +0 -1954
  185. data/apis/codedeploy/2014-10-06/examples-1.json +0 -5
  186. data/apis/codedeploy/2014-10-06/paginators-1.json +0 -34
  187. data/apis/codepipeline/2015-07-09/api-2.json +0 -1633
  188. data/apis/codepipeline/2015-07-09/examples-1.json +0 -902
  189. data/apis/cognito-identity/2014-06-30/api-2.json +0 -859
  190. data/apis/cognito-identity/2014-06-30/examples-1.json +0 -5
  191. data/apis/cognito-idp/2016-04-18/api-2.json +0 -1657
  192. data/apis/cognito-idp/2016-04-18/examples-1.json +0 -5
  193. data/apis/cognito-sync/2014-06-30/api-2.json +0 -1874
  194. data/apis/config/2014-11-12/api-2.json +0 -1303
  195. data/apis/config/2014-11-12/examples-1.json +0 -5
  196. data/apis/config/2014-11-12/paginators-1.json +0 -10
  197. data/apis/datapipeline/2012-10-29/api-2.json +0 -1167
  198. data/apis/datapipeline/2012-10-29/paginators-1.json +0 -26
  199. data/apis/devicefarm/2015-06-23/api-2.json +0 -1819
  200. data/apis/devicefarm/2015-06-23/examples-1.json +0 -5
  201. data/apis/devicefarm/2015-06-23/paginators-1.json +0 -74
  202. data/apis/directconnect/2012-10-25/api-2.json +0 -793
  203. data/apis/directconnect/2012-10-25/examples-1.json +0 -5
  204. data/apis/directconnect/2012-10-25/paginators-1.json +0 -22
  205. data/apis/discovery/2015-11-01/api-2.json +0 -556
  206. data/apis/discovery/2015-11-01/examples-1.json +0 -5
  207. data/apis/dms/2016-01-01/api-2.json +0 -1469
  208. data/apis/dms/2016-01-01/examples-1.json +0 -5
  209. data/apis/ds/2015-04-16/api-2.json +0 -1674
  210. data/apis/ds/2015-04-16/examples-1.json +0 -5
  211. data/apis/dynamodb/2012-08-10/api-2.json +0 -1200
  212. data/apis/dynamodb/2012-08-10/examples-1.json +0 -5
  213. data/apis/dynamodb/2012-08-10/paginators-1.json +0 -26
  214. data/apis/dynamodb/2012-08-10/resources-1.json +0 -136
  215. data/apis/dynamodb/2012-08-10/waiters-2.json +0 -35
  216. data/apis/ec2/2015-10-01/api-2.json +0 -13759
  217. data/apis/ec2/2015-10-01/examples-1.json +0 -5
  218. data/apis/ec2/2015-10-01/paginators-1.json +0 -138
  219. data/apis/ec2/2015-10-01/resources-1.json +0 -2582
  220. data/apis/ec2/2015-10-01/waiters-2.json +0 -593
  221. data/apis/ec2/2016-04-01/api-2.json +0 -13842
  222. data/apis/ec2/2016-04-01/examples-1.json +0 -5
  223. data/apis/ec2/2016-04-01/paginators-1.json +0 -138
  224. data/apis/ec2/2016-04-01/resources-1.json +0 -2582
  225. data/apis/ec2/2016-04-01/waiters-2.json +0 -593
  226. data/apis/ecr/2015-09-21/api-2.json +0 -849
  227. data/apis/ecr/2015-09-21/examples-1.json +0 -5
  228. data/apis/ecs/2014-11-13/api-2.json +0 -1396
  229. data/apis/ecs/2014-11-13/examples-1.json +0 -5
  230. data/apis/ecs/2014-11-13/paginators-1.json +0 -40
  231. data/apis/ecs/2014-11-13/waiters-2.json +0 -93
  232. data/apis/elasticache/2015-02-02/api-2.json +0 -2426
  233. data/apis/elasticache/2015-02-02/examples-1.json +0 -5
  234. data/apis/elasticache/2015-02-02/paginators-1.json +0 -76
  235. data/apis/elasticache/2015-02-02/waiters-2.json +0 -143
  236. data/apis/elasticbeanstalk/2010-12-01/api-2.json +0 -1894
  237. data/apis/elasticbeanstalk/2010-12-01/examples-1.json +0 -1109
  238. data/apis/elasticbeanstalk/2010-12-01/paginators-1.json +0 -25
  239. data/apis/elasticfilesystem/2015-02-01/api-2.json +0 -713
  240. data/apis/elasticfilesystem/2015-02-01/examples-1.json +0 -5
  241. data/apis/elasticloadbalancing/2012-06-01/api-2.json +0 -2145
  242. data/apis/elasticloadbalancing/2012-06-01/paginators-1.json +0 -18
  243. data/apis/elasticloadbalancing/2012-06-01/waiters-2.json +0 -49
  244. data/apis/elasticmapreduce/2009-03-31/api-2.json +0 -1341
  245. data/apis/elasticmapreduce/2009-03-31/examples-1.json +0 -5
  246. data/apis/elasticmapreduce/2009-03-31/paginators-1.json +0 -32
  247. data/apis/elasticmapreduce/2009-03-31/waiters-2.json +0 -67
  248. data/apis/elastictranscoder/2012-09-25/api-2.json +0 -1807
  249. data/apis/elastictranscoder/2012-09-25/paginators-1.json +0 -24
  250. data/apis/elastictranscoder/2012-09-25/waiters-2.json +0 -30
  251. data/apis/email/2010-12-01/api-2.json +0 -1791
  252. data/apis/email/2010-12-01/examples-1.json +0 -5
  253. data/apis/email/2010-12-01/paginators-1.json +0 -13
  254. data/apis/email/2010-12-01/waiters-2.json +0 -18
  255. data/apis/es/2015-01-01/api-2.json +0 -764
  256. data/apis/events/2015-10-07/api-2.json +0 -643
  257. data/apis/events/2015-10-07/examples-1.json +0 -5
  258. data/apis/firehose/2015-08-04/api-2.json +0 -719
  259. data/apis/gamelift/2015-10-01/api-2.json +0 -2307
  260. data/apis/gamelift/2015-10-01/examples-1.json +0 -5
  261. data/apis/glacier/2012-06-01/api-2.json +0 -2144
  262. data/apis/glacier/2012-06-01/paginators-1.json +0 -28
  263. data/apis/glacier/2012-06-01/resources-1.json +0 -563
  264. data/apis/glacier/2012-06-01/waiters-2.json +0 -39
  265. data/apis/iam/2010-05-08/api-2.json +0 -4514
  266. data/apis/iam/2010-05-08/examples-1.json +0 -5
  267. data/apis/iam/2010-05-08/paginators-1.json +0 -198
  268. data/apis/iam/2010-05-08/resources-1.json +0 -1740
  269. data/apis/iam/2010-05-08/waiters-2.json +0 -39
  270. data/apis/importexport/2010-06-01/api-2.json +0 -666
  271. data/apis/importexport/2010-06-01/paginators-1.json +0 -11
  272. data/apis/inspector/2016-02-16/api-2.json +0 -1964
  273. data/apis/inspector/2016-02-16/examples-1.json +0 -5
  274. data/apis/iot-data/2015-05-28/api-2.json +0 -263
  275. data/apis/iot/2015-05-28/api-2.json +0 -3800
  276. data/apis/iot/2015-05-28/examples-1.json +0 -5
  277. data/apis/kinesis/2013-12-02/api-2.json +0 -822
  278. data/apis/kinesis/2013-12-02/examples-1.json +0 -5
  279. data/apis/kinesis/2013-12-02/paginators-1.json +0 -18
  280. data/apis/kinesis/2013-12-02/waiters-2.json +0 -18
  281. data/apis/kms/2014-11-01/api-2.json +0 -1209
  282. data/apis/kms/2014-11-01/examples-1.json +0 -5
  283. data/apis/kms/2014-11-01/paginators-1.json +0 -32
  284. data/apis/lambda/2014-11-11/api-2.json +0 -667
  285. data/apis/lambda/2014-11-11/paginators-1.json +0 -16
  286. data/apis/lambda/2015-03-31/api-2.json +0 -1342
  287. data/apis/lambda/2015-03-31/examples-1.json +0 -5
  288. data/apis/lambda/2015-03-31/paginators-1.json +0 -16
  289. data/apis/logs/2014-03-28/api-2.json +0 -1138
  290. data/apis/logs/2014-03-28/examples-1.json +0 -5
  291. data/apis/logs/2014-03-28/paginators-1.json +0 -49
  292. data/apis/machinelearning/2014-12-12/api-2.json +0 -1947
  293. data/apis/machinelearning/2014-12-12/paginators-1.json +0 -28
  294. data/apis/machinelearning/2014-12-12/waiters-2.json +0 -81
  295. data/apis/marketplacecommerceanalytics/2015-07-01/api-2.json +0 -120
  296. data/apis/marketplacecommerceanalytics/2015-07-01/examples-1.json +0 -5
  297. data/apis/meteringmarketplace/2016-01-14/api-2.json +0 -127
  298. data/apis/meteringmarketplace/2016-01-14/examples-1.json +0 -5
  299. data/apis/monitoring/2010-08-01/api-2.json +0 -790
  300. data/apis/monitoring/2010-08-01/examples-1.json +0 -5
  301. data/apis/monitoring/2010-08-01/paginators-1.json +0 -24
  302. data/apis/monitoring/2010-08-01/resources-1.json +0 -346
  303. data/apis/monitoring/2010-08-01/waiters-2.json +0 -18
  304. data/apis/opsworks/2013-02-18/api-2.json +0 -2606
  305. data/apis/opsworks/2013-02-18/examples-1.json +0 -5
  306. data/apis/opsworks/2013-02-18/paginators-1.json +0 -55
  307. data/apis/opsworks/2013-02-18/resources-1.json +0 -173
  308. data/apis/opsworks/2013-02-18/waiters-2.json +0 -295
  309. data/apis/rds/2014-10-31/api-2.json +0 -4757
  310. data/apis/rds/2014-10-31/examples-1.json +0 -5
  311. data/apis/rds/2014-10-31/paginators-1.json +0 -110
  312. data/apis/rds/2014-10-31/resources-1.json +0 -3272
  313. data/apis/rds/2014-10-31/waiters-2.json +0 -102
  314. data/apis/redshift/2012-12-01/api-2.json +0 -3768
  315. data/apis/redshift/2012-12-01/examples-1.json +0 -5
  316. data/apis/redshift/2012-12-01/paginators-1.json +0 -94
  317. data/apis/redshift/2012-12-01/waiters-2.json +0 -97
  318. data/apis/route53/2013-04-01/api-2.json +0 -3245
  319. data/apis/route53/2013-04-01/examples-1.json +0 -5
  320. data/apis/route53/2013-04-01/paginators-1.json +0 -33
  321. data/apis/route53/2013-04-01/waiters-2.json +0 -18
  322. data/apis/route53domains/2014-05-15/api-2.json +0 -1197
  323. data/apis/route53domains/2014-05-15/paginators-1.json +0 -17
  324. data/apis/s3/2006-03-01/api-2.json +0 -4517
  325. data/apis/s3/2006-03-01/examples-1.json +0 -5
  326. data/apis/s3/2006-03-01/paginators-1.json +0 -66
  327. data/apis/s3/2006-03-01/resources-1.json +0 -1176
  328. data/apis/s3/2006-03-01/waiters-2.json +0 -73
  329. data/apis/sdb/2009-04-15/api-2.json +0 -954
  330. data/apis/sdb/2009-04-15/paginators-1.json +0 -15
  331. data/apis/servicecatalog/2015-12-10/api-2.json +0 -749
  332. data/apis/servicecatalog/2015-12-10/examples-1.json +0 -5
  333. data/apis/sns/2010-03-31/api-2.json +0 -1139
  334. data/apis/sns/2010-03-31/paginators-1.json +0 -29
  335. data/apis/sns/2010-03-31/resources-1.json +0 -327
  336. data/apis/sqs/2012-11-05/api-2.json +0 -950
  337. data/apis/sqs/2012-11-05/examples-1.json +0 -44
  338. data/apis/sqs/2012-11-05/paginators-1.json +0 -7
  339. data/apis/ssm/2014-11-06/api-2.json +0 -1742
  340. data/apis/ssm/2014-11-06/examples-1.json +0 -5
  341. data/apis/ssm/2014-11-06/paginators-1.json +0 -34
  342. data/apis/storagegateway/2013-06-30/api-2.json +0 -2275
  343. data/apis/storagegateway/2013-06-30/examples-1.json +0 -5
  344. data/apis/storagegateway/2013-06-30/paginators-1.json +0 -52
  345. data/apis/streams.dynamodb/2012-08-10/api-2.json +0 -397
  346. data/apis/streams.dynamodb/2012-08-10/examples-1.json +0 -5
  347. data/apis/sts/2011-06-15/api-2.json +0 -521
  348. data/apis/sts/2011-06-15/examples-1.json +0 -5
  349. data/apis/support/2013-04-15/api-2.json +0 -869
  350. data/apis/support/2013-04-15/paginators-1.json +0 -25
  351. data/apis/swf/2012-01-25/api-2.json +0 -2838
  352. data/apis/swf/2012-01-25/paginators-1.json +0 -46
  353. data/apis/waf/2015-08-24/api-2.json +0 -1959
  354. data/apis/waf/2015-08-24/examples-1.json +0 -5
  355. data/apis/workspaces/2015-04-08/api-2.json +0 -632
  356. data/apis/workspaces/2015-04-08/examples-1.json +0 -5
  357. data/apis/workspaces/2015-04-08/paginators-1.json +0 -20
  358. data/bin/aws.rb +0 -180
  359. data/endpoints.json +0 -1460
  360. data/lib/aws-sdk-core/acm.rb +0 -6
  361. data/lib/aws-sdk-core/api/builder.rb +0 -106
  362. data/lib/aws-sdk-core/api/customizations.rb +0 -217
  363. data/lib/aws-sdk-core/api/docs/builder.rb +0 -220
  364. data/lib/aws-sdk-core/api/docs/client_type_documenter.rb +0 -109
  365. data/lib/aws-sdk-core/api/docs/docstring_provider.rb +0 -75
  366. data/lib/aws-sdk-core/api/docs/operation_documenter.rb +0 -138
  367. data/lib/aws-sdk-core/api/docs/param_formatter.rb +0 -163
  368. data/lib/aws-sdk-core/api/docs/request_syntax_example.rb +0 -22
  369. data/lib/aws-sdk-core/api/docs/response_structure_example.rb +0 -91
  370. data/lib/aws-sdk-core/api/docs/shared_example.rb +0 -100
  371. data/lib/aws-sdk-core/api/docs/utils.rb +0 -133
  372. data/lib/aws-sdk-core/api/shape_map.rb +0 -142
  373. data/lib/aws-sdk-core/apigateway.rb +0 -6
  374. data/lib/aws-sdk-core/applicationautoscaling.rb +0 -6
  375. data/lib/aws-sdk-core/applicationdiscoveryservice.rb +0 -5
  376. data/lib/aws-sdk-core/autoscaling.rb +0 -8
  377. data/lib/aws-sdk-core/checksums.rb +0 -51
  378. data/lib/aws-sdk-core/client.rb +0 -67
  379. data/lib/aws-sdk-core/client_waiters.rb +0 -120
  380. data/lib/aws-sdk-core/cloudformation.rb +0 -8
  381. data/lib/aws-sdk-core/cloudfront.rb +0 -15
  382. data/lib/aws-sdk-core/cloudfront/url_signer.rb +0 -167
  383. data/lib/aws-sdk-core/cloudhsm.rb +0 -5
  384. data/lib/aws-sdk-core/cloudsearch.rb +0 -5
  385. data/lib/aws-sdk-core/cloudsearchdomain.rb +0 -5
  386. data/lib/aws-sdk-core/cloudtrail.rb +0 -6
  387. data/lib/aws-sdk-core/cloudwatch.rb +0 -8
  388. data/lib/aws-sdk-core/cloudwatchevents.rb +0 -5
  389. data/lib/aws-sdk-core/cloudwatchlogs.rb +0 -6
  390. data/lib/aws-sdk-core/codecommit.rb +0 -6
  391. data/lib/aws-sdk-core/codedeploy.rb +0 -6
  392. data/lib/aws-sdk-core/codepipeline.rb +0 -5
  393. data/lib/aws-sdk-core/cognitoidentity.rb +0 -5
  394. data/lib/aws-sdk-core/cognitoidentityprovider.rb +0 -5
  395. data/lib/aws-sdk-core/cognitosync.rb +0 -4
  396. data/lib/aws-sdk-core/configservice.rb +0 -6
  397. data/lib/aws-sdk-core/databasemigrationservice.rb +0 -5
  398. data/lib/aws-sdk-core/datapipeline.rb +0 -5
  399. data/lib/aws-sdk-core/devicefarm.rb +0 -6
  400. data/lib/aws-sdk-core/directconnect.rb +0 -6
  401. data/lib/aws-sdk-core/directoryservice.rb +0 -5
  402. data/lib/aws-sdk-core/dynamodb.rb +0 -40
  403. data/lib/aws-sdk-core/dynamodb/attribute_value.rb +0 -108
  404. data/lib/aws-sdk-core/dynamodbstreams.rb +0 -5
  405. data/lib/aws-sdk-core/ec2.rb +0 -8
  406. data/lib/aws-sdk-core/ecr.rb +0 -5
  407. data/lib/aws-sdk-core/ecs.rb +0 -7
  408. data/lib/aws-sdk-core/efs.rb +0 -5
  409. data/lib/aws-sdk-core/elasticache.rb +0 -7
  410. data/lib/aws-sdk-core/elasticbeanstalk.rb +0 -6
  411. data/lib/aws-sdk-core/elasticloadbalancing.rb +0 -6
  412. data/lib/aws-sdk-core/elasticsearchservice.rb +0 -4
  413. data/lib/aws-sdk-core/elastictranscoder.rb +0 -6
  414. data/lib/aws-sdk-core/empty_structure.rb +0 -3
  415. data/lib/aws-sdk-core/emr.rb +0 -7
  416. data/lib/aws-sdk-core/endpoint_provider.rb +0 -95
  417. data/lib/aws-sdk-core/firehose.rb +0 -4
  418. data/lib/aws-sdk-core/gamelift.rb +0 -5
  419. data/lib/aws-sdk-core/glacier.rb +0 -7
  420. data/lib/aws-sdk-core/iam.rb +0 -8
  421. data/lib/aws-sdk-core/importexport.rb +0 -5
  422. data/lib/aws-sdk-core/inspector.rb +0 -5
  423. data/lib/aws-sdk-core/iot.rb +0 -5
  424. data/lib/aws-sdk-core/iotdataplane.rb +0 -4
  425. data/lib/aws-sdk-core/kinesis.rb +0 -7
  426. data/lib/aws-sdk-core/kms.rb +0 -6
  427. data/lib/aws-sdk-core/lambda.rb +0 -6
  428. data/lib/aws-sdk-core/lambdapreview.rb +0 -5
  429. data/lib/aws-sdk-core/machinelearning.rb +0 -6
  430. data/lib/aws-sdk-core/marketplacecommerceanalytics.rb +0 -5
  431. data/lib/aws-sdk-core/marketplacemetering.rb +0 -5
  432. data/lib/aws-sdk-core/opsworks.rb +0 -8
  433. data/lib/aws-sdk-core/partitions.rb +0 -174
  434. data/lib/aws-sdk-core/partitions/partition.rb +0 -95
  435. data/lib/aws-sdk-core/partitions/partition_list.rb +0 -60
  436. data/lib/aws-sdk-core/partitions/region.rb +0 -78
  437. data/lib/aws-sdk-core/partitions/service.rb +0 -84
  438. data/lib/aws-sdk-core/plugins/api_gateway_header.rb +0 -19
  439. data/lib/aws-sdk-core/plugins/csd_conditional_signing.rb +0 -30
  440. data/lib/aws-sdk-core/plugins/dynamodb_crc32_validation.rb +0 -52
  441. data/lib/aws-sdk-core/plugins/dynamodb_extended_retries.rb +0 -22
  442. data/lib/aws-sdk-core/plugins/dynamodb_simple_attributes.rb +0 -209
  443. data/lib/aws-sdk-core/plugins/ec2_copy_encrypted_snapshot.rb +0 -87
  444. data/lib/aws-sdk-core/plugins/ec2_region_validation.rb +0 -17
  445. data/lib/aws-sdk-core/plugins/glacier_account_id.rb +0 -19
  446. data/lib/aws-sdk-core/plugins/glacier_api_version.rb +0 -19
  447. data/lib/aws-sdk-core/plugins/glacier_checksums.rb +0 -87
  448. data/lib/aws-sdk-core/plugins/machine_learning_predict_endpoint.rb +0 -20
  449. data/lib/aws-sdk-core/plugins/request_signer.rb +0 -138
  450. data/lib/aws-sdk-core/plugins/route_53_id_fix.rb +0 -55
  451. data/lib/aws-sdk-core/plugins/s3_accelerate.rb +0 -73
  452. data/lib/aws-sdk-core/plugins/s3_bucket_dns.rb +0 -86
  453. data/lib/aws-sdk-core/plugins/s3_bucket_name_restrictions.rb +0 -21
  454. data/lib/aws-sdk-core/plugins/s3_expect_100_continue.rb +0 -27
  455. data/lib/aws-sdk-core/plugins/s3_get_bucket_location_fix.rb +0 -21
  456. data/lib/aws-sdk-core/plugins/s3_http_200_errors.rb +0 -45
  457. data/lib/aws-sdk-core/plugins/s3_location_constraint.rb +0 -31
  458. data/lib/aws-sdk-core/plugins/s3_md5s.rb +0 -50
  459. data/lib/aws-sdk-core/plugins/s3_redirects.rb +0 -37
  460. data/lib/aws-sdk-core/plugins/s3_request_signer.rb +0 -166
  461. data/lib/aws-sdk-core/plugins/s3_sse_cpk.rb +0 -64
  462. data/lib/aws-sdk-core/plugins/s3_url_encoded_keys.rb +0 -92
  463. data/lib/aws-sdk-core/plugins/sqs_md5s.rb +0 -162
  464. data/lib/aws-sdk-core/plugins/sqs_queue_urls.rb +0 -34
  465. data/lib/aws-sdk-core/plugins/swf_read_timeouts.rb +0 -23
  466. data/lib/aws-sdk-core/rds.rb +0 -8
  467. data/lib/aws-sdk-core/redshift.rb +0 -7
  468. data/lib/aws-sdk-core/route53.rb +0 -7
  469. data/lib/aws-sdk-core/route53domains.rb +0 -5
  470. data/lib/aws-sdk-core/s3.rb +0 -26
  471. data/lib/aws-sdk-core/s3/bucket_region_cache.rb +0 -75
  472. data/lib/aws-sdk-core/s3/presigner.rb +0 -113
  473. data/lib/aws-sdk-core/service.rb +0 -4
  474. data/lib/aws-sdk-core/servicecatalog.rb +0 -5
  475. data/lib/aws-sdk-core/ses.rb +0 -7
  476. data/lib/aws-sdk-core/signers/base.rb +0 -31
  477. data/lib/aws-sdk-core/signers/s3.rb +0 -184
  478. data/lib/aws-sdk-core/signers/v2.rb +0 -51
  479. data/lib/aws-sdk-core/signers/v3.rb +0 -34
  480. data/lib/aws-sdk-core/signers/v4.rb +0 -233
  481. data/lib/aws-sdk-core/simpledb.rb +0 -5
  482. data/lib/aws-sdk-core/sns.rb +0 -6
  483. data/lib/aws-sdk-core/sqs.rb +0 -6
  484. data/lib/aws-sdk-core/ssm.rb +0 -6
  485. data/lib/aws-sdk-core/storagegateway.rb +0 -6
  486. data/lib/aws-sdk-core/sts.rb +0 -5
  487. data/lib/aws-sdk-core/support.rb +0 -5
  488. data/lib/aws-sdk-core/swf.rb +0 -5
  489. data/lib/aws-sdk-core/tree_hash.rb +0 -69
  490. data/lib/aws-sdk-core/version.rb +0 -3
  491. data/lib/aws-sdk-core/waf.rb +0 -5
  492. data/lib/aws-sdk-core/waiters/null_provider.rb +0 -12
  493. data/lib/aws-sdk-core/waiters/provider.rb +0 -35
  494. data/lib/aws-sdk-core/workspaces.rb +0 -6
  495. data/lib/seahorse/client/plugins/restful_bindings.rb +0 -127
  496. data/service-models.json +0 -285
@@ -1,4 +0,0 @@
1
- Aws.add_service(:Firehose, {
2
- api: "#{Aws::API_DIR}/firehose/2015-08-04/api-2.json",
3
- docs: "#{Aws::API_DIR}/firehose/2015-08-04/docs-2.json",
4
- })
@@ -1,5 +0,0 @@
1
- Aws.add_service(:GameLift, {
2
- api: "#{Aws::API_DIR}/gamelift/2015-10-01/api-2.json",
3
- docs: "#{Aws::API_DIR}/gamelift/2015-10-01/docs-2.json",
4
- examples: "#{Aws::API_DIR}/gamelift/2015-10-01/examples-1.json",
5
- })
@@ -1,7 +0,0 @@
1
- Aws.add_service(:Glacier, {
2
- api: "#{Aws::API_DIR}/glacier/2012-06-01/api-2.json",
3
- docs: "#{Aws::API_DIR}/glacier/2012-06-01/docs-2.json",
4
- paginators: "#{Aws::API_DIR}/glacier/2012-06-01/paginators-1.json",
5
- resources: "#{Aws::API_DIR}/glacier/2012-06-01/resources-1.json",
6
- waiters: "#{Aws::API_DIR}/glacier/2012-06-01/waiters-2.json",
7
- })
@@ -1,8 +0,0 @@
1
- Aws.add_service(:IAM, {
2
- api: "#{Aws::API_DIR}/iam/2010-05-08/api-2.json",
3
- docs: "#{Aws::API_DIR}/iam/2010-05-08/docs-2.json",
4
- examples: "#{Aws::API_DIR}/iam/2010-05-08/examples-1.json",
5
- paginators: "#{Aws::API_DIR}/iam/2010-05-08/paginators-1.json",
6
- resources: "#{Aws::API_DIR}/iam/2010-05-08/resources-1.json",
7
- waiters: "#{Aws::API_DIR}/iam/2010-05-08/waiters-2.json",
8
- })
@@ -1,5 +0,0 @@
1
- Aws.add_service(:ImportExport, {
2
- api: "#{Aws::API_DIR}/importexport/2010-06-01/api-2.json",
3
- docs: "#{Aws::API_DIR}/importexport/2010-06-01/docs-2.json",
4
- paginators: "#{Aws::API_DIR}/importexport/2010-06-01/paginators-1.json",
5
- })
@@ -1,5 +0,0 @@
1
- Aws.add_service(:Inspector, {
2
- api: "#{Aws::API_DIR}/inspector/2016-02-16/api-2.json",
3
- docs: "#{Aws::API_DIR}/inspector/2016-02-16/docs-2.json",
4
- examples: "#{Aws::API_DIR}/inspector/2016-02-16/examples-1.json",
5
- })
@@ -1,5 +0,0 @@
1
- Aws.add_service(:IoT, {
2
- api: "#{Aws::API_DIR}/iot/2015-05-28/api-2.json",
3
- docs: "#{Aws::API_DIR}/iot/2015-05-28/docs-2.json",
4
- examples: "#{Aws::API_DIR}/iot/2015-05-28/examples-1.json",
5
- })
@@ -1,4 +0,0 @@
1
- Aws.add_service(:IoTDataPlane, {
2
- api: "#{Aws::API_DIR}/iot-data/2015-05-28/api-2.json",
3
- docs: "#{Aws::API_DIR}/iot-data/2015-05-28/docs-2.json",
4
- })
@@ -1,7 +0,0 @@
1
- Aws.add_service(:Kinesis, {
2
- api: "#{Aws::API_DIR}/kinesis/2013-12-02/api-2.json",
3
- docs: "#{Aws::API_DIR}/kinesis/2013-12-02/docs-2.json",
4
- examples: "#{Aws::API_DIR}/kinesis/2013-12-02/examples-1.json",
5
- paginators: "#{Aws::API_DIR}/kinesis/2013-12-02/paginators-1.json",
6
- waiters: "#{Aws::API_DIR}/kinesis/2013-12-02/waiters-2.json",
7
- })
@@ -1,6 +0,0 @@
1
- Aws.add_service(:KMS, {
2
- api: "#{Aws::API_DIR}/kms/2014-11-01/api-2.json",
3
- docs: "#{Aws::API_DIR}/kms/2014-11-01/docs-2.json",
4
- examples: "#{Aws::API_DIR}/kms/2014-11-01/examples-1.json",
5
- paginators: "#{Aws::API_DIR}/kms/2014-11-01/paginators-1.json",
6
- })
@@ -1,6 +0,0 @@
1
- Aws.add_service(:Lambda, {
2
- api: "#{Aws::API_DIR}/lambda/2015-03-31/api-2.json",
3
- docs: "#{Aws::API_DIR}/lambda/2015-03-31/docs-2.json",
4
- examples: "#{Aws::API_DIR}/lambda/2015-03-31/examples-1.json",
5
- paginators: "#{Aws::API_DIR}/lambda/2015-03-31/paginators-1.json",
6
- })
@@ -1,5 +0,0 @@
1
- Aws.add_service(:LambdaPreview, {
2
- api: "#{Aws::API_DIR}/lambda/2014-11-11/api-2.json",
3
- docs: "#{Aws::API_DIR}/lambda/2014-11-11/docs-2.json",
4
- paginators: "#{Aws::API_DIR}/lambda/2014-11-11/paginators-1.json",
5
- })
@@ -1,6 +0,0 @@
1
- Aws.add_service(:MachineLearning, {
2
- api: "#{Aws::API_DIR}/machinelearning/2014-12-12/api-2.json",
3
- docs: "#{Aws::API_DIR}/machinelearning/2014-12-12/docs-2.json",
4
- paginators: "#{Aws::API_DIR}/machinelearning/2014-12-12/paginators-1.json",
5
- waiters: "#{Aws::API_DIR}/machinelearning/2014-12-12/waiters-2.json",
6
- })
@@ -1,5 +0,0 @@
1
- Aws.add_service(:MarketplaceCommerceAnalytics, {
2
- api: "#{Aws::API_DIR}/marketplacecommerceanalytics/2015-07-01/api-2.json",
3
- docs: "#{Aws::API_DIR}/marketplacecommerceanalytics/2015-07-01/docs-2.json",
4
- examples: "#{Aws::API_DIR}/marketplacecommerceanalytics/2015-07-01/examples-1.json",
5
- })
@@ -1,5 +0,0 @@
1
- Aws.add_service(:MarketplaceMetering, {
2
- api: "#{Aws::API_DIR}/meteringmarketplace/2016-01-14/api-2.json",
3
- docs: "#{Aws::API_DIR}/meteringmarketplace/2016-01-14/docs-2.json",
4
- examples: "#{Aws::API_DIR}/meteringmarketplace/2016-01-14/examples-1.json",
5
- })
@@ -1,8 +0,0 @@
1
- Aws.add_service(:OpsWorks, {
2
- api: "#{Aws::API_DIR}/opsworks/2013-02-18/api-2.json",
3
- docs: "#{Aws::API_DIR}/opsworks/2013-02-18/docs-2.json",
4
- examples: "#{Aws::API_DIR}/opsworks/2013-02-18/examples-1.json",
5
- paginators: "#{Aws::API_DIR}/opsworks/2013-02-18/paginators-1.json",
6
- resources: "#{Aws::API_DIR}/opsworks/2013-02-18/resources-1.json",
7
- waiters: "#{Aws::API_DIR}/opsworks/2013-02-18/waiters-2.json",
8
- })
@@ -1,174 +0,0 @@
1
- module Aws
2
-
3
- # A {Partition} is a group of AWS {Region} and {Service} objects. You
4
- # can use a partition to determine what services are available in a region,
5
- # or what regions a service is available in.
6
- #
7
- # ## Partitions
8
- #
9
- # **AWS accounts are scoped to a single partition**. You can get a partition
10
- # by name. Valid partition names include:
11
- #
12
- # * `"aws"` - Public AWS partition
13
- # * `"aws-cn"` - AWS China
14
- # * `"aws-us-gov"` - AWS GovCloud
15
- #
16
- # To get a partition by name:
17
- #
18
- # aws = Aws.partition('aws')
19
- #
20
- # You can also enumerate all partitions:
21
- #
22
- # Aws.partitions.each do |partition|
23
- # puts partition.name
24
- # end
25
- #
26
- # ## Regions
27
- #
28
- # A {Partition} is divided up into one or more regions. For example, the
29
- # "aws" partition contains, "us-east-1", "us-west-1", etc. You can get
30
- # a region by name. Calling {Partition#region} will return an instance
31
- # of {Region}.
32
- #
33
- # region = Aws.partition('aws').region('us-east-1')
34
- # region.name
35
- # #=> "us-east-1"
36
- #
37
- # You can also enumerate all regions within a partition:
38
- #
39
- # Aws.partition('aws').regions.each do |region|
40
- # puts region.name
41
- # end
42
- #
43
- # Each {Region} object has a name, description and a list of services
44
- # available to that region:
45
- #
46
- # us_west_2 = Aws.partition('aws').region('us-west-2')
47
- #
48
- # us_west_2.name #=> "us-west-2"
49
- # us_west_2.description #=> "US West (Oregon)"
50
- # us_west_2.partition_name "aws"
51
- # us_west_2.services #=> #<Set: {"APIGateway", "AutoScaling", ... }
52
- #
53
- # To know if a service is available within a region, you can call `#include?`
54
- # on the set of service names:
55
- #
56
- # region.services.include?('DynamoDB') #=> true/false
57
- #
58
- # The service name should be the service's module name as used by
59
- # the AWS SDK for Ruby. To find the complete list of supported
60
- # service names, see {Partition#services}.
61
- #
62
- # Its also possible to enumerate every service for every region in
63
- # every partition.
64
- #
65
- # Aws.partitions.each do |partition|
66
- # partition.regions.each do |region|
67
- # region.services.each do |service_name|
68
- # puts "#{partition.name} -> #{region.name} -> #{service_name}"
69
- # end
70
- # end
71
- # end
72
- #
73
- # ## Services
74
- #
75
- # A {Partition} has a list of services available. You can get a
76
- # single {Service} by name:
77
- #
78
- # Aws.partition('aws').service('DynamoDB')
79
- #
80
- # You can also enumerate all services in a partition:
81
- #
82
- # Aws.partition('aws').services.each do |service|
83
- # puts service.name
84
- # end
85
- #
86
- # Each {Service} object has a name, and information about regions
87
- # that service is available in.
88
- #
89
- # service.name #=> "DynamoDB"
90
- # service.partition_name #=> "aws"
91
- # service.regions #=> #<Set: {"us-east-1", "us-west-1", ... }
92
- #
93
- # Some services have multiple regions, and others have a single partition
94
- # wide region. For example, {Aws::IAM} has a single region in the "aws"
95
- # partition. The {Service#regionalized?} method indicates when this is
96
- # the case.
97
- #
98
- # iam = Aws.partition('aws').service('IAM')
99
- #
100
- # iam.regionalized? #=> false
101
- # service.partition_region #=> "us-east-1"
102
- #
103
- # Its also possible to enumerate every region for every service in
104
- # every partition.
105
- #
106
- # Aws.partitions.each do |partition|
107
- # partition.services.each do |service|
108
- # service.regions.each do |region_name|
109
- # puts "#{partition.name} -> #{region_name} -> #{service.name}"
110
- # end
111
- # end
112
- # end
113
- #
114
- # ## Service Names
115
- #
116
- # {Service} names are those used by the the AWS SDK for Ruby. They
117
- # correspond to the service's module.
118
- #
119
- module Partitions
120
-
121
- autoload :Partition, 'aws-sdk-core/partitions/partition'
122
- autoload :PartitionList, 'aws-sdk-core/partitions/partition_list'
123
- autoload :Region, 'aws-sdk-core/partitions/region'
124
- autoload :Service, 'aws-sdk-core/partitions/service'
125
-
126
- class << self
127
-
128
- # @param [Hash] new_partitions
129
- # @api private
130
- def add(new_partitions)
131
- new_partitions['partitions'].each do |partition|
132
- default_list.add_partition(Partition.build(partition))
133
- defaults['partitions'] << partition
134
- end
135
- end
136
-
137
- # @api private
138
- def clear
139
- default_list.clear
140
- defaults['partitions'].clear
141
- end
142
-
143
- # @return [Hash]
144
- # @api private
145
- def defaults
146
- @defaults ||= begin
147
- path = File.join(File.dirname(__FILE__), '..', '..', 'endpoints.json')
148
- Aws::Json.load_file(path)
149
- end
150
- end
151
-
152
- # @return [PartitionList]
153
- # @api priviate
154
- def default_list
155
- @default_list ||= PartitionList.build(defaults)
156
- end
157
-
158
- # @return [Hash<String,String>] Returns a map of service module names
159
- # to their id as used in the endpoints.json document.
160
- # @api private
161
- def service_ids
162
- @service_ids ||= begin
163
- services = "#{File.dirname(__FILE__)}/../../service-models.json"
164
- services = Aws::Json.load_file(services)
165
- services.inject({}) do |ids, (name, svc)|
166
- ids[name] = svc['endpoint'] #if svc['endpoint']
167
- ids
168
- end
169
- end
170
- end
171
-
172
- end
173
- end
174
- end
@@ -1,95 +0,0 @@
1
- module Aws
2
- module Partitions
3
- class Partition
4
-
5
- # @option options [required, String] :name
6
- # @option options [required, Hash<String,Region>] :regions
7
- # @option options [required, Hash<String,Service>] :services
8
- # @api private
9
- def initialize(options = {})
10
- @name = options[:name]
11
- @regions = options[:regions]
12
- @services = options[:services]
13
- end
14
-
15
- # @return [String] The partition name, e.g. "aws", "aws-cn", "aws-us-gov".
16
- attr_reader :name
17
-
18
- # @param [String] region_name The name of the region, e.g. "us-east-1".
19
- # @return [Region]
20
- # @raise [ArgumentError] Raises `ArgumentError` for unknown region name.
21
- def region(region_name)
22
- if @regions.key?(region_name)
23
- @regions[region_name]
24
- else
25
- msg = "invalid region name #{region_name.inspect}; valid region "
26
- msg << "names include %s" % [@regions.keys.join(', ')]
27
- raise ArgumentError, msg
28
- end
29
- end
30
-
31
- # @return [Array<Region>]
32
- def regions
33
- @regions.values
34
- end
35
-
36
- # @param [String] service_name The service module name.
37
- # @return [Service]
38
- # @raise [ArgumentError] Raises `ArgumentError` for unknown service name.
39
- def service(service_name)
40
- if @services.key?(service_name)
41
- @services[service_name]
42
- else
43
- msg = "invalid service name #{service_name.inspect}; valid service "
44
- msg << "names include %s" % [@services.keys.join(', ')]
45
- raise ArgumentError, msg
46
- end
47
- end
48
-
49
- # @return [Array<Service>]
50
- def services
51
- @services.values
52
- end
53
-
54
- class << self
55
-
56
- # @api private
57
- def build(partition)
58
- Partition.new(
59
- name: partition['partition'],
60
- regions: build_regions(partition),
61
- services: build_services(partition),
62
- )
63
- end
64
-
65
- private
66
-
67
- # @param [Hash] partition
68
- # @return [Hash<String,Region>]
69
- def build_regions(partition)
70
- partition['regions'].inject({}) do |regions, (region_name, region)|
71
- unless region_name == "#{partition['partition']}-global"
72
- regions[region_name] = Region.build(region_name, region, partition)
73
- end
74
- regions
75
- end
76
- end
77
-
78
- # @param [Hash] partition
79
- # @return [Hash<String,Service>]
80
- def build_services(partition)
81
- Partitions.service_ids.inject({}) do |services, (svc_name, svc_id)|
82
- if partition['services'].key?(svc_id)
83
- svc_data = partition['services'][svc_id]
84
- services[svc_name] = Service.build(svc_name, svc_data, partition)
85
- else
86
- services[svc_name] = Service.build(svc_name, {'endpoints' => {}}, partition)
87
- end
88
- services
89
- end
90
- end
91
-
92
- end
93
- end
94
- end
95
- end
@@ -1,60 +0,0 @@
1
- module Aws
2
- module Partitions
3
- # @api private
4
- class PartitionList
5
-
6
- include Enumerable
7
-
8
- def initialize
9
- @partitions = {}
10
- end
11
-
12
- def clear
13
- @partitions = {}
14
- end
15
-
16
- # @return [Enumerator<Partition>]
17
- def each(&block)
18
- @partitions.each_value(&block)
19
- end
20
-
21
- # @param [String] partition_name
22
- # @return [Partition]
23
- def partition(partition_name)
24
- if @partitions.key?(partition_name)
25
- @partitions[partition_name]
26
- else
27
- msg = "invalid partition name #{partition_name.inspect}; valid "
28
- msg << "partition names include %s" % [@partitions.keys.join(', ')]
29
- raise ArgumentError, msg
30
- end
31
- end
32
-
33
- # @return [Array<Partition>]
34
- def partitions
35
- @partitions.values
36
- end
37
-
38
- # @param [Partition] partition
39
- def add_partition(partition)
40
- if Partition === partition
41
- @partitions[partition.name] = partition
42
- else
43
- raise ArgumentError, "expected Partition, got #{partition.class}"
44
- end
45
- end
46
-
47
- class << self
48
-
49
- # @api private
50
- def build(partitions)
51
- partitions['partitions'].inject(PartitionList.new) do |list, partition|
52
- list.add_partition(Partition.build(partition))
53
- list
54
- end
55
- end
56
-
57
- end
58
- end
59
- end
60
- end