Module: Teien::Dispatcher

Included in:
BaseObject, BaseObjectManagerBase, EventRouter, View
Defined in:
lib/teien/core/dispatcher.rb

Instance Method Summary collapse

Instance Method Details

#initialize(*args, &block) ⇒ Object



4
5
6
7
# File 'lib/teien/core/dispatcher.rb', line 4

def initialize(*args, &block)
  super
  @dispatch_receivers = Array.new
end

#notify(method, *argv) ⇒ Object



13
14
15
16
17
18
19
# File 'lib/teien/core/dispatcher.rb', line 13

def notify(method, *argv)
  @dispatch_receivers.each {|recv|
    if (recv.respond_to?(method))
      recv.method(method).call(*argv)
    end
  }
end

#notify_reversely(method, *argv) ⇒ Object



21
22
23
24
25
26
27
# File 'lib/teien/core/dispatcher.rb', line 21

def notify_reversely(method, *argv)
  @dispatch_receivers.reverse_each {|recv|
    if (recv.respond_to?(method))
      recv.method(method).call(*argv)
    end
  }
end

#register_receiver(recv) ⇒ Object



9
10
11
# File 'lib/teien/core/dispatcher.rb', line 9

def register_receiver(recv)
  @dispatch_receivers.push(recv)
end