Method: ZMQMachine::Deferrable#errback

Defined in:
lib/zm/deferrable.rb

#errback(&block) ⇒ Object

Specify a block to be executed if and when the Deferrable object receives a status of :failed. See #set_deferred_status for more information. – If there is no status, add an errback to an internal list. If status is failed, execute the errback immediately. If status is succeeded, do nothing.



67
68
69
70
71
72
73
74
75
76
# File 'lib/zm/deferrable.rb', line 67

def errback &block
  return unless block
  @deferred_status ||= :unknown
  if @deferred_status == :failed
    block.call(*@deferred_args)
  elsif @deferred_status != :succeeded
    @errbacks ||= []
    @errbacks.unshift block # << block
  end
end