module Ethon::Easy::ResponseCallbacks
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.
easy.on_complete { p 1 } easy.on_complete { p 2 } easy.complete #=> 1 #=> 2
You can clear the callbacks:
easy.on_complete { p 1 } easy.on_complete { p 2 } easy.on_complete.clear easy.on_complete #=> []
Public Instance Methods
body(chunk)
click to toggle source
Execute #on_body callbacks.
@example Execute on_body.
request.body("This data came from HTTP.")
@return [ Object ] If there are no #on_body callbacks, returns the symbol :unyielded.
# File lib/ethon/easy/response_callbacks.rb, line 87 def body(chunk) if defined?(@on_body) and not @on_body.nil? @on_body.each{ |callback| callback.call(chunk, self) } else :unyielded end end
complete()
click to toggle source
Execute #on_complete callbacks.
@example Execute on_completes.
request.complete
# File lib/ethon/easy/response_callbacks.rb, line 63 def complete if defined?(@on_complete) and not @on_complete.nil? @on_complete.each{ |callback| callback.call(self) } end end
headers()
click to toggle source
Execute #on_headers callbacks.
@example Execute on_headers.
request.headers
# File lib/ethon/easy/response_callbacks.rb, line 41 def headers if defined?(@on_headers) and not @on_headers.nil? @on_headers.each{ |callback| callback.call(self) } end end
on_body(&block)
click to toggle source
Set #on_body callback.
@example Set on_body.
request.on_body { |chunk| p "yay" }
@param [ Block ] block The block to execute.
# File lib/ethon/easy/response_callbacks.rb, line 75 def on_body(&block) @on_body ||= [] @on_body << block if block_given? @on_body end
on_complete(&block)
click to toggle source
Set #on_complete callback.
@example Set on_complete.
request.on_complete { p "yay" }
@param [ Block ] block The block to execute.
# File lib/ethon/easy/response_callbacks.rb, line 53 def on_complete(&block) @on_complete ||= [] @on_complete << block if block_given? @on_complete end
on_headers(&block)
click to toggle source
Set #on_headers callback.
@example Set on_headers.
request.on_headers { p "yay" }
@param [ Block ] block The block to execute.
# File lib/ethon/easy/response_callbacks.rb, line 31 def on_headers(&block) @on_headers ||= [] @on_headers << block if block_given? @on_headers end