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
@@ -14,10 +14,10 @@
14
14
  module AWS
15
15
  class Route53
16
16
 
17
- # = Delete existing hosted zone
17
+ # # Delete existing hosted zone
18
18
  #
19
- # hosted_zone = AWS::Route53::HostedZone.new(hosted_zone_id)
20
- # hosted_zone.delete
19
+ # hosted_zone = AWS::Route53::HostedZone.new(hosted_zone_id)
20
+ # hosted_zone.delete
21
21
  #
22
22
  # @attr_reader [String] name The hosted zone name.
23
23
  #
@@ -84,7 +84,7 @@ module AWS
84
84
  end
85
85
  end
86
86
 
87
- # @return [Boolean] Returns +true+ if this hosted zone exists.
87
+ # @return [Boolean] Returns `true` if this hosted zone exists.
88
88
  def exists?
89
89
  get_resource.data[:hosted_zone][:id] == path
90
90
  end
@@ -16,15 +16,15 @@ require 'time'
16
16
  module AWS
17
17
  class Route53
18
18
 
19
- # = Create new hosted zone
19
+ # # Create new hosted zone
20
20
  #
21
- # r53 = AWS::Route53.new
22
- # hosted_zone = r53.hosted_zones.create('example.com.')
21
+ # r53 = AWS::Route53.new
22
+ # hosted_zone = r53.hosted_zones.create('example.com.')
23
23
  #
24
- # = Find existing hosted zone
24
+ # # Find existing hosted zone
25
25
  #
26
- # r53 = AWS::Route53.new
27
- # hosted_zone = r53.hosted_zones['example.com.']
26
+ # r53 = AWS::Route53.new
27
+ # hosted_zone = r53.hosted_zones['example.com.']
28
28
  #
29
29
  class HostedZoneCollection
30
30
 
@@ -83,7 +83,7 @@ module AWS
83
83
  resp.data[:hosted_zones].each do |details|
84
84
  hosted_zone = HostedZone.new_from(
85
85
  :list_hosted_zones,
86
- details,
86
+ details,
87
87
  details[:id],
88
88
  :config => config)
89
89
 
@@ -14,18 +14,18 @@
14
14
  module AWS
15
15
  class Route53
16
16
 
17
- # = Modify resource record set
17
+ # # Modify resource record set
18
18
  #
19
- # rrsets = AWS::Route53::HostedZone.new(hosted_zone_id).rrsets
20
- # rrset = rrsets['foo.example.com.', 'A']
21
- # rrset.ttl = 3600
22
- # rrset.update
19
+ # rrsets = AWS::Route53::HostedZone.new(hosted_zone_id).rrsets
20
+ # rrset = rrsets['foo.example.com.', 'A']
21
+ # rrset.ttl = 3600
22
+ # rrset.update
23
23
  #
24
- # = Delete existing resource record set
24
+ # # Delete existing resource record set
25
25
  #
26
- # rrsets = AWS::Route53::HostedZone.new(hosted_zone_id).rrsets
27
- # rrset = rrsets['foo.example.com.', 'A']
28
- # rrset.delete
26
+ # rrsets = AWS::Route53::HostedZone.new(hosted_zone_id).rrsets
27
+ # rrset = rrsets['foo.example.com.', 'A']
28
+ # rrset.delete
29
29
  #
30
30
  # @attr_reader [Hash] alias_target
31
31
  #
@@ -137,7 +137,7 @@ module AWS
137
137
  }
138
138
  end
139
139
 
140
- # @return [Boolean] Returns +true+ if this rrset exists.
140
+ # @return [Boolean] Returns `true` if this rrset exists.
141
141
  def exists?
