Class: Tackle::DelayedRetry
- Inherits:
-
Object
- Object
- Tackle::DelayedRetry
- Includes:
- TackleLogger
- Defined in:
- lib/tackle/delayed_retry.rb
Instance Method Summary collapse
-
#initialize(dead_letter_queue, properties, payload, retry_limit, logger) ⇒ DelayedRetry
constructor
A new instance of DelayedRetry.
- #schedule_retry ⇒ Object
Methods included from TackleLogger
Constructor Details
#initialize(dead_letter_queue, properties, payload, retry_limit, logger) ⇒ DelayedRetry
Returns a new instance of DelayedRetry.
8 9 10 11 12 13 14 |
# File 'lib/tackle/delayed_retry.rb', line 8 def initialize(dead_letter_queue, properties, payload, retry_limit, logger) @dead_letter_queue = dead_letter_queue @properties = properties @payload = payload @retry_limit = retry_limit @logger = logger end |
Instance Method Details
#schedule_retry ⇒ Object
16 17 18 19 20 21 22 23 |
# File 'lib/tackle/delayed_retry.rb', line 16 def schedule_retry if retry_count < @retry_limit tackle_log("Adding message to retry queue for retry #{retry_count + 1}/#{@retry_limit}") @dead_letter_queue.publish(@payload, :headers => {:retry_count => retry_count + 1}) else tackle_log("Reached #{retry_count} retries. Discarding message.") end end |