Module: Tracker::Registry
Instance Method Summary collapse
- #on(event, &proc) ⇒ Object
- #publish!(event_name, *args) ⇒ Object
- #reset! ⇒ Object
- #track(table, &proc) ⇒ Object
- #tracks?(table) ⇒ Boolean
Instance Method Details
#on(event, &proc) ⇒ Object
26 27 28 29 |
# File 'lib/tracker/registry.rb', line 26 def on(event, &proc) expect! event => /(insert|delete|update)$/ register_callback event, &proc end |
#publish!(event_name, *args) ⇒ Object
39 40 41 42 43 |
# File 'lib/tracker/registry.rb', line 39 def publish!(event_name, *args) callbacks(event_name).each do |callback| callback.call(*args) end end |
#reset! ⇒ Object
5 6 7 |
# File 'lib/tracker/registry.rb', line 5 def reset! @registrations = nil end |
#track(table, &proc) ⇒ Object
31 32 33 |
# File 'lib/tracker/registry.rb', line 31 def track(table, &proc) register_callback table, &proc end |
#tracks?(table) ⇒ Boolean
35 36 37 |
# File 'lib/tracker/registry.rb', line 35 def tracks?(table) !callbacks(table).empty? end |