class Faraday::Adapter::Typhoeus
def request(env)
def request(env) read_body env req = typhoeus_request(env) configure_ssl req, env configure_proxy req, env configure_timeout req, env configure_socket req, env req.on_complete do |resp| if resp.timed_out? env[:typhoeus_timed_out] = true unless parallel?(env) raise Faraday::TimeoutError, "request timed out" end elsif (resp.response_code == 0) || ((resp.return_code != :ok) && !resp.mock?) env[:typhoeus_connection_failed] = true env[:typhoeus_return_message] = resp.return_message unless parallel?(env) raise Faraday::ConnectionFailed, resp.return_message end end save_response(env, resp.code, resp.body) do |response_headers| response_headers.parse resp.response_headers end # in async mode, :response is initialized at this point env[:response].finish(env) if parallel?(env) end req end