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

Class: Seahorse::Client::RequestContext

Inherits:
Object
  • Object
show all
Defined in:
gems/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
  • :authorizer (Model::Authorizer) — 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.



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

def initialize(options = {})
  @operation_name = options[:operation_name]
  @operation = options[:operation]
  @authorizer = options[:authorizer]
  @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

#authorizerModel::Authorizer

Returns APIG SDKs only

Returns:



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

def authorizer
  @authorizer
end

#clientSeahorse::Client::Base



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

def client
  @client
end

#configConfiguration

Returns The client configuration.

Returns:



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

def config
  @config
end

#http_requestHttp::Request

Returns:



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

def http_request
  @http_request
end

#http_responseHttp::Response

Returns:



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

def http_response
  @http_response
end

#metadataHash (readonly)

Returns:

  • (Hash)


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

def 
  @metadata
end

#operationModel::Operation

Returns:



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

def operation
  @operation
end

#operation_nameSymbol

Returns Name of the API operation called.

Returns:

  • (Symbol)

    Name of the API operation called.



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

def operation_name
  @operation_name
end

#paramsHash

Returns The hash of request parameters.

Returns:

  • (Hash)

    The hash of request parameters.



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

def params
  @params
end

#retriesInteger

Returns:

  • (Integer)


53
54
55
# File 'gems/aws-sdk-core/lib/seahorse/client/request_context.rb', line 53

def retries
  @retries
end

Instance Method Details

#[](key) ⇒ Object

Returns the metadata for the given key.

Parameters:

  • key (Symbol)

Returns:

  • (Object)


61
62
63
# File 'gems/aws-sdk-core/lib/seahorse/client/request_context.rb', line 61

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)


70
71
72
# File 'gems/aws-sdk-core/lib/seahorse/client/request_context.rb', line 70

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