Class RetryAction

java.lang.Object
com.couchbase.client.core.retry.RetryAction

public class RetryAction extends Object
The RetryAction describes how and when a request should be retried.
  • Method Details

    • withDuration

      public static RetryAction withDuration(Duration duration)
      Constructs a new RetryAction indicating that the request should be retried after the given duration.
      Parameters:
      duration - the duration after which the request should be retried.
      Returns:
      a new RetryAction indicating retry.
    • noRetry

      public static RetryAction noRetry()
      Constructs a new RetryAction indicating that the request should not be retried.
      Returns:
      a new RetryAction indicating no retry.
    • noRetry

      @Volatile public static RetryAction noRetry(Function<Throwable,Throwable> exceptionTranslator)
      Constructs a new RetryAction indicating that the request should not be retried, and a specific exception should be used to fail the request.
      Parameters:
      exceptionTranslator - customizes the exception used to fail the request. If the translator creates a new exception, to preserve the error context it should use the function argument as the new exception's cause.
      Returns:
      a new RetryAction indicating no retry and a custom exception.
    • duration

      public Optional<Duration> duration()
      If present, the operation should be retried after the given duration.
      Returns:
      the duration indicating if (and when) the request should be retried.
    • exceptionTranslator

      public Function<Throwable,Throwable> exceptionTranslator()
      If a request is cancelled as the result of this retry action, the throwable used to fail the request should be translated by this function.