aws-sdk 1.1.3 → 1.1.4

Sign up to get free protection for your applications and to get access to all the features.
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 = {})