aws-sdk 1.1.3 → 1.1.4

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 (233) hide show
  1. data/ca-bundle.crt +2 -348
  2. data/lib/aws.rb +24 -49
  3. data/lib/aws/{common.rb → core.rb} +120 -9
  4. data/lib/aws/{api_config.rb → core/api_config.rb} +19 -20
  5. data/lib/aws/core/api_config_transform.rb +36 -0
  6. data/lib/aws/core/async_handle.rb +91 -0
  7. data/lib/aws/core/authorize_v2.rb +39 -0
  8. data/lib/aws/{authorize_v3.rb → core/authorize_v3.rb} +16 -15
  9. data/lib/aws/{api_config_transform.rb → core/authorize_with_session_token.rb} +9 -12
  10. data/lib/aws/core/autoloader.rb +64 -0
  11. data/lib/aws/core/cacheable.rb +78 -0
  12. data/lib/aws/core/client.rb +471 -0
  13. data/lib/aws/core/client_logging.rb +125 -0
  14. data/lib/aws/core/collections.rb +229 -0
  15. data/lib/aws/core/configuration.rb +358 -0
  16. data/lib/aws/core/configured_client_methods.rb +76 -0
  17. data/lib/aws/core/configured_grammars.rb +63 -0
  18. data/lib/aws/{configured_option_grammars.rb → core/configured_option_grammars.rb} +18 -20
  19. data/lib/aws/{configured_xml_grammars.rb → core/configured_xml_grammars.rb} +19 -21
  20. data/lib/aws/core/default_signer.rb +67 -0
  21. data/lib/aws/core/http/curb_handler.rb +129 -0
  22. data/lib/aws/core/http/handler.rb +77 -0
  23. data/lib/aws/core/http/httparty_handler.rb +113 -0
  24. data/lib/aws/core/http/net_http_handler.rb +124 -0
  25. data/lib/aws/core/http/request.rb +207 -0
  26. data/lib/aws/core/http/response.rb +73 -0
  27. data/lib/aws/{ignore_result_element.rb → core/ignore_result_element.rb} +14 -18
  28. data/lib/aws/core/indifferent_hash.rb +88 -0
  29. data/lib/aws/core/inflection.rb +47 -0
  30. data/lib/aws/core/lazy_error_classes.rb +62 -0
  31. data/lib/aws/{uri_escape.rb → core/meta_utils.rb} +24 -23
  32. data/lib/aws/core/model.rb +57 -0
  33. data/lib/aws/{authorize_with_session_token.rb → core/naming.rb} +9 -8
  34. data/lib/aws/core/option_grammar.rb +562 -0
  35. data/lib/aws/core/policy.rb +914 -0
  36. data/lib/aws/core/resource.rb +380 -0
  37. data/lib/aws/core/resource_cache.rb +40 -0
  38. data/lib/aws/core/response.rb +125 -0
  39. data/lib/aws/core/response_cache.rb +50 -0
  40. data/lib/aws/core/service_interface.rb +60 -0
  41. data/lib/aws/core/uri_escape.rb +46 -0
  42. data/lib/aws/core/xml_grammar.rb +926 -0
  43. data/lib/aws/ec2.rb +47 -16
  44. data/lib/aws/ec2/attachment.rb +0 -2
  45. data/lib/aws/ec2/attachment_collection.rb +1 -6
  46. data/lib/aws/ec2/availability_zone.rb +0 -2
  47. data/lib/aws/ec2/availability_zone_collection.rb +0 -3
  48. data/lib/aws/ec2/client.rb +6 -9
  49. data/lib/aws/ec2/client/xml.rb +3 -6
  50. data/lib/aws/ec2/collection.rb +1 -4
  51. data/lib/aws/ec2/config.rb +18 -0
  52. data/lib/aws/ec2/elastic_ip.rb +0 -2
  53. data/lib/aws/ec2/elastic_ip_collection.rb +0 -4
  54. data/lib/aws/ec2/errors.rb +1 -4
  55. data/lib/aws/ec2/has_permissions.rb +0 -2
  56. data/lib/aws/ec2/image.rb +0 -5
  57. data/lib/aws/ec2/image_collection.rb +0 -6
  58. data/lib/aws/ec2/instance.rb +23 -9
  59. data/lib/aws/ec2/instance_collection.rb +85 -22
  60. data/lib/aws/ec2/key_pair.rb +0 -2
  61. data/lib/aws/ec2/key_pair_collection.rb +1 -4
  62. data/lib/aws/ec2/permission_collection.rb +2 -5
  63. data/lib/aws/ec2/region.rb +0 -2
  64. data/lib/aws/ec2/region_collection.rb +0 -4
  65. data/lib/aws/ec2/request.rb +4 -9
  66. data/lib/aws/ec2/reserved_instances.rb +0 -3
  67. data/lib/aws/ec2/reserved_instances_collection.rb +0 -4
  68. data/lib/aws/ec2/reserved_instances_offering.rb +0 -3
  69. data/lib/aws/ec2/reserved_instances_offering_collection.rb +0 -4
  70. data/lib/aws/ec2/resource.rb +3 -5
  71. data/lib/aws/ec2/resource_tag_collection.rb +1 -6
  72. data/lib/aws/ec2/security_group.rb +204 -72
  73. data/lib/aws/ec2/security_group/egress_ip_permission_collection.rb +53 -0
  74. data/lib/aws/ec2/security_group/ip_permission.rb +92 -10
  75. data/lib/aws/ec2/security_group/ip_permission_collection.rb +14 -15
  76. data/lib/aws/ec2/security_group_collection.rb +11 -8
  77. data/lib/aws/ec2/snapshot.rb +0 -4
  78. data/lib/aws/ec2/snapshot_collection.rb +0 -4
  79. data/lib/aws/ec2/tag.rb +0 -3
  80. data/lib/aws/ec2/tag_collection.rb +1 -8
  81. data/lib/aws/ec2/tagged_item.rb +1 -3
  82. data/lib/aws/ec2/volume.rb +0 -6
  83. data/lib/aws/ec2/volume_collection.rb +0 -4
  84. data/lib/aws/errors.rb +0 -3
  85. data/lib/aws/iam.rb +33 -12
  86. data/lib/aws/iam/access_key.rb +0 -3
  87. data/lib/aws/iam/access_key_collection.rb +0 -3
  88. data/lib/aws/iam/account_alias_collection.rb +0 -2
  89. data/lib/aws/iam/client.rb +6 -8
  90. data/lib/aws/iam/client/xml.rb +4 -8
  91. data/lib/aws/iam/collection.rb +2 -5
  92. data/lib/aws/iam/config.rb +18 -0
  93. data/lib/aws/iam/errors.rb +2 -4
  94. data/lib/aws/iam/group.rb +0 -5
  95. data/lib/aws/iam/group_collection.rb +0 -3
  96. data/lib/aws/iam/group_policy_collection.rb +0 -2
  97. data/lib/aws/iam/group_user_collection.rb +1 -4
  98. data/lib/aws/iam/login_profile.rb +0 -2
  99. data/lib/aws/iam/mfa_device.rb +1 -3
  100. data/lib/aws/iam/mfa_device_collection.rb +0 -3
  101. data/lib/aws/iam/policy.rb +2 -4
  102. data/lib/aws/iam/policy_collection.rb +0 -3
  103. data/lib/aws/iam/request.rb +3 -7
  104. data/lib/aws/iam/resource.rb +1 -4
  105. data/lib/aws/iam/server_certificate.rb +0 -2
  106. data/lib/aws/iam/server_certificate_collection.rb +0 -3
  107. data/lib/aws/iam/signing_certificate.rb +0 -2
  108. data/lib/aws/iam/signing_certificate_collection.rb +0 -3
  109. data/lib/aws/iam/user.rb +0 -7
  110. data/lib/aws/iam/user_collection.rb +0 -3
  111. data/lib/aws/iam/user_group_collection.rb +0 -3
  112. data/lib/aws/iam/user_policy.rb +0 -2
  113. data/lib/aws/iam/user_policy_collection.rb +0 -3
  114. data/lib/aws/rails.rb +5 -4
  115. data/lib/aws/record.rb +4 -1
  116. data/lib/aws/record/base.rb +3 -2
  117. data/lib/aws/record/errors.rb +1 -3
  118. data/lib/aws/s3.rb +31 -6
  119. data/lib/aws/s3/access_control_list.rb +0 -2
  120. data/lib/aws/s3/acl_object.rb +10 -12
  121. data/lib/aws/s3/bucket.rb +1 -9
  122. data/lib/aws/s3/bucket_collection.rb +2 -5
  123. data/lib/aws/s3/bucket_version_collection.rb +1 -5
  124. data/lib/aws/s3/client.rb +34 -37
  125. data/lib/aws/s3/client/xml.rb +11 -14
  126. data/lib/aws/{resource_cache.rb → s3/config.rb} +6 -20
  127. data/lib/aws/s3/errors.rb +6 -7
  128. data/lib/aws/s3/multipart_upload.rb +1 -4
  129. data/lib/aws/s3/multipart_upload_collection.rb +1 -6
  130. data/lib/aws/s3/object_collection.rb +1 -5
  131. data/lib/aws/s3/object_metadata.rb +1 -3
  132. data/lib/aws/s3/object_upload_collection.rb +1 -7
  133. data/lib/aws/s3/object_version.rb +1 -4
  134. data/lib/aws/s3/object_version_collection.rb +1 -4
  135. data/lib/aws/s3/policy.rb +3 -5
  136. data/lib/aws/s3/prefix_and_delimiter_collection.rb +0 -2
  137. data/lib/aws/s3/prefixed_collection.rb +0 -2
  138. data/lib/aws/s3/presigned_post.rb +1 -3
  139. data/lib/aws/s3/request.rb +2 -5
  140. data/lib/aws/s3/s3_object.rb +1 -8
  141. data/lib/aws/s3/tree.rb +8 -6
  142. data/lib/aws/s3/tree/branch_node.rb +0 -3
  143. data/lib/aws/s3/tree/child_collection.rb +1 -5
  144. data/lib/aws/s3/tree/leaf_node.rb +0 -5
  145. data/lib/aws/s3/tree/parent.rb +1 -4
  146. data/lib/aws/s3/uploaded_part.rb +1 -3
  147. data/lib/aws/s3/uploaded_part_collection.rb +1 -5
  148. data/lib/aws/simple_db.rb +21 -6
  149. data/lib/aws/simple_db/attribute.rb +1 -6
  150. data/lib/aws/simple_db/attribute_collection.rb +1 -7
  151. data/lib/aws/simple_db/client.rb +7 -9
  152. data/lib/aws/simple_db/client/options.rb +2 -4
  153. data/lib/aws/simple_db/client/xml.rb +5 -10
  154. data/lib/aws/{naming.rb → simple_db/config.rb} +3 -14
  155. data/lib/aws/simple_db/delete_attributes.rb +0 -2
  156. data/lib/aws/simple_db/domain.rb +1 -6
  157. data/lib/aws/simple_db/domain_collection.rb +1 -4
  158. data/lib/aws/simple_db/domain_metadata.rb +1 -3
  159. data/lib/aws/simple_db/errors.rb +1 -4
  160. data/lib/aws/simple_db/item.rb +1 -7
  161. data/lib/aws/simple_db/item_collection.rb +22 -23
  162. data/lib/aws/simple_db/put_attributes.rb +0 -2
  163. data/lib/aws/simple_db/request.rb +3 -7
  164. data/lib/aws/simple_email_service.rb +11 -6
  165. data/lib/aws/simple_email_service/client.rb +7 -9
  166. data/lib/aws/simple_email_service/client/options.rb +3 -6
  167. data/lib/aws/simple_email_service/client/xml.rb +4 -8
  168. data/lib/aws/simple_email_service/config.rb +19 -0
  169. data/lib/aws/simple_email_service/email_address_collection.rb +1 -3
  170. data/lib/aws/simple_email_service/errors.rb +1 -4
  171. data/lib/aws/simple_email_service/quotas.rb +1 -3
  172. data/lib/aws/simple_email_service/request.rb +3 -7
  173. data/lib/aws/sns.rb +15 -8
  174. data/lib/aws/sns/client.rb +7 -8
  175. data/lib/aws/sns/client/options.rb +3 -6
  176. data/lib/aws/sns/client/xml.rb +4 -8
  177. data/lib/aws/sns/config.rb +18 -0
  178. data/lib/aws/sns/errors.rb +1 -4
  179. data/lib/aws/sns/policy.rb +3 -5
  180. data/lib/aws/sns/request.rb +4 -9
  181. data/lib/aws/sns/subscription.rb +1 -5
  182. data/lib/aws/sns/subscription_collection.rb +1 -5
  183. data/lib/aws/sns/topic.rb +1 -6
  184. data/lib/aws/sns/topic_collection.rb +1 -4
  185. data/lib/aws/sns/topic_subscription_collection.rb +1 -4
  186. data/lib/aws/sqs.rb +14 -5
  187. data/lib/aws/sqs/client.rb +6 -9
  188. data/lib/aws/sqs/client/xml.rb +4 -7
  189. data/lib/aws/sqs/config.rb +18 -0
  190. data/lib/aws/sqs/errors.rb +1 -4
  191. data/lib/aws/sqs/policy.rb +3 -5
  192. data/lib/aws/sqs/queue.rb +2 -7
  193. data/lib/aws/sqs/queue_collection.rb +4 -5
  194. data/lib/aws/sqs/received_message.rb +1 -3
  195. data/lib/aws/sqs/received_sns_message.rb +2 -2
  196. data/lib/aws/sqs/request.rb +4 -7
  197. data/lib/aws/sts.rb +12 -6
  198. data/lib/aws/sts/client.rb +6 -8
  199. data/lib/aws/sts/client/xml.rb +4 -8
  200. data/lib/aws/sts/config.rb +18 -0
  201. data/lib/aws/sts/errors.rb +1 -4
  202. data/lib/aws/sts/federated_session.rb +0 -2
  203. data/lib/aws/sts/policy.rb +3 -5
  204. data/lib/aws/sts/request.rb +3 -7
  205. metadata +60 -50
  206. data/lib/aws/async_handle.rb +0 -90
  207. data/lib/aws/authorize_v2.rb +0 -37
  208. data/lib/aws/base_client.rb +0 -488
  209. data/lib/aws/cacheable.rb +0 -79
  210. data/lib/aws/client_logging.rb +0 -122
  211. data/lib/aws/collections.rb +0 -230
  212. data/lib/aws/configuration.rb +0 -357
  213. data/lib/aws/configured_client_methods.rb +0 -81
  214. data/lib/aws/configured_grammars.rb +0 -65
  215. data/lib/aws/default_signer.rb +0 -65
  216. data/lib/aws/http/curb_handler.rb +0 -127
  217. data/lib/aws/http/handler.rb +0 -77
  218. data/lib/aws/http/httparty_handler.rb +0 -103
  219. data/lib/aws/http/request.rb +0 -165
  220. data/lib/aws/http/request_param.rb +0 -64
  221. data/lib/aws/http/response.rb +0 -72
  222. data/lib/aws/indifferent_hash.rb +0 -86
  223. data/lib/aws/inflection.rb +0 -46
  224. data/lib/aws/lazy_error_classes.rb +0 -64
  225. data/lib/aws/meta_utils.rb +0 -43
  226. data/lib/aws/model.rb +0 -57
  227. data/lib/aws/option_grammar.rb +0 -565
  228. data/lib/aws/policy.rb +0 -914
  229. data/lib/aws/resource.rb +0 -381
  230. data/lib/aws/response.rb +0 -125
  231. data/lib/aws/response_cache.rb +0 -50
  232. data/lib/aws/service_interface.rb +0 -60
  233. data/lib/aws/xml_grammar.rb +0 -925