142
142
  !get_resource.data[:resource_record_sets].find { |details|
143
143
  if set_identifier
@@ -16,15 +16,15 @@ require 'time'
16
16
  module AWS
17
17
  class Route53
18
18
 
19
- # = Create new resource record set
19
+ # # Create new resource record set
20
20
  #
21
- # rrsets = AWS::Route53::HostedZone.new(hosted_zone_id).rrsets
22
- # rrset = rrsets.create('foo.example.com.', 'A', :ttl => 300, :resource_records => [{:value => '127.0.0.1'}])
21
+ # rrsets = AWS::Route53::HostedZone.new(hosted_zone_id).rrsets
22
+ # rrset = rrsets.create('foo.example.com.', 'A', :ttl => 300, :resource_records => [{:value => '127.0.0.1'}])
23
23
  #
24
- # = Find existing resource record set
24
+ # # Find existing resource record set
25
25
  #
26
- # rrsets = AWS::Route53::HostedZone.new(hosted_zone_id).rrsets
27
- # rrset = rrsets['foo.example.com.', 'A']
26
+ # rrsets = AWS::Route53::HostedZone.new(hosted_zone_id).rrsets
27
+ # rrset = rrsets['foo.example.com.', 'A']
28
28
  #
29
29
  class ResourceRecordSetCollection
30
30
 
@@ -18,134 +18,134 @@ module AWS
18
18
 
19
19
  # Provides an expressive, object-oriented interface to Amazon S3.
20
20
  #
21
- # To use Amazon S3 you must first
22
- # {sign up here}[http://aws.amazon.com/s3/].
21
+ # To use Amazon S3 you must first
22
+ # [sign up here](http://aws.amazon.com/s3/).
23
23
  #
24
24
  # For more information about Amazon S3, see:
25
25
  #
26
- # * {Amazon S3}[http://aws.amazon.com/s3/]
27
- # * {Amazon S3 Documentation}[http://aws.amazon.com/documentation/s3/]
26
+ # * [Amazon S3](http://aws.amazon.com/s3/)
27
+ # * [Amazon S3 Documentation](http://aws.amazon.com/documentation/s3/)
28
28
  #
29
- # = Credentials
29
+ # # Credentials
30
30
  #
31
- # You can setup default credentials for all AWS services via
31
+ # You can setup default credentials for all AWS services via
32
32
  # AWS.config:
33
33
  #
34
- # AWS.config(
35
- # :access_key_id => 'YOUR_ACCESS_KEY_ID',
36
- # :secret_access_key => 'YOUR_SECRET_ACCESS_KEY')
34
+ # AWS.config(
35
+ # :access_key_id => 'YOUR_ACCESS_KEY_ID',
36
+ # :secret_access_key => 'YOUR_SECRET_ACCESS_KEY')
37
37
  #
38
38
  # Or you can set them directly on the S3 interface:
39
39
  #
40
- # s3 = AWS::S3.new(
41
- # :access_key_id => 'YOUR_ACCESS_KEY_ID',
42
- # :secret_access_key => 'YOUR_SECRET_ACCESS_KEY')
40
+ # s3 = AWS::S3.new(
41
+ # :access_key_id => 'YOUR_ACCESS_KEY_ID',
42
+ # :secret_access_key => 'YOUR_SECRET_ACCESS_KEY')
43
43
  #
44
- # = Buckets
44
+ # # Buckets
45
45
  #
46
46
  # Before you can upload files to S3, you need to create a bucket.
47
47
  #
48
- # s3 = AWS::S3.new
49
- # bucket = s3.buckets.create('my-bucket')
48
+ # s3 = AWS::S3.new
49
+ # bucket = s3.buckets.create('my-bucket')
50
50
  #
51
51
  # If a bucket already exists, you can get a reference to the bucket.
52
52
  #
53
- # bucket = s3.buckets['my-bucket'] # no request made
53
+ # bucket = s3.buckets['my-bucket'] # no request made
54
54
  #
55
55
  # You can also enumerate all buckets in your account.
56
56
  #
57
- # s3.buckets.each do |bucket|
58
- # puts bucket.name
59
- # end
57
+ # s3.buckets.each do |bucket|
58
+ # puts bucket.name
59
+ # end
60
60
  #
61
- # See {BucketCollection} and {Bucket} for more information on working
61
+ # See {BucketCollection} and {Bucket} for more information on working
62
62
  # with buckets.
63
63
  #
64
- # = Objects
64
+ # # Objects
65
65
  #
66
66
  # Buckets contain objects. Each object in a bucket has a unique key.
67
67
  #
68
- # == Getting an Object
68
+ # ## Getting an Object
69
69
  #
70
70
  # If the object already exists, you can get a reference to the object.
71
71
  #
72
- # # makes no request, returns an AWS::S3::S3Object
73
- # obj = bucket.objects['key']
72
+ # # makes no request, returns an AWS::S3::S3Object
73
+ # obj = bucket.objects['key']
74
74
  #
75
- # == Reading and Writing an Object
75
+ # ## Reading and Writing an Object
76
76
  #
77
- # The example above returns an {S3Object}. You call {S3Object#write} and
77
+ # The example above returns an {S3Object}. You call {S3Object#write} and
78
78
  # {S3Object#read} to upload to and download from S3 respectively.
79
79
  #
80
- # # streaming upload a file to S3
81
- # obj.write(Pathname.new('/path/to/file.txt'))
80
+ # # streaming upload a file to S3
81
+ # obj.write(Pathname.new('/path/to/file.txt'))
82
82
  #
83
- # # streaming download from S3 to a file on disk
84
- # File.open('file.txt', 'w') do |file|
85
- # obj.read do |chunk|
86
- # file.write(chunk)
83
+ # # streaming download from S3 to a file on disk
84
+ # File.open('file.txt', 'w') do |file|
85
+ # obj.read do |chunk|
86
+ # file.write(chunk)
87
+ # end
87
88
  # end
88
- # end
89
89
  #
90
- # == Enumerating Objects
90
+ # ## Enumerating Objects
91
91
  #
92
92
  # You can enumerate objects in your buckets.
93
93
  #
94
- # # enumerate ALL objects in the bucket (even if the bucket contains
95
- # # more than 1k objects)
96
- # bucket.objects.each do |obj|
97
- # puts obj.key
98
- # end
94
+ # # enumerate ALL objects in the bucket (even if the bucket contains
95
+ # # more than 1k objects)
96
+ # bucket.objects.each do |obj|
97
+ # puts obj.key
98
+ # end
99
99
  #
100
- # # enumerate at most 20 objects with the given prefix
101
- # bucket.objects.with_prefix('photos/').each(:limit => 20) do |photo|
102
- # puts photo.key
103
- # end
100
+ # # enumerate at most 20 objects with the given prefix
101
+ # bucket.objects.with_prefix('photos/').each(:limit => 20) do |photo|
102
+ # puts photo.key
103
+ # end
104
104
  #
105
105
  # See {ObjectCollection} and {S3Object} for more information on working
106
106
  # with objects.
107
107
  #
108
108
  class S3
109
109
 
110
- AWS.register_autoloads(self) do
111
- autoload :AccessControlList, 'access_control_list'
112
- autoload :ACLObject, 'acl_object'
113
- autoload :ACLOptions, 'acl_options'
114
- autoload :Bucket, 'bucket'
115
- autoload :BucketCollection, 'bucket_collection'
116
- autoload :BucketTagCollection, 'bucket_tag_collection'
117
- autoload :BucketLifecycleConfiguration, 'bucket_lifecycle_configuration'
118
- autoload :BucketVersionCollection, 'bucket_version_collection'
119
- autoload :Client, 'client'
120
- autoload :CORSRule, 'cors_rule'
121
- autoload :CORSRuleCollection, 'cors_rule_collection'
122
- autoload :DataOptions, 'data_options'
123
- autoload :EncryptionUtils, 'encryption_utils'
124
- autoload :CipherIO, 'cipher_io'
125
- autoload :Errors, 'errors'
126
- autoload :MultipartUpload, 'multipart_upload'
127
- autoload :MultipartUploadCollection, 'multipart_upload_collection'
128
- autoload :ObjectCollection, 'object_collection'
129
- autoload :ObjectMetadata, 'object_metadata'
130
- autoload :ObjectUploadCollection, 'object_upload_collection'
131
- autoload :ObjectVersion, 'object_version'
132
- autoload :ObjectVersionCollection, 'object_version_collection'
133
- autoload :PaginatedCollection, 'paginated_collection'
134
- autoload :Policy, 'policy'
135
- autoload :PrefixAndDelimiterCollection, 'prefix_and_delimiter_collection'
136
- autoload :PrefixedCollection, 'prefixed_collection'
137
- autoload :PresignedPost, 'presigned_post'
138
- autoload :Request, 'request'
139
- autoload :S3Object, 's3_object'
140
- autoload :Tree, 'tree'
141
- autoload :UploadedPart, 'uploaded_part'
142
- autoload :UploadedPartCollection, 'uploaded_part_collection'
143
- autoload :WebsiteConfiguration, 'website_configuration'
144
- end
110
+ autoload :AccessControlList, 'aws/s3/access_control_list'
111
+ autoload :ACLObject, 'aws/s3/acl_object'
112
+ autoload :ACLOptions, 'aws/s3/acl_options'
113
+ autoload :Bucket, 'aws/s3/bucket'
114
+ autoload :BucketCollection, 'aws/s3/bucket_collection'
115
+ autoload :BucketTagCollection, 'aws/s3/bucket_tag_collection'
116
+ autoload :BucketLifecycleConfiguration, 'aws/s3/bucket_lifecycle_configuration'
117
+ autoload :BucketVersionCollection, 'aws/s3/bucket_version_collection'
118
+ autoload :Client, 'aws/s3/client'
119
+ autoload :CORSRule, 'aws/s3/cors_rule'
120
+ autoload :CORSRuleCollection, 'aws/s3/cors_rule_collection'
121
+ autoload :DataOptions, 'aws/s3/data_options'
122
+ autoload :EncryptionUtils, 'aws/s3/encryption_utils'
123
+ autoload :CipherIO, 'aws/s3/cipher_io'
124
+ autoload :Errors, 'aws/s3/errors'
125
+ autoload :MultipartUpload, 'aws/s3/multipart_upload'
126
+ autoload :MultipartUploadCollection, 'aws/s3/multipart_upload_collection'
127
+ autoload :ObjectCollection, 'aws/s3/object_collection'
128
+ autoload :ObjectMetadata, 'aws/s3/object_metadata'
129
+ autoload :ObjectUploadCollection, 'aws/s3/object_upload_collection'
130
+ autoload :ObjectVersion, 'aws/s3/object_version'
131
+ autoload :ObjectVersionCollection, 'aws/s3/object_version_collection'
132
+ autoload :PaginatedCollection, 'aws/s3/paginated_collection'
133
+ autoload :Policy, 'aws/s3/policy'
134
+ autoload :PrefixAndDelimiterCollection, 'aws/s3/prefix_and_delimiter_collection'
135
+ autoload :PrefixedCollection, 'aws/s3/prefixed_collection'
136
+ autoload :PresignedPost, 'aws/s3/presigned_post'
137
+ autoload :Request, 'aws/s3/request'
138
+ autoload :S3Object, 'aws/s3/s3_object'
139
+ autoload :Tree, 'aws/s3/tree'
140
+ autoload :UploadedPart, 'aws/s3/uploaded_part'
141
+ autoload :UploadedPartCollection, 'aws/s3/uploaded_part_collection'
142
+ autoload :WebsiteConfiguration, 'aws/s3/website_configuration'
145
143
 
146
144
  include Core::ServiceInterface
147
145
 
148
- # @return [BucketCollection] Returns a collection that represents all
146
+ endpoint_prefix 's3'
147
+
148
+ # @return [BucketCollection] Returns a collection that represents all
149
149
  # buckets in the account.
150
150
  def buckets
151
151
  BucketCollection.new(:config => @config)
@@ -16,20 +16,20 @@ module AWS
16
16
 
17
17
  # Represents an access control list for S3 objects and buckets. For example:
18
18
  #
19
- # acl = AccessControlList.new
20
- # acl.grant(:full_control).
21
- # to(:canonical_user_id => "8a6925ce4adf588a4f21c32aa379004fef")
22
- # acl.to_xml # => '<AccessControlPolicy>...'
19
+ # acl = AccessControlList.new
20
+ # acl.grant(:full_control).
21
+ # to(:canonical_user_id => "8a6925ce4adf588a4f21c32aa379004fef")
22
+ # acl.to_xml # => '<AccessControlPolicy>...'
23
23
  #
24
24
  # You can also construct an AccessControlList from a hash:
25
25
  #
26
- # AccessControlList.new(
27
- # :owner => { :id => "8a6925ce4adf588a4f21c32aa379004fef" },
28
- # :grants => [{ :grantee => {
29
- # :canonical_user_id => "8a6925ce4adf588a4f21c32aa379004fef",
30
- # },
31
- # :permission => :full_control }]
32
- # )
26
+ # AccessControlList.new(
27
+ # :owner => { :id => "8a6925ce4adf588a4f21c32aa379004fef" },
28
+ # :grants => [{
29
+ # :grantee => { :canonical_user_id => "8a6925ce4adf588a4f21c32aa379004fef" },
30
+ # :permission => :full_control,
31
+ # }]
32
+ # )
33
33
  #
34
34
  # @see ACLObject
35
35
  #
@@ -40,9 +40,11 @@ module AWS
40
40
  #
41
41
  # @attr [list of AccessControlList::Grant] grants The list of
42
42
  # grants. You can set this as a list of hashes, for example:
43
- # acl.grants = [{ :grantee => { :canonical_user_id =>
44
- # "8a6925ce4adf588a4f21c32aa379004fef" },
45
- # :permission => :full_control }]
43
+ #
44
+ # acl.grants = [{
45
+ # :grantee => { :canonical_user_id => "8a6925ce4adf588a4f21c32aa379004fef" },
46
+ # :permission => :full_control,
47
+ # }]
46
48
  class AccessControlList
47
49
 
48
50
  # Represents an ACL owner. In the default ACL, this is the
@@ -67,22 +69,25 @@ module AWS
67
69
  # you read an ACL from S3, all grantees will be identified
68
70
  # this way, and the display_name attribute will also be provided.
69
71
  #
70
- # Grantee.new(:canonical_user_id => "8a6925ce4adf588a4f21c32aa379004fef")
72
+ # Grantee.new(:canonical_user_id => "8a6925ce4adf588a4f21c32aa379004fef")
71
73
  #
72
74
  # * You can specify the e-mail address of an AWS customer, for example:
73
- # Grantee.new(:amazon_customer_email => 'foo@example.com')
75
+ #
76
+ # Grantee.new(:amazon_customer_email => 'foo@example.com')
74
77
  #
75
78
  # * You can specify a group URI, for example:
76
- # Grantee.new(:group_uri => 'http://acs.amazonaws.com/groups/global/AllUsers')
79
+ #
80
+ # Grantee.new(:group_uri => 'http://acs.amazonaws.com/groups/global/AllUsers')
81
+ #
77
82
  # For more details about group URIs, see:
78
83
  # http://docs.amazonwebservices.com/AmazonS3/latest/dev/ACLOverview.html
79
84
  #
80
85
  # When constructing a grantee, you must provide a value for
81
86
  # exactly one of the following attributes:
82
87
  #
83
- # * +amazon_customer_email+
84
- # * +canonical_user_id+
85
- # * +group_uri+
88
+ # * `amazon_customer_email`
89
+ # * `canonical_user_id`
90
+ # * `group_uri`
86
91
  #
87
92
  # @attr [String] amazon_customer_email The e-mail address of
88
93
  # an AWS customer.
@@ -137,7 +142,7 @@ module AWS
137
142
 
138
143
  # @private
139
144
  def type_for_attr(attr)
140
- {
145
+ {
141
146
  :amazon_customer_email => "AmazonCustomerByEmail",
142
147
  :canonical_user_id => "CanonicalUser",
143
148
  :group_uri => "Group",
@@ -156,7 +161,7 @@ module AWS
156
161
 
157
162
  # The permission expressed as a symbol following Ruby
158
163
  # conventions. For example, S3's FULL_CONTROL permission
159
- # will be returned as +:full_control+.
164
+ # will be returned as `:full_control`.
160
165
  attr_reader :name
161
166
 
162
167
  # @private
@@ -172,8 +177,8 @@ module AWS
172
177
 
173
178
  end
174
179
 
175
- # Represents a single grant in an ACL. Both +grantee+ and
176
- # +permission+ are required for each grant when setting an
180
+ # Represents a single grant in an ACL. Both `grantee` and
181
+ # `permission` are required for each grant when setting an
177
182
  # ACL.
178
183
  #
179
184
  # See
@@ -184,15 +189,16 @@ module AWS
184
189
  # @attr [Grantee] grantee The user or users who are granted
185
190
  # access according to this grant. You can specify this as a
186
191
  # hash:
187
- # grant.grantee = { :amazon_customer_email => "foo@example.com" }
192
+ #
193
+ # grant.grantee = { :amazon_customer_email => "foo@example.com" }
188
194
  #
189
195
  # @attr [Permission or Symbol] permission The type of
190
196
  # permission that is granted by this grant. Valid values are:
191
- # * +:read+
192
- # * +:write+
193
- # * +:read_acp+
194
- # * +:write_acp+
195
- # * +:full_control+
197
+ # * `:read`
198
+ # * `:write`
199
+ # * `:read_acp`
200
+ # * `:write_acp`
201
+ # * `:full_control`
196
202
  class Grant
197
203
 
198
204
  include ACLObject
@@ -226,7 +232,8 @@ module AWS
226
232
  #
227
233
  # @param [Grantee or Hash] grantee A Grantee object or hash;
228
234
  # for example:
229
- # acl.grant(:full_control).to(:amazon_customer_email => "foo@example.com")
235
+ #
236
+ # acl.grant(:full_control).to(:amazon_customer_email => "foo@example.com")
230
237
  def to(grantee)
231
238
  @grant.grantee = grantee
232
239
  @acl.grants << @grant
@@ -235,12 +242,13 @@ module AWS
235
242
  end
236
243
 
237
244
  # Convenience method for constructing a new grant and adding
238
- # it to the ACL. Example usage:
245
+ # it to the ACL.
246
+ #
247
+ # @example
239
248
  #
240
- # acl.grants.size # => 0
241
- # acl.grant(:full_control).
242
- # to(:canonical_user_id => "8a6925ce4adf588a4f21c32aa379004fef")
243
- # acl.grants.size # => 1
249
+ # acl.grants.size # => 0
250
+ # acl.grant(:full_control).to(:canonical_user_id => "8a6925ce4adf588a4f21c32aa379004fef")
251
+ # acl.grants.size # => 1
244
252
  #
245
253
  # @return [GrantBuilder]
246
254
  def grant(permission)