@@ -58,31 +58,26 @@ static String encodeProxyCredentials(@NonNull final ProxyConfig cfg) {
58
58
}
59
59
60
60
public RestTemplate createRestTemplate () {
61
- RestTemplate restTemplate ;
62
-
63
- if (System .getProperty ("http.proxyUser" ) != null && System .getProperty ("http.proxyPassword" ) != null ) {
61
+ if (proxyConfig .isComplete ()) {
64
62
// Configuring Proxy Authentication explicitly as it isn't done by default for spring rest templates :(
65
- CredentialsProvider credsProvider = new BasicCredentialsProvider ();
66
- credsProvider .setCredentials (
67
- new AuthScope (System . getProperty ( "http.proxyHost" ), Integer . parseInt ( System . getProperty ( "http.proxyPort" ) )),
68
- new UsernamePasswordCredentials (System . getProperty ( "http.proxyUser" ), System . getProperty ( "http.proxyPassword" ))
63
+ final var credentials = new BasicCredentialsProvider ();
64
+ credentials .setCredentials (
65
+ new AuthScope (proxyConfig . getHost ( ), proxyConfig . getPort ( )),
66
+ new UsernamePasswordCredentials (proxyConfig . getUser ( ), proxyConfig . getPassword ( ))
69
67
);
70
- HttpClientBuilder clientBuilder = HttpClientBuilder .create ();
71
68
72
- clientBuilder .useSystemProperties ();
73
- clientBuilder .setProxy (new HttpHost (System .getProperty ("http.proxyHost" ), Integer .parseInt (System .getProperty ("http.proxyPort" ))));
74
- clientBuilder .setDefaultCredentialsProvider (credsProvider );
75
- clientBuilder .setProxyAuthenticationStrategy (new ProxyAuthenticationStrategy ());
69
+ final var builder = HttpClientBuilder .create ();
70
+ builder .useSystemProperties ();
71
+ builder .setProxy (new HttpHost (proxyConfig .getHost (), proxyConfig .getPort ()));
72
+ builder .setDefaultCredentialsProvider (credentials );
73
+ builder .setProxyAuthenticationStrategy (new ProxyAuthenticationStrategy ());
76
74
77
- CloseableHttpClient client = clientBuilder .build ();
78
-
79
- HttpComponentsClientHttpRequestFactory factory = new HttpComponentsClientHttpRequestFactory ();
80
- factory .setHttpClient (client );
81
- restTemplate = new RestTemplate (factory );
82
- } else {
83
- restTemplate = new RestTemplate ();
75
+ final var factory = new HttpComponentsClientHttpRequestFactory ();
76
+ factory .setHttpClient (builder .build ());
77
+ return new RestTemplate (factory );
84
78
}
85
79
86
- return restTemplate ;
80
+ return new RestTemplate ();
81
+ }
87
82
}
88
83
}
0 commit comments