From 511aaf2a06df3f38471011b36f177660f78026d1 Mon Sep 17 00:00:00 2001 From: Ryan Baxter Date: Tue, 20 May 2025 11:33:57 -0400 Subject: [PATCH] Add CircuitBreakerRetryPolicyApi Fixes #238 --- .../springretry/SpringRetryConfigBuilder.java | 10 ++++++++++ .../SpringRetryCircuitBreakerIntegrationTest.java | 13 ++++++++----- 2 files changed, 18 insertions(+), 5 deletions(-) diff --git a/spring-cloud-circuitbreaker-spring-retry/src/main/java/org/springframework/cloud/circuitbreaker/springretry/SpringRetryConfigBuilder.java b/spring-cloud-circuitbreaker-spring-retry/src/main/java/org/springframework/cloud/circuitbreaker/springretry/SpringRetryConfigBuilder.java index 0bc5ddf..dbda68c 100644 --- a/spring-cloud-circuitbreaker-spring-retry/src/main/java/org/springframework/cloud/circuitbreaker/springretry/SpringRetryConfigBuilder.java +++ b/spring-cloud-circuitbreaker-spring-retry/src/main/java/org/springframework/cloud/circuitbreaker/springretry/SpringRetryConfigBuilder.java @@ -70,6 +70,16 @@ public class SpringRetryConfigBuilder implements ConfigBuilder factoryCustomizer() { return factory -> { + CircuitBreakerRetryPolicy circuitBreakerRetryPolicy = new CircuitBreakerRetryPolicy(new SimpleRetryPolicy(2)); + circuitBreakerRetryPolicy.setOpenTimeout(1000); + circuitBreakerRetryPolicy.setResetTimeout(1000); factory.configureDefault( - id -> new SpringRetryConfigBuilder(id).retryPolicy(new TimeoutRetryPolicy()).build()); + id -> new SpringRetryConfigBuilder(id).retryPolicy(circuitBreakerRetryPolicy).build()); factory.configure(builder -> builder.retryPolicy(new SimpleRetryPolicy(1)).build(), "slow"); factory .addRetryTemplateCustomizers(retryTemplate -> retryTemplate.registerListener(new RetryListener() { @Override public boolean open(RetryContext context, - RetryCallback callback) { + RetryCallback callback) { return false; } @Override public void close(RetryContext context, RetryCallback callback, - Throwable throwable) { + Throwable throwable) { } @Override public void onError(RetryContext context, RetryCallback callback, - Throwable throwable) { + Throwable throwable) { } }));