aws-sdk 1.8.5 → 1.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (386) hide show
  1. checksums.yaml +7 -0
  2. data/.yardopts +1 -0
  3. data/README.rdoc +8 -0
  4. data/lib/aws-sdk.rb +39 -35
  5. data/lib/aws/api_config/CloudFront-2012-07-01.yml +2398 -0
  6. data/lib/aws/api_config/DirectConnect-2012-10-25.yml +475 -0
  7. data/lib/aws/api_config/DynamoDB-2011-12-05.yml +8 -0
  8. data/lib/aws/api_config/DynamoDB-2012-08-10.yml +1516 -0
  9. data/lib/aws/api_config/OpsWorks-2013-02-18.yml +2 -2
  10. data/lib/aws/auto_scaling.rb +44 -44
  11. data/lib/aws/auto_scaling/activity.rb +1 -1
  12. data/lib/aws/auto_scaling/activity_collection.rb +14 -15
  13. data/lib/aws/auto_scaling/client.rb +277 -277
  14. data/lib/aws/auto_scaling/config.rb +1 -1
  15. data/lib/aws/auto_scaling/group.rb +35 -36
  16. data/lib/aws/auto_scaling/group_collection.rb +10 -10
  17. data/lib/aws/auto_scaling/group_options.rb +19 -19
  18. data/lib/aws/auto_scaling/instance.rb +27 -27
  19. data/lib/aws/auto_scaling/instance_collection.rb +10 -10
  20. data/lib/aws/auto_scaling/launch_configuration.rb +3 -3
  21. data/lib/aws/auto_scaling/launch_configuration_collection.rb +1 -1
  22. data/lib/aws/auto_scaling/notification_configuration.rb +2 -2
  23. data/lib/aws/auto_scaling/notification_configuration_collection.rb +37 -38
  24. data/lib/aws/auto_scaling/scaling_policy.rb +3 -3
  25. data/lib/aws/auto_scaling/scaling_policy_collection.rb +6 -6
  26. data/lib/aws/auto_scaling/scaling_policy_options.rb +8 -7
  27. data/lib/aws/auto_scaling/scheduled_action.rb +3 -3
  28. data/lib/aws/auto_scaling/scheduled_action_collection.rb +28 -28
  29. data/lib/aws/auto_scaling/tag_collection.rb +30 -28
  30. data/lib/aws/cloud_formation.rb +95 -94
  31. data/lib/aws/cloud_formation/client.rb +136 -133
  32. data/lib/aws/cloud_formation/config.rb +1 -1
  33. data/lib/aws/cloud_formation/stack.rb +37 -37
  34. data/lib/aws/cloud_formation/stack_collection.rb +28 -27
  35. data/lib/aws/cloud_formation/stack_event.rb +9 -11
  36. data/lib/aws/cloud_formation/stack_output.rb +1 -1
  37. data/lib/aws/cloud_formation/stack_resource.rb +6 -6
  38. data/lib/aws/cloud_formation/stack_resource_collection.rb +11 -12
  39. data/lib/aws/cloud_formation/stack_resource_summary_collection.rb +11 -11
  40. data/lib/aws/cloud_formation/stack_summary_collection.rb +39 -39
  41. data/lib/aws/cloud_front.rb +21 -21
  42. data/lib/aws/cloud_front/client.rb +853 -652
  43. data/lib/aws/cloud_front/request.rb +3 -0
  44. data/lib/aws/cloud_search.rb +22 -22
  45. data/lib/aws/cloud_search/client.rb +322 -315
  46. data/lib/aws/cloud_search/config.rb +1 -1
  47. data/lib/aws/cloud_watch.rb +39 -39
  48. data/lib/aws/cloud_watch/alarm.rb +55 -37
  49. data/lib/aws/cloud_watch/alarm_collection.rb +18 -18
  50. data/lib/aws/cloud_watch/alarm_history_item_collection.rb +2 -2
  51. data/lib/aws/cloud_watch/client.rb +360 -146
  52. data/lib/aws/cloud_watch/config.rb +1 -1
  53. data/lib/aws/cloud_watch/metric.rb +15 -15
  54. data/lib/aws/cloud_watch/metric_alarm_collection.rb +17 -17
  55. data/lib/aws/cloud_watch/metric_collection.rb +16 -16
  56. data/lib/aws/cloud_watch/metric_statistics.rb +11 -11
  57. data/lib/aws/core.rb +243 -225
  58. data/lib/aws/core/async_handle.rb +13 -13
  59. data/lib/aws/core/cacheable.rb +14 -15
  60. data/lib/aws/core/client.rb +40 -15
  61. data/lib/aws/core/collection.rb +42 -46
  62. data/lib/aws/core/collection/with_limit_and_next_token.rb +1 -1
  63. data/lib/aws/core/collection/with_next_token.rb +1 -1
  64. data/lib/aws/core/configuration.rb +97 -133
  65. data/lib/aws/core/credential_providers.rb +16 -16
  66. data/lib/aws/core/data.rb +23 -23
  67. data/lib/aws/core/http/connection_pool.rb +348 -0
  68. data/lib/aws/core/http/net_http_handler.rb +17 -26
  69. data/lib/aws/core/http/patch.rb +102 -0
  70. data/lib/aws/core/http/request.rb +13 -19
  71. data/lib/aws/core/http/response.rb +2 -2
  72. data/lib/aws/core/lazy_error_classes.rb +17 -17
  73. data/lib/aws/core/log_formatter.rb +70 -104
  74. data/lib/aws/core/options/json_serializer.rb +1 -1
  75. data/lib/aws/core/options/validator.rb +4 -4
  76. data/lib/aws/core/page_result.rb +8 -8
  77. data/lib/aws/core/policy.rb +49 -49
  78. data/lib/aws/core/region.rb +72 -0
  79. data/lib/aws/core/region_collection.rb +106 -0
  80. data/lib/aws/core/resource.rb +5 -5
  81. data/lib/aws/core/response.rb +20 -17
  82. data/lib/aws/core/rest_request_builder.rb +4 -4
  83. data/lib/aws/core/service_interface.rb +24 -2
  84. data/lib/aws/core/signature/version_3.rb +2 -2
  85. data/lib/aws/core/uri_escape.rb +1 -1
  86. data/lib/aws/core/xml/frame_stack.rb +1 -1
  87. data/lib/aws/core/xml/grammar.rb +3 -4
  88. data/lib/aws/core/xml/sax_handlers/libxml.rb +2 -2
  89. data/lib/aws/core/xml/sax_handlers/nokogiri.rb +3 -3
  90. data/lib/aws/core/xml/sax_handlers/rexml.rb +5 -5
  91. data/lib/aws/core/xml/stub.rb +9 -9
  92. data/lib/aws/data_pipeline.rb +21 -21
  93. data/lib/aws/data_pipeline/client.rb +189 -133
  94. data/lib/aws/data_pipeline/config.rb +1 -1
  95. data/lib/aws/direct_connect.rb +74 -0
  96. data/lib/aws/direct_connect/client.rb +253 -0
  97. data/lib/aws/direct_connect/config.rb +18 -0
  98. data/lib/aws/direct_connect/errors.rb +22 -0
  99. data/lib/aws/direct_connect/request.rb +27 -0
  100. data/lib/aws/dynamo_db.rb +71 -69
  101. data/lib/aws/dynamo_db/attribute_collection.rb +53 -58
  102. data/lib/aws/dynamo_db/batch_get.rb +23 -23
  103. data/lib/aws/dynamo_db/batch_write.rb +43 -43
  104. data/lib/aws/dynamo_db/binary.rb +9 -9
  105. data/lib/aws/dynamo_db/client.rb +494 -509
  106. data/lib/aws/dynamo_db/client_base.rb +91 -0
  107. data/lib/aws/dynamo_db/client_v2.rb +825 -0
  108. data/lib/aws/dynamo_db/config.rb +1 -1
  109. data/lib/aws/dynamo_db/item.rb +10 -10
  110. data/lib/aws/dynamo_db/item_collection.rb +75 -75
  111. data/lib/aws/dynamo_db/table.rb +85 -85
  112. data/lib/aws/dynamo_db/table_collection.rb +13 -13
  113. data/lib/aws/ec2.rb +132 -142
  114. data/lib/aws/ec2/attachment.rb +31 -36
  115. data/lib/aws/ec2/attachment_collection.rb +1 -1
  116. data/lib/aws/ec2/availability_zone.rb +4 -4
  117. data/lib/aws/ec2/client.rb +2272 -2125
  118. data/lib/aws/ec2/config.rb +1 -1
  119. data/lib/aws/ec2/customer_gateway.rb +6 -6
  120. data/lib/aws/ec2/customer_gateway_collection.rb +6 -6
  121. data/lib/aws/ec2/dhcp_options.rb +3 -3
  122. data/lib/aws/ec2/dhcp_options_collection.rb +10 -10
  123. data/lib/aws/ec2/elastic_ip.rb +15 -15
  124. data/lib/aws/ec2/elastic_ip_collection.rb +11 -15
  125. data/lib/aws/ec2/export_task.rb +4 -4
  126. data/lib/aws/ec2/export_task_collection.rb +11 -11
  127. data/lib/aws/ec2/filtered_collection.rb +6 -8
  128. data/lib/aws/ec2/image.rb +46 -40
  129. data/lib/aws/ec2/image_collection.rb +44 -52
  130. data/lib/aws/ec2/instance.rb +64 -62
  131. data/lib/aws/ec2/instance_collection.rb +47 -50
  132. data/lib/aws/ec2/internet_gateway.rb +6 -6
  133. data/lib/aws/ec2/internet_gateway/attachment.rb +13 -13
  134. data/lib/aws/ec2/internet_gateway_collection.rb +3 -3
  135. data/lib/aws/ec2/key_pair.rb +3 -3
  136. data/lib/aws/ec2/key_pair_collection.rb +12 -12
  137. data/lib/aws/ec2/network_acl.rb +39 -39
  138. data/lib/aws/ec2/network_acl/association.rb +2 -2
  139. data/lib/aws/ec2/network_acl/entry.rb +22 -22
  140. data/lib/aws/ec2/network_acl_collection.rb +2 -2
  141. data/lib/aws/ec2/network_interface.rb +13 -4
  142. data/lib/aws/ec2/network_interface/attachment.rb +3 -3
  143. data/lib/aws/ec2/network_interface_collection.rb +5 -5
  144. data/lib/aws/ec2/permission_collection.rb +1 -1
  145. data/lib/aws/ec2/region.rb +6 -6
  146. data/lib/aws/ec2/region_collection.rb +1 -1
  147. data/lib/aws/ec2/reserved_instances_collection.rb +2 -2
  148. data/lib/aws/ec2/reserved_instances_offering_collection.rb +2 -2
  149. data/lib/aws/ec2/resource_tag_collection.rb +5 -5
  150. data/lib/aws/ec2/route_table.rb +14 -14
  151. data/lib/aws/ec2/route_table/association.rb +22 -22
  152. data/lib/aws/ec2/route_table/route.rb +8 -8
  153. data/lib/aws/ec2/route_table_collection.rb +3 -3
  154. data/lib/aws/ec2/security_group.rb +39 -41
  155. data/lib/aws/ec2/security_group_collection.rb +19 -21
  156. data/lib/aws/ec2/snapshot.rb +3 -3
  157. data/lib/aws/ec2/snapshot_collection.rb +11 -12
  158. data/lib/aws/ec2/subnet.rb +2 -2
  159. data/lib/aws/ec2/subnet_collection.rb +17 -17
  160. data/lib/aws/ec2/tag_collection.rb +1 -1
  161. data/lib/aws/ec2/tagged_collection.rb +7 -7
  162. data/lib/aws/ec2/tagged_item.rb +10 -10
  163. data/lib/aws/ec2/volume.rb +16 -16
  164. data/lib/aws/ec2/volume_collection.rb +9 -12
  165. data/lib/aws/ec2/vpc.rb +6 -6
  166. data/lib/aws/ec2/vpc_collection.rb +10 -10
  167. data/lib/aws/ec2/vpn_connection.rb +4 -4
  168. data/lib/aws/ec2/vpn_connection/telemetry.rb +1 -1
  169. data/lib/aws/ec2/vpn_connection_collection.rb +6 -6
  170. data/lib/aws/ec2/vpn_gateway.rb +2 -2
  171. data/lib/aws/ec2/vpn_gateway_collection.rb +5 -5
  172. data/lib/aws/elastic_beanstalk.rb +12 -12
  173. data/lib/aws/elastic_beanstalk/client.rb +376 -368
  174. data/lib/aws/elastic_beanstalk/config.rb +1 -1
  175. data/lib/aws/elastic_transcoder.rb +5 -5
  176. data/lib/aws/elastic_transcoder/client.rb +283 -283
  177. data/lib/aws/elastic_transcoder/config.rb +1 -1
  178. data/lib/aws/elasticache.rb +12 -12
  179. data/lib/aws/elasticache/client.rb +484 -479
  180. data/lib/aws/elasticache/config.rb +1 -1
  181. data/lib/aws/elb.rb +23 -23
  182. data/lib/aws/elb/availability_zone_collection.rb +34 -34
  183. data/lib/aws/elb/backend_server_policy_collection.rb +24 -24
  184. data/lib/aws/elb/client.rb +153 -153
  185. data/lib/aws/elb/config.rb +1 -1
  186. data/lib/aws/elb/errors.rb +1 -1
  187. data/lib/aws/elb/instance_collection.rb +20 -25
  188. data/lib/aws/elb/listener.rb +3 -3
  189. data/lib/aws/elb/listener_collection.rb +8 -8
  190. data/lib/aws/elb/load_balancer.rb +15 -16
  191. data/lib/aws/elb/load_balancer_collection.rb +36 -24
  192. data/lib/aws/elb/load_balancer_policy.rb +1 -1
  193. data/lib/aws/elb/load_balancer_policy_collection.rb +5 -5
  194. data/lib/aws/emr.rb +28 -26
  195. data/lib/aws/emr/client.rb +165 -149
  196. data/lib/aws/emr/config.rb +1 -1
  197. data/lib/aws/emr/instance_group.rb +1 -1
  198. data/lib/aws/emr/instance_group_collection.rb +1 -1
  199. data/lib/aws/emr/job_flow.rb +27 -26
  200. data/lib/aws/emr/job_flow_collection.rb +34 -34
  201. data/lib/aws/errors.rb +7 -7
  202. data/lib/aws/glacier.rb +21 -21
  203. data/lib/aws/glacier/archive_collection.rb +2 -2
  204. data/lib/aws/glacier/client.rb +139 -140
  205. data/lib/aws/glacier/config.rb +1 -1
  206. data/lib/aws/glacier/vault.rb +2 -2
  207. data/lib/aws/glacier/vault_collection.rb +1 -1
  208. data/lib/aws/iam.rb +133 -144
  209. data/lib/aws/iam/access_key.rb +17 -17
  210. data/lib/aws/iam/access_key_collection.rb +22 -22
  211. data/lib/aws/iam/account_alias_collection.rb +2 -2
  212. data/lib/aws/iam/client.rb +429 -420
  213. data/lib/aws/iam/collection.rb +1 -1
  214. data/lib/aws/iam/config.rb +2 -2
  215. data/lib/aws/iam/group.rb +8 -8
  216. data/lib/aws/iam/group_collection.rb +16 -16
  217. data/lib/aws/iam/group_policy_collection.rb +6 -6
  218. data/lib/aws/iam/group_user_collection.rb +3 -3
  219. data/lib/aws/iam/mfa_device.rb +1 -1
  220. data/lib/aws/iam/mfa_device_collection.rb +9 -9
  221. data/lib/aws/iam/policy_collection.rb +4 -4
  222. data/lib/aws/iam/resource.rb +2 -2
  223. data/lib/aws/iam/server_certificate.rb +1 -1
  224. data/lib/aws/iam/server_certificate_collection.rb +15 -15
  225. data/lib/aws/iam/signing_certificate.rb +29 -29
  226. data/lib/aws/iam/signing_certificate_collection.rb +23 -23
  227. data/lib/aws/iam/user.rb +33 -38
  228. data/lib/aws/iam/user_collection.rb +27 -27
  229. data/lib/aws/iam/user_group_collection.rb +3 -3
  230. data/lib/aws/iam/user_policy_collection.rb +6 -6
  231. data/lib/aws/iam/virtual_mfa_device.rb +12 -12
  232. data/lib/aws/iam/virtual_mfa_device_collection.rb +4 -4
  233. data/lib/aws/import_export.rb +22 -21
  234. data/lib/aws/import_export/client.rb +47 -43
  235. data/lib/aws/ops_works.rb +5 -5
  236. data/lib/aws/ops_works/client.rb +484 -438
  237. data/lib/aws/ops_works/config.rb +1 -1
  238. data/lib/aws/rails.rb +34 -34
  239. data/lib/aws/rds.rb +18 -18
  240. data/lib/aws/rds/client.rb +1286 -1277
  241. data/lib/aws/rds/config.rb +1 -1
  242. data/lib/aws/rds/db_instance.rb +15 -4
  243. data/lib/aws/rds/db_snapshot.rb +1 -1
  244. data/lib/aws/record.rb +50 -24
  245. data/lib/aws/record/abstract_base.rb +52 -60
  246. data/lib/aws/record/attributes.rb +79 -79
  247. data/lib/aws/record/conversion.rb +1 -1
  248. data/lib/aws/record/dirty_tracking.rb +69 -67
  249. data/lib/aws/record/errors.rb +21 -21
  250. data/lib/aws/record/exceptions.rb +2 -2
  251. data/lib/aws/record/hash_model.rb +20 -21
  252. data/lib/aws/record/hash_model/attributes.rb +13 -15
  253. data/lib/aws/record/hash_model/finder_methods.rb +46 -46
  254. data/lib/aws/record/hash_model/scope.rb +31 -31
  255. data/lib/aws/record/model.rb +136 -136
  256. data/lib/aws/record/model/attributes.rb +57 -59
  257. data/lib/aws/record/model/finder_methods.rb +67 -67
  258. data/lib/aws/record/model/scope.rb +48 -49
  259. data/lib/aws/record/naming.rb +1 -1
  260. data/lib/aws/record/scope.rb +23 -19
  261. data/lib/aws/record/validations.rb +253 -271
  262. data/lib/aws/record/validator.rb +3 -3
  263. data/lib/aws/record/validators/acceptance.rb +1 -3
  264. data/lib/aws/record/validators/block.rb +1 -3
  265. data/lib/aws/record/validators/confirmation.rb +1 -3
  266. data/lib/aws/record/validators/count.rb +2 -4
  267. data/lib/aws/record/validators/exclusion.rb +2 -4
  268. data/lib/aws/record/validators/format.rb +2 -4
  269. data/lib/aws/record/validators/inclusion.rb +1 -3
  270. data/lib/aws/record/validators/length.rb +5 -7
  271. data/lib/aws/record/validators/method.rb +1 -3
  272. data/lib/aws/record/validators/numericality.rb +6 -8
  273. data/lib/aws/record/validators/presence.rb +1 -3
  274. data/lib/aws/redshift.rb +14 -14
  275. data/lib/aws/redshift/client.rb +596 -592
  276. data/lib/aws/redshift/config.rb +1 -1
  277. data/lib/aws/route_53.rb +30 -30
  278. data/lib/aws/route_53/change_batch.rb +7 -7
  279. data/lib/aws/route_53/client.rb +188 -152
  280. data/lib/aws/route_53/hosted_zone.rb +4 -4
  281. data/lib/aws/route_53/hosted_zone_collection.rb +7 -7
  282. data/lib/aws/route_53/resource_record_set.rb +10 -10
  283. data/lib/aws/route_53/resource_record_set_collection.rb +6 -6
  284. data/lib/aws/s3.rb +79 -79
  285. data/lib/aws/s3/access_control_list.rb +44 -36
  286. data/lib/aws/s3/acl_options.rb +51 -51
  287. data/lib/aws/s3/bucket.rb +146 -146
  288. data/lib/aws/s3/bucket_collection.rb +21 -21
  289. data/lib/aws/s3/bucket_lifecycle_configuration.rb +81 -82
  290. data/lib/aws/s3/bucket_tag_collection.rb +4 -2
  291. data/lib/aws/s3/cipher_io.rb +5 -4
  292. data/lib/aws/s3/client.rb +89 -84
  293. data/lib/aws/s3/client/xml.rb +1 -1
  294. data/lib/aws/s3/config.rb +7 -1
  295. data/lib/aws/s3/cors_rule.rb +2 -0
  296. data/lib/aws/s3/cors_rule_collection.rb +42 -40
  297. data/lib/aws/s3/data_options.rb +16 -11
  298. data/lib/aws/s3/encryption_utils.rb +2 -2
  299. data/lib/aws/s3/errors.rb +7 -7
  300. data/lib/aws/s3/multipart_upload.rb +30 -33
  301. data/lib/aws/s3/multipart_upload_collection.rb +8 -6
  302. data/lib/aws/s3/object_collection.rb +35 -35
  303. data/lib/aws/s3/object_metadata.rb +6 -6
  304. data/lib/aws/s3/object_version.rb +4 -4
  305. data/lib/aws/s3/object_version_collection.rb +15 -15
  306. data/lib/aws/s3/policy.rb +2 -2
  307. data/lib/aws/s3/prefixed_collection.rb +9 -5
  308. data/lib/aws/s3/presigned_post.rb +39 -37
  309. data/lib/aws/s3/request.rb +11 -11
  310. data/lib/aws/s3/s3_object.rb +210 -200
  311. data/lib/aws/s3/tree.rb +25 -27
  312. data/lib/aws/s3/tree/child_collection.rb +3 -3
  313. data/lib/aws/s3/tree/leaf_node.rb +2 -2
  314. data/lib/aws/s3/tree/parent.rb +1 -1
  315. data/lib/aws/s3/website_configuration.rb +13 -13
  316. data/lib/aws/simple_db.rb +83 -83
  317. data/lib/aws/simple_db/attribute.rb +9 -7
  318. data/lib/aws/simple_db/attribute_collection.rb +22 -13
  319. data/lib/aws/simple_db/client.rb +107 -107
  320. data/lib/aws/simple_db/config.rb +7 -1
  321. data/lib/aws/simple_db/consistent_read_option.rb +5 -5
  322. data/lib/aws/simple_db/domain.rb +4 -2
  323. data/lib/aws/simple_db/domain_collection.rb +4 -4
  324. data/lib/aws/simple_db/domain_metadata.rb +5 -5
  325. data/lib/aws/simple_db/errors.rb +9 -9
  326. data/lib/aws/simple_db/item.rb +5 -5
  327. data/lib/aws/simple_db/item_collection.rb +83 -81
  328. data/lib/aws/simple_db/item_data.rb +4 -4
  329. data/lib/aws/simple_db/put_attributes.rb +3 -3
  330. data/lib/aws/simple_email_service.rb +140 -140
  331. data/lib/aws/simple_email_service/client.rb +82 -76
  332. data/lib/aws/simple_email_service/config.rb +1 -2
  333. data/lib/aws/simple_email_service/email_address_collection.rb +3 -3
  334. data/lib/aws/simple_email_service/identity.rb +8 -8
  335. data/lib/aws/simple_email_service/quotas.rb +8 -6
  336. data/lib/aws/simple_workflow.rb +106 -106
  337. data/lib/aws/simple_workflow/activity_task.rb +15 -22
  338. data/lib/aws/simple_workflow/activity_task_collection.rb +15 -15
  339. data/lib/aws/simple_workflow/activity_type.rb +23 -23
  340. data/lib/aws/simple_workflow/activity_type_collection.rb +23 -23
  341. data/lib/aws/simple_workflow/client.rb +1004 -956
  342. data/lib/aws/simple_workflow/config.rb +1 -1
  343. data/lib/aws/simple_workflow/count.rb +5 -5
  344. data/lib/aws/simple_workflow/decision_task.rb +129 -129
  345. data/lib/aws/simple_workflow/decision_task_collection.rb +59 -59
  346. data/lib/aws/simple_workflow/domain.rb +11 -11
  347. data/lib/aws/simple_workflow/domain_collection.rb +26 -26
  348. data/lib/aws/simple_workflow/history_event.rb +32 -32
  349. data/lib/aws/simple_workflow/history_event_collection.rb +3 -3
  350. data/lib/aws/simple_workflow/option_formatters.rb +5 -5
  351. data/lib/aws/simple_workflow/request.rb +1 -1
  352. data/lib/aws/simple_workflow/resource.rb +1 -1
  353. data/lib/aws/simple_workflow/type.rb +8 -8
  354. data/lib/aws/simple_workflow/type_collection.rb +15 -15
  355. data/lib/aws/simple_workflow/workflow_execution.rb +70 -72
  356. data/lib/aws/simple_workflow/workflow_execution_collection.rb +130 -130
  357. data/lib/aws/simple_workflow/workflow_type.rb +27 -25
  358. data/lib/aws/simple_workflow/workflow_type_collection.rb +20 -20
  359. data/lib/aws/sns.rb +25 -25
  360. data/lib/aws/sns/client.rb +55 -55
  361. data/lib/aws/sns/config.rb +1 -1
  362. data/lib/aws/sns/policy.rb +1 -1
  363. data/lib/aws/sns/subscription.rb +7 -7
  364. data/lib/aws/sns/subscription_collection.rb +5 -5
  365. data/lib/aws/sns/topic.rb +49 -49
  366. data/lib/aws/sns/topic_collection.rb +2 -2
  367. data/lib/aws/sns/topic_subscription_collection.rb +5 -5
  368. data/lib/aws/sqs.rb +20 -20
  369. data/lib/aws/sqs/client.rb +78 -78
  370. data/lib/aws/sqs/config.rb +1 -1
  371. data/lib/aws/sqs/errors.rb +12 -12
  372. data/lib/aws/sqs/queue.rb +66 -67
  373. data/lib/aws/sqs/queue_collection.rb +16 -8
  374. data/lib/aws/sqs/received_message.rb +7 -6
  375. data/lib/aws/storage_gateway.rb +21 -21
  376. data/lib/aws/storage_gateway/client.rb +269 -202
  377. data/lib/aws/storage_gateway/config.rb +1 -1
  378. data/lib/aws/sts.rb +10 -8
  379. data/lib/aws/sts/client.rb +35 -35
  380. data/lib/aws/sts/session.rb +3 -3
  381. data/lib/aws/version.rb +1 -2
  382. metadata +23 -21
  383. data/lib/aws/core/autoloader.rb +0 -64
  384. data/lib/net/http/connection_pool.rb +0 -226
  385. data/lib/net/http/connection_pool/connection.rb +0 -189
  386. data/lib/net/http/connection_pool/session.rb +0 -126
