From 88d4ddbd6a64cb9131d6bedda764518906b8558a Mon Sep 17 00:00:00 2001 From: weihu Date: Tue, 21 Jun 2022 23:23:10 +0800 Subject: [PATCH] add java doc --- .../PolarisRestTemplateRegisterAutoConfiguration.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/spring-cloud-starter-tencent-polaris-circuitbreaker/src/main/java/com/tencent/cloud/polaris/circuitbreaker/PolarisRestTemplateRegisterAutoConfiguration.java b/spring-cloud-starter-tencent-polaris-circuitbreaker/src/main/java/com/tencent/cloud/polaris/circuitbreaker/PolarisRestTemplateRegisterAutoConfiguration.java index 081859a9c..a7534def3 100644 --- a/spring-cloud-starter-tencent-polaris-circuitbreaker/src/main/java/com/tencent/cloud/polaris/circuitbreaker/PolarisRestTemplateRegisterAutoConfiguration.java +++ b/spring-cloud-starter-tencent-polaris-circuitbreaker/src/main/java/com/tencent/cloud/polaris/circuitbreaker/PolarisRestTemplateRegisterAutoConfiguration.java @@ -19,10 +19,13 @@ package com.tencent.cloud.polaris.circuitbreaker; import org.springframework.beans.BeansException; import org.springframework.beans.factory.SmartInitializingSingleton; +import org.springframework.cloud.client.loadbalancer.LoadBalanced; import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationContextAware; import org.springframework.web.client.RestTemplate; +import java.util.Map; + /** * @author : wh * @date : 2022/6/21 21:20 @@ -40,7 +43,13 @@ public class PolarisRestTemplateRegisterAutoConfiguration implements Application @Override public void afterSingletonsInstantiated() { - RestTemplate restTemplate = this.applicationContext.getBean(RestTemplate.class); + Map beans = this.applicationContext.getBeansWithAnnotation(LoadBalanced.class); + beans.forEach(this::initRestTemplate); + this.applicationContext.getBean(RestTemplate.class); + } + + private void initRestTemplate(String beanName, Object bean) { + RestTemplate restTemplate = (RestTemplate) bean; restTemplate.setErrorHandler(polarisRestTemplateResponseErrorHandler); }