package org.onap.aai.restclient;
-import com.att.eelf.configuration.EELFLogger;
-import com.att.eelf.configuration.EELFManager;
-
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;
import org.apache.http.client.HttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.ssl.SSLContextBuilder;
-import org.springframework.boot.web.client.RestTemplateBuilder;
+import org.onap.aai.aailog.filter.RestClientLoggingInterceptor;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
import org.springframework.http.client.HttpComponentsClientHttpRequestFactory;
import org.springframework.util.ResourceUtils;
import org.springframework.web.client.RestTemplate;
public abstract class TwoWaySSLRestClient extends RestClient {
- private static EELFLogger logger = EELFManager.getInstance().getLogger(TwoWaySSLRestClient.class);
+ private static Logger logger = LoggerFactory.getLogger(TwoWaySSLRestClient.class);
private RestTemplate restTemplate;
@PostConstruct
public void init() throws Exception {
+ restTemplate = new RestTemplate();
+ restTemplate.setRequestFactory(this.getHttpRequestFactory());
+ restTemplate.setErrorHandler(new RestClientResponseErrorHandler());
+ RestClientLoggingInterceptor loggingInterceptor = new RestClientLoggingInterceptor();
+ restTemplate.getInterceptors().add(loggingInterceptor);
+
+ }
+
+ protected HttpComponentsClientHttpRequestFactory getHttpRequestFactory() throws Exception {
+ return new HttpComponentsClientHttpRequestFactory(this.getClient());
+ }
+
+ protected HttpClient getClient() throws Exception {
char[] keyStorePassword = getKeystorePassword();
char[] trustStorePassword = getTruststorePassword();
HttpClient client =
HttpClients.custom().setSSLContext(sslContext).setSSLHostnameVerifier((s, sslSession) -> true).build();
- restTemplate =
- new RestTemplateBuilder().requestFactory(() -> new HttpComponentsClientHttpRequestFactory(client)).build();
-
- restTemplate.setErrorHandler(new RestClientResponseErrorHandler());
-
+ return client;
}
private KeyStore loadPfx(String file, char[] password) throws Exception {