aws_sdk 3.1.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/lib/aws-sdk.rb +14 -0
- data/lib/aws.rb +49 -0
- data/lib/aws/api_config/AutoScaling-2011-01-01.yml +791 -0
- data/lib/aws/api_config/CloudFormation-2010-05-15.yml +303 -0
- data/lib/aws/api_config/DynamoDB-2011-12-05.yml +540 -0
- data/lib/aws/api_config/EC2-2011-12-15.yml +3638 -0
- data/lib/aws/api_config/EC2-2012-04-01.yml +3739 -0
- data/lib/aws/api_config/ELB-2011-08-15.yml +512 -0
- data/lib/aws/api_config/IAM-2010-05-08.yml +1221 -0
- data/lib/aws/api_config/SNS-2010-03-31.yml +248 -0
- data/lib/aws/api_config/SQS-2011-10-01.yml +314 -0
- data/lib/aws/api_config/STS-2011-06-15.yml +54 -0
- data/lib/aws/api_config/SimpleDB-2009-04-15.yml +305 -0
- data/lib/aws/api_config/SimpleEmailService-2010-12-01.yml +231 -0
- data/lib/aws/api_config/SimpleWorkflow-2012-01-25.yml +721 -0
- data/lib/aws/auto_scaling.rb +162 -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 +765 -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 +150 -0
- data/lib/aws/auto_scaling/launch_configuration_collection.rb +144 -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 +23 -0
- data/lib/aws/auto_scaling/scaling_policy.rb +125 -0
- data/lib/aws/auto_scaling/scaling_policy_collection.rb +72 -0
- data/lib/aws/auto_scaling/scaling_policy_options.rb +61 -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 +270 -0
- data/lib/aws/cloud_formation/client.rb +339 -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 +256 -0
- data/lib/aws/cloud_formation/stack_collection.rb +206 -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 +72 -0
- data/lib/aws/cloud_formation/stack_summary.rb +71 -0
- data/lib/aws/cloud_formation/stack_summary_collection.rb +127 -0
- data/lib/aws/core.rb +474 -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 +541 -0
- data/lib/aws/core/client/query_json.rb +110 -0
- data/lib/aws/core/client/query_xml.rb +122 -0
- data/lib/aws/core/collection.rb +234 -0
- data/lib/aws/core/collection/limitable.rb +99 -0
- data/lib/aws/core/collection/simple.rb +90 -0
- data/lib/aws/core/configuration.rb +445 -0
- data/lib/aws/core/data.rb +242 -0
- data/lib/aws/core/default_signer.rb +67 -0
- data/lib/aws/core/http/curb_handler.rb +136 -0
- data/lib/aws/core/http/handler.rb +77 -0
- data/lib/aws/core/http/httparty_handler.rb +114 -0
- data/lib/aws/core/http/net_http_handler.rb +85 -0
- data/lib/aws/core/http/request.rb +250 -0
- data/lib/aws/core/http/response.rb +74 -0
- data/lib/aws/core/indifferent_hash.rb +88 -0
- data/lib/aws/core/inflection.rb +47 -0
- data/lib/aws/core/lazy_error_classes.rb +90 -0
- data/lib/aws/core/log_formatter.rb +454 -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 +700 -0
- data/lib/aws/core/page_result.rb +73 -0
- data/lib/aws/core/policy.rb +916 -0
- data/lib/aws/core/resource.rb +408 -0
- data/lib/aws/core/resource_cache.rb +40 -0
- data/lib/aws/core/response.rb +202 -0
- data/lib/aws/core/response_cache.rb +50 -0
- data/lib/aws/core/service_interface.rb +61 -0
- data/lib/aws/core/session_signer.rb +90 -0
- data/lib/aws/core/signature/version_2.rb +42 -0
- data/lib/aws/core/signature/version_3.rb +73 -0
- data/lib/aws/core/signature/version_3_http.rb +72 -0
- data/lib/aws/core/signature/version_4.rb +138 -0
- data/lib/aws/core/uri_escape.rb +42 -0
- data/lib/aws/core/xml/frame.rb +242 -0
- data/lib/aws/core/xml/frame_stack.rb +85 -0
- data/lib/aws/core/xml/grammar.rb +299 -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/dynamo_db.rb +213 -0
- data/lib/aws/dynamo_db/attribute_collection.rb +460 -0
- data/lib/aws/dynamo_db/batch_get.rb +206 -0
- data/lib/aws/dynamo_db/batch_write.rb +251 -0
- data/lib/aws/dynamo_db/client.rb +888 -0
- data/lib/aws/dynamo_db/config.rb +20 -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 +130 -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 +47 -0
- data/lib/aws/dynamo_db/request.rb +28 -0
- data/lib/aws/dynamo_db/resource.rb +33 -0
- data/lib/aws/dynamo_db/table.rb +489 -0
- data/lib/aws/dynamo_db/table_collection.rb +165 -0
- data/lib/aws/dynamo_db/types.rb +86 -0
- data/lib/aws/ec2.rb +431 -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 +87 -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 +4121 -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 +157 -0
- data/lib/aws/ec2/elastic_ip_collection.rb +97 -0
- data/lib/aws/ec2/errors.rb +32 -0
- data/lib/aws/ec2/filtered_collection.rb +90 -0
- data/lib/aws/ec2/has_permissions.rb +44 -0
- data/lib/aws/ec2/image.rb +254 -0
- data/lib/aws/ec2/image_collection.rb +228 -0
- data/lib/aws/ec2/instance.rb +669 -0
- data/lib/aws/ec2/instance_collection.rb +346 -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 +97 -0
- data/lib/aws/ec2/region_collection.rb +51 -0
- data/lib/aws/ec2/request.rb +22 -0
- data/lib/aws/ec2/reserved_instances.rb +53 -0
- data/lib/aws/ec2/reserved_instances_collection.rb +40 -0
- data/lib/aws/ec2/reserved_instances_offering.rb +58 -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 +113 -0
- data/lib/aws/ec2/route_table_collection.rb +72 -0
- data/lib/aws/ec2/security_group.rb +458 -0
- data/lib/aws/ec2/security_group/egress_ip_permission_collection.rb +63 -0
- data/lib/aws/ec2/security_group/ingress_ip_permission_collection.rb +61 -0
- data/lib/aws/ec2/security_group/ip_permission.rb +128 -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 +131 -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 +170 -0
- data/lib/aws/ec2/volume_collection.rb +97 -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/elb.rb +65 -0
- data/lib/aws/elb/availability_zone_collection.rb +138 -0
- data/lib/aws/elb/backend_server_policy_collection.rb +140 -0
- data/lib/aws/elb/client.rb +539 -0
- data/lib/aws/elb/config.rb +18 -0
- data/lib/aws/elb/errors.rb +26 -0
- data/lib/aws/elb/instance_collection.rb +174 -0
- data/lib/aws/elb/listener.rb +189 -0
- data/lib/aws/elb/listener_collection.rb +119 -0
- data/lib/aws/elb/listener_opts.rb +45 -0
- data/lib/aws/elb/load_balancer.rb +253 -0
- data/lib/aws/elb/load_balancer_collection.rb +113 -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 +23 -0
- data/lib/aws/errors.rb +122 -0
- data/lib/aws/iam.rb +418 -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 +1609 -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 +71 -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/rails.rb +195 -0
- data/lib/aws/record.rb +116 -0
- data/lib/aws/record/abstract_base.rb +645 -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 +182 -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 +694 -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/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/s3.rb +135 -0
- data/lib/aws/s3/access_control_list.rb +250 -0
- data/lib/aws/s3/acl_object.rb +264 -0
- data/lib/aws/s3/bucket.rb +393 -0
- data/lib/aws/s3/bucket_collection.rb +143 -0
- data/lib/aws/s3/bucket_lifecycle_configuration.rb +360 -0
- data/lib/aws/s3/bucket_version_collection.rb +77 -0
- data/lib/aws/s3/client.rb +1184 -0
- data/lib/aws/s3/client/xml.rb +177 -0
- data/lib/aws/s3/config.rb +26 -0
- data/lib/aws/s3/data_options.rb +100 -0
- data/lib/aws/s3/errors.rb +81 -0
- data/lib/aws/s3/multipart_upload.rb +317 -0
- data/lib/aws/s3/multipart_upload_collection.rb +68 -0
- data/lib/aws/s3/object_collection.rb +337 -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 +143 -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 +553 -0
- data/lib/aws/s3/request.rb +201 -0
- data/lib/aws/s3/s3_object.rb +1037 -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/simple_db.rb +217 -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 +349 -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 +113 -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 +426 -0
- data/lib/aws/simple_email_service/client.rb +286 -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 +91 -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 +29 -0
- data/lib/aws/simple_workflow.rb +226 -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 +1434 -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 +601 -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 +36 -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 +74 -0
- data/lib/aws/sns/client.rb +371 -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 +80 -0
- data/lib/aws/sns/topic.rb +403 -0
- data/lib/aws/sns/topic_collection.rb +67 -0
- data/lib/aws/sns/topic_subscription_collection.rb +55 -0
- data/lib/aws/sqs.rb +79 -0
- data/lib/aws/sqs/client.rb +360 -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 +725 -0
- data/lib/aws/sqs/queue_collection.rb +170 -0
- data/lib/aws/sqs/received_message.rb +181 -0
- data/lib/aws/sqs/received_sns_message.rb +112 -0
- data/lib/aws/sqs/request.rb +43 -0
- data/lib/aws/sts.rb +152 -0
- data/lib/aws/sts/client.rb +105 -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/net/http/connection_pool.rb +210 -0
- data/lib/net/http/connection_pool/connection.rb +132 -0
- data/lib/net/http/connection_pool/session.rb +93 -0
- data/lib/user.rb +49 -0
- metadata +433 -0
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
# Copyright 2011-2012 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 'uuidtools'
|
|
15
|
+
|
|
16
|
+
module AWS
|
|
17
|
+
class SimpleWorkflow
|
|
18
|
+
|
|
19
|
+
# == Registering a WorkflowType
|
|
20
|
+
#
|
|
21
|
+
# To register a workflow type you should use the #workflow_types method
|
|
22
|
+
# on the domain:
|
|
23
|
+
#
|
|
24
|
+
# domain.workflow_types.register('name', 'version', { ... })
|
|
25
|
+
#
|
|
26
|
+
# See {WorkflowTypeCollection#register} for a complete list of options.
|
|
27
|
+
#
|
|
28
|
+
# == Deprecating a workflwo type
|
|
29
|
+
#
|
|
30
|
+
# WorkflowType inherits from the generic {Type} base class. Defined in
|
|
31
|
+
# {Type} are a few useful methods including:
|
|
32
|
+
#
|
|
33
|
+
# * {Type#deprecate}
|
|
34
|
+
# * {Type#deprecated?}
|
|
35
|
+
#
|
|
36
|
+
# You can use these to deprecate a workflow type:
|
|
37
|
+
#
|
|
38
|
+
# domain.workflow_types['name','version'].deprecate
|
|
39
|
+
#
|
|
40
|
+
# @attr_reader [Time] creation_date When the workflow type was registered.
|
|
41
|
+
#
|
|
42
|
+
# @attr_reader [Time,nil] deprecation_date When the workflow type
|
|
43
|
+
# was deprecated, or nil if the workflow type has not been deprecated.
|
|
44
|
+
#
|
|
45
|
+
# @attr_reader [String,nil] description The description of this workflow
|
|
46
|
+
# type, or nil if was not set when it was registered.
|
|
47
|
+
#
|
|
48
|
+
# @attr_reader [Symbol] status The status of this workflow type. The
|
|
49
|
+
# status will either be +:registered+ or +:deprecated+.
|
|
50
|
+
#
|
|
51
|
+
# @attr_reader [Symbol,nil] default_child_policy Specifies the default
|
|
52
|
+
# policy to use for the child workflow executions when a workflow
|
|
53
|
+
# execution of this type is terminated. Values may be one of the
|
|
54
|
+
# following (or nil):
|
|
55
|
+
#
|
|
56
|
+
# * +:terminate+ - the child executions will be terminated.
|
|
57
|
+
#
|
|
58
|
+
# * +:request_cancel+ - a request to cancel will be attempted for each
|
|
59
|
+
# child execution by recording a WorkflowExecutionCancelRequested
|
|
60
|
+
# event in its history. It is up to the decider to take appropriate
|
|
61
|
+
# actions when it receives an execution history with this event.
|
|
62
|
+
#
|
|
63
|
+
# * +:abandon+ - no action will be taken. The child executions will
|
|
64
|
+
# continue to run.
|
|
65
|
+
#
|
|
66
|
+
# @attr_reader [Integer,:none,nil] default_execution_start_to_close_timeout
|
|
67
|
+
# The default maximum duration for executions of this workflow type.
|
|
68
|
+
#
|
|
69
|
+
# The return value may be an integer (number of seconds), the
|
|
70
|
+
# symbol +:none+ (implying no timeout) or +nil+ (not specified).
|
|
71
|
+
#
|
|
72
|
+
# @attr_reader [String,nil] default_task_list Specifies
|
|
73
|
+
# the default task list to use for scheduling decision tasks for
|
|
74
|
+
# executions of this workflow type.
|
|
75
|
+
#
|
|
76
|
+
# @attr_reader [Integer,:none,nil] default_task_start_to_close_timeout
|
|
77
|
+
# The default maximum duration of decision tasks for this workflow type.
|
|
78
|
+
#
|
|
79
|
+
# The return value may be an integer (number of seconds), the
|
|
80
|
+
# symbol +:none+ (implying no timeout) or +nil+ (not specified).
|
|
81
|
+
#
|
|
82
|
+
class WorkflowType < Type
|
|
83
|
+
|
|
84
|
+
include OptionFormatters
|
|
85
|
+
|
|
86
|
+
type_attribute :creation_date, :timestamp => true
|
|
87
|
+
|
|
88
|
+
type_attribute :deprecation_date, :timestamp => true, :static => false
|
|
89
|
+
|
|
90
|
+
type_attribute :description
|
|
91
|
+
|
|
92
|
+
type_attribute :status, :to_sym => true, :static => false
|
|
93
|
+
|
|
94
|
+
config_attribute :default_child_policy, :to_sym => true
|
|
95
|
+
|
|
96
|
+
config_attribute :default_execution_start_to_close_timeout,
|
|
97
|
+
:duration => true
|
|
98
|
+
|
|
99
|
+
config_attribute :default_task_list do
|
|
100
|
+
translates_output {|v| v['name'] }
|
|
101
|
+
end
|
|
102
|
+
|
|
103
|
+
config_attribute :default_task_start_to_close_timeout,
|
|
104
|
+
:duration => true
|
|
105
|
+
|
|
106
|
+
# @param [Hash] options
|
|
107
|
+
#
|
|
108
|
+
# @option (see DecisionTask#continue_as_new_workflow_execution)
|
|
109
|
+
#
|
|
110
|
+
# @option options [String] :workflow_id
|
|
111
|
+
# A user defined identifier associated with the workflow execution.
|
|
112
|
+
# You can use this to associate a custom identifier with the
|
|
113
|
+
# workflow execution. You may specify the same identifier if a
|
|
114
|
+
# workflow execution is logically a restart of a previous execution.
|
|
115
|
+
# You cannot have two open workflow executions with the same
|
|
116
|
+
# :workflow_id at the same time.
|
|
117
|
+
#
|
|
118
|
+
# If you do not provide +:workflow_id+ a random UUID will be generated.
|
|
119
|
+
#
|
|
120
|
+
# @return [WorkflowExecution] Returns the new workflow execution.
|
|
121
|
+
#
|
|
122
|
+
def start_execution options = {}
|
|
123
|
+
|
|
124
|
+
options[:domain] = domain.name
|
|
125
|
+
start_execution_opts(options, self)
|
|
126
|
+
response = client.start_workflow_execution(options)
|
|
127
|
+
|
|
128
|
+
workflow_id = options[:workflow_id]
|
|
129
|
+
run_id = response.data['runId']
|
|
130
|
+
|
|
131
|
+
domain.workflow_executions[workflow_id, run_id]
|
|
132
|
+
|
|
133
|
+
end
|
|
134
|
+
|
|
135
|
+
# Returns a count of workflow executions of this workflow type.
|
|
136
|
+
#
|
|
137
|
+
# domain.workflow_types['name','version'].count
|
|
138
|
+
#
|
|
139
|
+
# @note (see WorkflowExecution#count_executions)
|
|
140
|
+
# @param (see WorkflowExecution#count_executions)
|
|
141
|
+
# @option (see WorkflowExecution#count_executions)
|
|
142
|
+
# @return [Integer] Returns the count of workflow execution of this type.
|
|
143
|
+
def count_executions options = {}
|
|
144
|
+
options[:workflow_type] = self
|
|
145
|
+
domain.workflow_executions.count(options)
|
|
146
|
+
end
|
|
147
|
+
|
|
148
|
+
# @return [WorkflowExecutionCollection] Returns a collection that
|
|
149
|
+
# enumerates only workflow executions of this type.
|
|
150
|
+
def workflow_executions
|
|
151
|
+
WorkflowExecutionCollection.new(domain).with_workflow_type(self)
|
|
152
|
+
end
|
|
153
|
+
|
|
154
|
+
# list workflow type only provides type attributes
|
|
155
|
+
provider(:list_workflow_types) do |provider|
|
|
156
|
+
provider.provides *type_attributes.keys
|
|
157
|
+
provider.find do |resp|
|
|
158
|
+
desc = resp.data['typeInfos'].find do |info|
|
|
159
|
+
info[self.class.type_key] == { 'name' => name, 'version' => version }
|
|
160
|
+
end
|
|
161
|
+
end
|
|
162
|
+
end
|
|
163
|
+
|
|
164
|
+
# describe workflow type provides type and config attributes
|
|
165
|
+
provider(:describe_workflow_type) do |provider|
|
|
166
|
+
provider.provides *type_attributes.keys
|
|
167
|
+
provider.provides *config_attributes.keys
|
|
168
|
+
provider.find do |resp|
|
|
169
|
+
type = { 'name' => name, 'version' => version }
|
|
170
|
+
resp.data['typeInfo'][self.class.type_key] == type ?
|
|
171
|
+
resp.data['typeInfo'].merge(resp.data['configuration']) : nil
|
|
172
|
+
end
|
|
173
|
+
end
|
|
174
|
+
|
|
175
|
+
end
|
|
176
|
+
end
|
|
177
|
+
end
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
# Copyright 2011-2012 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 SimpleWorkflow
|
|
16
|
+
|
|
17
|
+
class WorkflowTypeCollection < TypeCollection
|
|
18
|
+
|
|
19
|
+
# Registers a new workflow type and its configuration settings for
|
|
20
|
+
# in the current domain.
|
|
21
|
+
#
|
|
22
|
+
# @param [String] name The name of the workflow type.
|
|
23
|
+
#
|
|
24
|
+
# @param [String] version The version of the workflow type.
|
|
25
|
+
# The workflow type consists of the name and version, the
|
|
26
|
+
# combination of which must be unique within the domain.
|
|
27
|
+
#
|
|
28
|
+
# @param [Hash] options
|
|
29
|
+
#
|
|
30
|
+
# @option options [Symbol] :default_child_policy (nil) Specifies the default
|
|
31
|
+
# policy to use for the child workflow executions when a workflow
|
|
32
|
+
# execution of this type is terminated. This default can be
|
|
33
|
+
# overridden when starting a workflow execution. The supported child
|
|
34
|
+
# policies are:
|
|
35
|
+
#
|
|
36
|
+
# * +:terminate+ - the child executions will be terminated.
|
|
37
|
+
#
|
|
38
|
+
# * +:request_cancel+ - a request to cancel will be attempted for each
|
|
39
|
+
# child execution by recording a WorkflowExecutionCancelRequested
|
|
40
|
+
# event in its history. It is up to the decider to take appropriate
|
|
41
|
+
# actions when it receives an execution history with this event.
|
|
42
|
+
#
|
|
43
|
+
# * +:abandon+ - no action will be taken. The child executions will
|
|
44
|
+
# continue to run.
|
|
45
|
+
#
|
|
46
|
+
# @option options [Integer,:none] :default_execution_start_to_close_timeout (nil)
|
|
47
|
+
# The default maximum duration for executions of this workflow type.
|
|
48
|
+
# You can override this default when starting an execution.
|
|
49
|
+
# The value should be a number of seconds (integer) or the symbol
|
|
50
|
+
# +:none+ (implying no timeout).
|
|
51
|
+
#
|
|
52
|
+
# @option options [String] :default_task_list (nil) Specifies
|
|
53
|
+
# the default task list to use for scheduling decision tasks for
|
|
54
|
+
# executions of this workflow type. This default is used only if
|
|
55
|
+
# a task list is not provided when starting the workflow execution.
|
|
56
|
+
#
|
|
57
|
+
# @option options [Integer,:none] :default_task_start_to_close_timeout (nil)
|
|
58
|
+
# The default maximum duration of decision tasks for this workflow type.
|
|
59
|
+
#
|
|
60
|
+
# The value should be a number of seconds (integer) or the symbol
|
|
61
|
+
# +:none+ (implying no timeout).
|
|
62
|
+
#
|
|
63
|
+
# @option options [String] :description (nil) Textual description of
|
|
64
|
+
# the workflow type.
|
|
65
|
+
#
|
|
66
|
+
def register name, version, options = {}
|
|
67
|
+
|
|
68
|
+
options[:domain] = domain.name
|
|
69
|
+
options[:name] = name
|
|
70
|
+
options[:version] = version
|
|
71
|
+
|
|
72
|
+
upcase_opts(options, :default_child_policy)
|
|
73
|
+
|
|
74
|
+
duration_opts(options,
|
|
75
|
+
:default_execution_start_to_close_timeout,
|
|
76
|
+
:default_task_start_to_close_timeout)
|
|
77
|
+
|
|
78
|
+
if task_list = options[:default_task_list]
|
|
79
|
+
options[:default_task_list] = { :name => task_list.to_s }
|
|
80
|
+
end
|
|
81
|
+
|
|
82
|
+
client.register_workflow_type(options)
|
|
83
|
+
|
|
84
|
+
self[name, version]
|
|
85
|
+
|
|
86
|
+
end
|
|
87
|
+
alias_method :create, :register
|
|
88
|
+
|
|
89
|
+
end
|
|
90
|
+
end
|
|
91
|
+
end
|
data/lib/aws/sns.rb
ADDED
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
# Copyright 2011-2012 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/core'
|
|
15
|
+
require 'aws/sns/config'
|
|
16
|
+
|
|
17
|
+
module AWS
|
|
18
|
+
|
|
19
|
+
# This class is the starting point for working with Amazon Simple
|
|
20
|
+
# Notification Service (SNS).
|
|
21
|
+
#
|
|
22
|
+
# To use Amazon SNS you must first {sign up here}[http://aws.amazon.com/sns/].
|
|
23
|
+
#
|
|
24
|
+
# For more information about Amazon SNS:
|
|
25
|
+
#
|
|
26
|
+
# * {Amazon SNS}[http://aws.amazon.com/sns/]
|
|
27
|
+
# * {Amazon SNS Documentation}[http://aws.amazon.com/documentation/sns/]
|
|
28
|
+
#
|
|
29
|
+
# = Credentials
|
|
30
|
+
#
|
|
31
|
+
# You can setup default credentials for all AWS services via
|
|
32
|
+
# AWS.config:
|
|
33
|
+
#
|
|
34
|
+
# AWS.config(
|
|
35
|
+
# :access_key_id => 'YOUR_ACCESS_KEY_ID',
|
|
36
|
+
# :secret_access_key => 'YOUR_SECRET_ACCESS_KEY')
|
|
37
|
+
#
|
|
38
|
+
# Or you can set them directly on the SNS interface:
|
|
39
|
+
#
|
|
40
|
+
# sns = AWS::SNS.new(
|
|
41
|
+
# :access_key_id => 'YOUR_ACCESS_KEY_ID',
|
|
42
|
+
# :secret_access_key => 'YOUR_SECRET_ACCESS_KEY')
|
|
43
|
+
#
|
|
44
|
+
class SNS
|
|
45
|
+
|
|
46
|
+
AWS.register_autoloads(self) do
|
|
47
|
+
autoload :Client, 'client'
|
|
48
|
+
autoload :Errors, 'errors'
|
|
49
|
+
autoload :Policy, 'policy'
|
|
50
|
+
autoload :HasDeliveryPolicy, 'has_delivery_policy'
|
|
51
|
+
autoload :Request, 'request'
|
|
52
|
+
autoload :Subscription, 'subscription'
|
|
53
|
+
autoload :SubscriptionCollection, 'subscription_collection'
|
|
54
|
+
autoload :Topic, 'topic'
|
|
55
|
+
autoload :TopicCollection, 'topic_collection'
|
|
56
|
+
autoload :TopicSubscriptionCollection, 'topic_subscription_collection'
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
include Core::ServiceInterface
|
|
60
|
+
|
|
61
|
+
# @return [TopicCollection] Returns a topic collection for managing
|
|
62
|
+
# SNS topics.
|
|
63
|
+
def topics
|
|
64
|
+
TopicCollection.new(:config => config)
|
|
65
|
+
end
|
|
66
|
+
|
|
67
|
+
# @return [SubscriptionCollection] Returns a subscription
|
|
68
|
+
# collection for managing SNS subscriptions.
|
|
69
|
+
def subscriptions
|
|
70
|
+
SubscriptionCollection.new(:config => config)
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
end
|
|
74
|
+
end
|
|
@@ -0,0 +1,371 @@
|
|
|
1
|
+
# Copyright 2011-2012 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 SNS
|
|
16
|
+
|
|
17
|
+
# Client class for Amazon Simple Notifications Service (SNS).
|
|
18
|
+
class Client < Core::Client
|
|
19
|
+
|
|
20
|
+
API_VERSION = '2010-03-31'
|
|
21
|
+
|
|
22
|
+
extend Core::Client::QueryXML
|
|
23
|
+
|
|
24
|
+
# @private
|
|
25
|
+
CACHEABLE_REQUESTS = Set[]
|
|
26
|
+
|
|
27
|
+
## client methods ##
|
|
28
|
+
|
|
29
|
+
# Calls the AddPermission API operation.
|
|
30
|
+
# @method add_permission(options = {})
|
|
31
|
+
#
|
|
32
|
+
# === Options:
|
|
33
|
+
#
|
|
34
|
+
# * +:topic_arn+ - *required* - (String) The ARN of the topic whose
|
|
35
|
+
# access control policy you wish to modify.
|
|
36
|
+
# * +:label+ - *required* - (String) A unique identifier for the new
|
|
37
|
+
# policy statement.
|
|
38
|
+
# * +:aws_account_id+ - *required* - (Array<String>) The AWS account IDs
|
|
39
|
+
# of the users (principals) who will be given access to the specified
|
|
40
|
+
# actions. The users must have AWS accounts, but do not need to be
|
|
41
|
+
# signed up for this service.
|
|
42
|
+
# * +:action_name+ - *required* - (Array<String>) The action you want to
|
|
43
|
+
# allow for the specified principal(s). Valid values: any Amazon SNS
|
|
44
|
+
# action name.
|
|
45
|
+
#
|
|
46
|
+
# === Response Structure:
|
|
47
|
+
#
|
|
48
|
+
# This method returns no response data.
|
|
49
|
+
#
|
|
50
|
+
# @return [Core::Response]
|
|
51
|
+
#
|
|
52
|
+
define_client_method :add_permission, 'AddPermission'
|
|
53
|
+
|
|
54
|
+
# Calls the ConfirmSubscription API operation.
|
|
55
|
+
# @method confirm_subscription(options = {})
|
|
56
|
+
#
|
|
57
|
+
# === Options:
|
|
58
|
+
#
|
|
59
|
+
# * +:topic_arn+ - *required* - (String) The ARN of the topic for which
|
|
60
|
+
# you wish to confirm a subscription.
|
|
61
|
+
# * +:token+ - *required* - (String) Short-lived token sent to an
|
|
62
|
+
# endpoint during the Subscribe action.
|
|
63
|
+
# * +:authenticate_on_unsubscribe+ - (String) Disallows unauthenticated
|
|
64
|
+
# unsubscribes of the subscription. If the value of this parameter is
|
|
65
|
+
# +true+ and the request has an AWS signature, then only the topic
|
|
66
|
+
# owner and the subscription owner can unsubscribe the endpoint. The
|
|
67
|
+
# unsubscribe action will require AWS authentication.
|
|
68
|
+
#
|
|
69
|
+
# === Response Structure:
|
|
70
|
+
#
|
|
71
|
+
# * +:subscription_arn+ - (String)
|
|
72
|
+
#
|
|
73
|
+
# @return [Core::Response]
|
|
74
|
+
#
|
|
75
|
+
define_client_method :confirm_subscription, 'ConfirmSubscription'
|
|
76
|
+
|
|
77
|
+
# Calls the CreateTopic API operation.
|
|
78
|
+
# @method create_topic(options = {})
|
|
79
|
+
#
|
|
80
|
+
# === Options:
|
|
81
|
+
#
|
|
82
|
+
# * +:name+ - *required* - (String) The name of the topic you want to
|
|
83
|
+
# create. Constraints: Topic names must be made up of only uppercase
|
|
84
|
+
# and lowercase ASCII letters, numbers, and hyphens, and must be
|
|
85
|
+
# between 1 and 256 characters long.
|
|
86
|
+
#
|
|
87
|
+
# === Response Structure:
|
|
88
|
+
#
|
|
89
|
+
# * +:topic_arn+ - (String)
|
|
90
|
+
#
|
|
91
|
+
# @return [Core::Response]
|
|
92
|
+
#
|
|
93
|
+
define_client_method :create_topic, 'CreateTopic'
|
|
94
|
+
|
|
95
|
+
# Calls the DeleteTopic API operation.
|
|
96
|
+
# @method delete_topic(options = {})
|
|
97
|
+
#
|
|
98
|
+
# === Options:
|
|
99
|
+
#
|
|
100
|
+
# * +:topic_arn+ - *required* - (String) The ARN of the topic you want to
|
|
101
|
+
# delete. http://sns.us-east-1.amazonaws.com/
|
|
102
|
+
# ?TopicArn=arn%3Aaws%3Asns%3Aus-east-1%3A123456789012%3AMy-Topic
|
|
103
|
+
# &Action=DeleteTopic &SignatureVersion=2 &SignatureMethod=HmacSHA256
|
|
104
|
+
# &Timestamp=2010-03-31T12%3A00%3A00.000Z &AWSAccessKeyId=(AWS Access
|
|
105
|
+
# Key ID)
|
|
106
|
+
# &Signature=DjHBa%2BbYCKQAzctOPnLP7MbHnrHT3%2FK3kFEZjwcf9%2FU%3D
|
|
107
|
+
# <DeleteTopicResponse
|
|
108
|
+
# xmlns="http://sns.amazonaws.com/doc/2010-03-31/"> <ResponseMetadata>
|
|
109
|
+
# <RequestId>fba800b9-3765-11df-8cf3-c58c53254dfb</RequestId>
|
|
110
|
+
# </ResponseMetadata> </DeleteTopicResponse>
|
|
111
|
+
#
|
|
112
|
+
# === Response Structure:
|
|
113
|
+
#
|
|
114
|
+
# This method returns no response data.
|
|
115
|
+
#
|
|
116
|
+
# @return [Core::Response]
|
|
117
|
+
#
|
|
118
|
+
define_client_method :delete_topic, 'DeleteTopic'
|
|
119
|
+
|
|
120
|
+
# Calls the GetSubscriptionAttributes API operation.
|
|
121
|
+
# @method get_subscription_attributes(options = {})
|
|
122
|
+
#
|
|
123
|
+
# === Options:
|
|
124
|
+
#
|
|
125
|
+
# * +:subscription_arn+ - *required* - (String) The ARN of the
|
|
126
|
+
# subscription whose properties you want to get.
|
|
127
|
+
#
|
|
128
|
+
# === Response Structure:
|
|
129
|
+
#
|
|
130
|
+
# * +:attributes+ - (Hash<String,String>)
|
|
131
|
+
#
|
|
132
|
+
# @return [Core::Response]
|
|
133
|
+
#
|
|
134
|
+
define_client_method :get_subscription_attributes, 'GetSubscriptionAttributes'
|
|
135
|
+
|
|
136
|
+
# Calls the GetTopicAttributes API operation.
|
|
137
|
+
# @method get_topic_attributes(options = {})
|
|
138
|
+
#
|
|
139
|
+
# === Options:
|
|
140
|
+
#
|
|
141
|
+
# * +:topic_arn+ - *required* - (String) The ARN of the topic whose
|
|
142
|
+
# properties you want to get.
|
|
143
|
+
#
|
|
144
|
+
# === Response Structure:
|
|
145
|
+
#
|
|
146
|
+
# * +:attributes+ - (Hash<String,String>)
|
|
147
|
+
#
|
|
148
|
+
# @return [Core::Response]
|
|
149
|
+
#
|
|
150
|
+
define_client_method :get_topic_attributes, 'GetTopicAttributes'
|
|
151
|
+
|
|
152
|
+
# Calls the ListSubscriptions API operation.
|
|
153
|
+
# @method list_subscriptions(options = {})
|
|
154
|
+
#
|
|
155
|
+
# === Options:
|
|
156
|
+
#
|
|
157
|
+
# * +:next_token+ - (String) Token returned by the previous
|
|
158
|
+
# ListSubscriptions request.
|
|
159
|
+
#
|
|
160
|
+
# === Response Structure:
|
|
161
|
+
#
|
|
162
|
+
# * +:subscriptions+ - (Array<Hash>)
|
|
163
|
+
# * +:subscription_arn+ - (String)
|
|
164
|
+
# * +:owner+ - (String)
|
|
165
|
+
# * +:protocol+ - (String)
|
|
166
|
+
# * +:endpoint+ - (String)
|
|
167
|
+
# * +:topic_arn+ - (String)
|
|
168
|
+
# * +:next_token+ - (String)
|
|
169
|
+
#
|
|
170
|
+
# @return [Core::Response]
|
|
171
|
+
#
|
|
172
|
+
define_client_method :list_subscriptions, 'ListSubscriptions'
|
|
173
|
+
|
|
174
|
+
# Calls the ListSubscriptionsByTopic API operation.
|
|
175
|
+
# @method list_subscriptions_by_topic(options = {})
|
|
176
|
+
#
|
|
177
|
+
# === Options:
|
|
178
|
+
#
|
|
179
|
+
# * +:topic_arn+ - *required* - (String) The ARN of the topic for which
|
|
180
|
+
# you wish to find subscriptions.
|
|
181
|
+
# * +:next_token+ - (String) Token returned by the previous
|
|
182
|
+
# ListSubscriptionsByTopic request.
|
|
183
|
+
#
|
|
184
|
+
# === Response Structure:
|
|
185
|
+
#
|
|
186
|
+
# * +:subscriptions+ - (Array<Hash>)
|
|
187
|
+
# * +:subscription_arn+ - (String)
|
|
188
|
+
# * +:owner+ - (String)
|
|
189
|
+
# * +:protocol+ - (String)
|
|
190
|
+
# * +:endpoint+ - (String)
|
|
191
|
+
# * +:topic_arn+ - (String)
|
|
192
|
+
# * +:next_token+ - (String)
|
|
193
|
+
#
|
|
194
|
+
# @return [Core::Response]
|
|
195
|
+
#
|
|
196
|
+
define_client_method :list_subscriptions_by_topic, 'ListSubscriptionsByTopic'
|
|
197
|
+
|
|
198
|
+
# Calls the ListTopics API operation.
|
|
199
|
+
# @method list_topics(options = {})
|
|
200
|
+
#
|
|
201
|
+
# === Options:
|
|
202
|
+
#
|
|
203
|
+
# * +:next_token+ - (String) Token returned by the previous ListTopics
|
|
204
|
+
# request.
|
|
205
|
+
#
|
|
206
|
+
# === Response Structure:
|
|
207
|
+
#
|
|
208
|
+
# * +:topics+ - (Array<Hash>)
|
|
209
|
+
# * +:topic_arn+ - (String)
|
|
210
|
+
# * +:next_token+ - (String)
|
|
211
|
+
#
|
|
212
|
+
# @return [Core::Response]
|
|
213
|
+
#
|
|
214
|
+
define_client_method :list_topics, 'ListTopics'
|
|
215
|
+
|
|
216
|
+
# Calls the Publish API operation.
|
|
217
|
+
# @method publish(options = {})
|
|
218
|
+
#
|
|
219
|
+
# === Options:
|
|
220
|
+
#
|
|
221
|
+
# * +:topic_arn+ - *required* - (String) The topic you want to publish
|
|
222
|
+
# to.
|
|
223
|
+
# * +:message+ - *required* - (String) The message you want to send to
|
|
224
|
+
# the topic. Constraints: Messages must be UTF-8 encoded strings at
|
|
225
|
+
# most 8 KB in size (8192 bytes, not 8192 characters).
|
|
226
|
+
# * +:subject+ - (String) Optional parameter to be used as the "Subject"
|
|
227
|
+
# line of when the message is delivered to e-mail endpoints. This field
|
|
228
|
+
# will also be included, if present, in the standard JSON messages
|
|
229
|
+
# delivered to other endpoints. Constraints: Subjects must be ASCII
|
|
230
|
+
# text that begins with a letter, number or punctuation mark; must not
|
|
231
|
+
# include line breaks or control characters; and must be less than 100
|
|
232
|
+
# characters long.
|
|
233
|
+
# * +:message_structure+ - (String) Optional parameter. It will have one
|
|
234
|
+
# valid value: "json". If this option, Message is present and set to
|
|
235
|
+
# "json", the value of Message must: be a syntactically valid JSON
|
|
236
|
+
# object. It must contain at least a top level JSON key of "default"
|
|
237
|
+
# with a value that is a string. For any other top level key that
|
|
238
|
+
# matches one of our transport protocols (e.g. "http"), then the
|
|
239
|
+
# corresponding value (if it is a string) will be used for the message
|
|
240
|
+
# published for that protocol Constraints: Keys in the JSON object that
|
|
241
|
+
# correspond to supported transport protocols must have simple JSON
|
|
242
|
+
# string values. The values will be parsed (unescaped) before they are
|
|
243
|
+
# used in outgoing messages. Typically, outbound notifications are JSON
|
|
244
|
+
# encoded (meaning, the characters will be reescaped for sending). JSON
|
|
245
|
+
# strings are UTF-8. Values have a minimum length of 0 (the empty
|
|
246
|
+
# string, "", is allowed). Values have a maximum length bounded by the
|
|
247
|
+
# overall message size (so, including multiple protocols may limit
|
|
248
|
+
# message sizes). Non-string values will cause the key to be ignored.
|
|
249
|
+
# Keys that do not correspond to supported transport protocols will be
|
|
250
|
+
# ignored. Duplicate keys are not allowed. Failure to parse or validate
|
|
251
|
+
# any key or value in the message will cause the Publish call to return
|
|
252
|
+
# an error (no partial delivery).
|
|
253
|
+
#
|
|
254
|
+
# === Response Structure:
|
|
255
|
+
#
|
|
256
|
+
# * +:message_id+ - (String)
|
|
257
|
+
#
|
|
258
|
+
# @return [Core::Response]
|
|
259
|
+
#
|
|
260
|
+
define_client_method :publish, 'Publish'
|
|
261
|
+
|
|
262
|
+
# Calls the RemovePermission API operation.
|
|
263
|
+
# @method remove_permission(options = {})
|
|
264
|
+
#
|
|
265
|
+
# === Options:
|
|
266
|
+
#
|
|
267
|
+
# * +:topic_arn+ - *required* - (String) The ARN of the topic whose
|
|
268
|
+
# access control policy you wish to modify.
|
|
269
|
+
# * +:label+ - *required* - (String) The unique label of the statement
|
|
270
|
+
# you want to remove.
|
|
271
|
+
#
|
|
272
|
+
# === Response Structure:
|
|
273
|
+
#
|
|
274
|
+
# This method returns no response data.
|
|
275
|
+
#
|
|
276
|
+
# @return [Core::Response]
|
|
277
|
+
#
|
|
278
|
+
define_client_method :remove_permission, 'RemovePermission'
|
|
279
|
+
|
|
280
|
+
# Calls the SetSubscriptionAttributes API operation.
|
|
281
|
+
# @method set_subscription_attributes(options = {})
|
|
282
|
+
#
|
|
283
|
+
# === Options:
|
|
284
|
+
#
|
|
285
|
+
# * +:subscription_arn+ - *required* - (String) The ARN of the
|
|
286
|
+
# subscription to modify.
|
|
287
|
+
# * +:attribute_name+ - *required* - (String) The name of the attribute
|
|
288
|
+
# you want to set. Only a subset of the subscriptions attributes are
|
|
289
|
+
# mutable. Valid values: DeliveryPolicy
|
|
290
|
+
# * +:attribute_value+ - *required* - (String) The new value for the
|
|
291
|
+
# attribute.
|
|
292
|
+
#
|
|
293
|
+
# === Response Structure:
|
|
294
|
+
#
|
|
295
|
+
# This method returns no response data.
|
|
296
|
+
#
|
|
297
|
+
# @return [Core::Response]
|
|
298
|
+
#
|
|
299
|
+
define_client_method :set_subscription_attributes, 'SetSubscriptionAttributes'
|
|
300
|
+
|
|
301
|
+
# Calls the SetTopicAttributes API operation.
|
|
302
|
+
# @method set_topic_attributes(options = {})
|
|
303
|
+
#
|
|
304
|
+
# === Options:
|
|
305
|
+
#
|
|
306
|
+
# * +:topic_arn+ - *required* - (String) The ARN of the topic to modify.
|
|
307
|
+
# * +:attribute_name+ - *required* - (String) The name of the attribute
|
|
308
|
+
# you want to set. Only a subset of the topic's attributes are mutable.
|
|
309
|
+
# Valid values: Policy | DisplayName
|
|
310
|
+
# * +:attribute_value+ - *required* - (String) The new value for the
|
|
311
|
+
# attribute.
|
|
312
|
+
#
|
|
313
|
+
# === Response Structure:
|
|
314
|
+
#
|
|
315
|
+
# This method returns no response data.
|
|
316
|
+
#
|
|
317
|
+
# @return [Core::Response]
|
|
318
|
+
#
|
|
319
|
+
define_client_method :set_topic_attributes, 'SetTopicAttributes'
|
|
320
|
+
|
|
321
|
+
# Calls the Subscribe API operation.
|
|
322
|
+
# @method subscribe(options = {})
|
|
323
|
+
#
|
|
324
|
+
# === Options:
|
|
325
|
+
#
|
|
326
|
+
# * +:topic_arn+ - *required* - (String) The ARN of topic you want to
|
|
327
|
+
# subscribe to.
|
|
328
|
+
# * +:protocol+ - *required* - (String) The protocol you want to use.
|
|
329
|
+
# Supported protocols include: http -- delivery of JSON-encoded message
|
|
330
|
+
# via HTTP POST https -- delivery of JSON-encoded message via HTTPS
|
|
331
|
+
# POST email -- delivery of message via SMTP email-json -- delivery of
|
|
332
|
+
# JSON-encoded message via SMTP sms -- delivery of message via SMS sqs
|
|
333
|
+
# -- delivery of JSON-encoded message to an Amazon SQS queue
|
|
334
|
+
# * +:endpoint+ - *required* - (String) The endpoint that you want to
|
|
335
|
+
# receive notifications. Endpoints vary by protocol: For the http
|
|
336
|
+
# protocol, the endpoint is an URL beginning with "http://" For the
|
|
337
|
+
# https protocol, the endpoint is a URL beginning with "https://" For
|
|
338
|
+
# the email protocol, the endpoint is an e-mail address For the
|
|
339
|
+
# email-json protocol, the endpoint is an e-mail address For the sms
|
|
340
|
+
# protocol, the endpoint is a phone number of an SMS-enabled device For
|
|
341
|
+
# the sqs protocol, the endpoint is the ARN of an Amazon SQS queue
|
|
342
|
+
#
|
|
343
|
+
# === Response Structure:
|
|
344
|
+
#
|
|
345
|
+
# * +:subscription_arn+ - (String)
|
|
346
|
+
#
|
|
347
|
+
# @return [Core::Response]
|
|
348
|
+
#
|
|
349
|
+
define_client_method :subscribe, 'Subscribe'
|
|
350
|
+
|
|
351
|
+
# Calls the Unsubscribe API operation.
|
|
352
|
+
# @method unsubscribe(options = {})
|
|
353
|
+
#
|
|
354
|
+
# === Options:
|
|
355
|
+
#
|
|
356
|
+
# * +:subscription_arn+ - *required* - (String) The ARN of the
|
|
357
|
+
# subscription to be deleted.
|
|
358
|
+
#
|
|
359
|
+
# === Response Structure:
|
|
360
|
+
#
|
|
361
|
+
# This method returns no response data.
|
|
362
|
+
#
|
|
363
|
+
# @return [Core::Response]
|
|
364
|
+
#
|
|
365
|
+
define_client_method :unsubscribe, 'Unsubscribe'
|
|
366
|
+
|
|
367
|
+
## end client methods ##
|
|
368
|
+
|
|
369
|
+
end
|
|
370
|
+
end
|
|
371
|
+
end
|