From 6989db9238446838448d8974f6e0934161bd95b9 Mon Sep 17 00:00:00 2001 From: Aaron Patterson Date: Wed, 21 Mar 2012 13:41:43 -0700 Subject: evented subscribers work --- activesupport/lib/active_support/notifications/fanout.rb | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/activesupport/lib/active_support/notifications/fanout.rb b/activesupport/lib/active_support/notifications/fanout.rb index 8ecafd2b2b..40d7501e1b 100644 --- a/activesupport/lib/active_support/notifications/fanout.rb +++ b/activesupport/lib/active_support/notifications/fanout.rb @@ -45,11 +45,15 @@ module ActiveSupport end module Subscribers # :nodoc: - def self.new(pattern, block) - if pattern - TimedSubscriber.new pattern, block + def self.new(pattern, listener) + if listener.respond_to?(:call) + if pattern + TimedSubscriber.new pattern, listener + else + AllMessages.new pattern, listener + end else - AllMessages.new pattern, block + Subscriber.new pattern, listener end end @@ -60,11 +64,11 @@ module ActiveSupport end def start(name, id, payload) - raise NotImplementedError + @delegate.start name, id, payload end def finish(name, id, payload) - raise NotImplementedError + @delegate.finish name, id, payload end def subscribed_to?(name) -- cgit v1.2.3