Browse Source

Polish core retry internals

pull/35447/head
Sam Brannen 3 months ago
parent
commit
8f34a67024
  1. 2
      spring-core/src/main/java/org/springframework/core/retry/RetryException.java
  2. 6
      spring-core/src/main/java/org/springframework/core/retry/RetryTemplate.java
  3. 3
      spring-core/src/main/java/org/springframework/core/retry/support/CompositeRetryListener.java

2
spring-core/src/main/java/org/springframework/core/retry/RetryException.java

@ -44,7 +44,7 @@ import java.util.Objects;
public class RetryException extends Exception { public class RetryException extends Exception {
@Serial @Serial
private static final long serialVersionUID = 5439915454935047936L; private static final long serialVersionUID = 1L;
/** /**

6
spring-core/src/main/java/org/springframework/core/retry/RetryTemplate.java

@ -16,6 +16,7 @@
package org.springframework.core.retry; package org.springframework.core.retry;
import java.io.Serial;
import java.util.ArrayDeque; import java.util.ArrayDeque;
import java.util.Deque; import java.util.Deque;
@ -148,7 +149,7 @@ public class RetryTemplate implements RetryOperations {
.formatted(retryableName)); .formatted(retryableName));
// Retry process starts here // Retry process starts here
BackOffExecution backOffExecution = this.retryPolicy.getBackOff().start(); BackOffExecution backOffExecution = this.retryPolicy.getBackOff().start();
Deque<Throwable> exceptions = new ArrayDeque<>(); Deque<Throwable> exceptions = new ArrayDeque<>(4);
exceptions.add(initialException); exceptions.add(initialException);
Throwable lastException = initialException; Throwable lastException = initialException;
@ -200,8 +201,10 @@ public class RetryTemplate implements RetryOperations {
} }
} }
private static class RetryInterruptedException extends RetryException { private static class RetryInterruptedException extends RetryException {
@Serial
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
@ -213,7 +216,6 @@ public class RetryTemplate implements RetryOperations {
public int getRetryCount() { public int getRetryCount() {
return (getSuppressed().length - 1); return (getSuppressed().length - 1);
} }
} }
} }

3
spring-core/src/main/java/org/springframework/core/retry/support/CompositeRetryListener.java

@ -46,6 +46,7 @@ public class CompositeRetryListener implements RetryListener {
/** /**
* Create a new {@code CompositeRetryListener}. * Create a new {@code CompositeRetryListener}.
* @see #addListener(RetryListener)
*/ */
public CompositeRetryListener() { public CompositeRetryListener() {
} }
@ -56,7 +57,7 @@ public class CompositeRetryListener implements RetryListener {
* @param listeners the list of delegate listeners to register; must not be empty * @param listeners the list of delegate listeners to register; must not be empty
*/ */
public CompositeRetryListener(List<RetryListener> listeners) { public CompositeRetryListener(List<RetryListener> listeners) {
Assert.notEmpty(listeners, "RetryListener List must not be empty"); Assert.notEmpty(listeners, "RetryListener list must not be empty");
this.listeners.addAll(listeners); this.listeners.addAll(listeners);
} }

Loading…
Cancel
Save