Class: Saddle::Middleware::RubyTimeout

Inherits:
Faraday::Middleware
  • Object
show all
Defined in:
lib/saddle/middleware/ruby_timeout.rb

Overview

Public: Enforces a ruby timeout on the request :timeout must be present in the request or client options

Instance Method Summary collapse

Instance Method Details

#call(env) ⇒ Object



10
11
12
13
14
15
# File 'lib/saddle/middleware/ruby_timeout.rb', line 10

def call(env)
  timeout = env[:request][:timeout] # nil or 0 means no timeout
  Timeout.timeout(timeout) do
    @app.call(env)
  end
end