@@ -11,10 +11,6 @@
11
11
  # ANY KIND, either express or implied. See the License for the specific
12
12
  # language governing permissions and limitations under the License.
13
13
 
14
- require 'aws/model'
15
- require 'aws/sns/subscription'
16
- require 'aws/sns/topic'
17
-
18
14
  module AWS
19
15
  class SNS
20
16
 
@@ -29,7 +25,7 @@ module AWS
29
25
  #
30
26
  class SubscriptionCollection
31
27
 
32
- include Model
28
+ include Core::Model
33
29
  include Enumerable
34
30
 
35
31
  # Yield each subscription belonging to this account.
@@ -12,18 +12,13 @@
12
12
  # language governing permissions and limitations under the License.
13
13
 
14
14
  require 'json'
15
- require 'aws/model'
16
- require 'aws/sns/policy'
17
- require 'aws/sns/subscription'
18
- require 'aws/sns/topic_subscription_collection'
19
- require 'aws/sqs'
20
15
 
21
16
  module AWS
22
17
  class SNS
23
18
 
24
19
  class Topic
25
20
 
26
- include Model
21
+ include Core::Model
27
22
 
28
23
  # @param [String] arn The topic ARN.
29
24
  def initialize arn, options = {}
@@ -11,15 +11,12 @@
11
11
  # ANY KIND, either express or implied. See the License for the specific
