Class: Dynflow::DeadLetterSilencer
- Inherits:
-
Concurrent::Actor::DefaultDeadLetterHandler
- Object
- Concurrent::Actor::DefaultDeadLetterHandler
- Dynflow::DeadLetterSilencer
- Defined in:
- lib/dynflow/dead_letter_silencer.rb
Defined Under Namespace
Classes: Matcher
Instance Method Summary collapse
-
#initialize(matchers) ⇒ DeadLetterSilencer
constructor
A new instance of DeadLetterSilencer.
- #on_message(dead_letter) ⇒ Object
- #should_drop?(dead_letter) ⇒ Boolean
Constructor Details
#initialize(matchers) ⇒ DeadLetterSilencer
Returns a new instance of DeadLetterSilencer.
5 6 7 |
# File 'lib/dynflow/dead_letter_silencer.rb', line 5 def initialize(matchers) @matchers = Type! matchers, Array end |
Instance Method Details
#on_message(dead_letter) ⇒ Object
13 14 15 |
# File 'lib/dynflow/dead_letter_silencer.rb', line 13 def (dead_letter) super unless should_drop?(dead_letter) end |
#should_drop?(dead_letter) ⇒ Boolean
9 10 11 |
# File 'lib/dynflow/dead_letter_silencer.rb', line 9 def should_drop?(dead_letter) @matchers.any? { |matcher| matcher.match? dead_letter } end |