Class: Faraday::DiarioDeBordo::Middleware

Inherits:
Response::Middleware
  • Object
show all
Defined in:
lib/faraday/diario_de_bordo/middleware.rb

Constant Summary collapse

DEFAULT_OPTIONS =
{ bodies: true }

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(app, options = {}) ⇒ Middleware

Returns a new instance of Middleware.



11
12
13
14
15
# File 'lib/faraday/diario_de_bordo/middleware.rb', line 11

def initialize(app, options = {})
  super(app)
  @logger = ::DiarioDeBordo::Loggers::Database
  @options = DEFAULT_OPTIONS.merge(options)
end

Instance Attribute Details

#ended_atObject (readonly)

Returns the value of attribute ended_at.



9
10
11
# File 'lib/faraday/diario_de_bordo/middleware.rb', line 9

def ended_at
  @ended_at
end

#loggerObject (readonly)

Returns the value of attribute logger.



9
10
11
# File 'lib/faraday/diario_de_bordo/middleware.rb', line 9

def logger
  @logger
end

#optionsObject (readonly)

Returns the value of attribute options.



9
10
11
# File 'lib/faraday/diario_de_bordo/middleware.rb', line 9

def options
  @options
end

#request_bodyObject (readonly)

Returns the value of attribute request_body.



9
10
11
# File 'lib/faraday/diario_de_bordo/middleware.rb', line 9

def request_body
  @request_body
end

#response_bodyObject (readonly)

Returns the value of attribute response_body.



9
10
11
# File 'lib/faraday/diario_de_bordo/middleware.rb', line 9

def response_body
  @response_body
end

#started_atObject (readonly)

Returns the value of attribute started_at.



9
10
11
# File 'lib/faraday/diario_de_bordo/middleware.rb', line 9

def started_at
  @started_at
end

Instance Method Details

#call(env) ⇒ Object



17
18
19
20
21
# File 'lib/faraday/diario_de_bordo/middleware.rb', line 17

def call(env)
  @request_body = dump_body(env[:body]) if env[:body] && log_body?(:request)
  @started_at = Time.now
  super
end

#on_complete(env) ⇒ Object



23
24
25
26
27
# File 'lib/faraday/diario_de_bordo/middleware.rb', line 23

def on_complete(env)
  @ended_at = Time.now
  @response_body = dump_body(env[:body]) if env[:body] && log_body?(:response)
  logger.log(response_log(env))
end