From f13fa0f887e35c577d73737072b3ebbe47219a68 Mon Sep 17 00:00:00 2001 From: Trevor Rowe Date: Fri, 19 Sep 2014 12:32:11 -0700 Subject: [PATCH 1/5] Moved the aws-sdk-core gem code from lib/aws to lib/aws-sdk-core. --- aws-sdk-core/lib/aws-sdk-core.rb | 306 +++++++++++++++++- .../{aws => aws-sdk-core}/api/customizer.rb | 0 .../{aws => aws-sdk-core}/api/docstrings.rb | 0 .../{aws => aws-sdk-core}/api/documenter.rb | 0 .../api/operation_documenter.rb | 0 .../api/operation_example.rb | 0 .../api/service_customizations.rb | 0 .../lib/{aws => aws-sdk-core}/autoscaling.rb | 0 .../lib/{aws => aws-sdk-core}/client.rb | 0 .../{aws => aws-sdk-core}/cloudformation.rb | 0 .../lib/{aws => aws-sdk-core}/cloudfront.rb | 0 .../lib/{aws => aws-sdk-core}/cloudsearch.rb | 0 .../cloudsearchdomain.rb | 0 .../lib/{aws => aws-sdk-core}/cloudtrail.rb | 0 .../lib/{aws => aws-sdk-core}/cloudwatch.rb | 0 .../{aws => aws-sdk-core}/cloudwatchlogs.rb | 0 .../{aws => aws-sdk-core}/cognitoidentity.rb | 0 .../lib/{aws => aws-sdk-core}/cognitosync.rb | 0 .../credential_provider_chain.rb | 0 .../lib/{aws => aws-sdk-core}/credentials.rb | 0 .../lib/{aws => aws-sdk-core}/datapipeline.rb | 0 .../{aws => aws-sdk-core}/directconnect.rb | 0 .../lib/{aws => aws-sdk-core}/dynamodb.rb | 0 .../dynamodb/attribute_value.rb | 0 aws-sdk-core/lib/{aws => aws-sdk-core}/ec2.rb | 0 .../lib/{aws => aws-sdk-core}/elasticache.rb | 0 .../{aws => aws-sdk-core}/elasticbeanstalk.rb | 0 .../elasticloadbalancing.rb | 0 .../elastictranscoder.rb | 0 .../{aws => aws-sdk-core}/empty_structure.rb | 0 aws-sdk-core/lib/{aws => aws-sdk-core}/emr.rb | 0 .../endpoint_provider.rb | 0 .../lib/{aws => aws-sdk-core}/errors.rb | 0 .../lib/{aws => aws-sdk-core}/glacier.rb | 0 aws-sdk-core/lib/{aws => aws-sdk-core}/iam.rb | 0 .../lib/{aws => aws-sdk-core}/importexport.rb | 0 .../instance_profile_credentials.rb | 0 .../lib/{aws => aws-sdk-core}/json/builder.rb | 0 .../json/error_handler.rb | 0 .../lib/{aws => aws-sdk-core}/json/parser.rb | 0 .../json/rest_handler.rb | 0 .../json/rpc_body_handler.rb | 0 .../json/rpc_headers_handler.rb | 0 .../json/simple_body_handler.rb | 0 .../lib/{aws => aws-sdk-core}/kinesis.rb | 0 .../lib/{aws => aws-sdk-core}/opsworks.rb | 0 .../pageable_response.rb | 0 .../paging/null_pager.rb | 0 .../paging/null_provider.rb | 0 .../lib/{aws => aws-sdk-core}/paging/pager.rb | 0 .../{aws => aws-sdk-core}/paging/provider.rb | 0 .../plugins/csd_conditional_signing.rb | 0 .../plugins/dynamodb_extended_retries.rb | 0 .../plugins/dynamodb_simple_attributes.rb | 0 .../plugins/ec2_copy_encrypted_snapshot.rb | 0 .../plugins/glacier_account_id.rb | 0 .../plugins/glacier_api_version.rb | 0 .../plugins/glacier_checksums.rb | 0 .../plugins/global_configuration.rb | 0 .../plugins/protocols/ec2.rb | 0 .../plugins/protocols/json_rpc.rb | 0 .../plugins/protocols/query.rb | 0 .../plugins/protocols/rest_json.rb | 0 .../plugins/protocols/rest_xml.rb | 0 .../plugins/regional_endpoint.rb | 0 .../plugins/request_signer.rb | 0 .../plugins/response_paging.rb | 0 .../plugins/retry_errors.rb | 0 .../plugins/route_53_id_fix.rb | 0 .../plugins/s3_bucket_dns.rb | 0 .../s3_complete_multipart_upload_fix.rb | 0 .../plugins/s3_expect_100_continue.rb | 0 .../plugins/s3_get_bucket_location_fix.rb | 0 .../plugins/s3_location_constraint.rb | 0 .../{aws => aws-sdk-core}/plugins/s3_md5s.rb | 0 .../plugins/s3_redirects.rb | 0 .../plugins/s3_sse_cpk.rb | 0 .../plugins/s3_url_encoded_keys.rb | 0 .../plugins/sqs_queue_urls.rb | 0 .../plugins/swf_read_timeouts.rb | 0 .../plugins/user_agent.rb | 0 .../query/ec2_param_builder.rb | 0 .../{aws => aws-sdk-core}/query/handler.rb | 0 .../lib/{aws => aws-sdk-core}/query/param.rb | 0 .../query/param_builder.rb | 0 .../{aws => aws-sdk-core}/query/param_list.rb | 0 aws-sdk-core/lib/{aws => aws-sdk-core}/rds.rb | 0 .../lib/{aws => aws-sdk-core}/redshift.rb | 0 .../rest_body_handler.rb | 0 .../lib/{aws => aws-sdk-core}/route53.rb | 0 .../{aws => aws-sdk-core}/route53domains.rb | 0 aws-sdk-core/lib/{aws => aws-sdk-core}/s3.rb | 0 .../lib/{aws => aws-sdk-core}/s3/presigner.rb | 0 .../lib/{aws => aws-sdk-core}/service.rb | 0 aws-sdk-core/lib/{aws => aws-sdk-core}/ses.rb | 0 .../shared_credentials.rb | 0 .../lib/{aws => aws-sdk-core}/signers/base.rb | 0 .../{aws => aws-sdk-core}/signers/handler.rb | 0 .../lib/{aws => aws-sdk-core}/signers/s3.rb | 0 .../lib/{aws => aws-sdk-core}/signers/v2.rb | 0 .../lib/{aws => aws-sdk-core}/signers/v3.rb | 0 .../lib/{aws => aws-sdk-core}/signers/v4.rb | 0 .../lib/{aws => aws-sdk-core}/simpledb.rb | 0 aws-sdk-core/lib/{aws => aws-sdk-core}/sns.rb | 0 aws-sdk-core/lib/{aws => aws-sdk-core}/sqs.rb | 0 .../{aws => aws-sdk-core}/storagegateway.rb | 0 .../lib/{aws => aws-sdk-core}/structure.rb | 0 aws-sdk-core/lib/{aws => aws-sdk-core}/sts.rb | 0 .../lib/{aws => aws-sdk-core}/support.rb | 0 aws-sdk-core/lib/{aws => aws-sdk-core}/swf.rb | 0 .../lib/{aws => aws-sdk-core}/tree_hash.rb | 0 .../lib/{aws => aws-sdk-core}/version.rb | 0 .../{aws => aws-sdk-core}/waiters/errors.rb | 0 .../waiters/null_provider.rb | 0 .../{aws => aws-sdk-core}/waiters/provider.rb | 0 .../{aws => aws-sdk-core}/waiters/waiter.rb | 0 .../lib/{aws => aws-sdk-core}/xml/builder.rb | 0 .../{aws => aws-sdk-core}/xml/default_list.rb | 0 .../xml/error_handler.rb | 0 .../lib/{aws => aws-sdk-core}/xml/parser.rb | 0 .../{aws => aws-sdk-core}/xml/rest_handler.rb | 0 aws-sdk-core/lib/aws.rb | 306 ------------------ 122 files changed, 305 insertions(+), 307 deletions(-) rename aws-sdk-core/lib/{aws => aws-sdk-core}/api/customizer.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/api/docstrings.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/api/documenter.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/api/operation_documenter.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/api/operation_example.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/api/service_customizations.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/autoscaling.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/client.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/cloudformation.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/cloudfront.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/cloudsearch.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/cloudsearchdomain.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/cloudtrail.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/cloudwatch.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/cloudwatchlogs.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/cognitoidentity.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/cognitosync.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/credential_provider_chain.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/credentials.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/datapipeline.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/directconnect.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/dynamodb.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/dynamodb/attribute_value.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/ec2.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/elasticache.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/elasticbeanstalk.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/elasticloadbalancing.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/elastictranscoder.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/empty_structure.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/emr.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/endpoint_provider.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/errors.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/glacier.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/iam.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/importexport.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/instance_profile_credentials.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/json/builder.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/json/error_handler.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/json/parser.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/json/rest_handler.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/json/rpc_body_handler.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/json/rpc_headers_handler.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/json/simple_body_handler.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/kinesis.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/opsworks.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/pageable_response.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/paging/null_pager.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/paging/null_provider.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/paging/pager.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/paging/provider.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/plugins/csd_conditional_signing.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/plugins/dynamodb_extended_retries.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/plugins/dynamodb_simple_attributes.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/plugins/ec2_copy_encrypted_snapshot.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/plugins/glacier_account_id.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/plugins/glacier_api_version.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/plugins/glacier_checksums.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/plugins/global_configuration.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/plugins/protocols/ec2.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/plugins/protocols/json_rpc.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/plugins/protocols/query.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/plugins/protocols/rest_json.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/plugins/protocols/rest_xml.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/plugins/regional_endpoint.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/plugins/request_signer.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/plugins/response_paging.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/plugins/retry_errors.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/plugins/route_53_id_fix.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/plugins/s3_bucket_dns.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/plugins/s3_complete_multipart_upload_fix.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/plugins/s3_expect_100_continue.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/plugins/s3_get_bucket_location_fix.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/plugins/s3_location_constraint.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/plugins/s3_md5s.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/plugins/s3_redirects.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/plugins/s3_sse_cpk.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/plugins/s3_url_encoded_keys.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/plugins/sqs_queue_urls.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/plugins/swf_read_timeouts.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/plugins/user_agent.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/query/ec2_param_builder.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/query/handler.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/query/param.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/query/param_builder.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/query/param_list.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/rds.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/redshift.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/rest_body_handler.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/route53.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/route53domains.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/s3.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/s3/presigner.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/service.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/ses.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/shared_credentials.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/signers/base.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/signers/handler.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/signers/s3.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/signers/v2.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/signers/v3.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/signers/v4.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/simpledb.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/sns.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/sqs.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/storagegateway.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/structure.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/sts.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/support.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/swf.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/tree_hash.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/version.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/waiters/errors.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/waiters/null_provider.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/waiters/provider.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/waiters/waiter.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/xml/builder.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/xml/default_list.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/xml/error_handler.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/xml/parser.rb (100%) rename aws-sdk-core/lib/{aws => aws-sdk-core}/xml/rest_handler.rb (100%) delete mode 100644 aws-sdk-core/lib/aws.rb diff --git a/aws-sdk-core/lib/aws-sdk-core.rb b/aws-sdk-core/lib/aws-sdk-core.rb index 7f5720a8..02e069b9 100644 --- a/aws-sdk-core/lib/aws-sdk-core.rb +++ b/aws-sdk-core/lib/aws-sdk-core.rb @@ -1,4 +1,5 @@ require 'seahorse' +require 'multi_json' Seahorse::Util.irregular_inflections({ 'ARNs' => 'arns', @@ -8,4 +9,307 @@ 'iSCSI' => 'iscsi', }) -require_relative 'aws' +module Aws + + # @api private + GEM_ROOT = File.dirname(File.dirname(__FILE__)) + + # @api private + SRC = File.join(GEM_ROOT, 'lib', 'aws-sdk-core') + + # @api private + # services + SERVICE_MODULE_NAMES = %w( + AutoScaling + CloudFormation + CloudFront + CloudSearch + CloudSearchDomain + CloudTrail + CloudWatch + CloudWatchLogs + CognitoIdentity + CognitoSync + DataPipeline + DirectConnect + DynamoDB + EC2 + ElastiCache + ElasticBeanstalk + ElasticLoadBalancing + ElasticTranscoder + EMR + Glacier + IAM + ImportExport + Kinesis + OpsWorks + RDS + Redshift + Route53 + Route53Domains + S3 + SES + SimpleDB + SNS + SQS + StorageGateway + STS + Support + SWF + ) + + @config = {} + @services = {} + @service_added_callbacks = [] + + SERVICE_MODULE_NAMES.each do |const_name| + autoload const_name, "#{SRC}/#{const_name.downcase}.rb" + end + + autoload :Client, "#{SRC}/client" + autoload :CredentialProviderChain, "#{SRC}/credential_provider_chain" + autoload :Credentials, "#{SRC}/credentials" + autoload :EmptyStructure, "#{SRC}/empty_structure" + autoload :EndpointProvider, "#{SRC}/endpoint_provider" + autoload :Errors, "#{SRC}/errors" + autoload :InstanceProfileCredentials, "#{SRC}/instance_profile_credentials" + autoload :PageableResponse, "#{SRC}/pageable_response" + autoload :RestBodyHandler, "#{SRC}/rest_body_handler" + autoload :Service, "#{SRC}/service" + autoload :SharedCredentials, "#{SRC}/shared_credentials" + autoload :Structure, "#{SRC}/structure" + autoload :TreeHash, "#{SRC}/tree_hash" + autoload :VERSION, "#{SRC}/version" + + # @api private + module Api + autoload :Customizer, "#{SRC}/api/customizer" + autoload :Documenter, "#{SRC}/api/documenter" + autoload :Docstrings, "#{SRC}/api/docstrings" + autoload :Manifest, "#{SRC}/api/manifest" + autoload :ManifestBuilder, "#{SRC}/api/manifest_builder" + autoload :OperationDocumenter, "#{SRC}/api/operation_documenter" + autoload :OperationExample, "#{SRC}/api/operation_example" + autoload :ServiceCustomizations, "#{SRC}/api/service_customizations" + end + + # @api private + module Json + autoload :Builder, "#{SRC}/json/builder" + autoload :ErrorHandler, "#{SRC}/json/error_handler" + autoload :Parser, "#{SRC}/json/parser" + autoload :RestHandler, "#{SRC}/json/rest_handler" + autoload :RpcBodyHandler, "#{SRC}/json/rpc_body_handler" + autoload :RpcHeadersHandler, "#{SRC}/json/rpc_headers_handler" + autoload :SimpleBodyHandler, "#{SRC}/json/simple_body_handler" + end + + # @api private + module Paging + autoload :NullPager, "#{SRC}/paging/null_pager" + autoload :NullProvider, "#{SRC}/paging/null_provider" + autoload :Pager, "#{SRC}/paging/pager" + autoload :Provider, "#{SRC}/paging/provider" + end + + module Plugins + autoload :CSDConditionalSigning, "#{SRC}/plugins/csd_conditional_signing" + autoload :DynamoDBExtendedRetries, "#{SRC}/plugins/dynamodb_extended_retries" + autoload :DynamoDBSimpleAttributes, "#{SRC}/plugins/dynamodb_simple_attributes" + autoload :EC2CopyEncryptedSnapshot, "#{SRC}/plugins/ec2_copy_encrypted_snapshot" + autoload :GlacierAccountId, "#{SRC}/plugins/glacier_account_id" + autoload :GlacierApiVersion, "#{SRC}/plugins/glacier_api_version" + autoload :GlacierChecksums, "#{SRC}/plugins/glacier_checksums" + autoload :GlobalConfiguration, "#{SRC}/plugins/global_configuration" + autoload :RegionalEndpoint, "#{SRC}/plugins/regional_endpoint" + autoload :ResponsePaging, "#{SRC}/plugins/response_paging" + autoload :RequestSigner, "#{SRC}/plugins/request_signer" + autoload :RetryErrors, "#{SRC}/plugins/retry_errors" + autoload :Route53IdFix, "#{SRC}/plugins/route_53_id_fix" + autoload :S3BucketDns, "#{SRC}/plugins/s3_bucket_dns" + autoload :S3CompleteMultipartUploadFix, "#{SRC}/plugins/s3_complete_multipart_upload_fix" + autoload :S3Expect100Continue, "#{SRC}/plugins/s3_expect_100_continue" + autoload :S3GetBucketLocationFix, "#{SRC}/plugins/s3_get_bucket_location_fix" + autoload :S3LocationConstraint, "#{SRC}/plugins/s3_location_constraint" + autoload :S3Md5s, "#{SRC}/plugins/s3_md5s" + autoload :S3Redirects, "#{SRC}/plugins/s3_redirects" + autoload :S3SseCpk, "#{SRC}/plugins/s3_sse_cpk" + autoload :S3UrlEncodedKeys, "#{SRC}/plugins/s3_url_encoded_keys" + autoload :SQSQueueUrls, "#{SRC}/plugins/sqs_queue_urls" + autoload :SWFReadTimeouts, "#{SRC}/plugins/swf_read_timeouts" + autoload :UserAgent, "#{SRC}/plugins/user_agent" + + module Protocols + autoload :EC2, "#{SRC}/plugins/protocols/ec2" + autoload :JsonRpc, "#{SRC}/plugins/protocols/json_rpc" + autoload :Query, "#{SRC}/plugins/protocols/query" + autoload :RestJson, "#{SRC}/plugins/protocols/rest_json" + autoload :RestXml, "#{SRC}/plugins/protocols/rest_xml" + end + + end + + # @api private + module Query + autoload :EC2ParamBuilder, "#{SRC}/query/ec2_param_builder" + autoload :Handler, "#{SRC}/query/handler" + autoload :Param, "#{SRC}/query/param" + autoload :ParamBuilder, "#{SRC}/query/param_builder" + autoload :ParamList, "#{SRC}/query/param_list" + end + + # @api private + module Signers + autoload :Base, "#{SRC}/signers/base" + autoload :Handler, "#{SRC}/signers/handler" + autoload :S3, "#{SRC}/signers/s3" + autoload :V2, "#{SRC}/signers/v2" + autoload :V3, "#{SRC}/signers/v3" + autoload :V4, "#{SRC}/signers/v4" + end + + module Waiters + autoload :Errors, "#{SRC}/waiters/errors" + autoload :NullProvider, "#{SRC}/waiters/null_provider" + autoload :Provider, "#{SRC}/waiters/provider" + autoload :Waiter, "#{SRC}/waiters/waiter" + end + + # @api private + module Xml + autoload :Builder, "#{SRC}/xml/builder" + autoload :DefaultList, "#{SRC}/xml/default_list" + autoload :ErrorHandler, "#{SRC}/xml/error_handler" + autoload :Parser, "#{SRC}/xml/parser" + autoload :RestHandler, "#{SRC}/xml/rest_handler" + end + + class << self + + # @return [Hash] Returns a hash of default configuration options shared + # by all constructed clients. + attr_reader :config + + # @param [Hash] config + def config=(config) + if Hash === config + @config = config + else + raise ArgumentError, 'configuration object must be a hash' + end + end + + # Yields to the given block for each service that has already been + # defined via {add_service}. Also yields to the given block for + # each new service added after the callback is registered. + # @api private + def service_added(&block) + callback = Proc.new + @services.each do |svc_name, (svc_module, options)| + yield(svc_name, svc_module, options) + end + @service_added_callbacks << callback + end + + # @api private + def load_json(path) + MultiJson.load(File.open(path, 'r', encoding: 'UTF-8') { |f| f.read }) + end + + # Registers a new service. + # + # Aws.add_service('SvcName', + # api: '/path/to/svc.api.json', + # paginators: '/path/to/svc.paginators.json', + # resources: '/path/to/svc.resources.json') + # + # Aws::SvcName::Client.new + # #=> # + # + # @param [String] svc_name The name of the service. This will also be + # the namespace under {Aws}. + # @option options[required,String,Hash,Seahorse::Model::Api] :api + # @option options[String,Hash,Paging::Provider] :paginators + # @option options[String] :resources + # @yieldparam [String] svc_name + # @yieldparam [Module] svc_module + # @yieldparam [Hash] svc_files + # @return [Module] + def add_service(svc_name, options = {}) + svc_module = Module.new { extend Service } + const_set(svc_name, svc_module) + @services[svc_name] = [svc_module, options] + @service_added_callbacks.each do |callback| + callback.call(svc_name.to_s, *@services[svc_name]) + end + svc_module + end + + # @api private + def load_all_services + SERVICE_MODULE_NAMES.each do |const_name| + const_get(const_name) + end + end + + end + + # build service client classes + service_added do |name, svc_module, options| + svc_module.const_set(:Client, Client.define(name, options)) + svc_module.const_set(:Errors, Module.new { extend Errors::DynamicErrors }) + end + + # build service paginators + service_added do |name, svc_module, options| + paginators = options[:paginators] + paginators = case paginators + when Paging::Provider then paginators + when Hash then Paging::Provider.new(paginators) + when String then Paging::Provider.new(Aws.load_json(paginators)) + when nil then Paging::NullProvider.new + else raise ArgumentError, 'invalid :paginators option' + end + svc_module.const_get(:Client).paginators = paginators + end + + # build service waiters + service_added do |name, svc_module, options| + waiters = options[:waiters] + waiters = case waiters + when Waiters::Provider then waiters + when Hash then Waiters::Provider.new(waiters) + when String then Waiters::Provider.new(Aws.load_json(waiters)) + when nil then Waiters::NullProvider.new + else raise ArgumentError, 'invalid :waiters option' + end + if name == 'S3' + # temporary workaround for issue with S3 waiter definition + defs = waiters.instance_variable_get("@definitions") + defs[:bucket_exists]['ignore_errors'] = ['NotFound'] + defs[:object_exists]['ignore_errors'] = ['NotFound'] + defs[:bucket_not_exists]['success_value'] = 'NotFound' + defs[:object_not_exists]['success_value'] = 'NotFound' + end + svc_module.const_get(:Client).waiters = waiters + end + + # deprecated = define helper method for client class, this will be + # replaced eventually with a helper that returns a resource object + # for the service. + service_added do |name, svc_module, _| + method_name = name.downcase.to_sym + define_singleton_method(method_name) do |options={}| + unless instance_variable_get("@#{method_name}_warned") + instance_variable_set("@#{method_name}_warned", true) + msg = "Aws.#{method_name} is deprecated as of v2.0.0.rc14 and will be " + msg << "removed as of v2.0.0.0 final; use Aws::#{name}::Client.new " + msg << "instead" + warn(msg) + end + svc_module.const_get(:Client).new(options) + end + end + +end diff --git a/aws-sdk-core/lib/aws/api/customizer.rb b/aws-sdk-core/lib/aws-sdk-core/api/customizer.rb similarity index 100% rename from aws-sdk-core/lib/aws/api/customizer.rb rename to aws-sdk-core/lib/aws-sdk-core/api/customizer.rb diff --git a/aws-sdk-core/lib/aws/api/docstrings.rb b/aws-sdk-core/lib/aws-sdk-core/api/docstrings.rb similarity index 100% rename from aws-sdk-core/lib/aws/api/docstrings.rb rename to aws-sdk-core/lib/aws-sdk-core/api/docstrings.rb diff --git a/aws-sdk-core/lib/aws/api/documenter.rb b/aws-sdk-core/lib/aws-sdk-core/api/documenter.rb similarity index 100% rename from aws-sdk-core/lib/aws/api/documenter.rb rename to aws-sdk-core/lib/aws-sdk-core/api/documenter.rb diff --git a/aws-sdk-core/lib/aws/api/operation_documenter.rb b/aws-sdk-core/lib/aws-sdk-core/api/operation_documenter.rb similarity index 100% rename from aws-sdk-core/lib/aws/api/operation_documenter.rb rename to aws-sdk-core/lib/aws-sdk-core/api/operation_documenter.rb diff --git a/aws-sdk-core/lib/aws/api/operation_example.rb b/aws-sdk-core/lib/aws-sdk-core/api/operation_example.rb similarity index 100% rename from aws-sdk-core/lib/aws/api/operation_example.rb rename to aws-sdk-core/lib/aws-sdk-core/api/operation_example.rb diff --git a/aws-sdk-core/lib/aws/api/service_customizations.rb b/aws-sdk-core/lib/aws-sdk-core/api/service_customizations.rb similarity index 100% rename from aws-sdk-core/lib/aws/api/service_customizations.rb rename to aws-sdk-core/lib/aws-sdk-core/api/service_customizations.rb diff --git a/aws-sdk-core/lib/aws/autoscaling.rb b/aws-sdk-core/lib/aws-sdk-core/autoscaling.rb similarity index 100% rename from aws-sdk-core/lib/aws/autoscaling.rb rename to aws-sdk-core/lib/aws-sdk-core/autoscaling.rb diff --git a/aws-sdk-core/lib/aws/client.rb b/aws-sdk-core/lib/aws-sdk-core/client.rb similarity index 100% rename from aws-sdk-core/lib/aws/client.rb rename to aws-sdk-core/lib/aws-sdk-core/client.rb diff --git a/aws-sdk-core/lib/aws/cloudformation.rb b/aws-sdk-core/lib/aws-sdk-core/cloudformation.rb similarity index 100% rename from aws-sdk-core/lib/aws/cloudformation.rb rename to aws-sdk-core/lib/aws-sdk-core/cloudformation.rb diff --git a/aws-sdk-core/lib/aws/cloudfront.rb b/aws-sdk-core/lib/aws-sdk-core/cloudfront.rb similarity index 100% rename from aws-sdk-core/lib/aws/cloudfront.rb rename to aws-sdk-core/lib/aws-sdk-core/cloudfront.rb diff --git a/aws-sdk-core/lib/aws/cloudsearch.rb b/aws-sdk-core/lib/aws-sdk-core/cloudsearch.rb similarity index 100% rename from aws-sdk-core/lib/aws/cloudsearch.rb rename to aws-sdk-core/lib/aws-sdk-core/cloudsearch.rb diff --git a/aws-sdk-core/lib/aws/cloudsearchdomain.rb b/aws-sdk-core/lib/aws-sdk-core/cloudsearchdomain.rb similarity index 100% rename from aws-sdk-core/lib/aws/cloudsearchdomain.rb rename to aws-sdk-core/lib/aws-sdk-core/cloudsearchdomain.rb diff --git a/aws-sdk-core/lib/aws/cloudtrail.rb b/aws-sdk-core/lib/aws-sdk-core/cloudtrail.rb similarity index 100% rename from aws-sdk-core/lib/aws/cloudtrail.rb rename to aws-sdk-core/lib/aws-sdk-core/cloudtrail.rb diff --git a/aws-sdk-core/lib/aws/cloudwatch.rb b/aws-sdk-core/lib/aws-sdk-core/cloudwatch.rb similarity index 100% rename from aws-sdk-core/lib/aws/cloudwatch.rb rename to aws-sdk-core/lib/aws-sdk-core/cloudwatch.rb diff --git a/aws-sdk-core/lib/aws/cloudwatchlogs.rb b/aws-sdk-core/lib/aws-sdk-core/cloudwatchlogs.rb similarity index 100% rename from aws-sdk-core/lib/aws/cloudwatchlogs.rb rename to aws-sdk-core/lib/aws-sdk-core/cloudwatchlogs.rb diff --git a/aws-sdk-core/lib/aws/cognitoidentity.rb b/aws-sdk-core/lib/aws-sdk-core/cognitoidentity.rb similarity index 100% rename from aws-sdk-core/lib/aws/cognitoidentity.rb rename to aws-sdk-core/lib/aws-sdk-core/cognitoidentity.rb diff --git a/aws-sdk-core/lib/aws/cognitosync.rb b/aws-sdk-core/lib/aws-sdk-core/cognitosync.rb similarity index 100% rename from aws-sdk-core/lib/aws/cognitosync.rb rename to aws-sdk-core/lib/aws-sdk-core/cognitosync.rb diff --git a/aws-sdk-core/lib/aws/credential_provider_chain.rb b/aws-sdk-core/lib/aws-sdk-core/credential_provider_chain.rb similarity index 100% rename from aws-sdk-core/lib/aws/credential_provider_chain.rb rename to aws-sdk-core/lib/aws-sdk-core/credential_provider_chain.rb diff --git a/aws-sdk-core/lib/aws/credentials.rb b/aws-sdk-core/lib/aws-sdk-core/credentials.rb similarity index 100% rename from aws-sdk-core/lib/aws/credentials.rb rename to aws-sdk-core/lib/aws-sdk-core/credentials.rb diff --git a/aws-sdk-core/lib/aws/datapipeline.rb b/aws-sdk-core/lib/aws-sdk-core/datapipeline.rb similarity index 100% rename from aws-sdk-core/lib/aws/datapipeline.rb rename to aws-sdk-core/lib/aws-sdk-core/datapipeline.rb diff --git a/aws-sdk-core/lib/aws/directconnect.rb b/aws-sdk-core/lib/aws-sdk-core/directconnect.rb similarity index 100% rename from aws-sdk-core/lib/aws/directconnect.rb rename to aws-sdk-core/lib/aws-sdk-core/directconnect.rb diff --git a/aws-sdk-core/lib/aws/dynamodb.rb b/aws-sdk-core/lib/aws-sdk-core/dynamodb.rb similarity index 100% rename from aws-sdk-core/lib/aws/dynamodb.rb rename to aws-sdk-core/lib/aws-sdk-core/dynamodb.rb diff --git a/aws-sdk-core/lib/aws/dynamodb/attribute_value.rb b/aws-sdk-core/lib/aws-sdk-core/dynamodb/attribute_value.rb similarity index 100% rename from aws-sdk-core/lib/aws/dynamodb/attribute_value.rb rename to aws-sdk-core/lib/aws-sdk-core/dynamodb/attribute_value.rb diff --git a/aws-sdk-core/lib/aws/ec2.rb b/aws-sdk-core/lib/aws-sdk-core/ec2.rb similarity index 100% rename from aws-sdk-core/lib/aws/ec2.rb rename to aws-sdk-core/lib/aws-sdk-core/ec2.rb diff --git a/aws-sdk-core/lib/aws/elasticache.rb b/aws-sdk-core/lib/aws-sdk-core/elasticache.rb similarity index 100% rename from aws-sdk-core/lib/aws/elasticache.rb rename to aws-sdk-core/lib/aws-sdk-core/elasticache.rb diff --git a/aws-sdk-core/lib/aws/elasticbeanstalk.rb b/aws-sdk-core/lib/aws-sdk-core/elasticbeanstalk.rb similarity index 100% rename from aws-sdk-core/lib/aws/elasticbeanstalk.rb rename to aws-sdk-core/lib/aws-sdk-core/elasticbeanstalk.rb diff --git a/aws-sdk-core/lib/aws/elasticloadbalancing.rb b/aws-sdk-core/lib/aws-sdk-core/elasticloadbalancing.rb similarity index 100% rename from aws-sdk-core/lib/aws/elasticloadbalancing.rb rename to aws-sdk-core/lib/aws-sdk-core/elasticloadbalancing.rb diff --git a/aws-sdk-core/lib/aws/elastictranscoder.rb b/aws-sdk-core/lib/aws-sdk-core/elastictranscoder.rb similarity index 100% rename from aws-sdk-core/lib/aws/elastictranscoder.rb rename to aws-sdk-core/lib/aws-sdk-core/elastictranscoder.rb diff --git a/aws-sdk-core/lib/aws/empty_structure.rb b/aws-sdk-core/lib/aws-sdk-core/empty_structure.rb similarity index 100% rename from aws-sdk-core/lib/aws/empty_structure.rb rename to aws-sdk-core/lib/aws-sdk-core/empty_structure.rb diff --git a/aws-sdk-core/lib/aws/emr.rb b/aws-sdk-core/lib/aws-sdk-core/emr.rb similarity index 100% rename from aws-sdk-core/lib/aws/emr.rb rename to aws-sdk-core/lib/aws-sdk-core/emr.rb diff --git a/aws-sdk-core/lib/aws/endpoint_provider.rb b/aws-sdk-core/lib/aws-sdk-core/endpoint_provider.rb similarity index 100% rename from aws-sdk-core/lib/aws/endpoint_provider.rb rename to aws-sdk-core/lib/aws-sdk-core/endpoint_provider.rb diff --git a/aws-sdk-core/lib/aws/errors.rb b/aws-sdk-core/lib/aws-sdk-core/errors.rb similarity index 100% rename from aws-sdk-core/lib/aws/errors.rb rename to aws-sdk-core/lib/aws-sdk-core/errors.rb diff --git a/aws-sdk-core/lib/aws/glacier.rb b/aws-sdk-core/lib/aws-sdk-core/glacier.rb similarity index 100% rename from aws-sdk-core/lib/aws/glacier.rb rename to aws-sdk-core/lib/aws-sdk-core/glacier.rb diff --git a/aws-sdk-core/lib/aws/iam.rb b/aws-sdk-core/lib/aws-sdk-core/iam.rb similarity index 100% rename from aws-sdk-core/lib/aws/iam.rb rename to aws-sdk-core/lib/aws-sdk-core/iam.rb diff --git a/aws-sdk-core/lib/aws/importexport.rb b/aws-sdk-core/lib/aws-sdk-core/importexport.rb similarity index 100% rename from aws-sdk-core/lib/aws/importexport.rb rename to aws-sdk-core/lib/aws-sdk-core/importexport.rb diff --git a/aws-sdk-core/lib/aws/instance_profile_credentials.rb b/aws-sdk-core/lib/aws-sdk-core/instance_profile_credentials.rb similarity index 100% rename from aws-sdk-core/lib/aws/instance_profile_credentials.rb rename to aws-sdk-core/lib/aws-sdk-core/instance_profile_credentials.rb diff --git a/aws-sdk-core/lib/aws/json/builder.rb b/aws-sdk-core/lib/aws-sdk-core/json/builder.rb similarity index 100% rename from aws-sdk-core/lib/aws/json/builder.rb rename to aws-sdk-core/lib/aws-sdk-core/json/builder.rb diff --git a/aws-sdk-core/lib/aws/json/error_handler.rb b/aws-sdk-core/lib/aws-sdk-core/json/error_handler.rb similarity index 100% rename from aws-sdk-core/lib/aws/json/error_handler.rb rename to aws-sdk-core/lib/aws-sdk-core/json/error_handler.rb diff --git a/aws-sdk-core/lib/aws/json/parser.rb b/aws-sdk-core/lib/aws-sdk-core/json/parser.rb similarity index 100% rename from aws-sdk-core/lib/aws/json/parser.rb rename to aws-sdk-core/lib/aws-sdk-core/json/parser.rb diff --git a/aws-sdk-core/lib/aws/json/rest_handler.rb b/aws-sdk-core/lib/aws-sdk-core/json/rest_handler.rb similarity index 100% rename from aws-sdk-core/lib/aws/json/rest_handler.rb rename to aws-sdk-core/lib/aws-sdk-core/json/rest_handler.rb diff --git a/aws-sdk-core/lib/aws/json/rpc_body_handler.rb b/aws-sdk-core/lib/aws-sdk-core/json/rpc_body_handler.rb similarity index 100% rename from aws-sdk-core/lib/aws/json/rpc_body_handler.rb rename to aws-sdk-core/lib/aws-sdk-core/json/rpc_body_handler.rb diff --git a/aws-sdk-core/lib/aws/json/rpc_headers_handler.rb b/aws-sdk-core/lib/aws-sdk-core/json/rpc_headers_handler.rb similarity index 100% rename from aws-sdk-core/lib/aws/json/rpc_headers_handler.rb rename to aws-sdk-core/lib/aws-sdk-core/json/rpc_headers_handler.rb diff --git a/aws-sdk-core/lib/aws/json/simple_body_handler.rb b/aws-sdk-core/lib/aws-sdk-core/json/simple_body_handler.rb similarity index 100% rename from aws-sdk-core/lib/aws/json/simple_body_handler.rb rename to aws-sdk-core/lib/aws-sdk-core/json/simple_body_handler.rb diff --git a/aws-sdk-core/lib/aws/kinesis.rb b/aws-sdk-core/lib/aws-sdk-core/kinesis.rb similarity index 100% rename from aws-sdk-core/lib/aws/kinesis.rb rename to aws-sdk-core/lib/aws-sdk-core/kinesis.rb diff --git a/aws-sdk-core/lib/aws/opsworks.rb b/aws-sdk-core/lib/aws-sdk-core/opsworks.rb similarity index 100% rename from aws-sdk-core/lib/aws/opsworks.rb rename to aws-sdk-core/lib/aws-sdk-core/opsworks.rb diff --git a/aws-sdk-core/lib/aws/pageable_response.rb b/aws-sdk-core/lib/aws-sdk-core/pageable_response.rb similarity index 100% rename from aws-sdk-core/lib/aws/pageable_response.rb rename to aws-sdk-core/lib/aws-sdk-core/pageable_response.rb diff --git a/aws-sdk-core/lib/aws/paging/null_pager.rb b/aws-sdk-core/lib/aws-sdk-core/paging/null_pager.rb similarity index 100% rename from aws-sdk-core/lib/aws/paging/null_pager.rb rename to aws-sdk-core/lib/aws-sdk-core/paging/null_pager.rb diff --git a/aws-sdk-core/lib/aws/paging/null_provider.rb b/aws-sdk-core/lib/aws-sdk-core/paging/null_provider.rb similarity index 100% rename from aws-sdk-core/lib/aws/paging/null_provider.rb rename to aws-sdk-core/lib/aws-sdk-core/paging/null_provider.rb diff --git a/aws-sdk-core/lib/aws/paging/pager.rb b/aws-sdk-core/lib/aws-sdk-core/paging/pager.rb similarity index 100% rename from aws-sdk-core/lib/aws/paging/pager.rb rename to aws-sdk-core/lib/aws-sdk-core/paging/pager.rb diff --git a/aws-sdk-core/lib/aws/paging/provider.rb b/aws-sdk-core/lib/aws-sdk-core/paging/provider.rb similarity index 100% rename from aws-sdk-core/lib/aws/paging/provider.rb rename to aws-sdk-core/lib/aws-sdk-core/paging/provider.rb diff --git a/aws-sdk-core/lib/aws/plugins/csd_conditional_signing.rb b/aws-sdk-core/lib/aws-sdk-core/plugins/csd_conditional_signing.rb similarity index 100% rename from aws-sdk-core/lib/aws/plugins/csd_conditional_signing.rb rename to aws-sdk-core/lib/aws-sdk-core/plugins/csd_conditional_signing.rb diff --git a/aws-sdk-core/lib/aws/plugins/dynamodb_extended_retries.rb b/aws-sdk-core/lib/aws-sdk-core/plugins/dynamodb_extended_retries.rb similarity index 100% rename from aws-sdk-core/lib/aws/plugins/dynamodb_extended_retries.rb rename to aws-sdk-core/lib/aws-sdk-core/plugins/dynamodb_extended_retries.rb diff --git a/aws-sdk-core/lib/aws/plugins/dynamodb_simple_attributes.rb b/aws-sdk-core/lib/aws-sdk-core/plugins/dynamodb_simple_attributes.rb similarity index 100% rename from aws-sdk-core/lib/aws/plugins/dynamodb_simple_attributes.rb rename to aws-sdk-core/lib/aws-sdk-core/plugins/dynamodb_simple_attributes.rb diff --git a/aws-sdk-core/lib/aws/plugins/ec2_copy_encrypted_snapshot.rb b/aws-sdk-core/lib/aws-sdk-core/plugins/ec2_copy_encrypted_snapshot.rb similarity index 100% rename from aws-sdk-core/lib/aws/plugins/ec2_copy_encrypted_snapshot.rb rename to aws-sdk-core/lib/aws-sdk-core/plugins/ec2_copy_encrypted_snapshot.rb diff --git a/aws-sdk-core/lib/aws/plugins/glacier_account_id.rb b/aws-sdk-core/lib/aws-sdk-core/plugins/glacier_account_id.rb similarity index 100% rename from aws-sdk-core/lib/aws/plugins/glacier_account_id.rb rename to aws-sdk-core/lib/aws-sdk-core/plugins/glacier_account_id.rb diff --git a/aws-sdk-core/lib/aws/plugins/glacier_api_version.rb b/aws-sdk-core/lib/aws-sdk-core/plugins/glacier_api_version.rb similarity index 100% rename from aws-sdk-core/lib/aws/plugins/glacier_api_version.rb rename to aws-sdk-core/lib/aws-sdk-core/plugins/glacier_api_version.rb diff --git a/aws-sdk-core/lib/aws/plugins/glacier_checksums.rb b/aws-sdk-core/lib/aws-sdk-core/plugins/glacier_checksums.rb similarity index 100% rename from aws-sdk-core/lib/aws/plugins/glacier_checksums.rb rename to aws-sdk-core/lib/aws-sdk-core/plugins/glacier_checksums.rb diff --git a/aws-sdk-core/lib/aws/plugins/global_configuration.rb b/aws-sdk-core/lib/aws-sdk-core/plugins/global_configuration.rb similarity index 100% rename from aws-sdk-core/lib/aws/plugins/global_configuration.rb rename to aws-sdk-core/lib/aws-sdk-core/plugins/global_configuration.rb diff --git a/aws-sdk-core/lib/aws/plugins/protocols/ec2.rb b/aws-sdk-core/lib/aws-sdk-core/plugins/protocols/ec2.rb similarity index 100% rename from aws-sdk-core/lib/aws/plugins/protocols/ec2.rb rename to aws-sdk-core/lib/aws-sdk-core/plugins/protocols/ec2.rb diff --git a/aws-sdk-core/lib/aws/plugins/protocols/json_rpc.rb b/aws-sdk-core/lib/aws-sdk-core/plugins/protocols/json_rpc.rb similarity index 100% rename from aws-sdk-core/lib/aws/plugins/protocols/json_rpc.rb rename to aws-sdk-core/lib/aws-sdk-core/plugins/protocols/json_rpc.rb diff --git a/aws-sdk-core/lib/aws/plugins/protocols/query.rb b/aws-sdk-core/lib/aws-sdk-core/plugins/protocols/query.rb similarity index 100% rename from aws-sdk-core/lib/aws/plugins/protocols/query.rb rename to aws-sdk-core/lib/aws-sdk-core/plugins/protocols/query.rb diff --git a/aws-sdk-core/lib/aws/plugins/protocols/rest_json.rb b/aws-sdk-core/lib/aws-sdk-core/plugins/protocols/rest_json.rb similarity index 100% rename from aws-sdk-core/lib/aws/plugins/protocols/rest_json.rb rename to aws-sdk-core/lib/aws-sdk-core/plugins/protocols/rest_json.rb diff --git a/aws-sdk-core/lib/aws/plugins/protocols/rest_xml.rb b/aws-sdk-core/lib/aws-sdk-core/plugins/protocols/rest_xml.rb similarity index 100% rename from aws-sdk-core/lib/aws/plugins/protocols/rest_xml.rb rename to aws-sdk-core/lib/aws-sdk-core/plugins/protocols/rest_xml.rb diff --git a/aws-sdk-core/lib/aws/plugins/regional_endpoint.rb b/aws-sdk-core/lib/aws-sdk-core/plugins/regional_endpoint.rb similarity index 100% rename from aws-sdk-core/lib/aws/plugins/regional_endpoint.rb rename to aws-sdk-core/lib/aws-sdk-core/plugins/regional_endpoint.rb diff --git a/aws-sdk-core/lib/aws/plugins/request_signer.rb b/aws-sdk-core/lib/aws-sdk-core/plugins/request_signer.rb similarity index 100% rename from aws-sdk-core/lib/aws/plugins/request_signer.rb rename to aws-sdk-core/lib/aws-sdk-core/plugins/request_signer.rb diff --git a/aws-sdk-core/lib/aws/plugins/response_paging.rb b/aws-sdk-core/lib/aws-sdk-core/plugins/response_paging.rb similarity index 100% rename from aws-sdk-core/lib/aws/plugins/response_paging.rb rename to aws-sdk-core/lib/aws-sdk-core/plugins/response_paging.rb diff --git a/aws-sdk-core/lib/aws/plugins/retry_errors.rb b/aws-sdk-core/lib/aws-sdk-core/plugins/retry_errors.rb similarity index 100% rename from aws-sdk-core/lib/aws/plugins/retry_errors.rb rename to aws-sdk-core/lib/aws-sdk-core/plugins/retry_errors.rb diff --git a/aws-sdk-core/lib/aws/plugins/route_53_id_fix.rb b/aws-sdk-core/lib/aws-sdk-core/plugins/route_53_id_fix.rb similarity index 100% rename from aws-sdk-core/lib/aws/plugins/route_53_id_fix.rb rename to aws-sdk-core/lib/aws-sdk-core/plugins/route_53_id_fix.rb diff --git a/aws-sdk-core/lib/aws/plugins/s3_bucket_dns.rb b/aws-sdk-core/lib/aws-sdk-core/plugins/s3_bucket_dns.rb similarity index 100% rename from aws-sdk-core/lib/aws/plugins/s3_bucket_dns.rb rename to aws-sdk-core/lib/aws-sdk-core/plugins/s3_bucket_dns.rb diff --git a/aws-sdk-core/lib/aws/plugins/s3_complete_multipart_upload_fix.rb b/aws-sdk-core/lib/aws-sdk-core/plugins/s3_complete_multipart_upload_fix.rb similarity index 100% rename from aws-sdk-core/lib/aws/plugins/s3_complete_multipart_upload_fix.rb rename to aws-sdk-core/lib/aws-sdk-core/plugins/s3_complete_multipart_upload_fix.rb diff --git a/aws-sdk-core/lib/aws/plugins/s3_expect_100_continue.rb b/aws-sdk-core/lib/aws-sdk-core/plugins/s3_expect_100_continue.rb similarity index 100% rename from aws-sdk-core/lib/aws/plugins/s3_expect_100_continue.rb rename to aws-sdk-core/lib/aws-sdk-core/plugins/s3_expect_100_continue.rb diff --git a/aws-sdk-core/lib/aws/plugins/s3_get_bucket_location_fix.rb b/aws-sdk-core/lib/aws-sdk-core/plugins/s3_get_bucket_location_fix.rb similarity index 100% rename from aws-sdk-core/lib/aws/plugins/s3_get_bucket_location_fix.rb rename to aws-sdk-core/lib/aws-sdk-core/plugins/s3_get_bucket_location_fix.rb diff --git a/aws-sdk-core/lib/aws/plugins/s3_location_constraint.rb b/aws-sdk-core/lib/aws-sdk-core/plugins/s3_location_constraint.rb similarity index 100% rename from aws-sdk-core/lib/aws/plugins/s3_location_constraint.rb rename to aws-sdk-core/lib/aws-sdk-core/plugins/s3_location_constraint.rb diff --git a/aws-sdk-core/lib/aws/plugins/s3_md5s.rb b/aws-sdk-core/lib/aws-sdk-core/plugins/s3_md5s.rb similarity index 100% rename from aws-sdk-core/lib/aws/plugins/s3_md5s.rb rename to aws-sdk-core/lib/aws-sdk-core/plugins/s3_md5s.rb diff --git a/aws-sdk-core/lib/aws/plugins/s3_redirects.rb b/aws-sdk-core/lib/aws-sdk-core/plugins/s3_redirects.rb similarity index 100% rename from aws-sdk-core/lib/aws/plugins/s3_redirects.rb rename to aws-sdk-core/lib/aws-sdk-core/plugins/s3_redirects.rb diff --git a/aws-sdk-core/lib/aws/plugins/s3_sse_cpk.rb b/aws-sdk-core/lib/aws-sdk-core/plugins/s3_sse_cpk.rb similarity index 100% rename from aws-sdk-core/lib/aws/plugins/s3_sse_cpk.rb rename to aws-sdk-core/lib/aws-sdk-core/plugins/s3_sse_cpk.rb diff --git a/aws-sdk-core/lib/aws/plugins/s3_url_encoded_keys.rb b/aws-sdk-core/lib/aws-sdk-core/plugins/s3_url_encoded_keys.rb similarity index 100% rename from aws-sdk-core/lib/aws/plugins/s3_url_encoded_keys.rb rename to aws-sdk-core/lib/aws-sdk-core/plugins/s3_url_encoded_keys.rb diff --git a/aws-sdk-core/lib/aws/plugins/sqs_queue_urls.rb b/aws-sdk-core/lib/aws-sdk-core/plugins/sqs_queue_urls.rb similarity index 100% rename from aws-sdk-core/lib/aws/plugins/sqs_queue_urls.rb rename to aws-sdk-core/lib/aws-sdk-core/plugins/sqs_queue_urls.rb diff --git a/aws-sdk-core/lib/aws/plugins/swf_read_timeouts.rb b/aws-sdk-core/lib/aws-sdk-core/plugins/swf_read_timeouts.rb similarity index 100% rename from aws-sdk-core/lib/aws/plugins/swf_read_timeouts.rb rename to aws-sdk-core/lib/aws-sdk-core/plugins/swf_read_timeouts.rb diff --git a/aws-sdk-core/lib/aws/plugins/user_agent.rb b/aws-sdk-core/lib/aws-sdk-core/plugins/user_agent.rb similarity index 100% rename from aws-sdk-core/lib/aws/plugins/user_agent.rb rename to aws-sdk-core/lib/aws-sdk-core/plugins/user_agent.rb diff --git a/aws-sdk-core/lib/aws/query/ec2_param_builder.rb b/aws-sdk-core/lib/aws-sdk-core/query/ec2_param_builder.rb similarity index 100% rename from aws-sdk-core/lib/aws/query/ec2_param_builder.rb rename to aws-sdk-core/lib/aws-sdk-core/query/ec2_param_builder.rb diff --git a/aws-sdk-core/lib/aws/query/handler.rb b/aws-sdk-core/lib/aws-sdk-core/query/handler.rb similarity index 100% rename from aws-sdk-core/lib/aws/query/handler.rb rename to aws-sdk-core/lib/aws-sdk-core/query/handler.rb diff --git a/aws-sdk-core/lib/aws/query/param.rb b/aws-sdk-core/lib/aws-sdk-core/query/param.rb similarity index 100% rename from aws-sdk-core/lib/aws/query/param.rb rename to aws-sdk-core/lib/aws-sdk-core/query/param.rb diff --git a/aws-sdk-core/lib/aws/query/param_builder.rb b/aws-sdk-core/lib/aws-sdk-core/query/param_builder.rb similarity index 100% rename from aws-sdk-core/lib/aws/query/param_builder.rb rename to aws-sdk-core/lib/aws-sdk-core/query/param_builder.rb diff --git a/aws-sdk-core/lib/aws/query/param_list.rb b/aws-sdk-core/lib/aws-sdk-core/query/param_list.rb similarity index 100% rename from aws-sdk-core/lib/aws/query/param_list.rb rename to aws-sdk-core/lib/aws-sdk-core/query/param_list.rb diff --git a/aws-sdk-core/lib/aws/rds.rb b/aws-sdk-core/lib/aws-sdk-core/rds.rb similarity index 100% rename from aws-sdk-core/lib/aws/rds.rb rename to aws-sdk-core/lib/aws-sdk-core/rds.rb diff --git a/aws-sdk-core/lib/aws/redshift.rb b/aws-sdk-core/lib/aws-sdk-core/redshift.rb similarity index 100% rename from aws-sdk-core/lib/aws/redshift.rb rename to aws-sdk-core/lib/aws-sdk-core/redshift.rb diff --git a/aws-sdk-core/lib/aws/rest_body_handler.rb b/aws-sdk-core/lib/aws-sdk-core/rest_body_handler.rb similarity index 100% rename from aws-sdk-core/lib/aws/rest_body_handler.rb rename to aws-sdk-core/lib/aws-sdk-core/rest_body_handler.rb diff --git a/aws-sdk-core/lib/aws/route53.rb b/aws-sdk-core/lib/aws-sdk-core/route53.rb similarity index 100% rename from aws-sdk-core/lib/aws/route53.rb rename to aws-sdk-core/lib/aws-sdk-core/route53.rb diff --git a/aws-sdk-core/lib/aws/route53domains.rb b/aws-sdk-core/lib/aws-sdk-core/route53domains.rb similarity index 100% rename from aws-sdk-core/lib/aws/route53domains.rb rename to aws-sdk-core/lib/aws-sdk-core/route53domains.rb diff --git a/aws-sdk-core/lib/aws/s3.rb b/aws-sdk-core/lib/aws-sdk-core/s3.rb similarity index 100% rename from aws-sdk-core/lib/aws/s3.rb rename to aws-sdk-core/lib/aws-sdk-core/s3.rb diff --git a/aws-sdk-core/lib/aws/s3/presigner.rb b/aws-sdk-core/lib/aws-sdk-core/s3/presigner.rb similarity index 100% rename from aws-sdk-core/lib/aws/s3/presigner.rb rename to aws-sdk-core/lib/aws-sdk-core/s3/presigner.rb diff --git a/aws-sdk-core/lib/aws/service.rb b/aws-sdk-core/lib/aws-sdk-core/service.rb similarity index 100% rename from aws-sdk-core/lib/aws/service.rb rename to aws-sdk-core/lib/aws-sdk-core/service.rb diff --git a/aws-sdk-core/lib/aws/ses.rb b/aws-sdk-core/lib/aws-sdk-core/ses.rb similarity index 100% rename from aws-sdk-core/lib/aws/ses.rb rename to aws-sdk-core/lib/aws-sdk-core/ses.rb diff --git a/aws-sdk-core/lib/aws/shared_credentials.rb b/aws-sdk-core/lib/aws-sdk-core/shared_credentials.rb similarity index 100% rename from aws-sdk-core/lib/aws/shared_credentials.rb rename to aws-sdk-core/lib/aws-sdk-core/shared_credentials.rb diff --git a/aws-sdk-core/lib/aws/signers/base.rb b/aws-sdk-core/lib/aws-sdk-core/signers/base.rb similarity index 100% rename from aws-sdk-core/lib/aws/signers/base.rb rename to aws-sdk-core/lib/aws-sdk-core/signers/base.rb diff --git a/aws-sdk-core/lib/aws/signers/handler.rb b/aws-sdk-core/lib/aws-sdk-core/signers/handler.rb similarity index 100% rename from aws-sdk-core/lib/aws/signers/handler.rb rename to aws-sdk-core/lib/aws-sdk-core/signers/handler.rb diff --git a/aws-sdk-core/lib/aws/signers/s3.rb b/aws-sdk-core/lib/aws-sdk-core/signers/s3.rb similarity index 100% rename from aws-sdk-core/lib/aws/signers/s3.rb rename to aws-sdk-core/lib/aws-sdk-core/signers/s3.rb diff --git a/aws-sdk-core/lib/aws/signers/v2.rb b/aws-sdk-core/lib/aws-sdk-core/signers/v2.rb similarity index 100% rename from aws-sdk-core/lib/aws/signers/v2.rb rename to aws-sdk-core/lib/aws-sdk-core/signers/v2.rb diff --git a/aws-sdk-core/lib/aws/signers/v3.rb b/aws-sdk-core/lib/aws-sdk-core/signers/v3.rb similarity index 100% rename from aws-sdk-core/lib/aws/signers/v3.rb rename to aws-sdk-core/lib/aws-sdk-core/signers/v3.rb diff --git a/aws-sdk-core/lib/aws/signers/v4.rb b/aws-sdk-core/lib/aws-sdk-core/signers/v4.rb similarity index 100% rename from aws-sdk-core/lib/aws/signers/v4.rb rename to aws-sdk-core/lib/aws-sdk-core/signers/v4.rb diff --git a/aws-sdk-core/lib/aws/simpledb.rb b/aws-sdk-core/lib/aws-sdk-core/simpledb.rb similarity index 100% rename from aws-sdk-core/lib/aws/simpledb.rb rename to aws-sdk-core/lib/aws-sdk-core/simpledb.rb diff --git a/aws-sdk-core/lib/aws/sns.rb b/aws-sdk-core/lib/aws-sdk-core/sns.rb similarity index 100% rename from aws-sdk-core/lib/aws/sns.rb rename to aws-sdk-core/lib/aws-sdk-core/sns.rb diff --git a/aws-sdk-core/lib/aws/sqs.rb b/aws-sdk-core/lib/aws-sdk-core/sqs.rb similarity index 100% rename from aws-sdk-core/lib/aws/sqs.rb rename to aws-sdk-core/lib/aws-sdk-core/sqs.rb diff --git a/aws-sdk-core/lib/aws/storagegateway.rb b/aws-sdk-core/lib/aws-sdk-core/storagegateway.rb similarity index 100% rename from aws-sdk-core/lib/aws/storagegateway.rb rename to aws-sdk-core/lib/aws-sdk-core/storagegateway.rb diff --git a/aws-sdk-core/lib/aws/structure.rb b/aws-sdk-core/lib/aws-sdk-core/structure.rb similarity index 100% rename from aws-sdk-core/lib/aws/structure.rb rename to aws-sdk-core/lib/aws-sdk-core/structure.rb diff --git a/aws-sdk-core/lib/aws/sts.rb b/aws-sdk-core/lib/aws-sdk-core/sts.rb similarity index 100% rename from aws-sdk-core/lib/aws/sts.rb rename to aws-sdk-core/lib/aws-sdk-core/sts.rb diff --git a/aws-sdk-core/lib/aws/support.rb b/aws-sdk-core/lib/aws-sdk-core/support.rb similarity index 100% rename from aws-sdk-core/lib/aws/support.rb rename to aws-sdk-core/lib/aws-sdk-core/support.rb diff --git a/aws-sdk-core/lib/aws/swf.rb b/aws-sdk-core/lib/aws-sdk-core/swf.rb similarity index 100% rename from aws-sdk-core/lib/aws/swf.rb rename to aws-sdk-core/lib/aws-sdk-core/swf.rb diff --git a/aws-sdk-core/lib/aws/tree_hash.rb b/aws-sdk-core/lib/aws-sdk-core/tree_hash.rb similarity index 100% rename from aws-sdk-core/lib/aws/tree_hash.rb rename to aws-sdk-core/lib/aws-sdk-core/tree_hash.rb diff --git a/aws-sdk-core/lib/aws/version.rb b/aws-sdk-core/lib/aws-sdk-core/version.rb similarity index 100% rename from aws-sdk-core/lib/aws/version.rb rename to aws-sdk-core/lib/aws-sdk-core/version.rb diff --git a/aws-sdk-core/lib/aws/waiters/errors.rb b/aws-sdk-core/lib/aws-sdk-core/waiters/errors.rb similarity index 100% rename from aws-sdk-core/lib/aws/waiters/errors.rb rename to aws-sdk-core/lib/aws-sdk-core/waiters/errors.rb diff --git a/aws-sdk-core/lib/aws/waiters/null_provider.rb b/aws-sdk-core/lib/aws-sdk-core/waiters/null_provider.rb similarity index 100% rename from aws-sdk-core/lib/aws/waiters/null_provider.rb rename to aws-sdk-core/lib/aws-sdk-core/waiters/null_provider.rb diff --git a/aws-sdk-core/lib/aws/waiters/provider.rb b/aws-sdk-core/lib/aws-sdk-core/waiters/provider.rb similarity index 100% rename from aws-sdk-core/lib/aws/waiters/provider.rb rename to aws-sdk-core/lib/aws-sdk-core/waiters/provider.rb diff --git a/aws-sdk-core/lib/aws/waiters/waiter.rb b/aws-sdk-core/lib/aws-sdk-core/waiters/waiter.rb similarity index 100% rename from aws-sdk-core/lib/aws/waiters/waiter.rb rename to aws-sdk-core/lib/aws-sdk-core/waiters/waiter.rb diff --git a/aws-sdk-core/lib/aws/xml/builder.rb b/aws-sdk-core/lib/aws-sdk-core/xml/builder.rb similarity index 100% rename from aws-sdk-core/lib/aws/xml/builder.rb rename to aws-sdk-core/lib/aws-sdk-core/xml/builder.rb diff --git a/aws-sdk-core/lib/aws/xml/default_list.rb b/aws-sdk-core/lib/aws-sdk-core/xml/default_list.rb similarity index 100% rename from aws-sdk-core/lib/aws/xml/default_list.rb rename to aws-sdk-core/lib/aws-sdk-core/xml/default_list.rb diff --git a/aws-sdk-core/lib/aws/xml/error_handler.rb b/aws-sdk-core/lib/aws-sdk-core/xml/error_handler.rb similarity index 100% rename from aws-sdk-core/lib/aws/xml/error_handler.rb rename to aws-sdk-core/lib/aws-sdk-core/xml/error_handler.rb diff --git a/aws-sdk-core/lib/aws/xml/parser.rb b/aws-sdk-core/lib/aws-sdk-core/xml/parser.rb similarity index 100% rename from aws-sdk-core/lib/aws/xml/parser.rb rename to aws-sdk-core/lib/aws-sdk-core/xml/parser.rb diff --git a/aws-sdk-core/lib/aws/xml/rest_handler.rb b/aws-sdk-core/lib/aws-sdk-core/xml/rest_handler.rb similarity index 100% rename from aws-sdk-core/lib/aws/xml/rest_handler.rb rename to aws-sdk-core/lib/aws-sdk-core/xml/rest_handler.rb diff --git a/aws-sdk-core/lib/aws.rb b/aws-sdk-core/lib/aws.rb deleted file mode 100644 index dda0014f..00000000 --- a/aws-sdk-core/lib/aws.rb +++ /dev/null @@ -1,306 +0,0 @@ -require 'multi_json' - -module Aws - - # @api private - GEM_ROOT = File.dirname(File.dirname(__FILE__)) - - # @api private - SRC = File.join(GEM_ROOT, 'lib', 'aws') - - # @api private - # services - SERVICE_MODULE_NAMES = %w( - AutoScaling - CloudFormation - CloudFront - CloudSearch - CloudSearchDomain - CloudTrail - CloudWatch - CloudWatchLogs - CognitoIdentity - CognitoSync - DataPipeline - DirectConnect - DynamoDB - EC2 - ElastiCache - ElasticBeanstalk - ElasticLoadBalancing - ElasticTranscoder - EMR - Glacier - IAM - ImportExport - Kinesis - OpsWorks - RDS - Redshift - Route53 - Route53Domains - S3 - SES - SimpleDB - SNS - SQS - StorageGateway - STS - Support - SWF - ) - - @config = {} - @services = {} - @service_added_callbacks = [] - - SERVICE_MODULE_NAMES.each do |const_name| - autoload const_name, "#{SRC}/#{const_name.downcase}.rb" - end - - autoload :Client, "#{SRC}/client" - autoload :CredentialProviderChain, "#{SRC}/credential_provider_chain" - autoload :Credentials, "#{SRC}/credentials" - autoload :EmptyStructure, "#{SRC}/empty_structure" - autoload :EndpointProvider, "#{SRC}/endpoint_provider" - autoload :Errors, "#{SRC}/errors" - autoload :InstanceProfileCredentials, "#{SRC}/instance_profile_credentials" - autoload :PageableResponse, "#{SRC}/pageable_response" - autoload :RestBodyHandler, "#{SRC}/rest_body_handler" - autoload :Service, "#{SRC}/service" - autoload :SharedCredentials, "#{SRC}/shared_credentials" - autoload :Structure, "#{SRC}/structure" - autoload :TreeHash, "#{SRC}/tree_hash" - autoload :VERSION, "#{SRC}/version" - - # @api private - module Api - autoload :Customizer, "#{SRC}/api/customizer" - autoload :Documenter, "#{SRC}/api/documenter" - autoload :Docstrings, "#{SRC}/api/docstrings" - autoload :Manifest, "#{SRC}/api/manifest" - autoload :ManifestBuilder, "#{SRC}/api/manifest_builder" - autoload :OperationDocumenter, "#{SRC}/api/operation_documenter" - autoload :OperationExample, "#{SRC}/api/operation_example" - autoload :ServiceCustomizations, "#{SRC}/api/service_customizations" - end - - # @api private - module Json - autoload :Builder, "#{SRC}/json/builder" - autoload :ErrorHandler, "#{SRC}/json/error_handler" - autoload :Parser, "#{SRC}/json/parser" - autoload :RestHandler, "#{SRC}/json/rest_handler" - autoload :RpcBodyHandler, "#{SRC}/json/rpc_body_handler" - autoload :RpcHeadersHandler, "#{SRC}/json/rpc_headers_handler" - autoload :SimpleBodyHandler, "#{SRC}/json/simple_body_handler" - end - - # @api private - module Paging - autoload :NullPager, "#{SRC}/paging/null_pager" - autoload :NullProvider, "#{SRC}/paging/null_provider" - autoload :Pager, "#{SRC}/paging/pager" - autoload :Provider, "#{SRC}/paging/provider" - end - - module Plugins - autoload :CSDConditionalSigning, "#{SRC}/plugins/csd_conditional_signing" - autoload :DynamoDBExtendedRetries, "#{SRC}/plugins/dynamodb_extended_retries" - autoload :DynamoDBSimpleAttributes, "#{SRC}/plugins/dynamodb_simple_attributes" - autoload :EC2CopyEncryptedSnapshot, "#{SRC}/plugins/ec2_copy_encrypted_snapshot" - autoload :GlacierAccountId, "#{SRC}/plugins/glacier_account_id" - autoload :GlacierApiVersion, "#{SRC}/plugins/glacier_api_version" - autoload :GlacierChecksums, "#{SRC}/plugins/glacier_checksums" - autoload :GlobalConfiguration, "#{SRC}/plugins/global_configuration" - autoload :RegionalEndpoint, "#{SRC}/plugins/regional_endpoint" - autoload :ResponsePaging, "#{SRC}/plugins/response_paging" - autoload :RequestSigner, "#{SRC}/plugins/request_signer" - autoload :RetryErrors, "#{SRC}/plugins/retry_errors" - autoload :Route53IdFix, "#{SRC}/plugins/route_53_id_fix" - autoload :S3BucketDns, "#{SRC}/plugins/s3_bucket_dns" - autoload :S3CompleteMultipartUploadFix, "#{SRC}/plugins/s3_complete_multipart_upload_fix" - autoload :S3Expect100Continue, "#{SRC}/plugins/s3_expect_100_continue" - autoload :S3GetBucketLocationFix, "#{SRC}/plugins/s3_get_bucket_location_fix" - autoload :S3LocationConstraint, "#{SRC}/plugins/s3_location_constraint" - autoload :S3Md5s, "#{SRC}/plugins/s3_md5s" - autoload :S3Redirects, "#{SRC}/plugins/s3_redirects" - autoload :S3SseCpk, "#{SRC}/plugins/s3_sse_cpk" - autoload :S3UrlEncodedKeys, "#{SRC}/plugins/s3_url_encoded_keys" - autoload :SQSQueueUrls, "#{SRC}/plugins/sqs_queue_urls" - autoload :SWFReadTimeouts, "#{SRC}/plugins/swf_read_timeouts" - autoload :UserAgent, "#{SRC}/plugins/user_agent" - - module Protocols - autoload :EC2, "#{SRC}/plugins/protocols/ec2" - autoload :JsonRpc, "#{SRC}/plugins/protocols/json_rpc" - autoload :Query, "#{SRC}/plugins/protocols/query" - autoload :RestJson, "#{SRC}/plugins/protocols/rest_json" - autoload :RestXml, "#{SRC}/plugins/protocols/rest_xml" - end - - end - - # @api private - module Query - autoload :EC2ParamBuilder, "#{SRC}/query/ec2_param_builder" - autoload :Handler, "#{SRC}/query/handler" - autoload :Param, "#{SRC}/query/param" - autoload :ParamBuilder, "#{SRC}/query/param_builder" - autoload :ParamList, "#{SRC}/query/param_list" - end - - # @api private - module Signers - autoload :Base, "#{SRC}/signers/base" - autoload :Handler, "#{SRC}/signers/handler" - autoload :S3, "#{SRC}/signers/s3" - autoload :V2, "#{SRC}/signers/v2" - autoload :V3, "#{SRC}/signers/v3" - autoload :V4, "#{SRC}/signers/v4" - end - - module Waiters - autoload :Errors, "#{SRC}/waiters/errors" - autoload :NullProvider, "#{SRC}/waiters/null_provider" - autoload :Provider, "#{SRC}/waiters/provider" - autoload :Waiter, "#{SRC}/waiters/waiter" - end - - # @api private - module Xml - autoload :Builder, "#{SRC}/xml/builder" - autoload :DefaultList, "#{SRC}/xml/default_list" - autoload :ErrorHandler, "#{SRC}/xml/error_handler" - autoload :Parser, "#{SRC}/xml/parser" - autoload :RestHandler, "#{SRC}/xml/rest_handler" - end - - class << self - - # @return [Hash] Returns a hash of default configuration options shared - # by all constructed clients. - attr_reader :config - - # @param [Hash] config - def config=(config) - if Hash === config - @config = config - else - raise ArgumentError, 'configuration object must be a hash' - end - end - - # Yields to the given block for each service that has already been - # defined via {add_service}. Also yields to the given block for - # each new service added after the callback is registered. - # @api private - def service_added(&block) - callback = Proc.new - @services.each do |svc_name, (svc_module, options)| - yield(svc_name, svc_module, options) - end - @service_added_callbacks << callback - end - - # @api private - def load_json(path) - MultiJson.load(File.open(path, 'r', encoding: 'UTF-8') { |f| f.read }) - end - - # Registers a new service. - # - # Aws.add_service('SvcName', - # api: '/path/to/svc.api.json', - # paginators: '/path/to/svc.paginators.json', - # resources: '/path/to/svc.resources.json') - # - # Aws::SvcName::Client.new - # #=> # - # - # @param [String] svc_name The name of the service. This will also be - # the namespace under {Aws}. - # @option options[required,String,Hash,Seahorse::Model::Api] :api - # @option options[String,Hash,Paging::Provider] :paginators - # @option options[String] :resources - # @yieldparam [String] svc_name - # @yieldparam [Module] svc_module - # @yieldparam [Hash] svc_files - # @return [Module] - def add_service(svc_name, options = {}) - svc_module = Module.new { extend Service } - const_set(svc_name, svc_module) - @services[svc_name] = [svc_module, options] - @service_added_callbacks.each do |callback| - callback.call(svc_name.to_s, *@services[svc_name]) - end - svc_module - end - - # @api private - def load_all_services - SERVICE_MODULE_NAMES.each do |const_name| - const_get(const_name) - end - end - - end - - # build service client classes - service_added do |name, svc_module, options| - svc_module.const_set(:Client, Client.define(name, options)) - svc_module.const_set(:Errors, Module.new { extend Errors::DynamicErrors }) - end - - # build service paginators - service_added do |name, svc_module, options| - paginators = options[:paginators] - paginators = case paginators - when Paging::Provider then paginators - when Hash then Paging::Provider.new(paginators) - when String then Paging::Provider.new(Aws.load_json(paginators)) - when nil then Paging::NullProvider.new - else raise ArgumentError, 'invalid :paginators option' - end - svc_module.const_get(:Client).paginators = paginators - end - - # build service waiters - service_added do |name, svc_module, options| - waiters = options[:waiters] - waiters = case waiters - when Waiters::Provider then waiters - when Hash then Waiters::Provider.new(waiters) - when String then Waiters::Provider.new(Aws.load_json(waiters)) - when nil then Waiters::NullProvider.new - else raise ArgumentError, 'invalid :waiters option' - end - if name == 'S3' - # temporary workaround for issue with S3 waiter definition - defs = waiters.instance_variable_get("@definitions") - defs[:bucket_exists]['ignore_errors'] = ['NotFound'] - defs[:object_exists]['ignore_errors'] = ['NotFound'] - defs[:bucket_not_exists]['success_value'] = 'NotFound' - defs[:object_not_exists]['success_value'] = 'NotFound' - end - svc_module.const_get(:Client).waiters = waiters - end - - # deprecated = define helper method for client class, this will be - # replaced eventually with a helper that returns a resource object - # for the service. - service_added do |name, svc_module, _| - method_name = name.downcase.to_sym - define_singleton_method(method_name) do |options={}| - unless instance_variable_get("@#{method_name}_warned") - instance_variable_set("@#{method_name}_warned", true) - msg = "Aws.#{method_name} is deprecated as of v2.0.0.rc14 and will be " - msg << "removed as of v2.0.0.0 final; use Aws::#{name}::Client.new " - msg << "instead" - warn(msg) - end - svc_module.const_get(:Client).new(options) - end - end - -end From 9c84484740b8f6fc3c3ce8f8805bd320806993b5 Mon Sep 17 00:00:00 2001 From: Trevor Rowe Date: Fri, 19 Sep 2014 12:45:34 -0700 Subject: [PATCH 2/5] Moved the aws-sdk-resources gem code from lib/aws to lib/aws-sdk-resources. --- aws-sdk-resources/lib/aws-sdk-resources.rb | 29 ++++++++++--------- .../resource/base.rb | 0 .../resource/batch.rb | 0 .../resource/builder.rb | 1 - .../resource/builder_sources.rb | 1 - .../resource/collection.rb | 0 .../resource/definition.rb | 0 .../aws-sdk-resources/resource/documenter.rb | 18 ++++++++++++ .../documenter/base_operation_documenter.rb | 0 .../documenter/data_operation_documenter.rb | 0 .../enumerate_data_operation_documenter.rb | 0 ...enumerate_resource_operation_documenter.rb | 0 .../documenter/operation_documenter.rb | 0 .../reference_operation_documenter.rb | 0 .../resource_operation_documenter.rb | 0 .../documenter/waiter_operation_documenter.rb | 0 .../resource/errors.rb | 0 .../resource/operation_methods.rb | 0 .../resource/operations.rb | 1 - .../resource/options.rb | 0 .../resource/request.rb | 2 -- .../resource/request_params.rb | 0 .../resource/source.rb | 0 .../resource/validator.rb | 13 ++++----- .../resource/validator/context.rb | 0 .../validator/identifier_validator.rb | 0 .../resource/validator/operation_validator.rb | 0 .../resource/validator/rule.rb | 0 .../resource/validator/shape_validator.rb | 0 .../lib/aws/resource/documenter.rb | 18 ------------ 30 files changed, 38 insertions(+), 45 deletions(-) rename aws-sdk-resources/lib/{aws => aws-sdk-resources}/resource/base.rb (100%) rename aws-sdk-resources/lib/{aws => aws-sdk-resources}/resource/batch.rb (100%) rename aws-sdk-resources/lib/{aws => aws-sdk-resources}/resource/builder.rb (98%) rename aws-sdk-resources/lib/{aws => aws-sdk-resources}/resource/builder_sources.rb (99%) rename aws-sdk-resources/lib/{aws => aws-sdk-resources}/resource/collection.rb (100%) rename aws-sdk-resources/lib/{aws => aws-sdk-resources}/resource/definition.rb (100%) create mode 100644 aws-sdk-resources/lib/aws-sdk-resources/resource/documenter.rb rename aws-sdk-resources/lib/{aws => aws-sdk-resources}/resource/documenter/base_operation_documenter.rb (100%) rename aws-sdk-resources/lib/{aws => aws-sdk-resources}/resource/documenter/data_operation_documenter.rb (100%) rename aws-sdk-resources/lib/{aws => aws-sdk-resources}/resource/documenter/enumerate_data_operation_documenter.rb (100%) rename aws-sdk-resources/lib/{aws => aws-sdk-resources}/resource/documenter/enumerate_resource_operation_documenter.rb (100%) rename aws-sdk-resources/lib/{aws => aws-sdk-resources}/resource/documenter/operation_documenter.rb (100%) rename aws-sdk-resources/lib/{aws => aws-sdk-resources}/resource/documenter/reference_operation_documenter.rb (100%) rename aws-sdk-resources/lib/{aws => aws-sdk-resources}/resource/documenter/resource_operation_documenter.rb (100%) rename aws-sdk-resources/lib/{aws => aws-sdk-resources}/resource/documenter/waiter_operation_documenter.rb (100%) rename aws-sdk-resources/lib/{aws => aws-sdk-resources}/resource/errors.rb (100%) rename aws-sdk-resources/lib/{aws => aws-sdk-resources}/resource/operation_methods.rb (100%) rename aws-sdk-resources/lib/{aws => aws-sdk-resources}/resource/operations.rb (99%) rename aws-sdk-resources/lib/{aws => aws-sdk-resources}/resource/options.rb (100%) rename aws-sdk-resources/lib/{aws => aws-sdk-resources}/resource/request.rb (97%) rename aws-sdk-resources/lib/{aws => aws-sdk-resources}/resource/request_params.rb (100%) rename aws-sdk-resources/lib/{aws => aws-sdk-resources}/resource/source.rb (100%) rename aws-sdk-resources/lib/{aws => aws-sdk-resources}/resource/validator.rb (93%) rename aws-sdk-resources/lib/{aws => aws-sdk-resources}/resource/validator/context.rb (100%) rename aws-sdk-resources/lib/{aws => aws-sdk-resources}/resource/validator/identifier_validator.rb (100%) rename aws-sdk-resources/lib/{aws => aws-sdk-resources}/resource/validator/operation_validator.rb (100%) rename aws-sdk-resources/lib/{aws => aws-sdk-resources}/resource/validator/rule.rb (100%) rename aws-sdk-resources/lib/{aws => aws-sdk-resources}/resource/validator/shape_validator.rb (100%) delete mode 100644 aws-sdk-resources/lib/aws/resource/documenter.rb diff --git a/aws-sdk-resources/lib/aws-sdk-resources.rb b/aws-sdk-resources/lib/aws-sdk-resources.rb index ca824e1e..7c82de30 100644 --- a/aws-sdk-resources/lib/aws-sdk-resources.rb +++ b/aws-sdk-resources/lib/aws-sdk-resources.rb @@ -3,20 +3,21 @@ module Aws module Resource - autoload :Base, 'aws/resource/base' - autoload :Batch, 'aws/resource/batch' - autoload :Builder, 'aws/resource/builder' - autoload :BuilderSources, 'aws/resource/builder_sources' - autoload :Collection, 'aws/resource/collection' - autoload :Definition, 'aws/resource/definition' - autoload :Documenter, 'aws/resource/documenter' - autoload :Errors, 'aws/resource/errors' - autoload :Operations, 'aws/resource/operations' - autoload :OperationMethods, 'aws/resource/operation_methods' - autoload :Request, 'aws/resource/request' - autoload :RequestParams, 'aws/resource/request_params' - autoload :Source, 'aws/resource/source' - autoload :Validator, 'aws/resource/validator' + autoload :Base, 'aws-sdk-resources/resource/base' + autoload :Batch, 'aws-sdk-resources/resource/batch' + autoload :Builder, 'aws-sdk-resources/resource/builder' + autoload :BuilderSources, 'aws-sdk-resources/resource/builder_sources' + autoload :Collection, 'aws-sdk-resources/resource/collection' + autoload :Definition, 'aws-sdk-resources/resource/definition' + autoload :Documenter, 'aws-sdk-resources/resource/documenter' + autoload :Errors, 'aws-sdk-resources/resource/errors' + autoload :Operations, 'aws-sdk-resources/resource/operations' + autoload :OperationMethods, 'aws-sdk-resources/resource/operation_methods' + autoload :Options, 'aws-sdk-resources/resource/options' + autoload :Request, 'aws-sdk-resources/resource/request' + autoload :RequestParams, 'aws-sdk-resources/resource/request_params' + autoload :Source, 'aws-sdk-resources/resource/source' + autoload :Validator, 'aws-sdk-resources/resource/validator' end service_added do |_, svc_module, options| diff --git a/aws-sdk-resources/lib/aws/resource/base.rb b/aws-sdk-resources/lib/aws-sdk-resources/resource/base.rb similarity index 100% rename from aws-sdk-resources/lib/aws/resource/base.rb rename to aws-sdk-resources/lib/aws-sdk-resources/resource/base.rb diff --git a/aws-sdk-resources/lib/aws/resource/batch.rb b/aws-sdk-resources/lib/aws-sdk-resources/resource/batch.rb similarity index 100% rename from aws-sdk-resources/lib/aws/resource/batch.rb rename to aws-sdk-resources/lib/aws-sdk-resources/resource/batch.rb diff --git a/aws-sdk-resources/lib/aws/resource/builder.rb b/aws-sdk-resources/lib/aws-sdk-resources/resource/builder.rb similarity index 98% rename from aws-sdk-resources/lib/aws/resource/builder.rb rename to aws-sdk-resources/lib/aws-sdk-resources/resource/builder.rb index 077dd856..e7696a42 100644 --- a/aws-sdk-resources/lib/aws/resource/builder.rb +++ b/aws-sdk-resources/lib/aws-sdk-resources/resource/builder.rb @@ -1,4 +1,3 @@ -require 'aws/resource/options' require 'jamespath' module Aws diff --git a/aws-sdk-resources/lib/aws/resource/builder_sources.rb b/aws-sdk-resources/lib/aws-sdk-resources/resource/builder_sources.rb similarity index 99% rename from aws-sdk-resources/lib/aws/resource/builder_sources.rb rename to aws-sdk-resources/lib/aws-sdk-resources/resource/builder_sources.rb index 5955d988..eab9d54f 100644 --- a/aws-sdk-resources/lib/aws/resource/builder_sources.rb +++ b/aws-sdk-resources/lib/aws-sdk-resources/resource/builder_sources.rb @@ -1,4 +1,3 @@ -require 'aws/resource/options' require 'jamespath' module Aws diff --git a/aws-sdk-resources/lib/aws/resource/collection.rb b/aws-sdk-resources/lib/aws-sdk-resources/resource/collection.rb similarity index 100% rename from aws-sdk-resources/lib/aws/resource/collection.rb rename to aws-sdk-resources/lib/aws-sdk-resources/resource/collection.rb diff --git a/aws-sdk-resources/lib/aws/resource/definition.rb b/aws-sdk-resources/lib/aws-sdk-resources/resource/definition.rb similarity index 100% rename from aws-sdk-resources/lib/aws/resource/definition.rb rename to aws-sdk-resources/lib/aws-sdk-resources/resource/definition.rb diff --git a/aws-sdk-resources/lib/aws-sdk-resources/resource/documenter.rb b/aws-sdk-resources/lib/aws-sdk-resources/resource/documenter.rb new file mode 100644 index 00000000..0ad1ca09 --- /dev/null +++ b/aws-sdk-resources/lib/aws-sdk-resources/resource/documenter.rb @@ -0,0 +1,18 @@ +require 'json' + +module Aws + module Resource + class Documenter + + autoload :BaseOperationDocumenter, 'aws-sdk-resources/resource/documenter/base_operation_documenter' + autoload :DataOperationDocumenter, 'aws-sdk-resources/resource/documenter/data_operation_documenter' + autoload :EnumerateDataOperationDocumenter, 'aws-sdk-resources/resource/documenter/enumerate_data_operation_documenter' + autoload :EnumerateResourceOperationDocumenter, 'aws-sdk-resources/resource/documenter/enumerate_resource_operation_documenter' + autoload :OperationDocumenter, 'aws-sdk-resources/resource/documenter/operation_documenter' + autoload :ReferenceOperationDocumenter, 'aws-sdk-resources/resource/documenter/reference_operation_documenter' + autoload :ResourceOperationDocumenter, 'aws-sdk-resources/resource/documenter/resource_operation_documenter' + autoload :WaiterOperationDocumenter, 'aws-sdk-resources/resource/documenter/waiter_operation_documenter' + + end + end +end diff --git a/aws-sdk-resources/lib/aws/resource/documenter/base_operation_documenter.rb b/aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/base_operation_documenter.rb similarity index 100% rename from aws-sdk-resources/lib/aws/resource/documenter/base_operation_documenter.rb rename to aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/base_operation_documenter.rb diff --git a/aws-sdk-resources/lib/aws/resource/documenter/data_operation_documenter.rb b/aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/data_operation_documenter.rb similarity index 100% rename from aws-sdk-resources/lib/aws/resource/documenter/data_operation_documenter.rb rename to aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/data_operation_documenter.rb diff --git a/aws-sdk-resources/lib/aws/resource/documenter/enumerate_data_operation_documenter.rb b/aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/enumerate_data_operation_documenter.rb similarity index 100% rename from aws-sdk-resources/lib/aws/resource/documenter/enumerate_data_operation_documenter.rb rename to aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/enumerate_data_operation_documenter.rb diff --git a/aws-sdk-resources/lib/aws/resource/documenter/enumerate_resource_operation_documenter.rb b/aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/enumerate_resource_operation_documenter.rb similarity index 100% rename from aws-sdk-resources/lib/aws/resource/documenter/enumerate_resource_operation_documenter.rb rename to aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/enumerate_resource_operation_documenter.rb diff --git a/aws-sdk-resources/lib/aws/resource/documenter/operation_documenter.rb b/aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/operation_documenter.rb similarity index 100% rename from aws-sdk-resources/lib/aws/resource/documenter/operation_documenter.rb rename to aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/operation_documenter.rb diff --git a/aws-sdk-resources/lib/aws/resource/documenter/reference_operation_documenter.rb b/aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/reference_operation_documenter.rb similarity index 100% rename from aws-sdk-resources/lib/aws/resource/documenter/reference_operation_documenter.rb rename to aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/reference_operation_documenter.rb diff --git a/aws-sdk-resources/lib/aws/resource/documenter/resource_operation_documenter.rb b/aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/resource_operation_documenter.rb similarity index 100% rename from aws-sdk-resources/lib/aws/resource/documenter/resource_operation_documenter.rb rename to aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/resource_operation_documenter.rb diff --git a/aws-sdk-resources/lib/aws/resource/documenter/waiter_operation_documenter.rb b/aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/waiter_operation_documenter.rb similarity index 100% rename from aws-sdk-resources/lib/aws/resource/documenter/waiter_operation_documenter.rb rename to aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/waiter_operation_documenter.rb diff --git a/aws-sdk-resources/lib/aws/resource/errors.rb b/aws-sdk-resources/lib/aws-sdk-resources/resource/errors.rb similarity index 100% rename from aws-sdk-resources/lib/aws/resource/errors.rb rename to aws-sdk-resources/lib/aws-sdk-resources/resource/errors.rb diff --git a/aws-sdk-resources/lib/aws/resource/operation_methods.rb b/aws-sdk-resources/lib/aws-sdk-resources/resource/operation_methods.rb similarity index 100% rename from aws-sdk-resources/lib/aws/resource/operation_methods.rb rename to aws-sdk-resources/lib/aws-sdk-resources/resource/operation_methods.rb diff --git a/aws-sdk-resources/lib/aws/resource/operations.rb b/aws-sdk-resources/lib/aws-sdk-resources/resource/operations.rb similarity index 99% rename from aws-sdk-resources/lib/aws/resource/operations.rb rename to aws-sdk-resources/lib/aws-sdk-resources/resource/operations.rb index 7dfe61f0..d238645c 100644 --- a/aws-sdk-resources/lib/aws/resource/operations.rb +++ b/aws-sdk-resources/lib/aws-sdk-resources/resource/operations.rb @@ -1,4 +1,3 @@ -require 'aws/resource/options' require 'jamespath' module Aws diff --git a/aws-sdk-resources/lib/aws/resource/options.rb b/aws-sdk-resources/lib/aws-sdk-resources/resource/options.rb similarity index 100% rename from aws-sdk-resources/lib/aws/resource/options.rb rename to aws-sdk-resources/lib/aws-sdk-resources/resource/options.rb diff --git a/aws-sdk-resources/lib/aws/resource/request.rb b/aws-sdk-resources/lib/aws-sdk-resources/resource/request.rb similarity index 97% rename from aws-sdk-resources/lib/aws/resource/request.rb rename to aws-sdk-resources/lib/aws-sdk-resources/resource/request.rb index 051d9a33..b2a8f69a 100644 --- a/aws-sdk-resources/lib/aws/resource/request.rb +++ b/aws-sdk-resources/lib/aws-sdk-resources/resource/request.rb @@ -1,5 +1,3 @@ -require 'aws/resource/options' - module Aws module Resource class Request diff --git a/aws-sdk-resources/lib/aws/resource/request_params.rb b/aws-sdk-resources/lib/aws-sdk-resources/resource/request_params.rb similarity index 100% rename from aws-sdk-resources/lib/aws/resource/request_params.rb rename to aws-sdk-resources/lib/aws-sdk-resources/resource/request_params.rb diff --git a/aws-sdk-resources/lib/aws/resource/source.rb b/aws-sdk-resources/lib/aws-sdk-resources/resource/source.rb similarity index 100% rename from aws-sdk-resources/lib/aws/resource/source.rb rename to aws-sdk-resources/lib/aws-sdk-resources/resource/source.rb diff --git a/aws-sdk-resources/lib/aws/resource/validator.rb b/aws-sdk-resources/lib/aws-sdk-resources/resource/validator.rb similarity index 93% rename from aws-sdk-resources/lib/aws/resource/validator.rb rename to aws-sdk-resources/lib/aws-sdk-resources/resource/validator.rb index d24e1a45..50421e48 100644 --- a/aws-sdk-resources/lib/aws/resource/validator.rb +++ b/aws-sdk-resources/lib/aws-sdk-resources/resource/validator.rb @@ -1,13 +1,10 @@ require 'multi_json' require 'json-schema' - -require 'aws/resource/validator/context' -require 'aws/resource/validator/rule' - -require 'aws/resource/validator/shape_validator' -require 'aws/resource/validator/identifier_validator' - -require 'aws/resource/validator/operation_validator' +require 'aws-sdk-resources/resource/validator/context' +require 'aws-sdk-resources/resource/validator/rule' +require 'aws-sdk-resources/resource/validator/shape_validator' +require 'aws-sdk-resources/resource/validator/identifier_validator' +require 'aws-sdk-resources/resource/validator/operation_validator' module Aws module Resource diff --git a/aws-sdk-resources/lib/aws/resource/validator/context.rb b/aws-sdk-resources/lib/aws-sdk-resources/resource/validator/context.rb similarity index 100% rename from aws-sdk-resources/lib/aws/resource/validator/context.rb rename to aws-sdk-resources/lib/aws-sdk-resources/resource/validator/context.rb diff --git a/aws-sdk-resources/lib/aws/resource/validator/identifier_validator.rb b/aws-sdk-resources/lib/aws-sdk-resources/resource/validator/identifier_validator.rb similarity index 100% rename from aws-sdk-resources/lib/aws/resource/validator/identifier_validator.rb rename to aws-sdk-resources/lib/aws-sdk-resources/resource/validator/identifier_validator.rb diff --git a/aws-sdk-resources/lib/aws/resource/validator/operation_validator.rb b/aws-sdk-resources/lib/aws-sdk-resources/resource/validator/operation_validator.rb similarity index 100% rename from aws-sdk-resources/lib/aws/resource/validator/operation_validator.rb rename to aws-sdk-resources/lib/aws-sdk-resources/resource/validator/operation_validator.rb diff --git a/aws-sdk-resources/lib/aws/resource/validator/rule.rb b/aws-sdk-resources/lib/aws-sdk-resources/resource/validator/rule.rb similarity index 100% rename from aws-sdk-resources/lib/aws/resource/validator/rule.rb rename to aws-sdk-resources/lib/aws-sdk-resources/resource/validator/rule.rb diff --git a/aws-sdk-resources/lib/aws/resource/validator/shape_validator.rb b/aws-sdk-resources/lib/aws-sdk-resources/resource/validator/shape_validator.rb similarity index 100% rename from aws-sdk-resources/lib/aws/resource/validator/shape_validator.rb rename to aws-sdk-resources/lib/aws-sdk-resources/resource/validator/shape_validator.rb diff --git a/aws-sdk-resources/lib/aws/resource/documenter.rb b/aws-sdk-resources/lib/aws/resource/documenter.rb deleted file mode 100644 index ef8b043b..00000000 --- a/aws-sdk-resources/lib/aws/resource/documenter.rb +++ /dev/null @@ -1,18 +0,0 @@ -require 'json' - -module Aws - module Resource - class Documenter - - autoload :BaseOperationDocumenter, 'aws/resource/documenter/base_operation_documenter' - autoload :DataOperationDocumenter, 'aws/resource/documenter/data_operation_documenter' - autoload :EnumerateDataOperationDocumenter, 'aws/resource/documenter/enumerate_data_operation_documenter' - autoload :EnumerateResourceOperationDocumenter, 'aws/resource/documenter/enumerate_resource_operation_documenter' - autoload :OperationDocumenter, 'aws/resource/documenter/operation_documenter' - autoload :ReferenceOperationDocumenter, 'aws/resource/documenter/reference_operation_documenter' - autoload :ResourceOperationDocumenter, 'aws/resource/documenter/resource_operation_documenter' - autoload :WaiterOperationDocumenter, 'aws/resource/documenter/waiter_operation_documenter' - - end - end -end From 2785686820103fa958096415ed73ddca3196dcac Mon Sep 17 00:00:00 2001 From: Trevor Rowe Date: Fri, 19 Sep 2014 12:57:20 -0700 Subject: [PATCH 3/5] Removed the SRC path constant, now using the gem name in autoloads. --- aws-sdk-core/lib/aws-sdk-core.rb | 170 +++++++++--------- aws-sdk-core/lib/aws-sdk-core/autoscaling.rb | 6 +- .../lib/aws-sdk-core/cloudformation.rb | 6 +- aws-sdk-core/lib/aws-sdk-core/cloudfront.rb | 8 +- aws-sdk-core/lib/aws-sdk-core/cloudsearch.rb | 6 +- .../lib/aws-sdk-core/cloudsearchdomain.rb | 4 +- aws-sdk-core/lib/aws-sdk-core/cloudtrail.rb | 6 +- aws-sdk-core/lib/aws-sdk-core/cloudwatch.rb | 6 +- .../lib/aws-sdk-core/cloudwatchlogs.rb | 6 +- .../lib/aws-sdk-core/cognitoidentity.rb | 4 +- aws-sdk-core/lib/aws-sdk-core/cognitosync.rb | 4 +- aws-sdk-core/lib/aws-sdk-core/datapipeline.rb | 6 +- .../lib/aws-sdk-core/directconnect.rb | 6 +- aws-sdk-core/lib/aws-sdk-core/dynamodb.rb | 14 +- aws-sdk-core/lib/aws-sdk-core/ec2.rb | 10 +- aws-sdk-core/lib/aws-sdk-core/elasticache.rb | 6 +- .../lib/aws-sdk-core/elasticbeanstalk.rb | 6 +- .../lib/aws-sdk-core/elasticloadbalancing.rb | 6 +- .../lib/aws-sdk-core/elastictranscoder.rb | 6 +- aws-sdk-core/lib/aws-sdk-core/emr.rb | 6 +- aws-sdk-core/lib/aws-sdk-core/glacier.rb | 10 +- aws-sdk-core/lib/aws-sdk-core/iam.rb | 8 +- aws-sdk-core/lib/aws-sdk-core/importexport.rb | 6 +- aws-sdk-core/lib/aws-sdk-core/kinesis.rb | 6 +- aws-sdk-core/lib/aws-sdk-core/opsworks.rb | 8 +- aws-sdk-core/lib/aws-sdk-core/rds.rb | 8 +- aws-sdk-core/lib/aws-sdk-core/redshift.rb | 8 +- aws-sdk-core/lib/aws-sdk-core/route53.rb | 6 +- .../lib/aws-sdk-core/route53domains.rb | 4 +- aws-sdk-core/lib/aws-sdk-core/s3.rb | 12 +- aws-sdk-core/lib/aws-sdk-core/ses.rb | 8 +- aws-sdk-core/lib/aws-sdk-core/simpledb.rb | 6 +- aws-sdk-core/lib/aws-sdk-core/sns.rb | 8 +- aws-sdk-core/lib/aws-sdk-core/sqs.rb | 8 +- .../lib/aws-sdk-core/storagegateway.rb | 6 +- aws-sdk-core/lib/aws-sdk-core/sts.rb | 4 +- aws-sdk-core/lib/aws-sdk-core/support.rb | 6 +- aws-sdk-core/lib/aws-sdk-core/swf.rb | 6 +- 38 files changed, 211 insertions(+), 209 deletions(-) diff --git a/aws-sdk-core/lib/aws-sdk-core.rb b/aws-sdk-core/lib/aws-sdk-core.rb index 02e069b9..dfabb64e 100644 --- a/aws-sdk-core/lib/aws-sdk-core.rb +++ b/aws-sdk-core/lib/aws-sdk-core.rb @@ -15,7 +15,7 @@ module Aws GEM_ROOT = File.dirname(File.dirname(__FILE__)) # @api private - SRC = File.join(GEM_ROOT, 'lib', 'aws-sdk-core') + APIS_DIR = File.join(GEM_ROOT, 'apis') # @api private # services @@ -64,125 +64,125 @@ module Aws @service_added_callbacks = [] SERVICE_MODULE_NAMES.each do |const_name| - autoload const_name, "#{SRC}/#{const_name.downcase}.rb" + autoload const_name, "aws-sdk-core/#{const_name.downcase}" end - autoload :Client, "#{SRC}/client" - autoload :CredentialProviderChain, "#{SRC}/credential_provider_chain" - autoload :Credentials, "#{SRC}/credentials" - autoload :EmptyStructure, "#{SRC}/empty_structure" - autoload :EndpointProvider, "#{SRC}/endpoint_provider" - autoload :Errors, "#{SRC}/errors" - autoload :InstanceProfileCredentials, "#{SRC}/instance_profile_credentials" - autoload :PageableResponse, "#{SRC}/pageable_response" - autoload :RestBodyHandler, "#{SRC}/rest_body_handler" - autoload :Service, "#{SRC}/service" - autoload :SharedCredentials, "#{SRC}/shared_credentials" - autoload :Structure, "#{SRC}/structure" - autoload :TreeHash, "#{SRC}/tree_hash" - autoload :VERSION, "#{SRC}/version" + autoload :Client, 'aws-sdk-core/client' + autoload :CredentialProviderChain, 'aws-sdk-core/credential_provider_chain' + autoload :Credentials, 'aws-sdk-core/credentials' + autoload :EmptyStructure, 'aws-sdk-core/empty_structure' + autoload :EndpointProvider, 'aws-sdk-core/endpoint_provider' + autoload :Errors, 'aws-sdk-core/errors' + autoload :InstanceProfileCredentials, 'aws-sdk-core/instance_profile_credentials' + autoload :PageableResponse, 'aws-sdk-core/pageable_response' + autoload :RestBodyHandler, 'aws-sdk-core/rest_body_handler' + autoload :Service, 'aws-sdk-core/service' + autoload :SharedCredentials, 'aws-sdk-core/shared_credentials' + autoload :Structure, 'aws-sdk-core/structure' + autoload :TreeHash, 'aws-sdk-core/tree_hash' + autoload :VERSION, 'aws-sdk-core/version' # @api private module Api - autoload :Customizer, "#{SRC}/api/customizer" - autoload :Documenter, "#{SRC}/api/documenter" - autoload :Docstrings, "#{SRC}/api/docstrings" - autoload :Manifest, "#{SRC}/api/manifest" - autoload :ManifestBuilder, "#{SRC}/api/manifest_builder" - autoload :OperationDocumenter, "#{SRC}/api/operation_documenter" - autoload :OperationExample, "#{SRC}/api/operation_example" - autoload :ServiceCustomizations, "#{SRC}/api/service_customizations" + autoload :Customizer, 'aws-sdk-core/api/customizer' + autoload :Documenter, 'aws-sdk-core/api/documenter' + autoload :Docstrings, 'aws-sdk-core/api/docstrings' + autoload :Manifest, 'aws-sdk-core/api/manifest' + autoload :ManifestBuilder, 'aws-sdk-core/api/manifest_builder' + autoload :OperationDocumenter, 'aws-sdk-core/api/operation_documenter' + autoload :OperationExample, 'aws-sdk-core/api/operation_example' + autoload :ServiceCustomizations, 'aws-sdk-core/api/service_customizations' end # @api private module Json - autoload :Builder, "#{SRC}/json/builder" - autoload :ErrorHandler, "#{SRC}/json/error_handler" - autoload :Parser, "#{SRC}/json/parser" - autoload :RestHandler, "#{SRC}/json/rest_handler" - autoload :RpcBodyHandler, "#{SRC}/json/rpc_body_handler" - autoload :RpcHeadersHandler, "#{SRC}/json/rpc_headers_handler" - autoload :SimpleBodyHandler, "#{SRC}/json/simple_body_handler" + autoload :Builder, 'aws-sdk-core/json/builder' + autoload :ErrorHandler, 'aws-sdk-core/json/error_handler' + autoload :Parser, 'aws-sdk-core/json/parser' + autoload :RestHandler, 'aws-sdk-core/json/rest_handler' + autoload :RpcBodyHandler, 'aws-sdk-core/json/rpc_body_handler' + autoload :RpcHeadersHandler, 'aws-sdk-core/json/rpc_headers_handler' + autoload :SimpleBodyHandler, 'aws-sdk-core/json/simple_body_handler' end # @api private module Paging - autoload :NullPager, "#{SRC}/paging/null_pager" - autoload :NullProvider, "#{SRC}/paging/null_provider" - autoload :Pager, "#{SRC}/paging/pager" - autoload :Provider, "#{SRC}/paging/provider" + autoload :NullPager, 'aws-sdk-core/paging/null_pager' + autoload :NullProvider, 'aws-sdk-core/paging/null_provider' + autoload :Pager, 'aws-sdk-core/paging/pager' + autoload :Provider, 'aws-sdk-core/paging/provider' end module Plugins - autoload :CSDConditionalSigning, "#{SRC}/plugins/csd_conditional_signing" - autoload :DynamoDBExtendedRetries, "#{SRC}/plugins/dynamodb_extended_retries" - autoload :DynamoDBSimpleAttributes, "#{SRC}/plugins/dynamodb_simple_attributes" - autoload :EC2CopyEncryptedSnapshot, "#{SRC}/plugins/ec2_copy_encrypted_snapshot" - autoload :GlacierAccountId, "#{SRC}/plugins/glacier_account_id" - autoload :GlacierApiVersion, "#{SRC}/plugins/glacier_api_version" - autoload :GlacierChecksums, "#{SRC}/plugins/glacier_checksums" - autoload :GlobalConfiguration, "#{SRC}/plugins/global_configuration" - autoload :RegionalEndpoint, "#{SRC}/plugins/regional_endpoint" - autoload :ResponsePaging, "#{SRC}/plugins/response_paging" - autoload :RequestSigner, "#{SRC}/plugins/request_signer" - autoload :RetryErrors, "#{SRC}/plugins/retry_errors" - autoload :Route53IdFix, "#{SRC}/plugins/route_53_id_fix" - autoload :S3BucketDns, "#{SRC}/plugins/s3_bucket_dns" - autoload :S3CompleteMultipartUploadFix, "#{SRC}/plugins/s3_complete_multipart_upload_fix" - autoload :S3Expect100Continue, "#{SRC}/plugins/s3_expect_100_continue" - autoload :S3GetBucketLocationFix, "#{SRC}/plugins/s3_get_bucket_location_fix" - autoload :S3LocationConstraint, "#{SRC}/plugins/s3_location_constraint" - autoload :S3Md5s, "#{SRC}/plugins/s3_md5s" - autoload :S3Redirects, "#{SRC}/plugins/s3_redirects" - autoload :S3SseCpk, "#{SRC}/plugins/s3_sse_cpk" - autoload :S3UrlEncodedKeys, "#{SRC}/plugins/s3_url_encoded_keys" - autoload :SQSQueueUrls, "#{SRC}/plugins/sqs_queue_urls" - autoload :SWFReadTimeouts, "#{SRC}/plugins/swf_read_timeouts" - autoload :UserAgent, "#{SRC}/plugins/user_agent" + autoload :CSDConditionalSigning, 'aws-sdk-core/plugins/csd_conditional_signing' + autoload :DynamoDBExtendedRetries, 'aws-sdk-core/plugins/dynamodb_extended_retries' + autoload :DynamoDBSimpleAttributes, 'aws-sdk-core/plugins/dynamodb_simple_attributes' + autoload :EC2CopyEncryptedSnapshot, 'aws-sdk-core/plugins/ec2_copy_encrypted_snapshot' + autoload :GlacierAccountId, 'aws-sdk-core/plugins/glacier_account_id' + autoload :GlacierApiVersion, 'aws-sdk-core/plugins/glacier_api_version' + autoload :GlacierChecksums, 'aws-sdk-core/plugins/glacier_checksums' + autoload :GlobalConfiguration, 'aws-sdk-core/plugins/global_configuration' + autoload :RegionalEndpoint, 'aws-sdk-core/plugins/regional_endpoint' + autoload :ResponsePaging, 'aws-sdk-core/plugins/response_paging' + autoload :RequestSigner, 'aws-sdk-core/plugins/request_signer' + autoload :RetryErrors, 'aws-sdk-core/plugins/retry_errors' + autoload :Route53IdFix, 'aws-sdk-core/plugins/route_53_id_fix' + autoload :S3BucketDns, 'aws-sdk-core/plugins/s3_bucket_dns' + autoload :S3CompleteMultipartUploadFix, 'aws-sdk-core/plugins/s3_complete_multipart_upload_fix' + autoload :S3Expect100Continue, 'aws-sdk-core/plugins/s3_expect_100_continue' + autoload :S3GetBucketLocationFix, 'aws-sdk-core/plugins/s3_get_bucket_location_fix' + autoload :S3LocationConstraint, 'aws-sdk-core/plugins/s3_location_constraint' + autoload :S3Md5s, 'aws-sdk-core/plugins/s3_md5s' + autoload :S3Redirects, 'aws-sdk-core/plugins/s3_redirects' + autoload :S3SseCpk, 'aws-sdk-core/plugins/s3_sse_cpk' + autoload :S3UrlEncodedKeys, 'aws-sdk-core/plugins/s3_url_encoded_keys' + autoload :SQSQueueUrls, 'aws-sdk-core/plugins/sqs_queue_urls' + autoload :SWFReadTimeouts, 'aws-sdk-core/plugins/swf_read_timeouts' + autoload :UserAgent, 'aws-sdk-core/plugins/user_agent' module Protocols - autoload :EC2, "#{SRC}/plugins/protocols/ec2" - autoload :JsonRpc, "#{SRC}/plugins/protocols/json_rpc" - autoload :Query, "#{SRC}/plugins/protocols/query" - autoload :RestJson, "#{SRC}/plugins/protocols/rest_json" - autoload :RestXml, "#{SRC}/plugins/protocols/rest_xml" + autoload :EC2, 'aws-sdk-core/plugins/protocols/ec2' + autoload :JsonRpc, 'aws-sdk-core/plugins/protocols/json_rpc' + autoload :Query, 'aws-sdk-core/plugins/protocols/query' + autoload :RestJson, 'aws-sdk-core/plugins/protocols/rest_json' + autoload :RestXml, 'aws-sdk-core/plugins/protocols/rest_xml' end end # @api private module Query - autoload :EC2ParamBuilder, "#{SRC}/query/ec2_param_builder" - autoload :Handler, "#{SRC}/query/handler" - autoload :Param, "#{SRC}/query/param" - autoload :ParamBuilder, "#{SRC}/query/param_builder" - autoload :ParamList, "#{SRC}/query/param_list" + autoload :EC2ParamBuilder, 'aws-sdk-core/query/ec2_param_builder' + autoload :Handler, 'aws-sdk-core/query/handler' + autoload :Param, 'aws-sdk-core/query/param' + autoload :ParamBuilder, 'aws-sdk-core/query/param_builder' + autoload :ParamList, 'aws-sdk-core/query/param_list' end # @api private module Signers - autoload :Base, "#{SRC}/signers/base" - autoload :Handler, "#{SRC}/signers/handler" - autoload :S3, "#{SRC}/signers/s3" - autoload :V2, "#{SRC}/signers/v2" - autoload :V3, "#{SRC}/signers/v3" - autoload :V4, "#{SRC}/signers/v4" + autoload :Base, 'aws-sdk-core/signers/base' + autoload :Handler, 'aws-sdk-core/signers/handler' + autoload :S3, 'aws-sdk-core/signers/s3' + autoload :V2, 'aws-sdk-core/signers/v2' + autoload :V3, 'aws-sdk-core/signers/v3' + autoload :V4, 'aws-sdk-core/signers/v4' end module Waiters - autoload :Errors, "#{SRC}/waiters/errors" - autoload :NullProvider, "#{SRC}/waiters/null_provider" - autoload :Provider, "#{SRC}/waiters/provider" - autoload :Waiter, "#{SRC}/waiters/waiter" + autoload :Errors, 'aws-sdk-core/waiters/errors' + autoload :NullProvider, 'aws-sdk-core/waiters/null_provider' + autoload :Provider, 'aws-sdk-core/waiters/provider' + autoload :Waiter, 'aws-sdk-core/waiters/waiter' end # @api private module Xml - autoload :Builder, "#{SRC}/xml/builder" - autoload :DefaultList, "#{SRC}/xml/default_list" - autoload :ErrorHandler, "#{SRC}/xml/error_handler" - autoload :Parser, "#{SRC}/xml/parser" - autoload :RestHandler, "#{SRC}/xml/rest_handler" + autoload :Builder, 'aws-sdk-core/xml/builder' + autoload :DefaultList, 'aws-sdk-core/xml/default_list' + autoload :ErrorHandler, 'aws-sdk-core/xml/error_handler' + autoload :Parser, 'aws-sdk-core/xml/parser' + autoload :RestHandler, 'aws-sdk-core/xml/rest_handler' end class << self diff --git a/aws-sdk-core/lib/aws-sdk-core/autoscaling.rb b/aws-sdk-core/lib/aws-sdk-core/autoscaling.rb index b8bfa7d5..f199a4b6 100644 --- a/aws-sdk-core/lib/aws-sdk-core/autoscaling.rb +++ b/aws-sdk-core/lib/aws-sdk-core/autoscaling.rb @@ -1,5 +1,5 @@ Aws.add_service(:AutoScaling, { - api: File.join(Aws::GEM_ROOT, 'apis', 'AutoScaling.api.json'), - docs: File.join(Aws::GEM_ROOT, 'apis', 'AutoScaling.docs.json'), - paginators: File.join(Aws::GEM_ROOT, 'apis', 'AutoScaling.paginators.json'), + api: File.join(Aws::APIS_DIR, 'AutoScaling.api.json'), + docs: File.join(Aws::APIS_DIR, 'AutoScaling.docs.json'), + paginators: File.join(Aws::APIS_DIR, 'AutoScaling.paginators.json'), }) diff --git a/aws-sdk-core/lib/aws-sdk-core/cloudformation.rb b/aws-sdk-core/lib/aws-sdk-core/cloudformation.rb index 9c46443e..fb08011a 100644 --- a/aws-sdk-core/lib/aws-sdk-core/cloudformation.rb +++ b/aws-sdk-core/lib/aws-sdk-core/cloudformation.rb @@ -1,5 +1,5 @@ Aws.add_service(:CloudFormation, { - api: File.join(Aws::GEM_ROOT, 'apis', 'CloudFormation.api.json'), - docs: File.join(Aws::GEM_ROOT, 'apis', 'CloudFormation.docs.json'), - paginators: File.join(Aws::GEM_ROOT, 'apis', 'CloudFormation.paginators.json'), + api: File.join(Aws::APIS_DIR, 'CloudFormation.api.json'), + docs: File.join(Aws::APIS_DIR, 'CloudFormation.docs.json'), + paginators: File.join(Aws::APIS_DIR, 'CloudFormation.paginators.json'), }) diff --git a/aws-sdk-core/lib/aws-sdk-core/cloudfront.rb b/aws-sdk-core/lib/aws-sdk-core/cloudfront.rb index 3c6b8e01..46980bb7 100644 --- a/aws-sdk-core/lib/aws-sdk-core/cloudfront.rb +++ b/aws-sdk-core/lib/aws-sdk-core/cloudfront.rb @@ -1,6 +1,6 @@ Aws.add_service(:CloudFront, { - api: File.join(Aws::GEM_ROOT, 'apis', 'CloudFront.api.json'), - docs: File.join(Aws::GEM_ROOT, 'apis', 'CloudFront.docs.json'), - paginators: File.join(Aws::GEM_ROOT, 'apis', 'CloudFront.paginators.json'), - waiters: File.join(Aws::GEM_ROOT, 'apis', 'CloudFront.waiters.json'), + api: File.join(Aws::APIS_DIR, 'CloudFront.api.json'), + docs: File.join(Aws::APIS_DIR, 'CloudFront.docs.json'), + paginators: File.join(Aws::APIS_DIR, 'CloudFront.paginators.json'), + waiters: File.join(Aws::APIS_DIR, 'CloudFront.waiters.json'), }) diff --git a/aws-sdk-core/lib/aws-sdk-core/cloudsearch.rb b/aws-sdk-core/lib/aws-sdk-core/cloudsearch.rb index d6994b9c..f8d25b3a 100644 --- a/aws-sdk-core/lib/aws-sdk-core/cloudsearch.rb +++ b/aws-sdk-core/lib/aws-sdk-core/cloudsearch.rb @@ -1,5 +1,5 @@ Aws.add_service(:CloudSearch, { - api: File.join(Aws::GEM_ROOT, 'apis', 'CloudSearch.api.json'), - docs: File.join(Aws::GEM_ROOT, 'apis', 'CloudSearch.docs.json'), - paginators: File.join(Aws::GEM_ROOT, 'apis', 'CloudSearch.paginators.json'), + api: File.join(Aws::APIS_DIR, 'CloudSearch.api.json'), + docs: File.join(Aws::APIS_DIR, 'CloudSearch.docs.json'), + paginators: File.join(Aws::APIS_DIR, 'CloudSearch.paginators.json'), }) diff --git a/aws-sdk-core/lib/aws-sdk-core/cloudsearchdomain.rb b/aws-sdk-core/lib/aws-sdk-core/cloudsearchdomain.rb index 9d10f21e..7dee19e4 100644 --- a/aws-sdk-core/lib/aws-sdk-core/cloudsearchdomain.rb +++ b/aws-sdk-core/lib/aws-sdk-core/cloudsearchdomain.rb @@ -1,4 +1,4 @@ Aws.add_service(:CloudSearchDomain, { - api: File.join(Aws::GEM_ROOT, 'apis', 'CloudSearchDomain.api.json'), - docs: File.join(Aws::GEM_ROOT, 'apis', 'CloudSearchDomain.docs.json'), + api: File.join(Aws::APIS_DIR, 'CloudSearchDomain.api.json'), + docs: File.join(Aws::APIS_DIR, 'CloudSearchDomain.docs.json'), }) diff --git a/aws-sdk-core/lib/aws-sdk-core/cloudtrail.rb b/aws-sdk-core/lib/aws-sdk-core/cloudtrail.rb index b408e03e..388d7943 100644 --- a/aws-sdk-core/lib/aws-sdk-core/cloudtrail.rb +++ b/aws-sdk-core/lib/aws-sdk-core/cloudtrail.rb @@ -1,5 +1,5 @@ Aws.add_service(:CloudTrail, { - api: File.join(Aws::GEM_ROOT, 'apis', 'CloudTrail.api.json'), - docs: File.join(Aws::GEM_ROOT, 'apis', 'CloudTrail.docs.json'), - paginators: File.join(Aws::GEM_ROOT, 'apis', 'CloudTrail.paginators.json'), + api: File.join(Aws::APIS_DIR, 'CloudTrail.api.json'), + docs: File.join(Aws::APIS_DIR, 'CloudTrail.docs.json'), + paginators: File.join(Aws::APIS_DIR, 'CloudTrail.paginators.json'), }) diff --git a/aws-sdk-core/lib/aws-sdk-core/cloudwatch.rb b/aws-sdk-core/lib/aws-sdk-core/cloudwatch.rb index a0e9949a..6ce561e7 100644 --- a/aws-sdk-core/lib/aws-sdk-core/cloudwatch.rb +++ b/aws-sdk-core/lib/aws-sdk-core/cloudwatch.rb @@ -1,5 +1,5 @@ Aws.add_service(:CloudWatch, { - api: File.join(Aws::GEM_ROOT, 'apis', 'CloudWatch.api.json'), - docs: File.join(Aws::GEM_ROOT, 'apis', 'CloudWatch.docs.json'), - paginators: File.join(Aws::GEM_ROOT, 'apis', 'CloudWatch.paginators.json'), + api: File.join(Aws::APIS_DIR, 'CloudWatch.api.json'), + docs: File.join(Aws::APIS_DIR, 'CloudWatch.docs.json'), + paginators: File.join(Aws::APIS_DIR, 'CloudWatch.paginators.json'), }) diff --git a/aws-sdk-core/lib/aws-sdk-core/cloudwatchlogs.rb b/aws-sdk-core/lib/aws-sdk-core/cloudwatchlogs.rb index a4f0bfa6..6dbf7e09 100644 --- a/aws-sdk-core/lib/aws-sdk-core/cloudwatchlogs.rb +++ b/aws-sdk-core/lib/aws-sdk-core/cloudwatchlogs.rb @@ -1,5 +1,5 @@ Aws.add_service(:CloudWatchLogs, { - api: File.join(Aws::GEM_ROOT, 'apis', 'CloudWatchLogs.api.json'), - docs: File.join(Aws::GEM_ROOT, 'apis', 'CloudWatchLogs.docs.json'), - paginators: File.join(Aws::GEM_ROOT, 'apis', 'CloudWatchLogs.paginators.json'), + api: File.join(Aws::APIS_DIR, 'CloudWatchLogs.api.json'), + docs: File.join(Aws::APIS_DIR, 'CloudWatchLogs.docs.json'), + paginators: File.join(Aws::APIS_DIR, 'CloudWatchLogs.paginators.json'), }) diff --git a/aws-sdk-core/lib/aws-sdk-core/cognitoidentity.rb b/aws-sdk-core/lib/aws-sdk-core/cognitoidentity.rb index b02d135e..b3f2cab4 100644 --- a/aws-sdk-core/lib/aws-sdk-core/cognitoidentity.rb +++ b/aws-sdk-core/lib/aws-sdk-core/cognitoidentity.rb @@ -1,4 +1,4 @@ Aws.add_service(:CognitoIdentity, { - api: File.join(Aws::GEM_ROOT, 'apis', 'CognitoIdentity.api.json'), - docs: File.join(Aws::GEM_ROOT, 'apis', 'CognitoIdentity.docs.json'), + api: File.join(Aws::APIS_DIR, 'CognitoIdentity.api.json'), + docs: File.join(Aws::APIS_DIR, 'CognitoIdentity.docs.json'), }) diff --git a/aws-sdk-core/lib/aws-sdk-core/cognitosync.rb b/aws-sdk-core/lib/aws-sdk-core/cognitosync.rb index 1901357f..52f8c617 100644 --- a/aws-sdk-core/lib/aws-sdk-core/cognitosync.rb +++ b/aws-sdk-core/lib/aws-sdk-core/cognitosync.rb @@ -1,4 +1,4 @@ Aws.add_service(:CognitoSync, { - api: File.join(Aws::GEM_ROOT, 'apis', 'CognitoSync.api.json'), - docs: File.join(Aws::GEM_ROOT, 'apis', 'CognitoSync.docs.json'), + api: File.join(Aws::APIS_DIR, 'CognitoSync.api.json'), + docs: File.join(Aws::APIS_DIR, 'CognitoSync.docs.json'), }) diff --git a/aws-sdk-core/lib/aws-sdk-core/datapipeline.rb b/aws-sdk-core/lib/aws-sdk-core/datapipeline.rb index 16de46b4..29191efd 100644 --- a/aws-sdk-core/lib/aws-sdk-core/datapipeline.rb +++ b/aws-sdk-core/lib/aws-sdk-core/datapipeline.rb @@ -1,5 +1,5 @@ Aws.add_service(:DataPipeline, { - api: File.join(Aws::GEM_ROOT, 'apis', 'DataPipeline.api.json'), - docs: File.join(Aws::GEM_ROOT, 'apis', 'DataPipeline.docs.json'), - paginators: File.join(Aws::GEM_ROOT, 'apis', 'DataPipeline.paginators.json'), + api: File.join(Aws::APIS_DIR, 'DataPipeline.api.json'), + docs: File.join(Aws::APIS_DIR, 'DataPipeline.docs.json'), + paginators: File.join(Aws::APIS_DIR, 'DataPipeline.paginators.json'), }) diff --git a/aws-sdk-core/lib/aws-sdk-core/directconnect.rb b/aws-sdk-core/lib/aws-sdk-core/directconnect.rb index a104e36b..e17a4034 100644 --- a/aws-sdk-core/lib/aws-sdk-core/directconnect.rb +++ b/aws-sdk-core/lib/aws-sdk-core/directconnect.rb @@ -1,5 +1,5 @@ Aws.add_service(:DirectConnect, { - api: File.join(Aws::GEM_ROOT, 'apis', 'DirectConnect.api.json'), - docs: File.join(Aws::GEM_ROOT, 'apis', 'DirectConnect.docs.json'), - paginators: File.join(Aws::GEM_ROOT, 'apis', 'DirectConnect.paginators.json'), + api: File.join(Aws::APIS_DIR, 'DirectConnect.api.json'), + docs: File.join(Aws::APIS_DIR, 'DirectConnect.docs.json'), + paginators: File.join(Aws::APIS_DIR, 'DirectConnect.paginators.json'), }) diff --git a/aws-sdk-core/lib/aws-sdk-core/dynamodb.rb b/aws-sdk-core/lib/aws-sdk-core/dynamodb.rb index 2130224c..8ea08e7a 100644 --- a/aws-sdk-core/lib/aws-sdk-core/dynamodb.rb +++ b/aws-sdk-core/lib/aws-sdk-core/dynamodb.rb @@ -1,10 +1,12 @@ Aws.add_service(:DynamoDB, { - api: File.join(Aws::GEM_ROOT, 'apis', 'DynamoDB.api.json'), - docs: File.join(Aws::GEM_ROOT, 'apis', 'DynamoDB.docs.json'), - paginators: File.join(Aws::GEM_ROOT, 'apis', 'DynamoDB.paginators.json'), - waiters: File.join(Aws::GEM_ROOT, 'apis', 'DynamoDB.waiters.json'), + api: File.join(Aws::APIS_DIR, 'DynamoDB.api.json'), + docs: File.join(Aws::APIS_DIR, 'DynamoDB.docs.json'), + paginators: File.join(Aws::APIS_DIR, 'DynamoDB.paginators.json'), + waiters: File.join(Aws::APIS_DIR, 'DynamoDB.waiters.json'), }) -module Aws::DynamoDB - autoload :AttributeValue, "#{Aws::SRC}/dynamodb/attribute_value" +module Aws + module DynamoDB + autoload :AttributeValue, 'aws-sdk-core/dynamodb/attribute_value' + end end diff --git a/aws-sdk-core/lib/aws-sdk-core/ec2.rb b/aws-sdk-core/lib/aws-sdk-core/ec2.rb index 2dbffafc..1cdb7f5a 100644 --- a/aws-sdk-core/lib/aws-sdk-core/ec2.rb +++ b/aws-sdk-core/lib/aws-sdk-core/ec2.rb @@ -1,7 +1,7 @@ Aws.add_service(:EC2, { - api: File.join(Aws::GEM_ROOT, 'apis', 'EC2.api.json'), - docs: File.join(Aws::GEM_ROOT, 'apis', 'EC2.docs.json'), - paginators: File.join(Aws::GEM_ROOT, 'apis', 'EC2.paginators.json'), - resources: File.join(Aws::GEM_ROOT, 'apis', 'EC2.resources.json'), - waiters: File.join(Aws::GEM_ROOT, 'apis', 'EC2.waiters.json'), + api: File.join(Aws::APIS_DIR, 'EC2.api.json'), + docs: File.join(Aws::APIS_DIR, 'EC2.docs.json'), + paginators: File.join(Aws::APIS_DIR, 'EC2.paginators.json'), + resources: File.join(Aws::APIS_DIR, 'EC2.resources.json'), + waiters: File.join(Aws::APIS_DIR, 'EC2.waiters.json'), }) diff --git a/aws-sdk-core/lib/aws-sdk-core/elasticache.rb b/aws-sdk-core/lib/aws-sdk-core/elasticache.rb index 7b3300a4..69aa0c1d 100644 --- a/aws-sdk-core/lib/aws-sdk-core/elasticache.rb +++ b/aws-sdk-core/lib/aws-sdk-core/elasticache.rb @@ -1,5 +1,5 @@ Aws.add_service(:ElastiCache, { - api: File.join(Aws::GEM_ROOT, 'apis', 'ElastiCache.api.json'), - docs: File.join(Aws::GEM_ROOT, 'apis', 'ElastiCache.docs.json'), - paginators: File.join(Aws::GEM_ROOT, 'apis', 'ElastiCache.paginators.json'), + api: File.join(Aws::APIS_DIR, 'ElastiCache.api.json'), + docs: File.join(Aws::APIS_DIR, 'ElastiCache.docs.json'), + paginators: File.join(Aws::APIS_DIR, 'ElastiCache.paginators.json'), }) diff --git a/aws-sdk-core/lib/aws-sdk-core/elasticbeanstalk.rb b/aws-sdk-core/lib/aws-sdk-core/elasticbeanstalk.rb index 2871fa18..70f30455 100644 --- a/aws-sdk-core/lib/aws-sdk-core/elasticbeanstalk.rb +++ b/aws-sdk-core/lib/aws-sdk-core/elasticbeanstalk.rb @@ -1,5 +1,5 @@ Aws.add_service(:ElasticBeanstalk, { - api: File.join(Aws::GEM_ROOT, 'apis', 'ElasticBeanstalk.api.json'), - docs: File.join(Aws::GEM_ROOT, 'apis', 'ElasticBeanstalk.docs.json'), - paginators: File.join(Aws::GEM_ROOT, 'apis', 'ElasticBeanstalk.paginators.json'), + api: File.join(Aws::APIS_DIR, 'ElasticBeanstalk.api.json'), + docs: File.join(Aws::APIS_DIR, 'ElasticBeanstalk.docs.json'), + paginators: File.join(Aws::APIS_DIR, 'ElasticBeanstalk.paginators.json'), }) diff --git a/aws-sdk-core/lib/aws-sdk-core/elasticloadbalancing.rb b/aws-sdk-core/lib/aws-sdk-core/elasticloadbalancing.rb index 56a46d6b..c1ccf579 100644 --- a/aws-sdk-core/lib/aws-sdk-core/elasticloadbalancing.rb +++ b/aws-sdk-core/lib/aws-sdk-core/elasticloadbalancing.rb @@ -1,5 +1,5 @@ Aws.add_service(:ElasticLoadBalancing, { - api: File.join(Aws::GEM_ROOT, 'apis', 'ElasticLoadBalancing.api.json'), - docs: File.join(Aws::GEM_ROOT, 'apis', 'ElasticLoadBalancing.docs.json'), - paginators: File.join(Aws::GEM_ROOT, 'apis', 'ElasticLoadBalancing.paginators.json'), + api: File.join(Aws::APIS_DIR, 'ElasticLoadBalancing.api.json'), + docs: File.join(Aws::APIS_DIR, 'ElasticLoadBalancing.docs.json'), + paginators: File.join(Aws::APIS_DIR, 'ElasticLoadBalancing.paginators.json'), }) diff --git a/aws-sdk-core/lib/aws-sdk-core/elastictranscoder.rb b/aws-sdk-core/lib/aws-sdk-core/elastictranscoder.rb index 27b564e6..a98660c0 100644 --- a/aws-sdk-core/lib/aws-sdk-core/elastictranscoder.rb +++ b/aws-sdk-core/lib/aws-sdk-core/elastictranscoder.rb @@ -1,5 +1,5 @@ Aws.add_service(:ElasticTranscoder, { - api: File.join(Aws::GEM_ROOT, 'apis', 'ElasticTranscoder.api.json'), - docs: File.join(Aws::GEM_ROOT, 'apis', 'ElasticTranscoder.docs.json'), - paginators: File.join(Aws::GEM_ROOT, 'apis', 'ElasticTranscoder.paginators.json'), + api: File.join(Aws::APIS_DIR, 'ElasticTranscoder.api.json'), + docs: File.join(Aws::APIS_DIR, 'ElasticTranscoder.docs.json'), + paginators: File.join(Aws::APIS_DIR, 'ElasticTranscoder.paginators.json'), }) diff --git a/aws-sdk-core/lib/aws-sdk-core/emr.rb b/aws-sdk-core/lib/aws-sdk-core/emr.rb index 2a1d92e6..8ff45998 100644 --- a/aws-sdk-core/lib/aws-sdk-core/emr.rb +++ b/aws-sdk-core/lib/aws-sdk-core/emr.rb @@ -1,5 +1,5 @@ Aws.add_service(:EMR, { - api: File.join(Aws::GEM_ROOT, 'apis', 'EMR.api.json'), - docs: File.join(Aws::GEM_ROOT, 'apis', 'EMR.docs.json'), - paginators: File.join(Aws::GEM_ROOT, 'apis', 'EMR.paginators.json'), + api: File.join(Aws::APIS_DIR, 'EMR.api.json'), + docs: File.join(Aws::APIS_DIR, 'EMR.docs.json'), + paginators: File.join(Aws::APIS_DIR, 'EMR.paginators.json'), }) diff --git a/aws-sdk-core/lib/aws-sdk-core/glacier.rb b/aws-sdk-core/lib/aws-sdk-core/glacier.rb index ed9b79ad..22346aea 100644 --- a/aws-sdk-core/lib/aws-sdk-core/glacier.rb +++ b/aws-sdk-core/lib/aws-sdk-core/glacier.rb @@ -1,7 +1,7 @@ Aws.add_service(:Glacier, { - api: File.join(Aws::GEM_ROOT, 'apis', 'Glacier.api.json'), - docs: File.join(Aws::GEM_ROOT, 'apis', 'Glacier.docs.json'), - paginators: File.join(Aws::GEM_ROOT, 'apis', 'Glacier.paginators.json'), - resources: File.join(Aws::GEM_ROOT, 'apis', 'Glacier.resources.json'), - waiters: File.join(Aws::GEM_ROOT, 'apis', 'Glacier.waiters.json'), + api: File.join(Aws::APIS_DIR, 'Glacier.api.json'), + docs: File.join(Aws::APIS_DIR, 'Glacier.docs.json'), + paginators: File.join(Aws::APIS_DIR, 'Glacier.paginators.json'), + resources: File.join(Aws::APIS_DIR, 'Glacier.resources.json'), + waiters: File.join(Aws::APIS_DIR, 'Glacier.waiters.json'), }) diff --git a/aws-sdk-core/lib/aws-sdk-core/iam.rb b/aws-sdk-core/lib/aws-sdk-core/iam.rb index b9b33af4..d9911017 100644 --- a/aws-sdk-core/lib/aws-sdk-core/iam.rb +++ b/aws-sdk-core/lib/aws-sdk-core/iam.rb @@ -1,6 +1,6 @@ Aws.add_service(:IAM, { - api: File.join(Aws::GEM_ROOT, 'apis', 'IAM.api.json'), - docs: File.join(Aws::GEM_ROOT, 'apis', 'IAM.docs.json'), - paginators: File.join(Aws::GEM_ROOT, 'apis', 'IAM.paginators.json'), - resources: File.join(Aws::GEM_ROOT, 'apis', 'IAM.resources.json'), + api: File.join(Aws::APIS_DIR, 'IAM.api.json'), + docs: File.join(Aws::APIS_DIR, 'IAM.docs.json'), + paginators: File.join(Aws::APIS_DIR, 'IAM.paginators.json'), + resources: File.join(Aws::APIS_DIR, 'IAM.resources.json'), }) diff --git a/aws-sdk-core/lib/aws-sdk-core/importexport.rb b/aws-sdk-core/lib/aws-sdk-core/importexport.rb index f950dc7f..3ddf7411 100644 --- a/aws-sdk-core/lib/aws-sdk-core/importexport.rb +++ b/aws-sdk-core/lib/aws-sdk-core/importexport.rb @@ -1,5 +1,5 @@ Aws.add_service(:ImportExport, { - api: File.join(Aws::GEM_ROOT, 'apis', 'ImportExport.api.json'), - docs: File.join(Aws::GEM_ROOT, 'apis', 'ImportExport.docs.json'), - paginators: File.join(Aws::GEM_ROOT, 'apis', 'ImportExport.paginators.json'), + api: File.join(Aws::APIS_DIR, 'ImportExport.api.json'), + docs: File.join(Aws::APIS_DIR, 'ImportExport.docs.json'), + paginators: File.join(Aws::APIS_DIR, 'ImportExport.paginators.json'), }) diff --git a/aws-sdk-core/lib/aws-sdk-core/kinesis.rb b/aws-sdk-core/lib/aws-sdk-core/kinesis.rb index 093cd083..86490432 100644 --- a/aws-sdk-core/lib/aws-sdk-core/kinesis.rb +++ b/aws-sdk-core/lib/aws-sdk-core/kinesis.rb @@ -1,5 +1,5 @@ Aws.add_service(:Kinesis, { - api: File.join(Aws::GEM_ROOT, 'apis', 'Kinesis.api.json'), - docs: File.join(Aws::GEM_ROOT, 'apis', 'Kinesis.docs.json'), - paginators: File.join(Aws::GEM_ROOT, 'apis', 'Kinesis.paginators.json'), + api: File.join(Aws::APIS_DIR, 'Kinesis.api.json'), + docs: File.join(Aws::APIS_DIR, 'Kinesis.docs.json'), + paginators: File.join(Aws::APIS_DIR, 'Kinesis.paginators.json'), }) diff --git a/aws-sdk-core/lib/aws-sdk-core/opsworks.rb b/aws-sdk-core/lib/aws-sdk-core/opsworks.rb index a3a2b7ee..2c36e2f6 100644 --- a/aws-sdk-core/lib/aws-sdk-core/opsworks.rb +++ b/aws-sdk-core/lib/aws-sdk-core/opsworks.rb @@ -1,6 +1,6 @@ Aws.add_service(:OpsWorks, { - api: File.join(Aws::GEM_ROOT, 'apis', 'OpsWorks.api.json'), - docs: File.join(Aws::GEM_ROOT, 'apis', 'OpsWorks.docs.json'), - paginators: File.join(Aws::GEM_ROOT, 'apis', 'OpsWorks.paginators.json'), - resources: File.join(Aws::GEM_ROOT, 'apis', 'OpsWorks.resources.json'), + api: File.join(Aws::APIS_DIR, 'OpsWorks.api.json'), + docs: File.join(Aws::APIS_DIR, 'OpsWorks.docs.json'), + paginators: File.join(Aws::APIS_DIR, 'OpsWorks.paginators.json'), + resources: File.join(Aws::APIS_DIR, 'OpsWorks.resources.json'), }) diff --git a/aws-sdk-core/lib/aws-sdk-core/rds.rb b/aws-sdk-core/lib/aws-sdk-core/rds.rb index ab72dc28..9b786697 100644 --- a/aws-sdk-core/lib/aws-sdk-core/rds.rb +++ b/aws-sdk-core/lib/aws-sdk-core/rds.rb @@ -1,6 +1,6 @@ Aws.add_service(:RDS, { - api: File.join(Aws::GEM_ROOT, 'apis', 'RDS.api.json'), - docs: File.join(Aws::GEM_ROOT, 'apis', 'RDS.docs.json'), - paginators: File.join(Aws::GEM_ROOT, 'apis', 'RDS.paginators.json'), - waiters: File.join(Aws::GEM_ROOT, 'apis', 'RDS.waiters.json'), + api: File.join(Aws::APIS_DIR, 'RDS.api.json'), + docs: File.join(Aws::APIS_DIR, 'RDS.docs.json'), + paginators: File.join(Aws::APIS_DIR, 'RDS.paginators.json'), + waiters: File.join(Aws::APIS_DIR, 'RDS.waiters.json'), }) diff --git a/aws-sdk-core/lib/aws-sdk-core/redshift.rb b/aws-sdk-core/lib/aws-sdk-core/redshift.rb index aee5a517..8e1566a6 100644 --- a/aws-sdk-core/lib/aws-sdk-core/redshift.rb +++ b/aws-sdk-core/lib/aws-sdk-core/redshift.rb @@ -1,6 +1,6 @@ Aws.add_service(:Redshift, { - api: File.join(Aws::GEM_ROOT, 'apis', 'Redshift.api.json'), - docs: File.join(Aws::GEM_ROOT, 'apis', 'Redshift.docs.json'), - paginators: File.join(Aws::GEM_ROOT, 'apis', 'Redshift.paginators.json'), - waiters: File.join(Aws::GEM_ROOT, 'apis', 'Redshift.waiters.json'), + api: File.join(Aws::APIS_DIR, 'Redshift.api.json'), + docs: File.join(Aws::APIS_DIR, 'Redshift.docs.json'), + paginators: File.join(Aws::APIS_DIR, 'Redshift.paginators.json'), + waiters: File.join(Aws::APIS_DIR, 'Redshift.waiters.json'), }) diff --git a/aws-sdk-core/lib/aws-sdk-core/route53.rb b/aws-sdk-core/lib/aws-sdk-core/route53.rb index 2c22672a..c3f0f5a7 100644 --- a/aws-sdk-core/lib/aws-sdk-core/route53.rb +++ b/aws-sdk-core/lib/aws-sdk-core/route53.rb @@ -1,5 +1,5 @@ Aws.add_service(:Route53, { - api: File.join(Aws::GEM_ROOT, 'apis', 'Route53.api.json'), - docs: File.join(Aws::GEM_ROOT, 'apis', 'Route53.docs.json'), - paginators: File.join(Aws::GEM_ROOT, 'apis', 'Route53.paginators.json'), + api: File.join(Aws::APIS_DIR, 'Route53.api.json'), + docs: File.join(Aws::APIS_DIR, 'Route53.docs.json'), + paginators: File.join(Aws::APIS_DIR, 'Route53.paginators.json'), }) diff --git a/aws-sdk-core/lib/aws-sdk-core/route53domains.rb b/aws-sdk-core/lib/aws-sdk-core/route53domains.rb index c2875a5b..f5201494 100644 --- a/aws-sdk-core/lib/aws-sdk-core/route53domains.rb +++ b/aws-sdk-core/lib/aws-sdk-core/route53domains.rb @@ -1,4 +1,4 @@ Aws.add_service(:Route53Domains, { - api: File.join(Aws::GEM_ROOT, 'apis', 'Route53Domains.api.json'), - docs: File.join(Aws::GEM_ROOT, 'apis', 'Route53Domains.docs.json'), + api: File.join(Aws::APIS_DIR, 'Route53Domains.api.json'), + docs: File.join(Aws::APIS_DIR, 'Route53Domains.docs.json'), }) diff --git a/aws-sdk-core/lib/aws-sdk-core/s3.rb b/aws-sdk-core/lib/aws-sdk-core/s3.rb index 2a8ff07d..c77b78cc 100644 --- a/aws-sdk-core/lib/aws-sdk-core/s3.rb +++ b/aws-sdk-core/lib/aws-sdk-core/s3.rb @@ -1,13 +1,13 @@ Aws.add_service(:S3, { - api: File.join(Aws::GEM_ROOT, 'apis', 'S3.api.json'), - docs: File.join(Aws::GEM_ROOT, 'apis', 'S3.docs.json'), - paginators: File.join(Aws::GEM_ROOT, 'apis', 'S3.paginators.json'), - resources: File.join(Aws::GEM_ROOT, 'apis', 'S3.resources.json'), - waiters: File.join(Aws::GEM_ROOT, 'apis', 'S3.waiters.json'), + api: File.join(Aws::APIS_DIR, 'S3.api.json'), + docs: File.join(Aws::APIS_DIR, 'S3.docs.json'), + paginators: File.join(Aws::APIS_DIR, 'S3.paginators.json'), + resources: File.join(Aws::APIS_DIR, 'S3.resources.json'), + waiters: File.join(Aws::APIS_DIR, 'S3.waiters.json'), }) module Aws module S3 - autoload :Presigner, "#{SRC}/s3/presigner" + autoload :Presigner, 'aws-sdk-core/s3/presigner' end end diff --git a/aws-sdk-core/lib/aws-sdk-core/ses.rb b/aws-sdk-core/lib/aws-sdk-core/ses.rb index 29d7981a..c9872e63 100644 --- a/aws-sdk-core/lib/aws-sdk-core/ses.rb +++ b/aws-sdk-core/lib/aws-sdk-core/ses.rb @@ -1,6 +1,6 @@ Aws.add_service(:SES, { - api: File.join(Aws::GEM_ROOT, 'apis', 'SES.api.json'), - docs: File.join(Aws::GEM_ROOT, 'apis', 'SES.docs.json'), - paginators: File.join(Aws::GEM_ROOT, 'apis', 'SES.paginators.json'), - waiters: File.join(Aws::GEM_ROOT, 'apis', 'SES.waiters.json'), + api: File.join(Aws::APIS_DIR, 'SES.api.json'), + docs: File.join(Aws::APIS_DIR, 'SES.docs.json'), + paginators: File.join(Aws::APIS_DIR, 'SES.paginators.json'), + waiters: File.join(Aws::APIS_DIR, 'SES.waiters.json'), }) diff --git a/aws-sdk-core/lib/aws-sdk-core/simpledb.rb b/aws-sdk-core/lib/aws-sdk-core/simpledb.rb index f749de56..975153c7 100644 --- a/aws-sdk-core/lib/aws-sdk-core/simpledb.rb +++ b/aws-sdk-core/lib/aws-sdk-core/simpledb.rb @@ -1,5 +1,5 @@ Aws.add_service(:SimpleDB, { - api: File.join(Aws::GEM_ROOT, 'apis', 'SimpleDB.api.json'), - docs: File.join(Aws::GEM_ROOT, 'apis', 'SimpleDB.docs.json'), - paginators: File.join(Aws::GEM_ROOT, 'apis', 'SimpleDB.paginators.json'), + api: File.join(Aws::APIS_DIR, 'SimpleDB.api.json'), + docs: File.join(Aws::APIS_DIR, 'SimpleDB.docs.json'), + paginators: File.join(Aws::APIS_DIR, 'SimpleDB.paginators.json'), }) diff --git a/aws-sdk-core/lib/aws-sdk-core/sns.rb b/aws-sdk-core/lib/aws-sdk-core/sns.rb index 3169b863..2051abf9 100644 --- a/aws-sdk-core/lib/aws-sdk-core/sns.rb +++ b/aws-sdk-core/lib/aws-sdk-core/sns.rb @@ -1,6 +1,6 @@ Aws.add_service(:SNS, { - api: File.join(Aws::GEM_ROOT, 'apis', 'SNS.api.json'), - docs: File.join(Aws::GEM_ROOT, 'apis', 'SNS.docs.json'), - paginators: File.join(Aws::GEM_ROOT, 'apis', 'SNS.paginators.json'), - resources: File.join(Aws::GEM_ROOT, 'apis', 'SNS.resources.json'), + api: File.join(Aws::APIS_DIR, 'SNS.api.json'), + docs: File.join(Aws::APIS_DIR, 'SNS.docs.json'), + paginators: File.join(Aws::APIS_DIR, 'SNS.paginators.json'), + resources: File.join(Aws::APIS_DIR, 'SNS.resources.json'), }) diff --git a/aws-sdk-core/lib/aws-sdk-core/sqs.rb b/aws-sdk-core/lib/aws-sdk-core/sqs.rb index 0b84cb71..3db63080 100644 --- a/aws-sdk-core/lib/aws-sdk-core/sqs.rb +++ b/aws-sdk-core/lib/aws-sdk-core/sqs.rb @@ -1,6 +1,6 @@ Aws.add_service(:SQS, { - api: File.join(Aws::GEM_ROOT, 'apis', 'SQS.api.json'), - docs: File.join(Aws::GEM_ROOT, 'apis', 'SQS.docs.json'), - paginators: File.join(Aws::GEM_ROOT, 'apis', 'SQS.paginators.json'), - resources: File.join(Aws::GEM_ROOT, 'apis', 'SQS.resources.json'), + api: File.join(Aws::APIS_DIR, 'SQS.api.json'), + docs: File.join(Aws::APIS_DIR, 'SQS.docs.json'), + paginators: File.join(Aws::APIS_DIR, 'SQS.paginators.json'), + resources: File.join(Aws::APIS_DIR, 'SQS.resources.json'), }) diff --git a/aws-sdk-core/lib/aws-sdk-core/storagegateway.rb b/aws-sdk-core/lib/aws-sdk-core/storagegateway.rb index 1847a207..cf78d7d5 100644 --- a/aws-sdk-core/lib/aws-sdk-core/storagegateway.rb +++ b/aws-sdk-core/lib/aws-sdk-core/storagegateway.rb @@ -1,5 +1,5 @@ Aws.add_service(:StorageGateway, { - api: File.join(Aws::GEM_ROOT, 'apis', 'StorageGateway.api.json'), - docs: File.join(Aws::GEM_ROOT, 'apis', 'StorageGateway.docs.json'), - paginators: File.join(Aws::GEM_ROOT, 'apis', 'StorageGateway.paginators.json'), + api: File.join(Aws::APIS_DIR, 'StorageGateway.api.json'), + docs: File.join(Aws::APIS_DIR, 'StorageGateway.docs.json'), + paginators: File.join(Aws::APIS_DIR, 'StorageGateway.paginators.json'), }) diff --git a/aws-sdk-core/lib/aws-sdk-core/sts.rb b/aws-sdk-core/lib/aws-sdk-core/sts.rb index 1a10cdcf..74315496 100644 --- a/aws-sdk-core/lib/aws-sdk-core/sts.rb +++ b/aws-sdk-core/lib/aws-sdk-core/sts.rb @@ -1,4 +1,4 @@ Aws.add_service(:STS, { - api: File.join(Aws::GEM_ROOT, 'apis', 'STS.api.json'), - docs: File.join(Aws::GEM_ROOT, 'apis', 'STS.docs.json'), + api: File.join(Aws::APIS_DIR, 'STS.api.json'), + docs: File.join(Aws::APIS_DIR, 'STS.docs.json'), }) diff --git a/aws-sdk-core/lib/aws-sdk-core/support.rb b/aws-sdk-core/lib/aws-sdk-core/support.rb index d2f37e83..3d2fd34e 100644 --- a/aws-sdk-core/lib/aws-sdk-core/support.rb +++ b/aws-sdk-core/lib/aws-sdk-core/support.rb @@ -1,5 +1,5 @@ Aws.add_service(:Support, { - api: File.join(Aws::GEM_ROOT, 'apis', 'Support.api.json'), - docs: File.join(Aws::GEM_ROOT, 'apis', 'Support.docs.json'), - paginators: File.join(Aws::GEM_ROOT, 'apis', 'Support.paginators.json'), + api: File.join(Aws::APIS_DIR, 'Support.api.json'), + docs: File.join(Aws::APIS_DIR, 'Support.docs.json'), + paginators: File.join(Aws::APIS_DIR, 'Support.paginators.json'), }) diff --git a/aws-sdk-core/lib/aws-sdk-core/swf.rb b/aws-sdk-core/lib/aws-sdk-core/swf.rb index b10498c1..fa71edef 100644 --- a/aws-sdk-core/lib/aws-sdk-core/swf.rb +++ b/aws-sdk-core/lib/aws-sdk-core/swf.rb @@ -1,5 +1,5 @@ Aws.add_service(:SWF, { - api: File.join(Aws::GEM_ROOT, 'apis', 'SWF.api.json'), - docs: File.join(Aws::GEM_ROOT, 'apis', 'SWF.docs.json'), - paginators: File.join(Aws::GEM_ROOT, 'apis', 'SWF.paginators.json'), + api: File.join(Aws::APIS_DIR, 'SWF.api.json'), + docs: File.join(Aws::APIS_DIR, 'SWF.docs.json'), + paginators: File.join(Aws::APIS_DIR, 'SWF.paginators.json'), }) From ef9ae46def0e43ac927cb739b43d7e34f1f03d57 Mon Sep 17 00:00:00 2001 From: Trevor Rowe Date: Fri, 19 Sep 2014 13:28:33 -0700 Subject: [PATCH 4/5] Flattened an extra directory from aws-sdk-resource lib path. Also moved unit tests to matching locations. --- aws-sdk-resources/lib/aws-sdk-resources.rb | 41 +++++----- .../aws-sdk-resources/{resource => }/batch.rb | 2 +- .../{resource => }/builder.rb | 2 +- .../{resource => }/builder_sources.rb | 2 +- .../{resource => }/collection.rb | 6 +- .../{resource => }/definition.rb | 8 +- .../lib/aws-sdk-resources/documenter.rb | 18 +++++ .../documenter/base_operation_documenter.rb | 10 +-- .../documenter/data_operation_documenter.rb | 2 +- .../enumerate_data_operation_documenter.rb | 2 +- ...enumerate_resource_operation_documenter.rb | 2 +- .../documenter/operation_documenter.rb | 2 +- .../reference_operation_documenter.rb | 2 +- .../resource_operation_documenter.rb | 2 +- .../documenter/waiter_operation_documenter.rb | 2 +- .../{resource => }/errors.rb | 2 +- .../{resource => }/operation_methods.rb | 2 +- .../{resource => }/operations.rb | 6 +- .../{resource => }/options.rb | 2 +- .../{resource => }/request.rb | 4 +- .../{resource => }/request_params.rb | 4 +- .../{resource/base.rb => resource.rb} | 10 +-- .../aws-sdk-resources/resource/documenter.rb | 18 ----- .../{resource => }/source.rb | 2 +- .../{resource => }/validator.rb | 14 ++-- .../{resource => }/validator/context.rb | 2 +- .../validator/identifier_validator.rb | 2 +- .../validator/operation_validator.rb | 2 +- .../{resource => }/validator/rule.rb | 2 +- .../validator/shape_validator.rb | 2 +- .../spec/aws-sdk-resources_spec.rb | 78 ++++++++++--------- .../resource => }/builder_sources_spec.rb | 2 +- .../spec/{aws/resource => }/builder_spec.rb | 8 +- .../{aws/resource => }/definition_spec.rb | 8 +- .../spec/{aws/resource => }/errors_spec.rb | 2 +- .../operations/data_operation_spec.rb | 2 +- .../enumerate_resource_operation_spec.rb | 2 +- .../operations/operation_spec.rb | 4 +- .../operations/reference_operation_spec.rb | 6 +- .../operations/resource_operation_spec.rb | 2 +- .../{aws/resource => }/request_params_spec.rb | 2 +- .../spec/{aws/resource => }/request_spec.rb | 2 +- .../base_spec.rb => resource_spec.rb} | 12 +-- aws-sdk-resources/spec/spec_helper.rb | 2 +- .../spec/{aws/resource => }/validator_spec.rb | 4 +- 45 files changed, 159 insertions(+), 154 deletions(-) rename aws-sdk-resources/lib/aws-sdk-resources/{resource => }/batch.rb (99%) rename aws-sdk-resources/lib/aws-sdk-resources/{resource => }/builder.rb (99%) rename aws-sdk-resources/lib/aws-sdk-resources/{resource => }/builder_sources.rb (99%) rename aws-sdk-resources/lib/aws-sdk-resources/{resource => }/collection.rb (97%) rename aws-sdk-resources/lib/aws-sdk-resources/{resource => }/definition.rb (98%) create mode 100644 aws-sdk-resources/lib/aws-sdk-resources/documenter.rb rename aws-sdk-resources/lib/aws-sdk-resources/{resource => }/documenter/base_operation_documenter.rb (97%) rename aws-sdk-resources/lib/aws-sdk-resources/{resource => }/documenter/data_operation_documenter.rb (98%) rename aws-sdk-resources/lib/aws-sdk-resources/{resource => }/documenter/enumerate_data_operation_documenter.rb (98%) rename aws-sdk-resources/lib/aws-sdk-resources/{resource => }/documenter/enumerate_resource_operation_documenter.rb (99%) rename aws-sdk-resources/lib/aws-sdk-resources/{resource => }/documenter/operation_documenter.rb (98%) rename aws-sdk-resources/lib/aws-sdk-resources/{resource => }/documenter/reference_operation_documenter.rb (99%) rename aws-sdk-resources/lib/aws-sdk-resources/{resource => }/documenter/resource_operation_documenter.rb (98%) rename aws-sdk-resources/lib/aws-sdk-resources/{resource => }/documenter/waiter_operation_documenter.rb (99%) rename aws-sdk-resources/lib/aws-sdk-resources/{resource => }/errors.rb (92%) rename aws-sdk-resources/lib/aws-sdk-resources/{resource => }/operation_methods.rb (98%) rename aws-sdk-resources/lib/aws-sdk-resources/{resource => }/operations.rb (98%) rename aws-sdk-resources/lib/aws-sdk-resources/{resource => }/options.rb (95%) rename aws-sdk-resources/lib/aws-sdk-resources/{resource => }/request.rb (92%) rename aws-sdk-resources/lib/aws-sdk-resources/{resource => }/request_params.rb (98%) rename aws-sdk-resources/lib/aws-sdk-resources/{resource/base.rb => resource.rb} (94%) delete mode 100644 aws-sdk-resources/lib/aws-sdk-resources/resource/documenter.rb rename aws-sdk-resources/lib/aws-sdk-resources/{resource => }/source.rb (97%) rename aws-sdk-resources/lib/aws-sdk-resources/{resource => }/validator.rb (91%) rename aws-sdk-resources/lib/aws-sdk-resources/{resource => }/validator/context.rb (98%) rename aws-sdk-resources/lib/aws-sdk-resources/{resource => }/validator/identifier_validator.rb (99%) rename aws-sdk-resources/lib/aws-sdk-resources/{resource => }/validator/operation_validator.rb (99%) rename aws-sdk-resources/lib/aws-sdk-resources/{resource => }/validator/rule.rb (98%) rename aws-sdk-resources/lib/aws-sdk-resources/{resource => }/validator/shape_validator.rb (98%) rename aws-sdk-resources/spec/{aws/resource => }/builder_sources_spec.rb (99%) rename aws-sdk-resources/spec/{aws/resource => }/builder_spec.rb (95%) rename aws-sdk-resources/spec/{aws/resource => }/definition_spec.rb (99%) rename aws-sdk-resources/spec/{aws/resource => }/errors_spec.rb (96%) rename aws-sdk-resources/spec/{aws/resource => }/operations/data_operation_spec.rb (99%) rename aws-sdk-resources/spec/{aws/resource => }/operations/enumerate_resource_operation_spec.rb (99%) rename aws-sdk-resources/spec/{aws/resource => }/operations/operation_spec.rb (94%) rename aws-sdk-resources/spec/{aws/resource => }/operations/reference_operation_spec.rb (91%) rename aws-sdk-resources/spec/{aws/resource => }/operations/resource_operation_spec.rb (99%) rename aws-sdk-resources/spec/{aws/resource => }/request_params_spec.rb (99%) rename aws-sdk-resources/spec/{aws/resource => }/request_spec.rb (99%) rename aws-sdk-resources/spec/{aws/resource/base_spec.rb => resource_spec.rb} (96%) rename aws-sdk-resources/spec/{aws/resource => }/validator_spec.rb (92%) diff --git a/aws-sdk-resources/lib/aws-sdk-resources.rb b/aws-sdk-resources/lib/aws-sdk-resources.rb index 7c82de30..6f6c8047 100644 --- a/aws-sdk-resources/lib/aws-sdk-resources.rb +++ b/aws-sdk-resources/lib/aws-sdk-resources.rb @@ -1,32 +1,33 @@ require 'aws-sdk-core' module Aws + module Resources + + autoload :Batch, 'aws-sdk-resources/batch' + autoload :Builder, 'aws-sdk-resources/builder' + autoload :BuilderSources, 'aws-sdk-resources/builder_sources' + autoload :Collection, 'aws-sdk-resources/collection' + autoload :Definition, 'aws-sdk-resources/definition' + autoload :Documenter, 'aws-sdk-resources/documenter' + autoload :Errors, 'aws-sdk-resources/errors' + autoload :Operations, 'aws-sdk-resources/operations' + autoload :OperationMethods, 'aws-sdk-resources/operation_methods' + autoload :Options, 'aws-sdk-resources/options' + autoload :Request, 'aws-sdk-resources/request' + autoload :RequestParams, 'aws-sdk-resources/request_params' + autoload :Resource, 'aws-sdk-resources/resource' + autoload :Source, 'aws-sdk-resources/source' + autoload :Validator, 'aws-sdk-resources/validator' - module Resource - autoload :Base, 'aws-sdk-resources/resource/base' - autoload :Batch, 'aws-sdk-resources/resource/batch' - autoload :Builder, 'aws-sdk-resources/resource/builder' - autoload :BuilderSources, 'aws-sdk-resources/resource/builder_sources' - autoload :Collection, 'aws-sdk-resources/resource/collection' - autoload :Definition, 'aws-sdk-resources/resource/definition' - autoload :Documenter, 'aws-sdk-resources/resource/documenter' - autoload :Errors, 'aws-sdk-resources/resource/errors' - autoload :Operations, 'aws-sdk-resources/resource/operations' - autoload :OperationMethods, 'aws-sdk-resources/resource/operation_methods' - autoload :Options, 'aws-sdk-resources/resource/options' - autoload :Request, 'aws-sdk-resources/resource/request' - autoload :RequestParams, 'aws-sdk-resources/resource/request_params' - autoload :Source, 'aws-sdk-resources/resource/source' - autoload :Validator, 'aws-sdk-resources/resource/validator' end service_added do |_, svc_module, options| definition = options[:resources] definition = case definition - when nil then Resource::Definition.new({}) - when Resource::Definition then definition - when Hash then Resource::Definition.new(definition) - when String then Resource::Definition.new(Aws.load_json(definition), source_path: definition) + when nil then Resources::Definition.new({}) + when Resources::Definition then definition + when Hash then Resources::Definition.new(definition) + when String then Resources::Definition.new(Aws.load_json(definition), source_path: definition) else raise ArgumentError, "invalid resource definition #{definition}" end definition.apply(svc_module) diff --git a/aws-sdk-resources/lib/aws-sdk-resources/resource/batch.rb b/aws-sdk-resources/lib/aws-sdk-resources/batch.rb similarity index 99% rename from aws-sdk-resources/lib/aws-sdk-resources/resource/batch.rb rename to aws-sdk-resources/lib/aws-sdk-resources/batch.rb index 7b579a59..7ff969c1 100644 --- a/aws-sdk-resources/lib/aws-sdk-resources/resource/batch.rb +++ b/aws-sdk-resources/lib/aws-sdk-resources/batch.rb @@ -1,5 +1,5 @@ module Aws - module Resource + module Resources # A batch provides array like access to a list of resources. Batches # also provide the ability to invoke certain operations against diff --git a/aws-sdk-resources/lib/aws-sdk-resources/resource/builder.rb b/aws-sdk-resources/lib/aws-sdk-resources/builder.rb similarity index 99% rename from aws-sdk-resources/lib/aws-sdk-resources/resource/builder.rb rename to aws-sdk-resources/lib/aws-sdk-resources/builder.rb index e7696a42..1dab0484 100644 --- a/aws-sdk-resources/lib/aws-sdk-resources/resource/builder.rb +++ b/aws-sdk-resources/lib/aws-sdk-resources/builder.rb @@ -1,7 +1,7 @@ require 'jamespath' module Aws - module Resource + module Resources # A {Builder} construct resource objects. It extracts resource identifiers # for the objects it builds from another resource object and/or an diff --git a/aws-sdk-resources/lib/aws-sdk-resources/resource/builder_sources.rb b/aws-sdk-resources/lib/aws-sdk-resources/builder_sources.rb similarity index 99% rename from aws-sdk-resources/lib/aws-sdk-resources/resource/builder_sources.rb rename to aws-sdk-resources/lib/aws-sdk-resources/builder_sources.rb index eab9d54f..25ca7aa4 100644 --- a/aws-sdk-resources/lib/aws-sdk-resources/resource/builder_sources.rb +++ b/aws-sdk-resources/lib/aws-sdk-resources/builder_sources.rb @@ -1,7 +1,7 @@ require 'jamespath' module Aws - module Resource + module Resources module BuilderSources # Used by a {Builder} to extract resource identifiers from an AWS diff --git a/aws-sdk-resources/lib/aws-sdk-resources/resource/collection.rb b/aws-sdk-resources/lib/aws-sdk-resources/collection.rb similarity index 97% rename from aws-sdk-resources/lib/aws-sdk-resources/resource/collection.rb rename to aws-sdk-resources/lib/aws-sdk-resources/collection.rb index a1926689..44822117 100644 --- a/aws-sdk-resources/lib/aws-sdk-resources/resource/collection.rb +++ b/aws-sdk-resources/lib/aws-sdk-resources/collection.rb @@ -1,5 +1,5 @@ module Aws - module Resource + module Resources class Collection include Enumerable @@ -13,7 +13,7 @@ def initialize(operation, options) reject_limit_param(options) end - # @return [Enumerator] + # @return [Enumerator] def each(&block) if block_given? batches.each { |batch| batch.each(&block) } @@ -73,7 +73,7 @@ def batch_size(size) # resources = collection.first(10) # resources.delete # - # @return [Resource::Base, Resource::Batch] + # @return [Resource, Batch] def first(count = 1) if count == 1 limit(1).to_a.first diff --git a/aws-sdk-resources/lib/aws-sdk-resources/resource/definition.rb b/aws-sdk-resources/lib/aws-sdk-resources/definition.rb similarity index 98% rename from aws-sdk-resources/lib/aws-sdk-resources/resource/definition.rb rename to aws-sdk-resources/lib/aws-sdk-resources/definition.rb index 7ea2d9ab..50f9f31f 100644 --- a/aws-sdk-resources/lib/aws-sdk-resources/resource/definition.rb +++ b/aws-sdk-resources/lib/aws-sdk-resources/definition.rb @@ -1,7 +1,7 @@ require 'set' module Aws - module Resource + module Resources # Given a resource definition document, a {Definition} can build a set # of related resource classes. @@ -36,7 +36,7 @@ def apply(namespace) def build_resource_classes(namespace) each_definition do |name, definition| - resource_class = Class.new(Base) + resource_class = Class.new(Resource) resource_class.client_class = namespace::Client resource_class.resource_name = name (definition['identifiers'] || []).each do |identifier| @@ -44,7 +44,7 @@ def build_resource_classes(namespace) end namespace.const_set(name, resource_class) unless name == 'Resource' - resource_class.const_set(:Batch, Class.new(Resource::Batch)) + resource_class.const_set(:Batch, Class.new(Batch)) end end end @@ -278,7 +278,7 @@ def define_reference(namespace, resource, name, definition) end def define_builder(namespace, definition) - builder = Resource::Builder.new( + builder = Builder.new( resource_class: namespace.const_get(definition['type']), sources: builder_sources(definition['identifiers'] || []) ) diff --git a/aws-sdk-resources/lib/aws-sdk-resources/documenter.rb b/aws-sdk-resources/lib/aws-sdk-resources/documenter.rb new file mode 100644 index 00000000..19b59d3c --- /dev/null +++ b/aws-sdk-resources/lib/aws-sdk-resources/documenter.rb @@ -0,0 +1,18 @@ +require 'json' + +module Aws + module Resources + class Documenter + + autoload :BaseOperationDocumenter, 'aws-sdk-resources/documenter/base_operation_documenter' + autoload :DataOperationDocumenter, 'aws-sdk-resources/documenter/data_operation_documenter' + autoload :EnumerateDataOperationDocumenter, 'aws-sdk-resources/documenter/enumerate_data_operation_documenter' + autoload :EnumerateResourceOperationDocumenter, 'aws-sdk-resources/documenter/enumerate_resource_operation_documenter' + autoload :OperationDocumenter, 'aws-sdk-resources/documenter/operation_documenter' + autoload :ReferenceOperationDocumenter, 'aws-sdk-resources/documenter/reference_operation_documenter' + autoload :ResourceOperationDocumenter, 'aws-sdk-resources/documenter/resource_operation_documenter' + autoload :WaiterOperationDocumenter, 'aws-sdk-resources/documenter/waiter_operation_documenter' + + end + end +end diff --git a/aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/base_operation_documenter.rb b/aws-sdk-resources/lib/aws-sdk-resources/documenter/base_operation_documenter.rb similarity index 97% rename from aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/base_operation_documenter.rb rename to aws-sdk-resources/lib/aws-sdk-resources/documenter/base_operation_documenter.rb index 6e943c3c..9822d11f 100644 --- a/aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/base_operation_documenter.rb +++ b/aws-sdk-resources/lib/aws-sdk-resources/documenter/base_operation_documenter.rb @@ -1,5 +1,5 @@ module Aws - module Resource + module Resources class Documenter class BaseOperationDocumenter @@ -27,7 +27,7 @@ def initialize(yard_class, resource_class, operation_name, operation) # @return [YARD::CodeObject::ClassObject] attr_reader :yard_class - # @return [Class] Returns the resource class this + # @return [Class] Returns the resource class this # operation belongs to. attr_reader :resource_class @@ -42,7 +42,7 @@ def initialize(yard_class, resource_class, operation_name, operation) # attr_reader :resource_class_name - # @return [Class,nil] Returns the class of the resource + # @return [Class,nil] Returns the class of the resource # returned by invoking this operation. Returns `nil` if this operation # does not return any resource objects. attr_reader :target_resource_class @@ -72,12 +72,12 @@ def initialize(yard_class, resource_class, operation_name, operation) # This is useful for generating `@see` tags and `{links}`. attr_reader :called_operation - # @return [Resource::Builder,nil] Returns the resource builder for + # @return [Builder,nil] Returns the resource builder for # this operation. Returns `nil` if this operation does not build # and return resource objects. attr_reader :builder - # @return [Resource::Source] + # @return [Source] attr_reader :source # Constructs and returns a new YARD method object for this operation. diff --git a/aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/data_operation_documenter.rb b/aws-sdk-resources/lib/aws-sdk-resources/documenter/data_operation_documenter.rb similarity index 98% rename from aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/data_operation_documenter.rb rename to aws-sdk-resources/lib/aws-sdk-resources/documenter/data_operation_documenter.rb index 775ad166..aa768844 100644 --- a/aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/data_operation_documenter.rb +++ b/aws-sdk-resources/lib/aws-sdk-resources/documenter/data_operation_documenter.rb @@ -1,5 +1,5 @@ module Aws - module Resource + module Resources class Documenter class DataOperationDocumenter < BaseOperationDocumenter diff --git a/aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/enumerate_data_operation_documenter.rb b/aws-sdk-resources/lib/aws-sdk-resources/documenter/enumerate_data_operation_documenter.rb similarity index 98% rename from aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/enumerate_data_operation_documenter.rb rename to aws-sdk-resources/lib/aws-sdk-resources/documenter/enumerate_data_operation_documenter.rb index bccd1525..89368125 100644 --- a/aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/enumerate_data_operation_documenter.rb +++ b/aws-sdk-resources/lib/aws-sdk-resources/documenter/enumerate_data_operation_documenter.rb @@ -1,5 +1,5 @@ module Aws - module Resource + module Resources class Documenter class EnumerateDataOperationDocumenter < BaseOperationDocumenter diff --git a/aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/enumerate_resource_operation_documenter.rb b/aws-sdk-resources/lib/aws-sdk-resources/documenter/enumerate_resource_operation_documenter.rb similarity index 99% rename from aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/enumerate_resource_operation_documenter.rb rename to aws-sdk-resources/lib/aws-sdk-resources/documenter/enumerate_resource_operation_documenter.rb index 402f5aa2..02b290dd 100644 --- a/aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/enumerate_resource_operation_documenter.rb +++ b/aws-sdk-resources/lib/aws-sdk-resources/documenter/enumerate_resource_operation_documenter.rb @@ -1,5 +1,5 @@ module Aws - module Resource + module Resources class Documenter class EnumerateResourceOperationDocumenter < BaseOperationDocumenter diff --git a/aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/operation_documenter.rb b/aws-sdk-resources/lib/aws-sdk-resources/documenter/operation_documenter.rb similarity index 98% rename from aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/operation_documenter.rb rename to aws-sdk-resources/lib/aws-sdk-resources/documenter/operation_documenter.rb index 7770c580..9b2c9dc3 100644 --- a/aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/operation_documenter.rb +++ b/aws-sdk-resources/lib/aws-sdk-resources/documenter/operation_documenter.rb @@ -1,5 +1,5 @@ module Aws - module Resource + module Resources class Documenter class OperationDocumenter < BaseOperationDocumenter diff --git a/aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/reference_operation_documenter.rb b/aws-sdk-resources/lib/aws-sdk-resources/documenter/reference_operation_documenter.rb similarity index 99% rename from aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/reference_operation_documenter.rb rename to aws-sdk-resources/lib/aws-sdk-resources/documenter/reference_operation_documenter.rb index 26fef4c2..98a469cc 100644 --- a/aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/reference_operation_documenter.rb +++ b/aws-sdk-resources/lib/aws-sdk-resources/documenter/reference_operation_documenter.rb @@ -1,5 +1,5 @@ module Aws - module Resource + module Resources class Documenter class ReferenceOperationDocumenter < BaseOperationDocumenter diff --git a/aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/resource_operation_documenter.rb b/aws-sdk-resources/lib/aws-sdk-resources/documenter/resource_operation_documenter.rb similarity index 98% rename from aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/resource_operation_documenter.rb rename to aws-sdk-resources/lib/aws-sdk-resources/documenter/resource_operation_documenter.rb index 8342c760..7135785a 100644 --- a/aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/resource_operation_documenter.rb +++ b/aws-sdk-resources/lib/aws-sdk-resources/documenter/resource_operation_documenter.rb @@ -1,5 +1,5 @@ module Aws - module Resource + module Resources class Documenter class ResourceOperationDocumenter < BaseOperationDocumenter diff --git a/aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/waiter_operation_documenter.rb b/aws-sdk-resources/lib/aws-sdk-resources/documenter/waiter_operation_documenter.rb similarity index 99% rename from aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/waiter_operation_documenter.rb rename to aws-sdk-resources/lib/aws-sdk-resources/documenter/waiter_operation_documenter.rb index 576319c4..2d47be95 100644 --- a/aws-sdk-resources/lib/aws-sdk-resources/resource/documenter/waiter_operation_documenter.rb +++ b/aws-sdk-resources/lib/aws-sdk-resources/documenter/waiter_operation_documenter.rb @@ -1,5 +1,5 @@ module Aws - module Resource + module Resources class Documenter class WaiterOperationDocumenter < BaseOperationDocumenter diff --git a/aws-sdk-resources/lib/aws-sdk-resources/resource/errors.rb b/aws-sdk-resources/lib/aws-sdk-resources/errors.rb similarity index 92% rename from aws-sdk-resources/lib/aws-sdk-resources/resource/errors.rb rename to aws-sdk-resources/lib/aws-sdk-resources/errors.rb index aab4a038..1ee1de05 100644 --- a/aws-sdk-resources/lib/aws-sdk-resources/resource/errors.rb +++ b/aws-sdk-resources/lib/aws-sdk-resources/errors.rb @@ -1,5 +1,5 @@ module Aws - module Resource + module Resources module Errors class UnknownOperationError < ArgumentError diff --git a/aws-sdk-resources/lib/aws-sdk-resources/resource/operation_methods.rb b/aws-sdk-resources/lib/aws-sdk-resources/operation_methods.rb similarity index 98% rename from aws-sdk-resources/lib/aws-sdk-resources/resource/operation_methods.rb rename to aws-sdk-resources/lib/aws-sdk-resources/operation_methods.rb index a28369bf..eadce112 100644 --- a/aws-sdk-resources/lib/aws-sdk-resources/resource/operation_methods.rb +++ b/aws-sdk-resources/lib/aws-sdk-resources/operation_methods.rb @@ -1,5 +1,5 @@ module Aws - module Resource + module Resources module OperationMethods # @param [Symbol] name diff --git a/aws-sdk-resources/lib/aws-sdk-resources/resource/operations.rb b/aws-sdk-resources/lib/aws-sdk-resources/operations.rb similarity index 98% rename from aws-sdk-resources/lib/aws-sdk-resources/resource/operations.rb rename to aws-sdk-resources/lib/aws-sdk-resources/operations.rb index d238645c..f262a41a 100644 --- a/aws-sdk-resources/lib/aws-sdk-resources/resource/operations.rb +++ b/aws-sdk-resources/lib/aws-sdk-resources/operations.rb @@ -1,7 +1,7 @@ require 'jamespath' module Aws - module Resource + module Resources module Operations # Base class for operations. An operation is any object that responds @@ -22,7 +22,7 @@ def initialize(options = {}) # @return [Source, nil] attr_reader :source - # @option options[required,Resource::Base] :resource + # @option options[required,Resource] :resource # @option options[required,Array] :args # @option options[Proc] :block # @return [Mixed] @@ -258,7 +258,7 @@ def initialize(options = {}) # @return [String, nil] attr_reader :path - # @option options [required,Resource::Base] :resource + # @option options [required,Resource] :resource # @option options [required,Array] :args def call(options, &block) diff --git a/aws-sdk-resources/lib/aws-sdk-resources/resource/options.rb b/aws-sdk-resources/lib/aws-sdk-resources/options.rb similarity index 95% rename from aws-sdk-resources/lib/aws-sdk-resources/resource/options.rb rename to aws-sdk-resources/lib/aws-sdk-resources/options.rb index 6491ea64..c12501b4 100644 --- a/aws-sdk-resources/lib/aws-sdk-resources/resource/options.rb +++ b/aws-sdk-resources/lib/aws-sdk-resources/options.rb @@ -1,5 +1,5 @@ module Aws - module Resource + module Resources module Options private diff --git a/aws-sdk-resources/lib/aws-sdk-resources/resource/request.rb b/aws-sdk-resources/lib/aws-sdk-resources/request.rb similarity index 92% rename from aws-sdk-resources/lib/aws-sdk-resources/resource/request.rb rename to aws-sdk-resources/lib/aws-sdk-resources/request.rb index b2a8f69a..1895ac4c 100644 --- a/aws-sdk-resources/lib/aws-sdk-resources/resource/request.rb +++ b/aws-sdk-resources/lib/aws-sdk-resources/request.rb @@ -1,5 +1,5 @@ module Aws - module Resource + module Resources class Request # @option opitons [requried, String] :method_name @@ -17,7 +17,7 @@ def initialize(options = {}) # @return [Array] attr_reader :params - # @option options [required,Resource::Base] :resource + # @option options [required,Resource] :resource # @option options [Array] :args # @return [Seahorse::Client::Response] def call(options) diff --git a/aws-sdk-resources/lib/aws-sdk-resources/resource/request_params.rb b/aws-sdk-resources/lib/aws-sdk-resources/request_params.rb similarity index 98% rename from aws-sdk-resources/lib/aws-sdk-resources/resource/request_params.rb rename to aws-sdk-resources/lib/aws-sdk-resources/request_params.rb index 060615b0..b22c7a33 100644 --- a/aws-sdk-resources/lib/aws-sdk-resources/resource/request_params.rb +++ b/aws-sdk-resources/lib/aws-sdk-resources/request_params.rb @@ -1,5 +1,5 @@ module Aws - module Resource + module Resources module RequestParams # @api private @@ -10,7 +10,7 @@ def initialize(params) @params = params end - # @option options [required,Resource::Base] :resource + # @option options [required,Resource] :resource # @option options [required,Array] :args # @return [Hash] def build(options = {}) diff --git a/aws-sdk-resources/lib/aws-sdk-resources/resource/base.rb b/aws-sdk-resources/lib/aws-sdk-resources/resource.rb similarity index 94% rename from aws-sdk-resources/lib/aws-sdk-resources/resource/base.rb rename to aws-sdk-resources/lib/aws-sdk-resources/resource.rb index 5d2cc6cf..5becdbb9 100644 --- a/aws-sdk-resources/lib/aws-sdk-resources/resource/base.rb +++ b/aws-sdk-resources/lib/aws-sdk-resources/resource.rb @@ -1,12 +1,12 @@ module Aws - module Resource - class Base + module Resources + class Resource extend OperationMethods # @overload initialize(options = {}) # @overload initialize(*identifiers, options = {}) - # @option options [Seahorse::Client::Base] :client + # @option options [Client] :client def initialize(*args) options = args.last.is_a?(Hash) ? args.pop : {} @identifiers = extract_identifiers(args, options) @@ -15,7 +15,7 @@ def initialize(*args) end # Marked private to prevent double documentation - # @return [Seahorse::Client::Base] + # @return [Client] attr_reader :client # Marked private to prevent double documentation @@ -87,7 +87,7 @@ class << self # @return [String, nil] The resource name. attr_accessor :resource_name - # @return [Class, nil] When constructing + # @return [Class, nil] When constructing # a resource, the client will default to an instance of the # this class. attr_accessor :client_class diff --git a/aws-sdk-resources/lib/aws-sdk-resources/resource/documenter.rb b/aws-sdk-resources/lib/aws-sdk-resources/resource/documenter.rb deleted file mode 100644 index 0ad1ca09..00000000 --- a/aws-sdk-resources/lib/aws-sdk-resources/resource/documenter.rb +++ /dev/null @@ -1,18 +0,0 @@ -require 'json' - -module Aws - module Resource - class Documenter - - autoload :BaseOperationDocumenter, 'aws-sdk-resources/resource/documenter/base_operation_documenter' - autoload :DataOperationDocumenter, 'aws-sdk-resources/resource/documenter/data_operation_documenter' - autoload :EnumerateDataOperationDocumenter, 'aws-sdk-resources/resource/documenter/enumerate_data_operation_documenter' - autoload :EnumerateResourceOperationDocumenter, 'aws-sdk-resources/resource/documenter/enumerate_resource_operation_documenter' - autoload :OperationDocumenter, 'aws-sdk-resources/resource/documenter/operation_documenter' - autoload :ReferenceOperationDocumenter, 'aws-sdk-resources/resource/documenter/reference_operation_documenter' - autoload :ResourceOperationDocumenter, 'aws-sdk-resources/resource/documenter/resource_operation_documenter' - autoload :WaiterOperationDocumenter, 'aws-sdk-resources/resource/documenter/waiter_operation_documenter' - - end - end -end diff --git a/aws-sdk-resources/lib/aws-sdk-resources/resource/source.rb b/aws-sdk-resources/lib/aws-sdk-resources/source.rb similarity index 97% rename from aws-sdk-resources/lib/aws-sdk-resources/resource/source.rb rename to aws-sdk-resources/lib/aws-sdk-resources/source.rb index 51a2a8ad..39628b8d 100644 --- a/aws-sdk-resources/lib/aws-sdk-resources/resource/source.rb +++ b/aws-sdk-resources/lib/aws-sdk-resources/source.rb @@ -1,7 +1,7 @@ require 'json' module Aws - module Resource + module Resources class Source def initialize(definition, file = nil) diff --git a/aws-sdk-resources/lib/aws-sdk-resources/resource/validator.rb b/aws-sdk-resources/lib/aws-sdk-resources/validator.rb similarity index 91% rename from aws-sdk-resources/lib/aws-sdk-resources/resource/validator.rb rename to aws-sdk-resources/lib/aws-sdk-resources/validator.rb index 50421e48..b107953b 100644 --- a/aws-sdk-resources/lib/aws-sdk-resources/resource/validator.rb +++ b/aws-sdk-resources/lib/aws-sdk-resources/validator.rb @@ -1,13 +1,13 @@ require 'multi_json' require 'json-schema' -require 'aws-sdk-resources/resource/validator/context' -require 'aws-sdk-resources/resource/validator/rule' -require 'aws-sdk-resources/resource/validator/shape_validator' -require 'aws-sdk-resources/resource/validator/identifier_validator' -require 'aws-sdk-resources/resource/validator/operation_validator' +require 'aws-sdk-resources/validator/context' +require 'aws-sdk-resources/validator/rule' +require 'aws-sdk-resources/validator/shape_validator' +require 'aws-sdk-resources/validator/identifier_validator' +require 'aws-sdk-resources/validator/operation_validator' module Aws - module Resource + module Resources module Validator # @api private @@ -15,7 +15,7 @@ module Validator # @api private SCHEMA_PATH = File.expand_path(File.join([ - File.dirname(__FILE__), '..', '..', '..', 'resources.schema.json' + File.dirname(__FILE__), '..', '..', 'resources.schema.json' ])) class << self diff --git a/aws-sdk-resources/lib/aws-sdk-resources/resource/validator/context.rb b/aws-sdk-resources/lib/aws-sdk-resources/validator/context.rb similarity index 98% rename from aws-sdk-resources/lib/aws-sdk-resources/resource/validator/context.rb rename to aws-sdk-resources/lib/aws-sdk-resources/validator/context.rb index 7f9cd60c..40c25a40 100644 --- a/aws-sdk-resources/lib/aws-sdk-resources/resource/validator/context.rb +++ b/aws-sdk-resources/lib/aws-sdk-resources/validator/context.rb @@ -1,5 +1,5 @@ module Aws - module Resource + module Resources module Validator class Context diff --git a/aws-sdk-resources/lib/aws-sdk-resources/resource/validator/identifier_validator.rb b/aws-sdk-resources/lib/aws-sdk-resources/validator/identifier_validator.rb similarity index 99% rename from aws-sdk-resources/lib/aws-sdk-resources/resource/validator/identifier_validator.rb rename to aws-sdk-resources/lib/aws-sdk-resources/validator/identifier_validator.rb index 79c4246f..b34124b0 100644 --- a/aws-sdk-resources/lib/aws-sdk-resources/resource/validator/identifier_validator.rb +++ b/aws-sdk-resources/lib/aws-sdk-resources/validator/identifier_validator.rb @@ -1,5 +1,5 @@ module Aws - module Resource + module Resources module Validator class IdentifierValidator diff --git a/aws-sdk-resources/lib/aws-sdk-resources/resource/validator/operation_validator.rb b/aws-sdk-resources/lib/aws-sdk-resources/validator/operation_validator.rb similarity index 99% rename from aws-sdk-resources/lib/aws-sdk-resources/resource/validator/operation_validator.rb rename to aws-sdk-resources/lib/aws-sdk-resources/validator/operation_validator.rb index 3d88ba40..8aee98c2 100644 --- a/aws-sdk-resources/lib/aws-sdk-resources/resource/validator/operation_validator.rb +++ b/aws-sdk-resources/lib/aws-sdk-resources/validator/operation_validator.rb @@ -1,5 +1,5 @@ module Aws - module Resource + module Resources module Validator class OperationValidator diff --git a/aws-sdk-resources/lib/aws-sdk-resources/resource/validator/rule.rb b/aws-sdk-resources/lib/aws-sdk-resources/validator/rule.rb similarity index 98% rename from aws-sdk-resources/lib/aws-sdk-resources/resource/validator/rule.rb rename to aws-sdk-resources/lib/aws-sdk-resources/validator/rule.rb index 38a8281a..5bf9ad6a 100644 --- a/aws-sdk-resources/lib/aws-sdk-resources/resource/validator/rule.rb +++ b/aws-sdk-resources/lib/aws-sdk-resources/validator/rule.rb @@ -1,5 +1,5 @@ module Aws - module Resource + module Resources module Validator # @api private class Rule diff --git a/aws-sdk-resources/lib/aws-sdk-resources/resource/validator/shape_validator.rb b/aws-sdk-resources/lib/aws-sdk-resources/validator/shape_validator.rb similarity index 98% rename from aws-sdk-resources/lib/aws-sdk-resources/resource/validator/shape_validator.rb rename to aws-sdk-resources/lib/aws-sdk-resources/validator/shape_validator.rb index 1e05da9a..b96ac77a 100644 --- a/aws-sdk-resources/lib/aws-sdk-resources/resource/validator/shape_validator.rb +++ b/aws-sdk-resources/lib/aws-sdk-resources/validator/shape_validator.rb @@ -1,5 +1,5 @@ module Aws - module Resource + module Resources module Validator class ShapeValidator diff --git a/aws-sdk-resources/spec/aws-sdk-resources_spec.rb b/aws-sdk-resources/spec/aws-sdk-resources_spec.rb index ac0094c1..3eaec209 100644 --- a/aws-sdk-resources/spec/aws-sdk-resources_spec.rb +++ b/aws-sdk-resources/spec/aws-sdk-resources_spec.rb @@ -1,42 +1,46 @@ require 'spec_helper' -describe 'aws-sdk-resources gem' do - Aws::SERVICE_MODULE_NAMES.each do |svc| - - it "defines a resource class for Aws::#{svc}" do - resource_class = Aws.const_get(svc).const_get(:Resource) - expect(resource_class.ancestors).to include(Aws::Resource::Base) - end - - end - - describe 'add_service' do - - it 'accepts paths to definition documents' do - Aws.add_service(:WithPath, resources: fixture_path('definitions', 'empty.json')) - expect(Aws::WithPath.constants).to include(:Resource) - end - - it 'accepts definition hashes' do - Aws.add_service(:WithHash, resources: {}) - expect(Aws::WithHash.constants).to include(:Resource) +module Aws + module Resources + describe 'aws-sdk-resources gem' do + Aws::SERVICE_MODULE_NAMES.each do |svc| + + it "defines a resource class for Aws::#{svc}" do + resource_class = Aws.const_get(svc).const_get(:Resource) + expect(resource_class.ancestors).to include(Resource) + end + + end + + describe 'add_service' do + + it 'accepts paths to definition documents' do + Aws.add_service(:WithPath, resources: fixture_path('definitions', 'empty.json')) + expect(Aws::WithPath.constants).to include(:Resource) + end + + it 'accepts definition hashes' do + Aws.add_service(:WithHash, resources: {}) + expect(Aws::WithHash.constants).to include(:Resource) + end + + it 'accepts definition objects' do + Aws.add_service(:WithObj, resources: Definition.new) + expect(Aws::WithObj.constants).to include(:Resource) + end + + it 'works when a definition is not defined' do + Aws.add_service(:WithNil) + expect(Aws::WithNil.constants).to include(:Resource) + end + + it 'raises and error when definition is not one of the above' do + expect { + Aws.add_service(:WithOther, resources:Object.new) + }.to raise_error(ArgumentError, /invalid resource definition/) + end + + end end - - it 'accepts definition objects' do - Aws.add_service(:WithObj, resources: Aws::Resource::Definition.new) - expect(Aws::WithObj.constants).to include(:Resource) - end - - it 'works when a definition is not defined' do - Aws.add_service(:WithNil) - expect(Aws::WithNil.constants).to include(:Resource) - end - - it 'raises and error when definition is not one of the above' do - expect { - Aws.add_service(:WithNil, resources:Object.new) - }.to raise_error(ArgumentError, /invalid resource definition/) - end - end end diff --git a/aws-sdk-resources/spec/aws/resource/builder_sources_spec.rb b/aws-sdk-resources/spec/builder_sources_spec.rb similarity index 99% rename from aws-sdk-resources/spec/aws/resource/builder_sources_spec.rb rename to aws-sdk-resources/spec/builder_sources_spec.rb index ecd0a637..d4d6bfbb 100644 --- a/aws-sdk-resources/spec/aws/resource/builder_sources_spec.rb +++ b/aws-sdk-resources/spec/builder_sources_spec.rb @@ -1,7 +1,7 @@ require 'spec_helper' module Aws - module Resource + module Resources module BuilderSources describe Base do diff --git a/aws-sdk-resources/spec/aws/resource/builder_spec.rb b/aws-sdk-resources/spec/builder_spec.rb similarity index 95% rename from aws-sdk-resources/spec/aws/resource/builder_spec.rb rename to aws-sdk-resources/spec/builder_spec.rb index a4a02b0b..315c47ca 100644 --- a/aws-sdk-resources/spec/aws/resource/builder_spec.rb +++ b/aws-sdk-resources/spec/builder_spec.rb @@ -1,7 +1,7 @@ require 'spec_helper' module Aws - module Resource + module Resources describe Builder do # A builder object construct a resource object from the context of @@ -13,7 +13,7 @@ module Resource let(:parent) { double('resource-parent-object', client:client) } - let(:resource_class) { Class.new(Resource::Base) } + let(:resource_class) { Class.new(Resource) } context '#resource_class' do @@ -101,13 +101,13 @@ module Resource client: double('client') ) resource_class = new_resource_class(identifiers:[:id]) - resource_class.const_set(:Batch, Class.new(Resource::Batch)) + resource_class.const_set(:Batch, Class.new(Batch)) builder = Builder.new(resource_class:resource_class, sources:[ BuilderSources::DataMember.new('ids[]', 'id'), ]) result = builder.build(client:client,resource:parent) expect(result).to be_a(resource_class::Batch) - expect(result).to be_kind_of(Resource::Batch) + expect(result).to be_kind_of(Batch) expect(result.size).to eq(2) expect(result[0]).to be_kind_of(resource_class) expect(result[1]).to be_kind_of(resource_class) diff --git a/aws-sdk-resources/spec/aws/resource/definition_spec.rb b/aws-sdk-resources/spec/definition_spec.rb similarity index 99% rename from aws-sdk-resources/spec/aws/resource/definition_spec.rb rename to aws-sdk-resources/spec/definition_spec.rb index 27b12d3b..33b390ba 100644 --- a/aws-sdk-resources/spec/aws/resource/definition_spec.rb +++ b/aws-sdk-resources/spec/definition_spec.rb @@ -1,7 +1,7 @@ require 'spec_helper' module Aws - module Resource + module Resources describe Definition do describe '#define_service' do @@ -52,15 +52,15 @@ def apply_definition [:Client, :Group, :Resource, :User]) svc = namespace::Resource.new - expect(svc).to be_kind_of(Resource::Base) + expect(svc).to be_kind_of(Resource) expect(svc.identifiers).to eq({}) user = namespace::User.new(name:'user-name') - expect(user).to be_kind_of(Resource::Base) + expect(user).to be_kind_of(Resource) expect(user.identifiers).to eq(name:'user-name') group = namespace::Group.new(id:'group-id') - expect(group).to be_kind_of(Resource::Base) + expect(group).to be_kind_of(Resource) expect(group.identifiers).to eq(id:'group-id') end diff --git a/aws-sdk-resources/spec/aws/resource/errors_spec.rb b/aws-sdk-resources/spec/errors_spec.rb similarity index 96% rename from aws-sdk-resources/spec/aws/resource/errors_spec.rb rename to aws-sdk-resources/spec/errors_spec.rb index 0ee806b5..e1b12434 100644 --- a/aws-sdk-resources/spec/aws/resource/errors_spec.rb +++ b/aws-sdk-resources/spec/errors_spec.rb @@ -1,7 +1,7 @@ require 'spec_helper' module Aws - module Resource + module Resources module Errors describe UnknownOperationError do diff --git a/aws-sdk-resources/spec/aws/resource/operations/data_operation_spec.rb b/aws-sdk-resources/spec/operations/data_operation_spec.rb similarity index 99% rename from aws-sdk-resources/spec/aws/resource/operations/data_operation_spec.rb rename to aws-sdk-resources/spec/operations/data_operation_spec.rb index 7d658986..e6641292 100644 --- a/aws-sdk-resources/spec/aws/resource/operations/data_operation_spec.rb +++ b/aws-sdk-resources/spec/operations/data_operation_spec.rb @@ -1,7 +1,7 @@ require 'spec_helper' module Aws - module Resource + module Resources module Operations describe DataOperation do describe '#request' do diff --git a/aws-sdk-resources/spec/aws/resource/operations/enumerate_resource_operation_spec.rb b/aws-sdk-resources/spec/operations/enumerate_resource_operation_spec.rb similarity index 99% rename from aws-sdk-resources/spec/aws/resource/operations/enumerate_resource_operation_spec.rb rename to aws-sdk-resources/spec/operations/enumerate_resource_operation_spec.rb index 2fb8848c..3d2b3b01 100644 --- a/aws-sdk-resources/spec/aws/resource/operations/enumerate_resource_operation_spec.rb +++ b/aws-sdk-resources/spec/operations/enumerate_resource_operation_spec.rb @@ -1,7 +1,7 @@ require 'spec_helper' module Aws - module Resource + module Resources module Operations describe EnumerateResourceOperation do describe '#request' do diff --git a/aws-sdk-resources/spec/aws/resource/operations/operation_spec.rb b/aws-sdk-resources/spec/operations/operation_spec.rb similarity index 94% rename from aws-sdk-resources/spec/aws/resource/operations/operation_spec.rb rename to aws-sdk-resources/spec/operations/operation_spec.rb index 0c722adf..f3079cef 100644 --- a/aws-sdk-resources/spec/aws/resource/operations/operation_spec.rb +++ b/aws-sdk-resources/spec/operations/operation_spec.rb @@ -1,7 +1,7 @@ require 'spec_helper' module Aws - module Resource + module Resources module Operations describe Operation do describe '#request' do @@ -30,7 +30,7 @@ module Operations with(param:'value'). and_return(response) - resource_class = Class.new(Resource::Base) + resource_class = Class.new(Resource) resource_class.add_operation(:action, Operation.new( request: Request.new(method_name:'operation') )) diff --git a/aws-sdk-resources/spec/aws/resource/operations/reference_operation_spec.rb b/aws-sdk-resources/spec/operations/reference_operation_spec.rb similarity index 91% rename from aws-sdk-resources/spec/aws/resource/operations/reference_operation_spec.rb rename to aws-sdk-resources/spec/operations/reference_operation_spec.rb index b584f09e..996e7ce9 100644 --- a/aws-sdk-resources/spec/aws/resource/operations/reference_operation_spec.rb +++ b/aws-sdk-resources/spec/operations/reference_operation_spec.rb @@ -1,7 +1,7 @@ require 'spec_helper' module Aws - module Resource + module Resources module Operations describe ReferenceOperation do describe '#request' do @@ -30,7 +30,7 @@ module Operations BuilderSources::DataMember.new('ids[]', 'id') ]) )) - resource_class.const_set(:Batch, Class.new(Resource::Batch)) + resource_class.const_set(:Batch, Class.new(Batch)) client = double('client') resource = resource_class.new( id: 'parent', @@ -39,7 +39,7 @@ module Operations ) linked = resource.get_linked expect(linked).to be_a(resource_class::Batch) - expect(linked).to be_kind_of(Resource::Batch) + expect(linked).to be_kind_of(Batch) expect(linked.size).to eq(2) expect(linked[0].id).to eq('child-1') expect(linked[1].id).to eq('child-2') diff --git a/aws-sdk-resources/spec/aws/resource/operations/resource_operation_spec.rb b/aws-sdk-resources/spec/operations/resource_operation_spec.rb similarity index 99% rename from aws-sdk-resources/spec/aws/resource/operations/resource_operation_spec.rb rename to aws-sdk-resources/spec/operations/resource_operation_spec.rb index 1cf9e92d..65fef11d 100644 --- a/aws-sdk-resources/spec/aws/resource/operations/resource_operation_spec.rb +++ b/aws-sdk-resources/spec/operations/resource_operation_spec.rb @@ -1,7 +1,7 @@ require 'spec_helper' module Aws - module Resource + module Resources module Operations describe ResourceOperation do diff --git a/aws-sdk-resources/spec/aws/resource/request_params_spec.rb b/aws-sdk-resources/spec/request_params_spec.rb similarity index 99% rename from aws-sdk-resources/spec/aws/resource/request_params_spec.rb rename to aws-sdk-resources/spec/request_params_spec.rb index 7cc33cc5..e36495a7 100644 --- a/aws-sdk-resources/spec/aws/resource/request_params_spec.rb +++ b/aws-sdk-resources/spec/request_params_spec.rb @@ -1,7 +1,7 @@ require 'spec_helper' module Aws - module Resource + module Resources describe RequestParams do describe RequestParams::Base do diff --git a/aws-sdk-resources/spec/aws/resource/request_spec.rb b/aws-sdk-resources/spec/request_spec.rb similarity index 99% rename from aws-sdk-resources/spec/aws/resource/request_spec.rb rename to aws-sdk-resources/spec/request_spec.rb index a8ebab58..7e5a4a0b 100644 --- a/aws-sdk-resources/spec/aws/resource/request_spec.rb +++ b/aws-sdk-resources/spec/request_spec.rb @@ -1,7 +1,7 @@ require 'spec_helper' module Aws - module Resource + module Resources describe Request do describe '#method_name' do diff --git a/aws-sdk-resources/spec/aws/resource/base_spec.rb b/aws-sdk-resources/spec/resource_spec.rb similarity index 96% rename from aws-sdk-resources/spec/aws/resource/base_spec.rb rename to aws-sdk-resources/spec/resource_spec.rb index 17c4d9ad..508ea0d4 100644 --- a/aws-sdk-resources/spec/aws/resource/base_spec.rb +++ b/aws-sdk-resources/spec/resource_spec.rb @@ -1,17 +1,17 @@ require 'spec_helper' module Aws - module Resource - describe Base do + module Resources + describe Resource do let(:client_class) { double('client-class') } let(:client) { double('client') } - let(:resource_name) { 'Aws::Resources::Example' } + let(:resource_name) { 'Aws::Svc::Example' } let(:resource_class) { - Class.new(Base).tap { |klass| klass.client_class = client_class } + Class.new(Resource).tap { |klass| klass.client_class = client_class } } let(:resource) { resource_class.new } @@ -101,13 +101,13 @@ module Resource describe '#inspect' do it 'contains the resource class name' do - expect(resource.inspect).to eq('#') + expect(resource.inspect).to eq('#') end it 'includes identifiers in the inspect string' do resource_class.add_identifier(:name) resource = resource_class.new(name:'abc') - expect(resource.inspect).to eq('#') + expect(resource.inspect).to eq('#') end end diff --git a/aws-sdk-resources/spec/spec_helper.rb b/aws-sdk-resources/spec/spec_helper.rb index 915cd03c..5eb62b32 100644 --- a/aws-sdk-resources/spec/spec_helper.rb +++ b/aws-sdk-resources/spec/spec_helper.rb @@ -13,7 +13,7 @@ def fixture_path(*parts) end def new_resource_class(options = {}) - resource_class = Class.new(Aws::Resource::Base) + resource_class = Class.new(Aws::Resources::Resource) resource_class.client_class = options[:client_class] Array(options[:identifiers]).each do |identifier| resource_class.add_identifier(identifier) diff --git a/aws-sdk-resources/spec/aws/resource/validator_spec.rb b/aws-sdk-resources/spec/validator_spec.rb similarity index 92% rename from aws-sdk-resources/spec/aws/resource/validator_spec.rb rename to aws-sdk-resources/spec/validator_spec.rb index 771c6fd7..017378e0 100644 --- a/aws-sdk-resources/spec/aws/resource/validator_spec.rb +++ b/aws-sdk-resources/spec/validator_spec.rb @@ -2,7 +2,7 @@ require 'multi_json' def fixtures - path = File.expand_path(File.join(File.dirname(__FILE__), '..', '..', + path = File.expand_path(File.join(File.dirname(__FILE__), 'fixtures', 'validator', '*')) directories = Dir.glob(path) raise 'unable to locate fixtures' if directories.empty? @@ -10,7 +10,7 @@ def fixtures end module Aws - module Resource + module Resources describe Validator do def definition(dir) From 044a88eb1f0d59f7be71da0291cca2c6889433ac Mon Sep 17 00:00:00 2001 From: Trevor Rowe Date: Fri, 19 Sep 2014 14:14:33 -0700 Subject: [PATCH 5/5] Fixed a few documentation issues with the restructuring of gem files. --- aws-sdk-resources/lib/aws-sdk-resources/collection.rb | 2 +- .../documenter/base_operation_documenter.rb | 2 +- .../enumerate_resource_operation_documenter.rb | 4 ++-- doc-src/plugins/resources.rb | 10 +++++----- 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/aws-sdk-resources/lib/aws-sdk-resources/collection.rb b/aws-sdk-resources/lib/aws-sdk-resources/collection.rb index 44822117..49deeeb8 100644 --- a/aws-sdk-resources/lib/aws-sdk-resources/collection.rb +++ b/aws-sdk-resources/lib/aws-sdk-resources/collection.rb @@ -123,7 +123,7 @@ def limit_key def reject_limit_param(options) if options[:params] && options[:params][limit_key] msg = "invalid option :#{limit_key}, call #limit or #batch_size " - msg << "on the returned Aws::Resource::Collection instead" + msg << "on the returned Aws::Resources::Collection instead" raise ArgumentError, msg end end diff --git a/aws-sdk-resources/lib/aws-sdk-resources/documenter/base_operation_documenter.rb b/aws-sdk-resources/lib/aws-sdk-resources/documenter/base_operation_documenter.rb index 9822d11f..df820111 100644 --- a/aws-sdk-resources/lib/aws-sdk-resources/documenter/base_operation_documenter.rb +++ b/aws-sdk-resources/lib/aws-sdk-resources/documenter/base_operation_documenter.rb @@ -63,7 +63,7 @@ def initialize(yard_class, resource_class, operation_name, operation) # any API requests. attr_reader :api_request - # @return [Array, nil] Returns the + # @return [Array, nil] Returns the # parameters this operation binds to the made request. Returns `nil` # if this operation does not make a request. attr_reader :api_request_params diff --git a/aws-sdk-resources/lib/aws-sdk-resources/documenter/enumerate_resource_operation_documenter.rb b/aws-sdk-resources/lib/aws-sdk-resources/documenter/enumerate_resource_operation_documenter.rb index 02b290dd..e4c5289c 100644 --- a/aws-sdk-resources/lib/aws-sdk-resources/documenter/enumerate_resource_operation_documenter.rb +++ b/aws-sdk-resources/lib/aws-sdk-resources/documenter/enumerate_resource_operation_documenter.rb @@ -5,7 +5,7 @@ class EnumerateResourceOperationDocumenter < BaseOperationDocumenter def docstring super + ' ' +<<-DOCSTRING.lstrip -Returns a {Resource::Collection Collection} of {#{target_resource_class_name}} +Returns a {Resources::Collection Collection} of {#{target_resource_class_name}} resources. No API requests are made until you call an enumerable method on the collection. {#{called_operation}} will be called multiple times until every {#{target_resource_class_name}} has been yielded. @@ -17,7 +17,7 @@ def return_type end def return_message - "a {Aws::Resource::Collection Collection} of {#{target_resource_class_name}} resource objects." + "a {Aws::Resources::Collection Collection} of {#{target_resource_class_name}} resource objects." end def example_tags diff --git a/doc-src/plugins/resources.rb b/doc-src/plugins/resources.rb index 4d97ac6d..84f4a422 100644 --- a/doc-src/plugins/resources.rb +++ b/doc-src/plugins/resources.rb @@ -2,7 +2,7 @@ # KNOWN ISSUES # -# - Changed Resource::Base#data, #client and #attributes from +# - Changed Resource#data, #client and #attributes from # attr_reader to methods so I could override them in the client # with the appropriate return values # @@ -46,7 +46,7 @@ def apply namespace = YARD::Registry[svc_module.name] svc_module.constants.each do |const| klass = svc_module.const_get(const) - if klass.ancestors.include?(Aws::Resource::Base) + if klass.ancestors.include?(Aws::Resources::Resource) yard_class = document_resource_class(const, namespace, klass) if const == :Resource yard_class.docstring = service_docstring(const, yard_class, klass) @@ -84,9 +84,9 @@ def service_docstring(name, yard_class, svc_class) def document_resource_class(name, namespace, resource_class) yard_class = YARD::CodeObjects::ClassObject.new(namespace, name) - yard_class.superclass = YARD::Registry['Aws::Resource::Base'] + yard_class.superclass = YARD::Registry['Aws::Resources::Resource'] document_constructor(yard_class, resource_class) - # intentionally disabled as these are documented in Aws::Resource::Base + # intentionally disabled as these are documented in Aws::Resources::Resource #document_client_getter(yard_class, resource_class) #document_identifiers_hash(yard_class, resource_class) #document_load(yard_class, resource_class) @@ -212,7 +212,7 @@ def document_operation_methods(yard_class, resource_class) def document_operation_method(yard_class, resource_class, name, operation) type = operation.class.name.split('::').last - documenter = Aws::Resource::Documenter.const_get(type + 'Documenter') + documenter = Aws::Resources::Documenter.const_get(type + 'Documenter') documenter = documenter.new(yard_class, resource_class, name, operation) documenter.method_object end