- 2.70.0 (latest)
- 2.69.0
- 2.68.2
- 2.67.0
- 2.66.0
- 2.65.0
- 2.63.1
- 2.62.0
- 2.61.0
- 2.60.0
- 2.59.1
- 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
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.
This class is thread-safe.
Type Parameter
ResponseT
Constructors
RetryAlgorithm(ResultRetryAlgorithm<ResponseT> resultAlgorithm, TimedRetryAlgorithm timedAlgorithm) (deprecated)
public
RetryAlgorithm
(
ResultRetryAlgorithm<ResponseT>
resultAlgorithm
,
TimedRetryAlgorithm
timedAlgorithm
)
Deprecated. use RetryAlgorithm#RetryAlgorithm(ResultRetryAlgorithmWithContext, TimedRetryAlgorithmWithContext) instead
Creates a new retry algorithm instance, which uses thrown exception or returned response and timed algorithms to make a decision. The result algorithm has higher priority than the timed algorithm.
Instances that are created using this constructor will ignore the RetryingContext that is passed in to the retrying methods. Use <xref uid="com.google.api.gax.retrying.RetryAlgorithm.RetryAlgorithm(com.google.api.gax.retrying.ResultRetryAlgorithmWithContext<ResponseT>,com.google.api.gax.retrying.TimedRetryAlgorithmWithContext)" data-throw-if-not-resolved="false">#RetryAlgorithm(ResultRetryAlgorithmWithContext, TimedRetryAlgorithmWithContext) to create an instance that will respect the RetryingContext .
resultAlgorithm
timedAlgorithm
RetryAlgorithm(ResultRetryAlgorithmWithContext<ResponseT> resultAlgorithm, TimedRetryAlgorithmWithContext timedAlgorithm)
public
RetryAlgorithm
(
ResultRetryAlgorithmWithContext<ResponseT>
resultAlgorithm
,
TimedRetryAlgorithmWithContext
timedAlgorithm
)
Creates a new retry algorithm instance, which uses thrown exception or returned response and timed algorithms to make a decision. The result algorithm has higher priority than the timed algorithm.
resultAlgorithm
timedAlgorithm
Methods
createFirstAttempt() (deprecated)
public
TimedAttemptSettings
createFirstAttempt
()
Deprecated. use #createFirstAttempt(RetryingContext) instead
Creates a first attempt TimedAttemptSettings .
createFirstAttempt(RetryingContext context)
public
TimedAttemptSettings
createFirstAttempt
(
RetryingContext
context
)
Creates a first attempt TimedAttemptSettings .
context
createNextAttempt(RetryingContext context, Throwable previousThrowable, ResponseT previousResponse, TimedAttemptSettings previousSettings)
public
TimedAttemptSettings
createNextAttempt
(
RetryingContext
context
,
Throwable
previousThrowable
,
ResponseT
previousResponse
,
TimedAttemptSettings
previousSettings
)
Creates a next attempt TimedAttemptSettings . This method will return first non-null value, returned by either result or timed retry algorithms in that particular order.
context
RetryingContext
the RetryingContext that can be used to determine the RetrySettings for the next attempt
previousThrowable
previousResponse
ResponseT
response returned by the previous attempt or null if an exception was thrown instead
previousSettings
next attempt settings, can be null
, if there should be no new attempt
createNextAttempt(Throwable previousThrowable, ResponseT previousResponse, TimedAttemptSettings previousSettings) (deprecated)
public
TimedAttemptSettings
createNextAttempt
(
Throwable
previousThrowable
,
ResponseT
previousResponse
,
TimedAttemptSettings
previousSettings
)
Deprecated. use #createNextAttempt(RetryingContext, Throwable, Object, TimedAttemptSettings) instead
Creates a next attempt TimedAttemptSettings . This method will return first non-null value, returned by either result or timed retry algorithms in that particular order.
previousThrowable
previousResponse
ResponseT
response returned by the previous attempt or null if an exception was thrown instead
previousSettings
next attempt settings, can be null
, if no there should be no new attempt
getResultAlgorithm()
public
ResultRetryAlgorithm<ResponseT>
getResultAlgorithm
()
getTimedAlgorithm()
public
TimedRetryAlgorithm
getTimedAlgorithm
()
shouldRetry(RetryingContext context, Throwable previousThrowable, ResponseT previousResponse, TimedAttemptSettings nextAttemptSettings)
public
boolean
shouldRetry
(
RetryingContext
context
,
Throwable
previousThrowable
,
ResponseT
previousResponse
,
TimedAttemptSettings
nextAttemptSettings
)
Returns true
if another attempt should be made, or false
otherwise.
context
RetryingContext
the RetryingContext that can be used to determine whether another attempt should be made
previousThrowable
previousResponse
ResponseT
response returned by the previous attempt or null if an exception was thrown instead
nextAttemptSettings
shouldRetry(Throwable previousThrowable, ResponseT previousResponse, TimedAttemptSettings nextAttemptSettings) (deprecated)
public
boolean
shouldRetry
(
Throwable
previousThrowable
,
ResponseT
previousResponse
,
TimedAttemptSettings
nextAttemptSettings
)
Deprecated. use #shouldRetry(RetryingContext, Throwable, Object, TimedAttemptSettings) instead
Returns true
if another attempt should be made, or false
otherwise.
previousThrowable
previousResponse
ResponseT
response returned by the previous attempt or null if an exception was thrown instead
nextAttemptSettings