This module contains the logic for the response callbacks. The on_complete callback is the only one at the moment.
You can set multiple callbacks, which are then executed in the same order.
request.on_complete { |response| p 1 } request.on_complete { |response| p 2 } request.execute_callbacks #=> 1 #=> 2
You can clear the callbacks:
request.on_complete { |response| p 1 } request.on_complete { |response| p 2 } request.on_complete.clear request.execute_callbacks #=> []
@note If you're using the Hydra to execute multiple
requests, then callbacks are delaying the request execution.
Execute nessecary callback and yields response. This include in every case on_complete, on_success if successful and on_failure if not.
@example Execute callbacks.
request.execute_callbacks
@return [ void ]
@api private
# File lib/typhoeus/request/callbacks.rb, line 89 def execute_callbacks callbacks = Typhoeus.on_complete + on_complete if response && response.success? callbacks += Typhoeus.on_success + on_success elsif response callbacks += Typhoeus.on_failure + on_failure end callbacks.map do |callback| self.response.handled_response = callback.call(self.response) end end