Class: ActiveSupport::Notifications::Fanout::Subscribers::Matcher
- Defined in:
 - activesupport/lib/active_support/notifications/fanout.rb
 
Overview
:nodoc:
Defined Under Namespace
Classes: AllMessages
Instance Attribute Summary collapse
- 
  
    
      #exclusions  ⇒ Object 
    
    
  
  
  
  
    
      readonly
    
    
  
  
  
  
  
  
    
Returns the value of attribute exclusions.
 - 
  
    
      #pattern  ⇒ Object 
    
    
  
  
  
  
    
      readonly
    
    
  
  
  
  
  
  
    
Returns the value of attribute pattern.
 
Class Method Summary collapse
Instance Method Summary collapse
- #===(name) ⇒ Object
 - 
  
    
      #initialize(pattern)  ⇒ Matcher 
    
    
  
  
  
    constructor
  
  
  
  
  
  
  
    
A new instance of Matcher.
 - #unsubscribe!(name) ⇒ Object
 
Constructor Details
#initialize(pattern) ⇒ Matcher
Returns a new instance of Matcher.
      351 352 353 354  | 
    
      # File 'activesupport/lib/active_support/notifications/fanout.rb', line 351 def initialize(pattern) @pattern = pattern @exclusions = Set.new end  | 
  
Instance Attribute Details
#exclusions ⇒ Object (readonly)
Returns the value of attribute exclusions.
      339 340 341  | 
    
      # File 'activesupport/lib/active_support/notifications/fanout.rb', line 339 def exclusions @exclusions end  | 
  
#pattern ⇒ Object (readonly)
Returns the value of attribute pattern.
      339 340 341  | 
    
      # File 'activesupport/lib/active_support/notifications/fanout.rb', line 339 def pattern @pattern end  | 
  
Class Method Details
.wrap(pattern) ⇒ Object
      341 342 343 344 345 346 347 348 349  | 
    
      # File 'activesupport/lib/active_support/notifications/fanout.rb', line 341 def self.wrap(pattern) if String === pattern pattern elsif pattern.nil? AllMessages.new else new(pattern) end end  | 
  
Instance Method Details
#===(name) ⇒ Object
      360 361 362  | 
    
      # File 'activesupport/lib/active_support/notifications/fanout.rb', line 360 def ===(name) pattern === name && !exclusions.include?(name) end  | 
  
#unsubscribe!(name) ⇒ Object
      356 357 358  | 
    
      # File 'activesupport/lib/active_support/notifications/fanout.rb', line 356 def unsubscribe!(name) exclusions << -name if pattern === name end  |