Class: Faraday::Adapter::Patron
- Inherits:
-
Faraday::Adapter
- Object
- Middleware
- Faraday::Adapter
- Faraday::Adapter::Patron
- Defined in:
- lib/faraday/adapter/patron.rb
Constant Summary
Constants inherited from Faraday::Adapter
Instance Method Summary collapse
Methods inherited from Faraday::Adapter
Methods included from Faraday::AutoloadHelper
#all_loaded_constants, #autoload_all, #load_autoloaded_constants, #lookup_module, #register_lookup_modules
Methods inherited from Middleware
dependency, #initialize, loaded?, setup_parallel_manager
Constructor Details
This class inherits a constructor from Faraday::Middleware
Instance Method Details
#call(env) ⇒ Object
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
# File 'lib/faraday/adapter/patron.rb', line 6 def call(env) super # TODO: support streaming requests env[:body] = env[:body].read if env[:body].respond_to? :read session = ::Patron::Session.new response = begin data = Connection::METHODS_WITH_BODIES.include?(env[:method]) ? env[:body].to_s : nil session.request(env[:method], env[:url].to_s, env[:request_headers], :data => data) rescue Errno::ECONNREFUSED raise Error::ConnectionFailed, $! end save_response(env, response.status, response.body, response.headers) @app.call env end |