require "objectteam"
require "../../simple/counter"
#create 3 instances of Simple.
e = Simple.new("earth")
m = Simple.new("mars")
v = Simple.new("venus")
class MyCountHello < CountHello
# This method gets called, whenever a roleobject must be instantiated
# and no block is given (block has higher precedence).
def create_roleobject(base, roleclass)
#we will count only those hellos, from planets where name includes an "s"
result = nil
if (base.name.include?("s"))
puts "\n----->create role for #{base.to_s}\n"
result = super(base, roleclass)
else
puts "\n----->no counting role for #{base.to_s}\n"
end
return result
end
end
countteam = MyCountHello.new()
#activate connector
countteam.while_active {
e.hello
m.hello
v.hello
}
syntax highlighted by Code2HTML, v. 0.9.1