@@ -16,32 +16,32 @@ module AWS
16
16
  # This is the primary interface for uploading X.509 signing certificates
17
17
  # to an AWS account or an IAM user.
18
18
  #
19
- # iam = AWS::IAM.new
19
+ # iam = AWS::IAM.new
20
20
  #
21
- # # upload a certificate for the AWS account:
22
- # iam.signing_certificates.upload(<<-CERT)
23
- # -----BEGIN CERTIFICATE-----
24
- # MIICdzCCAeCgAwIBAgIFGS4fY6owDQYJKoZIhvcNAQEFBQAwUzELMAkGA1UEBhMC
25
- # ......
26
- # Glli79yh87PRi0vNDlFEoHXNynkvC/c4TiWruZ4haM9BR9EdWr1DBNNu73ui093K
27
- # F9TbdXSWdgMl7E0=
28
- # -----END CERTIFICATE-----
29
- # CERT
21
+ # # upload a certificate for the AWS account:
22
+ # iam.signing_certificates.upload(<<-CERT)
23
+ # -----BEGIN CERTIFICATE-----
24
+ # MIICdzCCAeCgAwIBAgIFGS4fY6owDQYJKoZIhvcNAQEFBQAwUzELMAkGA1UEBhMC
25
+ # ......
26
+ # Glli79yh87PRi0vNDlFEoHXNynkvC/c4TiWruZ4haM9BR9EdWr1DBNNu73ui093K
27
+ # F9TbdXSWdgMl7E0=
28
+ # -----END CERTIFICATE-----
29
+ # CERT
30
30
  #
