aws-sdk-core 2.4.0 → 3.53.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/VERSION +1 -0
- data/ca-bundle.crt +3615 -3541
- data/lib/aws-sdk-core.rb +96 -408
- data/lib/aws-sdk-core/async_client_stubs.rb +80 -0
- data/lib/aws-sdk-core/binary.rb +6 -0
- data/lib/aws-sdk-core/binary/decode_handler.rb +56 -0
- data/lib/aws-sdk-core/binary/encode_handler.rb +32 -0
- data/lib/aws-sdk-core/binary/event_builder.rb +122 -0
- data/lib/aws-sdk-core/binary/event_parser.rb +134 -0
- data/lib/aws-sdk-core/binary/event_stream_decoder.rb +62 -0
- data/lib/aws-sdk-core/binary/event_stream_encoder.rb +53 -0
- data/lib/aws-sdk-core/client_side_monitoring/publisher.rb +41 -0
- data/lib/aws-sdk-core/client_side_monitoring/request_metrics.rb +197 -0
- data/lib/aws-sdk-core/client_stubs.rb +73 -10
- data/lib/aws-sdk-core/credential_provider.rb +2 -0
- data/lib/aws-sdk-core/credential_provider_chain.rb +22 -5
- data/lib/aws-sdk-core/ecs_credentials.rb +3 -3
- data/lib/aws-sdk-core/endpoint_cache.rb +188 -0
- data/lib/aws-sdk-core/errors.rb +174 -10
- data/lib/aws-sdk-core/event_emitter.rb +62 -0
- data/lib/aws-sdk-core/ini_parser.rb +1 -0
- data/lib/aws-sdk-core/instance_profile_credentials.rb +21 -12
- data/lib/aws-sdk-core/json.rb +4 -5
- data/lib/aws-sdk-core/json/builder.rb +4 -2
- data/lib/aws-sdk-core/json/error_handler.rb +19 -2
- data/lib/aws-sdk-core/json/handler.rb +22 -3
- data/lib/aws-sdk-core/json/parser.rb +1 -1
- data/lib/aws-sdk-core/log/param_filter.rb +4 -3
- data/lib/aws-sdk-core/pageable_response.rb +1 -0
- data/lib/aws-sdk-core/pager.rb +30 -25
- data/lib/aws-sdk-core/param_converter.rb +3 -3
- data/lib/aws-sdk-core/param_validator.rb +56 -21
- data/lib/aws-sdk-core/plugins/api_key.rb +52 -0
- data/lib/aws-sdk-core/plugins/apig_authorizer_token.rb +30 -0
- data/lib/aws-sdk-core/plugins/apig_credentials_configuration.rb +34 -0
- data/lib/aws-sdk-core/plugins/apig_user_agent.rb +37 -0
- data/lib/aws-sdk-core/plugins/client_metrics_plugin.rb +256 -0
- data/lib/aws-sdk-core/plugins/client_metrics_send_plugin.rb +84 -0
- data/lib/aws-sdk-core/plugins/credentials_configuration.rb +62 -0
- data/lib/aws-sdk-core/plugins/endpoint_discovery.rb +160 -0
- data/lib/aws-sdk-core/plugins/endpoint_pattern.rb +63 -0
- data/lib/aws-sdk-core/plugins/event_stream_configuration.rb +30 -0
- data/lib/aws-sdk-core/plugins/global_configuration.rb +19 -10
- data/lib/aws-sdk-core/plugins/helpful_socket_errors.rb +41 -0
- data/lib/aws-sdk-core/plugins/idempotency_token.rb +36 -0
- data/lib/aws-sdk-core/plugins/invocation_id.rb +33 -0
- data/lib/aws-sdk-core/plugins/jsonvalue_converter.rb +29 -0
- data/lib/aws-sdk-core/plugins/logging.rb +18 -18
- data/lib/aws-sdk-core/plugins/param_converter.rb +9 -5
- data/lib/aws-sdk-core/plugins/param_validator.rb +8 -5
- data/lib/aws-sdk-core/plugins/protocols/api_gateway.rb +10 -0
- data/lib/aws-sdk-core/plugins/protocols/ec2.rb +2 -1
- data/lib/aws-sdk-core/plugins/protocols/json_rpc.rb +13 -12
- data/lib/aws-sdk-core/plugins/protocols/query.rb +2 -2
- data/lib/aws-sdk-core/plugins/regional_endpoint.rb +28 -16
- data/lib/aws-sdk-core/plugins/response_paging.rb +5 -18
- data/lib/aws-sdk-core/plugins/retry_errors.rb +97 -23
- data/lib/aws-sdk-core/plugins/signature_v2.rb +51 -0
- data/lib/aws-sdk-core/plugins/signature_v4.rb +141 -0
- data/lib/aws-sdk-core/plugins/stub_responses.rb +35 -18
- data/lib/aws-sdk-core/plugins/transfer_encoding.rb +53 -0
- data/lib/aws-sdk-core/plugins/user_agent.rb +23 -6
- data/lib/aws-sdk-core/process_credentials.rb +76 -0
- data/lib/aws-sdk-core/query.rb +5 -0
- data/lib/aws-sdk-core/query/ec2_param_builder.rb +9 -3
- data/lib/aws-sdk-core/query/handler.rb +20 -16
- data/lib/aws-sdk-core/query/param_builder.rb +10 -4
- data/lib/aws-sdk-core/refreshing_credentials.rb +1 -1
- data/lib/aws-sdk-core/resources/collection.rb +121 -0
- data/lib/aws-sdk-core/rest.rb +10 -0
- data/lib/aws-sdk-core/rest/handler.rb +1 -0
- data/lib/aws-sdk-core/rest/request/builder.rb +2 -1
- data/lib/aws-sdk-core/rest/request/endpoint.rb +11 -66
- data/lib/aws-sdk-core/rest/request/headers.rb +20 -1
- data/lib/aws-sdk-core/rest/request/querystring_builder.rb +103 -0
- data/lib/aws-sdk-core/rest/response/body.rb +14 -1
- data/lib/aws-sdk-core/rest/response/headers.rb +9 -0
- data/lib/aws-sdk-core/rest/response/parser.rb +18 -14
- data/lib/aws-sdk-core/shared_config.rb +132 -18
- data/lib/aws-sdk-core/shared_credentials.rb +2 -0
- data/lib/aws-sdk-core/structure.rb +21 -11
- data/lib/aws-sdk-core/stubbing/data_applicator.rb +1 -1
- data/lib/aws-sdk-core/stubbing/empty_stub.rb +10 -3
- data/lib/aws-sdk-core/stubbing/protocols/api_gateway.rb +8 -0
- data/lib/aws-sdk-core/stubbing/protocols/ec2.rb +1 -1
- data/lib/aws-sdk-core/stubbing/protocols/rest.rb +99 -1
- data/lib/aws-sdk-core/stubbing/protocols/rest_json.rb +5 -1
- data/lib/aws-sdk-core/stubbing/protocols/rest_xml.rb +9 -5
- data/lib/aws-sdk-core/stubbing/stub_data.rb +16 -3
- data/lib/aws-sdk-core/util.rb +66 -0
- data/lib/aws-sdk-core/waiters.rb +3 -0
- data/lib/aws-sdk-core/waiters/poller.rb +5 -7
- data/lib/aws-sdk-core/waiters/waiter.rb +1 -0
- data/lib/aws-sdk-core/xml.rb +9 -0
- data/lib/aws-sdk-core/xml/builder.rb +11 -5
- data/lib/aws-sdk-core/xml/error_handler.rb +27 -5
- data/lib/aws-sdk-core/xml/parser.rb +1 -11
- data/lib/aws-sdk-core/xml/parser/engines/ox.rb +5 -1
- data/lib/aws-sdk-core/xml/parser/frame.rb +6 -6
- data/lib/aws-sdk-sts.rb +45 -0
- data/lib/aws-sdk-sts/client.rb +1761 -0
- data/lib/aws-sdk-sts/client_api.rb +304 -0
- data/lib/aws-sdk-sts/customizations.rb +0 -0
- data/lib/aws-sdk-sts/errors.rb +142 -0
- data/lib/aws-sdk-sts/resource.rb +23 -0
- data/lib/aws-sdk-sts/types.rb +1279 -0
- data/lib/seahorse.rb +60 -60
- data/lib/seahorse/client/async_base.rb +50 -0
- data/lib/seahorse/client/async_response.rb +62 -0
- data/lib/seahorse/client/base.rb +2 -8
- data/lib/seahorse/client/configuration.rb +9 -1
- data/lib/seahorse/client/h2/connection.rb +244 -0
- data/lib/seahorse/client/h2/handler.rb +151 -0
- data/lib/seahorse/client/http/async_response.rb +42 -0
- data/lib/seahorse/client/http/response.rb +10 -5
- data/lib/seahorse/client/logging/formatter.rb +5 -1
- data/lib/seahorse/client/logging/handler.rb +2 -0
- data/lib/seahorse/client/net_http/connection_pool.rb +27 -11
- data/lib/seahorse/client/net_http/handler.rb +10 -2
- data/lib/seahorse/client/net_http/patches.rb +9 -1
- data/lib/seahorse/client/networking_error.rb +28 -0
- data/lib/seahorse/client/plugin.rb +66 -6
- data/lib/seahorse/client/plugin_list.rb +3 -1
- data/lib/seahorse/client/plugins/content_length.rb +7 -2
- data/lib/seahorse/client/plugins/endpoint.rb +14 -10
- data/lib/seahorse/client/plugins/h2.rb +64 -0
- data/lib/seahorse/client/plugins/logging.rb +17 -19
- data/lib/seahorse/client/plugins/net_http.rb +23 -15
- data/lib/seahorse/client/plugins/raise_response_errors.rb +4 -4
- data/lib/seahorse/client/plugins/response_target.rb +10 -1
- data/lib/seahorse/client/request_context.rb +5 -0
- data/lib/seahorse/client/response.rb +9 -20
- data/lib/seahorse/model/api.rb +37 -0
- data/lib/seahorse/model/authorizer.rb +21 -0
- data/lib/seahorse/model/operation.rb +20 -0
- data/lib/seahorse/model/shapes.rb +44 -2
- data/lib/seahorse/util.rb +1 -21
- metadata +112 -359
- data/apis/acm/2015-12-08/api-2.json +0 -495
- data/apis/acm/2015-12-08/examples-1.json +0 -5
- data/apis/acm/2015-12-08/paginators-1.json +0 -10
- data/apis/apigateway/2015-07-09/api-2.json +0 -3347
- data/apis/apigateway/2015-07-09/examples-1.json +0 -5
- data/apis/apigateway/2015-07-09/paginators-1.json +0 -52
- data/apis/application-autoscaling/2016-02-06/api-2.json +0 -502
- data/apis/application-autoscaling/2016-02-06/examples-1.json +0 -5
- data/apis/application-autoscaling/2016-02-06/paginators-1.json +0 -22
- data/apis/autoscaling/2011-01-01/api-2.json +0 -2038
- data/apis/autoscaling/2011-01-01/examples-1.json +0 -5
- data/apis/autoscaling/2011-01-01/paginators-1.json +0 -52
- data/apis/autoscaling/2011-01-01/resources-1.json +0 -1613
- data/apis/autoscaling/2011-01-01/waiters-2.json +0 -62
- data/apis/cloudformation/2010-05-15/api-2.json +0 -1299
- data/apis/cloudformation/2010-05-15/examples-1.json +0 -5
- data/apis/cloudformation/2010-05-15/paginators-1.json +0 -27
- data/apis/cloudformation/2010-05-15/resources-1.json +0 -202
- data/apis/cloudformation/2010-05-15/waiters-2.json +0 -235
- data/apis/cloudfront/2016-01-28/api-2.json +0 -2218
- data/apis/cloudfront/2016-01-28/examples-1.json +0 -5
- data/apis/cloudfront/2016-01-28/paginators-1.json +0 -32
- data/apis/cloudfront/2016-01-28/waiters-2.json +0 -47
- data/apis/cloudhsm/2014-05-30/api-2.json +0 -877
- data/apis/cloudhsm/2014-05-30/examples-1.json +0 -5
- data/apis/cloudsearch/2013-01-01/api-2.json +0 -2001
- data/apis/cloudsearch/2013-01-01/paginators-1.json +0 -20
- data/apis/cloudsearchdomain/2013-01-01/api-2.json +0 -373
- data/apis/cloudsearchdomain/2013-01-01/examples-1.json +0 -5
- data/apis/cloudtrail/2013-11-01/api-2.json +0 -801
- data/apis/cloudtrail/2013-11-01/examples-1.json +0 -5
- data/apis/cloudtrail/2013-11-01/paginators-1.json +0 -7
- data/apis/codecommit/2015-04-13/api-2.json +0 -916
- data/apis/codecommit/2015-04-13/examples-1.json +0 -5
- data/apis/codecommit/2015-04-13/paginators-1.json +0 -14
- data/apis/codedeploy/2014-10-06/api-2.json +0 -1954
- data/apis/codedeploy/2014-10-06/examples-1.json +0 -5
- data/apis/codedeploy/2014-10-06/paginators-1.json +0 -34
- data/apis/codepipeline/2015-07-09/api-2.json +0 -1633
- data/apis/codepipeline/2015-07-09/examples-1.json +0 -902
- data/apis/cognito-identity/2014-06-30/api-2.json +0 -859
- data/apis/cognito-identity/2014-06-30/examples-1.json +0 -5
- data/apis/cognito-idp/2016-04-18/api-2.json +0 -1657
- data/apis/cognito-idp/2016-04-18/examples-1.json +0 -5
- data/apis/cognito-sync/2014-06-30/api-2.json +0 -1874
- data/apis/config/2014-11-12/api-2.json +0 -1303
- data/apis/config/2014-11-12/examples-1.json +0 -5
- data/apis/config/2014-11-12/paginators-1.json +0 -10
- data/apis/datapipeline/2012-10-29/api-2.json +0 -1167
- data/apis/datapipeline/2012-10-29/paginators-1.json +0 -26
- data/apis/devicefarm/2015-06-23/api-2.json +0 -2030
- data/apis/devicefarm/2015-06-23/examples-1.json +0 -5
- data/apis/devicefarm/2015-06-23/paginators-1.json +0 -74
- data/apis/directconnect/2012-10-25/api-2.json +0 -793
- data/apis/directconnect/2012-10-25/examples-1.json +0 -5
- data/apis/directconnect/2012-10-25/paginators-1.json +0 -22
- data/apis/discovery/2015-11-01/api-2.json +0 -556
- data/apis/discovery/2015-11-01/examples-1.json +0 -5
- data/apis/dms/2016-01-01/api-2.json +0 -1469
- data/apis/dms/2016-01-01/examples-1.json +0 -5
- data/apis/ds/2015-04-16/api-2.json +0 -1674
- data/apis/ds/2015-04-16/examples-1.json +0 -5
- data/apis/dynamodb/2012-08-10/api-2.json +0 -1200
- data/apis/dynamodb/2012-08-10/examples-1.json +0 -5
- data/apis/dynamodb/2012-08-10/paginators-1.json +0 -26
- data/apis/dynamodb/2012-08-10/resources-1.json +0 -136
- data/apis/dynamodb/2012-08-10/waiters-2.json +0 -35
- data/apis/ec2/2015-10-01/api-2.json +0 -13759
- data/apis/ec2/2015-10-01/examples-1.json +0 -5
- data/apis/ec2/2015-10-01/paginators-1.json +0 -138
- data/apis/ec2/2015-10-01/resources-1.json +0 -2582
- data/apis/ec2/2015-10-01/waiters-2.json +0 -593
- data/apis/ec2/2016-04-01/api-2.json +0 -13842
- data/apis/ec2/2016-04-01/examples-1.json +0 -5
- data/apis/ec2/2016-04-01/paginators-1.json +0 -138
- data/apis/ec2/2016-04-01/resources-1.json +0 -2582
- data/apis/ec2/2016-04-01/waiters-2.json +0 -593
- data/apis/ecr/2015-09-21/api-2.json +0 -849
- data/apis/ecr/2015-09-21/examples-1.json +0 -5
- data/apis/ecs/2014-11-13/api-2.json +0 -1396
- data/apis/ecs/2014-11-13/examples-1.json +0 -5
- data/apis/ecs/2014-11-13/paginators-1.json +0 -40
- data/apis/ecs/2014-11-13/waiters-2.json +0 -93
- data/apis/elasticache/2015-02-02/api-2.json +0 -2426
- data/apis/elasticache/2015-02-02/examples-1.json +0 -5
- data/apis/elasticache/2015-02-02/paginators-1.json +0 -76
- data/apis/elasticache/2015-02-02/waiters-2.json +0 -143
- data/apis/elasticbeanstalk/2010-12-01/api-2.json +0 -1894
- data/apis/elasticbeanstalk/2010-12-01/examples-1.json +0 -1109
- data/apis/elasticbeanstalk/2010-12-01/paginators-1.json +0 -25
- data/apis/elasticfilesystem/2015-02-01/api-2.json +0 -713
- data/apis/elasticfilesystem/2015-02-01/examples-1.json +0 -5
- data/apis/elasticloadbalancing/2012-06-01/api-2.json +0 -2145
- data/apis/elasticloadbalancing/2012-06-01/paginators-1.json +0 -18
- data/apis/elasticloadbalancing/2012-06-01/waiters-2.json +0 -49
- data/apis/elasticmapreduce/2009-03-31/api-2.json +0 -1341
- data/apis/elasticmapreduce/2009-03-31/examples-1.json +0 -5
- data/apis/elasticmapreduce/2009-03-31/paginators-1.json +0 -32
- data/apis/elasticmapreduce/2009-03-31/waiters-2.json +0 -67
- data/apis/elastictranscoder/2012-09-25/api-2.json +0 -1807
- data/apis/elastictranscoder/2012-09-25/paginators-1.json +0 -24
- data/apis/elastictranscoder/2012-09-25/waiters-2.json +0 -30
- data/apis/email/2010-12-01/api-2.json +0 -1791
- data/apis/email/2010-12-01/examples-1.json +0 -5
- data/apis/email/2010-12-01/paginators-1.json +0 -13
- data/apis/email/2010-12-01/waiters-2.json +0 -18
- data/apis/es/2015-01-01/api-2.json +0 -764
- data/apis/events/2015-10-07/api-2.json +0 -643
- data/apis/events/2015-10-07/examples-1.json +0 -5
- data/apis/firehose/2015-08-04/api-2.json +0 -719
- data/apis/gamelift/2015-10-01/api-2.json +0 -2307
- data/apis/gamelift/2015-10-01/examples-1.json +0 -5
- data/apis/glacier/2012-06-01/api-2.json +0 -2144
- data/apis/glacier/2012-06-01/paginators-1.json +0 -28
- data/apis/glacier/2012-06-01/resources-1.json +0 -563
- data/apis/glacier/2012-06-01/waiters-2.json +0 -39
- data/apis/iam/2010-05-08/api-2.json +0 -4514
- data/apis/iam/2010-05-08/examples-1.json +0 -5
- data/apis/iam/2010-05-08/paginators-1.json +0 -198
- data/apis/iam/2010-05-08/resources-1.json +0 -1740
- data/apis/iam/2010-05-08/waiters-2.json +0 -39
- data/apis/importexport/2010-06-01/api-2.json +0 -666
- data/apis/importexport/2010-06-01/paginators-1.json +0 -11
- data/apis/inspector/2016-02-16/api-2.json +0 -1964
- data/apis/inspector/2016-02-16/examples-1.json +0 -5
- data/apis/iot-data/2015-05-28/api-2.json +0 -263
- data/apis/iot/2015-05-28/api-2.json +0 -3800
- data/apis/iot/2015-05-28/examples-1.json +0 -5
- data/apis/kinesis/2013-12-02/api-2.json +0 -822
- data/apis/kinesis/2013-12-02/examples-1.json +0 -5
- data/apis/kinesis/2013-12-02/paginators-1.json +0 -18
- data/apis/kinesis/2013-12-02/waiters-2.json +0 -18
- data/apis/kms/2014-11-01/api-2.json +0 -1209
- data/apis/kms/2014-11-01/examples-1.json +0 -5
- data/apis/kms/2014-11-01/paginators-1.json +0 -32
- data/apis/lambda/2014-11-11/api-2.json +0 -667
- data/apis/lambda/2014-11-11/paginators-1.json +0 -16
- data/apis/lambda/2015-03-31/api-2.json +0 -1342
- data/apis/lambda/2015-03-31/examples-1.json +0 -5
- data/apis/lambda/2015-03-31/paginators-1.json +0 -16
- data/apis/logs/2014-03-28/api-2.json +0 -1138
- data/apis/logs/2014-03-28/examples-1.json +0 -5
- data/apis/logs/2014-03-28/paginators-1.json +0 -49
- data/apis/machinelearning/2014-12-12/api-2.json +0 -1947
- data/apis/machinelearning/2014-12-12/paginators-1.json +0 -28
- data/apis/machinelearning/2014-12-12/waiters-2.json +0 -81
- data/apis/marketplacecommerceanalytics/2015-07-01/api-2.json +0 -120
- data/apis/marketplacecommerceanalytics/2015-07-01/examples-1.json +0 -5
- data/apis/meteringmarketplace/2016-01-14/api-2.json +0 -127
- data/apis/meteringmarketplace/2016-01-14/examples-1.json +0 -5
- data/apis/monitoring/2010-08-01/api-2.json +0 -790
- data/apis/monitoring/2010-08-01/examples-1.json +0 -5
- data/apis/monitoring/2010-08-01/paginators-1.json +0 -24
- data/apis/monitoring/2010-08-01/resources-1.json +0 -346
- data/apis/monitoring/2010-08-01/waiters-2.json +0 -18
- data/apis/opsworks/2013-02-18/api-2.json +0 -2606
- data/apis/opsworks/2013-02-18/examples-1.json +0 -5
- data/apis/opsworks/2013-02-18/paginators-1.json +0 -55
- data/apis/opsworks/2013-02-18/resources-1.json +0 -173
- data/apis/opsworks/2013-02-18/waiters-2.json +0 -295
- data/apis/rds/2014-10-31/api-2.json +0 -4757
- data/apis/rds/2014-10-31/examples-1.json +0 -5
- data/apis/rds/2014-10-31/paginators-1.json +0 -110
- data/apis/rds/2014-10-31/resources-1.json +0 -3272
- data/apis/rds/2014-10-31/waiters-2.json +0 -102
- data/apis/redshift/2012-12-01/api-2.json +0 -3768
- data/apis/redshift/2012-12-01/examples-1.json +0 -5
- data/apis/redshift/2012-12-01/paginators-1.json +0 -94
- data/apis/redshift/2012-12-01/waiters-2.json +0 -97
- data/apis/route53/2013-04-01/api-2.json +0 -3245
- data/apis/route53/2013-04-01/examples-1.json +0 -5
- data/apis/route53/2013-04-01/paginators-1.json +0 -33
- data/apis/route53/2013-04-01/waiters-2.json +0 -18
- data/apis/route53domains/2014-05-15/api-2.json +0 -1197
- data/apis/route53domains/2014-05-15/paginators-1.json +0 -17
- data/apis/s3/2006-03-01/api-2.json +0 -4517
- data/apis/s3/2006-03-01/examples-1.json +0 -5
- data/apis/s3/2006-03-01/paginators-1.json +0 -66
- data/apis/s3/2006-03-01/resources-1.json +0 -1176
- data/apis/s3/2006-03-01/waiters-2.json +0 -73
- data/apis/sdb/2009-04-15/api-2.json +0 -954
- data/apis/sdb/2009-04-15/paginators-1.json +0 -15
- data/apis/servicecatalog/2015-12-10/api-2.json +0 -749
- data/apis/servicecatalog/2015-12-10/examples-1.json +0 -5
- data/apis/sns/2010-03-31/api-2.json +0 -1139
- data/apis/sns/2010-03-31/paginators-1.json +0 -29
- data/apis/sns/2010-03-31/resources-1.json +0 -327
- data/apis/sqs/2012-11-05/api-2.json +0 -950
- data/apis/sqs/2012-11-05/examples-1.json +0 -44
- data/apis/sqs/2012-11-05/paginators-1.json +0 -7
- data/apis/ssm/2014-11-06/api-2.json +0 -1796
- data/apis/ssm/2014-11-06/examples-1.json +0 -5
- data/apis/ssm/2014-11-06/paginators-1.json +0 -34
- data/apis/storagegateway/2013-06-30/api-2.json +0 -2275
- data/apis/storagegateway/2013-06-30/examples-1.json +0 -5
- data/apis/storagegateway/2013-06-30/paginators-1.json +0 -52
- data/apis/streams.dynamodb/2012-08-10/api-2.json +0 -397
- data/apis/streams.dynamodb/2012-08-10/examples-1.json +0 -5
- data/apis/sts/2011-06-15/api-2.json +0 -521
- data/apis/sts/2011-06-15/examples-1.json +0 -5
- data/apis/support/2013-04-15/api-2.json +0 -869
- data/apis/support/2013-04-15/paginators-1.json +0 -25
- data/apis/swf/2012-01-25/api-2.json +0 -2838
- data/apis/swf/2012-01-25/paginators-1.json +0 -46
- data/apis/waf/2015-08-24/api-2.json +0 -1959
- data/apis/waf/2015-08-24/examples-1.json +0 -5
- data/apis/workspaces/2015-04-08/api-2.json +0 -632
- data/apis/workspaces/2015-04-08/examples-1.json +0 -5
- data/apis/workspaces/2015-04-08/paginators-1.json +0 -20
- data/bin/aws.rb +0 -180
- data/endpoints.json +0 -1460
- data/lib/aws-sdk-core/acm.rb +0 -6
- data/lib/aws-sdk-core/api/builder.rb +0 -106
- data/lib/aws-sdk-core/api/customizations.rb +0 -217
- data/lib/aws-sdk-core/api/docs/builder.rb +0 -220
- data/lib/aws-sdk-core/api/docs/client_type_documenter.rb +0 -109
- data/lib/aws-sdk-core/api/docs/docstring_provider.rb +0 -75
- data/lib/aws-sdk-core/api/docs/operation_documenter.rb +0 -138
- data/lib/aws-sdk-core/api/docs/param_formatter.rb +0 -163
- data/lib/aws-sdk-core/api/docs/request_syntax_example.rb +0 -22
- data/lib/aws-sdk-core/api/docs/response_structure_example.rb +0 -91
- data/lib/aws-sdk-core/api/docs/shared_example.rb +0 -100
- data/lib/aws-sdk-core/api/docs/utils.rb +0 -133
- data/lib/aws-sdk-core/api/shape_map.rb +0 -142
- data/lib/aws-sdk-core/apigateway.rb +0 -6
- data/lib/aws-sdk-core/applicationautoscaling.rb +0 -6
- data/lib/aws-sdk-core/applicationdiscoveryservice.rb +0 -5
- data/lib/aws-sdk-core/autoscaling.rb +0 -8
- data/lib/aws-sdk-core/checksums.rb +0 -51
- data/lib/aws-sdk-core/client.rb +0 -57
- data/lib/aws-sdk-core/client_waiters.rb +0 -120
- data/lib/aws-sdk-core/cloudformation.rb +0 -8
- data/lib/aws-sdk-core/cloudfront.rb +0 -15
- data/lib/aws-sdk-core/cloudfront/url_signer.rb +0 -167
- data/lib/aws-sdk-core/cloudhsm.rb +0 -5
- data/lib/aws-sdk-core/cloudsearch.rb +0 -5
- data/lib/aws-sdk-core/cloudsearchdomain.rb +0 -5
- data/lib/aws-sdk-core/cloudtrail.rb +0 -6
- data/lib/aws-sdk-core/cloudwatch.rb +0 -8
- data/lib/aws-sdk-core/cloudwatchevents.rb +0 -5
- data/lib/aws-sdk-core/cloudwatchlogs.rb +0 -6
- data/lib/aws-sdk-core/codecommit.rb +0 -6
- data/lib/aws-sdk-core/codedeploy.rb +0 -6
- data/lib/aws-sdk-core/codepipeline.rb +0 -5
- data/lib/aws-sdk-core/cognitoidentity.rb +0 -5
- data/lib/aws-sdk-core/cognitoidentityprovider.rb +0 -5
- data/lib/aws-sdk-core/cognitosync.rb +0 -4
- data/lib/aws-sdk-core/configservice.rb +0 -6
- data/lib/aws-sdk-core/databasemigrationservice.rb +0 -5
- data/lib/aws-sdk-core/datapipeline.rb +0 -5
- data/lib/aws-sdk-core/devicefarm.rb +0 -6
- data/lib/aws-sdk-core/directconnect.rb +0 -6
- data/lib/aws-sdk-core/directoryservice.rb +0 -5
- data/lib/aws-sdk-core/dynamodb.rb +0 -40
- data/lib/aws-sdk-core/dynamodb/attribute_value.rb +0 -108
- data/lib/aws-sdk-core/dynamodbstreams.rb +0 -5
- data/lib/aws-sdk-core/ec2.rb +0 -8
- data/lib/aws-sdk-core/ecr.rb +0 -5
- data/lib/aws-sdk-core/ecs.rb +0 -7
- data/lib/aws-sdk-core/efs.rb +0 -5
- data/lib/aws-sdk-core/elasticache.rb +0 -7
- data/lib/aws-sdk-core/elasticbeanstalk.rb +0 -6
- data/lib/aws-sdk-core/elasticloadbalancing.rb +0 -6
- data/lib/aws-sdk-core/elasticsearchservice.rb +0 -4
- data/lib/aws-sdk-core/elastictranscoder.rb +0 -6
- data/lib/aws-sdk-core/empty_structure.rb +0 -3
- data/lib/aws-sdk-core/emr.rb +0 -7
- data/lib/aws-sdk-core/endpoint_provider.rb +0 -95
- data/lib/aws-sdk-core/firehose.rb +0 -4
- data/lib/aws-sdk-core/gamelift.rb +0 -5
- data/lib/aws-sdk-core/glacier.rb +0 -7
- data/lib/aws-sdk-core/iam.rb +0 -8
- data/lib/aws-sdk-core/importexport.rb +0 -5
- data/lib/aws-sdk-core/inspector.rb +0 -5
- data/lib/aws-sdk-core/iot.rb +0 -5
- data/lib/aws-sdk-core/iotdataplane.rb +0 -4
- data/lib/aws-sdk-core/kinesis.rb +0 -7
- data/lib/aws-sdk-core/kms.rb +0 -6
- data/lib/aws-sdk-core/lambda.rb +0 -6
- data/lib/aws-sdk-core/lambdapreview.rb +0 -5
- data/lib/aws-sdk-core/machinelearning.rb +0 -6
- data/lib/aws-sdk-core/marketplacecommerceanalytics.rb +0 -5
- data/lib/aws-sdk-core/marketplacemetering.rb +0 -5
- data/lib/aws-sdk-core/opsworks.rb +0 -8
- data/lib/aws-sdk-core/partitions.rb +0 -174
- data/lib/aws-sdk-core/partitions/partition.rb +0 -95
- data/lib/aws-sdk-core/partitions/partition_list.rb +0 -60
- data/lib/aws-sdk-core/partitions/region.rb +0 -78
- data/lib/aws-sdk-core/partitions/service.rb +0 -84
- data/lib/aws-sdk-core/plugins/api_gateway_header.rb +0 -19
- data/lib/aws-sdk-core/plugins/csd_conditional_signing.rb +0 -30
- data/lib/aws-sdk-core/plugins/dynamodb_crc32_validation.rb +0 -52
- data/lib/aws-sdk-core/plugins/dynamodb_extended_retries.rb +0 -22
- data/lib/aws-sdk-core/plugins/dynamodb_simple_attributes.rb +0 -209
- data/lib/aws-sdk-core/plugins/ec2_copy_encrypted_snapshot.rb +0 -87
- data/lib/aws-sdk-core/plugins/ec2_region_validation.rb +0 -17
- data/lib/aws-sdk-core/plugins/glacier_account_id.rb +0 -19
- data/lib/aws-sdk-core/plugins/glacier_api_version.rb +0 -19
- data/lib/aws-sdk-core/plugins/glacier_checksums.rb +0 -87
- data/lib/aws-sdk-core/plugins/machine_learning_predict_endpoint.rb +0 -20
- data/lib/aws-sdk-core/plugins/request_signer.rb +0 -138
- data/lib/aws-sdk-core/plugins/route_53_id_fix.rb +0 -55
- data/lib/aws-sdk-core/plugins/s3_accelerate.rb +0 -73
- data/lib/aws-sdk-core/plugins/s3_bucket_dns.rb +0 -86
- data/lib/aws-sdk-core/plugins/s3_bucket_name_restrictions.rb +0 -21
- data/lib/aws-sdk-core/plugins/s3_expect_100_continue.rb +0 -27
- data/lib/aws-sdk-core/plugins/s3_get_bucket_location_fix.rb +0 -21
- data/lib/aws-sdk-core/plugins/s3_http_200_errors.rb +0 -45
- data/lib/aws-sdk-core/plugins/s3_location_constraint.rb +0 -31
- data/lib/aws-sdk-core/plugins/s3_md5s.rb +0 -50
- data/lib/aws-sdk-core/plugins/s3_redirects.rb +0 -37
- data/lib/aws-sdk-core/plugins/s3_request_signer.rb +0 -166
- data/lib/aws-sdk-core/plugins/s3_sse_cpk.rb +0 -64
- data/lib/aws-sdk-core/plugins/s3_url_encoded_keys.rb +0 -92
- data/lib/aws-sdk-core/plugins/sqs_md5s.rb +0 -162
- data/lib/aws-sdk-core/plugins/sqs_queue_urls.rb +0 -34
- data/lib/aws-sdk-core/plugins/swf_read_timeouts.rb +0 -23
- data/lib/aws-sdk-core/rds.rb +0 -8
- data/lib/aws-sdk-core/redshift.rb +0 -7
- data/lib/aws-sdk-core/route53.rb +0 -7
- data/lib/aws-sdk-core/route53domains.rb +0 -5
- data/lib/aws-sdk-core/s3.rb +0 -26
- data/lib/aws-sdk-core/s3/bucket_region_cache.rb +0 -75
- data/lib/aws-sdk-core/s3/presigner.rb +0 -113
- data/lib/aws-sdk-core/service.rb +0 -4
- data/lib/aws-sdk-core/servicecatalog.rb +0 -5
- data/lib/aws-sdk-core/ses.rb +0 -7
- data/lib/aws-sdk-core/signers/base.rb +0 -31
- data/lib/aws-sdk-core/signers/s3.rb +0 -184
- data/lib/aws-sdk-core/signers/v2.rb +0 -51
- data/lib/aws-sdk-core/signers/v3.rb +0 -34
- data/lib/aws-sdk-core/signers/v4.rb +0 -233
- data/lib/aws-sdk-core/simpledb.rb +0 -5
- data/lib/aws-sdk-core/sns.rb +0 -6
- data/lib/aws-sdk-core/sqs.rb +0 -6
- data/lib/aws-sdk-core/ssm.rb +0 -6
- data/lib/aws-sdk-core/storagegateway.rb +0 -6
- data/lib/aws-sdk-core/sts.rb +0 -5
- data/lib/aws-sdk-core/support.rb +0 -5
- data/lib/aws-sdk-core/swf.rb +0 -5
- data/lib/aws-sdk-core/tree_hash.rb +0 -69
- data/lib/aws-sdk-core/version.rb +0 -3
- data/lib/aws-sdk-core/waf.rb +0 -5
- data/lib/aws-sdk-core/waiters/null_provider.rb +0 -12
- data/lib/aws-sdk-core/waiters/provider.rb +0 -35
- data/lib/aws-sdk-core/workspaces.rb +0 -6
- data/lib/seahorse/client/plugins/restful_bindings.rb +0 -127
- data/service-models.json +0 -285
@@ -1,109 +0,0 @@
|
|
1
|
-
module Aws
|
2
|
-
module Api
|
3
|
-
module Docs
|
4
|
-
class ClientTypeDocumenter
|
5
|
-
|
6
|
-
include Utils
|
7
|
-
include Seahorse::Model
|
8
|
-
include Seahorse::Model::Shapes
|
9
|
-
|
10
|
-
# @param [Yard::CodeObjects::Base] namespace
|
11
|
-
def initialize(namespace)
|
12
|
-
@namespace = namespace
|
13
|
-
end
|
14
|
-
|
15
|
-
# @param [Seahorse::Model::Api] api
|
16
|
-
# @param [Seahorse::Model::Shapes::StructureShape] shape
|
17
|
-
def document(api, shape)
|
18
|
-
yard_class = YARD::CodeObjects::ClassObject.new(@namespace, shape.name)
|
19
|
-
yard_class.superclass = 'Struct'
|
20
|
-
yard_class.docstring = docstring(api, shape)
|
21
|
-
tags(api, shape).each do |tag|
|
22
|
-
yard_class.add_tag(tag)
|
23
|
-
end
|
24
|
-
shape.members.each do |member_name, ref|
|
25
|
-
document_struct_member(yard_class, member_name, ref)
|
26
|
-
end
|
27
|
-
end
|
28
|
-
|
29
|
-
private
|
30
|
-
|
31
|
-
def docstring(api, shape)
|
32
|
-
docs = shape.documentation || ''
|
33
|
-
methods = returned_by(api, shape)
|
34
|
-
unless methods.empty?
|
35
|
-
docs += "<p>Returned by:</p>"
|
36
|
-
docs += "<ul>"
|
37
|
-
docs += methods.map{|m| "<li>{#{m}}</li>" }.join
|
38
|
-
docs += "</ul>"
|
39
|
-
end
|
40
|
-
docs
|
41
|
-
end
|
42
|
-
|
43
|
-
def tags(api, shape)
|
44
|
-
tags = []
|
45
|
-
tags << input_example_tag(api, shape) if input_shape?(api, shape)
|
46
|
-
tags
|
47
|
-
end
|
48
|
-
|
49
|
-
# Returns `true` if the given shape is ever used as input in the api.
|
50
|
-
def input_shape?(haystack, needle, stack = [])
|
51
|
-
if stack.include?(haystack)
|
52
|
-
return false
|
53
|
-
else
|
54
|
-
stack += [haystack]
|
55
|
-
end
|
56
|
-
case haystack
|
57
|
-
when needle
|
58
|
-
return true
|
59
|
-
when Seahorse::Model::Api
|
60
|
-
haystack.operations.each do |_, operation|
|
61
|
-
if operation.input && input_shape?(operation.input.shape, needle, stack)
|
62
|
-
return true
|
63
|
-
end
|
64
|
-
end
|
65
|
-
when StructureShape
|
66
|
-
haystack.members.each do |_, member_ref|
|
67
|
-
if input_shape?(member_ref.shape, needle, stack)
|
68
|
-
return true
|
69
|
-
end
|
70
|
-
end
|
71
|
-
when ListShape
|
72
|
-
return input_shape?(haystack.member.shape, needle, stack)
|
73
|
-
when MapShape
|
74
|
-
return input_shape?(haystack.value.shape, needle, stack)
|
75
|
-
end
|
76
|
-
false
|
77
|
-
end
|
78
|
-
|
79
|
-
def input_example_tag(api, shape)
|
80
|
-
params = ParamFormatter.new(ShapeRef.new(shape: shape))
|
81
|
-
note = "@note When passing #{shape.name} as input to an #{Client} "
|
82
|
-
note << "method, you can use a\n vanilla Hash:\n\n "
|
83
|
-
note << params.format.lines.join(" ")
|
84
|
-
tag(note)
|
85
|
-
end
|
86
|
-
|
87
|
-
def returned_by(api, shape)
|
88
|
-
methods = []
|
89
|
-
|
90
|
-
api.metadata['shapes'].each_structure do |struct|
|
91
|
-
struct.members.each do |member_name, member_ref|
|
92
|
-
if member_ref.shape == shape
|
93
|
-
methods << "Types::#{struct.name}##{member_name}"
|
94
|
-
end
|
95
|
-
end
|
96
|
-
end
|
97
|
-
|
98
|
-
api.operations.each do |operation_name, operation|
|
99
|
-
if operation.output && operation.output.shape == shape
|
100
|
-
methods << "Client##{operation_name}"
|
101
|
-
end
|
102
|
-
end
|
103
|
-
methods
|
104
|
-
end
|
105
|
-
|
106
|
-
end
|
107
|
-
end
|
108
|
-
end
|
109
|
-
end
|
@@ -1,75 +0,0 @@
|
|
1
|
-
module Aws
|
2
|
-
module Api
|
3
|
-
module Docs
|
4
|
-
class DocstringProvider
|
5
|
-
|
6
|
-
def initialize(docstrings)
|
7
|
-
@docstrings = docstrings
|
8
|
-
end
|
9
|
-
|
10
|
-
# @param [String] operation_name
|
11
|
-
# @return [String,nil]
|
12
|
-
def operation_docs(operation_name)
|
13
|
-
clean(@docstrings['operations'][operation_name])
|
14
|
-
end
|
15
|
-
|
16
|
-
# @param [String] shape_name
|
17
|
-
# @return [String,nil]
|
18
|
-
def shape_docs(shape_name)
|
19
|
-
clean(shape(shape_name)['base'])
|
20
|
-
end
|
21
|
-
|
22
|
-
# @param [String] shape_name
|
23
|
-
# @param [String] target
|
24
|
-
# @return [String,nil]
|
25
|
-
def shape_ref_docs(shape_name, target)
|
26
|
-
if ref_docs = shape(shape_name)['refs'][target]
|
27
|
-
docs = clean(ref_docs)
|
28
|
-
# Running through kramdown to catch unclosed tags that
|
29
|
-
# break the client doc pages, see Aws::RDS::Client
|
30
|
-
# for an example.
|
31
|
-
begin
|
32
|
-
require 'kramdown'
|
33
|
-
Kramdown::Document.new(docs, input: 'html').to_kramdown.strip
|
34
|
-
rescue LoadError
|
35
|
-
docs
|
36
|
-
end
|
37
|
-
else
|
38
|
-
shape_docs(shape_name)
|
39
|
-
end
|
40
|
-
end
|
41
|
-
|
42
|
-
private
|
43
|
-
|
44
|
-
def shape(name)
|
45
|
-
@docstrings['shapes'][name] || { 'base' => nil, 'refs' => {} }
|
46
|
-
end
|
47
|
-
|
48
|
-
def clean(value)
|
49
|
-
if value.nil?
|
50
|
-
''
|
51
|
-
else
|
52
|
-
value.gsub(/\{(\S+)\}/, '`{\1}`').strip
|
53
|
-
end
|
54
|
-
end
|
55
|
-
|
56
|
-
end
|
57
|
-
|
58
|
-
class NullDocstringProvider
|
59
|
-
|
60
|
-
def operation_docs(operation_name)
|
61
|
-
nil
|
62
|
-
end
|
63
|
-
|
64
|
-
def shape_docs(shape_name)
|
65
|
-
nil
|
66
|
-
end
|
67
|
-
|
68
|
-
def shape_ref_docs(shape_name, target)
|
69
|
-
nil
|
70
|
-
end
|
71
|
-
|
72
|
-
end
|
73
|
-
end
|
74
|
-
end
|
75
|
-
end
|
@@ -1,138 +0,0 @@
|
|
1
|
-
module Aws
|
2
|
-
module Api
|
3
|
-
module Docs
|
4
|
-
class OperationDocumenter
|
5
|
-
|
6
|
-
include Seahorse::Model
|
7
|
-
include Utils
|
8
|
-
|
9
|
-
def initialize(service_name, namespace)
|
10
|
-
@service_name = service_name
|
11
|
-
@namespace = namespace
|
12
|
-
@optname = 'options'
|
13
|
-
end
|
14
|
-
|
15
|
-
# @param [Symbol] method_name
|
16
|
-
# @param [Seahorse::Model::Opeation] operation
|
17
|
-
def document(method_name, operation)
|
18
|
-
m = YARD::CodeObjects::MethodObject.new(@namespace, method_name)
|
19
|
-
m.group = 'API Operations'
|
20
|
-
m.scope = :instance
|
21
|
-
m.parameters << [@optname, '{}']
|
22
|
-
m.docstring = operation.documentation
|
23
|
-
tags(method_name, operation).each do |tag|
|
24
|
-
m.add_tag(tag)
|
25
|
-
end
|
26
|
-
end
|
27
|
-
|
28
|
-
private
|
29
|
-
|
30
|
-
def tags(method_name, operation)
|
31
|
-
tags = []
|
32
|
-
tags += param_tags(method_name, operation)
|
33
|
-
tags += option_tags(method_name, operation)
|
34
|
-
tags += return_tags(method_name, operation)
|
35
|
-
tags += example_tags(method_name, operation)
|
36
|
-
tags += see_also_tags(method_name, operation)
|
37
|
-
end
|
38
|
-
|
39
|
-
def param_tags(method_name, operation)
|
40
|
-
[]
|
41
|
-
end
|
42
|
-
|
43
|
-
def option_tags(method_name, operation)
|
44
|
-
operation_input_ref(operation).shape.members.map do |name, ref|
|
45
|
-
req = ref.required ? 'required,' : ''
|
46
|
-
type = input_type(ref)
|
47
|
-
docstring = "@option #{@optname} [#{req}#{type}] :#{name}\n"
|
48
|
-
docstring += ref.documentation.lines.map { |line| " #{line}" }.join
|
49
|
-
tag(docstring)
|
50
|
-
end
|
51
|
-
end
|
52
|
-
|
53
|
-
def return_tags(method_name, operation)
|
54
|
-
resp = '{Seahorse::Client::Response response}'
|
55
|
-
if operation.output && operation.output.shape.members.count > 0
|
56
|
-
rtype = output_type(operation.output)
|
57
|
-
returns = "[#{rtype}] Returns a #{resp} object which responds to "
|
58
|
-
returns << "the following methods:\n\n"
|
59
|
-
operation.output.shape.members.each do |mname, mref|
|
60
|
-
mtype = output_type(mref, true).gsub(/</, '<').gsub(/>/, '>')
|
61
|
-
returns << " * {#{rtype}##{mname} ##{mname}} => #{mtype}\n"
|
62
|
-
end
|
63
|
-
else
|
64
|
-
returns = "[Struct] Returns an empty #{resp}."
|
65
|
-
end
|
66
|
-
[tag("@return #{returns}")]
|
67
|
-
end
|
68
|
-
|
69
|
-
def example_tags(method_name, operation)
|
70
|
-
shared_examples(method_name, operation) +
|
71
|
-
examples_from_disk(method_name, operation) +
|
72
|
-
[
|
73
|
-
request_syntax_example(method_name, operation),
|
74
|
-
response_structure_example(method_name, operation),
|
75
|
-
].compact
|
76
|
-
end
|
77
|
-
|
78
|
-
def shared_examples(method_name, operation)
|
79
|
-
if operation['examples']
|
80
|
-
operation['examples'].map do |example|
|
81
|
-
shared_example(example, method_name, operation)
|
82
|
-
end
|
83
|
-
else
|
84
|
-
[]
|
85
|
-
end
|
86
|
-
end
|
87
|
-
|
88
|
-
def shared_example(json_ex, method_name, operation)
|
89
|
-
input_comments = json_ex['comments']['input']
|
90
|
-
input = SharedExample.new(json_ex['input'], method_name, operation, input_comments).to_str_input
|
91
|
-
parts = []
|
92
|
-
parts << "@example Example: #{json_ex['title']}\n\n"
|
93
|
-
parts << " # #{json_ex['description']}\n\n"
|
94
|
-
parts += input.lines.map { |line| " " + line }
|
95
|
-
if json_ex['output']
|
96
|
-
output_comments = json_ex['comments']['output']
|
97
|
-
output = SharedExample.new(json_ex['output'], method_name, operation, output_comments).to_str_output
|
98
|
-
parts << "\n\n # resp.to_h outputs the following:\n"
|
99
|
-
parts += output.lines.map { |line| " " + line }
|
100
|
-
end
|
101
|
-
tag(parts.join)
|
102
|
-
end
|
103
|
-
|
104
|
-
def examples_from_disk(method_name, operation)
|
105
|
-
dir = "doc-src/examples/#{@service_name.downcase}/client/#{method_name}/*.rb"
|
106
|
-
Dir.glob(dir).map do |path|
|
107
|
-
title = File.basename(path).split(/\./).first
|
108
|
-
title = title.sub(/^\d+_/, '').gsub(/_/, ' ')
|
109
|
-
title = title[0].upcase + title[1..-1]
|
110
|
-
tag("@example #{title}\n\n " + File.read(path).lines.join(' '))
|
111
|
-
end
|
112
|
-
end
|
113
|
-
|
114
|
-
def request_syntax_example(method_name, operation)
|
115
|
-
example = RequestSyntaxExample.new(method_name, operation).to_str
|
116
|
-
parts = []
|
117
|
-
parts << "@example Request syntax with placeholder values\n\n"
|
118
|
-
parts += example.lines.map { |line| " " + line }
|
119
|
-
tag(parts.join)
|
120
|
-
end
|
121
|
-
|
122
|
-
def response_structure_example(method_name, operation)
|
123
|
-
if example = ResponseStructureExample.new(method_name, operation).to_str
|
124
|
-
parts = []
|
125
|
-
parts << "@example Response structure\n\n"
|
126
|
-
parts += example.lines.map { |line| " " + line }
|
127
|
-
tag(parts.join)
|
128
|
-
end
|
129
|
-
end
|
130
|
-
|
131
|
-
def see_also_tags(method_name, operation)
|
132
|
-
[]
|
133
|
-
end
|
134
|
-
|
135
|
-
end
|
136
|
-
end
|
137
|
-
end
|
138
|
-
end
|
@@ -1,163 +0,0 @@
|
|
1
|
-
module Aws
|
2
|
-
module Api
|
3
|
-
module Docs
|
4
|
-
class ParamFormatter
|
5
|
-
|
6
|
-
include Utils
|
7
|
-
include Seahorse::Model::Shapes
|
8
|
-
|
9
|
-
def initialize(shape_ref)
|
10
|
-
@shape_ref = shape_ref
|
11
|
-
@recursive_shapes = compute_recursive_shapes(@shape_ref)
|
12
|
-
end
|
13
|
-
|
14
|
-
def format
|
15
|
-
if @shape_ref && @shape_ref.shape.member_names.count > 0
|
16
|
-
ref_value(@shape_ref, '', [])
|
17
|
-
else
|
18
|
-
''
|
19
|
-
end
|
20
|
-
end
|
21
|
-
|
22
|
-
private
|
23
|
-
|
24
|
-
def ref_value(ref, i, visited)
|
25
|
-
if visited.include?(ref.shape)
|
26
|
-
return "{\n#{i} # recursive #{ref.shape.name}\n#{i}}"
|
27
|
-
else
|
28
|
-
visited = visited + [ref.shape]
|
29
|
-
end
|
30
|
-
case ref.shape
|
31
|
-
when StructureShape
|
32
|
-
if ref.shape.name == 'AttributeValue'
|
33
|
-
'"value"'
|
34
|
-
else
|
35
|
-
struct(ref, i, visited)
|
36
|
-
end
|
37
|
-
when BlobShape
|
38
|
-
if ref[:response_target]
|
39
|
-
'"/path/to/file"'
|
40
|
-
elsif ref[:streaming]
|
41
|
-
'source_file'
|
42
|
-
else
|
43
|
-
'"data"'
|
44
|
-
end
|
45
|
-
when ListShape then list(ref, i, visited)
|
46
|
-
when MapShape then map(ref, i, visited)
|
47
|
-
when BooleanShape then "false"
|
48
|
-
when IntegerShape then '1'
|
49
|
-
when FloatShape then '1.0'
|
50
|
-
when StringShape then string(ref)
|
51
|
-
when TimestampShape then 'Time.now'
|
52
|
-
else raise "unsupported shape #{ref.shape.class.name}"
|
53
|
-
end
|
54
|
-
end
|
55
|
-
|
56
|
-
def struct(ref, i, visited)
|
57
|
-
lines = ['{']
|
58
|
-
ref.shape.members.each do |member_name, member_ref|
|
59
|
-
lines << struct_member(member_name, member_ref, i, visited)
|
60
|
-
end
|
61
|
-
lines << "#{i}}"
|
62
|
-
lines.join("\n")
|
63
|
-
end
|
64
|
-
|
65
|
-
def struct_member(member_name, member_ref, i, visited)
|
66
|
-
entry = "#{i} #{member_name}: #{ref_value(member_ref, i + ' ', visited)},"
|
67
|
-
apply_comments(member_ref, entry)
|
68
|
-
end
|
69
|
-
|
70
|
-
def list(ref, i, visited)
|
71
|
-
if complex?(ref.shape.member)
|
72
|
-
complex_list(ref.shape.member, i, visited)
|
73
|
-
else
|
74
|
-
scalar_list(ref.shape.member, i, visited)
|
75
|
-
end
|
76
|
-
end
|
77
|
-
|
78
|
-
def scalar_list(ref, i, visited)
|
79
|
-
"[#{ref_value(ref, i, visited)}]"
|
80
|
-
end
|
81
|
-
|
82
|
-
def complex_list(ref, i, visited)
|
83
|
-
"[\n#{i} #{ref_value(ref, i + ' ', visited)},\n#{i}]"
|
84
|
-
end
|
85
|
-
|
86
|
-
def map(ref, i, visited)
|
87
|
-
key = string(ref.shape.key)
|
88
|
-
value = ref_value(ref.shape.value, i + ' ', visited)
|
89
|
-
"{\n#{i} #{key} => #{value},#{comments(ref.shape.value)}\n#{i}}"
|
90
|
-
end
|
91
|
-
|
92
|
-
def string(ref)
|
93
|
-
if ref.shape.enum
|
94
|
-
ref.shape.enum.first.inspect
|
95
|
-
elsif ref.shape.name
|
96
|
-
ref.shape.name.inspect
|
97
|
-
else
|
98
|
-
'"string"'
|
99
|
-
end
|
100
|
-
end
|
101
|
-
|
102
|
-
def apply_comments(ref, text)
|
103
|
-
lines = text.lines.to_a
|
104
|
-
if lines[0].match(/\n$/)
|
105
|
-
lines[0] = lines[0].sub(/\n$/, comments(ref) + "\n")
|
106
|
-
else
|
107
|
-
lines[0] += comments(ref)
|
108
|
-
end
|
109
|
-
lines.join
|
110
|
-
end
|
111
|
-
|
112
|
-
def comments(ref)
|
113
|
-
comments = []
|
114
|
-
if ref[:response_target]
|
115
|
-
comments << 'where to write response data, file path, or IO object'
|
116
|
-
end
|
117
|
-
if ref[:streaming]
|
118
|
-
comments << 'file/IO object, or string data'
|
119
|
-
end
|
120
|
-
if ref.required
|
121
|
-
comments << 'required'
|
122
|
-
end
|
123
|
-
if enum = enum_values(ref)
|
124
|
-
comments << "accepts #{enum.to_a.join(', ')}"
|
125
|
-
end
|
126
|
-
if ddb_av?(ref)
|
127
|
-
comments << 'value <Hash,Array,String,Numeric,Boolean,IO,Set,nil>'
|
128
|
-
end
|
129
|
-
comments == [] ? '' : " # #{comments.join(', ')}"
|
130
|
-
end
|
131
|
-
|
132
|
-
def recursive?(ref)
|
133
|
-
@recursive_shapes.include?(ref.shape)
|
134
|
-
end
|
135
|
-
|
136
|
-
def enum_values(ref)
|
137
|
-
case ref.shape
|
138
|
-
when ListShape then enum_values(ref.shape.member)
|
139
|
-
when StringShape then ref.shape.enum
|
140
|
-
else nil
|
141
|
-
end
|
142
|
-
end
|
143
|
-
|
144
|
-
def complex?(ref)
|
145
|
-
if StructureShape === ref.shape
|
146
|
-
!ddb_av?(ref)
|
147
|
-
else
|
148
|
-
ListShape === ref.shape || MapShape === ref.shape
|
149
|
-
end
|
150
|
-
end
|
151
|
-
|
152
|
-
def ddb_av?(ref)
|
153
|
-
case ref.shape
|
154
|
-
when ListShape then ddb_av?(ref.shape.member)
|
155
|
-
when StructureShape then ref.shape.name == 'AttributeValue'
|
156
|
-
else false
|
157
|
-
end
|
158
|
-
end
|
159
|
-
|
160
|
-
end
|
161
|
-
end
|
162
|
-
end
|
163
|
-
end
|