Interface RetryPolicy

All Known Implementing Classes:
BoundedExponentialBackoffRetry, ExponentialBackoffRetry, RetryForever, RetryNTimes, RetryOneTime, RetryUntilElapsed, SessionFailedRetryPolicy

public interface RetryPolicy
Abstracts the policy to use when retrying connections
  • Method Summary

    Modifier and Type Method Description
    boolean allowRetry​(int retryCount, long elapsedTimeMs, RetrySleeper sleeper)
    Called when an operation has failed for some reason.
    default boolean allowRetry​(java.lang.Throwable exception)
    Called when an operation has failed with a specific exception.
  • Method Details

    • allowRetry

      boolean allowRetry​(int retryCount, long elapsedTimeMs, RetrySleeper sleeper)
      Called when an operation has failed for some reason. This method should return true to make another attempt.
      Parameters:
      retryCount - the number of times retried so far (0 the first time)
      elapsedTimeMs - the elapsed time in ms since the operation was attempted
      sleeper - use this to sleep - DO NOT call Thread.sleep
      Returns:
      true/false
    • allowRetry

      default boolean allowRetry​(java.lang.Throwable exception)
      Called when an operation has failed with a specific exception. This method should return true to make another attempt.
      Parameters:
      exception - the cause that this operation failed
      Returns:
      true/false