class PubSub::Container
Public Instance Methods
pub(*)
click to toggle source
# File lib/pub_sub/container.rb, line 6 def pub(*) raise NotImplementedError end
sub(*)
click to toggle source
# File lib/pub_sub/container.rb, line 10 def sub(*) raise NotImplementedError end
unsub(*)
click to toggle source
# File lib/pub_sub/container.rb, line 14 def unsub(*) raise NotImplementedError end
Protected Instance Methods
fan_out(clazzes, args)
click to toggle source
# File lib/pub_sub/container.rb, line 24 def fan_out(clazzes, args) mutex = Mutex.new mutex.synchronize do clazzes.each{ |clazz| clazz.call(args) } true end end
retrieve_klasses(iterable)
click to toggle source
# File lib/pub_sub/container.rb, line 20 def retrieve_klasses(iterable) iterable.map{|clazz| clazz.split('::').inject(Object) {|o,c| o.const_get c}} end