Included modules
Classes and Modules
Public Class methods
new(options)
[show source]
# File lib/httpx/adapters/faraday.rb 185 def initialize(options) 186 @handlers = [] 187 @connection_options = options 188 end
Public Instance methods
connection(env)
from Faraday::Adapter#connection
[show source]
# File lib/httpx/adapters/faraday.rb 222 def connection(env) 223 conn = build_connection(env) 224 return conn unless block_given? 225 226 yield conn 227 end
enqueue(request)
[show source]
# File lib/httpx/adapters/faraday.rb 190 def enqueue(request) 191 handler = ResponseHandler.new(request) 192 @handlers << handler 193 handler 194 end
run()
[show source]
# File lib/httpx/adapters/faraday.rb 196 def run 197 return unless @handlers.last 198 199 env = @handlers.last.env 200 201 connect(env) do |session| 202 requests = @handlers.map { |handler| session.build_request(*build_request(handler.env)) } 203 204 if env.request.stream_response? 205 requests.each do |request| 206 request.response_on_data = env.request.on_data 207 end 208 end 209 210 responses = session.request(*requests) 211 Array(responses).each_with_index do |response, index| 212 handler = @handlers[index] 213 handler.on_response.call(response) 214 handler.on_complete.call(handler.env) 215 end 216 end 217 rescue ::HTTPX::TimeoutError => e 218 raise Faraday::TimeoutError, e 219 end