Module: ActiveSupport::Notifications::Fanout::Subscribers

Defined in:
lib/active_support/notifications/fanout.rb

Overview

:nodoc:

Defined Under Namespace

Classes: AllMessages, Evented, Timed

Class Method Summary collapse

Class Method Details

.new(pattern, listener) ⇒ Object



70
71
72
73
74
75
76
77
78
79
80
81
82
# File 'lib/active_support/notifications/fanout.rb', line 70

def self.new(pattern, listener)
  if listener.respond_to?(:start) && listener.respond_to?(:finish)
    subscriber = Evented.new pattern, listener
  else
    subscriber = Timed.new pattern, listener
  end

  unless pattern
    AllMessages.new(subscriber)
  else
    subscriber
  end
end