class DoubleDecker::Bus
Attributes
expected_agents[R]
finished[R]
run_id[R]
Public Class Methods
new(run_id, url: "redis://localhost", expected_agents: nil, redis: Redis.new(url: url))
click to toggle source
# File src/double_decker/bus.rb, line 11 def initialize(run_id, url: "redis://localhost", expected_agents: nil, redis: Redis.new(url: url)) @store = redis @run_id = run_id @expected_agents = expected_agents setup! end
Public Instance Methods
on_finished(&block)
click to toggle source
# File src/double_decker/bus.rb, line 24 def on_finished(&block) @finished = block end
register()
click to toggle source
# File src/double_decker/bus.rb, line 18 def register agent = Agent.new(self, BusData.new(run_id, @store), expected_agents) agent.wait_for_expected_agents agent end
Protected Instance Methods
setup!()
click to toggle source
# File src/double_decker/bus.rb, line 30 def setup! @store.get(run_id) || @store.set(run_id, {}.to_json) end