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,8 +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/simple_db/expect_condition_option'
15
-
16
14
  module AWS
17
15
  class SimpleDB
18
16
 
@@ -11,17 +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/http/request'
15
- require 'aws/authorize_v2'
16
-
17
14
  module AWS
18
15
  class SimpleDB
19
16
 
20
17
  # @private
21
- class Request < AWS::Http::Request
22
-
23
- include AuthorizeV2
24
-
18
+ class Request < Core::Http::Request
19
+ include Core::AuthorizeV2
25
20
  end
21
+
26
22
  end
27
23
  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/common'
15
- require 'aws/service_interface'
16
- require 'aws/simple_email_service/client'
17
- require 'aws/simple_email_service/email_address_collection'
18
- require 'aws/simple_email_service/quotas'
14
+ require 'aws/core'
15
+ require 'aws/simple_email_service/config'
19
16
 
20
17
  module AWS
21
18
 
@@ -138,7 +135,15 @@ module AWS
138
135
  #
139
136
  class SimpleEmailService
140
137
 
141
- include ServiceInterface
138
+ AWS.register_autoloads(self, 'aws/simple_email_service') do
139
+ autoload :Client, 'client'
140
+ autoload :Errors, 'errors'
141
+ autoload :EmailAddressCollection, 'email_address_collection'
142
+ autoload :Quotas, 'quotas'
143
+ autoload :Request, 'request'
144
+ end
145
+
146
+ include Core::ServiceInterface
142
147
 
143
148
  # @return [EmailAddressCollection] Returns a collection that represents
144
149
  # all of the verified email addresses for your account.
@@ -11,20 +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/base_client'
15
- require 'aws/configured_client_methods'
16
- require 'aws/simple_email_service/request'
17
- require 'aws/simple_email_service/client/options'
18
- require 'aws/simple_email_service/client/xml'
19
- require 'aws/simple_email_service/errors'
20
-
21
14
  module AWS
22
15
  class SimpleEmailService
23
16
 
24
17
  # @private
25
- class Client < BaseClient
18
+ class Client < Core::Client
19
+
20
+ AWS.register_autoloads(self, 'aws/simple_email_service/client') do
21
+ autoload :Options, 'options'
22
+ autoload :XML, 'xml'
23
+ end
26
24
 
27
- include ConfiguredClientMethods
25
+ include Core::ConfiguredClientMethods
28
26
 
29
27
  API_VERSION = '2010-12-01'
30
28
 
@@ -1,19 +1,16 @@
1
1
  # Copyright 2011 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
2
 
3
- require 'aws/configured_option_grammars'
4
- require 'aws/api_config_transform'
5
-
6
3
  module AWS
7
4
  class SimpleEmailService
8
- class Client < BaseClient
5
+ class Client < Core::Client
9
6
 
10
7
  # @private
11
8
  module Options
12
9
 
13
- include ConfiguredOptionGrammars
10
+ include Core::ConfiguredOptionGrammars
14
11
 
15
12
  def self.api_config
16
- ApiConfigTransform.rename_input_list_to_membered_list(super)
13
+ Core::ApiConfigTransform.rename_input_list_to_membered_list(super)
17
14
  end
18
15
 
19
16
  define_configured_grammars
@@ -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 SimpleEmailService
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,19 @@
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 'SimpleEmailService', 'simple_email_service',
17
+ 'email.us-east-1.amazonaws.com'
18
+
19
+ 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 SimpleEmailService
18
16
 
19
17
  # Helps you manage your verified SimpleEmailService email addresses.
20
18
  class EmailAddressCollection
21
19
 
22
- include Model
20
+ include Core::Model
23
21
  include Enumerable
24
22
 
25
23
  # Requets for an email address to be verified. An email will be
@@ -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/simple_email_service/client/xml'
16
-
17
14
  module AWS
18
15
  class SimpleEmailService
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
  end
28
25
  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 SimpleEmailService
18
16
 
19
17
  # Returns information about your SimpleEmailService quotas.
20
18
  class Quotas
21
19
 
22
- include Model
20
+ include Core::Model
23
21
 
24
22
  # @return [Integer] The maximum number of emails the user is allowed
25
23
  # to send in a 24-hour interval.
