Interface RetryingExecutor<ResponseT> (2.70.0)

  public 
  
 interface 
 RetryingExecutor<ResponseT> 
 

A retrying executor is responsible for the following operations:

  1. Creating first attempt RetryingFuture , which acts as a facade, hiding from client code the actual execution of scheduled retry attempts.
  2. Executing the actual Callable in a retriable context.

This interface is for internal/advanced use only.

Type Parameter

Name
Description
ResponseT

Methods

createFuture(Callable<ResponseT> callable)

  public 
  
 abstract 
  
 RetryingFuture<ResponseT> 
  
 createFuture 
 ( 
 Callable<ResponseT> 
  
 callable 
 ) 
 

Creates the RetryingFuture , which is a facade, returned to the client code to wait for any retriable operation to complete.

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

submit(RetryingFuture<ResponseT> retryingFuture)

  public 
  
 abstract 
  
 ApiFuture<ResponseT> 
  
 submit 
 ( 
 RetryingFuture<ResponseT> 
  
 retryingFuture 
 ) 
 

Submits an attempt for execution. A typical implementation will either try to execute the attempt in the current thread or schedule it for an execution, using some sort of async execution service.

Parameter
Name
Description
retryingFuture
RetryingFuture < ResponseT >

the future previously returned by #createFuture(Callable) and reused for each subsequent attempt of same operation.

Returns
Type
Description
ApiFuture < ResponseT >

submitted attempt future

Design a Mobile Site
View Site in Mobile | Classic
Share by: