Class: Wayfarer::Middleware::Dedup
- Inherits:
-
Object
- Object
- Wayfarer::Middleware::Dedup
- Extended by:
- Base
- Defined in:
- lib/wayfarer/middleware/dedup.rb
Constant Summary
Constants included from Base
Instance Method Summary collapse
Methods included from Base
Instance Method Details
#call(task) ⇒ Object
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/wayfarer/middleware/dedup.rb', line 14 def call(task) task[:barrier] ||= Wayfarer::Redis::Barrier.new(task) if task[:job].executions > 1 log(:retry, task) return yield if block_given? end if task[:job] != task[:controller] log(:rerouted, task) return yield if block_given? end return log(:deduplicated, task) if task[:barrier].check!(task[:normalized_url]) yield if block_given? end |