12
12
  # language governing permissions and limitations under the License.
13
13
 
14
- require 'aws/model'
15
- require 'aws/sns/topic'
16
-
17
14
  module AWS
18
15
  class SNS
19
16
 
20
17
  class TopicCollection
21
18
 
22
- include Model
19
+ include Core::Model
23
20
  include Enumerable
24
21
 
25
22
 
@@ -11,9 +11,6 @@
11
11
  # ANY KIND, either express or implied. See the License for the specific
12
12
  # language governing permissions and limitations under the License.
13
13
 
14
- require 'aws/model'
15
- require 'aws/sns/subscription_collection'
16
-
17
14
  module AWS
18
15
  class SNS
19
16
 
@@ -27,7 +24,7 @@ module AWS
27
24
  # map(&:endpoint)
28
25
  class TopicSubscriptionCollection < SubscriptionCollection
29
26
 
30
- include Model
27
+ include Core::Model
31
28
  include Enumerable
32
29
 
33
30
  # @return [Topic] The topic to which all the subscriptions
@@ -11,10 +11,8 @@
11
11
  # ANY KIND, either express or implied. See the License for the specific
12
12
  # language governing permissions and limitations under the License.
13
13
 
14
- require 'aws/common'
15
- require 'aws/service_interface'
16
- require 'aws/sqs/client'
17
- require 'aws/sqs/queue_collection'
14
+ require 'aws/core'
15
+ require 'aws/sqs/config'
18
16
 
