aws-sdk 1.0.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.
- data/.yardopts +6 -0
- data/LICENSE.txt +171 -0
- data/NOTICE.txt +2 -0
- data/README.rdoc +189 -0
- data/lib/aws-sdk.rb +14 -0
- data/lib/aws.rb +63 -0
- data/lib/aws/api_config.rb +45 -0
- data/lib/aws/api_config/.document +0 -0
- data/lib/aws/api_config/EC2-2011-02-28.yml +2314 -0
- data/lib/aws/api_config/SNS-2010-03-31.yml +171 -0
- data/lib/aws/api_config/SQS-2009-02-01.yml +161 -0
- data/lib/aws/api_config/SimpleDB-2009-04-15.yml +278 -0
- data/lib/aws/api_config/SimpleEmailService-2010-12-01.yml +147 -0
- data/lib/aws/api_config_transform.rb +32 -0
- data/lib/aws/async_handle.rb +90 -0
- data/lib/aws/authorize_v2.rb +37 -0
- data/lib/aws/authorize_v3.rb +37 -0
- data/lib/aws/base_client.rb +524 -0
- data/lib/aws/cacheable.rb +92 -0
- data/lib/aws/common.rb +228 -0
- data/lib/aws/configurable.rb +36 -0
- data/lib/aws/configuration.rb +272 -0
- data/lib/aws/configured_client_methods.rb +81 -0
- data/lib/aws/configured_grammars.rb +65 -0
- data/lib/aws/configured_option_grammars.rb +46 -0
- data/lib/aws/configured_xml_grammars.rb +47 -0
- data/lib/aws/default_signer.rb +38 -0
- data/lib/aws/ec2.rb +321 -0
- data/lib/aws/ec2/attachment.rb +149 -0
- data/lib/aws/ec2/attachment_collection.rb +57 -0
- data/lib/aws/ec2/availability_zone.rb +80 -0
- data/lib/aws/ec2/availability_zone_collection.rb +47 -0
- data/lib/aws/ec2/block_device_mappings.rb +53 -0
- data/lib/aws/ec2/client.rb +54 -0
- data/lib/aws/ec2/client/xml.rb +127 -0
- data/lib/aws/ec2/collection.rb +39 -0
- data/lib/aws/ec2/config_transform.rb +63 -0
- data/lib/aws/ec2/elastic_ip.rb +107 -0
- data/lib/aws/ec2/elastic_ip_collection.rb +85 -0
- data/lib/aws/ec2/errors.rb +29 -0
- data/lib/aws/ec2/filtered_collection.rb +65 -0
- data/lib/aws/ec2/has_permissions.rb +46 -0
- data/lib/aws/ec2/image.rb +245 -0
- data/lib/aws/ec2/image_collection.rb +235 -0
- data/lib/aws/ec2/instance.rb +515 -0
- data/lib/aws/ec2/instance_collection.rb +276 -0
- data/lib/aws/ec2/key_pair.rb +86 -0
- data/lib/aws/ec2/key_pair_collection.rb +102 -0
- data/lib/aws/ec2/permission_collection.rb +177 -0
- data/lib/aws/ec2/region.rb +81 -0
- data/lib/aws/ec2/region_collection.rb +55 -0
- data/lib/aws/ec2/request.rb +27 -0
- data/lib/aws/ec2/reserved_instances.rb +50 -0
- data/lib/aws/ec2/reserved_instances_collection.rb +44 -0
- data/lib/aws/ec2/reserved_instances_offering.rb +55 -0
- data/lib/aws/ec2/reserved_instances_offering_collection.rb +43 -0
- data/lib/aws/ec2/resource.rb +340 -0
- data/lib/aws/ec2/resource_tag_collection.rb +218 -0
- data/lib/aws/ec2/security_group.rb +246 -0
- data/lib/aws/ec2/security_group/ip_permission.rb +70 -0
- data/lib/aws/ec2/security_group/ip_permission_collection.rb +59 -0
- data/lib/aws/ec2/security_group_collection.rb +132 -0
- data/lib/aws/ec2/snapshot.rb +138 -0
- data/lib/aws/ec2/snapshot_collection.rb +90 -0
- data/lib/aws/ec2/tag.rb +88 -0
- data/lib/aws/ec2/tag_collection.rb +114 -0
- data/lib/aws/ec2/tagged_collection.rb +48 -0
- data/lib/aws/ec2/tagged_item.rb +87 -0
- data/lib/aws/ec2/volume.rb +190 -0
- data/lib/aws/ec2/volume_collection.rb +95 -0
- data/lib/aws/errors.rb +129 -0
- data/lib/aws/http/builtin_handler.rb +69 -0
- data/lib/aws/http/curb_handler.rb +123 -0
- data/lib/aws/http/handler.rb +77 -0
- data/lib/aws/http/httparty_handler.rb +61 -0
- data/lib/aws/http/request.rb +136 -0
- data/lib/aws/http/request_param.rb +63 -0
- data/lib/aws/http/response.rb +75 -0
- data/lib/aws/ignore_result_element.rb +38 -0
- data/lib/aws/indifferent_hash.rb +86 -0
- data/lib/aws/inflection.rb +46 -0
- data/lib/aws/lazy_error_classes.rb +64 -0
- data/lib/aws/meta_utils.rb +43 -0
- data/lib/aws/model.rb +57 -0
- data/lib/aws/naming.rb +32 -0
- data/lib/aws/option_grammar.rb +544 -0
- data/lib/aws/policy.rb +912 -0
- data/lib/aws/rails.rb +209 -0
- data/lib/aws/record.rb +79 -0
- data/lib/aws/record/attribute.rb +94 -0
- data/lib/aws/record/attribute_macros.rb +288 -0
- data/lib/aws/record/attributes/boolean.rb +49 -0
- data/lib/aws/record/attributes/datetime.rb +86 -0
- data/lib/aws/record/attributes/float.rb +48 -0
- data/lib/aws/record/attributes/integer.rb +68 -0
- data/lib/aws/record/attributes/sortable_float.rb +60 -0
- data/lib/aws/record/attributes/sortable_integer.rb +95 -0
- data/lib/aws/record/attributes/string.rb +69 -0
- data/lib/aws/record/base.rb +728 -0
- data/lib/aws/record/conversion.rb +38 -0
- data/lib/aws/record/dirty_tracking.rb +286 -0
- data/lib/aws/record/errors.rb +153 -0
- data/lib/aws/record/exceptions.rb +48 -0
- data/lib/aws/record/finder_methods.rb +262 -0
- data/lib/aws/record/naming.rb +31 -0
- data/lib/aws/record/scope.rb +157 -0
- data/lib/aws/record/validations.rb +653 -0
- data/lib/aws/record/validator.rb +237 -0
- data/lib/aws/record/validators/acceptance.rb +51 -0
- data/lib/aws/record/validators/block.rb +38 -0
- data/lib/aws/record/validators/confirmation.rb +43 -0
- data/lib/aws/record/validators/count.rb +108 -0
- data/lib/aws/record/validators/exclusion.rb +43 -0
- data/lib/aws/record/validators/format.rb +57 -0
- data/lib/aws/record/validators/inclusion.rb +56 -0
- data/lib/aws/record/validators/length.rb +107 -0
- data/lib/aws/record/validators/numericality.rb +138 -0
- data/lib/aws/record/validators/presence.rb +45 -0
- data/lib/aws/resource_cache.rb +39 -0
- data/lib/aws/response.rb +113 -0
- data/lib/aws/response_cache.rb +50 -0
- data/lib/aws/s3.rb +109 -0
- data/lib/aws/s3/access_control_list.rb +252 -0
- data/lib/aws/s3/acl_object.rb +266 -0
- data/lib/aws/s3/bucket.rb +320 -0
- data/lib/aws/s3/bucket_collection.rb +122 -0
- data/lib/aws/s3/bucket_version_collection.rb +85 -0
- data/lib/aws/s3/client.rb +999 -0
- data/lib/aws/s3/client/xml.rb +190 -0
- data/lib/aws/s3/data_options.rb +99 -0
- data/lib/aws/s3/errors.rb +43 -0
- data/lib/aws/s3/multipart_upload.rb +318 -0
- data/lib/aws/s3/multipart_upload_collection.rb +78 -0
- data/lib/aws/s3/object_collection.rb +159 -0
- data/lib/aws/s3/object_metadata.rb +67 -0
- data/lib/aws/s3/object_upload_collection.rb +83 -0
- data/lib/aws/s3/object_version.rb +141 -0
- data/lib/aws/s3/object_version_collection.rb +78 -0
- data/lib/aws/s3/paginated_collection.rb +94 -0
- data/lib/aws/s3/policy.rb +76 -0
- data/lib/aws/s3/prefix_and_delimiter_collection.rb +56 -0
- data/lib/aws/s3/prefixed_collection.rb +84 -0
- data/lib/aws/s3/presigned_post.rb +504 -0
- data/lib/aws/s3/request.rb +198 -0
- data/lib/aws/s3/s3_object.rb +794 -0
- data/lib/aws/s3/tree.rb +116 -0
- data/lib/aws/s3/tree/branch_node.rb +71 -0
- data/lib/aws/s3/tree/child_collection.rb +108 -0
- data/lib/aws/s3/tree/leaf_node.rb +99 -0
- data/lib/aws/s3/tree/node.rb +22 -0
- data/lib/aws/s3/tree/parent.rb +90 -0
- data/lib/aws/s3/uploaded_part.rb +82 -0
- data/lib/aws/s3/uploaded_part_collection.rb +86 -0
- data/lib/aws/service_interface.rb +60 -0
- data/lib/aws/simple_db.rb +202 -0
- data/lib/aws/simple_db/attribute.rb +159 -0
- data/lib/aws/simple_db/attribute_collection.rb +227 -0
- data/lib/aws/simple_db/client.rb +52 -0
- data/lib/aws/simple_db/client/options.rb +34 -0
- data/lib/aws/simple_db/client/xml.rb +68 -0
- data/lib/aws/simple_db/consistent_read_option.rb +42 -0
- data/lib/aws/simple_db/delete_attributes.rb +64 -0
- data/lib/aws/simple_db/domain.rb +118 -0
- data/lib/aws/simple_db/domain_collection.rb +116 -0
- data/lib/aws/simple_db/domain_metadata.rb +112 -0
- data/lib/aws/simple_db/errors.rb +46 -0
- data/lib/aws/simple_db/expect_condition_option.rb +45 -0
- data/lib/aws/simple_db/item.rb +84 -0
- data/lib/aws/simple_db/item_collection.rb +594 -0
- data/lib/aws/simple_db/item_data.rb +70 -0
- data/lib/aws/simple_db/put_attributes.rb +62 -0
- data/lib/aws/simple_db/request.rb +27 -0
- data/lib/aws/simple_email_service.rb +373 -0
- data/lib/aws/simple_email_service/client.rb +39 -0
- data/lib/aws/simple_email_service/client/options.rb +24 -0
- data/lib/aws/simple_email_service/client/xml.rb +38 -0
- data/lib/aws/simple_email_service/email_address_collection.rb +66 -0
- data/lib/aws/simple_email_service/errors.rb +29 -0
- data/lib/aws/simple_email_service/quotas.rb +64 -0
- data/lib/aws/simple_email_service/request.rb +27 -0
- data/lib/aws/sns.rb +69 -0
- data/lib/aws/sns/client.rb +37 -0
- data/lib/aws/sns/client/options.rb +24 -0
- data/lib/aws/sns/client/xml.rb +38 -0
- data/lib/aws/sns/errors.rb +29 -0
- data/lib/aws/sns/policy.rb +49 -0
- data/lib/aws/sns/request.rb +27 -0
- data/lib/aws/sns/subscription.rb +100 -0
- data/lib/aws/sns/subscription_collection.rb +84 -0
- data/lib/aws/sns/topic.rb +384 -0
- data/lib/aws/sns/topic_collection.rb +70 -0
- data/lib/aws/sns/topic_subscription_collection.rb +58 -0
- data/lib/aws/sqs.rb +70 -0
- data/lib/aws/sqs/client.rb +38 -0
- data/lib/aws/sqs/client/xml.rb +36 -0
- data/lib/aws/sqs/errors.rb +33 -0
- data/lib/aws/sqs/policy.rb +50 -0
- data/lib/aws/sqs/queue.rb +507 -0
- data/lib/aws/sqs/queue_collection.rb +105 -0
- data/lib/aws/sqs/received_message.rb +184 -0
- data/lib/aws/sqs/received_sns_message.rb +112 -0
- data/lib/aws/sqs/request.rb +44 -0
- data/lib/aws/xml_grammar.rb +923 -0
- data/rails/init.rb +15 -0
- metadata +298 -0
|
@@ -0,0 +1,39 @@
|
|
|
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
|
+
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
|
+
module AWS
|
|
22
|
+
class SimpleEmailService
|
|
23
|
+
|
|
24
|
+
# @private
|
|
25
|
+
class Client < BaseClient
|
|
26
|
+
|
|
27
|
+
include ConfiguredClientMethods
|
|
28
|
+
|
|
29
|
+
API_VERSION = '2010-12-01'
|
|
30
|
+
|
|
31
|
+
REGION_US_E1 = 'email.us-east-1.amazonaws.com'
|
|
32
|
+
|
|
33
|
+
REQUEST_CLASS = SimpleEmailService::Request
|
|
34
|
+
|
|
35
|
+
configure_client
|
|
36
|
+
|
|
37
|
+
end
|
|
38
|
+
end
|
|
39
|
+
end
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# Copyright 2011 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
2
|
+
|
|
3
|
+
require 'aws/configured_option_grammars'
|
|
4
|
+
require 'aws/api_config_transform'
|
|
5
|
+
|
|
6
|
+
module AWS
|
|
7
|
+
class SimpleEmailService
|
|
8
|
+
class Client < BaseClient
|
|
9
|
+
|
|
10
|
+
# @private
|
|
11
|
+
module Options
|
|
12
|
+
|
|
13
|
+
include ConfiguredOptionGrammars
|
|
14
|
+
|
|
15
|
+
def self.api_config
|
|
16
|
+
ApiConfigTransform.rename_input_list_to_membered_list(super)
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
define_configured_grammars
|
|
20
|
+
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
end
|
|
@@ -0,0 +1,38 @@
|
|
|
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
|
+
require 'aws/configured_xml_grammars'
|
|
15
|
+
require 'aws/ignore_result_element'
|
|
16
|
+
require 'aws/xml_grammar'
|
|
17
|
+
|
|
18
|
+
module AWS
|
|
19
|
+
class SimpleEmailService
|
|
20
|
+
class Client < BaseClient
|
|
21
|
+
|
|
22
|
+
# @private
|
|
23
|
+
module XML
|
|
24
|
+
|
|
25
|
+
include ConfiguredXmlGrammars
|
|
26
|
+
|
|
27
|
+
extend IgnoreResultElement
|
|
28
|
+
|
|
29
|
+
BaseError = XmlGrammar.customize do
|
|
30
|
+
element("Error") { ignore }
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
define_configured_grammars
|
|
34
|
+
|
|
35
|
+
end
|
|
36
|
+
end
|
|
37
|
+
end
|
|
38
|
+
end
|
|
@@ -0,0 +1,66 @@
|
|
|
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
|
+
require 'aws/model'
|
|
15
|
+
|
|
16
|
+
module AWS
|
|
17
|
+
class SimpleEmailService
|
|
18
|
+
|
|
19
|
+
# Helps you manage your verified SimpleEmailService email addresses.
|
|
20
|
+
class EmailAddressCollection
|
|
21
|
+
|
|
22
|
+
include Model
|
|
23
|
+
include Enumerable
|
|
24
|
+
|
|
25
|
+
# Requets for an email address to be verified. An email will be
|
|
26
|
+
# sent to the given +email_address+ with a link to click. Once
|
|
27
|
+
# the link has been followed the +email_address+ will be verified.
|
|
28
|
+
#
|
|
29
|
+
# @param [String] email_address The email address to verify.
|
|
30
|
+
# @return [nil]
|
|
31
|
+
def verify email_address
|
|
32
|
+
client.verify_email_address(:email_address => email_address)
|
|
33
|
+
nil
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
alias_method :create, :verify
|
|
37
|
+
|
|
38
|
+
# @param [String] email_address An email address to remove from the list
|
|
39
|
+
# of verified email addresses. Useful for cleanup as there is a 100
|
|
40
|
+
# email address limit.
|
|
41
|
+
# @return [nil]
|
|
42
|
+
def delete email_address
|
|
43
|
+
client.delete_verified_email_address(:email_address => email_address)
|
|
44
|
+
nil
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
def include?
|
|
48
|
+
# this is so jruby can detect that verified? is an alias
|
|
49
|
+
super
|
|
50
|
+
end
|
|
51
|
+
alias_method :verified?, :include?
|
|
52
|
+
|
|
53
|
+
# Yields each verified email address as a string.
|
|
54
|
+
# @return [nil]
|
|
55
|
+
# yielded.
|
|
56
|
+
def each &block
|
|
57
|
+
response = client.list_verified_email_addresses({})
|
|
58
|
+
response.verified_email_addresses.each do |email_address|
|
|
59
|
+
yield(email_address)
|
|
60
|
+
end
|
|
61
|
+
nil
|
|
62
|
+
end
|
|
63
|
+
|
|
64
|
+
end
|
|
65
|
+
end
|
|
66
|
+
end
|
|
@@ -0,0 +1,29 @@
|
|
|
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
|
+
require 'aws/lazy_error_classes'
|
|
15
|
+
require 'aws/simple_email_service/client/xml'
|
|
16
|
+
|
|
17
|
+
module AWS
|
|
18
|
+
class SimpleEmailService
|
|
19
|
+
|
|
20
|
+
# @private
|
|
21
|
+
module Errors
|
|
22
|
+
|
|
23
|
+
BASE_ERROR_GRAMMAR = Client::XML::BaseError
|
|
24
|
+
|
|
25
|
+
include LazyErrorClasses
|
|
26
|
+
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
end
|
|
@@ -0,0 +1,64 @@
|
|
|
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
|
+
require 'aws/model'
|
|
15
|
+
|
|
16
|
+
module AWS
|
|
17
|
+
class SimpleEmailService
|
|
18
|
+
|
|
19
|
+
# Returns information about your SimpleEmailService quotas.
|
|
20
|
+
class Quotas
|
|
21
|
+
|
|
22
|
+
include Model
|
|
23
|
+
|
|
24
|
+
# @return [Integer] The maximum number of emails the user is allowed
|
|
25
|
+
# to send in a 24-hour interval.
|
|
26
|
+
def max_24_hour_send
|
|
27
|
+
to_h[:max_24_hour_send]
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
# @return [Float] The maximum number of emails the user is allowed
|
|
31
|
+
# to send per second.
|
|
32
|
+
def max_send_rate
|
|
33
|
+
to_h[:max_send_rate]
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
# @return [Integer] Returns the number of emails sent during the
|
|
37
|
+
# previous 24 hours.
|
|
38
|
+
def sent_last_24_hours
|
|
39
|
+
to_h[:sent_last_24_hours]
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
# @example
|
|
43
|
+
#
|
|
44
|
+
# @ses.quotas.to_h
|
|
45
|
+
# # {:max_24_hour_send=>200, :max_send_rate=>1.0, :sent_last_24_hours=>22}
|
|
46
|
+
#
|
|
47
|
+
# @return [Hash] Returns a hash of the SES quotas.
|
|
48
|
+
def to_h
|
|
49
|
+
response = client.get_send_quota({})
|
|
50
|
+
{
|
|
51
|
+
:max_24_hour_send => response.max_24_hour_send.to_i,
|
|
52
|
+
:max_send_rate => response.max_send_rate.to_f,
|
|
53
|
+
:sent_last_24_hours => response.sent_last_24_hours.to_i,
|
|
54
|
+
}
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
# @private
|
|
58
|
+
def inspect
|
|
59
|
+
"<#{self.class} #{to_h.inspect}>"
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
end
|
|
63
|
+
end
|
|
64
|
+
end
|
|
@@ -0,0 +1,27 @@
|
|
|
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
|
+
require 'aws/http/request'
|
|
15
|
+
require 'aws/authorize_v3'
|
|
16
|
+
|
|
17
|
+
module AWS
|
|
18
|
+
class SimpleEmailService
|
|
19
|
+
|
|
20
|
+
# @private
|
|
21
|
+
class Request < AWS::Http::Request
|
|
22
|
+
|
|
23
|
+
include AuthorizeV3
|
|
24
|
+
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
end
|
data/lib/aws/sns.rb
ADDED
|
@@ -0,0 +1,69 @@
|
|
|
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
|
+
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'
|
|
21
|
+
|
|
22
|
+
module AWS
|
|
23
|
+
|
|
24
|
+
# This class is the starting point for working with Amazon Simple
|
|
25
|
+
# Notification Service (SNS).
|
|
26
|
+
#
|
|
27
|
+
# To use Amazon SNS you must first {sign up here}[http://aws.amazon.com/sns/].
|
|
28
|
+
#
|
|
29
|
+
# For more information about Amazon SNS:
|
|
30
|
+
#
|
|
31
|
+
# * {Amazon SNS}[http://aws.amazon.com/simpledb/]
|
|
32
|
+
# * {Amazon SNS Documentation}[http://aws.amazon.com/documentation/sns/]
|
|
33
|
+
#
|
|
34
|
+
# = Credentials
|
|
35
|
+
#
|
|
36
|
+
# You can setup default credentials for all AWS services via
|
|
37
|
+
# AWS.config:
|
|
38
|
+
#
|
|
39
|
+
# AWS.config(
|
|
40
|
+
# :access_key_id => 'YOUR_ACCESS_KEY_ID',
|
|
41
|
+
# :secret_access_key => 'YOUR_SECRET_ACCESS_KEY')
|
|
42
|
+
#
|
|
43
|
+
# Or you can set them directly on the SNS interface:
|
|
44
|
+
#
|
|
45
|
+
# sns = AWS::SNS.new(
|
|
46
|
+
# :access_key_id => 'YOUR_ACCESS_KEY_ID',
|
|
47
|
+
# :secret_access_key => 'YOUR_SECRET_ACCESS_KEY')
|
|
48
|
+
#
|
|
49
|
+
# = Understanding the SNS Interface
|
|
50
|
+
#
|
|
51
|
+
# ...
|
|
52
|
+
class SNS
|
|
53
|
+
|
|
54
|
+
include ServiceInterface
|
|
55
|
+
|
|
56
|
+
# @return [TopicCollection] Returns a topic collection for managing
|
|
57
|
+
# SNS topics.
|
|
58
|
+
def topics
|
|
59
|
+
TopicCollection.new(:config => config)
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
# @return [SubscriptionCollection] Returns a subscription
|
|
63
|
+
# collection for managing SNS subscriptions.
|
|
64
|
+
def subscriptions
|
|
65
|
+
SubscriptionCollection.new(:config => config)
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
end
|
|
69
|
+
end
|
|
@@ -0,0 +1,37 @@
|
|
|
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
|
+
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
|
+
module AWS
|
|
21
|
+
class SNS
|
|
22
|
+
|
|
23
|
+
# @private
|
|
24
|
+
class Client < BaseClient
|
|
25
|
+
|
|
26
|
+
include ConfiguredClientMethods
|
|
27
|
+
|
|
28
|
+
API_VERSION = '2010-03-31'
|
|
29
|
+
|
|
30
|
+
# @private
|
|
31
|
+
REQUEST_CLASS = SNS::Request
|
|
32
|
+
|
|
33
|
+
configure_client
|
|
34
|
+
|
|
35
|
+
end
|
|
36
|
+
end
|
|
37
|
+
end
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# Copyright 2011 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
2
|
+
|
|
3
|
+
require 'aws/configured_option_grammars'
|
|
4
|
+
require 'aws/api_config_transform'
|
|
5
|
+
|
|
6
|
+
module AWS
|
|
7
|
+
class SNS
|
|
8
|
+
class Client < BaseClient
|
|
9
|
+
|
|
10
|
+
# @private
|
|
11
|
+
module Options
|
|
12
|
+
|
|
13
|
+
include ConfiguredOptionGrammars
|
|
14
|
+
|
|
15
|
+
def self.api_config
|
|
16
|
+
ApiConfigTransform.rename_input_list_to_membered_list(super)
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
define_configured_grammars
|
|
20
|
+
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
end
|
|
@@ -0,0 +1,38 @@
|
|
|
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
|
+
require 'aws/configured_xml_grammars'
|
|
15
|
+
require 'aws/ignore_result_element'
|
|
16
|
+
require 'aws/xml_grammar'
|
|
17
|
+
|
|
18
|
+
module AWS
|
|
19
|
+
class SNS
|
|
20
|
+
class Client < BaseClient
|
|
21
|
+
|
|
22
|
+
# @private
|
|
23
|
+
module XML
|
|
24
|
+
|
|
25
|
+
include ConfiguredXmlGrammars
|
|
26
|
+
|
|
27
|
+
extend IgnoreResultElement
|
|
28
|
+
|
|
29
|
+
BaseError = XmlGrammar.customize do
|
|
30
|
+
element("Error") { ignore }
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
define_configured_grammars
|
|
34
|
+
|
|
35
|
+
end
|
|
36
|
+
end
|
|
37
|
+
end
|
|
38
|
+
end
|