Class: ActiveSupport::Notifications::Fanout::Subscribers::Evented
- Defined in:
- activesupport/lib/active_support/notifications/fanout.rb
Overview
:nodoc:
Direct Known Subclasses
Instance Attribute Summary collapse
- 
  
    
      #delegate  ⇒ Object 
    
    
  
  
  
  
    
      readonly
    
    
  
  
  
  
  
  
    Returns the value of attribute delegate. 
- 
  
    
      #pattern  ⇒ Object 
    
    
  
  
  
  
    
      readonly
    
    
  
  
  
  
  
  
    Returns the value of attribute pattern. 
- 
  
    
      #silenceable  ⇒ Object 
    
    
  
  
  
  
    
      readonly
    
    
  
  
  
  
  
  
    Returns the value of attribute silenceable. 
Instance Method Summary collapse
- #group_class ⇒ Object
- 
  
    
      #initialize(pattern, delegate)  ⇒ Evented 
    
    
  
  
  
    constructor
  
  
  
  
  
  
  
    A new instance of Evented. 
- #publish(name, *args) ⇒ Object
- #publish_event(event) ⇒ Object
- #silenced?(name) ⇒ Boolean
- #subscribed_to?(name) ⇒ Boolean
- #unsubscribe!(name) ⇒ Object
Constructor Details
#initialize(pattern, delegate) ⇒ Evented
Returns a new instance of Evented.
| 378 379 380 381 382 383 384 | # File 'activesupport/lib/active_support/notifications/fanout.rb', line 378 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 | 
Instance Attribute Details
#delegate ⇒ Object (readonly)
Returns the value of attribute delegate.
| 376 377 378 | # File 'activesupport/lib/active_support/notifications/fanout.rb', line 376 def delegate @delegate end | 
#pattern ⇒ Object (readonly)
Returns the value of attribute pattern.
| 376 377 378 | # File 'activesupport/lib/active_support/notifications/fanout.rb', line 376 def pattern @pattern end | 
#silenceable ⇒ Object (readonly)
Returns the value of attribute silenceable.
| 376 377 378 | # File 'activesupport/lib/active_support/notifications/fanout.rb', line 376 def silenceable @silenceable end | 
Instance Method Details
#group_class ⇒ Object
| 386 387 388 | # File 'activesupport/lib/active_support/notifications/fanout.rb', line 386 def group_class EventedGroup end | 
#publish(name, *args) ⇒ Object
| 390 391 392 393 394 | # File 'activesupport/lib/active_support/notifications/fanout.rb', line 390 def publish(name, *args) if @can_publish @delegate.publish name, *args end end | 
#publish_event(event) ⇒ Object
| 396 397 398 399 400 401 402 | # File 'activesupport/lib/active_support/notifications/fanout.rb', line 396 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 | 
#silenced?(name) ⇒ Boolean
| 404 405 406 | # File 'activesupport/lib/active_support/notifications/fanout.rb', line 404 def silenced?(name) @silenceable && @delegate.silenced?(name) end | 
#subscribed_to?(name) ⇒ Boolean
| 408 409 410 | # File 'activesupport/lib/active_support/notifications/fanout.rb', line 408 def subscribed_to?(name) pattern === name end | 
#unsubscribe!(name) ⇒ Object
| 412 413 414 | # File 'activesupport/lib/active_support/notifications/fanout.rb', line 412 def unsubscribe!(name) pattern.unsubscribe!(name) end |