| Interface | Description |
|---|---|
| ResultRetryAlgorithm<ResponseT> |
A result retry algorithm is responsible for the following operations (based on the response
returned by the previous attempt or on the thrown exception):
Accepting a task for retry so another attempt will be made.
|
| RetryingExecutor<ResponseT> |
A retrying executor is responsible for the following operations:
Creating first attempt
RetryingFuture, which acts as a facade, hiding from client
code the actual execution of scheduled retry attempts. |
| RetryingFuture<ResponseT> |
Represents a retrying future.
|
| TimedRetryAlgorithm |
A timed retry algorithm is responsible for the following operations, based on the previous
attempt settings and current time:
Creating first attempt
TimedAttemptSettings. |
| Class | Description |
|---|---|
| BasicResultRetryAlgorithm<ResponseT> |
A basic implementation of
ResultRetryAlgorithm. |
| DirectRetryingExecutor<ResponseT> |
The retry executor which executes attempts in the current thread, potentially causing the current
thread to sleep for the specified amount of time before execution.
|
| ExponentialRetryAlgorithm |
The timed retry algorithm which uses randomized exponential backoff factor for calculating the
next attempt execution time.
|
| NonCancellableFuture<ResponseT> |
A future which cannot be cancelled from the external package.
|
| RetryAlgorithm<ResponseT> |
The retry algorithm, which makes decision based either on the thrown exception or the returned
response, and the execution time settings of the previous attempt.
|
| RetrySettings |
Holds the parameters for retry and timeout logic with exponential backoff.
|
| RetrySettings.Builder |
A base builder class for
RetrySettings. |
| ScheduledRetryingExecutor<ResponseT> |
The retry executor which uses
ScheduledExecutorService to schedule an attempt tasks. |
| TimedAttemptSettings |
Timed attempt execution settings.
|