Class: AWS::Core::RESTClient::InputHandler
- Inherits:
-
Object
- Object
- AWS::Core::RESTClient::InputHandler
- Defined in:
- lib/aws/core/rest_client/input_handler.rb
Overview
Given a hash of request options, a REST::RequestHandler can populate a Core::Http::Request object.
Instance Attribute Summary collapse
-
#http ⇒ Hash
readonly
A hash of http rules.
- #namespace ⇒ String readonly
- #operation_name ⇒ String readonly
-
#rules ⇒ Hash
readonly
A hash of rules for where to place request options in the HTTP request (e.g. uri, querystring, header, body, etc).
Instance Method Summary collapse
-
#populate_request(request, request_options) ⇒ Http::Request
Populates an http request object with params in the uri, headers, and body.
Instance Attribute Details
#http ⇒ Hash (readonly)
Returns A hash of http rules.
44 45 46 |
# File 'lib/aws/core/rest_client/input_handler.rb', line 44 def http @http end |
#namespace ⇒ String (readonly)
38 39 40 |
# File 'lib/aws/core/rest_client/input_handler.rb', line 38 def namespace @namespace end |
#operation_name ⇒ String (readonly)
41 42 43 |
# File 'lib/aws/core/rest_client/input_handler.rb', line 41 def operation_name @operation_name end |
#rules ⇒ Hash (readonly)
Returns A hash of rules for where to place request options in the HTTP request (e.g. uri, querystring, header, body, etc). Also contains type information for each request option.
49 50 51 |
# File 'lib/aws/core/rest_client/input_handler.rb', line 49 def rules @rules end |
Instance Method Details
#populate_request(request, request_options) ⇒ Http::Request
Populates an http request object with params in the uri, headers, and body.
59 60 61 62 63 64 65 66 67 68 69 70 71 |
# File 'lib/aws/core/rest_client/input_handler.rb', line 59 def populate_request request, params = Options::Validator.new(rules).validate!() request.http_method = http[:verb] request.uri = extract_uri(params) extract_headers(params).each_pair do |header_name, header_value| request.headers[header_name] = header_value end request.body = build_body(params) request end |