module AgentZMQ
Public Instance Methods
agent_files_loaded()
click to toggle source
# File lib/agent_zmq.rb, line 16 def agent_files_loaded @agent_files_loaded ||=[] end
agent_path()
click to toggle source
# File lib/agent_zmq.rb, line 4 def agent_path "./config/zmq_agents.rb" end
agents()
click to toggle source
# File lib/agent_zmq.rb, line 8 def agents return @agents if @agents (@agents=[]).tap do load_agents if agent_files_loaded.empty? end end
agents_hash()
click to toggle source
# File lib/agent_zmq.rb, line 65 def agents_hash Hash[agents.map { |a| [a.name.to_sym, a]}] end
define_ZMQ_PUB(name, &blk)
click to toggle source
# File lib/agent_zmq.rb, line 36 def define_ZMQ_PUB(name, &blk) define_agent(AgentZMQ::PubAgent.new(name), &blk) end
define_ZMQ_REP(name, &blk)
click to toggle source
# File lib/agent_zmq.rb, line 44 def define_ZMQ_REP(name, &blk) define_agent(AgentZMQ::RepAgent.new(name), &blk) end
define_ZMQ_REQ(name, &blk)
click to toggle source
# File lib/agent_zmq.rb, line 40 def define_ZMQ_REQ(name, &blk) define_agent(AgentZMQ::ReqAgent.new(name), &blk) end
define_ZMQ_SUB(name, &blk)
click to toggle source
# File lib/agent_zmq.rb, line 32 def define_ZMQ_SUB(name, &blk) define_agent(AgentZMQ::SubAgent.new(name), &blk) end
define_agent(agent) { |agent| ... }
click to toggle source
# File lib/agent_zmq.rb, line 27 def define_agent(agent, &blk) yield agent agents << agent end
load_agents(path=nil)
click to toggle source
# File lib/agent_zmq.rb, line 20 def load_agents path=nil path = File.expand_path(path || agent_path, Dir.pwd) return if agent_files_loaded.include? path agent_files_loaded << path load path end
reset()
click to toggle source
# File lib/agent_zmq.rb, line 61 def reset agents.each {|a| a.reset} end
start()
click to toggle source
starts all configured agents
# File lib/agent_zmq.rb, line 49 def start raise RuntimeError, "No ZMQ Agents Defined" if agents.empty? agents.each do |a| a.start end end
stop()
click to toggle source
# File lib/agent_zmq.rb, line 57 def stop agents.each {|a| a.stop} end