Class: Webmate::Observers::Base
- Inherits:
-
Object
- Object
- Webmate::Observers::Base
- Defined in:
- lib/webmate/observers/base.rb
Class Method Summary collapse
- .execute_all(action, data) ⇒ Object
- .subscribe(action, &block) ⇒ Object
- .subscribe!(action, &block) ⇒ Object
Class Method Details
.execute_all(action, data) ⇒ Object
16 17 18 19 20 21 |
# File 'lib/webmate/observers/base.rb', line 16 def execute_all(action, data) self.subscriptions ||= {} (self.subscriptions[action] || []).each do |block| block.call(data) end end |
.subscribe(action, &block) ⇒ Object
6 7 8 |
# File 'lib/webmate/observers/base.rb', line 6 def subscribe(action, &block) Webmate::Observers::Base.subscribe!(action, &block) end |
.subscribe!(action, &block) ⇒ Object
10 11 12 13 14 |
# File 'lib/webmate/observers/base.rb', line 10 def subscribe!(action, &block) self.subscriptions ||= {} self.subscriptions[action] ||= [] self.subscriptions[action] << block end |