Class: ActiveSupport::Notifications::Fanout::Subscribers::Matcher
- Defined in:
- 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.
352 353 354 355 |
# File 'lib/active_support/notifications/fanout.rb', line 352 def initialize(pattern) @pattern = pattern @exclusions = Set.new end |
Instance Attribute Details
#exclusions ⇒ Object (readonly)
Returns the value of attribute exclusions.
340 341 342 |
# File 'lib/active_support/notifications/fanout.rb', line 340 def exclusions @exclusions end |
#pattern ⇒ Object (readonly)
Returns the value of attribute pattern.
340 341 342 |
# File 'lib/active_support/notifications/fanout.rb', line 340 def pattern @pattern end |
Class Method Details
.wrap(pattern) ⇒ Object
342 343 344 345 346 347 348 349 350 |
# File 'lib/active_support/notifications/fanout.rb', line 342 def self.wrap(pattern) if String === pattern pattern elsif pattern.nil? AllMessages.new else new(pattern) end end |
Instance Method Details
#===(name) ⇒ Object
361 362 363 |
# File 'lib/active_support/notifications/fanout.rb', line 361 def ===(name) pattern === name && !exclusions.include?(name) end |
#unsubscribe!(name) ⇒ Object
357 358 359 |
# File 'lib/active_support/notifications/fanout.rb', line 357 def unsubscribe!(name) exclusions << -name if pattern === name end |