19
17
  module AWS
20
18
 
@@ -57,7 +55,18 @@ module AWS
57
55
  #
58
56
  class SQS
59
57
 
60
- include ServiceInterface
58
+ AWS.register_autoloads(self) do
59
+ autoload :Client, 'client'
60
+ autoload :Errors, 'errors'
61
+ autoload :Queue, 'queue'
62
+ autoload :QueueCollection, 'queue_collection'
63
+ autoload :Policy, 'policy'
64
+ autoload :ReceivedMessage, 'received_message'
65
+ autoload :ReceivedSNSMessage, 'received_sns_message'
66
+ autoload :Request, 'request'
67
+ end
68
+
69
+ include Core::ServiceInterface
61
70
 
62
71
  # @return [QueueCollection] The collection of all {Queue}
63
72
  # objects in your account.
@@ -11,20 +11,17 @@
11
11
  # ANY KIND, either express or implied. See the License for the specific
12
12
  # language governing permissions and limitations under the License.
13
13
 
14
- require 'aws/base_client'
15
- require 'aws/configured_client_methods'
16
- require 'aws/sqs/request'
17
- require 'aws/sqs/client/xml'
18
- require 'aws/sqs/errors'
19
- require 'aws/sqs/policy'
20
-
21
14
  module AWS
