class Wisper::Bubbleable::Pipeline
Public Class Methods
new(from, *events)
click to toggle source
# File lib/wisper/bubbleable/pipeline.rb, line 6 def initialize(from, *events) @from = from @events = events end
Public Instance Methods
to(target)
click to toggle source
# File lib/wisper/bubbleable/pipeline.rb, line 11 def to(target) @events.each do |ev| @from.on(ev) do |*args| # listeners = target.send(:local_registrations).map(&:listener) # listeners += target.send(:temporary_registrations).map(&:listener) # should_broadcast = target.listeners.any? { |listener| listener.respond_to?(ev) } # target.send(:broadcast, ev, *args) if should_broadcast target.send(:broadcast, ev, *args) end end end