class ActiveSupport::Notifications::Fanout::Subscribers::Evented
:nodoc:
def group_class
def group_class EventedGroup end
def initialize(pattern, delegate)
def initialize(pattern, delegate) @pattern = Matcher.wrap(pattern) @delegate = delegate @silenceable = delegate.respond_to?(:silenced?) @can_publish = delegate.respond_to?(:publish) @can_publish_event = delegate.respond_to?(:publish_event) end
def publish(name, *args)
def publish(name, *args) if @can_publish @delegate.publish name, *args end end
def publish_event(event)
def publish_event(event) if @can_publish_event @delegate.publish_event event else publish(event.name, event.time, event.end, event.transaction_id, event.payload) end end
def silenced?(name)
def silenced?(name) @silenceable && @delegate.silenced?(name) end
def subscribed_to?(name)
def subscribed_to?(name) pattern === name end
def unsubscribe!(name)
def unsubscribe!(name) pattern.unsubscribe!(name) end