class Utils
Utility classes
Public Class Methods
enqueue(dest,data= {})
click to toggle source
Send a message in context args: dest name of destination queue msg message to send. Message is a hash with keys operation and msg.
# File lib/manband/util.rb, line 24 def self.enqueue(dest,data= {}) Utils.setcontext() msg = data.to_json queue = @@channel.queue(dest, :auto_delete => false, :durable => true) queue.bind(@@exchange) #@@exchange.publish(msg, :routing_key => dest) @@channel.direct("").publish(msg, :routing_key => dest) end
publish(dest,data= {})
click to toggle source
Creates a context and sends a message args: dest name of destination queue msg message to send. Message is a hash with keys operation and msg.
# File lib/manband/util.rb, line 37 def self.publish(dest,data= {}) msg = data.to_json EventMachine.run do connection = AMQP.connect(FlowConfig.config()) channel = AMQP::Channel.new(connection) #exchange = channel.direct() #queue = channel.queue(dest, :auto_delete => false, :durable => true) #queue.bind(exchange) #exchange.publish(msg, :routing_key => dest) do channel.direct("").publish(msg, :routing_key => dest) do connection.close { EventMachine.stop } end end end
setcontext()
click to toggle source
# File lib/manband/util.rb, line 12 def self.setcontext() if(@@connection==nil) @@connection = AMQP.connect(FlowConfig.config()) @@channel = AMQP::Channel.new(@@connection) @@exchange = @@channel.direct() end end