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