Browse Source

Make built-in RetryPolicy implementations final

Closes gh-35040
pull/35045/head
Sam Brannen 6 months ago
parent
commit
ff167aafa2
  1. 2
      spring-core/src/main/java/org/springframework/core/retry/support/MaxRetryAttemptsPolicy.java
  2. 2
      spring-core/src/main/java/org/springframework/core/retry/support/MaxRetryDurationPolicy.java
  3. 2
      spring-core/src/main/java/org/springframework/core/retry/support/PredicateRetryPolicy.java
  4. 18
      spring-core/src/test/java/org/springframework/core/retry/RetryTemplateTests.java

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

@ -27,7 +27,7 @@ import org.springframework.util.Assert;
* @author Sam Brannen * @author Sam Brannen
* @since 7.0 * @since 7.0
*/ */
public class MaxRetryAttemptsPolicy implements RetryPolicy { public final class MaxRetryAttemptsPolicy implements RetryPolicy {
/** /**
* The default maximum number of retry attempts: {@value}. * The default maximum number of retry attempts: {@value}.

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

@ -30,7 +30,7 @@ import org.springframework.util.Assert;
* @author Sam Brannen * @author Sam Brannen
* @since 7.0 * @since 7.0
*/ */
public class MaxRetryDurationPolicy implements RetryPolicy { public final class MaxRetryDurationPolicy implements RetryPolicy {
/** /**
* The default maximum retry duration: 3 seconds. * The default maximum retry duration: 3 seconds.

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

@ -28,7 +28,7 @@ import org.springframework.core.retry.RetryPolicy;
* @author Sam Brannen * @author Sam Brannen
* @since 7.0 * @since 7.0
*/ */
public class PredicateRetryPolicy implements RetryPolicy { public final class PredicateRetryPolicy implements RetryPolicy {
private final Predicate<Throwable> predicate; private final Predicate<Throwable> predicate;

18
spring-core/src/test/java/org/springframework/core/retry/RetryTemplateTests.java

@ -20,7 +20,6 @@ import java.time.Duration;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
import org.springframework.core.retry.support.MaxRetryAttemptsPolicy;
import org.springframework.util.backoff.FixedBackOff; import org.springframework.util.backoff.FixedBackOff;
import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.assertThat;
@ -110,20 +109,15 @@ class RetryTemplateTests {
} }
}; };
MaxRetryAttemptsPolicy retryPolicy = new MaxRetryAttemptsPolicy() { RetryPolicy retryPolicy = () -> new RetryExecution() {
@Override int retryAttempts;
public RetryExecution start() {
return new RetryExecution() {
int retryAttempts;
@Override @Override
public boolean shouldRetry(Throwable throwable) { public boolean shouldRetry(Throwable throwable) {
return this.retryAttempts++ < 3 && throwable instanceof TechnicalException; return (this.retryAttempts++ < 3 && throwable instanceof TechnicalException);
}
};
} }
}; };
retryTemplate.setRetryPolicy(retryPolicy); retryTemplate.setRetryPolicy(retryPolicy);
retryTemplate.setBackOffPolicy(new FixedBackOff(Duration.ofMillis(10))); retryTemplate.setBackOffPolicy(new FixedBackOff(Duration.ofMillis(10)));

Loading…
Cancel
Save