module MessageQueue::Producible
A module to mix in a producer class, for example:
class Producer
include MessageQueue::Producible exchange :name => "time", :type => :topic message :routing_key => "time.now", :mandatory => true
end
Producer.new
.publish(Time.now.to_s)
Public Class Methods
included(base)
click to toggle source
# File lib/message_queue/producible.rb, line 17 def self.included(base) base.extend(ClassMethods) end
new()
click to toggle source
# File lib/message_queue/producible.rb, line 39 def initialize @producer = MessageQueue.new_producer(:exchange => self.class.exchange_options, :message => self.class.message_options) end
Public Instance Methods
publish(object, options = {})
click to toggle source
# File lib/message_queue/producible.rb, line 43 def publish(object, options = {}) logger.info "Publishing #{object.inspect} with options #{options.inspect}" @producer.publish(object, options) end