@@ -11,17 +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/http/request'
15
- require 'aws/authorize_v3'
16
-
17
14
  module AWS
18
15
  class SimpleEmailService
19
16
 
20
17
  # @private
21
- class Request < AWS::Http::Request
22
-
23
- include AuthorizeV3
24
-
18
+ class Request < Core::Http::Request
19
+ include Core::AuthorizeV3
25
20
  end
21
+
26
22
  end
27
23
  end
@@ -11,13 +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/sns/errors'
17
- require 'aws/sns/client'
18
- require 'aws/sns/topic_collection'
19
- require 'aws/sns/subscription_collection'
20
- require 'aws/sns/policy'
14
+ require 'aws/core'
15
+ require 'aws/sns/config'
21
16
 
22
17
  module AWS
23
18
 
@@ -48,7 +43,19 @@ module AWS
48
43
  #
49
44
  class SNS
50
45
 
51
- include ServiceInterface
46
+ AWS.register_autoloads(self) do
47
+ autoload :Client, 'client'
48
+ autoload :Errors, 'errors'
49
+ autoload :Policy, 'policy'
50
+ autoload :Request, 'request'
51
+ autoload :Subscription, 'subscription'
52
+ autoload :SubscriptionCollection, 'subscription_collection'
53
+ autoload :Topic, 'topic'
54
+ autoload :TopicCollection, 'topic_collection'
55
+ autoload :TopicSubscriptionCollection, 'topic_subscription_collection'
56
+ end
57
+
58
+ include Core::ServiceInterface
52
59
 
53
60
  # @return [TopicCollection] Returns a topic collection for managing
54
61
  # SNS topics.
@@ -11,19 +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/base_client'
15
- require 'aws/configured_client_methods'
16
- require 'aws/sns/request'
17
- require 'aws/sns/client/xml'
18
- require 'aws/sns/client/options'
19
-
20
14
  module AWS
21
15
  class SNS
22
16
 
23
17
  # @private
24
- class Client < BaseClient
18
+ class Client < Core::Client
19
+
20
+ AWS.register_autoloads(self) do
21
+ autoload :Options, 'options'
22
+ autoload :XML, 'xml'
23
+ end
25
24
 
26
- include ConfiguredClientMethods
25
+ include Core::ConfiguredClientMethods
27
26
 
28
27
  API_VERSION = '2010-03-31'
29
28
 
@@ -1,19 +1,16 @@
1
1
  # Copyright 2011 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
2
 
3
- require 'aws/configured_option_grammars'
4
- require 'aws/api_config_transform'
5
-
6
3
  module AWS
7
4
  class SNS
8
- class Client < BaseClient
5
+ class Client < Core::Client
9
6
 
10
7
  # @private
11
8
  module Options
12
9
 
13
- include ConfiguredOptionGrammars
10
+ include Core::ConfiguredOptionGrammars
14
11
 
15
12
  def self.api_config
16
- ApiConfigTransform.rename_input_list_to_membered_list(super)
13
+ Core::ApiConfigTransform.rename_input_list_to_membered_list(super)
17
14
  end
18
15
 
19
16
  define_configured_grammars
@@ -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 SNS
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 'SNS', 'sns', 'sns.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/sns/client/xml'
16
-
17
14
  module AWS
18
15
  class SNS
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
  end
28
25
  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/policy'
15
-
16
14
  module AWS
17
15
  class SNS
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 => 'sns:AddPermission',
@@ -11,19 +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 SNS
20
16
 
21
17
  # @private
22
- class Request < AWS::Http::Request
23
-
24
- include AuthorizeV2
25
- include AuthorizeWithSessionToken
26
-
18
+ class Request < Core::Http::Request
19
+ include Core::AuthorizeV2
20
+ include Core::AuthorizeWithSessionToken
27
21
  end
22
+
28
23
  end
29
24
  end
@@ -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/topic_subscription_collection'
16
- require 'aws/sns/subscription_collection'
17
-
18
14
  module AWS
19
15
  class SNS
20
16
 
@@ -24,7 +20,7 @@ module AWS
24
20
  # {Topic#confirm_subscription}.
25
21
  class Subscription
26
22
 
27
- include Model
23
+ include Core::Model
28
24
 
29
25
  # @private
30
26
  def initialize(arn, opts = {})