aws-sdk 1.32.0 → 1.67.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/aws-sdk.rb +1 -15
- metadata +16 -589
- data/.yardopts +0 -7
- data/LICENSE.txt +0 -12
- data/README.md +0 -291
- data/bin/aws-rb +0 -169
- data/ca-bundle.crt +0 -3554
- data/endpoints.json +0 -1506
- data/lib/aws.rb +0 -14
- data/lib/aws/api_config/AutoScaling-2011-01-01.yml +0 -869
- data/lib/aws/api_config/CloudFormation-2010-05-15.yml +0 -358
- data/lib/aws/api_config/CloudFront-2013-05-12.yml +0 -2448
- data/lib/aws/api_config/CloudFront-2013-08-26.yml +0 -2599
- data/lib/aws/api_config/CloudFront-2013-09-27.yml +0 -2765
- data/lib/aws/api_config/CloudFront-2013-11-11.yml +0 -2886
- data/lib/aws/api_config/CloudSearch-2011-02-01.yml +0 -681
- data/lib/aws/api_config/CloudTrail-2013-11-01.yml +0 -159
- data/lib/aws/api_config/CloudWatch-2010-08-01.yml +0 -433
- data/lib/aws/api_config/DataPipeline-2012-10-29.yml +0 -422
- data/lib/aws/api_config/DirectConnect-2012-10-25.yml +0 -735
- data/lib/aws/api_config/DynamoDB-2011-12-05.yml +0 -1168
- data/lib/aws/api_config/DynamoDB-2012-08-10.yml +0 -2005
- data/lib/aws/api_config/EC2-2013-08-15.yml +0 -4708
- data/lib/aws/api_config/EC2-2013-10-01.yml +0 -4726
- data/lib/aws/api_config/EC2-2013-10-15.yml +0 -4726
- data/lib/aws/api_config/ELB-2012-06-01.yml +0 -632
- data/lib/aws/api_config/EMR-2009-03-31.yml +0 -953
- data/lib/aws/api_config/ElastiCache-2013-06-15.yml +0 -1188
- data/lib/aws/api_config/ElasticBeanstalk-2010-12-01.yml +0 -847
- data/lib/aws/api_config/ElasticTranscoder-2012-09-25.yml +0 -2285
- data/lib/aws/api_config/Glacier-2012-06-01.yml +0 -649
- data/lib/aws/api_config/IAM-2010-05-08.yml +0 -1297
- data/lib/aws/api_config/ImportExport-2010-06-01.yml +0 -109
- data/lib/aws/api_config/Kinesis-2013-12-02.yml +0 -201
- data/lib/aws/api_config/OpsWorks-2013-02-18.yml +0 -1825
- data/lib/aws/api_config/RDS-2013-05-15.yml +0 -2464
- data/lib/aws/api_config/RDS-2013-09-09.yml +0 -2641
- data/lib/aws/api_config/Redshift-2012-12-01.yml +0 -2137
- data/lib/aws/api_config/Route53-2012-12-12.yml +0 -547
- data/lib/aws/api_config/SNS-2010-03-31.yml +0 -433
- data/lib/aws/api_config/SQS-2012-11-05.yml +0 -319
- data/lib/aws/api_config/STS-2011-06-15.yml +0 -147
- data/lib/aws/api_config/SimpleDB-2009-04-15.yml +0 -306
- data/lib/aws/api_config/SimpleEmailService-2010-12-01.yml +0 -346
- data/lib/aws/api_config/SimpleWorkflow-2012-01-25.yml +0 -2388
- data/lib/aws/api_config/StorageGateway-2012-06-30.yml +0 -748
- data/lib/aws/api_config/StorageGateway-2013-06-30.yml +0 -1025
- data/lib/aws/api_config/Support-2013-04-15.yml +0 -426
- data/lib/aws/auto_scaling.rb +0 -163
- data/lib/aws/auto_scaling/activity.rb +0 -102
- data/lib/aws/auto_scaling/activity_collection.rb +0 -81
- data/lib/aws/auto_scaling/client.rb +0 -48
- data/lib/aws/auto_scaling/config.rb +0 -18
- data/lib/aws/auto_scaling/errors.rb +0 -22
- data/lib/aws/auto_scaling/group.rb +0 -421
- data/lib/aws/auto_scaling/group_collection.rb +0 -96
- data/lib/aws/auto_scaling/group_options.rb +0 -155
- data/lib/aws/auto_scaling/instance.rb +0 -192
- data/lib/aws/auto_scaling/instance_collection.rb +0 -63
- data/lib/aws/auto_scaling/launch_configuration.rb +0 -162
- data/lib/aws/auto_scaling/launch_configuration_collection.rb +0 -160
- data/lib/aws/auto_scaling/notification_configuration.rb +0 -89
- data/lib/aws/auto_scaling/notification_configuration_collection.rb +0 -183
- data/lib/aws/auto_scaling/scaling_policy.rb +0 -142
- data/lib/aws/auto_scaling/scaling_policy_collection.rb +0 -72
- data/lib/aws/auto_scaling/scaling_policy_options.rb +0 -65
- data/lib/aws/auto_scaling/scheduled_action.rb +0 -141
- data/lib/aws/auto_scaling/scheduled_action_collection.rb +0 -202
- data/lib/aws/auto_scaling/tag.rb +0 -59
- data/lib/aws/auto_scaling/tag_collection.rb +0 -114
- data/lib/aws/cloud_formation.rb +0 -272
- data/lib/aws/cloud_formation/client.rb +0 -48
- data/lib/aws/cloud_formation/config.rb +0 -18
- data/lib/aws/cloud_formation/errors.rb +0 -22
- data/lib/aws/cloud_formation/stack.rb +0 -266
- data/lib/aws/cloud_formation/stack_collection.rb +0 -232
- data/lib/aws/cloud_formation/stack_event.rb +0 -73
- data/lib/aws/cloud_formation/stack_event_collection.rb +0 -47
- data/lib/aws/cloud_formation/stack_options.rb +0 -72
- data/lib/aws/cloud_formation/stack_output.rb +0 -53
- data/lib/aws/cloud_formation/stack_resource.rb +0 -117
- data/lib/aws/cloud_formation/stack_resource_collection.rb +0 -83
- data/lib/aws/cloud_formation/stack_resource_summary_collection.rb +0 -64
- data/lib/aws/cloud_formation/stack_summary_collection.rb +0 -123
- data/lib/aws/cloud_front.rb +0 -72
- data/lib/aws/cloud_front/client.rb +0 -45
- data/lib/aws/cloud_front/config.rb +0 -18
- data/lib/aws/cloud_front/errors.rb +0 -22
- data/lib/aws/cloud_search.rb +0 -73
- data/lib/aws/cloud_search/client.rb +0 -36
- data/lib/aws/cloud_search/config.rb +0 -18
- data/lib/aws/cloud_search/errors.rb +0 -22
- data/lib/aws/cloud_trail.rb +0 -72
- data/lib/aws/cloud_trail/client.rb +0 -35
- data/lib/aws/cloud_trail/config.rb +0 -18
- data/lib/aws/cloud_trail/errors.rb +0 -22
- data/lib/aws/cloud_watch.rb +0 -118
- data/lib/aws/cloud_watch/alarm.rb +0 -290
- data/lib/aws/cloud_watch/alarm_collection.rb +0 -153
- data/lib/aws/cloud_watch/alarm_history_item.rb +0 -50
- data/lib/aws/cloud_watch/alarm_history_item_collection.rb +0 -84
- data/lib/aws/cloud_watch/client.rb +0 -40
- data/lib/aws/cloud_watch/config.rb +0 -18
- data/lib/aws/cloud_watch/errors.rb +0 -22
- data/lib/aws/cloud_watch/metric.rb +0 -135
- data/lib/aws/cloud_watch/metric_alarm_collection.rb +0 -160
- data/lib/aws/cloud_watch/metric_collection.rb +0 -129
- data/lib/aws/cloud_watch/metric_statistics.rb +0 -69
- data/lib/aws/core.rb +0 -701
- data/lib/aws/core/async_handle.rb +0 -90
- data/lib/aws/core/cacheable.rb +0 -77
- data/lib/aws/core/client.rb +0 -778
- data/lib/aws/core/collection.rb +0 -263
- data/lib/aws/core/collection/simple.rb +0 -82
- data/lib/aws/core/collection/with_limit_and_next_token.rb +0 -71
- data/lib/aws/core/collection/with_next_token.rb +0 -97
- data/lib/aws/core/configuration.rb +0 -541
- data/lib/aws/core/credential_providers.rb +0 -506
- data/lib/aws/core/data.rb +0 -247
- data/lib/aws/core/deprecations.rb +0 -84
- data/lib/aws/core/endpoints.rb +0 -37
- data/lib/aws/core/http/connection_pool.rb +0 -349
- data/lib/aws/core/http/curb_handler.rb +0 -148
- data/lib/aws/core/http/handler.rb +0 -89
- data/lib/aws/core/http/net_http_handler.rb +0 -147
- data/lib/aws/core/http/patch.rb +0 -102
- data/lib/aws/core/http/request.rb +0 -249
- data/lib/aws/core/http/response.rb +0 -81
- data/lib/aws/core/indifferent_hash.rb +0 -88
- data/lib/aws/core/inflection.rb +0 -56
- data/lib/aws/core/json_client.rb +0 -47
- data/lib/aws/core/json_parser.rb +0 -76
- data/lib/aws/core/json_request_builder.rb +0 -35
- data/lib/aws/core/json_response_parser.rb +0 -79
- data/lib/aws/core/lazy_error_classes.rb +0 -90
- data/lib/aws/core/log_formatter.rb +0 -428
- data/lib/aws/core/managed_file.rb +0 -32
- data/lib/aws/core/meta_utils.rb +0 -45
- data/lib/aws/core/model.rb +0 -57
- data/lib/aws/core/naming.rb +0 -30
- data/lib/aws/core/option_grammar.rb +0 -738
- data/lib/aws/core/options/json_serializer.rb +0 -82
- data/lib/aws/core/options/validator.rb +0 -155
- data/lib/aws/core/options/xml_serializer.rb +0 -118
- data/lib/aws/core/page_result.rb +0 -75
- data/lib/aws/core/policy.rb +0 -942
- data/lib/aws/core/query_client.rb +0 -41
- data/lib/aws/core/query_error_parser.rb +0 -24
- data/lib/aws/core/query_request_builder.rb +0 -47
- data/lib/aws/core/query_response_parser.rb +0 -35
- data/lib/aws/core/region.rb +0 -85
- data/lib/aws/core/region_collection.rb +0 -80
- data/lib/aws/core/resource.rb +0 -413
- data/lib/aws/core/resource_cache.rb +0 -40
- data/lib/aws/core/response.rb +0 -211
- data/lib/aws/core/response_cache.rb +0 -50
- data/lib/aws/core/rest_error_parser.rb +0 -24
- data/lib/aws/core/rest_json_client.rb +0 -40
- data/lib/aws/core/rest_request_builder.rb +0 -154
- data/lib/aws/core/rest_response_parser.rb +0 -66
- data/lib/aws/core/rest_xml_client.rb +0 -47
- data/lib/aws/core/service_interface.rb +0 -83
- data/lib/aws/core/signers/base.rb +0 -46
- data/lib/aws/core/signers/cloud_front.rb +0 -56
- data/lib/aws/core/signers/s3.rb +0 -159
- data/lib/aws/core/signers/version_2.rb +0 -72
- data/lib/aws/core/signers/version_3.rb +0 -86
- data/lib/aws/core/signers/version_3_https.rb +0 -61
- data/lib/aws/core/signers/version_4.rb +0 -228
- data/lib/aws/core/signers/version_4/chunk_signed_stream.rb +0 -191
- data/lib/aws/core/uri_escape.rb +0 -44
- data/lib/aws/core/xml/frame.rb +0 -244
- data/lib/aws/core/xml/frame_stack.rb +0 -85
- data/lib/aws/core/xml/grammar.rb +0 -306
- data/lib/aws/core/xml/parser.rb +0 -70
- data/lib/aws/core/xml/root_frame.rb +0 -65
- data/lib/aws/core/xml/sax_handlers/libxml.rb +0 -47
- data/lib/aws/core/xml/sax_handlers/nokogiri.rb +0 -56
- data/lib/aws/core/xml/sax_handlers/ox.rb +0 -41
- data/lib/aws/core/xml/sax_handlers/rexml.rb +0 -47
- data/lib/aws/core/xml/stub.rb +0 -123
- data/lib/aws/data_pipeline.rb +0 -72
- data/lib/aws/data_pipeline/client.rb +0 -36
- data/lib/aws/data_pipeline/config.rb +0 -18
- data/lib/aws/data_pipeline/errors.rb +0 -20
- data/lib/aws/direct_connect.rb +0 -73
- data/lib/aws/direct_connect/client.rb +0 -36
- data/lib/aws/direct_connect/config.rb +0 -18
- data/lib/aws/direct_connect/errors.rb +0 -22
- data/lib/aws/dynamo_db.rb +0 -214
- data/lib/aws/dynamo_db/attribute_collection.rb +0 -456
- data/lib/aws/dynamo_db/batch_get.rb +0 -213
- data/lib/aws/dynamo_db/batch_write.rb +0 -252
- data/lib/aws/dynamo_db/binary.rb +0 -35
- data/lib/aws/dynamo_db/client.rb +0 -129
- data/lib/aws/dynamo_db/client/v20111205.rb +0 -1266
- data/lib/aws/dynamo_db/client/v20120810.rb +0 -1409
- data/lib/aws/dynamo_db/client_v2.rb +0 -44
- data/lib/aws/dynamo_db/config.rb +0 -24
- data/lib/aws/dynamo_db/errors.rb +0 -20
- data/lib/aws/dynamo_db/expectations.rb +0 -40
- data/lib/aws/dynamo_db/item.rb +0 -133
- data/lib/aws/dynamo_db/item_collection.rb +0 -856
- data/lib/aws/dynamo_db/item_data.rb +0 -31
- data/lib/aws/dynamo_db/keys.rb +0 -41
- data/lib/aws/dynamo_db/primary_key_element.rb +0 -48
- data/lib/aws/dynamo_db/resource.rb +0 -33
- data/lib/aws/dynamo_db/table.rb +0 -496
- data/lib/aws/dynamo_db/table_collection.rb +0 -165
- data/lib/aws/dynamo_db/types.rb +0 -111
- data/lib/aws/ec2.rb +0 -428
- data/lib/aws/ec2/attachment.rb +0 -135
- data/lib/aws/ec2/attachment_collection.rb +0 -54
- data/lib/aws/ec2/availability_zone.rb +0 -86
- data/lib/aws/ec2/availability_zone_collection.rb +0 -43
- data/lib/aws/ec2/block_device_mappings.rb +0 -53
- data/lib/aws/ec2/client.rb +0 -101
- data/lib/aws/ec2/collection.rb +0 -36
- data/lib/aws/ec2/config.rb +0 -30
- data/lib/aws/ec2/customer_gateway.rb +0 -90
- data/lib/aws/ec2/customer_gateway_collection.rb +0 -73
- data/lib/aws/ec2/dhcp_options.rb +0 -106
- data/lib/aws/ec2/dhcp_options_collection.rb +0 -87
- data/lib/aws/ec2/elastic_ip.rb +0 -209
- data/lib/aws/ec2/elastic_ip_collection.rb +0 -93
- data/lib/aws/ec2/errors.rb +0 -32
- data/lib/aws/ec2/export_task.rb +0 -120
- data/lib/aws/ec2/export_task_collection.rb +0 -67
- data/lib/aws/ec2/filtered_collection.rb +0 -87
- data/lib/aws/ec2/has_permissions.rb +0 -44
- data/lib/aws/ec2/image.rb +0 -270
- data/lib/aws/ec2/image_collection.rb +0 -220
- data/lib/aws/ec2/instance.rb +0 -803
- data/lib/aws/ec2/instance_collection.rb +0 -391
- data/lib/aws/ec2/internet_gateway.rb +0 -122
- data/lib/aws/ec2/internet_gateway/attachment.rb +0 -78
- data/lib/aws/ec2/internet_gateway_collection.rb +0 -54
- data/lib/aws/ec2/key_pair.rb +0 -82
- data/lib/aws/ec2/key_pair_collection.rb +0 -99
- data/lib/aws/ec2/network_acl.rb +0 -256
- data/lib/aws/ec2/network_acl/association.rb +0 -56
- data/lib/aws/ec2/network_acl/entry.rb +0 -147
- data/lib/aws/ec2/network_acl_collection.rb +0 -64
- data/lib/aws/ec2/network_interface.rb +0 -237
- data/lib/aws/ec2/network_interface/attachment.rb +0 -100
- data/lib/aws/ec2/network_interface_collection.rb +0 -103
- data/lib/aws/ec2/permission_collection.rb +0 -174
- data/lib/aws/ec2/region.rb +0 -106
- data/lib/aws/ec2/region_collection.rb +0 -51
- data/lib/aws/ec2/reserved_instances.rb +0 -56
- data/lib/aws/ec2/reserved_instances_collection.rb +0 -40
- data/lib/aws/ec2/reserved_instances_offering.rb +0 -60
- data/lib/aws/ec2/reserved_instances_offering_collection.rb +0 -45
- data/lib/aws/ec2/resource.rb +0 -161
- data/lib/aws/ec2/resource_tag_collection.rb +0 -211
- data/lib/aws/ec2/route_table.rb +0 -205
- data/lib/aws/ec2/route_table/association.rb +0 -119
- data/lib/aws/ec2/route_table/route.rb +0 -119
- data/lib/aws/ec2/route_table_collection.rb +0 -72
- data/lib/aws/ec2/security_group.rb +0 -482
- data/lib/aws/ec2/security_group/ip_permission.rb +0 -135
- data/lib/aws/ec2/security_group/ip_permission_collection.rb +0 -82
- data/lib/aws/ec2/security_group_collection.rb +0 -133
- data/lib/aws/ec2/snapshot.rb +0 -143
- data/lib/aws/ec2/snapshot_collection.rb +0 -131
- data/lib/aws/ec2/subnet.rb +0 -161
- data/lib/aws/ec2/subnet_collection.rb +0 -115
- data/lib/aws/ec2/tag.rb +0 -81
- data/lib/aws/ec2/tag_collection.rb +0 -107
- data/lib/aws/ec2/tagged_collection.rb +0 -53
- data/lib/aws/ec2/tagged_item.rb +0 -85
- data/lib/aws/ec2/volume.rb +0 -174
- data/lib/aws/ec2/volume_collection.rb +0 -98
- data/lib/aws/ec2/vpc.rb +0 -166
- data/lib/aws/ec2/vpc_collection.rb +0 -70
- data/lib/aws/ec2/vpn_connection.rb +0 -99
- data/lib/aws/ec2/vpn_connection/telemetry.rb +0 -49
- data/lib/aws/ec2/vpn_connection_collection.rb +0 -96
- data/lib/aws/ec2/vpn_gateway.rb +0 -123
- data/lib/aws/ec2/vpn_gateway/attachment.rb +0 -45
- data/lib/aws/ec2/vpn_gateway_collection.rb +0 -77
- data/lib/aws/elastic_beanstalk.rb +0 -49
- data/lib/aws/elastic_beanstalk/client.rb +0 -36
- data/lib/aws/elastic_beanstalk/config.rb +0 -18
- data/lib/aws/elastic_beanstalk/errors.rb +0 -22
- data/lib/aws/elastic_transcoder.rb +0 -29
- data/lib/aws/elastic_transcoder/client.rb +0 -48
- data/lib/aws/elastic_transcoder/config.rb +0 -18
- data/lib/aws/elastic_transcoder/errors.rb +0 -23
- data/lib/aws/elasticache.rb +0 -49
- data/lib/aws/elasticache/client.rb +0 -35
- data/lib/aws/elasticache/config.rb +0 -18
- data/lib/aws/elasticache/errors.rb +0 -22
- data/lib/aws/elb.rb +0 -66
- data/lib/aws/elb/availability_zone_collection.rb +0 -138
- data/lib/aws/elb/backend_server_policy_collection.rb +0 -139
- data/lib/aws/elb/client.rb +0 -35
- data/lib/aws/elb/config.rb +0 -18
- data/lib/aws/elb/errors.rb +0 -26
- data/lib/aws/elb/instance_collection.rb +0 -168
- data/lib/aws/elb/listener.rb +0 -190
- data/lib/aws/elb/listener_collection.rb +0 -113
- data/lib/aws/elb/listener_opts.rb +0 -45
- data/lib/aws/elb/load_balancer.rb +0 -280
- data/lib/aws/elb/load_balancer_collection.rb +0 -146
- data/lib/aws/elb/load_balancer_policy.rb +0 -93
- data/lib/aws/elb/load_balancer_policy_collection.rb +0 -208
- data/lib/aws/emr.rb +0 -87
- data/lib/aws/emr/client.rb +0 -35
- data/lib/aws/emr/config.rb +0 -18
- data/lib/aws/emr/errors.rb +0 -22
- data/lib/aws/emr/instance_group.rb +0 -138
- data/lib/aws/emr/instance_group_collection.rb +0 -82
- data/lib/aws/emr/job_flow.rb +0 -307
- data/lib/aws/emr/job_flow_collection.rb +0 -185
- data/lib/aws/errors.rb +0 -162
- data/lib/aws/glacier.rb +0 -79
- data/lib/aws/glacier/archive.rb +0 -56
- data/lib/aws/glacier/archive_collection.rb +0 -146
- data/lib/aws/glacier/client.rb +0 -49
- data/lib/aws/glacier/config.rb +0 -19
- data/lib/aws/glacier/errors.rb +0 -22
- data/lib/aws/glacier/resource.rb +0 -30
- data/lib/aws/glacier/vault.rb +0 -145
- data/lib/aws/glacier/vault_collection.rb +0 -75
- data/lib/aws/glacier/vault_notification_configuration.rb +0 -29
- data/lib/aws/iam.rb +0 -408
- data/lib/aws/iam/access_key.rb +0 -185
- data/lib/aws/iam/access_key_collection.rb +0 -128
- data/lib/aws/iam/account_alias_collection.rb +0 -79
- data/lib/aws/iam/client.rb +0 -49
- data/lib/aws/iam/collection.rb +0 -83
- data/lib/aws/iam/config.rb +0 -18
- data/lib/aws/iam/errors.rb +0 -22
- data/lib/aws/iam/group.rb +0 -111
- data/lib/aws/iam/group_collection.rb +0 -132
- data/lib/aws/iam/group_policy_collection.rb +0 -47
- data/lib/aws/iam/group_user_collection.rb +0 -84
- data/lib/aws/iam/login_profile.rb +0 -99
- data/lib/aws/iam/mfa_device.rb +0 -52
- data/lib/aws/iam/mfa_device_collection.rb +0 -127
- data/lib/aws/iam/policy.rb +0 -46
- data/lib/aws/iam/policy_collection.rb +0 -188
- data/lib/aws/iam/resource.rb +0 -62
- data/lib/aws/iam/server_certificate.rb +0 -141
- data/lib/aws/iam/server_certificate_collection.rb +0 -138
- data/lib/aws/iam/signing_certificate.rb +0 -174
- data/lib/aws/iam/signing_certificate_collection.rb +0 -131
- data/lib/aws/iam/user.rb +0 -200
- data/lib/aws/iam/user_collection.rb +0 -133
- data/lib/aws/iam/user_group_collection.rb +0 -98
- data/lib/aws/iam/user_policy.rb +0 -90
- data/lib/aws/iam/user_policy_collection.rb +0 -45
- data/lib/aws/iam/virtual_mfa_device.rb +0 -139
- data/lib/aws/iam/virtual_mfa_device_collection.rb +0 -73
- data/lib/aws/import_export.rb +0 -73
- data/lib/aws/import_export/client.rb +0 -35
- data/lib/aws/import_export/config.rb +0 -19
- data/lib/aws/import_export/errors.rb +0 -22
- data/lib/aws/kinesis.rb +0 -53
- data/lib/aws/kinesis/client.rb +0 -35
- data/lib/aws/kinesis/config.rb +0 -18
- data/lib/aws/kinesis/errors.rb +0 -20
- data/lib/aws/ops_works.rb +0 -29
- data/lib/aws/ops_works/client.rb +0 -35
- data/lib/aws/ops_works/config.rb +0 -18
- data/lib/aws/ops_works/errors.rb +0 -20
- data/lib/aws/rails.rb +0 -195
- data/lib/aws/rds.rb +0 -70
- data/lib/aws/rds/client.rb +0 -42
- data/lib/aws/rds/config.rb +0 -18
- data/lib/aws/rds/db_instance.rb +0 -216
- data/lib/aws/rds/db_instance_collection.rb +0 -75
- data/lib/aws/rds/db_snapshot.rb +0 -163
- data/lib/aws/rds/db_snapshot_collection.rb +0 -89
- data/lib/aws/rds/errors.rb +0 -22
- data/lib/aws/record.rb +0 -139
- data/lib/aws/record/abstract_base.rb +0 -690
- data/lib/aws/record/attributes.rb +0 -388
- data/lib/aws/record/conversion.rb +0 -38
- data/lib/aws/record/dirty_tracking.rb +0 -287
- data/lib/aws/record/errors.rb +0 -143
- data/lib/aws/record/exceptions.rb +0 -51
- data/lib/aws/record/hash_model.rb +0 -204
- data/lib/aws/record/hash_model/attributes.rb +0 -195
- data/lib/aws/record/hash_model/finder_methods.rb +0 -172
- data/lib/aws/record/hash_model/scope.rb +0 -108
- data/lib/aws/record/model.rb +0 -453
- data/lib/aws/record/model/attributes.rb +0 -377
- data/lib/aws/record/model/finder_methods.rb +0 -232
- data/lib/aws/record/model/scope.rb +0 -212
- data/lib/aws/record/naming.rb +0 -31
- data/lib/aws/record/scope.rb +0 -203
- data/lib/aws/record/validations.rb +0 -694
- data/lib/aws/record/validator.rb +0 -246
- data/lib/aws/record/validators/acceptance.rb +0 -49
- data/lib/aws/record/validators/block.rb +0 -36
- data/lib/aws/record/validators/confirmation.rb +0 -41
- data/lib/aws/record/validators/count.rb +0 -106
- data/lib/aws/record/validators/exclusion.rb +0 -41
- data/lib/aws/record/validators/format.rb +0 -55
- data/lib/aws/record/validators/inclusion.rb +0 -54
- data/lib/aws/record/validators/length.rb +0 -105
- data/lib/aws/record/validators/method.rb +0 -31
- data/lib/aws/record/validators/numericality.rb +0 -136
- data/lib/aws/record/validators/presence.rb +0 -43
- data/lib/aws/redshift.rb +0 -51
- data/lib/aws/redshift/client.rb +0 -35
- data/lib/aws/redshift/config.rb +0 -18
- data/lib/aws/redshift/errors.rb +0 -22
- data/lib/aws/route_53.rb +0 -86
- data/lib/aws/route_53/change_batch.rb +0 -161
- data/lib/aws/route_53/change_info.rb +0 -72
- data/lib/aws/route_53/client.rb +0 -35
- data/lib/aws/route_53/config.rb +0 -18
- data/lib/aws/route_53/errors.rb +0 -22
- data/lib/aws/route_53/hosted_zone.rb +0 -111
- data/lib/aws/route_53/hosted_zone_collection.rb +0 -100
- data/lib/aws/route_53/resource_record_set.rb +0 -251
- data/lib/aws/route_53/resource_record_set_collection.rb +0 -110
- data/lib/aws/s3.rb +0 -156
- data/lib/aws/s3/access_control_list.rb +0 -265
- data/lib/aws/s3/acl_object.rb +0 -264
- data/lib/aws/s3/acl_options.rb +0 -204
- data/lib/aws/s3/bucket.rb +0 -742
- data/lib/aws/s3/bucket_collection.rb +0 -162
- data/lib/aws/s3/bucket_lifecycle_configuration.rb +0 -457
- data/lib/aws/s3/bucket_tag_collection.rb +0 -111
- data/lib/aws/s3/bucket_version_collection.rb +0 -79
- data/lib/aws/s3/cipher_io.rb +0 -120
- data/lib/aws/s3/client.rb +0 -1919
- data/lib/aws/s3/client/xml.rb +0 -259
- data/lib/aws/s3/config.rb +0 -48
- data/lib/aws/s3/cors_rule.rb +0 -108
- data/lib/aws/s3/cors_rule_collection.rb +0 -194
- data/lib/aws/s3/data_options.rb +0 -191
- data/lib/aws/s3/encryption_utils.rb +0 -146
- data/lib/aws/s3/errors.rb +0 -94
- data/lib/aws/s3/multipart_upload.rb +0 -351
- data/lib/aws/s3/multipart_upload_collection.rb +0 -76
- data/lib/aws/s3/object_collection.rb +0 -353
- data/lib/aws/s3/object_metadata.rb +0 -103
- data/lib/aws/s3/object_upload_collection.rb +0 -77
- data/lib/aws/s3/object_version.rb +0 -154
- data/lib/aws/s3/object_version_collection.rb +0 -89
- data/lib/aws/s3/paginated_collection.rb +0 -75
- data/lib/aws/s3/policy.rb +0 -74
- data/lib/aws/s3/prefix_and_delimiter_collection.rb +0 -47
- data/lib/aws/s3/prefixed_collection.rb +0 -85
- data/lib/aws/s3/presign_v4.rb +0 -127
- data/lib/aws/s3/presigned_post.rb +0 -554
- data/lib/aws/s3/request.rb +0 -62
- data/lib/aws/s3/s3_object.rb +0 -1781
- data/lib/aws/s3/tree.rb +0 -116
- data/lib/aws/s3/tree/branch_node.rb +0 -68
- data/lib/aws/s3/tree/child_collection.rb +0 -104
- data/lib/aws/s3/tree/leaf_node.rb +0 -94
- data/lib/aws/s3/tree/node.rb +0 -22
- data/lib/aws/s3/tree/parent.rb +0 -87
- data/lib/aws/s3/uploaded_part.rb +0 -82
- data/lib/aws/s3/uploaded_part_collection.rb +0 -84
- data/lib/aws/s3/website_configuration.rb +0 -102
- data/lib/aws/simple_db.rb +0 -218
- data/lib/aws/simple_db/attribute.rb +0 -156
- data/lib/aws/simple_db/attribute_collection.rb +0 -240
- data/lib/aws/simple_db/client.rb +0 -67
- data/lib/aws/simple_db/config.rb +0 -20
- data/lib/aws/simple_db/consistent_read_option.rb +0 -42
- data/lib/aws/simple_db/delete_attributes.rb +0 -62
- data/lib/aws/simple_db/domain.rb +0 -123
- data/lib/aws/simple_db/domain_collection.rb +0 -86
- data/lib/aws/simple_db/domain_metadata.rb +0 -110
- data/lib/aws/simple_db/errors.rb +0 -55
- data/lib/aws/simple_db/expect_condition_option.rb +0 -45
- data/lib/aws/simple_db/item.rb +0 -93
- data/lib/aws/simple_db/item_collection.rb +0 -654
- data/lib/aws/simple_db/item_data.rb +0 -73
- data/lib/aws/simple_db/put_attributes.rb +0 -60
- data/lib/aws/simple_email_service.rb +0 -430
- data/lib/aws/simple_email_service/client.rb +0 -37
- data/lib/aws/simple_email_service/config.rb +0 -18
- data/lib/aws/simple_email_service/email_address_collection.rb +0 -69
- data/lib/aws/simple_email_service/errors.rb +0 -22
- data/lib/aws/simple_email_service/identity.rb +0 -209
- data/lib/aws/simple_email_service/identity_collection.rb +0 -81
- data/lib/aws/simple_email_service/quotas.rb +0 -66
- data/lib/aws/simple_workflow.rb +0 -227
- data/lib/aws/simple_workflow/activity_task.rb +0 -178
- data/lib/aws/simple_workflow/activity_task_collection.rb +0 -123
- data/lib/aws/simple_workflow/activity_type.rb +0 -131
- data/lib/aws/simple_workflow/activity_type_collection.rb +0 -93
- data/lib/aws/simple_workflow/client.rb +0 -69
- data/lib/aws/simple_workflow/config.rb +0 -18
- data/lib/aws/simple_workflow/count.rb +0 -49
- data/lib/aws/simple_workflow/decision_task.rb +0 -603
- data/lib/aws/simple_workflow/decision_task_collection.rb +0 -225
- data/lib/aws/simple_workflow/domain.rb +0 -122
- data/lib/aws/simple_workflow/domain_collection.rb +0 -169
- data/lib/aws/simple_workflow/errors.rb +0 -20
- data/lib/aws/simple_workflow/history_event.rb +0 -276
- data/lib/aws/simple_workflow/history_event_collection.rb +0 -76
- data/lib/aws/simple_workflow/option_formatters.rb +0 -82
- data/lib/aws/simple_workflow/resource.rb +0 -94
- data/lib/aws/simple_workflow/type.rb +0 -89
- data/lib/aws/simple_workflow/type_collection.rb +0 -140
- data/lib/aws/simple_workflow/workflow_execution.rb +0 -384
- data/lib/aws/simple_workflow/workflow_execution_collection.rb +0 -617
- data/lib/aws/simple_workflow/workflow_type.rb +0 -179
- data/lib/aws/simple_workflow/workflow_type_collection.rb +0 -91
- data/lib/aws/sns.rb +0 -76
- data/lib/aws/sns/client.rb +0 -35
- data/lib/aws/sns/config.rb +0 -18
- data/lib/aws/sns/errors.rb +0 -22
- data/lib/aws/sns/has_delivery_policy.rb +0 -68
- data/lib/aws/sns/message.rb +0 -194
- data/lib/aws/sns/originators/from_auto_scaling.rb +0 -68
- data/lib/aws/sns/policy.rb +0 -47
- data/lib/aws/sns/subscription.rb +0 -165
- data/lib/aws/sns/subscription_collection.rb +0 -78
- data/lib/aws/sns/topic.rb +0 -403
- data/lib/aws/sns/topic_collection.rb +0 -62
- data/lib/aws/sns/topic_subscription_collection.rb +0 -54
- data/lib/aws/sqs.rb +0 -80
- data/lib/aws/sqs/client.rb +0 -53
- data/lib/aws/sqs/config.rb +0 -20
- data/lib/aws/sqs/errors.rb +0 -125
- data/lib/aws/sqs/policy.rb +0 -48
- data/lib/aws/sqs/queue.rb +0 -843
- data/lib/aws/sqs/queue_collection.rb +0 -182
- data/lib/aws/sqs/received_message.rb +0 -182
- data/lib/aws/sqs/received_sns_message.rb +0 -116
- data/lib/aws/storage_gateway.rb +0 -72
- data/lib/aws/storage_gateway/client.rb +0 -42
- data/lib/aws/storage_gateway/config.rb +0 -18
- data/lib/aws/storage_gateway/errors.rb +0 -22
- data/lib/aws/sts.rb +0 -164
- data/lib/aws/sts/client.rb +0 -46
- data/lib/aws/sts/config.rb +0 -18
- data/lib/aws/sts/errors.rb +0 -22
- data/lib/aws/sts/federated_session.rb +0 -56
- data/lib/aws/sts/policy.rb +0 -30
- data/lib/aws/sts/session.rb +0 -48
- data/lib/aws/support.rb +0 -29
- data/lib/aws/support/client.rb +0 -35
- data/lib/aws/support/config.rb +0 -18
- data/lib/aws/support/errors.rb +0 -20
- data/lib/aws/version.rb +0 -17
- data/rails/init.rb +0 -15
data/lib/aws/core/json_client.rb
DELETED
@@ -1,47 +0,0 @@
|
|
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
|
-
module Core
|
16
|
-
class JSONClient < Core::Client
|
17
|
-
|
18
|
-
protected
|
19
|
-
|
20
|
-
def self.request_builder_for api_config, operation
|
21
|
-
JSONRequestBuilder.new(api_config, operation)
|
22
|
-
end
|
23
|
-
|
24
|
-
def self.response_parser_for api_config, operation
|
25
|
-
JSONResponseParser.new(operation[:outputs])
|
26
|
-
end
|
27
|
-
|
28
|
-
def extract_error_details response
|
29
|
-
if
|
30
|
-
response.http_response.status >= 300 and
|
31
|
-
body = response.http_response.body and
|
32
|
-
json = (::JSON.load(body) rescue nil) and
|
33
|
-
type = json["__type"]
|
34
|
-
then
|
35
|
-
code = type.split('#').last
|
36
|
-
if code == 'RequestEntityTooLarge'
|
37
|
-
message = 'Request body must be less than 1 MB'
|
38
|
-
else
|
39
|
-
message = json['message'] || json['Message']
|
40
|
-
end
|
41
|
-
[code, message]
|
42
|
-
end
|
43
|
-
end
|
44
|
-
|
45
|
-
end
|
46
|
-
end
|
47
|
-
end
|
data/lib/aws/core/json_parser.rb
DELETED
@@ -1,76 +0,0 @@
|
|
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 'json'
|
15
|
-
require 'time'
|
16
|
-
require 'bigdecimal'
|
17
|
-
require 'base64'
|
18
|
-
|
19
|
-
module AWS
|
20
|
-
module Core
|
21
|
-
|
22
|
-
# @api private
|
23
|
-
class JSONParser
|
24
|
-
|
25
|
-
def initialize rules
|
26
|
-
@rules = rules
|
27
|
-
end
|
28
|
-
|
29
|
-
attr_reader :rules
|
30
|
-
|
31
|
-
def parse body
|
32
|
-
body = "{}" if [nil, ''].include?(body)
|
33
|
-
translate(JSON.load(body))
|
34
|
-
end
|
35
|
-
|
36
|
-
protected
|
37
|
-
|
38
|
-
# @param [Hash] values
|
39
|
-
# @param [Hash] rules
|
40
|
-
# @return [Hash]
|
41
|
-
def translate values, rules = @rules
|
42
|
-
rules.inject({}) do |data,(key,rule)|
|
43
|
-
if values.key?(key) && !values[key].nil?
|
44
|
-
data.merge(rule[:sym] || key => translate_value(values[key], rule))
|
45
|
-
else
|
46
|
-
data
|
47
|
-
end
|
48
|
-
end
|
49
|
-
end
|
50
|
-
|
51
|
-
def translate_hash values, rules
|
52
|
-
translate(values, rules[:members])
|
53
|
-
end
|
54
|
-
|
55
|
-
def translate_map values, rules
|
56
|
-
values.inject({}) do |data,(key,value)|
|
57
|
-
data.merge(key => translate_value(value, rules[:members]))
|
58
|
-
end
|
59
|
-
end
|
60
|
-
|
61
|
-
def translate_value value, rule
|
62
|
-
case
|
63
|
-
when value.is_a?(Array) then value.map{|v| translate_value(v, rule) }
|
64
|
-
when rule[:type] == :hash then translate_hash(value, rule)
|
65
|
-
when rule[:type] == :map then translate_map(value, rule)
|
66
|
-
when rule[:type] == :blob then Base64.decode64(value)
|
67
|
-
when rule[:type] == :time then Time.at(value)
|
68
|
-
when rule[:type] == :big_decimal then BigDecimal.new(value)
|
69
|
-
else value
|
70
|
-
end
|
71
|
-
end
|
72
|
-
|
73
|
-
end
|
74
|
-
|
75
|
-
end
|
76
|
-
end
|
@@ -1,35 +0,0 @@
|
|
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
|
-
module Core
|
16
|
-
|
17
|
-
# @api private
|
18
|
-
class JSONRequestBuilder
|
19
|
-
|
20
|
-
def initialize api, operation
|
21
|
-
@x_amz_target = api[:target_prefix] + operation[:name]
|
22
|
-
@content_type = "application/x-amz-json-#{api[:json_version] || 1.0}"
|
23
|
-
@grammar = OptionGrammar.customize(operation[:inputs])
|
24
|
-
end
|
25
|
-
|
26
|
-
def populate_request request, options
|
27
|
-
request.headers["content-type"] = @content_type
|
28
|
-
request.headers["x-amz-target"] = @x_amz_target
|
29
|
-
request.body = @grammar.to_json(options)
|
30
|
-
end
|
31
|
-
|
32
|
-
end
|
33
|
-
|
34
|
-
end
|
35
|
-
end
|
@@ -1,79 +0,0 @@
|
|
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 'json'
|
15
|
-
require 'time'
|
16
|
-
require 'bigdecimal'
|
17
|
-
require 'base64'
|
18
|
-
|
19
|
-
module AWS
|
20
|
-
module Core
|
21
|
-
|
22
|
-
# @api private
|
23
|
-
class JSONResponseParser
|
24
|
-
|
25
|
-
def initialize rules
|
26
|
-
@rules = rules
|
27
|
-
end
|
28
|
-
|
29
|
-
def extract_data response
|
30
|
-
body = response.http_response.body
|
31
|
-
body = "{}" if [nil, ''].include?(body)
|
32
|
-
translate(JSON.load(body))
|
33
|
-
end
|
34
|
-
|
35
|
-
def simulate
|
36
|
-
{}
|
37
|
-
end
|
38
|
-
|
39
|
-
protected
|
40
|
-
|
41
|
-
# @param [Hash] values
|
42
|
-
# @param [Hash] rules
|
43
|
-
# @return [Hash]
|
44
|
-
def translate values, rules = @rules
|
45
|
-
rules.inject({}) do |data,(key,rule)|
|
46
|
-
if values.key?(key)
|
47
|
-
data.merge(rule[:sym] || key => translate_value(values[key], rule))
|
48
|
-
else
|
49
|
-
data
|
50
|
-
end
|
51
|
-
end
|
52
|
-
end
|
53
|
-
|
54
|
-
def translate_hash values, rules
|
55
|
-
translate(values, rules[:members])
|
56
|
-
end
|
57
|
-
|
58
|
-
def translate_map values, rules
|
59
|
-
values.inject({}) do |data,(key,value)|
|
60
|
-
data.merge(key => translate_value(value, rules[:members]))
|
61
|
-
end
|
62
|
-
end
|
63
|
-
|
64
|
-
def translate_value value, rule
|
65
|
-
case
|
66
|
-
when value.is_a?(Array) then value.map{|v| translate_value(v, rule) }
|
67
|
-
when rule[:type] == :hash then translate_hash(value, rule)
|
68
|
-
when rule[:type] == :map then translate_map(value, rule)
|
69
|
-
when rule[:type] == :blob then Base64.decode64(value)
|
70
|
-
when rule[:type] == :time then Time.at(value)
|
71
|
-
when rule[:type] == :big_decimal then BigDecimal.new(value)
|
72
|
-
else value
|
73
|
-
end
|
74
|
-
end
|
75
|
-
|
76
|
-
end
|
77
|
-
|
78
|
-
end
|
79
|
-
end
|
@@ -1,90 +0,0 @@
|
|
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 'thread'
|
15
|
-
|
16
|
-
module AWS
|
17
|
-
module Core
|
18
|
-
|
19
|
-
# Provides lazy creation of error classes via {#const_missing}.
|
20
|
-
#
|
21
|
-
# Extend this module provides 3 benefits to another module:
|
22
|
-
#
|
23
|
-
# * A method that accepts strings and returns error classes.
|
24
|
-
# * Thread-safe dynamic error class creation via {#const_missing}
|
25
|
-
# * An error grammar for parsing AWS xml errors
|
26
|
-
#
|
27
|
-
# Here is an example of how it works:
|
28
|
-
#
|
29
|
-
# Class Foo
|
30
|
-
# module Errors
|
31
|
-
# extend AWS::Core::LazyErrorClasses
|
32
|
-
# end
|
33
|
-
# end
|
34
|
-
#
|
35
|
-
# Foo::Errors.error_class('NoSuchKey')
|
36
|
-
# #=> Foo::Errors::NoSuckKey
|
37
|
-
#
|
38
|
-
# Foo::Errors.error_class('Nested.Error.Klasses')
|
39
|
-
# #=> Foo::Errors::Nested::Error::Klasses
|
40
|
-
#
|
41
|
-
# The errors returned from {#error_class} are subclasses
|
42
|
-
# of {AWS::Errors::Base}.
|
43
|
-
#
|
44
|
-
module LazyErrorClasses
|
45
|
-
|
46
|
-
# This grammar parses the defualt AWS XML error format
|
47
|
-
BASE_ERROR_GRAMMAR = XML::Grammar.customize do
|
48
|
-
element("Error") do
|
49
|
-
ignore
|
50
|
-
end
|
51
|
-
end
|
52
|
-
|
53
|
-
# @api private
|
54
|
-
def self.extended base
|
55
|
-
|
56
|
-
unless base.const_defined?(:GRAMMAR)
|
57
|
-
base.const_set(:GRAMMAR, BASE_ERROR_GRAMMAR)
|
58
|
-
end
|
59
|
-
|
60
|
-
mutex = Mutex.new
|
61
|
-
MetaUtils.extend_method(base, :const_missing_mutex) { mutex }
|
62
|
-
|
63
|
-
end
|
64
|
-
|
65
|
-
# Defines a new error class.
|
66
|
-
# @param [String,Symbol] constant
|
67
|
-
# @return [nil]
|
68
|
-
def const_missing constant
|
69
|
-
const_missing_mutex.synchronize do
|
70
|
-
const_set(constant, Class.new(Errors::Base) { extend LazyErrorClasses })
|
71
|
-
end
|
72
|
-
end
|
73
|
-
|
74
|
-
# Converts the error code into an error class constant.
|
75
|
-
#
|
76
|
-
# AWS::EC2::Errors.error_class('Non.Existent.Error')
|
77
|
-
# #=> AWS::EC2::Errors::Non::Existent::Error
|
78
|
-
#
|
79
|
-
# @param [String] code An AWS error code.
|
80
|
-
#
|
81
|
-
# @return [Class] Returns the error class defiend by the error code.
|
82
|
-
#
|
83
|
-
def error_class code
|
84
|
-
module_eval("#{self}::#{code.gsub('.Range','Range').gsub(".","::")}")
|
85
|
-
end
|
86
|
-
|
87
|
-
end
|
88
|
-
|
89
|
-
end
|
90
|
-
end
|
@@ -1,428 +0,0 @@
|
|
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 'pathname'
|
15
|
-
|
16
|
-
module AWS
|
17
|
-
module Core
|
18
|
-
|
19
|
-
# # Log Formatters
|
20
|
-
#
|
21
|
-
# Log formatters receive a {AWS::Core::Response} object and return
|
22
|
-
# a log message. When you construct a {LogFormatter}, you provide
|
23
|
-
# a pattern string with substitutions.
|
24
|
-
#
|
25
|
-
# pattern = '[REQUEST :http_status_code] :service :operation :duration'
|
26
|
-
# formatter = AWS::Core::LogFormatter.new(pattern)
|
27
|
-
# formatter.format(response)
|
28
|
-
# #=> '[AWS 200] EC2 get_bucket 0.0352'
|
29
|
-
#
|
30
|
-
# # AWS Configuration
|
31
|
-
#
|
32
|
-
# AWS.config provides a {LogFormatter.default} log formatter. You can
|
33
|
-
# repace this formatter by building your own and then passing it
|
34
|
-
# to {AWS.config}.
|
35
|
-
#
|
36
|
-
# pattern = '[REQUEST :http_status_code] :service :operation :duration'
|
37
|
-
# AWS.config(:log_formatter => AWS::Core::LogFormatter.new(pattern)
|
38
|
-
#
|
39
|
-
# ## Canned Formatters
|
40
|
-
#
|
41
|
-
# Instead of providing your own pattern, you can choose a canned log
|
42
|
-
# formatter.
|
43
|
-
#
|
44
|
-
# AWS.config(:log_formatter => AWS::Core::LogFormatter.colored)
|
45
|
-
#
|
46
|
-
# Here is the list of canned formatters.
|
47
|
-
#
|
48
|
-
# * {LogFormatter.default}
|
49
|
-
# * {LogFormatter.short}
|
50
|
-
# * {LogFormatter.debug}
|
51
|
-
# * {LogFormatter.colored}
|
52
|
-
#
|
53
|
-
# # Pattern Substitutions
|
54
|
-
#
|
55
|
-
# You can put any of these placeholders into you pattern.
|
56
|
-
#
|
57
|
-
# * `:service` - The AWS service name (e.g. 'S3', 'EC2', 'SimpleDB', etc)
|
58
|
-
# * `:region` - The AWS region name (e.g. 'us-west-1', 'us-west-2', etc)
|
59
|
-
# * `:operation` - The name of the client request method. This maps to
|
60
|
-
# the name of the serivce API operation (e.g. :describe_instances).
|
61
|
-
# * `:options` - The hash of options passed to the client request method.
|
62
|
-
# Long strings are truncated/summarized if they excede the log
|
63
|
-
# formatters {#max_string_size}. Other objects are inspected.
|
64
|
-
# * `:retry_count` - The number of times a client request was retried.
|
65
|
-
# Throttlings and service errors trigger the automatic retry logic.
|
66
|
-
# This value indicates how many extra attempts were made before
|
67
|
-
# getting a successful response or giving up.
|
68
|
-
# * `:duration` - The time it took to generate a response, expressed
|
69
|
-
# in decimal seconds. This time includes everything from
|
70
|
-
# calling the client request method, until that method returns
|
71
|
-
# a value (event retries and retry delays).
|
72
|
-
# * `:error_class` - The class name of the error returned by the
|
73
|
-
# service. If no error was returned, this will be replcaed by
|
74
|
-
# an empty string.
|
75
|
-
# * `:error_message` - The message of the error returned. If
|
76
|
-
# no error was returned by the service, this will be an empty
|
77
|
-
# string.
|
78
|
-
# * `:http_request_method` - The HTTP request verb (e.g. 'POST',
|
79
|
-
# 'PUT', 'GET', etc).
|
80
|
-
# * `:http_request_protocol` - This is replaced by 'http' or 'https'.
|
81
|
-
# * `:http_request_host` - The host name of the http request
|
82
|
-
# endpoint (e.g. 's3.amazon.com').
|
83
|
-
# * `:http_request_port` - The port number (e.g. '443' or '80').
|
84
|
-
# * `:http_request_uri` - The http request uri folling the host (e.g.
|
85
|
-
# '/bucket_name/objects/key?versions').
|
86
|
-
# * `:http_request_body` - The http request payload.
|
87
|
-
# * `:http_request_headers` - The http request headers, inspected.
|
88
|
-
# * `:http_request_proxy_uri` - The proxy uri used, or an empty string.
|
89
|
-
# * `:http_response_status` - The http response status
|
90
|
-
# code (e.g. '200', '404', '500', etc).
|
91
|
-
# * `:http_response_headers` - The http response headers, inspected.
|
92
|
-
# * `:http_response_body` - The http response body contents.
|
93
|
-
#
|
94
|
-
class LogFormatter
|
95
|
-
|
96
|
-
# @param [String] pattern The log format pattern should be a string
|
97
|
-
# and may contain any of the following placeholders:
|
98
|
-
#
|
99
|
-
# * `:service`
|
100
|
-
# * `:region`
|
101
|
-
# * `:operation`
|
102
|
-
# * `:options`
|
103
|
-
# * `:retry_count`
|
104
|
-
# * `:duration`
|
105
|
-
# * `:error_class`
|
106
|
-
# * `:error_message`
|
107
|
-
# * `:http_request_method`
|
108
|
-
# * `:http_request_protocol`
|
109
|
-
# * `:http_request_host`
|
110
|
-
# * `:http_request_port`
|
111
|
-
# * `:http_request_uri`
|
112
|
-
# * `:http_request_body`
|
113
|
-
# * `:http_request_headers`
|
114
|
-
# * `:http_request_proxy_uri`
|
115
|
-
# * `:http_response_status`
|
116
|
-
# * `:http_response_headers`
|
117
|
-
# * `:http_response_body`
|
118
|
-
#
|
119
|
-
# @param [Hash] options
|
120
|
-
#
|
121
|
-
# @option options [Integer] :max_string_size (1000)
|
122
|
-
#
|
123
|
-
def initialize pattern, options = {}
|
124
|
-
@pattern = pattern
|
125
|
-
@max_string_size = options[:max_string_size] || 1000
|
126
|
-
end
|
127
|
-
|
128
|
-
# @return [String]
|
129
|
-
attr_reader :pattern
|
130
|
-
|
131
|
-
# @return [Integer]
|
132
|
-
attr_reader :max_string_size
|
133
|
-
|
134
|
-
# @param [Response] response
|
135
|
-
# @return [String]
|
136
|
-
def format response
|
137
|
-
pattern.gsub(/:(\w+)/) {|sym| send("_#{sym[1..-1]}", response) }
|
138
|
-
end
|
139
|
-
|
140
|
-
# @api private
|
141
|
-
def eql? other
|
142
|
-
other.is_a?(self.class) and other.pattern == self.pattern
|
143
|
-
end
|
144
|
-
alias_method :==, :eql?
|
145
|
-
|
146
|
-
protected
|
147
|
-
|
148
|
-
def method_missing method_name, *args
|
149
|
-
if method_name.to_s.chars.first == '_'
|
150
|
-
":#{method_name.to_s[1..-1]}"
|
151
|
-
else
|
152
|
-
super
|
153
|
-
end
|
154
|
-
end
|
155
|
-
|
156
|
-
def _service response
|
157
|
-
response.http_request.class.name.split('::')[1]
|
158
|
-
end
|
159
|
-
|
160
|
-
def _region response
|
161
|
-
response.http_request.region
|
162
|
-
end
|
163
|
-
|
164
|
-
def _operation response
|
165
|
-
response.request_type
|
166
|
-
end
|
167
|
-
|
168
|
-
def _options response
|
169
|
-
summarize_hash(response.request_options) if response.request_options
|
170
|
-
end
|
171
|
-
|
172
|
-
def _retry_count response
|
173
|
-
response.retry_count
|
174
|
-
end
|
175
|
-
|
176
|
-
def _duration response
|
177
|
-
("%.06f" % response.duration).sub(/0+$/, '')
|
178
|
-
end
|
179
|
-
|
180
|
-
def _error_class response
|
181
|
-
response.error.class.name if response.error
|
182
|
-
end
|
183
|
-
|
184
|
-
def _error_message response
|
185
|
-
response.error.message if response.error
|
186
|
-
end
|
187
|
-
|
188
|
-
def _http_request_method response
|
189
|
-
response.http_request.http_method
|
190
|
-
end
|
191
|
-
|
192
|
-
def _http_request_protocol response
|
193
|
-
response.http_request.use_ssl? ? 'https' : 'http'
|
194
|
-
end
|
195
|
-
|
196
|
-
def _http_request_host response
|
197
|
-
response.http_request.host
|
198
|
-
end
|
199
|
-
|
200
|
-
def _http_request_port response
|
201
|
-
response.http_request.port
|
202
|
-
end
|
203
|
-
|
204
|
-
def _http_request_uri response
|
205
|
-
response.http_request.uri
|
206
|
-
end
|
207
|
-
|
208
|
-
def _http_request_headers response
|
209
|
-
response.http_request.headers.inspect
|
210
|
-
end
|
211
|
-
|
212
|
-
def _http_request_body response
|
213
|
-
response.http_request.body
|
214
|
-
end
|
215
|
-
|
216
|
-
def _http_request_proxy_uri response
|
217
|
-
response.config.proxy_uri
|
218
|
-
end
|
219
|
-
|
220
|
-
def _http_response_status response
|
221
|
-
response.http_response.status
|
222
|
-
end
|
223
|
-
|
224
|
-
def _http_response_headers response
|
225
|
-
response.http_response.headers.inspect
|
226
|
-
end
|
227
|
-
|
228
|
-
def _http_response_body response
|
229
|
-
response.http_response.body
|
230
|
-
end
|
231
|
-
|
232
|
-
# The following methods are for summarizing request options that have
|
233
|
-
# symbolized keys and a mix of values. The summarizing is important
|
234
|
-
# because large request options (e.g. s3 data) can cause memory usage
|
235
|
-
# to spike if it is inspected.
|
236
|
-
|
237
|
-
# @param [Hash] hash
|
238
|
-
# @return [String]
|
239
|
-
def summarize_hash hash
|
240
|
-
hash.map do |key,v|
|
241
|
-
"#{key.inspect}=>#{summarize_value(v)}"
|
242
|
-
end.sort.join(",")
|
243
|
-
end
|
244
|
-
|
245
|
-
# @param [Object] value
|
246
|
-
# @return [String]
|
247
|
-
def summarize_value value
|
248
|
-
case value
|
249
|
-
when String then summarize_string(value)
|
250
|
-
when Hash then '{' + summarize_hash(value) + '}'
|
251
|
-
when Array then summarize_array(value)
|
252
|
-
when File then summarize_file(value.path)
|
253
|
-
when Pathname then summarize_file(value)
|
254
|
-
else value.inspect
|
255
|
-
end
|
256
|
-
end
|
257
|
-
|
258
|
-
# @param [String] str
|
259
|
-
# @return [String]
|
260
|
-
def summarize_string str
|
261
|
-
max = max_string_size
|
262
|
-
if str.size > max
|
263
|
-
"#<String #{str[0...max].inspect} ... (#{str.size} bytes)>"
|
264
|
-
else
|
265
|
-
str.inspect
|
266
|
-
end
|
267
|
-
end
|
268
|
-
|
269
|
-
# Given the path to a file on disk, this method returns a summarized
|
270
|
-
# inspecton string that includes the file size.
|
271
|
-
# @param [String] path
|
272
|
-
# @return [String]
|
273
|
-
def summarize_file path
|
274
|
-
"#<File:#{path} (#{File.size(path)} bytes)>"
|
275
|
-
end
|
276
|
-
|
277
|
-
# @param [Array] array
|
278
|
-
# @return [String]
|
279
|
-
def summarize_array array
|
280
|
-
"[" + array.map{|v| summarize_value(v) }.join(",") + "]"
|
281
|
-
end
|
282
|
-
|
283
|
-
class << self
|
284
|
-
|
285
|
-
# The default log format.
|
286
|
-
#
|
287
|
-
# @example A sample of the default format.
|
288
|
-
#
|
289
|
-
# [AWS SimpleEmailService 200 0.580066 0 retries] list_verified_email_addresses()
|
290
|
-
#
|
291
|
-
# @return [LogFormatter]
|
292
|
-
#
|
293
|
-
def default
|
294
|
-
|
295
|
-
pattern = []
|
296
|
-
pattern << "[AWS"
|
297
|
-
pattern << ":service"
|
298
|
-
pattern << ":http_response_status"
|
299
|
-
pattern << ":duration"
|
300
|
-
pattern << ":retry_count retries]"
|
301
|
-
pattern << ":operation(:options)"
|
302
|
-
pattern << ":error_class"
|
303
|
-
pattern << ":error_message"
|
304
|
-
|
305
|
-
LogFormatter.new(pattern.join(' ') + "\n")
|
306
|
-
|
307
|
-
end
|
308
|
-
|
309
|
-
# The short log format. Similar to default, but it does not
|
310
|
-
# inspect the request params or report on retries.
|
311
|
-
#
|
312
|
-
# @example A sample of the short format
|
313
|
-
#
|
314
|
-
# [AWS SimpleEmailService 200 0.494532] list_verified_email_addresses
|
315
|
-
#
|
316
|
-
# @return [LogFormatter]
|
317
|
-
#
|
318
|
-
def short
|
319
|
-
|
320
|
-
pattern = []
|
321
|
-
pattern << "[AWS"
|
322
|
-
pattern << ":service"
|
323
|
-
pattern << ":http_response_status"
|
324
|
-
pattern << ":duration]"
|
325
|
-
pattern << ":operation"
|
326
|
-
pattern << ":error_class"
|
327
|
-
|
328
|
-
LogFormatter.new(pattern.join(' ') + "\n")
|
329
|
-
|
330
|
-
end
|
331
|
-
|
332
|
-
# A debug format that dumps most of the http request and response
|
333
|
-
# data.
|
334
|
-
#
|
335
|
-
# @example A truncated sample of the debug format.
|
336
|
-
#
|
337
|
-
# +-------------------------------------------------------------------------------
|
338
|
-
# | AWS us-east-1 SimpleEmailService list_verified_email_addresses 0.429189 0 retries
|
339
|
-
# +-------------------------------------------------------------------------------
|
340
|
-
# | REQUEST
|
341
|
-
# +-------------------------------------------------------------------------------
|
342
|
-
# | METHOD: POST
|
343
|
-
# | URL: https://email.us-east-1.amazonaws.com::443:/
|
344
|
-
# | HEADERS: {"content-type"=>"application/x-www-form-urlencoded" ...
|
345
|
-
# | BODY: Action=ListVerifiedEmailAddresses&Timestamp= ...
|
346
|
-
# +-------------------------------------------------------------------------------
|
347
|
-
# | RESPONSE
|
348
|
-
# +-------------------------------------------------------------------------------
|
349
|
-
# | STATUS: 200
|
350
|
-
# | HEADERS: {"x-amzn-requestid"=>["..."], ...
|
351
|
-
# | BODY: <ListVerifiedEmailAddressesResponse ...
|
352
|
-
#
|
353
|
-
# @return [LogFormatter]
|
354
|
-
#
|
355
|
-
def debug
|
356
|
-
|
357
|
-
sig_pattern = []
|
358
|
-
sig_pattern << ':region'
|
359
|
-
sig_pattern << ':service'
|
360
|
-
sig_pattern << ':operation'
|
361
|
-
sig_pattern << ':duration'
|
362
|
-
sig_pattern << ':retry_count retries'
|
363
|
-
|
364
|
-
uri_pattern = []
|
365
|
-
uri_pattern << ':http_request_protocol'
|
366
|
-
uri_pattern << '://'
|
367
|
-
uri_pattern << ':http_request_host'
|
368
|
-
uri_pattern << '::'
|
369
|
-
uri_pattern << ':http_request_port'
|
370
|
-
uri_pattern << ':'
|
371
|
-
uri_pattern << ':http_request_uri'
|
372
|
-
|
373
|
-
line = "+" + '-' * 79
|
374
|
-
|
375
|
-
pattern = []
|
376
|
-
pattern << line
|
377
|
-
pattern << "| AWS #{sig_pattern.join(' ')}"
|
378
|
-
pattern << line
|
379
|
-
pattern << "| REQUEST"
|
380
|
-
pattern << line
|
381
|
-
pattern << "| METHOD: :http_request_method"
|
382
|
-
pattern << "| URL: #{uri_pattern.join}"
|
383
|
-
pattern << "| HEADERS: :http_request_headers"
|
384
|
-
pattern << "| BODY: :http_request_body"
|
385
|
-
pattern << line
|
386
|
-
pattern << "| RESPONSE"
|
387
|
-
pattern << line
|
388
|
-
pattern << "| STATUS: :http_response_status"
|
389
|
-
pattern << "| HEADERS: :http_response_headers"
|
390
|
-
pattern << "| BODY: :http_response_body"
|
391
|
-
|
392
|
-
LogFormatter.new(pattern.join("\n") + "\n")
|
393
|
-
|
394
|
-
end
|
395
|
-
|
396
|
-
# The default log format with ANSI colors.
|
397
|
-
#
|
398
|
-
# @example A sample of the colored format (sans the ansi colors).
|
399
|
-
#
|
400
|
-
# [AWS SimpleEmailService 200 0.580066 0 retries] list_verified_email_addresses()
|
401
|
-
#
|
402
|
-
# @return [LogFormatter]
|
403
|
-
#
|
404
|
-
def colored
|
405
|
-
|
406
|
-
bold = "\x1b[1m"
|
407
|
-
color = "\x1b[34m"
|
408
|
-
reset = "\x1b[0m"
|
409
|
-
|
410
|
-
pattern = []
|
411
|
-
pattern << "#{bold}#{color}[AWS"
|
412
|
-
pattern << ":service"
|
413
|
-
pattern << ":http_response_status"
|
414
|
-
pattern << ":duration"
|
415
|
-
pattern << ":retry_count retries]#{reset}#{bold}"
|
416
|
-
pattern << ":operation(:options)"
|
417
|
-
pattern << ":error_class"
|
418
|
-
pattern << ":error_message#{reset}"
|
419
|
-
|
420
|
-
LogFormatter.new(pattern.join(' ') + "\n")
|
421
|
-
|
422
|
-
end
|
423
|
-
|
424
|
-
end
|
425
|
-
|
426
|
-
end
|
427
|
-
end
|
428
|
-
end
|