Interface RetryListener

All Known Implementing Classes:
CompositeRetryListener

public interface RetryListener
RetryListener defines a listener API for reacting to events published during the execution of a Retryable operation.

Typically registered in a RetryTemplate, and can be composed using a CompositeRetryListener.

Since:
7.0
Author:
Mahmoud Ben Hassine, Sam Brannen
See Also:
  • Method Details

    • beforeRetry

      default void beforeRetry(RetryPolicy retryPolicy, Retryable<?> retryable)
      Called before every retry attempt.
      Parameters:
      retryPolicy - the RetryPolicy
      retryable - the Retryable operation
    • onRetrySuccess

      default void onRetrySuccess(RetryPolicy retryPolicy, Retryable<?> retryable, @Nullable Object result)
      Called after the first successful retry attempt.
      Parameters:
      retryPolicy - the RetryPolicy
      retryable - the Retryable operation
      result - the result of the Retryable operation
    • onRetryFailure

      default void onRetryFailure(RetryPolicy retryPolicy, Retryable<?> retryable, Throwable throwable)
      Called every time a retry attempt fails.
      Parameters:
      retryPolicy - the RetryPolicy
      retryable - the Retryable operation
      throwable - the exception thrown by the Retryable operation
    • onRetryPolicyExhaustion

      default void onRetryPolicyExhaustion(RetryPolicy retryPolicy, Retryable<?> retryable, Throwable throwable)
      Called if the RetryPolicy is exhausted.
      Parameters:
      retryPolicy - the RetryPolicy
      retryable - the Retryable operation
      throwable - the last exception thrown by the Retryable operation