31
31
  # If you want to work with an IAM user's certificates just use the
32
32
  # signing certificate interface on a user:
33
33
  #
34
- # user = iam.users['someuser']
35
- # user.signing_certificates.upload(cert_body)
34
+ # user = iam.users['someuser']
35
+ # user.signing_certificates.upload(cert_body)
36
36
  #
37
37
  class SigningCertificateCollection
38
38
 
39
39
  include Collection
40
40
 
41
41
  # @param [Hash] options
42
- # @option options [User] :user (nil) When +:user+ is provided the
42
+ # @option options [User] :user (nil) When `:user` is provided the
43
43
  # collection will represents the signing certificates belonging only
44
- # to that user. When +:user+ is omitted the collection will manage
44
+ # to that user. When `:user` is omitted the collection will manage
45
45
  # root credentials on the AWS account (instead those belonging to a
46
46
  # particular user).
47
47
  def initialize options = {}
@@ -49,13 +49,13 @@ module AWS
49
49
  @user ? super(@user, options) : super(options)
50
50
  end
51
51
 
52
- # @return [User,nil] Returns the user this collection belongs to.
53
- # Returns +nil+ if the collection represents the root credentials
54
- # for the account. If the configured credentials belong to an
52
+ # @return [User,nil] Returns the user this collection belongs to.
53
+ # Returns `nil` if the collection represents the root credentials
54
+ # for the account. If the configured credentials belong to an
55
55
  # IAM user, then that user is the implied owner.
