Class RetryStrategy.LinearRetryStrategy
java.lang.Object
org.sterl.spring.persistent_tasks.api.RetryStrategy.LinearRetryStrategy
- All Implemented Interfaces:
RetryStrategy
- Enclosing interface:
RetryStrategy
A retry strategy that determines the next retry time by adding a fixed
offset and the execution count to the current time in the specified temporal unit.
This strategy can be used to create retry intervals that increase linearly with the number of attempts, providing a predictable delay pattern.
Example:
If offset = 5, unit = ChronoUnit.SECONDS, and
executionCount = 3, the next retry will be scheduled after
5 + 3 = 8 seconds from the current time.
Note: The retry attempts will stop once the maximum execution count
(maxExecutionCount) is reached.
- Author:
- Your Name
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.sterl.spring.persistent_tasks.api.RetryStrategy
RetryStrategy.FixedIntervalRetryStrategy, RetryStrategy.LinearRetryStrategy, RetryStrategy.MultiplicativeRetryStrategy -
Field Summary
Fields inherited from interface org.sterl.spring.persistent_tasks.api.RetryStrategy
NO_RETRY, THREE_RETRIES, THREE_RETRIES_IMMEDIATELY -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionCalculates the time of the next retry attempt based on the current execution count and the provided exception.booleanshouldRetry(int executionCount, Exception error) Determines whether a retry should be attempted based on the current execution count and the provided exception.
-
Constructor Details
-
LinearRetryStrategy
public LinearRetryStrategy()
-
-
Method Details
-
shouldRetry
Description copied from interface:RetryStrategyDetermines whether a retry should be attempted based on the current execution count and the provided exception. (optional)- Specified by:
shouldRetryin interfaceRetryStrategy- Parameters:
executionCount- The number of attempts already made.error- The exception that triggered the retry.- Returns:
trueif the current execution count is less than the maximum execution count;falseotherwise.
-
retryAt
Description copied from interface:RetryStrategyCalculates the time of the next retry attempt based on the current execution count and the provided exception.- Specified by:
retryAtin interfaceRetryStrategy- Parameters:
executionCount- The number of attempts already made.error- The exception that triggered the retry.- Returns:
OffsetDateTimeof the next execution,nullfor no retry.
-