- 2.59.0 (latest)
- 2.58.0
- 2.57.0
- 2.55.0
- 2.54.1
- 2.53.0
- 2.52.0
- 2.51.0
- 2.50.0
- 2.49.0
- 2.48.1
- 2.47.0
- 2.46.1
- 2.45.0
- 2.43.0
- 2.42.0
- 2.41.0
- 2.39.0
- 2.38.0
- 2.37.0
- 2.36.0
- 2.35.0
- 2.34.1
- 2.33.0
- 2.32.1
- 2.31.1
- 2.30.1
- 2.24.0
- 2.23.3
- 2.22.0
- 2.21.0
- 2.20.1
- 2.19.6
- 2.18.7
- 2.17.0
- 2.16.0
- 2.15.0
- 2.14.0
- 2.13.0
- 2.12.2
- 2.11.0
- 2.10.0
- 2.9.0
- 2.8.1
- 2.7.1
public class DirectRetryingExecutor<ResponseT> implements RetryingExecutorWithContext<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.
This class is thread-safe.
Implements
com.google.api.gax.retrying.RetryingExecutorWithContext<ResponseT>Type Parameter |
|
---|---|
Name | Description |
ResponseT |
Constructors
DirectRetryingExecutor(RetryAlgorithm<ResponseT> retryAlgorithm)
public DirectRetryingExecutor(RetryAlgorithm<ResponseT> retryAlgorithm)
Creates a new direct retrying executor instance, which will be using retryAlgorithm
to
determine retrying strategy.
Parameter | |
---|---|
Name | Description |
retryAlgorithm |
RetryAlgorithm<ResponseT> retry algorithm to use for attempts execution |
Methods
createFuture(Callable<ResponseT> callable)
public RetryingFuture<ResponseT> createFuture(Callable<ResponseT> callable)
Creates a RetryingFuture, which is a facade, returned to the client code to wait for
any retriable operation to complete. The future is bounded to this
executor instance.
Parameter | |
---|---|
Name | Description |
callable |
Callable<ResponseT> the actual callable, which should be executed in a retriable context |
Returns | |
---|---|
Type | Description |
RetryingFuture<ResponseT> |
retrying future facade |
createFuture(Callable<ResponseT> callable, RetryingContext context)
public RetryingFuture<ResponseT> createFuture(Callable<ResponseT> callable, RetryingContext context)
Creates a RetryingFuture, which is a facade, returned to the client code to wait for
any retriable operation to complete. The future is bounded to this
executor instance.
Parameters | |
---|---|
Name | Description |
callable |
Callable<ResponseT> the actual callable, which should be executed in a retriable context |
context |
RetryingContext |
Returns | |
---|---|
Type | Description |
RetryingFuture<ResponseT> |
retrying future facade |
sleep(Duration delay)
protected void sleep(Duration delay)
This method simply calls Thread#sleep(long).
Parameter | |
---|---|
Name | Description |
delay |
org.threeten.bp.Duration time to sleep |
Exceptions | |
---|---|
Type | Description |
InterruptedException |
if any thread has interrupted the current thread |
submit(RetryingFuture<ResponseT> retryingFuture)
public ApiFuture<ResponseT> submit(RetryingFuture<ResponseT> retryingFuture)
Submits an attempt for execution in the current thread, causing the current thread to sleep for
the specified by the RetryingFuture#getAttemptSettings() amount of time. As result,
this method completes execution only after the specified retryingFuture
completes.
Parameter | |
---|---|
Name | Description |
retryingFuture |
RetryingFuture<ResponseT> the future previously returned by #createFuture(Callable, RetryingContext) |
Returns | |
---|---|
Type | Description |
ApiFuture<ResponseT> |
returns completed |