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