22
15
  class SQS
23
16
 
24
17
  # @private
25
- class Client < BaseClient
18
+ class Client < Core::Client
19
+
20
+ AWS.register_autoloads(self) do
21
+ autoload :XML, 'xml'
22
+ end
26
23
 
27
- include ConfiguredClientMethods
24
+ include Core::ConfiguredClientMethods
28
25
 
29
26
  API_VERSION = '2009-02-01'
30
27
 
@@ -11,20 +11,17 @@
11
11
  # ANY KIND, either express or implied. See the License for the specific
12
12
  # language governing permissions and limitations under the License.
13
13
 
14
- require 'aws/configured_xml_grammars'
15
- require 'aws/ignore_result_element'
16
-
17
14
  module AWS
18
15
  class SQS
19
- class Client < BaseClient
16
+ class Client < Core::Client
20
17
 
21
18
  # @private
22
19
  module XML
23
20
 
24
- include ConfiguredXmlGrammars
25
- extend IgnoreResultElement
21
+ include Core::ConfiguredXmlGrammars
22
+ extend Core::IgnoreResultElement
26
23
 
27
- BaseError = XmlGrammar.customize do
24
+ BaseError = Core::XmlGrammar.customize do
28
25
  element("Error") { ignore }
29
26
  end
30
27
 
