diff --git a/spring-cloud-config-client/src/main/java/org/springframework/cloud/config/client/RetryTemplateFactory.java b/spring-cloud-config-client/src/main/java/org/springframework/cloud/config/client/RetryTemplateFactory.java
index 99ac6565..60b10da8 100644
--- a/spring-cloud-config-client/src/main/java/org/springframework/cloud/config/client/RetryTemplateFactory.java
+++ b/spring-cloud-config-client/src/main/java/org/springframework/cloud/config/client/RetryTemplateFactory.java
@@ -16,43 +16,23 @@
package org.springframework.cloud.config.client;
-import java.lang.reflect.Field;
-
import org.apache.commons.logging.Log;
import org.springframework.retry.support.RetryTemplate;
-import org.springframework.util.ReflectionUtils;
public final class RetryTemplateFactory {
- private static final Field field;
-
- static {
- field = ReflectionUtils.findField(RetryTemplate.class, "logger");
- if (field != null) {
- ReflectionUtils.makeAccessible(field);
- }
- }
-
private RetryTemplateFactory() {
}
public static RetryTemplate create(RetryProperties properties, Log log) {
- RetryTemplate retryTemplate = RetryTemplate.builder()
+ return RetryTemplate.builder()
.maxAttempts(properties.getMaxAttempts())
.exponentialBackoff(properties.getInitialInterval(), properties.getMultiplier(),
properties.getMaxInterval(), properties.isUseRandomPolicy())
+ .withLogger(log)
.build();
- try {
- field.set(retryTemplate, log);
- }
- catch (IllegalAccessException e) {
- if (log.isErrorEnabled()) {
- log.error("error setting retry log", e);
- }
- }
- return retryTemplate;
}
}
diff --git a/spring-cloud-config-dependencies/pom.xml b/spring-cloud-config-dependencies/pom.xml
index 75ba630e..1ab38dba 100644
--- a/spring-cloud-config-dependencies/pom.xml
+++ b/spring-cloud-config-dependencies/pom.xml
@@ -18,6 +18,7 @@
6.6.1.202309021850-r
3.1.1
2.1.1.RELEASE
+ 2.0.10
@@ -41,6 +42,11 @@
spring-cloud-config-monitor
${project.version}
+
+ org.springframework.retry
+ spring-retry
+ ${spring-retry.version}
+
org.springframework.vault
spring-vault-core