Class: Evil::Client::Operation::Request

Inherits:
Object
  • Object
show all
Extended by:
Dry::Initializer::Mixin
Defined in:
lib/evil/client/operation/request.rb

Overview

Builds a request env from user options by applying schema validations

Instance Method Summary collapse

Instance Method Details

#build(options) ⇒ Hash

Builds an env

Parameters:

  • file (IO, nil)

    (nil)

  • options (Hash<Symbol, Object>)

Returns:

  • (Hash)


13
14
15
16
17
18
19
20
21
22
23
24
# File 'lib/evil/client/operation/request.rb', line 13

def build(options)
  {
    format:      schema[:format],
    http_method: schema[:method].call(options),
    path:        schema[:path].call(options),
    security:    schema[:security]&.call(options),
    files:       schema[:files]&.call(options),
    query:       schema[:query]&.new(options).to_h,
    body:        schema[:body]&.new(options).to_h,
    headers:     schema[:headers]&.new(options).to_h
  }
end