module Evrone::Common::AMQP::Callbacks

Public Instance Methods

run_callbacks(name, *args) { || ... } click to toggle source
# File lib/evrone/common/amqp/mixins/callbacks.rb, line 6
def run_callbacks(name, *args)
  before = "before_#{name}".to_sym
  after  = "after_#{name}".to_sym
  if f = Common::AMQP.config.callbacks[before]
    f.call(*args)
  end

  rs = yield if block_given?

  if f = Common::AMQP.config.callbacks[after]
    f.call(*args)
  end

  rs
end
run_on_error_callback(e) click to toggle source
# File lib/evrone/common/amqp/mixins/callbacks.rb, line 22
def run_on_error_callback(e)
  if f = Common::AMQP.config.callbacks[:on_error]
    begin
      f.call e
    rescue Exception => e
      $stderr.puts "ERROR on error callback: #{e.inspect}"
    end
  end
end