44 lines
1.3 KiB
Java
44 lines
1.3 KiB
Java
package com.baeldung.client;
|
|
|
|
import org.apache.http.HttpHost;
|
|
import org.springframework.beans.factory.FactoryBean;
|
|
import org.springframework.beans.factory.InitializingBean;
|
|
import org.springframework.http.client.ClientHttpRequestFactory;
|
|
import org.springframework.http.client.support.BasicAuthenticationInterceptor;
|
|
import org.springframework.stereotype.Component;
|
|
import org.springframework.web.client.RestTemplate;
|
|
|
|
@Component
|
|
public class RestTemplateFactory implements FactoryBean<RestTemplate>, InitializingBean {
|
|
private RestTemplate restTemplate;
|
|
|
|
public RestTemplateFactory() {
|
|
super();
|
|
}
|
|
|
|
// API
|
|
|
|
@Override
|
|
public RestTemplate getObject() {
|
|
return restTemplate;
|
|
}
|
|
|
|
@Override
|
|
public Class<RestTemplate> getObjectType() {
|
|
return RestTemplate.class;
|
|
}
|
|
|
|
@Override
|
|
public boolean isSingleton() {
|
|
return true;
|
|
}
|
|
|
|
@Override
|
|
public void afterPropertiesSet() {
|
|
HttpHost host = new HttpHost("localhost", 8082, "http");
|
|
final ClientHttpRequestFactory requestFactory = new HttpComponentsClientHttpRequestFactoryBasicAuth(host);
|
|
restTemplate = new RestTemplate(requestFactory);
|
|
restTemplate.getInterceptors().add(new BasicAuthenticationInterceptor("user1", "user1Pass"));
|
|
}
|
|
|
|
} |