32
32
@ Component
33
33
public class AdminServiceAddressLocator {
34
34
35
- private static final int DEFAULT_TIMEOUT_MS = 1000 ;
36
35
private static final long NORMAL_REFRESH_INTERVAL = 5 * 60 * 1000 ;
37
36
private static final long OFFLINE_REFRESH_INTERVAL = 10 * 1000 ;
38
37
private static final int RETRY_TIMES = 3 ;
@@ -48,24 +47,15 @@ public class AdminServiceAddressLocator {
48
47
private HttpMessageConverters httpMessageConverters ;
49
48
@ Autowired
50
49
private PortalSettings portalSettings ;
50
+ @ Autowired
51
+ private RestTemplateFactory restTemplateFactory ;
51
52
52
53
@ PostConstruct
53
54
public void init () {
54
55
allEnvs = portalSettings .getAllEnvs ();
55
56
56
57
//init restTemplate
57
- restTemplate = new RestTemplate (httpMessageConverters .getConverters ());
58
- if (restTemplate .getRequestFactory () instanceof SimpleClientHttpRequestFactory ) {
59
- SimpleClientHttpRequestFactory rf =
60
- (SimpleClientHttpRequestFactory ) restTemplate .getRequestFactory ();
61
- rf .setReadTimeout (DEFAULT_TIMEOUT_MS );
62
- rf .setConnectTimeout (DEFAULT_TIMEOUT_MS );
63
- } else if (restTemplate .getRequestFactory () instanceof HttpComponentsClientHttpRequestFactory ) {
64
- HttpComponentsClientHttpRequestFactory rf =
65
- (HttpComponentsClientHttpRequestFactory ) restTemplate .getRequestFactory ();
66
- rf .setReadTimeout (DEFAULT_TIMEOUT_MS );
67
- rf .setConnectTimeout (DEFAULT_TIMEOUT_MS );
68
- }
58
+ restTemplate = restTemplateFactory .getObject ();
69
59
70
60
refreshServiceAddressService =
71
61
Executors .newScheduledThreadPool (1 , ApolloThreadFactory .create ("ServiceLocator" , false ));
0 commit comments