public class HttpComponentsClientHttpRequestFactory extends Object implements ClientHttpRequestFactory, DisposableBean
ClientHttpRequestFactory implementation that
 uses Apache HttpComponents
 HttpClient to create requests.
 Allows to use a pre-configured HttpClient instance -
 potentially with authentication, HTTP connection pooling, etc.
| Constructor and Description | 
|---|
| HttpComponentsClientHttpRequestFactory()Create a new instance of the HttpComponentsClientHttpRequestFactory with a default
  HttpClientthat uses a defaultPoolingClientConnectionManager. | 
| HttpComponentsClientHttpRequestFactory(HttpClient httpClient)Create a new instance of the HttpComponentsClientHttpRequestFactory
 with the given  HttpClientinstance. | 
| Modifier and Type | Method and Description | 
|---|---|
| protected org.apache.http.protocol.HttpContext | createHttpContext(HttpMethod httpMethod,
                 URI uri)Template methods that creates a  HttpContextfor the given HTTP method and URI. | 
| protected HttpUriRequest | createHttpUriRequest(HttpMethod httpMethod,
                    URI uri)Create a Commons HttpMethodBase object for the given HTTP method and URI specification. | 
| ClientHttpRequest | createRequest(URI uri,
             HttpMethod httpMethod)Create a new  ClientHttpRequestfor the specified URI and HTTP method. | 
| void | destroy()Shutdown hook that closes the underlying
  ClientConnectionManager's
 connection pool, if any. | 
| HttpClient | getHttpClient()Return the  HttpClientused by this factory. | 
| protected void | postProcessHttpRequest(HttpUriRequest request)Template method that allows for manipulating the  HttpUriRequestbefore it is
 returned as part of aHttpComponentsClientHttpRequest. | 
| void | setConnectTimeout(int timeout)Set the connection timeout for the underlying HttpClient. | 
| void | setHttpClient(HttpClient httpClient)Set the  HttpClientused by this factory. | 
| void | setReadTimeout(int timeout)Set the socket read timeout for the underlying HttpClient. | 
public HttpComponentsClientHttpRequestFactory()
HttpClient that uses a default PoolingClientConnectionManager.public HttpComponentsClientHttpRequestFactory(HttpClient httpClient)
HttpClient instance.httpClient - the HttpClient instance to use for this request factorypublic void setHttpClient(HttpClient httpClient)
HttpClient used by this factory.public HttpClient getHttpClient()
HttpClient used by this factory.public void setConnectTimeout(int timeout)
timeout - the timeout value in millisecondspublic void setReadTimeout(int timeout)
timeout - the timeout value in millisecondspublic ClientHttpRequest createRequest(URI uri, HttpMethod httpMethod) throws IOException
ClientHttpRequestFactoryClientHttpRequest for the specified URI and HTTP method.
 The returned request can be written to, and then executed by calling
 ClientHttpRequest.execute().
createRequest in interface ClientHttpRequestFactoryuri - the URI to create a request forhttpMethod - the HTTP method to executeIOException - in case of I/O errorsprotected HttpUriRequest createHttpUriRequest(HttpMethod httpMethod, URI uri)
httpMethod - the HTTP methoduri - the URIprotected void postProcessHttpRequest(HttpUriRequest request)
HttpUriRequest before it is
 returned as part of a HttpComponentsClientHttpRequest.
 The default implementation is empty.
request - the request to processprotected org.apache.http.protocol.HttpContext createHttpContext(HttpMethod httpMethod, URI uri)
HttpContext for the given HTTP method and URI.
 The default implementation returns null.
httpMethod - the HTTP methoduri - the URIpublic void destroy()
ClientConnectionManager's
 connection pool, if any.destroy in interface DisposableBean