class Faraday::Adapter::NetHttp

def call(env)

def call(env)
  super
  http_response = connection(env) do |http|
    begin
      perform_request(http, env)
    rescue *NET_HTTP_EXCEPTIONS => e
      if defined?(OpenSSL) && e.is_a?(OpenSSL::SSL::SSLError)
        raise Faraday::SSLError, e
      end
      raise Faraday::ConnectionFailed, e
    end
  end
  save_response(env, http_response.code.to_i,
                http_response.body || +'', nil,
                http_response.message) do |response_headers|
    http_response.each_header do |key, value|
      response_headers[key] = value
    end
  end
  @app.call env
rescue Timeout::Error, Errno::ETIMEDOUT => e
  raise Faraday::TimeoutError, e
end