fog-aws 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1275) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +14 -0
  3. data/.travis.yml +48 -0
  4. data/Gemfile +7 -0
  5. data/LICENSE.txt +22 -0
  6. data/README.md +36 -0
  7. data/Rakefile +8 -0
  8. data/fog-aws.gemspec +30 -0
  9. data/gemfiles/Gemfile-edge +9 -0
  10. data/gemfiles/Gemfile-ruby-1.8.7 +6 -0
  11. data/lib/fog/aws.rb +31 -0
  12. data/lib/fog/aws/auto_scaling.rb +279 -0
  13. data/lib/fog/aws/beanstalk.rb +156 -0
  14. data/lib/fog/aws/cdn.rb +205 -0
  15. data/lib/fog/aws/cloud_formation.rb +133 -0
  16. data/lib/fog/aws/cloud_watch.rb +167 -0
  17. data/lib/fog/aws/compute.rb +543 -0
  18. data/lib/fog/aws/core.rb +343 -0
  19. data/lib/fog/aws/credential_fetcher.rb +63 -0
  20. data/lib/fog/aws/data_pipeline.rb +126 -0
  21. data/lib/fog/aws/dns.rb +154 -0
  22. data/lib/fog/aws/dynamodb.rb +152 -0
  23. data/lib/fog/aws/elasticache.rb +216 -0
  24. data/lib/fog/aws/elb.rb +240 -0
  25. data/lib/fog/aws/elb/policy_types.rb +477 -0
  26. data/lib/fog/aws/emr.rb +139 -0
  27. data/lib/fog/aws/glacier.rb +179 -0
  28. data/lib/fog/aws/iam.rb +260 -0
  29. data/lib/fog/aws/models/auto_scaling/activities.rb +37 -0
  30. data/lib/fog/aws/models/auto_scaling/activity.rb +27 -0
  31. data/lib/fog/aws/models/auto_scaling/configuration.rb +69 -0
  32. data/lib/fog/aws/models/auto_scaling/configurations.rb +33 -0
  33. data/lib/fog/aws/models/auto_scaling/group.rb +150 -0
  34. data/lib/fog/aws/models/auto_scaling/groups.rb +37 -0
  35. data/lib/fog/aws/models/auto_scaling/instance.rb +58 -0
  36. data/lib/fog/aws/models/auto_scaling/instances.rb +28 -0
  37. data/lib/fog/aws/models/auto_scaling/policies.rb +37 -0
  38. data/lib/fog/aws/models/auto_scaling/policy.rb +46 -0
  39. data/lib/fog/aws/models/beanstalk/application.rb +59 -0
  40. data/lib/fog/aws/models/beanstalk/applications.rb +23 -0
  41. data/lib/fog/aws/models/beanstalk/environment.rb +145 -0
  42. data/lib/fog/aws/models/beanstalk/environments.rb +27 -0
  43. data/lib/fog/aws/models/beanstalk/event.rb +18 -0
  44. data/lib/fog/aws/models/beanstalk/events.rb +17 -0
  45. data/lib/fog/aws/models/beanstalk/template.rb +76 -0
  46. data/lib/fog/aws/models/beanstalk/templates.rb +68 -0
  47. data/lib/fog/aws/models/beanstalk/version.rb +77 -0
  48. data/lib/fog/aws/models/beanstalk/versions.rb +29 -0
  49. data/lib/fog/aws/models/cdn/distribution.rb +90 -0
  50. data/lib/fog/aws/models/cdn/distribution_helper.rb +60 -0
  51. data/lib/fog/aws/models/cdn/distributions.rb +30 -0
  52. data/lib/fog/aws/models/cdn/distributions_helper.rb +45 -0
  53. data/lib/fog/aws/models/cdn/invalidation.rb +60 -0
  54. data/lib/fog/aws/models/cdn/invalidations.rb +50 -0
  55. data/lib/fog/aws/models/cdn/streaming_distribution.rb +74 -0
  56. data/lib/fog/aws/models/cdn/streaming_distributions.rb +30 -0
  57. data/lib/fog/aws/models/cloud_watch/alarm.rb +60 -0
  58. data/lib/fog/aws/models/cloud_watch/alarm_data.rb +38 -0
  59. data/lib/fog/aws/models/cloud_watch/alarm_datum.rb +65 -0
  60. data/lib/fog/aws/models/cloud_watch/alarm_histories.rb +17 -0
  61. data/lib/fog/aws/models/cloud_watch/alarm_history.rb +15 -0
  62. data/lib/fog/aws/models/cloud_watch/alarms.rb +45 -0
  63. data/lib/fog/aws/models/cloud_watch/metric.rb +13 -0
  64. data/lib/fog/aws/models/cloud_watch/metric_statistic.rb +44 -0
  65. data/lib/fog/aws/models/cloud_watch/metric_statistics.rb +22 -0
  66. data/lib/fog/aws/models/cloud_watch/metrics.rb +50 -0
  67. data/lib/fog/aws/models/compute/address.rb +74 -0
  68. data/lib/fog/aws/models/compute/addresses.rb +96 -0
  69. data/lib/fog/aws/models/compute/dhcp_option.rb +66 -0
  70. data/lib/fog/aws/models/compute/dhcp_options.rb +87 -0
  71. data/lib/fog/aws/models/compute/flavor.rb +19 -0
  72. data/lib/fog/aws/models/compute/flavors.rb +606 -0
  73. data/lib/fog/aws/models/compute/image.rb +45 -0
  74. data/lib/fog/aws/models/compute/images.rb +59 -0
  75. data/lib/fog/aws/models/compute/internet_gateway.rb +78 -0
  76. data/lib/fog/aws/models/compute/internet_gateways.rb +87 -0
  77. data/lib/fog/aws/models/compute/key_pair.rb +53 -0
  78. data/lib/fog/aws/models/compute/key_pairs.rb +84 -0
  79. data/lib/fog/aws/models/compute/network_acl.rb +180 -0
  80. data/lib/fog/aws/models/compute/network_acls.rb +136 -0
  81. data/lib/fog/aws/models/compute/network_interface.rb +73 -0
  82. data/lib/fog/aws/models/compute/network_interfaces.rb +133 -0
  83. data/lib/fog/aws/models/compute/route_table.rb +66 -0
  84. data/lib/fog/aws/models/compute/route_tables.rb +88 -0
  85. data/lib/fog/aws/models/compute/security_group.rb +322 -0
  86. data/lib/fog/aws/models/compute/security_groups.rb +117 -0
  87. data/lib/fog/aws/models/compute/server.rb +271 -0
  88. data/lib/fog/aws/models/compute/servers.rb +211 -0
  89. data/lib/fog/aws/models/compute/snapshot.rb +53 -0
  90. data/lib/fog/aws/models/compute/snapshots.rb +48 -0
  91. data/lib/fog/aws/models/compute/spot_request.rb +119 -0
  92. data/lib/fog/aws/models/compute/spot_requests.rb +86 -0
  93. data/lib/fog/aws/models/compute/subnet.rb +61 -0
  94. data/lib/fog/aws/models/compute/subnets.rb +95 -0
  95. data/lib/fog/aws/models/compute/tag.rb +31 -0
  96. data/lib/fog/aws/models/compute/tags.rb +31 -0
  97. data/lib/fog/aws/models/compute/volume.rb +126 -0
  98. data/lib/fog/aws/models/compute/volumes.rb +117 -0
  99. data/lib/fog/aws/models/compute/vpc.rb +75 -0
  100. data/lib/fog/aws/models/compute/vpcs.rb +89 -0
  101. data/lib/fog/aws/models/data_pipeline/pipeline.rb +63 -0
  102. data/lib/fog/aws/models/data_pipeline/pipelines.rb +33 -0
  103. data/lib/fog/aws/models/dns/record.rb +116 -0
  104. data/lib/fog/aws/models/dns/records.rb +120 -0
  105. data/lib/fog/aws/models/dns/zone.rb +49 -0
  106. data/lib/fog/aws/models/dns/zones.rb +29 -0
  107. data/lib/fog/aws/models/elasticache/cluster.rb +69 -0
  108. data/lib/fog/aws/models/elasticache/clusters.rb +29 -0
  109. data/lib/fog/aws/models/elasticache/parameter_group.rb +28 -0
  110. data/lib/fog/aws/models/elasticache/parameter_groups.rb +28 -0
  111. data/lib/fog/aws/models/elasticache/security_group.rb +48 -0
  112. data/lib/fog/aws/models/elasticache/security_groups.rb +28 -0
  113. data/lib/fog/aws/models/elasticache/subnet_group.rb +32 -0
  114. data/lib/fog/aws/models/elasticache/subnet_groups.rb +24 -0
  115. data/lib/fog/aws/models/elb/backend_server_description.rb +11 -0
  116. data/lib/fog/aws/models/elb/backend_server_descriptions.rb +20 -0
  117. data/lib/fog/aws/models/elb/listener.rb +56 -0
  118. data/lib/fog/aws/models/elb/listeners.rb +30 -0
  119. data/lib/fog/aws/models/elb/load_balancer.rb +241 -0
  120. data/lib/fog/aws/models/elb/load_balancers.rb +37 -0
  121. data/lib/fog/aws/models/elb/policies.rb +52 -0
  122. data/lib/fog/aws/models/elb/policy.rb +59 -0
  123. data/lib/fog/aws/models/glacier/archive.rb +68 -0
  124. data/lib/fog/aws/models/glacier/archives.rb +26 -0
  125. data/lib/fog/aws/models/glacier/job.rb +61 -0
  126. data/lib/fog/aws/models/glacier/jobs.rb +40 -0
  127. data/lib/fog/aws/models/glacier/vault.rb +50 -0
  128. data/lib/fog/aws/models/glacier/vaults.rb +24 -0
  129. data/lib/fog/aws/models/iam/access_key.rb +39 -0
  130. data/lib/fog/aws/models/iam/access_keys.rb +32 -0
  131. data/lib/fog/aws/models/iam/policies.rb +40 -0
  132. data/lib/fog/aws/models/iam/policy.rb +36 -0
  133. data/lib/fog/aws/models/iam/role.rb +34 -0
  134. data/lib/fog/aws/models/iam/roles.rb +37 -0
  135. data/lib/fog/aws/models/iam/user.rb +38 -0
  136. data/lib/fog/aws/models/iam/users.rb +47 -0
  137. data/lib/fog/aws/models/rds/event_subscription.rb +41 -0
  138. data/lib/fog/aws/models/rds/event_subscriptions.rb +24 -0
  139. data/lib/fog/aws/models/rds/instance_option.rb +18 -0
  140. data/lib/fog/aws/models/rds/instance_options.rb +28 -0
  141. data/lib/fog/aws/models/rds/log_file.rb +22 -0
  142. data/lib/fog/aws/models/rds/log_files.rb +48 -0
  143. data/lib/fog/aws/models/rds/parameter.rb +18 -0
  144. data/lib/fog/aws/models/rds/parameter_group.rb +34 -0
  145. data/lib/fog/aws/models/rds/parameter_groups.rb +24 -0
  146. data/lib/fog/aws/models/rds/parameters.rb +36 -0
  147. data/lib/fog/aws/models/rds/security_group.rb +79 -0
  148. data/lib/fog/aws/models/rds/security_groups.rb +41 -0
  149. data/lib/fog/aws/models/rds/server.rb +142 -0
  150. data/lib/fog/aws/models/rds/servers.rb +24 -0
  151. data/lib/fog/aws/models/rds/snapshot.rb +49 -0
  152. data/lib/fog/aws/models/rds/snapshots.rb +69 -0
  153. data/lib/fog/aws/models/rds/subnet_group.rb +31 -0
  154. data/lib/fog/aws/models/rds/subnet_groups.rb +24 -0
  155. data/lib/fog/aws/models/sns/subscription.rb +0 -0
  156. data/lib/fog/aws/models/sns/subscriptions.rb +17 -0
  157. data/lib/fog/aws/models/sns/topic.rb +48 -0
  158. data/lib/fog/aws/models/sns/topics.rb +24 -0
  159. data/lib/fog/aws/models/storage/directories.rb +39 -0
  160. data/lib/fog/aws/models/storage/directory.rb +126 -0
  161. data/lib/fog/aws/models/storage/file.rb +280 -0
  162. data/lib/fog/aws/models/storage/files.rb +119 -0
  163. data/lib/fog/aws/models/storage/version.rb +33 -0
  164. data/lib/fog/aws/models/storage/versions.rb +34 -0
  165. data/lib/fog/aws/parsers/auto_scaling/basic.rb +24 -0
  166. data/lib/fog/aws/parsers/auto_scaling/describe_adjustment_types.rb +49 -0
  167. data/lib/fog/aws/parsers/auto_scaling/describe_auto_scaling_groups.rb +156 -0
  168. data/lib/fog/aws/parsers/auto_scaling/describe_auto_scaling_instances.rb +40 -0
  169. data/lib/fog/aws/parsers/auto_scaling/describe_auto_scaling_notification_types.rb +40 -0
  170. data/lib/fog/aws/parsers/auto_scaling/describe_launch_configurations.rb +97 -0
  171. data/lib/fog/aws/parsers/auto_scaling/describe_metric_collection_types.rb +64 -0
  172. data/lib/fog/aws/parsers/auto_scaling/describe_notification_configurations.rb +39 -0
  173. data/lib/fog/aws/parsers/auto_scaling/describe_policies.rb +65 -0
  174. data/lib/fog/aws/parsers/auto_scaling/describe_scaling_activities.rb +44 -0
  175. data/lib/fog/aws/parsers/auto_scaling/describe_scaling_process_types.rb +49 -0
  176. data/lib/fog/aws/parsers/auto_scaling/describe_scheduled_actions.rb +43 -0
  177. data/lib/fog/aws/parsers/auto_scaling/describe_tags.rb +42 -0
  178. data/lib/fog/aws/parsers/auto_scaling/describe_termination_policy_types.rb +40 -0
  179. data/lib/fog/aws/parsers/auto_scaling/put_notification_configuration.rb +24 -0
  180. data/lib/fog/aws/parsers/auto_scaling/put_scaling_policy.rb +27 -0
  181. data/lib/fog/aws/parsers/auto_scaling/terminate_instance_in_auto_scaling_group.rb +32 -0
  182. data/lib/fog/aws/parsers/beanstalk/check_dns_availability.rb +16 -0
  183. data/lib/fog/aws/parsers/beanstalk/create_application.rb +21 -0
  184. data/lib/fog/aws/parsers/beanstalk/create_application_version.rb +23 -0
  185. data/lib/fog/aws/parsers/beanstalk/create_configuration_template.rb +26 -0
  186. data/lib/fog/aws/parsers/beanstalk/create_environment.rb +34 -0
  187. data/lib/fog/aws/parsers/beanstalk/create_storage_location.rb +15 -0
  188. data/lib/fog/aws/parsers/beanstalk/describe_application_versions.rb +23 -0
  189. data/lib/fog/aws/parsers/beanstalk/describe_applications.rb +21 -0
  190. data/lib/fog/aws/parsers/beanstalk/describe_configuration_options.rb +29 -0
  191. data/lib/fog/aws/parsers/beanstalk/describe_configuration_settings.rb +27 -0
  192. data/lib/fog/aws/parsers/beanstalk/describe_environment_resources.rb +34 -0
  193. data/lib/fog/aws/parsers/beanstalk/describe_environments.rb +35 -0
  194. data/lib/fog/aws/parsers/beanstalk/describe_events.rb +24 -0
  195. data/lib/fog/aws/parsers/beanstalk/empty.rb +20 -0
  196. data/lib/fog/aws/parsers/beanstalk/list_available_solution_stacks.rb +18 -0
  197. data/lib/fog/aws/parsers/beanstalk/parser.rb +84 -0
  198. data/lib/fog/aws/parsers/beanstalk/retrieve_environment_info.rb +19 -0
  199. data/lib/fog/aws/parsers/beanstalk/terminate_environment.rb +34 -0
  200. data/lib/fog/aws/parsers/beanstalk/update_application.rb +21 -0
  201. data/lib/fog/aws/parsers/beanstalk/update_application_version.rb +23 -0
  202. data/lib/fog/aws/parsers/beanstalk/update_configuration_template.rb +26 -0
  203. data/lib/fog/aws/parsers/beanstalk/update_environment.rb +34 -0
  204. data/lib/fog/aws/parsers/beanstalk/validate_configuration_settings.rb +19 -0
  205. data/lib/fog/aws/parsers/cdn/distribution.rb +55 -0
  206. data/lib/fog/aws/parsers/cdn/get_distribution_list.rb +57 -0
  207. data/lib/fog/aws/parsers/cdn/get_invalidation.rb +28 -0
  208. data/lib/fog/aws/parsers/cdn/get_invalidation_list.rb +38 -0
  209. data/lib/fog/aws/parsers/cdn/get_streaming_distribution_list.rb +55 -0
  210. data/lib/fog/aws/parsers/cdn/post_invalidation.rb +24 -0
  211. data/lib/fog/aws/parsers/cdn/streaming_distribution.rb +56 -0
  212. data/lib/fog/aws/parsers/cloud_formation/basic.rb +10 -0
  213. data/lib/fog/aws/parsers/cloud_formation/create_stack.rb +16 -0
  214. data/lib/fog/aws/parsers/cloud_formation/describe_stack_events.rb +28 -0
  215. data/lib/fog/aws/parsers/cloud_formation/describe_stack_resources.rb +28 -0
  216. data/lib/fog/aws/parsers/cloud_formation/describe_stacks.rb +78 -0
  217. data/lib/fog/aws/parsers/cloud_formation/get_template.rb +16 -0
  218. data/lib/fog/aws/parsers/cloud_formation/list_stack_resources.rb +30 -0
  219. data/lib/fog/aws/parsers/cloud_formation/list_stacks.rb +32 -0
  220. data/lib/fog/aws/parsers/cloud_formation/update_stack.rb +16 -0
  221. data/lib/fog/aws/parsers/cloud_formation/validate_template.rb +49 -0
  222. data/lib/fog/aws/parsers/cloud_watch/delete_alarms.rb +24 -0
  223. data/lib/fog/aws/parsers/cloud_watch/describe_alarm_history.rb +38 -0
  224. data/lib/fog/aws/parsers/cloud_watch/describe_alarms.rb +71 -0
  225. data/lib/fog/aws/parsers/cloud_watch/describe_alarms_for_metric.rb +69 -0
  226. data/lib/fog/aws/parsers/cloud_watch/disable_alarm_actions.rb +24 -0
  227. data/lib/fog/aws/parsers/cloud_watch/enable_alarm_actions.rb +24 -0
  228. data/lib/fog/aws/parsers/cloud_watch/get_metric_statistics.rb +40 -0
  229. data/lib/fog/aws/parsers/cloud_watch/list_metrics.rb +56 -0
  230. data/lib/fog/aws/parsers/cloud_watch/put_metric_alarm.rb +24 -0
  231. data/lib/fog/aws/parsers/cloud_watch/put_metric_data.rb +24 -0
  232. data/lib/fog/aws/parsers/cloud_watch/set_alarm_state.rb +24 -0
  233. data/lib/fog/aws/parsers/compute/allocate_address.rb +16 -0
  234. data/lib/fog/aws/parsers/compute/assign_private_ip_addresses.rb +22 -0
  235. data/lib/fog/aws/parsers/compute/associate_address.rb +22 -0
  236. data/lib/fog/aws/parsers/compute/associate_route_table.rb +16 -0
  237. data/lib/fog/aws/parsers/compute/attach_network_interface.rb +16 -0
  238. data/lib/fog/aws/parsers/compute/attach_volume.rb +18 -0
  239. data/lib/fog/aws/parsers/compute/basic.rb +22 -0
  240. data/lib/fog/aws/parsers/compute/cancel_spot_instance_requests.rb +26 -0
  241. data/lib/fog/aws/parsers/compute/copy_image.rb +18 -0
  242. data/lib/fog/aws/parsers/compute/copy_snapshot.rb +18 -0
  243. data/lib/fog/aws/parsers/compute/create_dhcp_options.rb +73 -0
  244. data/lib/fog/aws/parsers/compute/create_image.rb +16 -0
  245. data/lib/fog/aws/parsers/compute/create_internet_gateway.rb +61 -0
  246. data/lib/fog/aws/parsers/compute/create_key_pair.rb +16 -0
  247. data/lib/fog/aws/parsers/compute/create_network_acl.rb +28 -0
  248. data/lib/fog/aws/parsers/compute/create_network_interface.rb +28 -0
  249. data/lib/fog/aws/parsers/compute/create_route_table.rb +71 -0
  250. data/lib/fog/aws/parsers/compute/create_security_group.rb +22 -0
  251. data/lib/fog/aws/parsers/compute/create_snapshot.rb +22 -0
  252. data/lib/fog/aws/parsers/compute/create_subnet.rb +46 -0
  253. data/lib/fog/aws/parsers/compute/create_volume.rb +22 -0
  254. data/lib/fog/aws/parsers/compute/create_vpc.rb +47 -0
  255. data/lib/fog/aws/parsers/compute/deregister_image.rb +16 -0
  256. data/lib/fog/aws/parsers/compute/describe_account_attributes.rb +41 -0
  257. data/lib/fog/aws/parsers/compute/describe_addresses.rb +26 -0
  258. data/lib/fog/aws/parsers/compute/describe_availability_zones.rb +40 -0
  259. data/lib/fog/aws/parsers/compute/describe_dhcp_options.rb +72 -0
  260. data/lib/fog/aws/parsers/compute/describe_images.rb +89 -0
  261. data/lib/fog/aws/parsers/compute/describe_instance_status.rb +73 -0
  262. data/lib/fog/aws/parsers/compute/describe_instances.rb +122 -0
  263. data/lib/fog/aws/parsers/compute/describe_internet_gateways.rb +60 -0
  264. data/lib/fog/aws/parsers/compute/describe_key_pairs.rb +26 -0
  265. data/lib/fog/aws/parsers/compute/describe_network_acls.rb +42 -0
  266. data/lib/fog/aws/parsers/compute/describe_network_interface_attribute.rb +77 -0
  267. data/lib/fog/aws/parsers/compute/describe_network_interfaces.rb +42 -0
  268. data/lib/fog/aws/parsers/compute/describe_placement_groups.rb +26 -0
  269. data/lib/fog/aws/parsers/compute/describe_regions.rb +26 -0
  270. data/lib/fog/aws/parsers/compute/describe_reserved_instances.rb +58 -0
  271. data/lib/fog/aws/parsers/compute/describe_reserved_instances_offerings.rb +30 -0
  272. data/lib/fog/aws/parsers/compute/describe_route_tables.rb +81 -0
  273. data/lib/fog/aws/parsers/compute/describe_security_groups.rb +111 -0
  274. data/lib/fog/aws/parsers/compute/describe_snapshots.rb +52 -0
  275. data/lib/fog/aws/parsers/compute/describe_spot_price_history.rb +30 -0
  276. data/lib/fog/aws/parsers/compute/describe_subnets.rb +49 -0
  277. data/lib/fog/aws/parsers/compute/describe_tags.rb +26 -0
  278. data/lib/fog/aws/parsers/compute/describe_volume_status.rb +87 -0
  279. data/lib/fog/aws/parsers/compute/describe_volumes.rb +71 -0
  280. data/lib/fog/aws/parsers/compute/describe_vpc_attribute.rb +48 -0
  281. data/lib/fog/aws/parsers/compute/describe_vpcs.rb +47 -0
  282. data/lib/fog/aws/parsers/compute/detach_volume.rb +18 -0
  283. data/lib/fog/aws/parsers/compute/get_console_output.rb +24 -0
  284. data/lib/fog/aws/parsers/compute/get_password_data.rb +22 -0
  285. data/lib/fog/aws/parsers/compute/import_key_pair.rb +16 -0
  286. data/lib/fog/aws/parsers/compute/modify_subnet_attribute.rb +24 -0
  287. data/lib/fog/aws/parsers/compute/monitor_unmonitor_instances.rb +31 -0
  288. data/lib/fog/aws/parsers/compute/network_acl_parser.rb +103 -0
  289. data/lib/fog/aws/parsers/compute/network_interface_parser.rb +108 -0
  290. data/lib/fog/aws/parsers/compute/purchase_reserved_instances_offering.rb +20 -0
  291. data/lib/fog/aws/parsers/compute/register_image.rb +16 -0
  292. data/lib/fog/aws/parsers/compute/replace_network_acl_association.rb +20 -0
  293. data/lib/fog/aws/parsers/compute/run_instances.rb +90 -0
  294. data/lib/fog/aws/parsers/compute/spot_datafeed_subscription.rb +25 -0
  295. data/lib/fog/aws/parsers/compute/spot_instance_requests.rb +69 -0
  296. data/lib/fog/aws/parsers/compute/start_stop_instances.rb +37 -0
  297. data/lib/fog/aws/parsers/compute/terminate_instances.rb +51 -0
  298. data/lib/fog/aws/parsers/dns/change_resource_record_sets.rb +22 -0
  299. data/lib/fog/aws/parsers/dns/create_health_check.rb +0 -0
  300. data/lib/fog/aws/parsers/dns/create_hosted_zone.rb +51 -0
  301. data/lib/fog/aws/parsers/dns/delete_hosted_zone.rb +21 -0
  302. data/lib/fog/aws/parsers/dns/get_change.rb +22 -0
  303. data/lib/fog/aws/parsers/dns/get_hosted_zone.rb +41 -0
  304. data/lib/fog/aws/parsers/dns/health_check.rb +33 -0
  305. data/lib/fog/aws/parsers/dns/list_health_checks.rb +41 -0
  306. data/lib/fog/aws/parsers/dns/list_hosted_zones.rb +33 -0
  307. data/lib/fog/aws/parsers/dns/list_resource_record_sets.rb +58 -0
  308. data/lib/fog/aws/parsers/elasticache/authorize_cache_security_group_ingress.rb +21 -0
  309. data/lib/fog/aws/parsers/elasticache/base.rb +28 -0
  310. data/lib/fog/aws/parsers/elasticache/cache_cluster_parser.rb +77 -0
  311. data/lib/fog/aws/parsers/elasticache/create_cache_subnet_group.rb +32 -0
  312. data/lib/fog/aws/parsers/elasticache/describe_cache_clusters.rb +26 -0
  313. data/lib/fog/aws/parsers/elasticache/describe_cache_parameters.rb +21 -0
  314. data/lib/fog/aws/parsers/elasticache/describe_cache_subnet_groups.rb +34 -0
  315. data/lib/fog/aws/parsers/elasticache/describe_engine_default_parameters.rb +21 -0
  316. data/lib/fog/aws/parsers/elasticache/describe_parameter_groups.rb +26 -0
  317. data/lib/fog/aws/parsers/elasticache/describe_reserved_cache_nodes.rb +32 -0
  318. data/lib/fog/aws/parsers/elasticache/describe_security_groups.rb +26 -0
  319. data/lib/fog/aws/parsers/elasticache/engine_defaults_parser.rb +58 -0
  320. data/lib/fog/aws/parsers/elasticache/event_list.rb +38 -0
  321. data/lib/fog/aws/parsers/elasticache/modify_parameter_group.rb +26 -0
  322. data/lib/fog/aws/parsers/elasticache/parameter_group_parser.rb +29 -0
  323. data/lib/fog/aws/parsers/elasticache/reset_parameter_group.rb +26 -0
  324. data/lib/fog/aws/parsers/elasticache/security_group_parser.rb +38 -0
  325. data/lib/fog/aws/parsers/elasticache/single_cache_cluster.rb +21 -0
  326. data/lib/fog/aws/parsers/elasticache/single_parameter_group.rb +21 -0
  327. data/lib/fog/aws/parsers/elasticache/single_security_group.rb +33 -0
  328. data/lib/fog/aws/parsers/elasticache/subnet_group_parser.rb +35 -0
  329. data/lib/fog/aws/parsers/elb/apply_security_groups_to_load_balancer.rb +22 -0
  330. data/lib/fog/aws/parsers/elb/attach_load_balancer_to_subnets.rb +22 -0
  331. data/lib/fog/aws/parsers/elb/configure_health_check.rb +33 -0
  332. data/lib/fog/aws/parsers/elb/create_load_balancer.rb +22 -0
  333. data/lib/fog/aws/parsers/elb/delete_load_balancer.rb +20 -0
  334. data/lib/fog/aws/parsers/elb/deregister_instances_from_load_balancer.rb +22 -0
  335. data/lib/fog/aws/parsers/elb/describe_instance_health.rb +26 -0
  336. data/lib/fog/aws/parsers/elb/describe_load_balancer_attributes.rb +54 -0
  337. data/lib/fog/aws/parsers/elb/describe_load_balancer_policies.rb +60 -0
  338. data/lib/fog/aws/parsers/elb/describe_load_balancer_policy_types.rb +66 -0
  339. data/lib/fog/aws/parsers/elb/describe_load_balancers.rb +167 -0
  340. data/lib/fog/aws/parsers/elb/describe_tags.rb +26 -0
  341. data/lib/fog/aws/parsers/elb/detach_load_balancer_from_subnets.rb +22 -0
  342. data/lib/fog/aws/parsers/elb/disable_availability_zones_for_load_balancer.rb +22 -0
  343. data/lib/fog/aws/parsers/elb/empty.rb +24 -0
  344. data/lib/fog/aws/parsers/elb/enable_availability_zones_for_load_balancer.rb +22 -0
  345. data/lib/fog/aws/parsers/elb/register_instances_with_load_balancer.rb +22 -0
  346. data/lib/fog/aws/parsers/elb/tag_list_parser.rb +57 -0
  347. data/lib/fog/aws/parsers/emr/add_instance_groups.rb +26 -0
  348. data/lib/fog/aws/parsers/emr/add_job_flow_steps.rb +16 -0
  349. data/lib/fog/aws/parsers/emr/describe_job_flows.rb +137 -0
  350. data/lib/fog/aws/parsers/emr/modify_instance_groups.rb +16 -0
  351. data/lib/fog/aws/parsers/emr/run_job_flow.rb +18 -0
  352. data/lib/fog/aws/parsers/emr/set_termination_protection.rb +16 -0
  353. data/lib/fog/aws/parsers/emr/terminate_job_flows.rb +16 -0
  354. data/lib/fog/aws/parsers/iam/base_instance_profile.rb +75 -0
  355. data/lib/fog/aws/parsers/iam/basic.rb +16 -0
  356. data/lib/fog/aws/parsers/iam/create_access_key.rb +22 -0
  357. data/lib/fog/aws/parsers/iam/create_group.rb +22 -0
  358. data/lib/fog/aws/parsers/iam/create_user.rb +22 -0
  359. data/lib/fog/aws/parsers/iam/get_account_password_policy.rb +26 -0
  360. data/lib/fog/aws/parsers/iam/get_account_summary.rb +42 -0
  361. data/lib/fog/aws/parsers/iam/get_group.rb +52 -0
  362. data/lib/fog/aws/parsers/iam/get_group_policy.rb +30 -0
  363. data/lib/fog/aws/parsers/iam/get_role_policy.rb +28 -0
  364. data/lib/fog/aws/parsers/iam/get_user.rb +26 -0
  365. data/lib/fog/aws/parsers/iam/get_user_policy.rb +30 -0
  366. data/lib/fog/aws/parsers/iam/instance_profile.rb +28 -0
  367. data/lib/fog/aws/parsers/iam/list_access_keys.rb +28 -0
  368. data/lib/fog/aws/parsers/iam/list_account_aliases.rb +24 -0
  369. data/lib/fog/aws/parsers/iam/list_groups.rb +28 -0
  370. data/lib/fog/aws/parsers/iam/list_groups_for_user.rb +28 -0
  371. data/lib/fog/aws/parsers/iam/list_instance_profiles.rb +29 -0
  372. data/lib/fog/aws/parsers/iam/list_mfa_devices.rb +30 -0
  373. data/lib/fog/aws/parsers/iam/list_policies.rb +24 -0
  374. data/lib/fog/aws/parsers/iam/list_roles.rb +29 -0
  375. data/lib/fog/aws/parsers/iam/list_server_certificates.rb +34 -0
  376. data/lib/fog/aws/parsers/iam/list_signing_certificates.rb +28 -0
  377. data/lib/fog/aws/parsers/iam/list_users.rb +30 -0
  378. data/lib/fog/aws/parsers/iam/login_profile.rb +24 -0
  379. data/lib/fog/aws/parsers/iam/role_parser.rb +49 -0
  380. data/lib/fog/aws/parsers/iam/single_role.rb +27 -0
  381. data/lib/fog/aws/parsers/iam/update_group.rb +23 -0
  382. data/lib/fog/aws/parsers/iam/update_user.rb +24 -0
  383. data/lib/fog/aws/parsers/iam/upload_server_certificate.rb +24 -0
  384. data/lib/fog/aws/parsers/iam/upload_signing_certificate.rb +22 -0
  385. data/lib/fog/aws/parsers/rds/authorize_db_security_group_ingress.rb +32 -0
  386. data/lib/fog/aws/parsers/rds/base.rb +28 -0
  387. data/lib/fog/aws/parsers/rds/create_db_instance.rb +32 -0
  388. data/lib/fog/aws/parsers/rds/create_db_instance_read_replica.rb +32 -0
  389. data/lib/fog/aws/parsers/rds/create_db_parameter_group.rb +33 -0
  390. data/lib/fog/aws/parsers/rds/create_db_security_group.rb +32 -0
  391. data/lib/fog/aws/parsers/rds/create_db_snapshot.rb +32 -0
  392. data/lib/fog/aws/parsers/rds/create_db_subnet_group.rb +32 -0
  393. data/lib/fog/aws/parsers/rds/create_event_subscription.rb +32 -0
  394. data/lib/fog/aws/parsers/rds/db_engine_version_parser.rb +32 -0
  395. data/lib/fog/aws/parsers/rds/db_parser.rb +136 -0
  396. data/lib/fog/aws/parsers/rds/delete_db_instance.rb +33 -0
  397. data/lib/fog/aws/parsers/rds/delete_db_parameter_group.rb +25 -0
  398. data/lib/fog/aws/parsers/rds/delete_db_security_group.rb +29 -0
  399. data/lib/fog/aws/parsers/rds/delete_db_snapshot.rb +32 -0
  400. data/lib/fog/aws/parsers/rds/delete_db_subnet_group.rb +29 -0
  401. data/lib/fog/aws/parsers/rds/delete_event_subscription.rb +29 -0
  402. data/lib/fog/aws/parsers/rds/describe_db_engine_versions.rb +34 -0
  403. data/lib/fog/aws/parsers/rds/describe_db_instances.rb +34 -0
  404. data/lib/fog/aws/parsers/rds/describe_db_log_files.rb +42 -0
  405. data/lib/fog/aws/parsers/rds/describe_db_parameter_groups.rb +33 -0
  406. data/lib/fog/aws/parsers/rds/describe_db_parameters.rb +42 -0
  407. data/lib/fog/aws/parsers/rds/describe_db_reserved_instances.rb +38 -0
  408. data/lib/fog/aws/parsers/rds/describe_db_security_groups.rb +34 -0
  409. data/lib/fog/aws/parsers/rds/describe_db_snapshots.rb +34 -0
  410. data/lib/fog/aws/parsers/rds/describe_db_subnet_groups.rb +34 -0
  411. data/lib/fog/aws/parsers/rds/describe_event_subscriptions.rb +34 -0
  412. data/lib/fog/aws/parsers/rds/describe_orderable_db_instance_options.rb +45 -0
  413. data/lib/fog/aws/parsers/rds/download_db_logfile_portion.rb +22 -0
  414. data/lib/fog/aws/parsers/rds/event_list.rb +38 -0
  415. data/lib/fog/aws/parsers/rds/event_subscription_parser.rb +37 -0
  416. data/lib/fog/aws/parsers/rds/modify_db_instance.rb +32 -0
  417. data/lib/fog/aws/parsers/rds/modify_db_parameter_group.rb +26 -0
  418. data/lib/fog/aws/parsers/rds/promote_read_replica.rb +32 -0
  419. data/lib/fog/aws/parsers/rds/reboot_db_instance.rb +33 -0
  420. data/lib/fog/aws/parsers/rds/restore_db_instance_from_db_snapshot.rb +32 -0
  421. data/lib/fog/aws/parsers/rds/restore_db_instance_to_point_in_time.rb +32 -0
  422. data/lib/fog/aws/parsers/rds/revoke_db_security_group_ingress.rb +32 -0
  423. data/lib/fog/aws/parsers/rds/security_group_parser.rb +36 -0
  424. data/lib/fog/aws/parsers/rds/snapshot_parser.rb +39 -0
  425. data/lib/fog/aws/parsers/rds/subnet_group_parser.rb +35 -0
  426. data/lib/fog/aws/parsers/rds/tag_list_parser.rb +33 -0
  427. data/lib/fog/aws/parsers/redshift/cluster.rb +28 -0
  428. data/lib/fog/aws/parsers/redshift/cluster_parser.rb +143 -0
  429. data/lib/fog/aws/parsers/redshift/cluster_security_group_parser.rb +49 -0
  430. data/lib/fog/aws/parsers/redshift/cluster_snapshot.rb +31 -0
  431. data/lib/fog/aws/parsers/redshift/cluster_snapshot_parser.rb +65 -0
  432. data/lib/fog/aws/parsers/redshift/cluster_subnet_group_parser.rb +50 -0
  433. data/lib/fog/aws/parsers/redshift/create_cluster_parameter_group.rb +29 -0
  434. data/lib/fog/aws/parsers/redshift/create_cluster_security_group.rb +30 -0
  435. data/lib/fog/aws/parsers/redshift/describe_cluster_parameter_groups.rb +40 -0
  436. data/lib/fog/aws/parsers/redshift/describe_cluster_parameters.rb +47 -0
  437. data/lib/fog/aws/parsers/redshift/describe_cluster_security_groups.rb +37 -0
  438. data/lib/fog/aws/parsers/redshift/describe_cluster_snapshots.rb +37 -0
  439. data/lib/fog/aws/parsers/redshift/describe_cluster_subnet_groups.rb +55 -0
  440. data/lib/fog/aws/parsers/redshift/describe_cluster_versions.rb +50 -0
  441. data/lib/fog/aws/parsers/redshift/describe_clusters.rb +29 -0
  442. data/lib/fog/aws/parsers/redshift/describe_default_cluster_parameters.rb +48 -0
  443. data/lib/fog/aws/parsers/redshift/describe_events.rb +43 -0
  444. data/lib/fog/aws/parsers/redshift/describe_orderable_cluster_options.rb +53 -0
  445. data/lib/fog/aws/parsers/redshift/describe_reserved_node_offerings.rb +63 -0
  446. data/lib/fog/aws/parsers/redshift/describe_reserved_nodes.rb +70 -0
  447. data/lib/fog/aws/parsers/redshift/describe_resize.rb +58 -0
  448. data/lib/fog/aws/parsers/redshift/purchase_reserved_node_offering.rb +56 -0
  449. data/lib/fog/aws/parsers/redshift/revoke_cluster_security_group_ingress.rb +30 -0
  450. data/lib/fog/aws/parsers/redshift/update_cluster_parameter_group_parser.rb +28 -0
  451. data/lib/fog/aws/parsers/ses/delete_verified_email_address.rb +20 -0
  452. data/lib/fog/aws/parsers/ses/get_send_quota.rb +22 -0
  453. data/lib/fog/aws/parsers/ses/get_send_statistics.rb +26 -0
  454. data/lib/fog/aws/parsers/ses/list_verified_email_addresses.rb +22 -0
  455. data/lib/fog/aws/parsers/ses/send_email.rb +22 -0
  456. data/lib/fog/aws/parsers/ses/send_raw_email.rb +22 -0
  457. data/lib/fog/aws/parsers/ses/verify_domain_identity.rb +22 -0
  458. data/lib/fog/aws/parsers/ses/verify_email_address.rb +20 -0
  459. data/lib/fog/aws/parsers/simpledb/basic.rb +27 -0
  460. data/lib/fog/aws/parsers/simpledb/domain_metadata.rb +28 -0
  461. data/lib/fog/aws/parsers/simpledb/get_attributes.rb +32 -0
  462. data/lib/fog/aws/parsers/simpledb/list_domains.rb +26 -0
  463. data/lib/fog/aws/parsers/simpledb/select.rb +37 -0
  464. data/lib/fog/aws/parsers/sns/add_permission.rb +20 -0
  465. data/lib/fog/aws/parsers/sns/confirm_subscription.rb +20 -0
  466. data/lib/fog/aws/parsers/sns/create_topic.rb +20 -0
  467. data/lib/fog/aws/parsers/sns/delete_topic.rb +20 -0
  468. data/lib/fog/aws/parsers/sns/get_topic_attributes.rb +29 -0
  469. data/lib/fog/aws/parsers/sns/list_subscriptions.rb +26 -0
  470. data/lib/fog/aws/parsers/sns/list_topics.rb +22 -0
  471. data/lib/fog/aws/parsers/sns/publish.rb +20 -0
  472. data/lib/fog/aws/parsers/sns/remove_permission.rb +20 -0
  473. data/lib/fog/aws/parsers/sns/set_topic_attributes.rb +20 -0
  474. data/lib/fog/aws/parsers/sns/subscribe.rb +20 -0
  475. data/lib/fog/aws/parsers/sns/unsubscribe.rb +20 -0
  476. data/lib/fog/aws/parsers/sqs/basic.rb +20 -0
  477. data/lib/fog/aws/parsers/sqs/create_queue.rb +22 -0
  478. data/lib/fog/aws/parsers/sqs/get_queue_attributes.rb +31 -0
  479. data/lib/fog/aws/parsers/sqs/list_queues.rb +22 -0
  480. data/lib/fog/aws/parsers/sqs/receive_message.rb +37 -0
  481. data/lib/fog/aws/parsers/sqs/send_message.rb +24 -0
  482. data/lib/fog/aws/parsers/storage/access_control_list.rb +42 -0
  483. data/lib/fog/aws/parsers/storage/complete_multipart_upload.rb +20 -0
  484. data/lib/fog/aws/parsers/storage/copy_object.rb +18 -0
  485. data/lib/fog/aws/parsers/storage/cors_configuration.rb +38 -0
  486. data/lib/fog/aws/parsers/storage/delete_multiple_objects.rb +45 -0
  487. data/lib/fog/aws/parsers/storage/get_bucket.rb +58 -0
  488. data/lib/fog/aws/parsers/storage/get_bucket_lifecycle.rb +64 -0
  489. data/lib/fog/aws/parsers/storage/get_bucket_location.rb +16 -0
  490. data/lib/fog/aws/parsers/storage/get_bucket_logging.rb +36 -0
  491. data/lib/fog/aws/parsers/storage/get_bucket_notification.rb +61 -0
  492. data/lib/fog/aws/parsers/storage/get_bucket_object_versions.rb +84 -0
  493. data/lib/fog/aws/parsers/storage/get_bucket_tagging.rb +33 -0
  494. data/lib/fog/aws/parsers/storage/get_bucket_versioning.rb +20 -0
  495. data/lib/fog/aws/parsers/storage/get_bucket_website.rb +26 -0
  496. data/lib/fog/aws/parsers/storage/get_request_payment.rb +16 -0
  497. data/lib/fog/aws/parsers/storage/get_service.rb +28 -0
  498. data/lib/fog/aws/parsers/storage/initiate_multipart_upload.rb +20 -0
  499. data/lib/fog/aws/parsers/storage/list_multipart_uploads.rb +52 -0
  500. data/lib/fog/aws/parsers/storage/list_parts.rb +36 -0
  501. data/lib/fog/aws/parsers/sts/assume_role.rb +26 -0
  502. data/lib/fog/aws/parsers/sts/assume_role_with_saml.rb +26 -0
  503. data/lib/fog/aws/parsers/sts/get_session_token.rb +26 -0
  504. data/lib/fog/aws/rds.rb +269 -0
  505. data/lib/fog/aws/redshift.rb +133 -0
  506. data/lib/fog/aws/region_methods.rb +11 -0
  507. data/lib/fog/aws/requests/auto_scaling/create_auto_scaling_group.rb +140 -0
  508. data/lib/fog/aws/requests/auto_scaling/create_launch_configuration.rb +114 -0
  509. data/lib/fog/aws/requests/auto_scaling/create_or_update_tags.rb +57 -0
  510. data/lib/fog/aws/requests/auto_scaling/delete_auto_scaling_group.rb +55 -0
  511. data/lib/fog/aws/requests/auto_scaling/delete_launch_configuration.rb +51 -0
  512. data/lib/fog/aws/requests/auto_scaling/delete_notification_configuration.rb +58 -0
  513. data/lib/fog/aws/requests/auto_scaling/delete_policy.rb +50 -0
  514. data/lib/fog/aws/requests/auto_scaling/delete_scheduled_action.rb +42 -0
  515. data/lib/fog/aws/requests/auto_scaling/delete_tags.rb +57 -0
  516. data/lib/fog/aws/requests/auto_scaling/describe_adjustment_types.rb +48 -0
  517. data/lib/fog/aws/requests/auto_scaling/describe_auto_scaling_groups.rb +134 -0
  518. data/lib/fog/aws/requests/auto_scaling/describe_auto_scaling_instances.rb +89 -0
  519. data/lib/fog/aws/requests/auto_scaling/describe_auto_scaling_notification_types.rb +50 -0
  520. data/lib/fog/aws/requests/auto_scaling/describe_launch_configurations.rb +112 -0
  521. data/lib/fog/aws/requests/auto_scaling/describe_metric_collection_types.rb +56 -0
  522. data/lib/fog/aws/requests/auto_scaling/describe_notification_configurations.rb +73 -0
  523. data/lib/fog/aws/requests/auto_scaling/describe_policies.rb +105 -0
  524. data/lib/fog/aws/requests/auto_scaling/describe_scaling_activities.rb +82 -0
  525. data/lib/fog/aws/requests/auto_scaling/describe_scaling_process_types.rb +49 -0
  526. data/lib/fog/aws/requests/auto_scaling/describe_scheduled_actions.rb +82 -0
  527. data/lib/fog/aws/requests/auto_scaling/describe_tags.rb +68 -0
  528. data/lib/fog/aws/requests/auto_scaling/describe_termination_policy_types.rb +47 -0
  529. data/lib/fog/aws/requests/auto_scaling/disable_metrics_collection.rb +50 -0
  530. data/lib/fog/aws/requests/auto_scaling/enable_metrics_collection.rb +60 -0
  531. data/lib/fog/aws/requests/auto_scaling/execute_policy.rb +44 -0
  532. data/lib/fog/aws/requests/auto_scaling/put_notification_configuration.rb +64 -0
  533. data/lib/fog/aws/requests/auto_scaling/put_scaling_policy.rb +79 -0
  534. data/lib/fog/aws/requests/auto_scaling/put_scheduled_update_group_action.rb +64 -0
  535. data/lib/fog/aws/requests/auto_scaling/resume_processes.rb +53 -0
  536. data/lib/fog/aws/requests/auto_scaling/set_desired_capacity.rb +81 -0
  537. data/lib/fog/aws/requests/auto_scaling/set_instance_health.rb +49 -0
  538. data/lib/fog/aws/requests/auto_scaling/suspend_processes.rb +56 -0
  539. data/lib/fog/aws/requests/auto_scaling/terminate_instance_in_auto_scaling_group.rb +59 -0
  540. data/lib/fog/aws/requests/auto_scaling/update_auto_scaling_group.rb +93 -0
  541. data/lib/fog/aws/requests/beanstalk/check_dns_availability.rb +26 -0
  542. data/lib/fog/aws/requests/beanstalk/create_application.rb +28 -0
  543. data/lib/fog/aws/requests/beanstalk/create_application_version.rb +40 -0
  544. data/lib/fog/aws/requests/beanstalk/create_configuration_template.rb +46 -0
  545. data/lib/fog/aws/requests/beanstalk/create_environment.rb +49 -0
  546. data/lib/fog/aws/requests/beanstalk/create_storage_location.rb +26 -0
  547. data/lib/fog/aws/requests/beanstalk/delete_application.rb +28 -0
  548. data/lib/fog/aws/requests/beanstalk/delete_application_version.rb +35 -0
  549. data/lib/fog/aws/requests/beanstalk/delete_configuration_template.rb +33 -0
  550. data/lib/fog/aws/requests/beanstalk/delete_environment_configuration.rb +33 -0
  551. data/lib/fog/aws/requests/beanstalk/describe_application_versions.rb +33 -0
  552. data/lib/fog/aws/requests/beanstalk/describe_applications.rb +29 -0
  553. data/lib/fog/aws/requests/beanstalk/describe_configuration_options.rb +39 -0
  554. data/lib/fog/aws/requests/beanstalk/describe_configuration_settings.rb +30 -0
  555. data/lib/fog/aws/requests/beanstalk/describe_environment_resources.rb +28 -0
  556. data/lib/fog/aws/requests/beanstalk/describe_environments.rb +39 -0
  557. data/lib/fog/aws/requests/beanstalk/describe_events.rb +28 -0
  558. data/lib/fog/aws/requests/beanstalk/list_available_solution_stacks.rb +26 -0
  559. data/lib/fog/aws/requests/beanstalk/rebuild_environment.rb +29 -0
  560. data/lib/fog/aws/requests/beanstalk/request_environment_info.rb +28 -0
  561. data/lib/fog/aws/requests/beanstalk/restart_app_server.rb +28 -0
  562. data/lib/fog/aws/requests/beanstalk/retrieve_environment_info.rb +28 -0
  563. data/lib/fog/aws/requests/beanstalk/swap_environment_cnames.rb +28 -0
  564. data/lib/fog/aws/requests/beanstalk/terminate_environment.rb +30 -0
  565. data/lib/fog/aws/requests/beanstalk/update_application.rb +29 -0
  566. data/lib/fog/aws/requests/beanstalk/update_application_version.rb +29 -0
  567. data/lib/fog/aws/requests/beanstalk/update_configuration_template.rb +35 -0
  568. data/lib/fog/aws/requests/beanstalk/update_environment.rb +41 -0
  569. data/lib/fog/aws/requests/beanstalk/validate_configuration_settings.rb +32 -0
  570. data/lib/fog/aws/requests/cdn/delete_distribution.rb +52 -0
  571. data/lib/fog/aws/requests/cdn/delete_streaming_distribution.rb +51 -0
  572. data/lib/fog/aws/requests/cdn/get_distribution.rb +78 -0
  573. data/lib/fog/aws/requests/cdn/get_distribution_list.rb +81 -0
  574. data/lib/fog/aws/requests/cdn/get_invalidation.rb +58 -0
  575. data/lib/fog/aws/requests/cdn/get_invalidation_list.rb +76 -0
  576. data/lib/fog/aws/requests/cdn/get_streaming_distribution.rb +69 -0
  577. data/lib/fog/aws/requests/cdn/get_streaming_distribution_list.rb +81 -0
  578. data/lib/fog/aws/requests/cdn/post_distribution.rb +130 -0
  579. data/lib/fog/aws/requests/cdn/post_invalidation.rb +75 -0
  580. data/lib/fog/aws/requests/cdn/post_streaming_distribution.rb +115 -0
  581. data/lib/fog/aws/requests/cdn/put_distribution_config.rb +116 -0
  582. data/lib/fog/aws/requests/cdn/put_streaming_distribution_config.rb +105 -0
  583. data/lib/fog/aws/requests/cloud_formation/create_stack.rb +88 -0
  584. data/lib/fog/aws/requests/cloud_formation/delete_stack.rb +25 -0
  585. data/lib/fog/aws/requests/cloud_formation/describe_stack_events.rb +39 -0
  586. data/lib/fog/aws/requests/cloud_formation/describe_stack_resources.rb +38 -0
  587. data/lib/fog/aws/requests/cloud_formation/describe_stacks.rb +37 -0
  588. data/lib/fog/aws/requests/cloud_formation/get_template.rb +27 -0
  589. data/lib/fog/aws/requests/cloud_formation/list_stack_resources.rb +34 -0
  590. data/lib/fog/aws/requests/cloud_formation/list_stacks.rb +35 -0
  591. data/lib/fog/aws/requests/cloud_formation/update_stack.rb +56 -0
  592. data/lib/fog/aws/requests/cloud_formation/validate_template.rb +29 -0
  593. data/lib/fog/aws/requests/cloud_watch/delete_alarms.rb +47 -0
  594. data/lib/fog/aws/requests/cloud_watch/describe_alarm_history.rb +32 -0
  595. data/lib/fog/aws/requests/cloud_watch/describe_alarms.rb +55 -0
  596. data/lib/fog/aws/requests/cloud_watch/describe_alarms_for_metric.rb +38 -0
  597. data/lib/fog/aws/requests/cloud_watch/disable_alarm_actions.rb +29 -0
  598. data/lib/fog/aws/requests/cloud_watch/enable_alarm_actions.rb +29 -0
  599. data/lib/fog/aws/requests/cloud_watch/get_metric_statistics.rb +46 -0
  600. data/lib/fog/aws/requests/cloud_watch/list_metrics.rb +62 -0
  601. data/lib/fog/aws/requests/cloud_watch/put_metric_alarm.rb +93 -0
  602. data/lib/fog/aws/requests/cloud_watch/put_metric_data.rb +72 -0
  603. data/lib/fog/aws/requests/cloud_watch/set_alarm_state.rb +30 -0
  604. data/lib/fog/aws/requests/compute/allocate_address.rb +55 -0
  605. data/lib/fog/aws/requests/compute/assign_private_ip_addresses.rb +55 -0
  606. data/lib/fog/aws/requests/compute/associate_address.rb +126 -0
  607. data/lib/fog/aws/requests/compute/associate_dhcp_options.rb +53 -0
  608. data/lib/fog/aws/requests/compute/associate_route_table.rb +70 -0
  609. data/lib/fog/aws/requests/compute/attach_internet_gateway.rb +52 -0
  610. data/lib/fog/aws/requests/compute/attach_network_interface.rb +61 -0
  611. data/lib/fog/aws/requests/compute/attach_volume.rb +83 -0
  612. data/lib/fog/aws/requests/compute/authorize_security_group_ingress.rb +230 -0
  613. data/lib/fog/aws/requests/compute/cancel_spot_instance_requests.rb +32 -0
  614. data/lib/fog/aws/requests/compute/copy_image.rb +59 -0
  615. data/lib/fog/aws/requests/compute/copy_snapshot.rb +54 -0
  616. data/lib/fog/aws/requests/compute/create_dhcp_options.rb +74 -0
  617. data/lib/fog/aws/requests/compute/create_image.rb +91 -0
  618. data/lib/fog/aws/requests/compute/create_internet_gateway.rb +52 -0
  619. data/lib/fog/aws/requests/compute/create_key_pair.rb +52 -0
  620. data/lib/fog/aws/requests/compute/create_network_acl.rb +105 -0
  621. data/lib/fog/aws/requests/compute/create_network_acl_entry.rb +80 -0
  622. data/lib/fog/aws/requests/compute/create_network_interface.rb +134 -0
  623. data/lib/fog/aws/requests/compute/create_placement_group.rb +31 -0
  624. data/lib/fog/aws/requests/compute/create_route.rb +87 -0
  625. data/lib/fog/aws/requests/compute/create_route_table.rb +69 -0
  626. data/lib/fog/aws/requests/compute/create_security_group.rb +60 -0
  627. data/lib/fog/aws/requests/compute/create_snapshot.rb +70 -0
  628. data/lib/fog/aws/requests/compute/create_spot_datafeed_subscription.rb +39 -0
  629. data/lib/fog/aws/requests/compute/create_subnet.rb +102 -0
  630. data/lib/fog/aws/requests/compute/create_tags.rb +65 -0
  631. data/lib/fog/aws/requests/compute/create_volume.rb +124 -0
  632. data/lib/fog/aws/requests/compute/create_vpc.rb +94 -0
  633. data/lib/fog/aws/requests/compute/delete_dhcp_options.rb +50 -0
  634. data/lib/fog/aws/requests/compute/delete_internet_gateway.rb +48 -0
  635. data/lib/fog/aws/requests/compute/delete_key_pair.rb +43 -0
  636. data/lib/fog/aws/requests/compute/delete_network_acl.rb +52 -0
  637. data/lib/fog/aws/requests/compute/delete_network_acl_entry.rb +55 -0
  638. data/lib/fog/aws/requests/compute/delete_network_interface.rb +51 -0
  639. data/lib/fog/aws/requests/compute/delete_placement_group.rb +30 -0
  640. data/lib/fog/aws/requests/compute/delete_route.rb +57 -0
  641. data/lib/fog/aws/requests/compute/delete_route_table.rb +49 -0
  642. data/lib/fog/aws/requests/compute/delete_security_group.rb +100 -0
  643. data/lib/fog/aws/requests/compute/delete_snapshot.rb +46 -0
  644. data/lib/fog/aws/requests/compute/delete_spot_datafeed_subscription.rb +26 -0
  645. data/lib/fog/aws/requests/compute/delete_subnet.rb +49 -0
  646. data/lib/fog/aws/requests/compute/delete_tags.rb +67 -0
  647. data/lib/fog/aws/requests/compute/delete_volume.rb +52 -0
  648. data/lib/fog/aws/requests/compute/delete_vpc.rb +56 -0
  649. data/lib/fog/aws/requests/compute/deregister_image.rb +49 -0
  650. data/lib/fog/aws/requests/compute/describe_account_attributes.rb +48 -0
  651. data/lib/fog/aws/requests/compute/describe_addresses.rb +62 -0
  652. data/lib/fog/aws/requests/compute/describe_availability_zones.rb +94 -0
  653. data/lib/fog/aws/requests/compute/describe_dhcp_options.rb +54 -0
  654. data/lib/fog/aws/requests/compute/describe_images.rb +126 -0
  655. data/lib/fog/aws/requests/compute/describe_instance_status.rb +46 -0
  656. data/lib/fog/aws/requests/compute/describe_instances.rb +265 -0
  657. data/lib/fog/aws/requests/compute/describe_internet_gateways.rb +59 -0
  658. data/lib/fog/aws/requests/compute/describe_key_pairs.rb +64 -0
  659. data/lib/fog/aws/requests/compute/describe_network_acls.rb +108 -0
  660. data/lib/fog/aws/requests/compute/describe_network_interface_attribute.rb +66 -0
  661. data/lib/fog/aws/requests/compute/describe_network_interfaces.rb +85 -0
  662. data/lib/fog/aws/requests/compute/describe_placement_groups.rb +33 -0
  663. data/lib/fog/aws/requests/compute/describe_regions.rb +64 -0
  664. data/lib/fog/aws/requests/compute/describe_reserved_instances.rb +59 -0
  665. data/lib/fog/aws/requests/compute/describe_reserved_instances_offerings.rb +80 -0
  666. data/lib/fog/aws/requests/compute/describe_route_tables.rb +86 -0
  667. data/lib/fog/aws/requests/compute/describe_security_groups.rb +98 -0
  668. data/lib/fog/aws/requests/compute/describe_snapshots.rb +120 -0
  669. data/lib/fog/aws/requests/compute/describe_spot_datafeed_subscription.rb +33 -0
  670. data/lib/fog/aws/requests/compute/describe_spot_instance_requests.rb +46 -0
  671. data/lib/fog/aws/requests/compute/describe_spot_price_history.rb +35 -0
  672. data/lib/fog/aws/requests/compute/describe_subnets.rb +71 -0
  673. data/lib/fog/aws/requests/compute/describe_tags.rb +104 -0
  674. data/lib/fog/aws/requests/compute/describe_volume_status.rb +43 -0
  675. data/lib/fog/aws/requests/compute/describe_volumes.rb +118 -0
  676. data/lib/fog/aws/requests/compute/describe_vpc_attribute.rb +55 -0
  677. data/lib/fog/aws/requests/compute/describe_vpcs.rb +74 -0
  678. data/lib/fog/aws/requests/compute/detach_internet_gateway.rb +52 -0
  679. data/lib/fog/aws/requests/compute/detach_network_interface.rb +48 -0
  680. data/lib/fog/aws/requests/compute/detach_volume.rb +61 -0
  681. data/lib/fog/aws/requests/compute/disassociate_address.rb +55 -0
  682. data/lib/fog/aws/requests/compute/disassociate_route_table.rb +54 -0
  683. data/lib/fog/aws/requests/compute/get_console_output.rb +50 -0
  684. data/lib/fog/aws/requests/compute/get_password_data.rb +52 -0
  685. data/lib/fog/aws/requests/compute/import_key_pair.rb +52 -0
  686. data/lib/fog/aws/requests/compute/modify_image_attribute.rb +70 -0
  687. data/lib/fog/aws/requests/compute/modify_instance_attribute.rb +42 -0
  688. data/lib/fog/aws/requests/compute/modify_network_interface_attribute.rb +89 -0
  689. data/lib/fog/aws/requests/compute/modify_snapshot_attribute.rb +35 -0
  690. data/lib/fog/aws/requests/compute/modify_subnet_attribute.rb +58 -0
  691. data/lib/fog/aws/requests/compute/modify_volume_attribute.rb +48 -0
  692. data/lib/fog/aws/requests/compute/modify_vpc_attribute.rb +66 -0
  693. data/lib/fog/aws/requests/compute/monitor_instances.rb +48 -0
  694. data/lib/fog/aws/requests/compute/purchase_reserved_instances_offering.rb +62 -0
  695. data/lib/fog/aws/requests/compute/reboot_instances.rb +50 -0
  696. data/lib/fog/aws/requests/compute/register_image.rb +133 -0
  697. data/lib/fog/aws/requests/compute/release_address.rb +59 -0
  698. data/lib/fog/aws/requests/compute/replace_network_acl_association.rb +66 -0
  699. data/lib/fog/aws/requests/compute/replace_network_acl_entry.rb +81 -0
  700. data/lib/fog/aws/requests/compute/replace_route.rb +80 -0
  701. data/lib/fog/aws/requests/compute/request_spot_instances.rb +96 -0
  702. data/lib/fog/aws/requests/compute/reset_network_interface_attribute.rb +56 -0
  703. data/lib/fog/aws/requests/compute/revoke_security_group_ingress.rb +98 -0
  704. data/lib/fog/aws/requests/compute/run_instances.rb +274 -0
  705. data/lib/fog/aws/requests/compute/start_instances.rb +58 -0
  706. data/lib/fog/aws/requests/compute/stop_instances.rb +59 -0
  707. data/lib/fog/aws/requests/compute/terminate_instances.rb +92 -0
  708. data/lib/fog/aws/requests/compute/unmonitor_instances.rb +48 -0
  709. data/lib/fog/aws/requests/data_pipeline/activate_pipeline.rb +31 -0
  710. data/lib/fog/aws/requests/data_pipeline/create_pipeline.rb +39 -0
  711. data/lib/fog/aws/requests/data_pipeline/delete_pipeline.rb +30 -0
  712. data/lib/fog/aws/requests/data_pipeline/describe_objects.rb +38 -0
  713. data/lib/fog/aws/requests/data_pipeline/describe_pipelines.rb +32 -0
  714. data/lib/fog/aws/requests/data_pipeline/get_pipeline_definition.rb +33 -0
  715. data/lib/fog/aws/requests/data_pipeline/list_pipelines.rb +32 -0
  716. data/lib/fog/aws/requests/data_pipeline/put_pipeline_definition.rb +76 -0
  717. data/lib/fog/aws/requests/data_pipeline/query_objects.rb +38 -0
  718. data/lib/fog/aws/requests/dns/change_resource_record_sets.rb +243 -0
  719. data/lib/fog/aws/requests/dns/create_health_check.rb +64 -0
  720. data/lib/fog/aws/requests/dns/create_hosted_zone.rb +108 -0
  721. data/lib/fog/aws/requests/dns/delete_health_check.rb +24 -0
  722. data/lib/fog/aws/requests/dns/delete_hosted_zone.rb +66 -0
  723. data/lib/fog/aws/requests/dns/get_change.rb +59 -0
  724. data/lib/fog/aws/requests/dns/get_health_check.rb +41 -0
  725. data/lib/fog/aws/requests/dns/get_hosted_zone.rb +61 -0
  726. data/lib/fog/aws/requests/dns/list_health_checks.rb +36 -0
  727. data/lib/fog/aws/requests/dns/list_hosted_zones.rb +88 -0
  728. data/lib/fog/aws/requests/dns/list_resource_record_sets.rb +130 -0
  729. data/lib/fog/aws/requests/dynamodb/batch_get_item.rb +41 -0
  730. data/lib/fog/aws/requests/dynamodb/batch_write_item.rb +33 -0
  731. data/lib/fog/aws/requests/dynamodb/create_table.rb +53 -0
  732. data/lib/fog/aws/requests/dynamodb/delete_item.rb +43 -0
  733. data/lib/fog/aws/requests/dynamodb/delete_table.rb +40 -0
  734. data/lib/fog/aws/requests/dynamodb/describe_table.rb +42 -0
  735. data/lib/fog/aws/requests/dynamodb/get_item.rb +41 -0
  736. data/lib/fog/aws/requests/dynamodb/list_tables.rb +27 -0
  737. data/lib/fog/aws/requests/dynamodb/put_item.rb +39 -0
  738. data/lib/fog/aws/requests/dynamodb/query.rb +42 -0
  739. data/lib/fog/aws/requests/dynamodb/scan.rb +43 -0
  740. data/lib/fog/aws/requests/dynamodb/update_item.rb +47 -0
  741. data/lib/fog/aws/requests/dynamodb/update_table.rb +44 -0
  742. data/lib/fog/aws/requests/elasticache/authorize_cache_security_group_ingress.rb +57 -0
  743. data/lib/fog/aws/requests/elasticache/create_cache_cluster.rb +94 -0
  744. data/lib/fog/aws/requests/elasticache/create_cache_parameter_group.rb +52 -0
  745. data/lib/fog/aws/requests/elasticache/create_cache_security_group.rb +51 -0
  746. data/lib/fog/aws/requests/elasticache/create_cache_subnet_group.rb +60 -0
  747. data/lib/fog/aws/requests/elasticache/delete_cache_cluster.rb +38 -0
  748. data/lib/fog/aws/requests/elasticache/delete_cache_parameter_group.rb +40 -0
  749. data/lib/fog/aws/requests/elasticache/delete_cache_security_group.rb +39 -0
  750. data/lib/fog/aws/requests/elasticache/delete_cache_subnet_group.rb +39 -0
  751. data/lib/fog/aws/requests/elasticache/describe_cache_clusters.rb +51 -0
  752. data/lib/fog/aws/requests/elasticache/describe_cache_parameter_groups.rb +47 -0
  753. data/lib/fog/aws/requests/elasticache/describe_cache_parameters.rb +34 -0
  754. data/lib/fog/aws/requests/elasticache/describe_cache_security_groups.rb +64 -0
  755. data/lib/fog/aws/requests/elasticache/describe_cache_subnet_groups.rb +59 -0
  756. data/lib/fog/aws/requests/elasticache/describe_engine_default_parameters.rb +33 -0
  757. data/lib/fog/aws/requests/elasticache/describe_events.rb +47 -0
  758. data/lib/fog/aws/requests/elasticache/describe_reserved_cache_nodes.rb +38 -0
  759. data/lib/fog/aws/requests/elasticache/modify_cache_cluster.rb +99 -0
  760. data/lib/fog/aws/requests/elasticache/modify_cache_parameter_group.rb +43 -0
  761. data/lib/fog/aws/requests/elasticache/reboot_cache_cluster.rb +49 -0
  762. data/lib/fog/aws/requests/elasticache/reset_cache_parameter_group.rb +44 -0
  763. data/lib/fog/aws/requests/elasticache/revoke_cache_security_group_ingress.rb +35 -0
  764. data/lib/fog/aws/requests/elb/add_tags.rb +46 -0
  765. data/lib/fog/aws/requests/elb/apply_security_groups_to_load_balancer.rb +58 -0
  766. data/lib/fog/aws/requests/elb/attach_load_balancer_to_subnets.rb +58 -0
  767. data/lib/fog/aws/requests/elb/configure_health_check.rb +63 -0
  768. data/lib/fog/aws/requests/elb/create_app_cookie_stickiness_policy.rb +52 -0
  769. data/lib/fog/aws/requests/elb/create_lb_cookie_stickiness_policy.rb +54 -0
  770. data/lib/fog/aws/requests/elb/create_load_balancer.rb +206 -0
  771. data/lib/fog/aws/requests/elb/create_load_balancer_listeners.rb +86 -0
  772. data/lib/fog/aws/requests/elb/create_load_balancer_policy.rb +80 -0
  773. data/lib/fog/aws/requests/elb/delete_load_balancer.rb +49 -0
  774. data/lib/fog/aws/requests/elb/delete_load_balancer_listeners.rb +48 -0
  775. data/lib/fog/aws/requests/elb/delete_load_balancer_policy.rb +52 -0
  776. data/lib/fog/aws/requests/elb/deregister_instances_from_load_balancer.rb +61 -0
  777. data/lib/fog/aws/requests/elb/describe_instance_health.rb +70 -0
  778. data/lib/fog/aws/requests/elb/describe_load_balancer_attributes.rb +58 -0
  779. data/lib/fog/aws/requests/elb/describe_load_balancer_policies.rb +69 -0
  780. data/lib/fog/aws/requests/elb/describe_load_balancer_policy_types.rb +66 -0
  781. data/lib/fog/aws/requests/elb/describe_load_balancers.rb +137 -0
  782. data/lib/fog/aws/requests/elb/describe_tags.rb +56 -0
  783. data/lib/fog/aws/requests/elb/detach_load_balancer_from_subnets.rb +58 -0
  784. data/lib/fog/aws/requests/elb/disable_availability_zones_for_load_balancer.rb +57 -0
  785. data/lib/fog/aws/requests/elb/enable_availability_zones_for_load_balancer.rb +58 -0
  786. data/lib/fog/aws/requests/elb/modify_load_balancer_attributes.rb +65 -0
  787. data/lib/fog/aws/requests/elb/register_instances_with_load_balancer.rb +62 -0
  788. data/lib/fog/aws/requests/elb/remove_tags.rb +46 -0
  789. data/lib/fog/aws/requests/elb/set_load_balancer_listener_ssl_certificate.rb +65 -0
  790. data/lib/fog/aws/requests/elb/set_load_balancer_policies_for_backend_server.rb +66 -0
  791. data/lib/fog/aws/requests/elb/set_load_balancer_policies_of_listener.rb +78 -0
  792. data/lib/fog/aws/requests/emr/add_instance_groups.rb +42 -0
  793. data/lib/fog/aws/requests/emr/add_job_flow_steps.rb +45 -0
  794. data/lib/fog/aws/requests/emr/describe_job_flows.rb +104 -0
  795. data/lib/fog/aws/requests/emr/modify_instance_groups.rb +36 -0
  796. data/lib/fog/aws/requests/emr/run_job_flow.rb +104 -0
  797. data/lib/fog/aws/requests/emr/set_termination_protection.rb +35 -0
  798. data/lib/fog/aws/requests/emr/terminate_job_flows.rb +33 -0
  799. data/lib/fog/aws/requests/glacier/abort_multipart_upload.rb +33 -0
  800. data/lib/fog/aws/requests/glacier/complete_multipart_upload.rb +40 -0
  801. data/lib/fog/aws/requests/glacier/create_archive.rb +41 -0
  802. data/lib/fog/aws/requests/glacier/create_vault.rb +32 -0
  803. data/lib/fog/aws/requests/glacier/delete_archive.rb +33 -0
  804. data/lib/fog/aws/requests/glacier/delete_vault.rb +32 -0
  805. data/lib/fog/aws/requests/glacier/delete_vault_notification_configuration.rb +31 -0
  806. data/lib/fog/aws/requests/glacier/describe_job.rb +33 -0
  807. data/lib/fog/aws/requests/glacier/describe_vault.rb +32 -0
  808. data/lib/fog/aws/requests/glacier/get_job_output.rb +39 -0
  809. data/lib/fog/aws/requests/glacier/get_vault_notification_configuration.rb +32 -0
  810. data/lib/fog/aws/requests/glacier/initiate_job.rb +39 -0
  811. data/lib/fog/aws/requests/glacier/initiate_multipart_upload.rb +36 -0
  812. data/lib/fog/aws/requests/glacier/list_jobs.rb +36 -0
  813. data/lib/fog/aws/requests/glacier/list_multipart_uploads.rb +34 -0
  814. data/lib/fog/aws/requests/glacier/list_parts.rb +35 -0
  815. data/lib/fog/aws/requests/glacier/list_vaults.rb +34 -0
  816. data/lib/fog/aws/requests/glacier/set_vault_notification_configuration.rb +35 -0
  817. data/lib/fog/aws/requests/glacier/upload_part.rb +44 -0
  818. data/lib/fog/aws/requests/iam/add_role_to_instance_profile.rb +32 -0
  819. data/lib/fog/aws/requests/iam/add_user_to_group.rb +54 -0
  820. data/lib/fog/aws/requests/iam/create_access_key.rb +66 -0
  821. data/lib/fog/aws/requests/iam/create_account_alias.rb +17 -0
  822. data/lib/fog/aws/requests/iam/create_group.rb +56 -0
  823. data/lib/fog/aws/requests/iam/create_instance_profile.rb +45 -0
  824. data/lib/fog/aws/requests/iam/create_login_profile.rb +34 -0
  825. data/lib/fog/aws/requests/iam/create_role.rb +55 -0
  826. data/lib/fog/aws/requests/iam/create_user.rb +59 -0
  827. data/lib/fog/aws/requests/iam/delete_access_key.rb +47 -0
  828. data/lib/fog/aws/requests/iam/delete_account_alias.rb +17 -0
  829. data/lib/fog/aws/requests/iam/delete_account_password_policy.rb +36 -0
  830. data/lib/fog/aws/requests/iam/delete_group.rb +48 -0
  831. data/lib/fog/aws/requests/iam/delete_group_policy.rb +32 -0
  832. data/lib/fog/aws/requests/iam/delete_instance_profile.rb +30 -0
  833. data/lib/fog/aws/requests/iam/delete_login_profile.rb +29 -0
  834. data/lib/fog/aws/requests/iam/delete_role.rb +30 -0
  835. data/lib/fog/aws/requests/iam/delete_role_policy.rb +32 -0
  836. data/lib/fog/aws/requests/iam/delete_server_certificate.rb +46 -0
  837. data/lib/fog/aws/requests/iam/delete_signing_certificate.rb +31 -0
  838. data/lib/fog/aws/requests/iam/delete_user.rb +44 -0
  839. data/lib/fog/aws/requests/iam/delete_user_policy.rb +46 -0
  840. data/lib/fog/aws/requests/iam/get_account_password_policy.rb +36 -0
  841. data/lib/fog/aws/requests/iam/get_account_summary.rb +75 -0
  842. data/lib/fog/aws/requests/iam/get_group.rb +60 -0
  843. data/lib/fog/aws/requests/iam/get_group_policy.rb +51 -0
  844. data/lib/fog/aws/requests/iam/get_instance_profile.rb +40 -0
  845. data/lib/fog/aws/requests/iam/get_login_profile.rb +33 -0
  846. data/lib/fog/aws/requests/iam/get_role.rb +36 -0
  847. data/lib/fog/aws/requests/iam/get_role_policy.rb +34 -0
  848. data/lib/fog/aws/requests/iam/get_server_certificate.rb +45 -0
  849. data/lib/fog/aws/requests/iam/get_user.rb +55 -0
  850. data/lib/fog/aws/requests/iam/get_user_policy.rb +51 -0
  851. data/lib/fog/aws/requests/iam/list_access_keys.rb +62 -0
  852. data/lib/fog/aws/requests/iam/list_account_aliases.rb +16 -0
  853. data/lib/fog/aws/requests/iam/list_group_policies.rb +37 -0
  854. data/lib/fog/aws/requests/iam/list_groups.rb +57 -0
  855. data/lib/fog/aws/requests/iam/list_groups_for_user.rb +65 -0
  856. data/lib/fog/aws/requests/iam/list_instance_profiles.rb +48 -0
  857. data/lib/fog/aws/requests/iam/list_instance_profiles_for_role.rb +49 -0
  858. data/lib/fog/aws/requests/iam/list_mfa_devices.rb +55 -0
  859. data/lib/fog/aws/requests/iam/list_role_policies.rb +37 -0
  860. data/lib/fog/aws/requests/iam/list_roles.rb +41 -0
  861. data/lib/fog/aws/requests/iam/list_server_certificates.rb +54 -0
  862. data/lib/fog/aws/requests/iam/list_signing_certificates.rb +36 -0
  863. data/lib/fog/aws/requests/iam/list_user_policies.rb +53 -0
  864. data/lib/fog/aws/requests/iam/list_users.rb +58 -0
  865. data/lib/fog/aws/requests/iam/put_group_policy.rb +50 -0
  866. data/lib/fog/aws/requests/iam/put_role_policy.rb +34 -0
  867. data/lib/fog/aws/requests/iam/put_user_policy.rb +51 -0
  868. data/lib/fog/aws/requests/iam/remove_role_from_instance_profile.rb +33 -0
  869. data/lib/fog/aws/requests/iam/remove_user_from_group.rb +50 -0
  870. data/lib/fog/aws/requests/iam/update_access_key.rb +55 -0
  871. data/lib/fog/aws/requests/iam/update_account_password_policy.rb +56 -0
  872. data/lib/fog/aws/requests/iam/update_group.rb +37 -0
  873. data/lib/fog/aws/requests/iam/update_login_profile.rb +31 -0
  874. data/lib/fog/aws/requests/iam/update_server_certificate.rb +63 -0
  875. data/lib/fog/aws/requests/iam/update_signing_certificate.rb +31 -0
  876. data/lib/fog/aws/requests/iam/update_user.rb +37 -0
  877. data/lib/fog/aws/requests/iam/upload_server_certificate.rb +95 -0
  878. data/lib/fog/aws/requests/iam/upload_signing_certificate.rb +36 -0
  879. data/lib/fog/aws/requests/rds/add_tags_to_resource.rb +42 -0
  880. data/lib/fog/aws/requests/rds/authorize_db_security_group_ingress.rb +65 -0
  881. data/lib/fog/aws/requests/rds/create_db_instance.rb +132 -0
  882. data/lib/fog/aws/requests/rds/create_db_instance_read_replica.rb +77 -0
  883. data/lib/fog/aws/requests/rds/create_db_parameter_group.rb +53 -0
  884. data/lib/fog/aws/requests/rds/create_db_security_group.rb +49 -0
  885. data/lib/fog/aws/requests/rds/create_db_snapshot.rb +68 -0
  886. data/lib/fog/aws/requests/rds/create_db_subnet_group.rb +61 -0
  887. data/lib/fog/aws/requests/rds/create_event_subscription.rb +67 -0
  888. data/lib/fog/aws/requests/rds/delete_db_instance.rb +51 -0
  889. data/lib/fog/aws/requests/rds/delete_db_parameter_group.rb +41 -0
  890. data/lib/fog/aws/requests/rds/delete_db_security_group.rb +40 -0
  891. data/lib/fog/aws/requests/rds/delete_db_snapshot.rb +42 -0
  892. data/lib/fog/aws/requests/rds/delete_db_subnet_group.rb +38 -0
  893. data/lib/fog/aws/requests/rds/delete_event_subscription.rb +44 -0
  894. data/lib/fog/aws/requests/rds/describe_db_engine_versions.rb +30 -0
  895. data/lib/fog/aws/requests/rds/describe_db_instances.rb +89 -0
  896. data/lib/fog/aws/requests/rds/describe_db_log_files.rb +64 -0
  897. data/lib/fog/aws/requests/rds/describe_db_parameter_groups.rb +58 -0
  898. data/lib/fog/aws/requests/rds/describe_db_parameters.rb +42 -0
  899. data/lib/fog/aws/requests/rds/describe_db_reserved_instances.rb +38 -0
  900. data/lib/fog/aws/requests/rds/describe_db_security_groups.rb +80 -0
  901. data/lib/fog/aws/requests/rds/describe_db_snapshots.rb +66 -0
  902. data/lib/fog/aws/requests/rds/describe_db_subnet_groups.rb +59 -0
  903. data/lib/fog/aws/requests/rds/describe_event_subscriptions.rb +61 -0
  904. data/lib/fog/aws/requests/rds/describe_events.rb +50 -0
  905. data/lib/fog/aws/requests/rds/describe_orderable_db_instance_options.rb +72 -0
  906. data/lib/fog/aws/requests/rds/download_db_logfile_portion.rb +58 -0
  907. data/lib/fog/aws/requests/rds/list_tags_for_resource.rb +40 -0
  908. data/lib/fog/aws/requests/rds/modify_db_instance.rb +81 -0
  909. data/lib/fog/aws/requests/rds/modify_db_parameter_group.rb +50 -0
  910. data/lib/fog/aws/requests/rds/promote_read_replica.rb +59 -0
  911. data/lib/fog/aws/requests/rds/reboot_db_instance.rb +47 -0
  912. data/lib/fog/aws/requests/rds/remove_tags_from_resource.rb +40 -0
  913. data/lib/fog/aws/requests/rds/restore_db_instance_from_db_snapshot.rb +29 -0
  914. data/lib/fog/aws/requests/rds/restore_db_instance_to_point_in_time.rb +29 -0
  915. data/lib/fog/aws/requests/rds/revoke_db_security_group_ingress.rb +63 -0
  916. data/lib/fog/aws/requests/redshift/authorize_cluster_security_group_ingress.rb +54 -0
  917. data/lib/fog/aws/requests/redshift/authorize_snapshot_access.rb +42 -0
  918. data/lib/fog/aws/requests/redshift/copy_cluster_snapshot.rb +46 -0
  919. data/lib/fog/aws/requests/redshift/create_cluster.rb +148 -0
  920. data/lib/fog/aws/requests/redshift/create_cluster_parameter_group.rb +53 -0
  921. data/lib/fog/aws/requests/redshift/create_cluster_security_group.rb +41 -0
  922. data/lib/fog/aws/requests/redshift/create_cluster_snapshot.rb +43 -0
  923. data/lib/fog/aws/requests/redshift/create_cluster_subnet_group.rb +49 -0
  924. data/lib/fog/aws/requests/redshift/delete_cluster.rb +50 -0
  925. data/lib/fog/aws/requests/redshift/delete_cluster_parameter_group.rb +33 -0
  926. data/lib/fog/aws/requests/redshift/delete_cluster_security_group.rb +32 -0
  927. data/lib/fog/aws/requests/redshift/delete_cluster_snapshot.rb +43 -0
  928. data/lib/fog/aws/requests/redshift/delete_cluster_subnet_group.rb +36 -0
  929. data/lib/fog/aws/requests/redshift/describe_cluster_parameter_groups.rb +47 -0
  930. data/lib/fog/aws/requests/redshift/describe_cluster_parameters.rb +54 -0
  931. data/lib/fog/aws/requests/redshift/describe_cluster_security_groups.rb +49 -0
  932. data/lib/fog/aws/requests/redshift/describe_cluster_snapshots.rb +72 -0
  933. data/lib/fog/aws/requests/redshift/describe_cluster_subnet_groups.rb +46 -0
  934. data/lib/fog/aws/requests/redshift/describe_cluster_versions.rb +53 -0
  935. data/lib/fog/aws/requests/redshift/describe_clusters.rb +49 -0
  936. data/lib/fog/aws/requests/redshift/describe_default_cluster_parameters.rb +48 -0
  937. data/lib/fog/aws/requests/redshift/describe_events.rb +79 -0
  938. data/lib/fog/aws/requests/redshift/describe_orderable_cluster_options.rb +54 -0
  939. data/lib/fog/aws/requests/redshift/describe_reserved_node_offerings.rb +47 -0
  940. data/lib/fog/aws/requests/redshift/describe_reserved_nodes.rb +47 -0
  941. data/lib/fog/aws/requests/redshift/describe_resize.rb +38 -0
  942. data/lib/fog/aws/requests/redshift/modify_cluster.rb +109 -0
  943. data/lib/fog/aws/requests/redshift/modify_cluster_parameter_group.rb +44 -0
  944. data/lib/fog/aws/requests/redshift/modify_cluster_subnet_group.rb +49 -0
  945. data/lib/fog/aws/requests/redshift/purchase_reserved_node_offering.rb +39 -0
  946. data/lib/fog/aws/requests/redshift/reboot_cluster.rb +36 -0
  947. data/lib/fog/aws/requests/redshift/reset_cluster_parameter_group.rb +55 -0
  948. data/lib/fog/aws/requests/redshift/restore_from_cluster_snapshot.rb +76 -0
  949. data/lib/fog/aws/requests/redshift/revoke_cluster_security_group_ingress.rb +54 -0
  950. data/lib/fog/aws/requests/redshift/revoke_snapshot_access.rb +43 -0
  951. data/lib/fog/aws/requests/ses/delete_verified_email_address.rb +26 -0
  952. data/lib/fog/aws/requests/ses/get_send_quota.rb +29 -0
  953. data/lib/fog/aws/requests/ses/get_send_statistics.rb +32 -0
  954. data/lib/fog/aws/requests/ses/list_verified_email_addresses.rb +26 -0
  955. data/lib/fog/aws/requests/ses/send_email.rb +71 -0
  956. data/lib/fog/aws/requests/ses/send_raw_email.rb +39 -0
  957. data/lib/fog/aws/requests/ses/verify_domain_identity.rb +28 -0
  958. data/lib/fog/aws/requests/ses/verify_email_address.rb +26 -0
  959. data/lib/fog/aws/requests/simpledb/batch_put_attributes.rb +60 -0
  960. data/lib/fog/aws/requests/simpledb/create_domain.rb +40 -0
  961. data/lib/fog/aws/requests/simpledb/delete_attributes.rb +69 -0
  962. data/lib/fog/aws/requests/simpledb/delete_domain.rb +41 -0
  963. data/lib/fog/aws/requests/simpledb/domain_metadata.rb +72 -0
  964. data/lib/fog/aws/requests/simpledb/get_attributes.rb +80 -0
  965. data/lib/fog/aws/requests/simpledb/list_domains.rb +55 -0
  966. data/lib/fog/aws/requests/simpledb/put_attributes.rb +74 -0
  967. data/lib/fog/aws/requests/simpledb/select.rb +41 -0
  968. data/lib/fog/aws/requests/sns/add_permission.rb +22 -0
  969. data/lib/fog/aws/requests/sns/confirm_subscription.rb +30 -0
  970. data/lib/fog/aws/requests/sns/create_topic.rb +47 -0
  971. data/lib/fog/aws/requests/sns/delete_topic.rb +36 -0
  972. data/lib/fog/aws/requests/sns/get_topic_attributes.rb +36 -0
  973. data/lib/fog/aws/requests/sns/list_subscriptions.rb +35 -0
  974. data/lib/fog/aws/requests/sns/list_subscriptions_by_topic.rb +39 -0
  975. data/lib/fog/aws/requests/sns/list_topics.rb +35 -0
  976. data/lib/fog/aws/requests/sns/publish.rb +31 -0
  977. data/lib/fog/aws/requests/sns/remove_permission.rb +22 -0
  978. data/lib/fog/aws/requests/sns/set_topic_attributes.rb +45 -0
  979. data/lib/fog/aws/requests/sns/subscribe.rb +60 -0
  980. data/lib/fog/aws/requests/sns/unsubscribe.rb +26 -0
  981. data/lib/fog/aws/requests/sqs/change_message_visibility.rb +58 -0
  982. data/lib/fog/aws/requests/sqs/create_queue.rb +62 -0
  983. data/lib/fog/aws/requests/sqs/delete_message.rb +56 -0
  984. data/lib/fog/aws/requests/sqs/delete_queue.rb +47 -0
  985. data/lib/fog/aws/requests/sqs/get_queue_attributes.rb +48 -0
  986. data/lib/fog/aws/requests/sqs/list_queues.rb +41 -0
  987. data/lib/fog/aws/requests/sqs/receive_message.rb +83 -0
  988. data/lib/fog/aws/requests/sqs/send_message.rb +65 -0
  989. data/lib/fog/aws/requests/sqs/set_queue_attributes.rb +49 -0
  990. data/lib/fog/aws/requests/storage/abort_multipart_upload.rb +45 -0
  991. data/lib/fog/aws/requests/storage/acl_utils.rb +60 -0
  992. data/lib/fog/aws/requests/storage/complete_multipart_upload.rb +73 -0
  993. data/lib/fog/aws/requests/storage/copy_object.rb +77 -0
  994. data/lib/fog/aws/requests/storage/cors_utils.rb +39 -0
  995. data/lib/fog/aws/requests/storage/delete_bucket.rb +42 -0
  996. data/lib/fog/aws/requests/storage/delete_bucket_cors.rb +26 -0
  997. data/lib/fog/aws/requests/storage/delete_bucket_lifecycle.rb +26 -0
  998. data/lib/fog/aws/requests/storage/delete_bucket_policy.rb +26 -0
  999. data/lib/fog/aws/requests/storage/delete_bucket_tagging.rb +41 -0
  1000. data/lib/fog/aws/requests/storage/delete_bucket_website.rb +26 -0
  1001. data/lib/fog/aws/requests/storage/delete_multiple_objects.rb +164 -0
  1002. data/lib/fog/aws/requests/storage/delete_object.rb +115 -0
  1003. data/lib/fog/aws/requests/storage/get_bucket.rb +108 -0
  1004. data/lib/fog/aws/requests/storage/get_bucket_acl.rb +65 -0
  1005. data/lib/fog/aws/requests/storage/get_bucket_cors.rb +61 -0
  1006. data/lib/fog/aws/requests/storage/get_bucket_lifecycle.rb +35 -0
  1007. data/lib/fog/aws/requests/storage/get_bucket_location.rb +55 -0
  1008. data/lib/fog/aws/requests/storage/get_bucket_logging.rb +45 -0
  1009. data/lib/fog/aws/requests/storage/get_bucket_notification.rb +60 -0
  1010. data/lib/fog/aws/requests/storage/get_bucket_object_versions.rb +160 -0
  1011. data/lib/fog/aws/requests/storage/get_bucket_policy.rb +31 -0
  1012. data/lib/fog/aws/requests/storage/get_bucket_tagging.rb +49 -0
  1013. data/lib/fog/aws/requests/storage/get_bucket_versioning.rb +68 -0
  1014. data/lib/fog/aws/requests/storage/get_bucket_website.rb +38 -0
  1015. data/lib/fog/aws/requests/storage/get_object.rb +189 -0
  1016. data/lib/fog/aws/requests/storage/get_object_acl.rb +76 -0
  1017. data/lib/fog/aws/requests/storage/get_object_http_url.rb +30 -0
  1018. data/lib/fog/aws/requests/storage/get_object_https_url.rb +30 -0
  1019. data/lib/fog/aws/requests/storage/get_object_torrent.rb +45 -0
  1020. data/lib/fog/aws/requests/storage/get_object_url.rb +40 -0
  1021. data/lib/fog/aws/requests/storage/get_request_payment.rb +45 -0
  1022. data/lib/fog/aws/requests/storage/get_service.rb +50 -0
  1023. data/lib/fog/aws/requests/storage/head_bucket.rb +38 -0
  1024. data/lib/fog/aws/requests/storage/head_object.rb +62 -0
  1025. data/lib/fog/aws/requests/storage/initiate_multipart_upload.rb +66 -0
  1026. data/lib/fog/aws/requests/storage/list_multipart_uploads.rb +52 -0
  1027. data/lib/fog/aws/requests/storage/list_parts.rb +53 -0
  1028. data/lib/fog/aws/requests/storage/post_object_hidden_fields.rb +54 -0
  1029. data/lib/fog/aws/requests/storage/post_object_restore.rb +50 -0
  1030. data/lib/fog/aws/requests/storage/put_bucket.rb +73 -0
  1031. data/lib/fog/aws/requests/storage/put_bucket_acl.rb +69 -0
  1032. data/lib/fog/aws/requests/storage/put_bucket_cors.rb +47 -0
  1033. data/lib/fog/aws/requests/storage/put_bucket_lifecycle.rb +76 -0
  1034. data/lib/fog/aws/requests/storage/put_bucket_logging.rb +80 -0
  1035. data/lib/fog/aws/requests/storage/put_bucket_notification.rb +83 -0
  1036. data/lib/fog/aws/requests/storage/put_bucket_policy.rb +25 -0
  1037. data/lib/fog/aws/requests/storage/put_bucket_tagging.rb +55 -0
  1038. data/lib/fog/aws/requests/storage/put_bucket_versioning.rb +74 -0
  1039. data/lib/fog/aws/requests/storage/put_bucket_website.rb +87 -0
  1040. data/lib/fog/aws/requests/storage/put_object.rb +87 -0
  1041. data/lib/fog/aws/requests/storage/put_object_acl.rb +78 -0
  1042. data/lib/fog/aws/requests/storage/put_object_url.rb +41 -0
  1043. data/lib/fog/aws/requests/storage/put_request_payment.rb +45 -0
  1044. data/lib/fog/aws/requests/storage/shared_mock_methods.rb +87 -0
  1045. data/lib/fog/aws/requests/storage/sync_clock.rb +24 -0
  1046. data/lib/fog/aws/requests/storage/upload_part.rb +57 -0
  1047. data/lib/fog/aws/requests/sts/assume_role.rb +44 -0
  1048. data/lib/fog/aws/requests/sts/assume_role_with_saml.rb +44 -0
  1049. data/lib/fog/aws/requests/sts/get_federation_token.rb +62 -0
  1050. data/lib/fog/aws/requests/sts/get_session_token.rb +18 -0
  1051. data/lib/fog/aws/ses.rb +141 -0
  1052. data/lib/fog/aws/signaturev4.rb +119 -0
  1053. data/lib/fog/aws/simpledb.rb +211 -0
  1054. data/lib/fog/aws/sns.rb +156 -0
  1055. data/lib/fog/aws/sqs.rb +164 -0
  1056. data/lib/fog/aws/storage.rb +690 -0
  1057. data/lib/fog/aws/sts.rb +185 -0
  1058. data/lib/fog/aws/version.rb +5 -0
  1059. data/tests/credentials_tests.rb +55 -0
  1060. data/tests/helper.rb +28 -0
  1061. data/tests/helpers/collection_helper.rb +97 -0
  1062. data/tests/helpers/compute/flavors_helper.rb +32 -0
  1063. data/tests/helpers/compute/server_helper.rb +25 -0
  1064. data/tests/helpers/compute/servers_helper.rb +10 -0
  1065. data/tests/helpers/dns_helper.rb +55 -0
  1066. data/tests/helpers/formats_helper.rb +98 -0
  1067. data/tests/helpers/formats_helper_tests.rb +110 -0
  1068. data/tests/helpers/mock_helper.rb +110 -0
  1069. data/tests/helpers/model_helper.rb +31 -0
  1070. data/tests/helpers/responds_to_helper.rb +11 -0
  1071. data/tests/helpers/schema_validator_tests.rb +107 -0
  1072. data/tests/helpers/succeeds_helper.rb +9 -0
  1073. data/tests/lorem.txt +1 -0
  1074. data/tests/models/auto_scaling/activities_tests.rb +6 -0
  1075. data/tests/models/auto_scaling/configuration_test.rb +13 -0
  1076. data/tests/models/auto_scaling/configurations_tests.rb +11 -0
  1077. data/tests/models/auto_scaling/groups_test.rb +27 -0
  1078. data/tests/models/auto_scaling/helper.rb +0 -0
  1079. data/tests/models/auto_scaling/instance_tests.rb +15 -0
  1080. data/tests/models/auto_scaling/instances_tests.rb +6 -0
  1081. data/tests/models/beanstalk/application_tests.rb +69 -0
  1082. data/tests/models/beanstalk/applications_tests.rb +7 -0
  1083. data/tests/models/beanstalk/environment_tests.rb +131 -0
  1084. data/tests/models/beanstalk/environments_tests.rb +34 -0
  1085. data/tests/models/beanstalk/template_tests.rb +47 -0
  1086. data/tests/models/beanstalk/templates_tests.rb +62 -0
  1087. data/tests/models/beanstalk/version_tests.rb +66 -0
  1088. data/tests/models/beanstalk/versions_tests.rb +60 -0
  1089. data/tests/models/cdn/distribution_tests.rb +15 -0
  1090. data/tests/models/cdn/distributions_tests.rb +15 -0
  1091. data/tests/models/cdn/invalidation_tests.rb +31 -0
  1092. data/tests/models/cdn/invalidations_tests.rb +14 -0
  1093. data/tests/models/cdn/streaming_distribution_tests.rb +15 -0
  1094. data/tests/models/cdn/streaming_distributions_tests.rb +15 -0
  1095. data/tests/models/cloud_watch/alarm_data_tests.rb +42 -0
  1096. data/tests/models/cloud_watch/alarm_history_tests.rb +22 -0
  1097. data/tests/models/cloud_watch/metric_statistics_tests.rb +51 -0
  1098. data/tests/models/cloud_watch/metrics_tests.rb +32 -0
  1099. data/tests/models/compute/address_tests.rb +24 -0
  1100. data/tests/models/compute/addresses_tests.rb +5 -0
  1101. data/tests/models/compute/dhcp_option_tests.rb +3 -0
  1102. data/tests/models/compute/dhcp_options_tests.rb +3 -0
  1103. data/tests/models/compute/internet_gateway_tests.rb +3 -0
  1104. data/tests/models/compute/internet_gateways_tests.rb +3 -0
  1105. data/tests/models/compute/key_pair_tests.rb +26 -0
  1106. data/tests/models/compute/key_pairs_tests.rb +5 -0
  1107. data/tests/models/compute/network_acl_tests.rb +109 -0
  1108. data/tests/models/compute/network_acls_tests.rb +20 -0
  1109. data/tests/models/compute/network_interfaces_test.rb +12 -0
  1110. data/tests/models/compute/security_group_tests.rb +64 -0
  1111. data/tests/models/compute/security_groups_tests.rb +5 -0
  1112. data/tests/models/compute/server_tests.rb +83 -0
  1113. data/tests/models/compute/snapshot_tests.rb +10 -0
  1114. data/tests/models/compute/snapshots_tests.rb +10 -0
  1115. data/tests/models/compute/subnet_tests.rb +5 -0
  1116. data/tests/models/compute/subnets_tests.rb +5 -0
  1117. data/tests/models/compute/volume_tests.rb +43 -0
  1118. data/tests/models/compute/volumes_tests.rb +5 -0
  1119. data/tests/models/compute/vpc_tests.rb +4 -0
  1120. data/tests/models/compute/vpcs_tests.rb +19 -0
  1121. data/tests/models/data_pipeline/pipeline_tests.rb +8 -0
  1122. data/tests/models/data_pipeline/pipelines_tests.rb +8 -0
  1123. data/tests/models/dns/record_tests.rb +33 -0
  1124. data/tests/models/dns/records_tests.rb +41 -0
  1125. data/tests/models/dns/zone_tests.rb +4 -0
  1126. data/tests/models/dns/zones_tests.rb +4 -0
  1127. data/tests/models/elasticache/cluster_tests.rb +30 -0
  1128. data/tests/models/elasticache/parameter_groups_tests.rb +15 -0
  1129. data/tests/models/elasticache/security_groups_tests.rb +52 -0
  1130. data/tests/models/elasticache/subnet_groups_tests.rb +44 -0
  1131. data/tests/models/elb/model_tests.rb +360 -0
  1132. data/tests/models/elb/tagging_tests.rb +15 -0
  1133. data/tests/models/glacier/model_tests.rb +47 -0
  1134. data/tests/models/iam/access_keys_tests.rb +53 -0
  1135. data/tests/models/iam/policies_tests.rb +57 -0
  1136. data/tests/models/iam/roles_tests.rb +63 -0
  1137. data/tests/models/iam/users_tests.rb +71 -0
  1138. data/tests/models/rds/event_subscription_tests.rb +9 -0
  1139. data/tests/models/rds/event_subscriptions_tests.rb +6 -0
  1140. data/tests/models/rds/helper.rb +5 -0
  1141. data/tests/models/rds/instance_option_tests.rb +14 -0
  1142. data/tests/models/rds/parameter_group_tests.rb +24 -0
  1143. data/tests/models/rds/parameter_groups_tests.rb +8 -0
  1144. data/tests/models/rds/security_group_tests.rb +53 -0
  1145. data/tests/models/rds/security_groups_tests.rb +5 -0
  1146. data/tests/models/rds/server_tests.rb +110 -0
  1147. data/tests/models/rds/servers_tests.rb +6 -0
  1148. data/tests/models/rds/snapshot_tests.rb +12 -0
  1149. data/tests/models/rds/snapshots_tests.rb +12 -0
  1150. data/tests/models/rds/tagging_tests.rb +20 -0
  1151. data/tests/models/sns/topic_tests.rb +15 -0
  1152. data/tests/models/sns/topics_tests.rb +6 -0
  1153. data/tests/models/storage/directory_tests.rb +87 -0
  1154. data/tests/models/storage/file_tests.rb +92 -0
  1155. data/tests/models/storage/files_tests.rb +58 -0
  1156. data/tests/models/storage/url_tests.rb +26 -0
  1157. data/tests/models/storage/version_tests.rb +52 -0
  1158. data/tests/models/storage/versions_tests.rb +56 -0
  1159. data/tests/parsers/elb/describe_load_balancers.rb +65 -0
  1160. data/tests/requests/auto_scaling/auto_scaling_tests.rb +77 -0
  1161. data/tests/requests/auto_scaling/describe_types_tests.rb +102 -0
  1162. data/tests/requests/auto_scaling/helper.rb +228 -0
  1163. data/tests/requests/auto_scaling/model_tests.rb +233 -0
  1164. data/tests/requests/auto_scaling/notification_configuration_tests.rb +124 -0
  1165. data/tests/requests/auto_scaling/tag_tests.rb +63 -0
  1166. data/tests/requests/beanstalk/application_tests.rb +140 -0
  1167. data/tests/requests/beanstalk/solution_stack_tests.rb +22 -0
  1168. data/tests/requests/cdn/cdn_tests.rb +252 -0
  1169. data/tests/requests/cloud_formation/stack_tests.rb +167 -0
  1170. data/tests/requests/cloud_watch/get_metric_statistics_tests.rb +28 -0
  1171. data/tests/requests/cloud_watch/list_metrics_test.rb +64 -0
  1172. data/tests/requests/cloud_watch/put_metric_data_tests.rb +36 -0
  1173. data/tests/requests/compute/address_tests.rb +108 -0
  1174. data/tests/requests/compute/assign_private_ip_tests.rb +55 -0
  1175. data/tests/requests/compute/availability_zone_tests.rb +25 -0
  1176. data/tests/requests/compute/client_tests.rb +25 -0
  1177. data/tests/requests/compute/dhcp_options_tests.rb +39 -0
  1178. data/tests/requests/compute/helper.rb +10 -0
  1179. data/tests/requests/compute/image_tests.rb +158 -0
  1180. data/tests/requests/compute/instance_tests.rb +297 -0
  1181. data/tests/requests/compute/internet_gateway_tests.rb +49 -0
  1182. data/tests/requests/compute/key_pair_tests.rb +67 -0
  1183. data/tests/requests/compute/network_acl_tests.rb +112 -0
  1184. data/tests/requests/compute/network_interface_tests.rb +250 -0
  1185. data/tests/requests/compute/placement_group_tests.rb +48 -0
  1186. data/tests/requests/compute/region_tests.rb +52 -0
  1187. data/tests/requests/compute/route_tests.rb +339 -0
  1188. data/tests/requests/compute/security_group_tests.rb +437 -0
  1189. data/tests/requests/compute/snapshot_tests.rb +77 -0
  1190. data/tests/requests/compute/spot_datafeed_subscription_tests.rb +47 -0
  1191. data/tests/requests/compute/spot_instance_tests.rb +57 -0
  1192. data/tests/requests/compute/spot_price_history_tests.rb +24 -0
  1193. data/tests/requests/compute/subnet_tests.rb +85 -0
  1194. data/tests/requests/compute/tag_tests.rb +101 -0
  1195. data/tests/requests/compute/volume_tests.rb +206 -0
  1196. data/tests/requests/compute/vpc_tests.rb +111 -0
  1197. data/tests/requests/data_pipeline/helper.rb +72 -0
  1198. data/tests/requests/data_pipeline/pipeline_tests.rb +78 -0
  1199. data/tests/requests/dns/dns_tests.rb +257 -0
  1200. data/tests/requests/dns/health_check_tests.rb +159 -0
  1201. data/tests/requests/dns/helper.rb +21 -0
  1202. data/tests/requests/dynamodb/item_tests.rb +137 -0
  1203. data/tests/requests/dynamodb/table_tests.rb +99 -0
  1204. data/tests/requests/elasticache/cache_cluster_tests.rb +137 -0
  1205. data/tests/requests/elasticache/describe_events.rb +17 -0
  1206. data/tests/requests/elasticache/describe_reserved_cache_nodes.rb +17 -0
  1207. data/tests/requests/elasticache/helper.rb +103 -0
  1208. data/tests/requests/elasticache/parameter_group_tests.rb +105 -0
  1209. data/tests/requests/elasticache/security_group_tests.rb +108 -0
  1210. data/tests/requests/elasticache/subnet_group_tests.rb +52 -0
  1211. data/tests/requests/elb/helper.rb +91 -0
  1212. data/tests/requests/elb/listener_tests.rb +68 -0
  1213. data/tests/requests/elb/load_balancer_tests.rb +89 -0
  1214. data/tests/requests/elb/policy_tests.rb +132 -0
  1215. data/tests/requests/emr/helper.rb +168 -0
  1216. data/tests/requests/emr/instance_group_tests.rb +106 -0
  1217. data/tests/requests/emr/job_flow_tests.rb +88 -0
  1218. data/tests/requests/glacier/archive_tests.rb +13 -0
  1219. data/tests/requests/glacier/multipart_upload_tests.rb +29 -0
  1220. data/tests/requests/glacier/tree_hash_tests.rb +62 -0
  1221. data/tests/requests/glacier/vault_tests.rb +35 -0
  1222. data/tests/requests/iam/access_key_tests.rb +53 -0
  1223. data/tests/requests/iam/account_policy_tests.rb +20 -0
  1224. data/tests/requests/iam/account_tests.rb +34 -0
  1225. data/tests/requests/iam/group_policy_tests.rb +48 -0
  1226. data/tests/requests/iam/group_tests.rb +44 -0
  1227. data/tests/requests/iam/helper.rb +102 -0
  1228. data/tests/requests/iam/login_profile_tests.rb +62 -0
  1229. data/tests/requests/iam/mfa_tests.rb +23 -0
  1230. data/tests/requests/iam/role_tests.rb +167 -0
  1231. data/tests/requests/iam/server_certificate_tests.rb +130 -0
  1232. data/tests/requests/iam/user_policy_tests.rb +45 -0
  1233. data/tests/requests/iam/user_tests.rb +77 -0
  1234. data/tests/requests/rds/describe_events.rb +16 -0
  1235. data/tests/requests/rds/event_subscription_tests.rb +30 -0
  1236. data/tests/requests/rds/helper.rb +296 -0
  1237. data/tests/requests/rds/instance_option_tests.rb +21 -0
  1238. data/tests/requests/rds/instance_tests.rb +133 -0
  1239. data/tests/requests/rds/log_file_tests.rb +19 -0
  1240. data/tests/requests/rds/parameter_group_tests.rb +62 -0
  1241. data/tests/requests/rds/parameter_request_tests.rb +34 -0
  1242. data/tests/requests/rds/security_group_tests.rb +101 -0
  1243. data/tests/requests/rds/subnet_groups_tests.rb +52 -0
  1244. data/tests/requests/rds/tagging_tests.rb +78 -0
  1245. data/tests/requests/redshift/cluster_parameter_group_tests.rb +76 -0
  1246. data/tests/requests/redshift/cluster_security_group_tests.rb +42 -0
  1247. data/tests/requests/redshift/cluster_snapshot_tests.rb +73 -0
  1248. data/tests/requests/redshift/cluster_tests.rb +80 -0
  1249. data/tests/requests/ses/helper.rb +9 -0
  1250. data/tests/requests/ses/verified_domain_identity_tests.rb +16 -0
  1251. data/tests/requests/ses/verified_email_address_tests.rb +27 -0
  1252. data/tests/requests/simpledb/attributes_tests.rb +86 -0
  1253. data/tests/requests/simpledb/domain_tests.rb +51 -0
  1254. data/tests/requests/simpledb/helper.rb +10 -0
  1255. data/tests/requests/sns/helper.rb +9 -0
  1256. data/tests/requests/sns/subscription_tests.rb +86 -0
  1257. data/tests/requests/sns/topic_tests.rb +45 -0
  1258. data/tests/requests/sqs/helper.rb +9 -0
  1259. data/tests/requests/sqs/message_tests.rb +51 -0
  1260. data/tests/requests/sqs/queue_tests.rb +50 -0
  1261. data/tests/requests/storage/acl_utils_tests.rb +209 -0
  1262. data/tests/requests/storage/bucket_tests.rb +399 -0
  1263. data/tests/requests/storage/cors_utils_tests.rb +108 -0
  1264. data/tests/requests/storage/delete_multiple_objects_tests.rb +12 -0
  1265. data/tests/requests/storage/multipart_upload_tests.rb +121 -0
  1266. data/tests/requests/storage/object_tests.rb +189 -0
  1267. data/tests/requests/storage/versioning_tests.rb +258 -0
  1268. data/tests/requests/sts/assume_role_tests.rb +19 -0
  1269. data/tests/requests/sts/assume_role_with_saml_tests.rb +18 -0
  1270. data/tests/requests/sts/get_federation_token_tests.rb +20 -0
  1271. data/tests/requests/sts/session_token_tests.rb +16 -0
  1272. data/tests/signaturev4_tests.rb +88 -0
  1273. data/tests/signed_params_tests.rb +17 -0
  1274. data/tests/storage_tests.rb +7 -0
  1275. metadata +1420 -0