@@ -0,0 +1,18 @@
1
+ # Copyright 2011 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License"). You
4
+ # may not use this file except in compliance with the License. A copy of
5
+ # the License is located at
6
+ #
7
+ # http://aws.amazon.com/apache2.0/
8
+ #
9
+ # or in the "license" file accompanying this file. This file is
10
+ # distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
11
+ # ANY KIND, either express or implied. See the License for the specific
12
+ # language governing permissions and limitations under the License.
13
+
14
+ AWS::Core::Configuration.module_eval do
15
+
16
+ add_service 'SQS', 'sqs', 'sqs.us-east-1.amazonaws.com'
17
+
18
+ end
@@ -11,9 +11,6 @@
11
11
  # ANY KIND, either express or implied. See the License for the specific
12
12
  # language governing permissions and limitations under the License.
13
13
 
14
- require 'aws/lazy_error_classes'
15
- require 'aws/sqs/client/xml'
16
-
17
14
  module AWS
18
15
  class SQS
19
16
 
@@ -22,7 +19,7 @@ module AWS
22
19
 
23
20
  BASE_ERROR_GRAMMAR = Client::XML::BaseError
24
21
 
25
- include LazyErrorClasses
22
+ include Core::LazyErrorClasses
26
23
 
27
24
  def self.error_class(code)
28
25
  super(code.sub(/^AWS\.SimpleQueueService\./, ''))
@@ -11,15 +11,13 @@
11
11
  # ANY KIND, either express or implied. See the License for the specific
12
12
  # language governing permissions and limitations under the License.
13
13
 
14
- require 'aws/policy'
15
-
16
14
  module AWS
17
15
  class SQS
18
16
 
19
- # @see AWS::Policy
20
- class Policy < AWS::Policy
17
+ # @see Core::Policy
18
+ class Policy < Core::Policy
21
19
 
22
- class Statement < AWS::Policy::Statement
20
+ class Statement < Core::Policy::Statement
23
21
 