56
56
  attr_reader :user
57
57
 
58
- # @param [String] certificate_body The contents of the signing
58
+ # @param [String] certificate_body The contents of the signing
59
59
  # certificate.
60
60
  # @return [SigningCertificate] Returns the newly created signing
61
61
  # certificate.
@@ -67,7 +67,7 @@ module AWS
67
67
 
68
68
  resp = client.upload_signing_certificate(options)
69
69
 
70
- SigningCertificate.new_from(:upload_signing_certificate,
70
+ SigningCertificate.new_from(:upload_signing_certificate,
71
71
  resp.certificate, resp.certificate.certificate_id, new_options)
72
72
 
73
73
  end
@@ -92,14 +92,14 @@ module AWS
92
92
 
93
93
  # Yields once for each signing certificate.
94
94
  #
95
- # You can limit the number of certificates yielded using +:limit+.
95
+ # You can limit the number of certificates yielded using `:limit`.
96
96
  #
97
97
  # @param [Hash] options
98
98
  # @option options [Integer] :limit The maximum number of certificates
99
99
  # to yield.
100
- # @option options [Integer] :batch_size The maximum number of
100
+ # @option options [Integer] :batch_size The maximum number of
101
101
  # certificates received each service reqeust.
102
- # @yieldparam [SigningCertificate] signing_certificate
102
+ # @yieldparam [SigningCertificate] signing_certificate
103
103
  # @return [nil]
104
104
  def each options = {}, &block
105
105
  each_options = options.dup
@@ -112,7 +112,7 @@ module AWS
112
112
  def each_item response, &block
113
113
  response.certificates.each do |item|
114
114
 
115
- cert = SigningCertificate.new_from(:list_signing_certificates,
115
+ cert = SigningCertificate.new_from(:list_signing_certificates,
116
116
  item, item.certificate_id, new_options)
117
117
 
118
118
  yield(cert)
@@ -14,46 +14,44 @@
14
14
  module AWS
15
15
  class IAM
16
16
 
17
-
17
+
18
18
  # Represents an IAM User. Each AWS account can have many users. Users
19
19
  # can be organized (optionally) into groups. Users (and groups) can be
20
20
  # given policies that affect that they can do.
21
21
  #
22
- # == Creating A User
23
- #
24
- # iam = AWS::IAM.new
22
+ # ## Creating A User
25
23
  #
26
- # user = iam.users.create('johndoe')
27
- #
24
+ # iam = AWS::IAM.new
25
+ # user = iam.users.create('johndoe')
28
26
  #
29
- # == Renaming a User
27
+ # ## Renaming a User
30
28
  #
31
29
  # You can only edit a user's name and path (both of which will modify
32
30
  # the user's ARN).
33
31
  #
34
- # user = iam.users['johndoe']
35
- # user.name = 'newname'
32
+ # user = iam.users['johndoe']
33
+ # user.name = 'newname'
34
+ #
35
+ # ## User Path
36
36
  #
37
- # == User Path
38
- #
39
37
  # When you create a user you can assign a path. Paths must begin and
40
- # end with a forward slash (/).
38
+ # end with a forward slash (/).
41
39
  #
42
- # user = iam.users.create('newuser', :path => '/developers/ruby/')
40
+ # user = iam.users.create('newuser', :path => '/developers/ruby/')
43
41
  #
44
42
  # Paths are a useful tool for organizing/tagging users. You can later
45
43
  # enumerate users by their path prefixes:
46
44
  #
47
- # iam.users.each(:path_prefix => '/developers').each do |developer|
48
- # puts developer.name
49
- # end
45
+ # iam.users.each(:path_prefix => '/developers').each do |developer|
46
+ # puts developer.name
47
+ # end
50
48
  #
51
- # == Login Profile
49
+ # ## Login Profile
52
50
  #
53
51
  # A login profile is required for an IAM user to use the AWS Management
54
52
  # console (web interface). See {LoginProfile} for more information.
55
53
  #
56
- # == Deleting Users
54
+ # ## Deleting Users
57
55
  #
58
56
  # In order to delete a user you must first remove it from all of its
59
57
  # groups and delete all of its signing certificates. Once this is done:
@@ -91,8 +89,8 @@ module AWS
91
89
  # @attr_reader [String] The user's ARN (Amazon Resource Name).
92
90
  attribute :arn
93
91
 
94
- # @attr [String] The path for this user. Paths are used to
95
- # identify which division or part of an organization the user
92
+ # @attr [String] The path for this user. Paths are used to
93
+ # identify which division or part of an organization the user
96
94
  # belongs to.
97
95
  mutable_attribute :path
98
96
 
@@ -129,33 +127,33 @@ module AWS
129
127
 
130
128
  # Returns a collection that represents all policies for this user.
131
129
  #
132
- # user.policies.each do |policy|
133
- # puts policy.name
134
- # end
130
+ # user.policies.each do |policy|
131
+ # puts policy.name
132
+ # end
135
133
  #
136
134
  # @return [PolicyCollection] Returns a collection that represents
137
135
  # all policies for this user.
138
136
  def policies
139
- UserPolicyCollection.new(self)
137
+ UserPolicyCollection.new(self)
140
138
  end
141
139
 
142
140
  # Returns a collection that represents the signing certificates
143
141
  # belonging to this user.
144
142
  #
145
- # user.signing_certificates.each do |cert|
146
- # # ...
147
- # end
143
+ # user.signing_certificates.each do |cert|
144
+ # # ...
145
+ # end
148
146
  #
149
147
  # If you need to access the signing certificates of this AWS account,
150
148
  # see {IAM#signing_certificates}.
151
- #
149
+ #
152
150
  # @return [SigningCertificateCollection] Returns a collection that
153
151
  # represents signing certificates for this user.
154
152
  def signing_certificates
155
153
  SigningCertificateCollection.new(:user => self, :config => config)
156
154
  end
157
155
 
158
- # @return [MFADeviceCollection] Returns a collection that represents
156
+ # @return [MFADeviceCollection] Returns a collection that represents
159
157
  # all MFA devices assigned to this user.
160
158
  def mfa_devices
161
159
  MFADeviceCollection.new(self)
@@ -166,19 +164,18 @@ module AWS
166
164
  # Management Console}. The object returned by this method
167
165
  # allows you to set or delete the password. For example:
168
166
  #
169
- # user.login_profile.password = "TheNewPassword"
167
+ # user.login_profile.password = "TheNewPassword"
170
168
  #
171
- # @return [LoginProfile] Returns the login profile for this
172
- # user.
169
+ # @return [LoginProfile] Returns the login profile for this user.
173
170
  def login_profile
174
171
  LoginProfile.new(self)
175
172
  end
176
173
 
177
174
  # Returns a collection that represents the access keys for this user.
178
175
  #
179
- # user.access_keys.each do |access_key|
180
- # puts access_key.id
181
- # end
176
+ # user.access_keys.each do |access_key|
177
+ # puts access_key.id
178
+ # end
182
179
  #
183
180
  # @return [AccessKeyCollection] Returns a collection that represents all
184
181
  # access keys for this user.
@@ -186,9 +183,7 @@ module AWS
186
183
  AccessKeyCollection.new(:user => self)
187
184
  end
188
185
 
189
- # Returns a collection that includes all of the groups the user
190
- # is in.
191
- #
186
+ # Returns a collection that includes all of the groups the user is in.
192
187
  # @return [UserGroupCollection]
193
188
  def groups
194
189
  UserGroupCollection.new(self)
@@ -14,66 +14,66 @@
14
14
  module AWS
15
15
  class IAM
16
16
 
17
- # A collection that provides access to IAM users belonging to this
17
+ # A collection that provides access to IAM users belonging to this
18
18
  # account.
19
19
  #
20
- # iam = AWS::IAM.new
21
- # users = iam.users
20
+ # iam = AWS::IAM.new
21
+ # users = iam.users
22
22
  #
23
- # == Creating A User
23
+ # ## Creating A User
24
24
  #
25
25
  # To create an IAM user you need only provide a user name.
26
26
  #
27
- # user = users.create('username')
27
+ # user = users.create('username')
28
28
  #
29
- # You can also provide an optional +:path+ that can be used to organize
29
+ # You can also provide an optional `:path` that can be used to organize
30
30
  # users.
31
31
  #
32
- # user = users.create('johndoe', :path => '/staff/customer_support/')
32
+ # user = users.create('johndoe', :path => '/staff/customer_support/')
33
33
  #
34
- # == Getting a User by Name
34
+ # ## Getting a User by Name
35
35
  #
36
36
  # You can get a referene to a user by using array notation:
37
37
  #
38
- # user = users['username']
38
+ # user = users['username']
39
39
  #
40
- # == Enumerating Users
40
+ # ## Enumerating Users
41
41
  #
42
42
  # A user collection can also be used to enumerate users:
43
43
  #
44
- # users.each do |user|
45
- # puts user.name
46
- # end
44
+ # users.each do |user|
45
+ # puts user.name
46
+ # end
47
47
  #
48
- # == Path Prefixes
48
+ # ## Path Prefixes
49
49
  #
50
50
  # You can also find/enumerate users who's path begins with a given prefix:
51
51
  #
52
- # users.each(:path_prefix => '/staff/developers/ruby').each do |ruby_dev|
53
- # puts "#{ruby_dev.name} is awesome!"
54
- # end
52
+ # users.each(:path_prefix => '/staff/developers/ruby').each do |ruby_dev|
53
+ # puts "#{ruby_dev.name} is awesome!"
54
+ # end
55
55
  #
56
56
  class UserCollection
57
57
 
58
58
  include Collection::WithPrefix
59
59
 
60
60
  # @param [String] name Name of the user to create.
61
- # @option options [String] :path ('/') The path for the user name.
62
- # For more information about paths, see
63
- # {Identifiers for IAM Entities}[http://docs.amazonwebservices.com/IAM/latest/UserGuide/index.html?Using_Identifiers.html]
61
+ # @option options [String] :path ('/') The path for the user name.
62
+ # For more information about paths, see
63
+ # [Identifiers for IAM Entities](http://docs.amazonwebservices.com/IAM/latest/UserGuide/index.html?Using_Identifiers.html)
64
64
  # @return [User] Returns the newly created user.
65
65
  def create name, options = {}
66
66
  create_opts = {}
67
67
  create_opts[:user_name] = name
68
68
  create_opts[:path] = options[:path] if options[:path]
69
69
  resp = client.create_user(create_opts)
70
- User.new_from(:create_user, resp.user,
70
+ User.new_from(:create_user, resp.user,
71
71
  resp.user.user_name, :config => config)
72
72
  end
73
73
 
74
74
  # Returns a reference to the user with the given name:
75
75
  #
76
- # user = iam.users['username']
76
+ # user = iam.users['username']
77
77
  #
78
78
  # @param [String] name Name of the user to return a reference for.
79
79
  # @return [User] Returns a reference to the named user.
@@ -83,8 +83,8 @@ module AWS
83
83
 
84
84
  # Yields once for each user.
85
85
  #
86
- # You can limit the number of users yielded using +:limit+ and
87
- # +:path_prefix+.
86
+ # You can limit the number of users yielded using `:limit` and
87
+ # `:path_prefix`.
88
88
  #
89
89
  # @param [Hash] options
90
90
  #
@@ -104,9 +104,9 @@ module AWS
104
104
 
105
105
  # Returns an enumerable object for this collection. This can be
106
106
  # useful if you want to call an enumerable method that does
107
- # not accept options (e.g. +collect+, +first+, etc).
107
+ # not accept options (e.g. `collect`, `first`, etc).
108
108
  #
109
- # users.enumerator(:path_prefix => '/admin').collect(&:name)
109
+ # users.enumerator(:path_prefix => '/admin').collect(&:name)
110
110
  #
111
111
  # @param (see #each)
112
112
  # @option (see #each)
@@ -120,7 +120,7 @@ module AWS
120
120
  def each_item response, &block
121
121
  response.users.each do |item|
122
122
 
123
- user = User.new_from(:list_users, item,
123
+ user = User.new_from(:list_users, item,
124
124
  item.user_name, :config => config)
125
125
 
126
126
  yield(user)
@@ -17,9 +17,9 @@ module AWS
17
17
  # A collection that provides access to IAM groups to which a
18
18
  # particular user belongs.
19
19
  #
20
- # user = AWS::IAM.new.users.first
21
- # groups = user.groups
22
- # groups.each { |g| puts g.name }
20
+ # user = AWS::IAM.new.users.first
21
+ # groups = user.groups
22
+ # groups.each { |g| puts g.name }
23
23
  #
24
24
  class UserGroupCollection
25
25
 
@@ -18,12 +18,12 @@ module AWS
18
18
  # string keys and values that are instances of {Policy}. For
19
19
  # example:
20
20
  #
21
- # # add or replace a policy named "ReadOnly"
22
- # policy = AWS::IAM::Policy.new do |p|
23
- # # ...
24
- # end
25
- # user.policies["ReadOnly"] = policy
26
- # user.policies.has_key?("ReadOnly") # => true
21
+ # # add or replace a policy named "ReadOnly"
22
+ # policy = AWS::IAM::Policy.new do |p|
23
+ # # ...
24
+ # end
25
+ # user.policies["ReadOnly"] = policy
26
+ # user.policies.has_key?("ReadOnly") # => true
27
27
  #
28
28
  # All of the methods for this class are defined in the
29
29
  # {PolicyCollection} module.
@@ -16,14 +16,14 @@ require 'base64'
16
16
  module AWS
17
17
  class IAM
18
18
 
19
- # @attr_reader [String] base_32_string_seed The Base32 seed defined as
20
- # specified in RFC3548. Only accessible on newly created
19
+ # @attr_reader [String] base_32_string_seed The Base32 seed defined as
20
+ # specified in RFC3548. Only accessible on newly created
21
21
  # devices. This value is Base64-encoded.
22
- #
23
- # @attr_reader [Blob] qr_code_png A QR code PNG image that encodes
24
- # otpauth://totp/$virtualMFADeviceName@$AccountName? secret=$Base32String
25
- # where $virtualMFADeviceName is one of the create call arguments,
26
- # AccountName is the user name if set (accountId otherwise), and
22
+ #
23
+ # @attr_reader [Blob] qr_code_png A QR code PNG image that encodes
24
+ # otpauth://totp/$virtualMFADeviceName@$AccountName? secret=$Base32String
25
+ # where $virtualMFADeviceName is one of the create call arguments,
26
+ # AccountName is the user name if set (accountId otherwise), and
27
27
  # Base32String is the seed in Base32 format. Only accessible on newly
28
28
  # created devices. This value is Base64-encoded.
29
29
  #
@@ -61,13 +61,13 @@ module AWS
61
61
  end
62
62
  end
63
63
 
64
- # Enables the MFA device and associates it with the specified user.
65
- # When enabled, the MFA device is required for every subsequent login
64
+ # Enables the MFA device and associates it with the specified user.
65
+ # When enabled, the MFA device is required for every subsequent login
66
66
  # by the user name associated with the device.
67
67
  # @param [User,String] user The user (or user name string) you want
68
68
  # to enable this device for.
69
69
  # @param [String] code1 An authentication code emitted by the device.
70
- # @param [String] code2 A subsequent authentication code emitted by
70
+ # @param [String] code2 A subsequent authentication code emitted by
71
71
  # the device.
72
72
  def enable user, code1, code2
73
73
 
@@ -89,7 +89,7 @@ module AWS
89
89
  !!enable_date
90
90
  end
91
91
 
92
- # Deactivates the MFA device and removes it from association with
92
+ # Deactivates the MFA device and removes it from association with
93
93
  # the user for which it was originally enabled.
94
94
  # @return [nil]
95
95
  def deactivate
@@ -110,7 +110,7 @@ module AWS
110
110
 
111
111
  populates_from :create_virtual_mfa_device do |resp|
112
112
  if resp.virtual_mfa_device.serial_number == serial_number
113
- resp.virtual_mfa_device
113
+ resp.virtual_mfa_device
114
114
  end
115
115
  end
116
116