Sha256: ad52933b528451f7561b7b3a6c48ccc0c29b297b099dd9c9e3f79694afe87259

Contents?: true

Size: 1.1 KB

Versions: 46

Compression:

Stored size: 1.1 KB

Contents

module Aws
  # Base class for all {Aws} service clients.
  class Client < Seahorse::Client::Base

    # @api private
    DEFAULT_PLUGINS = [
      'Seahorse::Client::Plugins::Logging',
      'Seahorse::Client::Plugins::RestfulBindings',
      'Seahorse::Client::Plugins::ContentLength',
      'Aws::Plugins::UserAgent',
      'Aws::Plugins::RetryErrors',
      'Aws::Plugins::GlobalConfiguration',
      'Aws::Plugins::RegionalEndpoint',
      'Aws::Plugins::RequestSigner',
    ]

    include ClientPaging
    include ClientStubs
    include ClientWaiters

    class << self

      # @return [Symbol]
      # @api private
      attr_accessor :identifier

      # @api private
      def define(svc_name, options)
        client_class = Class.new(self)
        client_class.identifier = svc_name.downcase.to_sym
        [:api, :paginators, :waiters].each do |definition|
          client_class.send("set_#{definition}", options[definition])
        end
        DEFAULT_PLUGINS.each { |plugin| client_class.add_plugin(plugin) }
        Api::ServiceCustomizations.apply(client_class)
        client_class
      end

    end
  end
end

Version data entries

46 entries across 46 versions & 1 rubygems

Version Path
aws-sdk-core-2.0.48 lib/aws-sdk-core/client.rb
aws-sdk-core-2.0.47 lib/aws-sdk-core/client.rb
aws-sdk-core-2.0.46 lib/aws-sdk-core/client.rb
aws-sdk-core-2.0.45 lib/aws-sdk-core/client.rb
aws-sdk-core-2.0.44 lib/aws-sdk-core/client.rb
aws-sdk-core-2.0.43 lib/aws-sdk-core/client.rb
aws-sdk-core-2.0.42 lib/aws-sdk-core/client.rb
aws-sdk-core-2.0.41 lib/aws-sdk-core/client.rb
aws-sdk-core-2.0.40 lib/aws-sdk-core/client.rb
aws-sdk-core-2.0.39 lib/aws-sdk-core/client.rb
aws-sdk-core-2.0.38 lib/aws-sdk-core/client.rb
aws-sdk-core-2.0.37 lib/aws-sdk-core/client.rb
aws-sdk-core-2.0.36 lib/aws-sdk-core/client.rb
aws-sdk-core-2.0.35 lib/aws-sdk-core/client.rb
aws-sdk-core-2.0.34 lib/aws-sdk-core/client.rb
aws-sdk-core-2.0.33 lib/aws-sdk-core/client.rb
aws-sdk-core-2.0.32 lib/aws-sdk-core/client.rb
aws-sdk-core-2.0.31 lib/aws-sdk-core/client.rb
aws-sdk-core-2.0.30 lib/aws-sdk-core/client.rb
aws-sdk-core-2.0.29 lib/aws-sdk-core/client.rb