Class: Aws::Client

Inherits:
Seahorse::Client::Base show all
Includes:
ClientPaging, ClientStubs, ClientWaiters
Defined in:
lib/aws-sdk-core/client.rb

Overview

Base class for all Aws service clients.

Constant Summary collapse

DEFAULT_PLUGINS =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

[
  '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',
]

Class Attribute Summary collapse

Attributes inherited from Seahorse::Client::Base

#config, #handlers

Class Method Summary collapse

Methods included from ClientWaiters

included, #wait_until, #waiter_names

Methods included from ClientStubs

included, #initialize, #next_stub, #stub_responses

Methods included from ClientPaging

included

Methods inherited from Seahorse::Client::Base

add_plugin, api, #build_request, clear_plugins, #initialize, #inspect, new, #operation, #operation_names, plugins, remove_plugin, set_api, set_plugins

Methods included from Seahorse::Client::HandlerBuilder

#handle, #handle_request, #handle_response, #handler_for, #new_handler

Class Attribute Details

.identifierSymbol

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns:

  • (Symbol)


25
26
27
# File 'lib/aws-sdk-core/client.rb', line 25

def identifier
  @identifier
end

Class Method Details

.define(svc_name, options) ⇒ Object

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.



28
29
30
31
32
33
34
35
36
37
# File 'lib/aws-sdk-core/client.rb', line 28

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