You are viewing documentation for version 2 of the AWS SDK for Ruby. Version 3 documentation can be found here.

Class: Seahorse::Client::RequestContext

Inherits:
Object
  • Object
show all
Defined in:
aws-sdk-core/lib/seahorse/client/request_context.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(options = {}) ⇒ RequestContext

Returns a new instance of RequestContext

Parameters:

  • options (Hash) (defaults to: {})

    a customizable set of options

Options Hash (options):

  • :operation_name (required, Symbol) — default: nil
  • :operation (required, Model::Operation) — default: nil
  • :params (Hash) — default: {}
  • :config (Configuration) — default: nil
  • :http_request (Http::Request) — default: Http::Request.new
  • :http_response (Http::Response) — default: Http::Response.new

    and #rewind.



14
15
16
17
18
19
20
21
22
23
24
# File 'aws-sdk-core/lib/seahorse/client/request_context.rb', line 14

def initialize(options = {})
  @operation_name = options[:operation_name]
  @operation = options[:operation]
  @client = options[:client]
  @params = options[:params] || {}
  @config = options[:config]
  @http_request = options[:http_request] || Http::Request.new
  @http_response = options[:http_response] || Http::Response.new
  @retries = 0
  @metadata = {}
end

Instance Attribute Details

#clientSeahorse::Client::Base



33
34
35
# File 'aws-sdk-core/lib/seahorse/client/request_context.rb', line 33

def client
  @client
end

#configConfiguration

Returns The client configuration.

Returns:



39
40
41
# File 'aws-sdk-core/lib/seahorse/client/request_context.rb', line 39

def config
  @config
end

#http_requestHttp::Request

Returns:



42
43
44
# File 'aws-sdk-core/lib/seahorse/client/request_context.rb', line 42

def http_request
  @http_request
end

#http_responseHttp::Response

Returns:



45
46
47
# File 'aws-sdk-core/lib/seahorse/client/request_context.rb', line 45

def http_response
  @http_response
end

#metadataHash (readonly)

Returns:

  • (Hash)


51
52
53
# File 'aws-sdk-core/lib/seahorse/client/request_context.rb', line 51

def 
  @metadata
end

#operationModel::Operation

Returns:



30
31
32
# File 'aws-sdk-core/lib/seahorse/client/request_context.rb', line 30

def operation
  @operation
end

#operation_nameSymbol

Returns Name of the API operation called.

Returns:

  • (Symbol)

    Name of the API operation called.



27
28
29
# File 'aws-sdk-core/lib/seahorse/client/request_context.rb', line 27

def operation_name
  @operation_name
end

#paramsHash

Returns The hash of request parameters.

Returns:

  • (Hash)

    The hash of request parameters.



36
37
38
# File 'aws-sdk-core/lib/seahorse/client/request_context.rb', line 36

def params
  @params
end

#retriesInteger

Returns:

  • (Integer)


48
49
50
# File 'aws-sdk-core/lib/seahorse/client/request_context.rb', line 48

def retries
  @retries
end

Instance Method Details

#[](key) ⇒ Object

Returns the metadata for the given key.

Parameters:

  • key (Symbol)

Returns:

  • (Object)


56
57
58
# File 'aws-sdk-core/lib/seahorse/client/request_context.rb', line 56

def [](key)
  @metadata[key]
end

#[]=(key, value) ⇒ Object

Sets the request context metadata for the given key. Request metadata useful for handlers that need to keep state on the request, without sending that data with the request over HTTP.

Parameters:

  • key (Symbol)
  • value (Object)


65
66
67
# File 'aws-sdk-core/lib/seahorse/client/request_context.rb', line 65

def []=(key, value)
  @metadata[key] = value
end