Class: Redwood::UpdateManager
- Includes:
- Singleton
- Defined in:
- lib/sup/update.rb
Instance Method Summary collapse
-
#initialize ⇒ UpdateManager
constructor
A new instance of UpdateManager.
- #register(o) ⇒ Object
- #relay(sender, type, *args) ⇒ Object
- #unregister(o) ⇒ Object
Constructor Details
#initialize ⇒ UpdateManager
6 7 8 9 |
# File 'lib/sup/update.rb', line 6 def initialize @targets = {} self.class.i_am_the_instance self end |
Instance Method Details
#register(o) ⇒ Object
11 |
# File 'lib/sup/update.rb', line 11 def register o; @targets[o] = true; end |
#relay(sender, type, *args) ⇒ Object
14 15 16 17 |
# File 'lib/sup/update.rb', line 14 def relay sender, type, *args meth = "handle_#{type}_update".intern @targets.keys.each { |o| o.send meth, sender, *args unless o == sender if o.respond_to? meth } end |
#unregister(o) ⇒ Object
12 |
# File 'lib/sup/update.rb', line 12 def unregister o; @targets.delete o; end |