Module: AWS::Core::ServiceInterface
- Included in:
- AutoScaling, AWS::CloudFormation, AWS::CloudFront, AWS::CloudSearch, AWS::CloudWatch, DataPipeline, DirectConnect, DynamoDB, EC2, ELB, EMR, ElastiCache, ElasticBeanstalk, ElasticTranscoder, Glacier, IAM, ImportExport, OpsWorks, RDS, Redshift, Route53, S3, SNS, SQS, STS, SimpleDB, SimpleEmailService, SimpleWorkflow, StorageGateway, Support
- Defined in:
- lib/aws/core/service_interface.rb
Class Method Summary (collapse)
Instance Method Summary (collapse)
-
- (Object) initialize(options = {})
Returns a new interface object for this service.
- - (String) inspect
Class Method Details
+ (Object) included(base)
19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
# File 'lib/aws/core/service_interface.rb', line 19 def self.included base base.send(:attr_reader, :config) base.send(:attr_reader, :client) base.module_eval('module Errors; end') unless base::Errors.include?(Errors) base::Errors.module_eval { include Errors } end AWS::Core::MetaUtils.extend(base) do # @api private def endpoint_prefix prefix = nil, = {} if prefix @endpoint_prefix = prefix @global_endpoint = !![:global] end @endpoint_prefix end # @api private def global_endpoint? @global_endpoint end def regions RegionCollection.new(:service => self) end end end |
Instance Method Details
- (Object) initialize(options = {})
Returns a new interface object for this service. You can override
any of the global configuration parameters by passing them in as
hash options. They are merged with AWS.config or merged
with the provided :config object.
@ec2 = AWS::EC2.new(:max_retries => 2)
69 70 71 72 73 74 |
# File 'lib/aws/core/service_interface.rb', line 69 def initialize = {} = .dup @config = (.delete(:config) || AWS.config) @config = @config.with() @client = @config.send(Inflection.ruby_name(self.class.name.split('::').last) + '_client') end |
- (String) inspect
77 78 79 |
# File 'lib/aws/core/service_interface.rb', line 77 def inspect "<#{self.class}>" end |