Class: ActiveJob::Retry::VariableBackoffStrategy
- Inherits:
-
ConstantBackoffStrategy
- Object
- ConstantBackoffStrategy
- ActiveJob::Retry::VariableBackoffStrategy
- Defined in:
- lib/active_job/retry/variable_backoff_strategy.rb
Instance Method Summary collapse
-
#initialize(options) ⇒ VariableBackoffStrategy
constructor
A new instance of VariableBackoffStrategy.
- #retry_delay(attempt, _exception) ⇒ Object
Methods inherited from ConstantBackoffStrategy
Constructor Details
#initialize(options) ⇒ VariableBackoffStrategy
Returns a new instance of VariableBackoffStrategy.
7 8 9 10 11 12 13 14 |
# File 'lib/active_job/retry/variable_backoff_strategy.rb', line 7 def initialize() super() VariableOptionsValidator.new().validate! @retry_limit = .fetch(:delays).length + 1 @retry_delays = .fetch(:delays) @min_delay_multiplier = .fetch(:min_delay_multiplier, 1.0) @max_delay_multiplier = .fetch(:max_delay_multiplier, 1.0) end |
Instance Method Details
#retry_delay(attempt, _exception) ⇒ Object
16 17 18 |
# File 'lib/active_job/retry/variable_backoff_strategy.rb', line 16 def retry_delay(attempt, _exception) (retry_delays[attempt - 1] * delay_multiplier).to_i end |