@@ -0,0 +1,18 @@
1
+ module Fog
2
+ module AWS
3
+ class STS
4
+ class Real
5
+ require 'fog/aws/parsers/sts/get_session_token'
6
+
7
+ def get_session_token(duration=43200)
8
+ request({
9
+ 'Action' => 'GetSessionToken',
10
+ 'DurationSeconds' => duration,
11
+ :idempotent => true,
12
+ :parser => Fog::Parsers::AWS::STS::GetSessionToken.new
13
+ })
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,141 @@
1
+ require 'fog/aws/core'
2
+
3
+ module Fog
4
+ module AWS
5
+ class SES < Fog::Service
6
+ extend Fog::AWS::CredentialFetcher::ServiceMethods
7
+
8
+ class InvalidParameterError < Fog::Errors::Error; end
9
+ class MessageRejected < Fog::Errors::Error; end
10
+
11
+ requires :aws_access_key_id, :aws_secret_access_key
12
+ recognizes :region, :host, :path, :port, :scheme, :persistent, :use_iam_profile, :aws_session_token, :aws_credentials_expire_at, :instrumentor, :instrumentor_name
13
+
14
+ request_path 'fog/aws/requests/ses'
15
+ request :delete_verified_email_address
16
+ request :verify_email_address
17
+ request :verify_domain_identity
18
+ request :get_send_quota
19
+ request :get_send_statistics
20
+ request :list_verified_email_addresses
21
+ request :send_email
22
+ request :send_raw_email
23
+
24
+ class Mock
25
+ def initialize(options={})
26
+ Fog::Mock.not_implemented
27
+ end
28
+ end
29
+
30
+ class Real
31
+ include Fog::AWS::CredentialFetcher::ConnectionMethods
32
+ # Initialize connection to SES
33
+ #
34
+ # ==== Notes
35
+ # options parameter must include values for :aws_access_key_id and
36
+ # :aws_secret_access_key in order to create a connection
37
+ #
38
+ # ==== Examples
39
+ # ses = SES.new(
40
+ # :aws_access_key_id => your_aws_access_key_id,
41
+ # :aws_secret_access_key => your_aws_secret_access_key
42
+ # )
43
+ #
44
+ # ==== Parameters
45
+ # * options<~Hash> - config arguments for connection. Defaults to {}.
46
+ # * region<~String> - optional region to use. For instance, 'us-east-1' and etc.
47
+ #
48
+ # ==== Returns
49
+ # * SES object with connection to AWS.
50
+ def initialize(options={})
51
+
52
+ @use_iam_profile = options[:use_iam_profile]
53
+ setup_credentials(options)
54
+
55
+ @instrumentor = options[:instrumentor]
56
+ @instrumentor_name = options[:instrumentor_name] || 'fog.aws.ses'
57
+ @connection_options = options[:connection_options] || {}
58
+ options[:region] ||= 'us-east-1'
59
+ @host = options[:host] || "email.#{options[:region]}.amazonaws.com"
60
+ @path = options[:path] || '/'
61
+ @persistent = options[:persistent] || false
62
+ @port = options[:port] || 443
63
+ @scheme = options[:scheme] || 'https'
64
+ @connection = Fog::XML::Connection.new("#{@scheme}://#{@host}:#{@port}#{@path}", @persistent, @connection_options)
65
+ end
66
+
67
+ def reload
68
+ @connection.reset
69
+ end
70
+
71
+ private
72
+
73
+ def setup_credentials(options)
74
+ @aws_access_key_id = options[:aws_access_key_id]
75
+ @aws_secret_access_key = options[:aws_secret_access_key]
76
+ @aws_session_token = options[:aws_session_token]
77
+ @aws_credentials_expire_at = options[:aws_credentials_expire_at]
78
+
79
+ @hmac = Fog::HMAC.new('sha256', @aws_secret_access_key)
80
+ end
81
+
82
+ def request(params)
83
+ refresh_credentials_if_expired
84
+
85
+ idempotent = params.delete(:idempotent)
86
+ parser = params.delete(:parser)
87
+
88
+ headers = {
89
+ 'Content-Type' => 'application/x-www-form-urlencoded',
90
+ 'Date' => Fog::Time.now.to_date_header,
91
+ }
92
+ headers['x-amz-security-token'] = @aws_session_token if @aws_session_token
93
+ #AWS3-HTTPS AWSAccessKeyId=<Your AWS Access Key ID>, Algorithm=HmacSHA256, Signature=<Signature>
94
+ headers['X-Amzn-Authorization'] = 'AWS3-HTTPS '
95
+ headers['X-Amzn-Authorization'] << 'AWSAccessKeyId=' << @aws_access_key_id
96
+ headers['X-Amzn-Authorization'] << ', Algorithm=HmacSHA256'
97
+ headers['X-Amzn-Authorization'] << ', Signature=' << Base64.encode64(@hmac.sign(headers['Date'])).chomp!
98
+
99
+ body = ''
100
+ for key in params.keys.sort
101
+ unless (value = params[key]).nil?
102
+ body << "#{key}=#{CGI.escape(value.to_s).gsub(/\+/, '%20')}&"
103
+ end
104
+ end
105
+ body.chop! # remove trailing '&'
106
+
107
+ if @instrumentor
108
+ @instrumentor.instrument("#{@instrumentor_name}.request", params) do
109
+ _request(body, headers, idempotent, parser)
110
+ end
111
+ else
112
+ _request(body, headers, idempotent, parser)
113
+ end
114
+ end
115
+
116
+ def _request(body, headers, idempotent, parser)
117
+ @connection.request({
118
+ :body => body,
119
+ :expects => 200,
120
+ :headers => headers,
121
+ :idempotent => idempotent,
122
+ :host => @host,
123
+ :method => 'POST',
124
+ :parser => parser
125
+ })
126
+ rescue Excon::Errors::HTTPStatusError => error
127
+ match = Fog::AWS::Errors.match_error(error)
128
+ raise if match.empty?
129
+ raise case match[:code]
130
+ when 'MessageRejected'
131
+ Fog::AWS::SES::MessageRejected.slurp(error, match[:message])
132
+ when 'InvalidParameterValue'
133
+ Fog::AWS::SES::InvalidParameterError.slurp(error, match[:message])
134
+ else
135
+ Fog::AWS::SES::Error.slurp(error, "#{match[:code]} => #{match[:message]}")
136
+ end
137
+ end
138
+ end
139
+ end
140
+ end
141
+ end
@@ -0,0 +1,119 @@
1
+ require 'fog/aws/core'
2
+
3
+ # See http://docs.amazonwebservices.com/general/latest/gr/signature-version-4.html
4
+ module Fog
5
+ module AWS
6
+ class SignatureV4
7
+ ALGORITHM = 'AWS4-HMAC-SHA256'
8
+ def initialize(aws_access_key_id, secret_key, region, service)
9
+ @region = region
10
+ @service = service
11
+ @aws_access_key_id = aws_access_key_id
12
+ @hmac = Fog::HMAC.new('sha256', 'AWS4' + secret_key)
13
+ end
14
+
15
+ def signature_parameters(params, date, body_sha = nil)
16
+ params = params.dup.merge(:query => params[:query].merge(
17
+ 'X-Amz-Algorithm' => ALGORITHM,
18
+ 'X-Amz-Credential' => "#{@aws_access_key_id}/#{credential_scope(date)}",
19
+ 'X-Amz-SignedHeaders' => signed_headers(params[:headers])
20
+ ))
21
+ signature_components(params, date, body_sha)
22
+ end
23
+
24
+ def signature_header(params, date, body_sha = nil)
25
+ components_to_header(signature_components(params, date, body_sha))
26
+ end
27
+
28
+ def sign(params, date) #legacy method name
29
+ signature_header(params, date)
30
+ end
31
+
32
+ def components_to_header components
33
+ "#{components['X-Amz-Algorithm']} Credential=#{components['X-Amz-Credential']}, SignedHeaders=#{components['X-Amz-SignedHeaders']}, Signature=#{components['X-Amz-Signature']}"
34
+ end
35
+
36
+ def signature_components(params, date, body_sha)
37
+ canonical_request = <<-DATA
38
+ #{params[:method].to_s.upcase}
39
+ #{canonical_path(params[:path])}
40
+ #{canonical_query_string(params[:query])}
41
+ #{canonical_headers(params[:headers])}
42
+ #{signed_headers(params[:headers])}
43
+ #{body_sha || Digest::SHA256.hexdigest(params[:body] || '')}
44
+ DATA
45
+ canonical_request.chop!
46
+
47
+ string_to_sign = <<-DATA
48
+ #{ALGORITHM}
49
+ #{date.to_iso8601_basic}
50
+ #{credential_scope(date)}
51
+ #{Digest::SHA256.hexdigest(canonical_request)}
52
+ DATA
53
+
54
+ string_to_sign.chop!
55
+
56
+ signature = derived_hmac(date).sign(string_to_sign)
57
+
58
+ {
59
+ 'X-Amz-Algorithm' => ALGORITHM,
60
+ 'X-Amz-Credential' => "#{@aws_access_key_id}/#{credential_scope(date)}",
61
+ 'X-Amz-SignedHeaders' => signed_headers(params[:headers]),
62
+ 'X-Amz-Signature' => signature.unpack('H*').first
63
+ }
64
+ end
65
+
66
+ def derived_hmac(date)
67
+ kDate = @hmac.sign(date.utc.strftime('%Y%m%d'))
68
+ kRegion = Fog::HMAC.new('sha256', kDate).sign(@region)
69
+ kService = Fog::HMAC.new('sha256', kRegion).sign(@service)
70
+ kSigning = Fog::HMAC.new('sha256', kService).sign('aws4_request')
71
+ Fog::HMAC.new('sha256', kSigning)
72
+ end
73
+
74
+
75
+ def credential_scope(date)
76
+ "#{date.utc.strftime('%Y%m%d')}/#{@region}/#{@service}/aws4_request"
77
+ end
78
+
79
+ protected
80
+
81
+ def canonical_path(path)
82
+ components = path.split(%r{/+}, -1)
83
+ path = components.inject([]) do |acc, component|
84
+ case component
85
+ when '.' #canonicalize by removing .
86
+ when '..' then acc.pop#canonicalize by reducing ..
87
+ else
88
+ acc << component
89
+ end
90
+ acc
91
+ end.join('/')
92
+ path.empty? ? '/' : path
93
+ end
94
+
95
+ def canonical_query_string(query)
96
+ canonical_query_string = []
97
+ for key in (query || {}).keys.sort_by {|k| k.to_s}
98
+ component = "#{Fog::AWS.escape(key.to_s)}=#{Fog::AWS.escape(query[key].to_s)}"
99
+ canonical_query_string << component
100
+ end
101
+ canonical_query_string.join("&")
102
+ end
103
+
104
+ def canonical_headers(headers)
105
+ canonical_headers = ''
106
+
107
+ for key in headers.keys.sort_by {|k| k.to_s}
108
+ canonical_headers << "#{key.to_s.downcase}:#{headers[key].to_s.strip}\n"
109
+ end
110
+ canonical_headers
111
+ end
112
+
113
+ def signed_headers(headers)
114
+ headers.keys.map {|key| key.to_s}.sort.map {|key| key.downcase}.join(';')
115
+ end
116
+
117
+ end
118
+ end
119
+ end
@@ -0,0 +1,211 @@
1
+ require 'fog/aws/core'
2
+
3
+ module Fog
4
+ module AWS
5
+ class SimpleDB < Fog::Service
6
+ extend Fog::AWS::CredentialFetcher::ServiceMethods
7
+
8
+ requires :aws_access_key_id, :aws_secret_access_key
9
+ recognizes :host, :nil_string, :path, :port, :scheme, :persistent, :region, :aws_session_token, :use_iam_profile, :aws_credentials_expire_at, :instrumentor, :instrumentor_name
10
+
11
+ request_path 'fog/aws/requests/simpledb'
12
+ request :batch_put_attributes
13
+ request :create_domain
14
+ request :delete_attributes
15
+ request :delete_domain
16
+ request :domain_metadata
17
+ request :get_attributes
18
+ request :list_domains
19
+ request :put_attributes
20
+ request :select
21
+
22
+ class Mock
23
+ def self.data
24
+ @data ||= Hash.new do |hash, key|
25
+ hash[key] = {
26
+ :domains => {}
27
+ }
28
+ end
29
+ end
30
+
31
+ def self.reset
32
+ @data = nil
33
+ end
34
+
35
+ def initialize(options={})
36
+ @use_iam_profile = options[:use_iam_profile]
37
+ setup_credentials(options)
38
+ end
39
+
40
+ def data
41
+ self.class.data[@aws_access_key_id]
42
+ end
43
+
44
+ def reset_data
45
+ self.class.data.delete(@aws_access_key_id)
46
+ end
47
+
48
+ def setup_credentials(options)
49
+ @aws_access_key_id = options[:aws_access_key_id]
50
+ end
51
+ end
52
+
53
+ class Real
54
+ include Fog::AWS::CredentialFetcher::ConnectionMethods
55
+ # Initialize connection to SimpleDB
56
+ #
57
+ # ==== Notes
58
+ # options parameter must include values for :aws_access_key_id and
59
+ # :aws_secret_access_key in order to create a connection
60
+ #
61
+ # ==== Examples
62
+ # sdb = SimpleDB.new(
63
+ # :aws_access_key_id => your_aws_access_key_id,
64
+ # :aws_secret_access_key => your_aws_secret_access_key
65
+ # )
66
+ #
67
+ # ==== Parameters
68
+ # * options<~Hash> - config arguments for connection. Defaults to {}.
69
+ #
70
+ # ==== Returns
71
+ # * SimpleDB object with connection to aws.
72
+ def initialize(options={})
73
+
74
+ @use_iam_profile = options[:use_iam_profile]
75
+ setup_credentials(options)
76
+ @connection_options = options[:connection_options] || {}
77
+ @nil_string = options[:nil_string]|| 'nil'
78
+ @instrumentor = options[:instrumentor]
79
+ @instrumentor_name = options[:instrumentor_name] || 'fog.aws.simpledb'
80
+
81
+ options[:region] ||= 'us-east-1'
82
+ @host = options[:host] || case options[:region]
83
+ when 'us-east-1'
84
+ 'sdb.amazonaws.com'
85
+ else
86
+ "sdb.#{options[:region]}.amazonaws.com"
87
+ end
88
+ @path = options[:path] || '/'
89
+ @persistent = options[:persistent] || false
90
+ @port = options[:port] || 443
91
+ @scheme = options[:scheme] || 'https'
92
+ @connection = Fog::XML::Connection.new("#{@scheme}://#{@host}:#{@port}#{@path}", @persistent, @connection_options)
93
+ end
94
+
95
+ private
96
+ def setup_credentials(options)
97
+ @aws_access_key_id = options[:aws_access_key_id]
98
+ @aws_secret_access_key = options[:aws_secret_access_key]
99
+ @aws_session_token = options[:aws_session_token]
100
+ @aws_credentials_expire_at = options[:aws_credentials_expire_at]
101
+
102
+ @hmac = Fog::HMAC.new('sha256', @aws_secret_access_key)
103
+ end
104
+
105
+ def encode_attributes(attributes, replace_attributes = [], expected_attributes = {})
106
+ encoded_attributes = {}
107
+ if attributes
108
+
109
+ expected_attributes.keys.each_with_index do |exkey, index|
110
+ for value in Array(expected_attributes[exkey])
111
+ encoded_attributes["Expected.#{index}.Name"] = exkey.to_s
112
+ encoded_attributes["Expected.#{index}.Value"] = sdb_encode(value)
113
+ end
114
+ end
115
+
116
+ index = 0
117
+ for key in attributes.keys
118
+ for value in Array(attributes[key])
119
+ encoded_attributes["Attribute.#{index}.Name"] = key.to_s
120
+ if replace_attributes.include?(key)
121
+ encoded_attributes["Attribute.#{index}.Replace"] = 'true'
122
+ end
123
+ encoded_attributes["Attribute.#{index}.Value"] = sdb_encode(value)
124
+ index += 1
125
+ end
126
+ end
127
+ end
128
+ encoded_attributes
129
+ end
130
+
131
+ def encode_attribute_names(attributes)
132
+ Fog::AWS.indexed_param('AttributeName', attributes.map {|attribute| attributes.to_s})
133
+ end
134
+
135
+ def encode_batch_attributes(items, replace_attributes = Hash.new([]))
136
+ encoded_attributes = {}
137
+ if items
138
+ item_index = 0
139
+ for item_key in items.keys
140
+ encoded_attributes["Item.#{item_index}.ItemName"] = item_key.to_s
141
+ attribute_index = 0
142
+ for attribute_key in items[item_key].keys
143
+ for value in Array(items[item_key][attribute_key])
144
+ encoded_attributes["Item.#{item_index}.Attribute.#{attribute_index}.Name"] = attribute_key.to_s
145
+ if replace_attributes[item_key].include?(attribute_key)
146
+ encoded_attributes["Item.#{item_index}.Attribute.#{attribute_index}.Replace"] = 'true'
147
+ end
148
+ encoded_attributes["Item.#{item_index}.Attribute.#{attribute_index}.Value"] = sdb_encode(value)
149
+ attribute_index += 1
150
+ end
151
+ end
152
+ item_index += 1
153
+ end
154
+ end
155
+ encoded_attributes
156
+ end
157
+
158
+ def reload
159
+ @connection.reset
160
+ end
161
+
162
+ def request(params)
163
+ refresh_credentials_if_expired
164
+
165
+ idempotent = params.delete(:idempotent)
166
+ parser = params.delete(:parser)
167
+
168
+ body = Fog::AWS.signed_params(
169
+ params,
170
+ {
171
+ :aws_access_key_id => @aws_access_key_id,
172
+ :aws_session_token => @aws_session_token,
173
+ :hmac => @hmac,
174
+ :host => @host,
175
+ :path => @path,
176
+ :port => @port,
177
+ :version => '2009-04-15'
178
+ }
179
+ )
180
+
181
+ if @instrumentor
182
+ @instrumentor.instrument("#{@instrumentor_name}.request", params) do
183
+ _request(body, idempotent, parser)
184
+ end
185
+ else
186
+ _request(body, idempotent, parser)
187
+ end
188
+ end
189
+
190
+ def _request(body, idempotent, parser)
191
+ @connection.request({
192
+ :body => body,
193
+ :expects => 200,
194
+ :headers => { 'Content-Type' => 'application/x-www-form-urlencoded; charset=utf-8' },
195
+ :idempotent => idempotent,
196
+ :method => 'POST',
197
+ :parser => parser
198
+ })
199
+ end
200
+
201
+ def sdb_encode(value)
202
+ if value.nil?
203
+ @nil_string
204
+ else
205
+ value.to_s
206
+ end
207
+ end
208
+ end
209
+ end
210
+ end
211
+ end