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,35 @@
|
|
|
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 DynamoDB
|
|
16
|
+
|
|
17
|
+
# Use this class to wrap strings that you want Amazon DynamoDB
|
|
18
|
+
# to store as a binary attribute. This can reduce the size
|
|
19
|
+
# of larger attributes to save on storage costs.
|
|
20
|
+
#
|
|
21
|
+
# table = AWS::DynamoDB.new.tables['data-table']
|
|
22
|
+
# table.hash_key = { 'id' => :string }
|
|
23
|
+
# table.range_key = { 'position' => :number }
|
|
24
|
+
#
|
|
25
|
+
# # put an item with a binary data attribute
|
|
26
|
+
# table.items.create(
|
|
27
|
+
# 'id' => 'abc',
|
|
28
|
+
# 'position' => 5,
|
|
29
|
+
# 'data' => AWS::DynamoDB::Binary.new('abc')
|
|
30
|
+
# )
|
|
31
|
+
#
|
|
32
|
+
class Binary < String; end
|
|
33
|
+
|
|
34
|
+
end
|
|
35
|
+
end
|
|
@@ -0,0 +1,904 @@
|
|
|
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
|
+
require 'zlib'
|
|
15
|
+
|
|
16
|
+
module AWS
|
|
17
|
+
class DynamoDB
|
|
18
|
+
|
|
19
|
+
# Client class for Amazon DynamoDB.
|
|
20
|
+
class Client < Core::JSONClient
|
|
21
|
+
|
|
22
|
+
# @private
|
|
23
|
+
REGION_US_E1 = 'dynamodb.us-east-1.amazonaws.com'
|
|
24
|
+
|
|
25
|
+
# @private
|
|
26
|
+
CACHEABLE_REQUESTS = Set[:list_tables, :describe_table]
|
|
27
|
+
|
|
28
|
+
# client methods #
|
|
29
|
+
|
|
30
|
+
# @!method batch_get_item(options = {})
|
|
31
|
+
# Calls the BatchGetItem API operation.
|
|
32
|
+
# @param [Hash] options
|
|
33
|
+
# * +:request_items+ - *required* - (Hash<String,Hash>)
|
|
34
|
+
# * +:keys+ - *required* - (Array<Hash>)
|
|
35
|
+
# * +:hash_key_element+ - *required* - (Hash) A hash key element is
|
|
36
|
+
# treated as the primary key, and can be a string or a number.
|
|
37
|
+
# Single attribute primary keys have one index value. The value
|
|
38
|
+
# can be String, Number, StringSet, NumberSet.
|
|
39
|
+
# * +:s+ - (String) Strings are Unicode with UTF-8 binary
|
|
40
|
+
# encoding. The maximum size is limited by the size of the
|
|
41
|
+
# primary key (1024 bytes as a range part of a key or 2048
|
|
42
|
+
# bytes as a single part hash key) or the item size (64k).
|
|
43
|
+
# * +:n+ - (String) Numbers are positive or negative exact-value
|
|
44
|
+
# decimals and integers. A number can have up to 38 digits
|
|
45
|
+
# precision and can be between 10^-128 to 10^+126.
|
|
46
|
+
# * +:b+ - (String) Binary attributes are sequences of unsigned
|
|
47
|
+
# bytes.
|
|
48
|
+
# * +:ss+ - (Array<String>) A set of strings.
|
|
49
|
+
# * +:ns+ - (Array<String>) A set of numbers.
|
|
50
|
+
# * +:bs+ - (Array<String>) A set of binary attributes.
|
|
51
|
+
# * +:range_key_element+ - (Hash) A range key element is treated as
|
|
52
|
+
# a secondary key (used in conjunction with the primary key), and
|
|
53
|
+
# can be a string or a number, and is only used for
|
|
54
|
+
# hash-and-range primary keys. The value can be String, Number,
|
|
55
|
+
# StringSet, NumberSet.
|
|
56
|
+
# * +:s+ - (String) Strings are Unicode with UTF-8 binary
|
|
57
|
+
# encoding. The maximum size is limited by the size of the
|
|
58
|
+
# primary key (1024 bytes as a range part of a key or 2048
|
|
59
|
+
# bytes as a single part hash key) or the item size (64k).
|
|
60
|
+
# * +:n+ - (String) Numbers are positive or negative exact-value
|
|
61
|
+
# decimals and integers. A number can have up to 38 digits
|
|
62
|
+
# precision and can be between 10^-128 to 10^+126.
|
|
63
|
+
# * +:b+ - (String) Binary attributes are sequences of unsigned
|
|
64
|
+
# bytes.
|
|
65
|
+
# * +:ss+ - (Array<String>) A set of strings.
|
|
66
|
+
# * +:ns+ - (Array<String>) A set of numbers.
|
|
67
|
+
# * +:bs+ - (Array<String>) A set of binary attributes.
|
|
68
|
+
# * +:attributes_to_get+ - (Array<String>)
|
|
69
|
+
# * +:consistent_read+ - (Boolean)
|
|
70
|
+
# @return [Core::Response]
|
|
71
|
+
# The #data method of the response object returns
|
|
72
|
+
# a hash with the following structure:
|
|
73
|
+
# * +Responses+ - (Hash<String,Hash>)
|
|
74
|
+
# * +member+ - (Hash<String,Hash>)
|
|
75
|
+
# * +S+ - (String)
|
|
76
|
+
# * +N+ - (String)
|
|
77
|
+
# * +B+ - (String)
|
|
78
|
+
# * +SS+ - (Array<String>)
|
|
79
|
+
# * +NS+ - (Array<String>)
|
|
80
|
+
# * +BS+ - (Array<Blob>)
|
|
81
|
+
# * +ConsumedCapacityUnits+ - (Numeric)
|
|
82
|
+
# * +UnprocessedKeys+ - (Hash<String,Hash>)
|
|
83
|
+
# * +Keys+ - (Array<Hash>)
|
|
84
|
+
# * +HashKeyElement+ - (Hash)
|
|
85
|
+
# * +S+ - (String)
|
|
86
|
+
# * +N+ - (String)
|
|
87
|
+
# * +B+ - (String)
|
|
88
|
+
# * +SS+ - (Array<String>)
|
|
89
|
+
# * +NS+ - (Array<String>)
|
|
90
|
+
# * +BS+ - (Array<Blob>)
|
|
91
|
+
# * +RangeKeyElement+ - (Hash)
|
|
92
|
+
# * +S+ - (String)
|
|
93
|
+
# * +N+ - (String)
|
|
94
|
+
# * +B+ - (String)
|
|
95
|
+
# * +SS+ - (Array<String>)
|
|
96
|
+
# * +NS+ - (Array<String>)
|
|
97
|
+
# * +BS+ - (Array<Blob>)
|
|
98
|
+
# * +AttributesToGet+ - (Array<String>)
|
|
99
|
+
# * +ConsistentRead+ - (Boolean)
|
|
100
|
+
|
|
101
|
+
# @!method batch_write_item(options = {})
|
|
102
|
+
# Calls the BatchWriteItem API operation.
|
|
103
|
+
# @param [Hash] options
|
|
104
|
+
# * +:request_items+ - *required* - (Hash<String,Array<Hash>>) A map of
|
|
105
|
+
# table name to list-of-write-requests. Used as input to the
|
|
106
|
+
# BatchWriteItem API call
|
|
107
|
+
# * +:put_request+ - (Hash)
|
|
108
|
+
# * +:item+ - *required* - (Hash<String,Hash>) The item to put
|
|
109
|
+
# * +:s+ - (String) Strings are Unicode with UTF-8 binary
|
|
110
|
+
# encoding. The maximum size is limited by the size of the
|
|
111
|
+
# primary key (1024 bytes as a range part of a key or 2048
|
|
112
|
+
# bytes as a single part hash key) or the item size (64k).
|
|
113
|
+
# * +:n+ - (String) Numbers are positive or negative exact-value
|
|
114
|
+
# decimals and integers. A number can have up to 38 digits
|
|
115
|
+
# precision and can be between 10^-128 to 10^+126.
|
|
116
|
+
# * +:b+ - (String) Binary attributes are sequences of unsigned
|
|
117
|
+
# bytes.
|
|
118
|
+
# * +:ss+ - (Array<String>) A set of strings.
|
|
119
|
+
# * +:ns+ - (Array<String>) A set of numbers.
|
|
120
|
+
# * +:bs+ - (Array<String>) A set of binary attributes.
|
|
121
|
+
# * +:delete_request+ - (Hash)
|
|
122
|
+
# * +:key+ - *required* - (Hash) The item's key to be delete
|
|
123
|
+
# * +:hash_key_element+ - *required* - (Hash) A hash key element
|
|
124
|
+
# is treated as the primary key, and can be a string or a
|
|
125
|
+
# number. Single attribute primary keys have one index value.
|
|
126
|
+
# The value can be String, Number, StringSet, NumberSet.
|
|
127
|
+
# * +:s+ - (String) Strings are Unicode with UTF-8 binary
|
|
128
|
+
# encoding. The maximum size is limited by the size of the
|
|
129
|
+
# primary key (1024 bytes as a range part of a key or 2048
|
|
130
|
+
# bytes as a single part hash key) or the item size (64k).
|
|
131
|
+
# * +:n+ - (String) Numbers are positive or negative
|
|
132
|
+
# exact-value decimals and integers. A number can have up to
|
|
133
|
+
# 38 digits precision and can be between 10^-128 to 10^+126.
|
|
134
|
+
# * +:b+ - (String) Binary attributes are sequences of unsigned
|
|
135
|
+
# bytes.
|
|
136
|
+
# * +:ss+ - (Array<String>) A set of strings.
|
|
137
|
+
# * +:ns+ - (Array<String>) A set of numbers.
|
|
138
|
+
# * +:bs+ - (Array<String>) A set of binary attributes.
|
|
139
|
+
# * +:range_key_element+ - (Hash) A range key element is treated
|
|
140
|
+
# as a secondary key (used in conjunction with the primary
|
|
141
|
+
# key), and can be a string or a number, and is only used for
|
|
142
|
+
# hash-and-range primary keys. The value can be String, Number,
|
|
143
|
+
# StringSet, NumberSet.
|
|
144
|
+
# * +:s+ - (String) Strings are Unicode with UTF-8 binary
|
|
145
|
+
# encoding. The maximum size is limited by the size of the
|
|
146
|
+
# primary key (1024 bytes as a range part of a key or 2048
|
|
147
|
+
# bytes as a single part hash key) or the item size (64k).
|
|
148
|
+
# * +:n+ - (String) Numbers are positive or negative
|
|
149
|
+
# exact-value decimals and integers. A number can have up to
|
|
150
|
+
# 38 digits precision and can be between 10^-128 to 10^+126.
|
|
151
|
+
# * +:b+ - (String) Binary attributes are sequences of unsigned
|
|
152
|
+
# bytes.
|
|
153
|
+
# * +:ss+ - (Array<String>) A set of strings.
|
|
154
|
+
# * +:ns+ - (Array<String>) A set of numbers.
|
|
155
|
+
# * +:bs+ - (Array<String>) A set of binary attributes.
|
|
156
|
+
# @return [Core::Response]
|
|
157
|
+
# The #data method of the response object returns
|
|
158
|
+
# a hash with the following structure:
|
|
159
|
+
# * +Responses+ - (Hash<String,Hash>)
|
|
160
|
+
# * +ConsumedCapacityUnits+ - (Numeric)
|
|
161
|
+
# * +UnprocessedItems+ - (Hash<String,Hash>)
|
|
162
|
+
# * +value+ - (Array<Hash>)
|
|
163
|
+
# * +PutRequest+ - (Hash)
|
|
164
|
+
# * +Item+ - (Hash<String,Hash>)
|
|
165
|
+
# * +S+ - (String)
|
|
166
|
+
# * +N+ - (String)
|
|
167
|
+
# * +B+ - (String)
|
|
168
|
+
# * +SS+ - (Array<String>)
|
|
169
|
+
# * +NS+ - (Array<String>)
|
|
170
|
+
# * +BS+ - (Array<Blob>)
|
|
171
|
+
# * +DeleteRequest+ - (Hash)
|
|
172
|
+
# * +Key+ - (Hash)
|
|
173
|
+
# * +HashKeyElement+ - (Hash)
|
|
174
|
+
# * +S+ - (String)
|
|
175
|
+
# * +N+ - (String)
|
|
176
|
+
# * +B+ - (String)
|
|
177
|
+
# * +SS+ - (Array<String>)
|
|
178
|
+
# * +NS+ - (Array<String>)
|
|
179
|
+
# * +BS+ - (Array<Blob>)
|
|
180
|
+
# * +RangeKeyElement+ - (Hash)
|
|
181
|
+
# * +S+ - (String)
|
|
182
|
+
# * +N+ - (String)
|
|
183
|
+
# * +B+ - (String)
|
|
184
|
+
# * +SS+ - (Array<String>)
|
|
185
|
+
# * +NS+ - (Array<String>)
|
|
186
|
+
# * +BS+ - (Array<Blob>)
|
|
187
|
+
|
|
188
|
+
# @!method create_table(options = {})
|
|
189
|
+
# Calls the CreateTable API operation.
|
|
190
|
+
# @param [Hash] options
|
|
191
|
+
# * +:table_name+ - *required* - (String) The name of the table you
|
|
192
|
+
# want to create. Allowed characters are a-z, A-Z, 0-9, _
|
|
193
|
+
# (underscore), - (hyphen) and . (period).
|
|
194
|
+
# * +:key_schema+ - *required* - (Hash)
|
|
195
|
+
# * +:hash_key_element+ - *required* - (Hash) A hash key element is
|
|
196
|
+
# treated as the primary key, and can be a string or a number.
|
|
197
|
+
# Single attribute primary keys have one index value. The value can
|
|
198
|
+
# be String, Number, StringSet, NumberSet.
|
|
199
|
+
# * +:attribute_name+ - *required* - (String) The AttributeName of
|
|
200
|
+
# the KeySchemaElement.
|
|
201
|
+
# * +:attribute_type+ - *required* - (String) The AttributeType of
|
|
202
|
+
# the KeySchemaElement which can be a String or a Number.
|
|
203
|
+
# * +:range_key_element+ - (Hash) A range key element is treated as a
|
|
204
|
+
# secondary key (used in conjunction with the primary key), and can
|
|
205
|
+
# be a string or a number, and is only used for hash-and-range
|
|
206
|
+
# primary keys. The value can be String, Number, StringSet,
|
|
207
|
+
# NumberSet.
|
|
208
|
+
# * +:attribute_name+ - *required* - (String) The AttributeName of
|
|
209
|
+
# the KeySchemaElement.
|
|
210
|
+
# * +:attribute_type+ - *required* - (String) The AttributeType of
|
|
211
|
+
# the KeySchemaElement which can be a String or a Number.
|
|
212
|
+
# * +:provisioned_throughput+ - *required* - (Hash)
|
|
213
|
+
# * +:read_capacity_units+ - *required* - (Integer) ReadCapacityUnits
|
|
214
|
+
# are in terms of strictly consistent reads, assuming items of 1k.
|
|
215
|
+
# 2k items require twice the ReadCapacityUnits.
|
|
216
|
+
# Eventually-consistent reads only require half the
|
|
217
|
+
# ReadCapacityUnits of stirctly consistent reads.
|
|
218
|
+
# * +:write_capacity_units+ - *required* - (Integer)
|
|
219
|
+
# WriteCapacityUnits are in terms of strictly consistent reads,
|
|
220
|
+
# assuming items of 1k. 2k items require twice the
|
|
221
|
+
# WriteCapacityUnits.
|
|
222
|
+
# @return [Core::Response]
|
|
223
|
+
# The #data method of the response object returns
|
|
224
|
+
# a hash with the following structure:
|
|
225
|
+
# * +TableDescription+ - (Hash)
|
|
226
|
+
# * +TableName+ - (String)
|
|
227
|
+
# * +KeySchema+ - (Hash)
|
|
228
|
+
# * +HashKeyElement+ - (Hash)
|
|
229
|
+
# * +AttributeName+ - (String)
|
|
230
|
+
# * +AttributeType+ - (String)
|
|
231
|
+
# * +RangeKeyElement+ - (Hash)
|
|
232
|
+
# * +AttributeName+ - (String)
|
|
233
|
+
# * +AttributeType+ - (String)
|
|
234
|
+
# * +TableStatus+ - (String)
|
|
235
|
+
# * +CreationDateTime+ - (Time)
|
|
236
|
+
# * +ProvisionedThroughput+ - (Hash)
|
|
237
|
+
# * +LastIncreaseDateTime+ - (Time)
|
|
238
|
+
# * +LastDecreaseDateTime+ - (Time)
|
|
239
|
+
# * +ReadCapacityUnits+ - (Integer)
|
|
240
|
+
# * +WriteCapacityUnits+ - (Integer)
|
|
241
|
+
# * +TableSizeBytes+ - (Integer)
|
|
242
|
+
# * +ItemCount+ - (Integer)
|
|
243
|
+
|
|
244
|
+
# @!method delete_item(options = {})
|
|
245
|
+
# Calls the DeleteItem API operation.
|
|
246
|
+
# @param [Hash] options
|
|
247
|
+
# * +:table_name+ - *required* - (String) The name of the table in
|
|
248
|
+
# which you want to delete an item. Allowed characters are a-z, A-Z,
|
|
249
|
+
# 0-9, _ (underscore), - (hyphen) and . (period).
|
|
250
|
+
# * +:key+ - *required* - (Hash)
|
|
251
|
+
# * +:hash_key_element+ - *required* - (Hash) A hash key element is
|
|
252
|
+
# treated as the primary key, and can be a string or a number.
|
|
253
|
+
# Single attribute primary keys have one index value. The value can
|
|
254
|
+
# be String, Number, StringSet, NumberSet.
|
|
255
|
+
# * +:s+ - (String) Strings are Unicode with UTF-8 binary encoding.
|
|
256
|
+
# The maximum size is limited by the size of the primary key
|
|
257
|
+
# (1024 bytes as a range part of a key or 2048 bytes as a single
|
|
258
|
+
# part hash key) or the item size (64k).
|
|
259
|
+
# * +:n+ - (String) Numbers are positive or negative exact-value
|
|
260
|
+
# decimals and integers. A number can have up to 38 digits
|
|
261
|
+
# precision and can be between 10^-128 to 10^+126.
|
|
262
|
+
# * +:b+ - (String) Binary attributes are sequences of unsigned
|
|
263
|
+
# bytes.
|
|
264
|
+
# * +:ss+ - (Array<String>) A set of strings.
|
|
265
|
+
# * +:ns+ - (Array<String>) A set of numbers.
|
|
266
|
+
# * +:bs+ - (Array<String>) A set of binary attributes.
|
|
267
|
+
# * +:range_key_element+ - (Hash) A range key element is treated as a
|
|
268
|
+
# secondary key (used in conjunction with the primary key), and can
|
|
269
|
+
# be a string or a number, and is only used for hash-and-range
|
|
270
|
+
# primary keys. The value can be String, Number, StringSet,
|
|
271
|
+
# NumberSet.
|
|
272
|
+
# * +:s+ - (String) Strings are Unicode with UTF-8 binary encoding.
|
|
273
|
+
# The maximum size is limited by the size of the primary key
|
|
274
|
+
# (1024 bytes as a range part of a key or 2048 bytes as a single
|
|
275
|
+
# part hash key) or the item size (64k).
|
|
276
|
+
# * +:n+ - (String) Numbers are positive or negative exact-value
|
|
277
|
+
# decimals and integers. A number can have up to 38 digits
|
|
278
|
+
# precision and can be between 10^-128 to 10^+126.
|
|
279
|
+
# * +:b+ - (String) Binary attributes are sequences of unsigned
|
|
280
|
+
# bytes.
|
|
281
|
+
# * +:ss+ - (Array<String>) A set of strings.
|
|
282
|
+
# * +:ns+ - (Array<String>) A set of numbers.
|
|
283
|
+
# * +:bs+ - (Array<String>) A set of binary attributes.
|
|
284
|
+
# * +:expected+ - (Hash<String,Hash>)
|
|
285
|
+
# * +:value+ - (Hash) Specify whether or not a value already exists
|
|
286
|
+
# and has a specific content for the attribute name-value pair.
|
|
287
|
+
# * +:s+ - (String) Strings are Unicode with UTF-8 binary encoding.
|
|
288
|
+
# The maximum size is limited by the size of the primary key
|
|
289
|
+
# (1024 bytes as a range part of a key or 2048 bytes as a single
|
|
290
|
+
# part hash key) or the item size (64k).
|
|
291
|
+
# * +:n+ - (String) Numbers are positive or negative exact-value
|
|
292
|
+
# decimals and integers. A number can have up to 38 digits
|
|
293
|
+
# precision and can be between 10^-128 to 10^+126.
|
|
294
|
+
# * +:b+ - (String) Binary attributes are sequences of unsigned
|
|
295
|
+
# bytes.
|
|
296
|
+
# * +:ss+ - (Array<String>) A set of strings.
|
|
297
|
+
# * +:ns+ - (Array<String>) A set of numbers.
|
|
298
|
+
# * +:bs+ - (Array<String>) A set of binary attributes.
|
|
299
|
+
# * +:exists+ - (Boolean) Specify whether or not a value already
|
|
300
|
+
# exists for the attribute name-value pair.
|
|
301
|
+
# * +:return_values+ - (String)
|
|
302
|
+
# @return [Core::Response]
|
|
303
|
+
# The #data method of the response object returns
|
|
304
|
+
# a hash with the following structure:
|
|
305
|
+
# * +Attributes+ - (Hash<String,Hash>)
|
|
306
|
+
# * +S+ - (String)
|
|
307
|
+
# * +N+ - (String)
|
|
308
|
+
# * +B+ - (String)
|
|
309
|
+
# * +SS+ - (Array<String>)
|
|
310
|
+
# * +NS+ - (Array<String>)
|
|
311
|
+
# * +BS+ - (Array<Blob>)
|
|
312
|
+
# * +ConsumedCapacityUnits+ - (Numeric)
|
|
313
|
+
|
|
314
|
+
# @!method delete_table(options = {})
|
|
315
|
+
# Calls the DeleteTable API operation.
|
|
316
|
+
# @param [Hash] options
|
|
317
|
+
# * +:table_name+ - *required* - (String) The name of the table you
|
|
318
|
+
# want to delete. Allowed characters are a-z, A-Z, 0-9, _
|
|
319
|
+
# (underscore), - (hyphen) and . (period).
|
|
320
|
+
# @return [Core::Response]
|
|
321
|
+
# The #data method of the response object returns
|
|
322
|
+
# a hash with the following structure:
|
|
323
|
+
# * +TableDescription+ - (Hash)
|
|
324
|
+
# * +TableName+ - (String)
|
|
325
|
+
# * +KeySchema+ - (Hash)
|
|
326
|
+
# * +HashKeyElement+ - (Hash)
|
|
327
|
+
# * +AttributeName+ - (String)
|
|
328
|
+
# * +AttributeType+ - (String)
|
|
329
|
+
# * +RangeKeyElement+ - (Hash)
|
|
330
|
+
# * +AttributeName+ - (String)
|
|
331
|
+
# * +AttributeType+ - (String)
|
|
332
|
+
# * +TableStatus+ - (String)
|
|
333
|
+
# * +CreationDateTime+ - (Time)
|
|
334
|
+
# * +ProvisionedThroughput+ - (Hash)
|
|
335
|
+
# * +LastIncreaseDateTime+ - (Time)
|
|
336
|
+
# * +LastDecreaseDateTime+ - (Time)
|
|
337
|
+
# * +ReadCapacityUnits+ - (Integer)
|
|
338
|
+
# * +WriteCapacityUnits+ - (Integer)
|
|
339
|
+
# * +TableSizeBytes+ - (Integer)
|
|
340
|
+
# * +ItemCount+ - (Integer)
|
|
341
|
+
|
|
342
|
+
# @!method describe_table(options = {})
|
|
343
|
+
# Calls the DescribeTable API operation.
|
|
344
|
+
# @param [Hash] options
|
|
345
|
+
# * +:table_name+ - *required* - (String) The name of the table you
|
|
346
|
+
# want to describe. Allowed characters are a-z, A-Z, 0-9, _
|
|
347
|
+
# (underscore), - (hyphen) and . (period).
|
|
348
|
+
# @return [Core::Response]
|
|
349
|
+
# The #data method of the response object returns
|
|
350
|
+
# a hash with the following structure:
|
|
351
|
+
# * +Table+ - (Hash)
|
|
352
|
+
# * +TableName+ - (String)
|
|
353
|
+
# * +KeySchema+ - (Hash)
|
|
354
|
+
# * +HashKeyElement+ - (Hash)
|
|
355
|
+
# * +AttributeName+ - (String)
|
|
356
|
+
# * +AttributeType+ - (String)
|
|
357
|
+
# * +RangeKeyElement+ - (Hash)
|
|
358
|
+
# * +AttributeName+ - (String)
|
|
359
|
+
# * +AttributeType+ - (String)
|
|
360
|
+
# * +TableStatus+ - (String)
|
|
361
|
+
# * +CreationDateTime+ - (Time)
|
|
362
|
+
# * +ProvisionedThroughput+ - (Hash)
|
|
363
|
+
# * +LastIncreaseDateTime+ - (Time)
|
|
364
|
+
# * +LastDecreaseDateTime+ - (Time)
|
|
365
|
+
# * +ReadCapacityUnits+ - (Integer)
|
|
366
|
+
# * +WriteCapacityUnits+ - (Integer)
|
|
367
|
+
# * +TableSizeBytes+ - (Integer)
|
|
368
|
+
# * +ItemCount+ - (Integer)
|
|
369
|
+
|
|
370
|
+
# @!method get_item(options = {})
|
|
371
|
+
# Calls the GetItem API operation.
|
|
372
|
+
# @param [Hash] options
|
|
373
|
+
# * +:table_name+ - *required* - (String) The name of the table in
|
|
374
|
+
# which you want to get an item. Allowed characters are a-z, A-Z,
|
|
375
|
+
# 0-9, _ (underscore), - (hyphen) and . (period).
|
|
376
|
+
# * +:key+ - *required* - (Hash)
|
|
377
|
+
# * +:hash_key_element+ - *required* - (Hash) A hash key element is
|
|
378
|
+
# treated as the primary key, and can be a string or a number.
|
|
379
|
+
# Single attribute primary keys have one index value. The value can
|
|
380
|
+
# be String, Number, StringSet, NumberSet.
|
|
381
|
+
# * +:s+ - (String) Strings are Unicode with UTF-8 binary encoding.
|
|
382
|
+
# The maximum size is limited by the size of the primary key
|
|
383
|
+
# (1024 bytes as a range part of a key or 2048 bytes as a single
|
|
384
|
+
# part hash key) or the item size (64k).
|
|
385
|
+
# * +:n+ - (String) Numbers are positive or negative exact-value
|
|
386
|
+
# decimals and integers. A number can have up to 38 digits
|
|
387
|
+
# precision and can be between 10^-128 to 10^+126.
|
|
388
|
+
# * +:b+ - (String) Binary attributes are sequences of unsigned
|
|
389
|
+
# bytes.
|
|
390
|
+
# * +:ss+ - (Array<String>) A set of strings.
|
|
391
|
+
# * +:ns+ - (Array<String>) A set of numbers.
|
|
392
|
+
# * +:bs+ - (Array<String>) A set of binary attributes.
|
|
393
|
+
# * +:range_key_element+ - (Hash) A range key element is treated as a
|
|
394
|
+
# secondary key (used in conjunction with the primary key), and can
|
|
395
|
+
# be a string or a number, and is only used for hash-and-range
|
|
396
|
+
# primary keys. The value can be String, Number, StringSet,
|
|
397
|
+
# NumberSet.
|
|
398
|
+
# * +:s+ - (String) Strings are Unicode with UTF-8 binary encoding.
|
|
399
|
+
# The maximum size is limited by the size of the primary key
|
|
400
|
+
# (1024 bytes as a range part of a key or 2048 bytes as a single
|
|
401
|
+
# part hash key) or the item size (64k).
|
|
402
|
+
# * +:n+ - (String) Numbers are positive or negative exact-value
|
|
403
|
+
# decimals and integers. A number can have up to 38 digits
|
|
404
|
+
# precision and can be between 10^-128 to 10^+126.
|
|
405
|
+
# * +:b+ - (String) Binary attributes are sequences of unsigned
|
|
406
|
+
# bytes.
|
|
407
|
+
# * +:ss+ - (Array<String>) A set of strings.
|
|
408
|
+
# * +:ns+ - (Array<String>) A set of numbers.
|
|
409
|
+
# * +:bs+ - (Array<String>) A set of binary attributes.
|
|
410
|
+
# * +:attributes_to_get+ - (Array<String>)
|
|
411
|
+
# * +:consistent_read+ - (Boolean)
|
|
412
|
+
# @return [Core::Response]
|
|
413
|
+
# The #data method of the response object returns
|
|
414
|
+
# a hash with the following structure:
|
|
415
|
+
# * +Item+ - (Hash<String,Hash>)
|
|
416
|
+
# * +S+ - (String)
|
|
417
|
+
# * +N+ - (String)
|
|
418
|
+
# * +B+ - (String)
|
|
419
|
+
# * +SS+ - (Array<String>)
|
|
420
|
+
# * +NS+ - (Array<String>)
|
|
421
|
+
# * +BS+ - (Array<Blob>)
|
|
422
|
+
# * +ConsumedCapacityUnits+ - (Numeric)
|
|
423
|
+
|
|
424
|
+
# @!method list_tables(options = {})
|
|
425
|
+
# Calls the ListTables API operation.
|
|
426
|
+
# @param [Hash] options
|
|
427
|
+
# * +:exclusive_start_table_name+ - (String) The name of the table that
|
|
428
|
+
# starts the list. If you already ran a ListTables operation and
|
|
429
|
+
# recieved a LastEvaluatedTableName value in the response, use that
|
|
430
|
+
# value here to continue the list.
|
|
431
|
+
# * +:limit+ - (Integer)
|
|
432
|
+
# @return [Core::Response]
|
|
433
|
+
# The #data method of the response object returns
|
|
434
|
+
# a hash with the following structure:
|
|
435
|
+
# * +TableNames+ - (Array<String>)
|
|
436
|
+
# * +LastEvaluatedTableName+ - (String)
|
|
437
|
+
|
|
438
|
+
# @!method put_item(options = {})
|
|
439
|
+
# Calls the PutItem API operation.
|
|
440
|
+
# @param [Hash] options
|
|
441
|
+
# * +:table_name+ - *required* - (String) The name of the table in
|
|
442
|
+
# which you want to put an item. Allowed characters are a-z, A-Z,
|
|
443
|
+
# 0-9, _ (underscore), - (hyphen) and . (period).
|
|
444
|
+
# * +:item+ - *required* - (Hash<String,Hash>)
|
|
445
|
+
# * +:s+ - (String) Strings are Unicode with UTF-8 binary encoding.
|
|
446
|
+
# The maximum size is limited by the size of the primary key (1024
|
|
447
|
+
# bytes as a range part of a key or 2048 bytes as a single part
|
|
448
|
+
# hash key) or the item size (64k).
|
|
449
|
+
# * +:n+ - (String) Numbers are positive or negative exact-value
|
|
450
|
+
# decimals and integers. A number can have up to 38 digits
|
|
451
|
+
# precision and can be between 10^-128 to 10^+126.
|
|
452
|
+
# * +:b+ - (String) Binary attributes are sequences of unsigned
|
|
453
|
+
# bytes.
|
|
454
|
+
# * +:ss+ - (Array<String>) A set of strings.
|
|
455
|
+
# * +:ns+ - (Array<String>) A set of numbers.
|
|
456
|
+
# * +:bs+ - (Array<String>) A set of binary attributes.
|
|
457
|
+
# * +:expected+ - (Hash<String,Hash>)
|
|
458
|
+
# * +:value+ - (Hash) Specify whether or not a value already exists
|
|
459
|
+
# and has a specific content for the attribute name-value pair.
|
|
460
|
+
# * +:s+ - (String) Strings are Unicode with UTF-8 binary encoding.
|
|
461
|
+
# The maximum size is limited by the size of the primary key
|
|
462
|
+
# (1024 bytes as a range part of a key or 2048 bytes as a single
|
|
463
|
+
# part hash key) or the item size (64k).
|
|
464
|
+
# * +:n+ - (String) Numbers are positive or negative exact-value
|
|
465
|
+
# decimals and integers. A number can have up to 38 digits
|
|
466
|
+
# precision and can be between 10^-128 to 10^+126.
|
|
467
|
+
# * +:b+ - (String) Binary attributes are sequences of unsigned
|
|
468
|
+
# bytes.
|
|
469
|
+
# * +:ss+ - (Array<String>) A set of strings.
|
|
470
|
+
# * +:ns+ - (Array<String>) A set of numbers.
|
|
471
|
+
# * +:bs+ - (Array<String>) A set of binary attributes.
|
|
472
|
+
# * +:exists+ - (Boolean) Specify whether or not a value already
|
|
473
|
+
# exists for the attribute name-value pair.
|
|
474
|
+
# * +:return_values+ - (String)
|
|
475
|
+
# @return [Core::Response]
|
|
476
|
+
# The #data method of the response object returns
|
|
477
|
+
# a hash with the following structure:
|
|
478
|
+
# * +Attributes+ - (Hash<String,Hash>)
|
|
479
|
+
# * +S+ - (String)
|
|
480
|
+
# * +N+ - (String)
|
|
481
|
+
# * +B+ - (String)
|
|
482
|
+
# * +SS+ - (Array<String>)
|
|
483
|
+
# * +NS+ - (Array<String>)
|
|
484
|
+
# * +BS+ - (Array<Blob>)
|
|
485
|
+
# * +ConsumedCapacityUnits+ - (Numeric)
|
|
486
|
+
|
|
487
|
+
# @!method query(options = {})
|
|
488
|
+
# Calls the Query API operation.
|
|
489
|
+
# @param [Hash] options
|
|
490
|
+
# * +:table_name+ - *required* - (String) The name of the table in
|
|
491
|
+
# which you want to query. Allowed characters are a-z, A-Z, 0-9, _
|
|
492
|
+
# (underscore), - (hyphen) and . (period).
|
|
493
|
+
# * +:attributes_to_get+ - (Array<String>)
|
|
494
|
+
# * +:limit+ - (Integer) The maximum number of items to return. If
|
|
495
|
+
# Amazon DynamoDB hits this limit while querying the table, it stops
|
|
496
|
+
# the query and returns the matching values up to the limit, and a
|
|
497
|
+
# LastEvaluatedKey to apply in a subsequent operation to continue the
|
|
498
|
+
# query. Also, if the result set size exceeds 1MB before Amazon
|
|
499
|
+
# DynamoDB hits this limit, it stops the query and returns the
|
|
500
|
+
# matching values, and a LastEvaluatedKey to apply in a subsequent
|
|
501
|
+
# operation to continue the query.
|
|
502
|
+
# * +:consistent_read+ - (Boolean)
|
|
503
|
+
# * +:count+ - (Boolean) If set to +true+ , Amazon DynamoDB returns a
|
|
504
|
+
# total number of items that match the query parameters, instead of a
|
|
505
|
+
# list of the matching items and their attributes. Do not set Count
|
|
506
|
+
# to +true+ while providing a list of AttributesToGet, otherwise
|
|
507
|
+
# Amazon DynamoDB returns a validation error.
|
|
508
|
+
# * +:hash_key_value+ - *required* - (Hash) Attribute value of the hash
|
|
509
|
+
# component of the composite primary key.
|
|
510
|
+
# * +:s+ - (String) Strings are Unicode with UTF-8 binary encoding.
|
|
511
|
+
# The maximum size is limited by the size of the primary key (1024
|
|
512
|
+
# bytes as a range part of a key or 2048 bytes as a single part
|
|
513
|
+
# hash key) or the item size (64k).
|
|
514
|
+
# * +:n+ - (String) Numbers are positive or negative exact-value
|
|
515
|
+
# decimals and integers. A number can have up to 38 digits
|
|
516
|
+
# precision and can be between 10^-128 to 10^+126.
|
|
517
|
+
# * +:b+ - (String) Binary attributes are sequences of unsigned
|
|
518
|
+
# bytes.
|
|
519
|
+
# * +:ss+ - (Array<String>) A set of strings.
|
|
520
|
+
# * +:ns+ - (Array<String>) A set of numbers.
|
|
521
|
+
# * +:bs+ - (Array<String>) A set of binary attributes.
|
|
522
|
+
# * +:range_key_condition+ - (Hash) A container for the attribute
|
|
523
|
+
# values and comparison operators to use for the query.
|
|
524
|
+
# * +:attribute_value_list+ - (Array<Hash>)
|
|
525
|
+
# * +:s+ - (String) Strings are Unicode with UTF-8 binary encoding.
|
|
526
|
+
# The maximum size is limited by the size of the primary key
|
|
527
|
+
# (1024 bytes as a range part of a key or 2048 bytes as a single
|
|
528
|
+
# part hash key) or the item size (64k).
|
|
529
|
+
# * +:n+ - (String) Numbers are positive or negative exact-value
|
|
530
|
+
# decimals and integers. A number can have up to 38 digits
|
|
531
|
+
# precision and can be between 10^-128 to 10^+126.
|
|
532
|
+
# * +:b+ - (String) Binary attributes are sequences of unsigned
|
|
533
|
+
# bytes.
|
|
534
|
+
# * +:ss+ - (Array<String>) A set of strings.
|
|
535
|
+
# * +:ns+ - (Array<String>) A set of numbers.
|
|
536
|
+
# * +:bs+ - (Array<String>) A set of binary attributes.
|
|
537
|
+
# * +:comparison_operator+ - *required* - (String)
|
|
538
|
+
# * +:scan_index_forward+ - (Boolean) Specifies forward or backward
|
|
539
|
+
# traversal of the index. Amazon DynamoDB returns results reflecting
|
|
540
|
+
# the requested order, determined by the range key. Default is +true+
|
|
541
|
+
# (forward).
|
|
542
|
+
# * +:exclusive_start_key+ - (Hash) Primary key of the item from which
|
|
543
|
+
# to continue an earlier query. An earlier query might provide this
|
|
544
|
+
# value as the LastEvaluatedKey if that query operation was
|
|
545
|
+
# interrupted before completing the query; either because of the
|
|
546
|
+
# result set size or the Limit parameter. The LastEvaluatedKey can be
|
|
547
|
+
# passed back in a new query request to continue the operation from
|
|
548
|
+
# that point.
|
|
549
|
+
# * +:hash_key_element+ - *required* - (Hash) A hash key element is
|
|
550
|
+
# treated as the primary key, and can be a string or a number.
|
|
551
|
+
# Single attribute primary keys have one index value. The value can
|
|
552
|
+
# be String, Number, StringSet, NumberSet.
|
|
553
|
+
# * +:s+ - (String) Strings are Unicode with UTF-8 binary encoding.
|
|
554
|
+
# The maximum size is limited by the size of the primary key
|
|
555
|
+
# (1024 bytes as a range part of a key or 2048 bytes as a single
|
|
556
|
+
# part hash key) or the item size (64k).
|
|
557
|
+
# * +:n+ - (String) Numbers are positive or negative exact-value
|
|
558
|
+
# decimals and integers. A number can have up to 38 digits
|
|
559
|
+
# precision and can be between 10^-128 to 10^+126.
|
|
560
|
+
# * +:b+ - (String) Binary attributes are sequences of unsigned
|
|
561
|
+
# bytes.
|
|
562
|
+
# * +:ss+ - (Array<String>) A set of strings.
|
|
563
|
+
# * +:ns+ - (Array<String>) A set of numbers.
|
|
564
|
+
# * +:bs+ - (Array<String>) A set of binary attributes.
|
|
565
|
+
# * +:range_key_element+ - (Hash) A range key element is treated as a
|
|
566
|
+
# secondary key (used in conjunction with the primary key), and can
|
|
567
|
+
# be a string or a number, and is only used for hash-and-range
|
|
568
|
+
# primary keys. The value can be String, Number, StringSet,
|
|
569
|
+
# NumberSet.
|
|
570
|
+
# * +:s+ - (String) Strings are Unicode with UTF-8 binary encoding.
|
|
571
|
+
# The maximum size is limited by the size of the primary key
|
|
572
|
+
# (1024 bytes as a range part of a key or 2048 bytes as a single
|
|
573
|
+
# part hash key) or the item size (64k).
|
|
574
|
+
# * +:n+ - (String) Numbers are positive or negative exact-value
|
|
575
|
+
# decimals and integers. A number can have up to 38 digits
|
|
576
|
+
# precision and can be between 10^-128 to 10^+126.
|
|
577
|
+
# * +:b+ - (String) Binary attributes are sequences of unsigned
|
|
578
|
+
# bytes.
|
|
579
|
+
# * +:ss+ - (Array<String>) A set of strings.
|
|
580
|
+
# * +:ns+ - (Array<String>) A set of numbers.
|
|
581
|
+
# * +:bs+ - (Array<String>) A set of binary attributes.
|
|
582
|
+
# @return [Core::Response]
|
|
583
|
+
# The #data method of the response object returns
|
|
584
|
+
# a hash with the following structure:
|
|
585
|
+
# * +member+ - (Hash<String,Hash>)
|
|
586
|
+
# * +S+ - (String)
|
|
587
|
+
# * +N+ - (String)
|
|
588
|
+
# * +B+ - (String)
|
|
589
|
+
# * +SS+ - (Array<String>)
|
|
590
|
+
# * +NS+ - (Array<String>)
|
|
591
|
+
# * +BS+ - (Array<Blob>)
|
|
592
|
+
# * +Count+ - (Integer)
|
|
593
|
+
# * +LastEvaluatedKey+ - (Hash)
|
|
594
|
+
# * +HashKeyElement+ - (Hash)
|
|
595
|
+
# * +S+ - (String)
|
|
596
|
+
# * +N+ - (String)
|
|
597
|
+
# * +B+ - (String)
|
|
598
|
+
# * +SS+ - (Array<String>)
|
|
599
|
+
# * +NS+ - (Array<String>)
|
|
600
|
+
# * +BS+ - (Array<Blob>)
|
|
601
|
+
# * +RangeKeyElement+ - (Hash)
|
|
602
|
+
# * +S+ - (String)
|
|
603
|
+
# * +N+ - (String)
|
|
604
|
+
# * +B+ - (String)
|
|
605
|
+
# * +SS+ - (Array<String>)
|
|
606
|
+
# * +NS+ - (Array<String>)
|
|
607
|
+
# * +BS+ - (Array<Blob>)
|
|
608
|
+
# * +ConsumedCapacityUnits+ - (Numeric)
|
|
609
|
+
|
|
610
|
+
# @!method scan(options = {})
|
|
611
|
+
# Calls the Scan API operation.
|
|
612
|
+
# @param [Hash] options
|
|
613
|
+
# * +:table_name+ - *required* - (String) The name of the table in
|
|
614
|
+
# which you want to scan. Allowed characters are a-z, A-Z, 0-9, _
|
|
615
|
+
# (underscore), - (hyphen) and . (period).
|
|
616
|
+
# * +:attributes_to_get+ - (Array<String>)
|
|
617
|
+
# * +:limit+ - (Integer) The maximum number of items to return. If
|
|
618
|
+
# Amazon DynamoDB hits this limit while scanning the table, it stops
|
|
619
|
+
# the scan and returns the matching values up to the limit, and a
|
|
620
|
+
# LastEvaluatedKey to apply in a subsequent operation to continue the
|
|
621
|
+
# scan. Also, if the scanned data set size exceeds 1MB before Amazon
|
|
622
|
+
# DynamoDB hits this limit, it stops the scan and returns the
|
|
623
|
+
# matching values up to the limit, and a LastEvaluatedKey to apply in
|
|
624
|
+
# a subsequent operation to continue the scan.
|
|
625
|
+
# * +:count+ - (Boolean) If set to +true+ , Amazon DynamoDB returns a
|
|
626
|
+
# total number of items for the Scan operation, even if the operation
|
|
627
|
+
# has no matching items for the assigned filter. Do not set Count to
|
|
628
|
+
# +true+ while providing a list of AttributesToGet, otherwise Amazon
|
|
629
|
+
# DynamoDB returns a validation error.
|
|
630
|
+
# * +:scan_filter+ - (Hash<String,Hash>) Evaluates the scan results and
|
|
631
|
+
# returns only the desired values.
|
|
632
|
+
# * +:attribute_value_list+ - (Array<Hash>)
|
|
633
|
+
# * +:s+ - (String) Strings are Unicode with UTF-8 binary encoding.
|
|
634
|
+
# The maximum size is limited by the size of the primary key
|
|
635
|
+
# (1024 bytes as a range part of a key or 2048 bytes as a single
|
|
636
|
+
# part hash key) or the item size (64k).
|
|
637
|
+
# * +:n+ - (String) Numbers are positive or negative exact-value
|
|
638
|
+
# decimals and integers. A number can have up to 38 digits
|
|
639
|
+
# precision and can be between 10^-128 to 10^+126.
|
|
640
|
+
# * +:b+ - (String) Binary attributes are sequences of unsigned
|
|
641
|
+
# bytes.
|
|
642
|
+
# * +:ss+ - (Array<String>) A set of strings.
|
|
643
|
+
# * +:ns+ - (Array<String>) A set of numbers.
|
|
644
|
+
# * +:bs+ - (Array<String>) A set of binary attributes.
|
|
645
|
+
# * +:comparison_operator+ - *required* - (String)
|
|
646
|
+
# * +:exclusive_start_key+ - (Hash) Primary key of the item from which
|
|
647
|
+
# to continue an earlier scan. An earlier scan might provide this
|
|
648
|
+
# value if that scan operation was interrupted before scanning the
|
|
649
|
+
# entire table; either because of the result set size or the Limit
|
|
650
|
+
# parameter. The LastEvaluatedKey can be passed back in a new scan
|
|
651
|
+
# request to continue the operation from that point.
|
|
652
|
+
# * +:hash_key_element+ - *required* - (Hash) A hash key element is
|
|
653
|
+
# treated as the primary key, and can be a string or a number.
|
|
654
|
+
# Single attribute primary keys have one index value. The value can
|
|
655
|
+
# be String, Number, StringSet, NumberSet.
|
|
656
|
+
# * +:s+ - (String) Strings are Unicode with UTF-8 binary encoding.
|
|
657
|
+
# The maximum size is limited by the size of the primary key
|
|
658
|
+
# (1024 bytes as a range part of a key or 2048 bytes as a single
|
|
659
|
+
# part hash key) or the item size (64k).
|
|
660
|
+
# * +:n+ - (String) Numbers are positive or negative exact-value
|
|
661
|
+
# decimals and integers. A number can have up to 38 digits
|
|
662
|
+
# precision and can be between 10^-128 to 10^+126.
|
|
663
|
+
# * +:b+ - (String) Binary attributes are sequences of unsigned
|
|
664
|
+
# bytes.
|
|
665
|
+
# * +:ss+ - (Array<String>) A set of strings.
|
|
666
|
+
# * +:ns+ - (Array<String>) A set of numbers.
|
|
667
|
+
# * +:bs+ - (Array<String>) A set of binary attributes.
|
|
668
|
+
# * +:range_key_element+ - (Hash) A range key element is treated as a
|
|
669
|
+
# secondary key (used in conjunction with the primary key), and can
|
|
670
|
+
# be a string or a number, and is only used for hash-and-range
|
|
671
|
+
# primary keys. The value can be String, Number, StringSet,
|
|
672
|
+
# NumberSet.
|
|
673
|
+
# * +:s+ - (String) Strings are Unicode with UTF-8 binary encoding.
|
|
674
|
+
# The maximum size is limited by the size of the primary key
|
|
675
|
+
# (1024 bytes as a range part of a key or 2048 bytes as a single
|
|
676
|
+
# part hash key) or the item size (64k).
|
|
677
|
+
# * +:n+ - (String) Numbers are positive or negative exact-value
|
|
678
|
+
# decimals and integers. A number can have up to 38 digits
|
|
679
|
+
# precision and can be between 10^-128 to 10^+126.
|
|
680
|
+
# * +:b+ - (String) Binary attributes are sequences of unsigned
|
|
681
|
+
# bytes.
|
|
682
|
+
# * +:ss+ - (Array<String>) A set of strings.
|
|
683
|
+
# * +:ns+ - (Array<String>) A set of numbers.
|
|
684
|
+
# * +:bs+ - (Array<String>) A set of binary attributes.
|
|
685
|
+
# @return [Core::Response]
|
|
686
|
+
# The #data method of the response object returns
|
|
687
|
+
# a hash with the following structure:
|
|
688
|
+
# * +member+ - (Hash<String,Hash>)
|
|
689
|
+
# * +S+ - (String)
|
|
690
|
+
# * +N+ - (String)
|
|
691
|
+
# * +B+ - (String)
|
|
692
|
+
# * +SS+ - (Array<String>)
|
|
693
|
+
# * +NS+ - (Array<String>)
|
|
694
|
+
# * +BS+ - (Array<Blob>)
|
|
695
|
+
# * +Count+ - (Integer)
|
|
696
|
+
# * +ScannedCount+ - (Integer)
|
|
697
|
+
# * +LastEvaluatedKey+ - (Hash)
|
|
698
|
+
# * +HashKeyElement+ - (Hash)
|
|
699
|
+
# * +S+ - (String)
|
|
700
|
+
# * +N+ - (String)
|
|
701
|
+
# * +B+ - (String)
|
|
702
|
+
# * +SS+ - (Array<String>)
|
|
703
|
+
# * +NS+ - (Array<String>)
|
|
704
|
+
# * +BS+ - (Array<Blob>)
|
|
705
|
+
# * +RangeKeyElement+ - (Hash)
|
|
706
|
+
# * +S+ - (String)
|
|
707
|
+
# * +N+ - (String)
|
|
708
|
+
# * +B+ - (String)
|
|
709
|
+
# * +SS+ - (Array<String>)
|
|
710
|
+
# * +NS+ - (Array<String>)
|
|
711
|
+
# * +BS+ - (Array<Blob>)
|
|
712
|
+
# * +ConsumedCapacityUnits+ - (Numeric)
|
|
713
|
+
|
|
714
|
+
# @!method update_item(options = {})
|
|
715
|
+
# Calls the UpdateItem API operation.
|
|
716
|
+
# @param [Hash] options
|
|
717
|
+
# * +:table_name+ - *required* - (String) The name of the table in
|
|
718
|
+
# which you want to update an item. Allowed characters are a-z, A-Z,
|
|
719
|
+
# 0-9, _ (underscore), - (hyphen) and . (period).
|
|
720
|
+
# * +:key+ - *required* - (Hash)
|
|
721
|
+
# * +:hash_key_element+ - *required* - (Hash) A hash key element is
|
|
722
|
+
# treated as the primary key, and can be a string or a number.
|
|
723
|
+
# Single attribute primary keys have one index value. The value can
|
|
724
|
+
# be String, Number, StringSet, NumberSet.
|
|
725
|
+
# * +:s+ - (String) Strings are Unicode with UTF-8 binary encoding.
|
|
726
|
+
# The maximum size is limited by the size of the primary key
|
|
727
|
+
# (1024 bytes as a range part of a key or 2048 bytes as a single
|
|
728
|
+
# part hash key) or the item size (64k).
|
|
729
|
+
# * +:n+ - (String) Numbers are positive or negative exact-value
|
|
730
|
+
# decimals and integers. A number can have up to 38 digits
|
|
731
|
+
# precision and can be between 10^-128 to 10^+126.
|
|
732
|
+
# * +:b+ - (String) Binary attributes are sequences of unsigned
|
|
733
|
+
# bytes.
|
|
734
|
+
# * +:ss+ - (Array<String>) A set of strings.
|
|
735
|
+
# * +:ns+ - (Array<String>) A set of numbers.
|
|
736
|
+
# * +:bs+ - (Array<String>) A set of binary attributes.
|
|
737
|
+
# * +:range_key_element+ - (Hash) A range key element is treated as a
|
|
738
|
+
# secondary key (used in conjunction with the primary key), and can
|
|
739
|
+
# be a string or a number, and is only used for hash-and-range
|
|
740
|
+
# primary keys. The value can be String, Number, StringSet,
|
|
741
|
+
# NumberSet.
|
|
742
|
+
# * +:s+ - (String) Strings are Unicode with UTF-8 binary encoding.
|
|
743
|
+
# The maximum size is limited by the size of the primary key
|
|
744
|
+
# (1024 bytes as a range part of a key or 2048 bytes as a single
|
|
745
|
+
# part hash key) or the item size (64k).
|
|
746
|
+
# * +:n+ - (String) Numbers are positive or negative exact-value
|
|
747
|
+
# decimals and integers. A number can have up to 38 digits
|
|
748
|
+
# precision and can be between 10^-128 to 10^+126.
|
|
749
|
+
# * +:b+ - (String) Binary attributes are sequences of unsigned
|
|
750
|
+
# bytes.
|
|
751
|
+
# * +:ss+ - (Array<String>) A set of strings.
|
|
752
|
+
# * +:ns+ - (Array<String>) A set of numbers.
|
|
753
|
+
# * +:bs+ - (Array<String>) A set of binary attributes.
|
|
754
|
+
# * +:attribute_updates+ - *required* - (Hash<String,Hash>)
|
|
755
|
+
# * +:value+ - (Hash)
|
|
756
|
+
# * +:s+ - (String) Strings are Unicode with UTF-8 binary encoding.
|
|
757
|
+
# The maximum size is limited by the size of the primary key
|
|
758
|
+
# (1024 bytes as a range part of a key or 2048 bytes as a single
|
|
759
|
+
# part hash key) or the item size (64k).
|
|
760
|
+
# * +:n+ - (String) Numbers are positive or negative exact-value
|
|
761
|
+
# decimals and integers. A number can have up to 38 digits
|
|
762
|
+
# precision and can be between 10^-128 to 10^+126.
|
|
763
|
+
# * +:b+ - (String) Binary attributes are sequences of unsigned
|
|
764
|
+
# bytes.
|
|
765
|
+
# * +:ss+ - (Array<String>) A set of strings.
|
|
766
|
+
# * +:ns+ - (Array<String>) A set of numbers.
|
|
767
|
+
# * +:bs+ - (Array<String>) A set of binary attributes.
|
|
768
|
+
# * +:action+ - (String)
|
|
769
|
+
# * +:expected+ - (Hash<String,Hash>)
|
|
770
|
+
# * +:value+ - (Hash) Specify whether or not a value already exists
|
|
771
|
+
# and has a specific content for the attribute name-value pair.
|
|
772
|
+
# * +:s+ - (String) Strings are Unicode with UTF-8 binary encoding.
|
|
773
|
+
# The maximum size is limited by the size of the primary key
|
|
774
|
+
# (1024 bytes as a range part of a key or 2048 bytes as a single
|
|
775
|
+
# part hash key) or the item size (64k).
|
|
776
|
+
# * +:n+ - (String) Numbers are positive or negative exact-value
|
|
777
|
+
# decimals and integers. A number can have up to 38 digits
|
|
778
|
+
# precision and can be between 10^-128 to 10^+126.
|
|
779
|
+
# * +:b+ - (String) Binary attributes are sequences of unsigned
|
|
780
|
+
# bytes.
|
|
781
|
+
# * +:ss+ - (Array<String>) A set of strings.
|
|
782
|
+
# * +:ns+ - (Array<String>) A set of numbers.
|
|
783
|
+
# * +:bs+ - (Array<String>) A set of binary attributes.
|
|
784
|
+
# * +:exists+ - (Boolean) Specify whether or not a value already
|
|
785
|
+
# exists for the attribute name-value pair.
|
|
786
|
+
# * +:return_values+ - (String)
|
|
787
|
+
# @return [Core::Response]
|
|
788
|
+
# The #data method of the response object returns
|
|
789
|
+
# a hash with the following structure:
|
|
790
|
+
# * +Attributes+ - (Hash<String,Hash>)
|
|
791
|
+
# * +S+ - (String)
|
|
792
|
+
# * +N+ - (String)
|
|
793
|
+
# * +B+ - (String)
|
|
794
|
+
# * +SS+ - (Array<String>)
|
|
795
|
+
# * +NS+ - (Array<String>)
|
|
796
|
+
# * +BS+ - (Array<Blob>)
|
|
797
|
+
# * +ConsumedCapacityUnits+ - (Numeric)
|
|
798
|
+
|
|
799
|
+
# @!method update_table(options = {})
|
|
800
|
+
# Calls the UpdateTable API operation.
|
|
801
|
+
# @param [Hash] options
|
|
802
|
+
# * +:table_name+ - *required* - (String) The name of the table you
|
|
803
|
+
# want to update. Allowed characters are a-z, A-Z, 0-9, _
|
|
804
|
+
# (underscore), - (hyphen) and . (period).
|
|
805
|
+
# * +:provisioned_throughput+ - *required* - (Hash)
|
|
806
|
+
# * +:read_capacity_units+ - *required* - (Integer) ReadCapacityUnits
|
|
807
|
+
# are in terms of strictly consistent reads, assuming items of 1k.
|
|
808
|
+
# 2k items require twice the ReadCapacityUnits.
|
|
809
|
+
# Eventually-consistent reads only require half the
|
|
810
|
+
# ReadCapacityUnits of stirctly consistent reads.
|
|
811
|
+
# * +:write_capacity_units+ - *required* - (Integer)
|
|
812
|
+
# WriteCapacityUnits are in terms of strictly consistent reads,
|
|
813
|
+
# assuming items of 1k. 2k items require twice the
|
|
814
|
+
# WriteCapacityUnits.
|
|
815
|
+
# @return [Core::Response]
|
|
816
|
+
# The #data method of the response object returns
|
|
817
|
+
# a hash with the following structure:
|
|
818
|
+
# * +TableDescription+ - (Hash)
|
|
819
|
+
# * +TableName+ - (String)
|
|
820
|
+
# * +KeySchema+ - (Hash)
|
|
821
|
+
# * +HashKeyElement+ - (Hash)
|
|
822
|
+
# * +AttributeName+ - (String)
|
|
823
|
+
# * +AttributeType+ - (String)
|
|
824
|
+
# * +RangeKeyElement+ - (Hash)
|
|
825
|
+
# * +AttributeName+ - (String)
|
|
826
|
+
# * +AttributeType+ - (String)
|
|
827
|
+
# * +TableStatus+ - (String)
|
|
828
|
+
# * +CreationDateTime+ - (Time)
|
|
829
|
+
# * +ProvisionedThroughput+ - (Hash)
|
|
830
|
+
# * +LastIncreaseDateTime+ - (Time)
|
|
831
|
+
# * +LastDecreaseDateTime+ - (Time)
|
|
832
|
+
# * +ReadCapacityUnits+ - (Integer)
|
|
833
|
+
# * +WriteCapacityUnits+ - (Integer)
|
|
834
|
+
# * +TableSizeBytes+ - (Integer)
|
|
835
|
+
# * +ItemCount+ - (Integer)
|
|
836
|
+
|
|
837
|
+
# end client methods #
|
|
838
|
+
|
|
839
|
+
define_client_methods('2011-12-05')
|
|
840
|
+
|
|
841
|
+
protected
|
|
842
|
+
|
|
843
|
+
def extract_error_details response
|
|
844
|
+
if response.http_response.status == 413
|
|
845
|
+
['RequestEntityTooLarge', 'Request entity too large']
|
|
846
|
+
elsif crc32_is_valid?(response) == false
|
|
847
|
+
['CRC32CheckFailed', 'CRC32 integrity check failed']
|
|
848
|
+
else
|
|
849
|
+
super
|
|
850
|
+
end
|
|
851
|
+
end
|
|
852
|
+
|
|
853
|
+
def retryable_error? response
|
|
854
|
+
case response.error
|
|
855
|
+
when Errors::ProvisionedThroughputExceededException
|
|
856
|
+
config.dynamo_db_retry_throughput_errors?
|
|
857
|
+
when Errors::CRC32CheckFailed
|
|
858
|
+
true
|
|
859
|
+
else
|
|
860
|
+
super
|
|
861
|
+
end
|
|
862
|
+
end
|
|
863
|
+
|
|
864
|
+
def sleep_durations response
|
|
865
|
+
|
|
866
|
+
retry_count =
|
|
867
|
+
if expired_credentials?(response)
|
|
868
|
+
config.max_retries == 0 ? 0 : 1
|
|
869
|
+
else
|
|
870
|
+
config.max_retries { 10 }
|
|
871
|
+
end
|
|
872
|
+
|
|
873
|
+
# given a retry_count of 10, the sleep durations will look like:
|
|
874
|
+
# 0, 50, 100, 200, 400, 800, 1600, 3200, 6400, 12800 (milliseconds)
|
|
875
|
+
(0...retry_count).map do |n|
|
|
876
|
+
if n == 0
|
|
877
|
+
0
|
|
878
|
+
else
|
|
879
|
+
50 * (2 ** (n - 1)) / 1000.0
|
|
880
|
+
end
|
|
881
|
+
end
|
|
882
|
+
|
|
883
|
+
end
|
|
884
|
+
|
|
885
|
+
private
|
|
886
|
+
|
|
887
|
+
# @return [Boolean] whether the CRC32 response header matches the body.
|
|
888
|
+
# @return [nil] if no CRC32 header is present or we are not verifying CRC32
|
|
889
|
+
def crc32_is_valid? response
|
|
890
|
+
return nil unless config.dynamo_db_crc32
|
|
891
|
+
if crcs = response.http_response.headers['x-amz-crc32']
|
|
892
|
+
crcs[0].to_i == calculate_crc32(response)
|
|
893
|
+
else
|
|
894
|
+
nil
|
|
895
|
+
end
|
|
896
|
+
end
|
|
897
|
+
|
|
898
|
+
def calculate_crc32 response
|
|
899
|
+
Zlib.crc32(response.http_response.body)
|
|
900
|
+
end
|
|
901
|
+
|
|
902
|
+
end
|
|
903
|
+
end
|
|
904
|
+
end
|