aws-sdk-euca 1.8.5
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 +5 -0
- data/LICENSE.txt +12 -0
- data/README.rdoc +189 -0
- data/ca-bundle.crt +3895 -0
- data/lib/aws-sdk-euca.rb +79 -0
- data/lib/aws-sdk.rb +79 -0
- data/lib/aws.rb +14 -0
- data/lib/aws/api_config/AutoScaling-2011-01-01.yml +825 -0
- data/lib/aws/api_config/CloudFormation-2010-05-15.yml +322 -0
- data/lib/aws/api_config/CloudFront-2012-05-05.yml +2102 -0
- data/lib/aws/api_config/CloudSearch-2011-02-01.yml +681 -0
- data/lib/aws/api_config/CloudWatch-2010-08-01.yml +433 -0
- data/lib/aws/api_config/DataPipeline-2012-10-29.yml +422 -0
- data/lib/aws/api_config/DynamoDB-2011-12-05.yml +1160 -0
- data/lib/aws/api_config/EC2-2013-02-01.yml +4368 -0
- data/lib/aws/api_config/ELB-2012-06-01.yml +597 -0
- data/lib/aws/api_config/EMR-2009-03-31.yml +370 -0
- data/lib/aws/api_config/ElastiCache-2012-03-09.yml +777 -0
- data/lib/aws/api_config/ElastiCache-2012-11-15.yml +979 -0
- data/lib/aws/api_config/ElasticBeanstalk-2010-12-01.yml +823 -0
- data/lib/aws/api_config/ElasticTranscoder-2012-09-25.yml +1036 -0
- data/lib/aws/api_config/Glacier-2012-06-01.yml +618 -0
- data/lib/aws/api_config/IAM-2010-05-08.yml +1222 -0
- data/lib/aws/api_config/ImportExport-2010-06-01.yml +109 -0
- data/lib/aws/api_config/OpsWorks-2013-02-18.yml +1463 -0
- data/lib/aws/api_config/RDS-2012-09-17.yml +1861 -0
- data/lib/aws/api_config/RDS-2013-02-12.yml +2377 -0
- data/lib/aws/api_config/Redshift-2012-12-01.yml +1149 -0
- data/lib/aws/api_config/Route53-2012-02-29.yml +380 -0
- data/lib/aws/api_config/Route53-2012-12-12.yml +547 -0
- data/lib/aws/api_config/SNS-2010-03-31.yml +249 -0
- data/lib/aws/api_config/SQS-2012-11-05.yml +317 -0
- data/lib/aws/api_config/STS-2011-06-15.yml +81 -0
- data/lib/aws/api_config/SimpleDB-2009-04-15.yml +306 -0
- data/lib/aws/api_config/SimpleEmailService-2010-12-01.yml +346 -0
- data/lib/aws/api_config/SimpleWorkflow-2012-01-25.yml +2358 -0
- data/lib/aws/api_config/StorageGateway-2012-06-30.yml +748 -0
- data/lib/aws/auto_scaling.rb +164 -0
- data/lib/aws/auto_scaling/activity.rb +102 -0
- data/lib/aws/auto_scaling/activity_collection.rb +82 -0
- data/lib/aws/auto_scaling/client.rb +521 -0
- data/lib/aws/auto_scaling/config.rb +18 -0
- data/lib/aws/auto_scaling/errors.rb +22 -0
- data/lib/aws/auto_scaling/group.rb +420 -0
- data/lib/aws/auto_scaling/group_collection.rb +96 -0
- data/lib/aws/auto_scaling/group_options.rb +146 -0
- data/lib/aws/auto_scaling/instance.rb +192 -0
- data/lib/aws/auto_scaling/instance_collection.rb +63 -0
- data/lib/aws/auto_scaling/launch_configuration.rb +158 -0
- data/lib/aws/auto_scaling/launch_configuration_collection.rb +154 -0
- data/lib/aws/auto_scaling/notification_configuration.rb +89 -0
- data/lib/aws/auto_scaling/notification_configuration_collection.rb +184 -0
- data/lib/aws/auto_scaling/request.rb +29 -0
- data/lib/aws/auto_scaling/scaling_policy.rb +142 -0
- data/lib/aws/auto_scaling/scaling_policy_collection.rb +72 -0
- data/lib/aws/auto_scaling/scaling_policy_options.rb +64 -0
- data/lib/aws/auto_scaling/scheduled_action.rb +145 -0
- data/lib/aws/auto_scaling/scheduled_action_collection.rb +195 -0
- data/lib/aws/auto_scaling/tag.rb +59 -0
- data/lib/aws/auto_scaling/tag_collection.rb +112 -0
- data/lib/aws/cloud_formation.rb +272 -0
- data/lib/aws/cloud_formation/client.rb +369 -0
- data/lib/aws/cloud_formation/config.rb +18 -0
- data/lib/aws/cloud_formation/errors.rb +22 -0
- data/lib/aws/cloud_formation/request.rb +29 -0
- data/lib/aws/cloud_formation/stack.rb +255 -0
- data/lib/aws/cloud_formation/stack_collection.rb +209 -0
- data/lib/aws/cloud_formation/stack_event.rb +75 -0
- data/lib/aws/cloud_formation/stack_event_collection.rb +47 -0
- data/lib/aws/cloud_formation/stack_options.rb +72 -0
- data/lib/aws/cloud_formation/stack_output.rb +53 -0
- data/lib/aws/cloud_formation/stack_resource.rb +117 -0
- data/lib/aws/cloud_formation/stack_resource_collection.rb +84 -0
- data/lib/aws/cloud_formation/stack_resource_summary_collection.rb +64 -0
- data/lib/aws/cloud_formation/stack_summary_collection.rb +123 -0
- data/lib/aws/cloud_front.rb +73 -0
- data/lib/aws/cloud_front/client.rb +1307 -0
- data/lib/aws/cloud_front/config.rb +18 -0
- data/lib/aws/cloud_front/errors.rb +22 -0
- data/lib/aws/cloud_front/request.rb +44 -0
- data/lib/aws/cloud_search.rb +74 -0
- data/lib/aws/cloud_search/client.rb +558 -0
- data/lib/aws/cloud_search/config.rb +18 -0
- data/lib/aws/cloud_search/errors.rb +22 -0
- data/lib/aws/cloud_search/request.rb +23 -0
- data/lib/aws/cloud_watch.rb +119 -0
- data/lib/aws/cloud_watch/alarm.rb +272 -0
- data/lib/aws/cloud_watch/alarm_collection.rb +153 -0
- data/lib/aws/cloud_watch/alarm_history_item.rb +50 -0
- data/lib/aws/cloud_watch/alarm_history_item_collection.rb +84 -0
- data/lib/aws/cloud_watch/client.rb +247 -0
- data/lib/aws/cloud_watch/config.rb +18 -0
- data/lib/aws/cloud_watch/errors.rb +22 -0
- data/lib/aws/cloud_watch/metric.rb +135 -0
- data/lib/aws/cloud_watch/metric_alarm_collection.rb +160 -0
- data/lib/aws/cloud_watch/metric_collection.rb +131 -0
- data/lib/aws/cloud_watch/metric_statistics.rb +69 -0
- data/lib/aws/cloud_watch/request.rb +23 -0
- data/lib/aws/core.rb +587 -0
- data/lib/aws/core/async_handle.rb +90 -0
- data/lib/aws/core/autoloader.rb +64 -0
- data/lib/aws/core/cacheable.rb +78 -0
- data/lib/aws/core/client.rb +691 -0
- data/lib/aws/core/collection.rb +267 -0
- data/lib/aws/core/collection/simple.rb +82 -0
- data/lib/aws/core/collection/with_limit_and_next_token.rb +71 -0
- data/lib/aws/core/collection/with_next_token.rb +97 -0
- data/lib/aws/core/configuration.rb +546 -0
- data/lib/aws/core/credential_providers.rb +461 -0
- data/lib/aws/core/data.rb +247 -0
- data/lib/aws/core/http/curb_handler.rb +155 -0
- data/lib/aws/core/http/handler.rb +89 -0
- data/lib/aws/core/http/net_http_handler.rb +128 -0
- data/lib/aws/core/http/request.rb +263 -0
- data/lib/aws/core/http/response.rb +81 -0
- data/lib/aws/core/indifferent_hash.rb +88 -0
- data/lib/aws/core/inflection.rb +56 -0
- data/lib/aws/core/json_client.rb +47 -0
- data/lib/aws/core/json_parser.rb +76 -0
- data/lib/aws/core/json_request_builder.rb +35 -0
- data/lib/aws/core/json_response_parser.rb +79 -0
- data/lib/aws/core/lazy_error_classes.rb +90 -0
- data/lib/aws/core/log_formatter.rb +462 -0
- data/lib/aws/core/managed_file.rb +32 -0
- data/lib/aws/core/meta_utils.rb +45 -0
- data/lib/aws/core/model.rb +57 -0
- data/lib/aws/core/naming.rb +30 -0
- data/lib/aws/core/option_grammar.rb +735 -0
- data/lib/aws/core/options/json_serializer.rb +82 -0
- data/lib/aws/core/options/validator.rb +155 -0
- data/lib/aws/core/options/xml_serializer.rb +118 -0
- data/lib/aws/core/page_result.rb +75 -0
- data/lib/aws/core/policy.rb +916 -0
- data/lib/aws/core/query_client.rb +41 -0
- data/lib/aws/core/query_error_parser.rb +24 -0
- data/lib/aws/core/query_request_builder.rb +47 -0
- data/lib/aws/core/query_response_parser.rb +35 -0
- data/lib/aws/core/resource.rb +413 -0
- data/lib/aws/core/resource_cache.rb +40 -0
- data/lib/aws/core/response.rb +208 -0
- data/lib/aws/core/response_cache.rb +50 -0
- data/lib/aws/core/rest_error_parser.rb +24 -0
- data/lib/aws/core/rest_json_client.rb +40 -0
- data/lib/aws/core/rest_request_builder.rb +146 -0
- data/lib/aws/core/rest_response_parser.rb +66 -0
- data/lib/aws/core/rest_xml_client.rb +47 -0
- data/lib/aws/core/service_interface.rb +61 -0
- data/lib/aws/core/signature/version_2.rb +56 -0
- data/lib/aws/core/signature/version_3.rb +77 -0
- data/lib/aws/core/signature/version_3_https.rb +54 -0
- data/lib/aws/core/signature/version_4.rb +135 -0
- data/lib/aws/core/signer.rb +46 -0
- data/lib/aws/core/uri_escape.rb +44 -0
- data/lib/aws/core/xml/frame.rb +244 -0
- data/lib/aws/core/xml/frame_stack.rb +85 -0
- data/lib/aws/core/xml/grammar.rb +307 -0
- data/lib/aws/core/xml/parser.rb +70 -0
- data/lib/aws/core/xml/root_frame.rb +65 -0
- data/lib/aws/core/xml/sax_handlers/libxml.rb +47 -0
- data/lib/aws/core/xml/sax_handlers/nokogiri.rb +55 -0
- data/lib/aws/core/xml/sax_handlers/ox.rb +41 -0
- data/lib/aws/core/xml/sax_handlers/rexml.rb +43 -0
- data/lib/aws/core/xml/stub.rb +123 -0
- data/lib/aws/data_pipeline.rb +73 -0
- data/lib/aws/data_pipeline/client.rb +339 -0
- data/lib/aws/data_pipeline/config.rb +18 -0
- data/lib/aws/data_pipeline/errors.rb +20 -0
- data/lib/aws/data_pipeline/request.rb +26 -0
- data/lib/aws/dynamo_db.rb +206 -0
- data/lib/aws/dynamo_db/attribute_collection.rb +461 -0
- data/lib/aws/dynamo_db/batch_get.rb +213 -0
- data/lib/aws/dynamo_db/batch_write.rb +252 -0
- data/lib/aws/dynamo_db/binary.rb +35 -0
- data/lib/aws/dynamo_db/client.rb +904 -0
- data/lib/aws/dynamo_db/config.rb +24 -0
- data/lib/aws/dynamo_db/errors.rb +20 -0
- data/lib/aws/dynamo_db/expectations.rb +40 -0
- data/lib/aws/dynamo_db/item.rb +133 -0
- data/lib/aws/dynamo_db/item_collection.rb +852 -0
- data/lib/aws/dynamo_db/item_data.rb +31 -0
- data/lib/aws/dynamo_db/keys.rb +41 -0
- data/lib/aws/dynamo_db/primary_key_element.rb +48 -0
- data/lib/aws/dynamo_db/request.rb +26 -0
- data/lib/aws/dynamo_db/resource.rb +33 -0
- data/lib/aws/dynamo_db/table.rb +491 -0
- data/lib/aws/dynamo_db/table_collection.rb +165 -0
- data/lib/aws/dynamo_db/types.rb +111 -0
- data/lib/aws/ec2.rb +440 -0
- data/lib/aws/ec2/attachment.rb +140 -0
- data/lib/aws/ec2/attachment_collection.rb +54 -0
- data/lib/aws/ec2/availability_zone.rb +86 -0
- data/lib/aws/ec2/availability_zone_collection.rb +43 -0
- data/lib/aws/ec2/block_device_mappings.rb +53 -0
- data/lib/aws/ec2/client.rb +3621 -0
- data/lib/aws/ec2/collection.rb +36 -0
- data/lib/aws/ec2/config.rb +18 -0
- data/lib/aws/ec2/config_transform.rb +63 -0
- data/lib/aws/ec2/customer_gateway.rb +90 -0
- data/lib/aws/ec2/customer_gateway_collection.rb +73 -0
- data/lib/aws/ec2/dhcp_options.rb +106 -0
- data/lib/aws/ec2/dhcp_options_collection.rb +87 -0
- data/lib/aws/ec2/elastic_ip.rb +208 -0
- data/lib/aws/ec2/elastic_ip_collection.rb +97 -0
- data/lib/aws/ec2/errors.rb +32 -0
- data/lib/aws/ec2/export_task.rb +120 -0
- data/lib/aws/ec2/export_task_collection.rb +67 -0
- data/lib/aws/ec2/filtered_collection.rb +89 -0
- data/lib/aws/ec2/has_permissions.rb +44 -0
- data/lib/aws/ec2/image.rb +264 -0
- data/lib/aws/ec2/image_collection.rb +228 -0
- data/lib/aws/ec2/instance.rb +796 -0
- data/lib/aws/ec2/instance_collection.rb +372 -0
- data/lib/aws/ec2/internet_gateway.rb +122 -0
- data/lib/aws/ec2/internet_gateway/attachment.rb +78 -0
- data/lib/aws/ec2/internet_gateway_collection.rb +54 -0
- data/lib/aws/ec2/key_pair.rb +82 -0
- data/lib/aws/ec2/key_pair_collection.rb +99 -0
- data/lib/aws/ec2/network_acl.rb +256 -0
- data/lib/aws/ec2/network_acl/association.rb +56 -0
- data/lib/aws/ec2/network_acl/entry.rb +147 -0
- data/lib/aws/ec2/network_acl_collection.rb +64 -0
- data/lib/aws/ec2/network_interface.rb +228 -0
- data/lib/aws/ec2/network_interface/attachment.rb +100 -0
- data/lib/aws/ec2/network_interface_collection.rb +103 -0
- data/lib/aws/ec2/permission_collection.rb +174 -0
- data/lib/aws/ec2/region.rb +106 -0
- data/lib/aws/ec2/region_collection.rb +51 -0
- data/lib/aws/ec2/request.rb +21 -0
- data/lib/aws/ec2/reserved_instances.rb +56 -0
- data/lib/aws/ec2/reserved_instances_collection.rb +40 -0
- data/lib/aws/ec2/reserved_instances_offering.rb +60 -0
- data/lib/aws/ec2/reserved_instances_offering_collection.rb +39 -0
- data/lib/aws/ec2/resource.rb +161 -0
- data/lib/aws/ec2/resource_tag_collection.rb +211 -0
- data/lib/aws/ec2/route_table.rb +205 -0
- data/lib/aws/ec2/route_table/association.rb +119 -0
- data/lib/aws/ec2/route_table/route.rb +119 -0
- data/lib/aws/ec2/route_table_collection.rb +72 -0
- data/lib/aws/ec2/security_group.rb +484 -0
- data/lib/aws/ec2/security_group/ip_permission.rb +135 -0
- data/lib/aws/ec2/security_group/ip_permission_collection.rb +82 -0
- data/lib/aws/ec2/security_group_collection.rb +135 -0
- data/lib/aws/ec2/snapshot.rb +143 -0
- data/lib/aws/ec2/snapshot_collection.rb +132 -0
- data/lib/aws/ec2/subnet.rb +161 -0
- data/lib/aws/ec2/subnet_collection.rb +115 -0
- data/lib/aws/ec2/tag.rb +81 -0
- data/lib/aws/ec2/tag_collection.rb +107 -0
- data/lib/aws/ec2/tagged_collection.rb +53 -0
- data/lib/aws/ec2/tagged_item.rb +85 -0
- data/lib/aws/ec2/volume.rb +174 -0
- data/lib/aws/ec2/volume_collection.rb +101 -0
- data/lib/aws/ec2/vpc.rb +166 -0
- data/lib/aws/ec2/vpc_collection.rb +70 -0
- data/lib/aws/ec2/vpn_connection.rb +99 -0
- data/lib/aws/ec2/vpn_connection/telemetry.rb +49 -0
- data/lib/aws/ec2/vpn_connection_collection.rb +96 -0
- data/lib/aws/ec2/vpn_gateway.rb +123 -0
- data/lib/aws/ec2/vpn_gateway/attachment.rb +45 -0
- data/lib/aws/ec2/vpn_gateway_collection.rb +77 -0
- data/lib/aws/elastic_beanstalk.rb +50 -0
- data/lib/aws/elastic_beanstalk/client.rb +867 -0
- data/lib/aws/elastic_beanstalk/config.rb +18 -0
- data/lib/aws/elastic_beanstalk/errors.rb +22 -0
- data/lib/aws/elastic_beanstalk/request.rb +29 -0
- data/lib/aws/elastic_transcoder.rb +30 -0
- data/lib/aws/elastic_transcoder/client.rb +672 -0
- data/lib/aws/elastic_transcoder/config.rb +18 -0
- data/lib/aws/elastic_transcoder/errors.rb +23 -0
- data/lib/aws/elastic_transcoder/request.rb +30 -0
- data/lib/aws/elasticache.rb +50 -0
- data/lib/aws/elasticache/client.rb +920 -0
- data/lib/aws/elasticache/config.rb +18 -0
- data/lib/aws/elasticache/errors.rb +22 -0
- data/lib/aws/elasticache/request.rb +23 -0
- data/lib/aws/elb.rb +67 -0
- data/lib/aws/elb/availability_zone_collection.rb +138 -0
- data/lib/aws/elb/backend_server_policy_collection.rb +139 -0
- data/lib/aws/elb/client.rb +500 -0
- data/lib/aws/elb/config.rb +18 -0
- data/lib/aws/elb/errors.rb +26 -0
- data/lib/aws/elb/instance_collection.rb +173 -0
- data/lib/aws/elb/listener.rb +190 -0
- data/lib/aws/elb/listener_collection.rb +113 -0
- data/lib/aws/elb/listener_opts.rb +45 -0
- data/lib/aws/elb/load_balancer.rb +281 -0
- data/lib/aws/elb/load_balancer_collection.rb +134 -0
- data/lib/aws/elb/load_balancer_policy.rb +93 -0
- data/lib/aws/elb/load_balancer_policy_collection.rb +208 -0
- data/lib/aws/elb/request.rb +29 -0
- data/lib/aws/emr.rb +86 -0
- data/lib/aws/emr/client.rb +330 -0
- data/lib/aws/emr/config.rb +18 -0
- data/lib/aws/emr/errors.rb +22 -0
- data/lib/aws/emr/instance_group.rb +138 -0
- data/lib/aws/emr/instance_group_collection.rb +82 -0
- data/lib/aws/emr/job_flow.rb +306 -0
- data/lib/aws/emr/job_flow_collection.rb +185 -0
- data/lib/aws/emr/request.rb +23 -0
- data/lib/aws/errors.rb +162 -0
- data/lib/aws/glacier.rb +80 -0
- data/lib/aws/glacier/archive.rb +56 -0
- data/lib/aws/glacier/archive_collection.rb +146 -0
- data/lib/aws/glacier/client.rb +286 -0
- data/lib/aws/glacier/config.rb +19 -0
- data/lib/aws/glacier/errors.rb +22 -0
- data/lib/aws/glacier/request.rb +34 -0
- data/lib/aws/glacier/resource.rb +30 -0
- data/lib/aws/glacier/vault.rb +145 -0
- data/lib/aws/glacier/vault_collection.rb +75 -0
- data/lib/aws/glacier/vault_notification_configuration.rb +29 -0
- data/lib/aws/iam.rb +420 -0
- data/lib/aws/iam/access_key.rb +180 -0
- data/lib/aws/iam/access_key_collection.rb +128 -0
- data/lib/aws/iam/account_alias_collection.rb +79 -0
- data/lib/aws/iam/client.rb +1092 -0
- data/lib/aws/iam/collection.rb +83 -0
- data/lib/aws/iam/config.rb +18 -0
- data/lib/aws/iam/errors.rb +22 -0
- data/lib/aws/iam/group.rb +111 -0
- data/lib/aws/iam/group_collection.rb +132 -0
- data/lib/aws/iam/group_policy_collection.rb +47 -0
- data/lib/aws/iam/group_user_collection.rb +84 -0
- data/lib/aws/iam/login_profile.rb +99 -0
- data/lib/aws/iam/mfa_device.rb +52 -0
- data/lib/aws/iam/mfa_device_collection.rb +127 -0
- data/lib/aws/iam/policy.rb +46 -0
- data/lib/aws/iam/policy_collection.rb +188 -0
- data/lib/aws/iam/request.rb +29 -0
- data/lib/aws/iam/resource.rb +62 -0
- data/lib/aws/iam/server_certificate.rb +141 -0
- data/lib/aws/iam/server_certificate_collection.rb +138 -0
- data/lib/aws/iam/signing_certificate.rb +169 -0
- data/lib/aws/iam/signing_certificate_collection.rb +131 -0
- data/lib/aws/iam/user.rb +205 -0
- data/lib/aws/iam/user_collection.rb +133 -0
- data/lib/aws/iam/user_group_collection.rb +98 -0
- data/lib/aws/iam/user_policy.rb +90 -0
- data/lib/aws/iam/user_policy_collection.rb +45 -0
- data/lib/aws/iam/virtual_mfa_device.rb +139 -0
- data/lib/aws/iam/virtual_mfa_device_collection.rb +73 -0
- data/lib/aws/import_export.rb +73 -0
- data/lib/aws/import_export/client.rb +109 -0
- data/lib/aws/import_export/config.rb +19 -0
- data/lib/aws/import_export/errors.rb +22 -0
- data/lib/aws/import_export/request.rb +23 -0
- data/lib/aws/ops_works.rb +30 -0
- data/lib/aws/ops_works/client.rb +713 -0
- data/lib/aws/ops_works/config.rb +18 -0
- data/lib/aws/ops_works/errors.rb +20 -0
- data/lib/aws/ops_works/request.rb +27 -0
- data/lib/aws/rails.rb +195 -0
- data/lib/aws/rds.rb +71 -0
- data/lib/aws/rds/client.rb +2228 -0
- data/lib/aws/rds/config.rb +18 -0
- data/lib/aws/rds/db_instance.rb +205 -0
- data/lib/aws/rds/db_instance_collection.rb +75 -0
- data/lib/aws/rds/db_snapshot.rb +163 -0
- data/lib/aws/rds/db_snapshot_collection.rb +89 -0
- data/lib/aws/rds/errors.rb +22 -0
- data/lib/aws/rds/request.rb +23 -0
- data/lib/aws/record.rb +116 -0
- data/lib/aws/record/abstract_base.rb +701 -0
- data/lib/aws/record/attributes.rb +384 -0
- data/lib/aws/record/conversion.rb +38 -0
- data/lib/aws/record/dirty_tracking.rb +285 -0
- data/lib/aws/record/errors.rb +143 -0
- data/lib/aws/record/exceptions.rb +48 -0
- data/lib/aws/record/hash_model.rb +161 -0
- data/lib/aws/record/hash_model/attributes.rb +197 -0
- data/lib/aws/record/hash_model/finder_methods.rb +172 -0
- data/lib/aws/record/hash_model/scope.rb +108 -0
- data/lib/aws/record/model.rb +427 -0
- data/lib/aws/record/model/attributes.rb +379 -0
- data/lib/aws/record/model/finder_methods.rb +232 -0
- data/lib/aws/record/model/scope.rb +213 -0
- data/lib/aws/record/naming.rb +31 -0
- data/lib/aws/record/scope.rb +199 -0
- data/lib/aws/record/validations.rb +712 -0
- data/lib/aws/record/validator.rb +246 -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/method.rb +33 -0
- data/lib/aws/record/validators/numericality.rb +138 -0
- data/lib/aws/record/validators/presence.rb +45 -0
- data/lib/aws/redshift.rb +52 -0
- data/lib/aws/redshift/client.rb +1291 -0
- data/lib/aws/redshift/config.rb +18 -0
- data/lib/aws/redshift/errors.rb +22 -0
- data/lib/aws/redshift/request.rb +29 -0
- data/lib/aws/route_53.rb +87 -0
- data/lib/aws/route_53/change_batch.rb +159 -0
- data/lib/aws/route_53/change_info.rb +72 -0
- data/lib/aws/route_53/client.rb +387 -0
- data/lib/aws/route_53/config.rb +18 -0
- data/lib/aws/route_53/errors.rb +22 -0
- data/lib/aws/route_53/hosted_zone.rb +111 -0
- data/lib/aws/route_53/hosted_zone_collection.rb +100 -0
- data/lib/aws/route_53/request.rb +23 -0
- data/lib/aws/route_53/resource_record_set.rb +237 -0
- data/lib/aws/route_53/resource_record_set_collection.rb +110 -0
- data/lib/aws/s3.rb +155 -0
- data/lib/aws/s3/access_control_list.rb +257 -0
- data/lib/aws/s3/acl_object.rb +264 -0
- data/lib/aws/s3/acl_options.rb +204 -0
- data/lib/aws/s3/bucket.rb +742 -0
- data/lib/aws/s3/bucket_collection.rb +160 -0
- data/lib/aws/s3/bucket_lifecycle_configuration.rb +458 -0
- data/lib/aws/s3/bucket_tag_collection.rb +109 -0
- data/lib/aws/s3/bucket_version_collection.rb +77 -0
- data/lib/aws/s3/cipher_io.rb +119 -0
- data/lib/aws/s3/client.rb +1700 -0
- data/lib/aws/s3/client/xml.rb +231 -0
- data/lib/aws/s3/config.rb +36 -0
- data/lib/aws/s3/cors_rule.rb +106 -0
- data/lib/aws/s3/cors_rule_collection.rb +192 -0
- data/lib/aws/s3/data_options.rb +185 -0
- data/lib/aws/s3/encryption_utils.rb +139 -0
- data/lib/aws/s3/errors.rb +94 -0
- data/lib/aws/s3/multipart_upload.rb +320 -0
- data/lib/aws/s3/multipart_upload_collection.rb +68 -0
- data/lib/aws/s3/object_collection.rb +355 -0
- data/lib/aws/s3/object_metadata.rb +96 -0
- data/lib/aws/s3/object_upload_collection.rb +77 -0
- data/lib/aws/s3/object_version.rb +148 -0
- data/lib/aws/s3/object_version_collection.rb +89 -0
- data/lib/aws/s3/paginated_collection.rb +75 -0
- data/lib/aws/s3/policy.rb +74 -0
- data/lib/aws/s3/prefix_and_delimiter_collection.rb +47 -0
- data/lib/aws/s3/prefixed_collection.rb +81 -0
- data/lib/aws/s3/presigned_post.rb +555 -0
- data/lib/aws/s3/request.rb +201 -0
- data/lib/aws/s3/s3_object.rb +1690 -0
- data/lib/aws/s3/tree.rb +118 -0
- data/lib/aws/s3/tree/branch_node.rb +68 -0
- data/lib/aws/s3/tree/child_collection.rb +104 -0
- data/lib/aws/s3/tree/leaf_node.rb +94 -0
- data/lib/aws/s3/tree/node.rb +22 -0
- data/lib/aws/s3/tree/parent.rb +87 -0
- data/lib/aws/s3/uploaded_part.rb +80 -0
- data/lib/aws/s3/uploaded_part_collection.rb +84 -0
- data/lib/aws/s3/website_configuration.rb +102 -0
- data/lib/aws/simple_db.rb +219 -0
- data/lib/aws/simple_db/attribute.rb +154 -0
- data/lib/aws/simple_db/attribute_collection.rb +231 -0
- data/lib/aws/simple_db/client.rb +287 -0
- data/lib/aws/simple_db/config.rb +20 -0
- data/lib/aws/simple_db/consistent_read_option.rb +42 -0
- data/lib/aws/simple_db/delete_attributes.rb +62 -0
- data/lib/aws/simple_db/domain.rb +121 -0
- data/lib/aws/simple_db/domain_collection.rb +86 -0
- data/lib/aws/simple_db/domain_metadata.rb +110 -0
- data/lib/aws/simple_db/errors.rb +55 -0
- data/lib/aws/simple_db/expect_condition_option.rb +45 -0
- data/lib/aws/simple_db/item.rb +93 -0
- data/lib/aws/simple_db/item_collection.rb +649 -0
- data/lib/aws/simple_db/item_data.rb +73 -0
- data/lib/aws/simple_db/put_attributes.rb +60 -0
- data/lib/aws/simple_db/request.rb +23 -0
- data/lib/aws/simple_email_service.rb +428 -0
- data/lib/aws/simple_email_service/client.rb +276 -0
- data/lib/aws/simple_email_service/config.rb +19 -0
- data/lib/aws/simple_email_service/email_address_collection.rb +69 -0
- data/lib/aws/simple_email_service/errors.rb +22 -0
- data/lib/aws/simple_email_service/identity.rb +209 -0
- data/lib/aws/simple_email_service/identity_collection.rb +81 -0
- data/lib/aws/simple_email_service/quotas.rb +64 -0
- data/lib/aws/simple_email_service/request.rb +27 -0
- data/lib/aws/simple_workflow.rb +228 -0
- data/lib/aws/simple_workflow/activity_task.rb +173 -0
- data/lib/aws/simple_workflow/activity_task_collection.rb +123 -0
- data/lib/aws/simple_workflow/activity_type.rb +131 -0
- data/lib/aws/simple_workflow/activity_type_collection.rb +93 -0
- data/lib/aws/simple_workflow/client.rb +1204 -0
- data/lib/aws/simple_workflow/config.rb +18 -0
- data/lib/aws/simple_workflow/count.rb +49 -0
- data/lib/aws/simple_workflow/decision_task.rb +603 -0
- data/lib/aws/simple_workflow/decision_task_collection.rb +225 -0
- data/lib/aws/simple_workflow/domain.rb +122 -0
- data/lib/aws/simple_workflow/domain_collection.rb +169 -0
- data/lib/aws/simple_workflow/errors.rb +20 -0
- data/lib/aws/simple_workflow/history_event.rb +276 -0
- data/lib/aws/simple_workflow/history_event_collection.rb +76 -0
- data/lib/aws/simple_workflow/option_formatters.rb +82 -0
- data/lib/aws/simple_workflow/request.rb +33 -0
- data/lib/aws/simple_workflow/resource.rb +94 -0
- data/lib/aws/simple_workflow/type.rb +89 -0
- data/lib/aws/simple_workflow/type_collection.rb +140 -0
- data/lib/aws/simple_workflow/workflow_execution.rb +386 -0
- data/lib/aws/simple_workflow/workflow_execution_collection.rb +617 -0
- data/lib/aws/simple_workflow/workflow_type.rb +177 -0
- data/lib/aws/simple_workflow/workflow_type_collection.rb +91 -0
- data/lib/aws/sns.rb +76 -0
- data/lib/aws/sns/client.rb +266 -0
- data/lib/aws/sns/config.rb +18 -0
- data/lib/aws/sns/errors.rb +22 -0
- data/lib/aws/sns/has_delivery_policy.rb +68 -0
- data/lib/aws/sns/policy.rb +47 -0
- data/lib/aws/sns/request.rb +23 -0
- data/lib/aws/sns/subscription.rb +144 -0
- data/lib/aws/sns/subscription_collection.rb +78 -0
- data/lib/aws/sns/topic.rb +403 -0
- data/lib/aws/sns/topic_collection.rb +62 -0
- data/lib/aws/sns/topic_subscription_collection.rb +54 -0
- data/lib/aws/sqs.rb +81 -0
- data/lib/aws/sqs/client.rb +258 -0
- data/lib/aws/sqs/config.rb +18 -0
- data/lib/aws/sqs/errors.rb +101 -0
- data/lib/aws/sqs/policy.rb +48 -0
- data/lib/aws/sqs/queue.rb +764 -0
- data/lib/aws/sqs/queue_collection.rb +174 -0
- data/lib/aws/sqs/received_message.rb +181 -0
- data/lib/aws/sqs/received_sns_message.rb +116 -0
- data/lib/aws/sqs/request.rb +67 -0
- data/lib/aws/storage_gateway.rb +73 -0
- data/lib/aws/storage_gateway/client.rb +472 -0
- data/lib/aws/storage_gateway/config.rb +18 -0
- data/lib/aws/storage_gateway/errors.rb +22 -0
- data/lib/aws/storage_gateway/request.rb +28 -0
- data/lib/aws/sts.rb +163 -0
- data/lib/aws/sts/client.rb +157 -0
- data/lib/aws/sts/config.rb +18 -0
- data/lib/aws/sts/errors.rb +22 -0
- data/lib/aws/sts/federated_session.rb +56 -0
- data/lib/aws/sts/policy.rb +30 -0
- data/lib/aws/sts/request.rb +29 -0
- data/lib/aws/sts/session.rb +48 -0
- data/lib/aws/version.rb +18 -0
- data/lib/net/http/connection_pool.rb +226 -0
- data/lib/net/http/connection_pool/connection.rb +189 -0
- data/lib/net/http/connection_pool/session.rb +126 -0
- data/rails/init.rb +15 -0
- metadata +632 -0
|
@@ -0,0 +1,276 @@
|
|
|
1
|
+
# Copyright 2011-2013 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
|
+
module AWS
|
|
15
|
+
class SimpleEmailService
|
|
16
|
+
|
|
17
|
+
# Client class for Amazon Simple E-mail Service (SES).
|
|
18
|
+
class Client < Core::QueryClient
|
|
19
|
+
|
|
20
|
+
REGION_US_E1 = 'email.us-east-1.amazonaws.com'
|
|
21
|
+
|
|
22
|
+
# @private
|
|
23
|
+
CACHEABLE_REQUESTS = Set[]
|
|
24
|
+
|
|
25
|
+
# client methods #
|
|
26
|
+
|
|
27
|
+
# @!method delete_identity(options = {})
|
|
28
|
+
# Calls the DeleteIdentity API operation.
|
|
29
|
+
# @param [Hash] options
|
|
30
|
+
# * +:identity+ - *required* - (String) The identity to be removed from
|
|
31
|
+
# the list of identities for the AWS Account.
|
|
32
|
+
# @return [Core::Response]
|
|
33
|
+
|
|
34
|
+
# @!method delete_verified_email_address(options = {})
|
|
35
|
+
# Calls the DeleteVerifiedEmailAddress API operation.
|
|
36
|
+
# @param [Hash] options
|
|
37
|
+
# * +:email_address+ - *required* - (String) An email address to be
|
|
38
|
+
# removed from the list of verified addresses.
|
|
39
|
+
# @return [Core::Response]
|
|
40
|
+
|
|
41
|
+
# @!method get_identity_dkim_attributes(options = {})
|
|
42
|
+
# Calls the GetIdentityDkimAttributes API operation.
|
|
43
|
+
# @param [Hash] options
|
|
44
|
+
# * +:identities+ - *required* - (Array<String>) A list of one or more
|
|
45
|
+
# verified identities - email addresses, domains, or both.
|
|
46
|
+
# @return [Core::Response]
|
|
47
|
+
# The #data method of the response object returns
|
|
48
|
+
# a hash with the following structure:
|
|
49
|
+
# * +:dkim_attributes+ - (Hash<String,Hash>)
|
|
50
|
+
# * +:dkim_enabled+ - (Boolean)
|
|
51
|
+
# * +:dkim_verification_status+ - (String)
|
|
52
|
+
# * +:dkim_tokens+ - (Array<String>)
|
|
53
|
+
|
|
54
|
+
# @!method get_identity_notification_attributes(options = {})
|
|
55
|
+
# Calls the GetIdentityNotificationAttributes API operation.
|
|
56
|
+
# @param [Hash] options
|
|
57
|
+
# * +:identities+ - *required* - (Array<String>) A list of one or more
|
|
58
|
+
# identities.
|
|
59
|
+
# @return [Core::Response]
|
|
60
|
+
# The #data method of the response object returns
|
|
61
|
+
# a hash with the following structure:
|
|
62
|
+
# * +:notification_attributes+ - (Hash<String,Hash>)
|
|
63
|
+
# * +:bounce_topic+ - (String)
|
|
64
|
+
# * +:complaint_topic+ - (String)
|
|
65
|
+
# * +:forwarding_enabled+ - (Boolean)
|
|
66
|
+
|
|
67
|
+
# @!method get_identity_verification_attributes(options = {})
|
|
68
|
+
# Calls the GetIdentityVerificationAttributes API operation.
|
|
69
|
+
# @param [Hash] options
|
|
70
|
+
# * +:identities+ - *required* - (Array<String>) A list of identities.
|
|
71
|
+
# @return [Core::Response]
|
|
72
|
+
# The #data method of the response object returns
|
|
73
|
+
# a hash with the following structure:
|
|
74
|
+
# * +:verification_attributes+ - (Hash<String,Hash>)
|
|
75
|
+
# * +:verification_status+ - (String)
|
|
76
|
+
# * +:verification_token+ - (String)
|
|
77
|
+
|
|
78
|
+
# @!method get_send_quota(options = {})
|
|
79
|
+
# Calls the GetSendQuota API operation.
|
|
80
|
+
# @param [Hash] options
|
|
81
|
+
# @return [Core::Response]
|
|
82
|
+
# The #data method of the response object returns
|
|
83
|
+
# a hash with the following structure:
|
|
84
|
+
# * +:max_24_hour_send+ - (Numeric)
|
|
85
|
+
# * +:max_send_rate+ - (Numeric)
|
|
86
|
+
# * +:sent_last_24_hours+ - (Numeric)
|
|
87
|
+
|
|
88
|
+
# @!method get_send_statistics(options = {})
|
|
89
|
+
# Calls the GetSendStatistics API operation.
|
|
90
|
+
# @param [Hash] options
|
|
91
|
+
# @return [Core::Response]
|
|
92
|
+
# The #data method of the response object returns
|
|
93
|
+
# a hash with the following structure:
|
|
94
|
+
# * +:send_data_points+ - (Array<Hash>)
|
|
95
|
+
# * +:timestamp+ - (Time)
|
|
96
|
+
# * +:delivery_attempts+ - (Integer)
|
|
97
|
+
# * +:bounces+ - (Integer)
|
|
98
|
+
# * +:complaints+ - (Integer)
|
|
99
|
+
# * +:rejects+ - (Integer)
|
|
100
|
+
|
|
101
|
+
# @!method list_identities(options = {})
|
|
102
|
+
# Calls the ListIdentities API operation.
|
|
103
|
+
# @param [Hash] options
|
|
104
|
+
# * +:identity_type+ - (String) The type of the identities to list.
|
|
105
|
+
# Possible values are "EmailAddress" and "Domain". If this parameter
|
|
106
|
+
# is omitted, then all identities will be listed.
|
|
107
|
+
# * +:next_token+ - (String) The token to use for pagination.
|
|
108
|
+
# * +:max_items+ - (Integer) The maximum number of identities per page.
|
|
109
|
+
# Possible values are 1-100 inclusive.
|
|
110
|
+
# @return [Core::Response]
|
|
111
|
+
# The #data method of the response object returns
|
|
112
|
+
# a hash with the following structure:
|
|
113
|
+
# * +:identities+ - (Array<String>)
|
|
114
|
+
# * +:next_token+ - (String)
|
|
115
|
+
|
|
116
|
+
# @!method list_verified_email_addresses(options = {})
|
|
117
|
+
# Calls the ListVerifiedEmailAddresses API operation.
|
|
118
|
+
# @param [Hash] options
|
|
119
|
+
# @return [Core::Response]
|
|
120
|
+
# The #data method of the response object returns
|
|
121
|
+
# a hash with the following structure:
|
|
122
|
+
# * +:verified_email_addresses+ - (Array<String>)
|
|
123
|
+
|
|
124
|
+
# @!method send_email(options = {})
|
|
125
|
+
# Calls the SendEmail API operation.
|
|
126
|
+
# @param [Hash] options
|
|
127
|
+
# * +:source+ - *required* - (String) The identity's email address.
|
|
128
|
+
# * +:destination+ - *required* - (Hash) The destination for this
|
|
129
|
+
# email, composed of To:, CC:, and BCC: fields.
|
|
130
|
+
# * +:to_addresses+ - (Array<String>) The To: field(s) of the
|
|
131
|
+
# message.
|
|
132
|
+
# * +:cc_addresses+ - (Array<String>) The CC: field(s) of the
|
|
133
|
+
# message.
|
|
134
|
+
# * +:bcc_addresses+ - (Array<String>) The BCC: field(s) of the
|
|
135
|
+
# message.
|
|
136
|
+
# * +:message+ - *required* - (Hash) The message to be sent.
|
|
137
|
+
# * +:subject+ - *required* - (Hash) The subject of the message: A
|
|
138
|
+
# short summary of the content, which will appear in the
|
|
139
|
+
# recipient's inbox.
|
|
140
|
+
# * +:data+ - *required* - (String) The textual data of the
|
|
141
|
+
# content.
|
|
142
|
+
# * +:charset+ - (String) The character set of the content.
|
|
143
|
+
# * +:body+ - *required* - (Hash) The message body.
|
|
144
|
+
# * +:text+ - (Hash) The content of the message, in text format.
|
|
145
|
+
# Use this for text-based email clients, or clients on
|
|
146
|
+
# high-latency networks (such as mobile devices).
|
|
147
|
+
# * +:data+ - *required* - (String) The textual data of the
|
|
148
|
+
# content.
|
|
149
|
+
# * +:charset+ - (String) The character set of the content.
|
|
150
|
+
# * +:html+ - (Hash) The content of the message, in HTML format.
|
|
151
|
+
# Use this for email clients that can process HTML. You can
|
|
152
|
+
# include clickable links, formatted text, and much more in an
|
|
153
|
+
# HTML message.
|
|
154
|
+
# * +:data+ - *required* - (String) The textual data of the
|
|
155
|
+
# content.
|
|
156
|
+
# * +:charset+ - (String) The character set of the content.
|
|
157
|
+
# * +:reply_to_addresses+ - (Array<String>) The reply-to email
|
|
158
|
+
# address(es) for the message. If the recipient replies to the
|
|
159
|
+
# message, each reply-to address will receive the reply.
|
|
160
|
+
# * +:return_path+ - (String) The email address to which bounce
|
|
161
|
+
# notifications are to be forwarded. If the message cannot be
|
|
162
|
+
# delivered to the recipient, then an error message will be returned
|
|
163
|
+
# from the recipient's ISP; this message will then be forwarded to
|
|
164
|
+
# the email address specified by the ReturnPath parameter.
|
|
165
|
+
# @return [Core::Response]
|
|
166
|
+
# The #data method of the response object returns
|
|
167
|
+
# a hash with the following structure:
|
|
168
|
+
# * +:message_id+ - (String)
|
|
169
|
+
|
|
170
|
+
# @!method send_raw_email(options = {})
|
|
171
|
+
# Calls the SendRawEmail API operation.
|
|
172
|
+
# @param [Hash] options
|
|
173
|
+
# * +:source+ - (String) The identity's email address. If you specify
|
|
174
|
+
# the Source parameter, then bounce notifications and complaints will
|
|
175
|
+
# be sent to this email address. This takes precedence over any
|
|
176
|
+
# Return-Path header that you might include in the raw text of the
|
|
177
|
+
# message.
|
|
178
|
+
# * +:destinations+ - (Array<String>) A list of destinations for the
|
|
179
|
+
# message.
|
|
180
|
+
# * +:raw_message+ - *required* - (Hash) The raw text of the message.
|
|
181
|
+
# The client is responsible for ensuring the following: Message must
|
|
182
|
+
# contain a header and a body, separated by a blank line. All
|
|
183
|
+
# required header fields must be present. Each part of a multipart
|
|
184
|
+
# MIME message must be formatted properly. MIME content types must be
|
|
185
|
+
# among those supported by Amazon SES. Refer to the Amazon SES
|
|
186
|
+
# Developer Guide for more details. Content must be base64-encoded,
|
|
187
|
+
# if MIME requires it.
|
|
188
|
+
# * +:data+ - *required* - (String) The raw data of the message. The
|
|
189
|
+
# client must ensure that the message format complies with Internet
|
|
190
|
+
# email standards regarding email header fields, MIME types, MIME
|
|
191
|
+
# encoding, and base64 encoding (if necessary). For more
|
|
192
|
+
# information, go to theAmazon SES Developer Guide.
|
|
193
|
+
# @return [Core::Response]
|
|
194
|
+
# The #data method of the response object returns
|
|
195
|
+
# a hash with the following structure:
|
|
196
|
+
# * +:message_id+ - (String)
|
|
197
|
+
|
|
198
|
+
# @!method set_identity_dkim_enabled(options = {})
|
|
199
|
+
# Calls the SetIdentityDkimEnabled API operation.
|
|
200
|
+
# @param [Hash] options
|
|
201
|
+
# * +:identity+ - *required* - (String) The identity for which DKIM
|
|
202
|
+
# signing should be enabled or disabled.
|
|
203
|
+
# * +:dkim_enabled+ - *required* - (Boolean) Sets whether DKIM signing
|
|
204
|
+
# is enabled for an identity. Set to +true+ to enable DKIM signing
|
|
205
|
+
# for this identity; +false+ to disable it.
|
|
206
|
+
# @return [Core::Response]
|
|
207
|
+
|
|
208
|
+
# @!method set_identity_feedback_forwarding_enabled(options = {})
|
|
209
|
+
# Calls the SetIdentityFeedbackForwardingEnabled API operation.
|
|
210
|
+
# @param [Hash] options
|
|
211
|
+
# * +:identity+ - *required* - (String) The identity for which to set
|
|
212
|
+
# feedback notification forwarding. Examples: user@example.com,
|
|
213
|
+
# example.com.
|
|
214
|
+
# * +:forwarding_enabled+ - *required* - (Boolean) Sets whether Amazon
|
|
215
|
+
# SES will forward feedback notifications as email. +true+ specifies
|
|
216
|
+
# that Amazon SES will forward feedback notifications as email, in
|
|
217
|
+
# addition to any Amazon SNS topic publishing otherwise specified.
|
|
218
|
+
# +false+ specifies that Amazon SES will publish feedback
|
|
219
|
+
# notifications only through Amazon SNS. This value can only be set
|
|
220
|
+
# to +false+ when topics are specified for both Bounce and Complaint
|
|
221
|
+
# topic types.
|
|
222
|
+
# @return [Core::Response]
|
|
223
|
+
|
|
224
|
+
# @!method set_identity_notification_topic(options = {})
|
|
225
|
+
# Calls the SetIdentityNotificationTopic API operation.
|
|
226
|
+
# @param [Hash] options
|
|
227
|
+
# * +:identity+ - *required* - (String) The identity for which the
|
|
228
|
+
# topic will be set. Examples: user@example.com, example.com.
|
|
229
|
+
# * +:notification_type+ - *required* - (String) The type of feedback
|
|
230
|
+
# notifications that will be published to the specified topic.
|
|
231
|
+
# * +:sns_topic+ - (String) The Amazon Resource Name (ARN) of the
|
|
232
|
+
# Amazon Simple Notification Service (Amazon SNS) topic. If the
|
|
233
|
+
# parameter is omitted from the request or a null value is passed,
|
|
234
|
+
# the topic is cleared and publishing is disabled.
|
|
235
|
+
# @return [Core::Response]
|
|
236
|
+
|
|
237
|
+
# @!method verify_domain_dkim(options = {})
|
|
238
|
+
# Calls the VerifyDomainDkim API operation.
|
|
239
|
+
# @param [Hash] options
|
|
240
|
+
# * +:domain+ - *required* - (String) The name of the domain to be
|
|
241
|
+
# verified for Easy DKIM signing.
|
|
242
|
+
# @return [Core::Response]
|
|
243
|
+
# The #data method of the response object returns
|
|
244
|
+
# a hash with the following structure:
|
|
245
|
+
# * +:dkim_tokens+ - (Array<String>)
|
|
246
|
+
|
|
247
|
+
# @!method verify_domain_identity(options = {})
|
|
248
|
+
# Calls the VerifyDomainIdentity API operation.
|
|
249
|
+
# @param [Hash] options
|
|
250
|
+
# * +:domain+ - *required* - (String) The domain to be verified.
|
|
251
|
+
# @return [Core::Response]
|
|
252
|
+
# The #data method of the response object returns
|
|
253
|
+
# a hash with the following structure:
|
|
254
|
+
# * +:verification_token+ - (String)
|
|
255
|
+
|
|
256
|
+
# @!method verify_email_address(options = {})
|
|
257
|
+
# Calls the VerifyEmailAddress API operation.
|
|
258
|
+
# @param [Hash] options
|
|
259
|
+
# * +:email_address+ - *required* - (String) The email address to be
|
|
260
|
+
# verified.
|
|
261
|
+
# @return [Core::Response]
|
|
262
|
+
|
|
263
|
+
# @!method verify_email_identity(options = {})
|
|
264
|
+
# Calls the VerifyEmailIdentity API operation.
|
|
265
|
+
# @param [Hash] options
|
|
266
|
+
# * +:email_address+ - *required* - (String) The email address to be
|
|
267
|
+
# verified.
|
|
268
|
+
# @return [Core::Response]
|
|
269
|
+
|
|
270
|
+
# end client methods #
|
|
271
|
+
|
|
272
|
+
define_client_methods('2010-12-01')
|
|
273
|
+
|
|
274
|
+
end
|
|
275
|
+
end
|
|
276
|
+
end
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# Copyright 2011-2013 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
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
# Copyright 2011-2013 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
|
+
module AWS
|
|
15
|
+
class SimpleEmailService
|
|
16
|
+
|
|
17
|
+
# Helps you manage your verified SimpleEmailService email addresses.
|
|
18
|
+
# @note This class is deprecated. Please use
|
|
19
|
+
# {SimpleEmailService#identities} instead.
|
|
20
|
+
class EmailAddressCollection
|
|
21
|
+
|
|
22
|
+
include Core::Model
|
|
23
|
+
include Enumerable
|
|
24
|
+
|
|
25
|
+
# Requests 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
|
+
# @note This method is deprecated.
|
|
32
|
+
def verify email_address
|
|
33
|
+
client.verify_email_address(:email_address => email_address)
|
|
34
|
+
nil
|
|
35
|
+
end
|
|
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
|
+
# @note This method is deprecated.
|
|
43
|
+
def delete email_address
|
|
44
|
+
client.delete_verified_email_address(:email_address => email_address)
|
|
45
|
+
nil
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
# @note This method is deprecated.
|
|
49
|
+
def include?
|
|
50
|
+
# this is so jruby can detect that verified? is an alias
|
|
51
|
+
super
|
|
52
|
+
end
|
|
53
|
+
alias_method :verified?, :include?
|
|
54
|
+
|
|
55
|
+
# Yields each verified email address as a string.
|
|
56
|
+
# @return [nil]
|
|
57
|
+
# yielded.
|
|
58
|
+
# @note This method is deprecated.
|
|
59
|
+
def each &block
|
|
60
|
+
response = client.list_verified_email_addresses({})
|
|
61
|
+
response.verified_email_addresses.each do |email_address|
|
|
62
|
+
yield(email_address)
|
|
63
|
+
end
|
|
64
|
+
nil
|
|
65
|
+
end
|
|
66
|
+
|
|
67
|
+
end
|
|
68
|
+
end
|
|
69
|
+
end
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# Copyright 2011-2013 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
|
+
module AWS
|
|
15
|
+
class SimpleEmailService
|
|
16
|
+
module Errors
|
|
17
|
+
|
|
18
|
+
extend Core::LazyErrorClasses
|
|
19
|
+
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
end
|
|
@@ -0,0 +1,209 @@
|
|
|
1
|
+
# Copyright 2011-2013 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
|
+
module AWS
|
|
15
|
+
class SimpleEmailService
|
|
16
|
+
|
|
17
|
+
# @attr_reader [String] verification_status
|
|
18
|
+
#
|
|
19
|
+
# @attr_reader [String,nil] verification_token
|
|
20
|
+
#
|
|
21
|
+
# @attr [String] bounce_topic_arn
|
|
22
|
+
#
|
|
23
|
+
# @attr [String] complaint_topic_arn
|
|
24
|
+
#
|
|
25
|
+
# @attr [Boolean] forwarding_enabled When +false+, complaint and bounce
|
|
26
|
+
# notifications will not be forwarded via email. Can only be set to
|
|
27
|
+
# +false+ when there is both a +bounce_topic+ and +complaint_topic+.
|
|
28
|
+
#
|
|
29
|
+
# @attr [Boolean] dkim_enabled When set to +true+, Easy DKIM signing will
|
|
30
|
+
# be enabled for email sent from this identity.
|
|
31
|
+
#
|
|
32
|
+
# @attr_reader [Array<String>] dkim_tokens Returns a set of DNS records,
|
|
33
|
+
# or tokens, that must be published in the domain name's DNS to
|
|
34
|
+
# complete the DKIM verification process. Call {#verify_dkim} if this
|
|
35
|
+
# returns an empty list.
|
|
36
|
+
#
|
|
37
|
+
# @attr_reader [String] dkim_verification_status
|
|
38
|
+
#
|
|
39
|
+
class Identity < Core::Resource
|
|
40
|
+
|
|
41
|
+
# @private
|
|
42
|
+
def initialize email_address_or_domain, options = {}
|
|
43
|
+
@identity = email_address_or_domain
|
|
44
|
+
super
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
# @return [String] Returns the email address or domain name for
|
|
48
|
+
# this identity.
|
|
49
|
+
attr_reader :identity
|
|
50
|
+
|
|
51
|
+
attribute :verification_status
|
|
52
|
+
|
|
53
|
+
attribute :verification_token, :static => true
|
|
54
|
+
|
|
55
|
+
mutable_attribute :dkim_enabled, :alias => :dkim_enabled?
|
|
56
|
+
|
|
57
|
+
attribute :dkim_tokens
|
|
58
|
+
|
|
59
|
+
attribute :dkim_verification_status
|
|
60
|
+
|
|
61
|
+
mutable_attribute :bounce_topic_arn, :from => :bounce_topic
|
|
62
|
+
|
|
63
|
+
mutable_attribute :complaint_topic_arn, :from => :complaint_topic
|
|
64
|
+
|
|
65
|
+
mutable_attribute :forwarding_enabled
|
|
66
|
+
|
|
67
|
+
alias_method :forwarding_enabled?, :forwarding_enabled
|
|
68
|
+
|
|
69
|
+
provider(:get_identity_verification_attributes) do |provider|
|
|
70
|
+
provider.provides :verification_token
|
|
71
|
+
provider.provides :verification_status
|
|
72
|
+
provider.find{|resp| resp[:verification_attributes][identity] }
|
|
73
|
+
end
|
|
74
|
+
|
|
75
|
+
provider(:get_identity_notification_attributes) do |provider|
|
|
76
|
+
provider.provides :bounce_topic_arn
|
|
77
|
+
provider.provides :complaint_topic_arn
|
|
78
|
+
provider.provides :forwarding_enabled
|
|
79
|
+
provider.find{|resp| resp[:notification_attributes][identity] }
|
|
80
|
+
end
|
|
81
|
+
|
|
82
|
+
provider(:get_identity_dkim_attributes) do |provider|
|
|
83
|
+
provider.provides :dkim_enabled
|
|
84
|
+
provider.provides :dkim_verification_status
|
|
85
|
+
provider.provides :dkim_tokens
|
|
86
|
+
provider.find{|resp| resp[:dkim_attributes][identity] }
|
|
87
|
+
end
|
|
88
|
+
|
|
89
|
+
# @return [Array<String>] Returns an array of DKIM tokens.
|
|
90
|
+
def verify_dkim
|
|
91
|
+
if domain?
|
|
92
|
+
resp = client.verify_domain_dkim(:domain => identity)
|
|
93
|
+
reps[:dkim_tokens]
|
|
94
|
+
else
|
|
95
|
+
raise "unable to verify dkim for an email address"
|
|
96
|
+
end
|
|
97
|
+
end
|
|
98
|
+
|
|
99
|
+
# @param [String,SNS::Topic] topic The topic (ARN string or topic
|
|
100
|
+
# object) that bounce notifications should be published to.
|
|
101
|
+
def bounce_topic= topic
|
|
102
|
+
arn = topic.respond_to?(:arn) ? topic.arn : topic
|
|
103
|
+
self.bounce_topic_arn = arn
|
|
104
|
+
end
|
|
105
|
+
|
|
106
|
+
# @return [SNS::Topic,nil]
|
|
107
|
+
def bounce_topic
|
|
108
|
+
if arn = bounce_topic_arn
|
|
109
|
+
SNS::Topic.new(arn, :config => config)
|
|
110
|
+
end
|
|
111
|
+
end
|
|
112
|
+
|
|
113
|
+
# @param [String,SNS::Topic] topic The topic (ARN string or topic
|
|
114
|
+
# object) that complaint notifications should be published to.
|
|
115
|
+
def complaint_topic= topic
|
|
116
|
+
arn = topic.respond_to?(:arn) ? topic.arn : topic
|
|
117
|
+
self.complaint_topic_arn = arn
|
|
118
|
+
end
|
|
119
|
+
|
|
120
|
+
# @return [SNS::Topic,nil]
|
|
121
|
+
def complaint_topic
|
|
122
|
+
if arn = complaint_topic_arn
|
|
123
|
+
SNS::Topic.new(arn, :config => config)
|
|
124
|
+
end
|
|
125
|
+
end
|
|
126
|
+
|
|
127
|
+
# @return [Boolean] Returns +true+ if this {Identity} represents an
|
|
128
|
+
# email address.
|
|
129
|
+
def email_address?
|
|
130
|
+
identity.match(/@/) ? true : false
|
|
131
|
+
end
|
|
132
|
+
|
|
133
|
+
# @return [Boolean] Returns +true+ if this {Identity} represents a
|
|
134
|
+
# domain.
|
|
135
|
+
def domain?
|
|
136
|
+
!email_address?
|
|
137
|
+
end
|
|
138
|
+
|
|
139
|
+
# @return [Boolean] Returns +true+ if this email address/domain has
|
|
140
|
+
# been verified.
|
|
141
|
+
def verified?
|
|
142
|
+
verification_status == 'Success'
|
|
143
|
+
end
|
|
144
|
+
|
|
145
|
+
# @return [Boolean] Returns +true+ if verification for this email
|
|
146
|
+
# address/domain is still pending.
|
|
147
|
+
def pending?
|
|
148
|
+
verification_status == 'Pending'
|
|
149
|
+
end
|
|
150
|
+
|
|
151
|
+
# Deletes the current identity.
|
|
152
|
+
# @return [nil]
|
|
153
|
+
def delete
|
|
154
|
+
client.delete_identity(:identity => identity)
|
|
155
|
+
nil
|
|
156
|
+
end
|
|
157
|
+
|
|
158
|
+
# @return [Boolean] Returns true if the identity exists.
|
|
159
|
+
def exists?
|
|
160
|
+
options = { :identities => [identity] }
|
|
161
|
+
resp = client.get_identity_verification_attributes(options)
|
|
162
|
+
!!resp[:verification_attributes][identity]
|
|
163
|
+
end
|
|
164
|
+
|
|
165
|
+
protected
|
|
166
|
+
|
|
167
|
+
def resource_identifiers
|
|
168
|
+
[[:identity, identity]]
|
|
169
|
+
end
|
|
170
|
+
|
|
171
|
+
def get_resource attr
|
|
172
|
+
|
|
173
|
+
method_name =
|
|
174
|
+
case attr.name.to_s
|
|
175
|
+
when /dkim/ then :get_identity_dkim_attributes
|
|
176
|
+
when /verification/ then :get_identity_verification_attributes
|
|
177
|
+
else :get_identity_notification_attributes
|
|
178
|
+
end
|
|
179
|
+
|
|
180
|
+
client.send(method_name, :identities => [identity])
|
|
181
|
+
|
|
182
|
+
end
|
|
183
|
+
|
|
184
|
+
def update_resource attr, value
|
|
185
|
+
client_opts = {}
|
|
186
|
+
client_opts[:identity] = identity
|
|
187
|
+
case attr.name
|
|
188
|
+
when :bounce_topic_arn
|
|
189
|
+
method = :set_identity_notification_topic
|
|
190
|
+
client_opts[:notification_type] = 'Bounce'
|
|
191
|
+
client_opts[:sns_topic] = value if value
|
|
192
|
+
when :complaint_topic_arn
|
|
193
|
+
method = :set_identity_notification_topic
|
|
194
|
+
client_opts[:notification_type] = 'Complaint'
|
|
195
|
+
client_opts[:sns_topic] = value if value
|
|
196
|
+
when :forwarding_enabled
|
|
197
|
+
method = :set_identity_feedback_forwarding_enabled
|
|
198
|
+
client_opts[:forwarding_enabled] = value
|
|
199
|
+
when :dkim_enabled
|
|
200
|
+
method = :set_identity_dkim_enabled
|
|
201
|
+
client_opts[:dkim_enabled] = value
|
|
202
|
+
else raise "unhandled attribute: #{attr.name}"
|
|
203
|
+
end
|
|
204
|
+
client.send(method, client_opts)
|
|
205
|
+
end
|
|
206
|
+
|
|
207
|
+
end
|
|
208
|
+
end
|
|
209
|
+
end
|