24
22
  ACTION_MAPPING = {
25
23
  :add_permission => 'sqs:AddPermission',
@@ -11,11 +11,6 @@
11
11
  # ANY KIND, either express or implied. See the License for the specific
12
12
  # language governing permissions and limitations under the License.
13
13
 
14
- require 'aws/inflection'
15
- require 'aws/model'
16
- require 'aws/sqs/received_message'
17
- require 'aws/sqs/received_sns_message'
18
-
19
14
  module AWS
20
15
  class SQS
21
16
 
@@ -36,7 +31,7 @@ module AWS
36
31
  # new messages.
37
32
  DEFAULT_POLL_INTERVAL = 1
38
33
 
39
- include Model
34
+ include Core::Model
40
35
 
41
36
  # @return [String] The queue URL.
42
37
  attr_reader :url
@@ -458,7 +453,7 @@ module AWS
458
453
  receive_opts[:attribute_names] = names.map do |name|
459
454
  name = ReceivedMessage::ATTRIBUTE_ALIASES[name.to_sym] if
460
455
  ReceivedMessage::ATTRIBUTE_ALIASES.key?(name.to_sym)
461
- name = Inflection.class_name(name.to_s) if name.kind_of?(Symbol)
456
+ name = Core::Inflection.class_name(name.to_s) if name.kind_of?(Symbol)
462
457
  name
463
458
  end
464
459
  end
@@ -11,9 +11,6 @@
11
11
  # ANY KIND, either express or implied. See the License for the specific
12
12
  # language governing permissions and limitations under the License.
13
13
 
14
- require 'aws/model'
15
- require 'aws/sqs/queue'
16
-
17
14
  module AWS
18
15
  class SQS
19
16
 
@@ -34,7 +31,7 @@ module AWS
34
31
  # sqs.queues[url].send_message("HELLO")
35
32
  class QueueCollection
36
33
 
37
- include Model
34
+ include Core::Model
38
35
  include Enumerable
39
36
 
40
37
  # @private
@@ -81,7 +78,9 @@ module AWS
81
78
 
82
79
  # @yieldparam [Queue] queue Each {Queue} object in the collection.
83
80
  def each(&block)
84
- client.list_queues.queue_urls.each do |url|
81
+ options = {}
82
+ options[:queue_name_prefix] = prefix if prefix
83
+ client.list_queues(options).queue_urls.each do |url|
85
84
  queue = self[url]
86
85
  yield(queue)
87
86
  end
@@ -11,15 +11,13 @@
11
11
  # ANY KIND, either express or implied. See the License for the specific
12
12
  # language governing permissions and limitations under the License.
13
13
 
14
- require 'aws/model'
15
-
16
14
  module AWS
17
15
  class SQS
18
16
 
19
17
  # Represents a message received from an Amazon SQS Queue.
20
18
  class ReceivedMessage
21
19
 
22
- include Model
20
+ include Core::Model
23
21
 
24
22
  # @return [Queue] The queue from which this message was
25
23
  # received.
@@ -11,8 +11,8 @@
11
11
  # ANY KIND, either express or implied. See the License for the specific
12
12
  # language governing permissions and limitations under the License.
13
13
 
14
- require 'aws/model'
15
14
  require 'time'
15
+ require 'base64'
16
16
 
17
17
  module AWS
18
18
  class SQS
@@ -20,7 +20,7 @@ module AWS
20
20
  # Represents message published from an {SNS::Topic} to an {SQS::Queue}.
21
21
  class ReceivedSNSMessage
22
22
 
23
- include Model
23
+ include Core::Model
24
24
 
25
25
  # @param [String] encoded_body The base64 encoded json string
26
26
  # from a message published by SNS.
@@ -11,18 +11,14 @@
11
11
  # ANY KIND, either express or implied. See the License for the specific
12
12
  # language governing permissions and limitations under the License.
13
13
 
14
- require 'aws/http/request'
15
- require 'aws/authorize_v2'
16
- require 'aws/authorize_with_session_token'
17
-
18
14
  module AWS
19
15
  class SQS
20
16
 
21
17
  # @private
22
- class Request < AWS::Http::Request
18
+ class Request < Core::Http::Request
23
19
 
24
- include AuthorizeV2
25
- include AuthorizeWithSessionToken
20
+ include Core::AuthorizeV2
21
+ include Core::AuthorizeWithSessionToken
26
22
 
27
23
  def path
28
24
  full_url.path
@@ -42,5 +38,6 @@ module AWS
42
38
  end
43
39
 
44
40
  end
41
+
45
42
  end
46
43
  end
@@ -11,11 +11,8 @@
11
11
  # ANY KIND, either express or implied. See the License for the specific
12
12
  # language governing permissions and limitations under the License.
13
13
 
14
- require 'aws/service_interface'
15
- require 'aws/sts/client'
16
- require 'aws/sts/session'
17
- require 'aws/sts/federated_session'
18
- require 'aws/sts/policy'
14
+ require 'aws/core'
15
+ require 'aws/sts/config'
19
16
 
20
17
  module AWS
21
18
 
@@ -42,7 +39,16 @@ module AWS
42
39
  #
43
40
  class STS
44
41
 
45
- include ServiceInterface
42
+ AWS.register_autoloads(self) do
43
+ autoload :Client, 'client'
44
+ autoload :Errors, 'errors'
45
+ autoload :FederatedSession, 'federated_session'
46
+ autoload :Policy, 'policy'
47
+ autoload :Request, 'request'
48
+ autoload :Session, 'session'
49
+ end
50
+
51
+ include Core::ServiceInterface
46
52
 
47
53
  # Returns a set of temporary credentials for an AWS account or IAM
48
54
  # User. The credentials consist of an Access Key ID, a Secret
@@ -11,19 +11,17 @@
11
11
  # ANY KIND, either express or implied. See the License for the specific
12
12
  # language governing permissions and limitations under the License.
13
13
 
14
- require 'aws/base_client'
15
- require 'aws/configured_client_methods'
16
- require 'aws/sts/request'
17
- require 'aws/sts/client/xml'
18
- require 'aws/sts/errors'
19
-
20
14
  module AWS
21
15
  class STS
22
16
 
23
17
  # @private
24
- class Client < BaseClient
18
+ class Client < Core::Client
19
+
20
+ AWS.register_autoloads(self) do
21
+ autoload :XML, 'xml'
22
+ end
25
23
 
26
- include ConfiguredClientMethods
24
+ include Core::ConfiguredClientMethods
27
25
 
28
26
  API_VERSION = '2011-06-15'
29
27
 
@@ -11,22 +11,18 @@
11
11
  # ANY KIND, either express or implied. See the License for the specific
12
12
  # language governing permissions and limitations under the License.
13
13
 
14
- require 'aws/configured_xml_grammars'
15
- require 'aws/ignore_result_element'
16
- require 'aws/xml_grammar'
17
-
18
14
  module AWS
19
15
  class STS
20
- class Client < BaseClient
16
+ class Client < Core::Client
21
17
 
22
18
  # @private
23
19
  module XML
24
20
 
25
- include ConfiguredXmlGrammars
21
+ include Core::ConfiguredXmlGrammars
26
22
 
27
- extend IgnoreResultElement
23
+ extend Core::IgnoreResultElement
28
24
 
29
- BaseError = XmlGrammar.customize do
25
+ BaseError = Core::XmlGrammar.customize do
30
26
  element("Error") { ignore }
31
27
  end
32
28
 
@@ -0,0 +1,18 @@
1
+ # Copyright 2011 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License"). You
4
+ # may not use this file except in compliance with the License. A copy of
5
+ # the License is located at
6
+ #
7
+ # http://aws.amazon.com/apache2.0/
8
+ #
9
+ # or in the "license" file accompanying this file. This file is
10
+ # distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
11
+ # ANY KIND, either express or implied. See the License for the specific
12
+ # language governing permissions and limitations under the License.
13
+
14
+ AWS::Core::Configuration.module_eval do
15
+
16
+ add_service 'STS', 'sts', 'sts.amazonaws.com'
17
+
18
+ end