Class: Aws::Client
- Inherits:
-
Seahorse::Client::Base
- Object
- Seahorse::Client::Base
- Aws::Client
- Includes:
- 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::ContentLength', 'Aws::Plugins::Logging', 'Aws::Plugins::ParamConverter', 'Aws::Plugins::ParamValidator', 'Aws::Plugins::UserAgent', 'Aws::Plugins::HelpfulSocketErrors', 'Aws::Plugins::RetryErrors', 'Aws::Plugins::GlobalConfiguration', 'Aws::Plugins::RegionalEndpoint', 'Aws::Plugins::RequestSigner', 'Aws::Plugins::ResponsePaging', 'Aws::Plugins::StubResponses', 'Aws::Plugins::IdempotencyToken', 'Aws::Plugins::JsonvalueConverter' ]
- PROTOCOL_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.
Hash.new(DEFAULT_PLUGINS).merge({ 'json' => DEFAULT_PLUGINS + %w(Aws::Plugins::Protocols::JsonRpc), 'rest-json' => DEFAULT_PLUGINS + %w(Aws::Plugins::Protocols::RestJson), 'rest-xml' => DEFAULT_PLUGINS + %w(Aws::Plugins::Protocols::RestXml), 'query' => DEFAULT_PLUGINS + %w(Aws::Plugins::Protocols::Query), 'ec2' => DEFAULT_PLUGINS + %w(Aws::Plugins::Protocols::EC2), })
Class Attribute Summary collapse
- .identifier ⇒ Symbol private
Attributes inherited from Seahorse::Client::Base
Class Method Summary collapse
Methods included from ClientWaiters
included, #wait_until, #waiter_names
Methods included from ClientStubs
#next_stub, #setup_stubbing, #stub_data, #stub_responses
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
Constructor Details
This class inherits a constructor from Seahorse::Client::Base
Class Attribute Details
.identifier ⇒ Symbol
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.
39 40 41 |
# File 'lib/aws-sdk-core/client.rb', line 39 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.
42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 |
# File 'lib/aws-sdk-core/client.rb', line 42 def define(svc_name, ) client_class = Class.new(self) client_class.identifier = svc_name.downcase.to_sym client_class.set_api(Api::Builder.build([:api], )) client_class.set_waiters([:waiters]) protocol = client_class.api.['protocol'] PROTOCOL_PLUGINS[protocol].each do |plugin| client_class.add_plugin(plugin) end Api::Customizations.apply_plugins(client_class) client_class end |