| 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.
|
| RetryingContext |
Context for a retryable operation.
|
| 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. |
| RetryingExecutorWithContext<ResponseT> |
A
RetryingExecutor that accepts a per-operation context. |
| RetryingFuture<ResponseT> |
Represents a retrying future.
|
| StreamResumptionStrategy<RequestT,ResponseT> |
This is part of the server streaming retry api.
|
| 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.
|
| ExponentialPollAlgorithm |
The timed poll algorithm which uses jittered exponential backoff factor for calculating the next
poll execution time and throws
PollException in case if total timeout or total number of
attempts is reached. |
| ExponentialRetryAlgorithm |
The timed retry algorithm which uses jittered 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 or poll logic with jitter, timeout and exponential
backoff.
|
| RetrySettings.Builder |
A base builder class for
RetrySettings. |
| ScheduledRetryingExecutor<ResponseT> |
The retry executor which uses
ScheduledExecutorService to schedule an attempt tasks. |
| SimpleStreamResumptionStrategy<RequestT,ResponseT> |
Simplest implementation of a
StreamResumptionStrategy which returns the initial request
for unstarted streams. |
| StreamingRetryAlgorithm<ResponseT> |
The streaming retry algorithm, which makes decision based either on the thrown exception and the
execution time settings of the previous attempt.
|
| TimedAttemptSettings |
Timed attempt execution settings.
|
| TimedAttemptSettings.Builder |
| Exception | Description |
|---|---|
| PollException |
PollException is thrown when polling algorithm exceeds total timeout or total number of
attempts. |
| ServerStreamingAttemptException |
A wrapper exception thrown by
ServerStreamingAttemptCallable to communicate additional
context to the StreamingRetryAlgorithm and to pass the original cancellation stack trace
to RetryingServerStreamingCallable. |