Sha256: 7b39f3ae8e2a0d9e3aed2c0d1d2cf14de7785a237cce28c8ba7e3a991e951543
Contents?: true
Size: 1.03 KB
Versions: 3
Compression:
Stored size: 1.03 KB
Contents
module Pione module Agent # Messenger is an agent for receiveing message logs. class Messenger < TupleSpaceClient set_agent_type :messenger # Create a messenger agent. # # @param tuple_space_server [TupleSpaceServer] # tuple space server def initialize(tuple_space_server) super(tuple_space_server) @buffer = [] end define_state :initialized define_state :print define_state :terminated define_state_transition :initialized => :print define_state_transition :print => :print # Transits to the state +print+. def transit_to_print tuples = take_all(Tuple[:message].any) tuples.sort{|a,b| a.timestamp <=> b.timestamp}.each do |tuple| msgs = tuple.contents msgs = [msgs] if tuple.contents.kind_of?(String) msgs.each do |msg| puts "%s%s %s" % [" "*tuple.level, ("%5s" % tuple.head).color(tuple.color), msg] end end end end set_agent Messenger end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
pione-0.2.2 | lib/pione/agent/messenger.rb |
pione-0.2.1 | lib/pione/agent/messenger.rb |
pione-0.2.0 | lib/pione/agent/messenger.rb |