Class HttpComponents5ClientFactory
java.lang.Object
org.springframework.ws.transport.http.HttpComponents5ClientFactory
- All Implemented Interfaces:
org.springframework.beans.factory.FactoryBean<org.apache.hc.client5.http.impl.classic.CloseableHttpClient>
public class HttpComponents5ClientFactory
extends Object
implements org.springframework.beans.factory.FactoryBean<org.apache.hc.client5.http.impl.classic.CloseableHttpClient>
FactoryBean
to set up a CloseableHttpClient
using HttpComponents HttpClient 5.- Since:
- 4.0.5
- Author:
- Lars Uffmann
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic interface
static interface
-
Field Summary
Modifier and TypeFieldDescriptionstatic final org.apache.hc.client5.http.auth.AuthScope
AuthScope
to match any Host.Fields inherited from interface org.springframework.beans.factory.FactoryBean
OBJECT_TYPE_ATTRIBUTE
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionorg.apache.hc.client5.http.impl.classic.CloseableHttpClient
Class<?>
boolean
void
setAuthScope
(org.apache.hc.client5.http.auth.AuthScope authScope) Sets the authentication scope to be used.void
setClientBuilderCustomizer
(HttpComponents5ClientFactory.HttpClientBuilderCustomizer clientBuilderCustomizer) void
setConnectionManagerBuilderCustomizer
(HttpComponents5ClientFactory.PoolingHttpClientConnectionManagerBuilderCustomizer connectionManagerBuilderCustomizer) void
setConnectionTimeout
(Duration timeout) Sets the timeout until a connection is established.void
setCredentials
(org.apache.hc.client5.http.auth.Credentials credentials) Sets the credentials to be used.void
setMaxConnectionsPerHost
(Map<String, String> maxConnectionsPerHost) Sets the maximum number of connections per host for the underlying HttpClient.void
setMaxTotalConnections
(int maxTotalConnections) Sets the maximum number of connections allowed for the underlying HttpClient.void
setReadTimeout
(Duration timeout) Set the socket read timeout for the underlying HttpClient.
-
Field Details
-
ANY
public static final org.apache.hc.client5.http.auth.AuthScope ANYAuthScope
to match any Host.NOTE:
ANY
was removed fromAuthScope
in HttpComponents 5.0. This value object will easy migration from HttpComponents 4. Consider using aClientInterceptor
to implement http client agnostic preemptive basic auth.- See Also:
-
AuthScope(String, String, int, String, String)
-
-
Constructor Details
-
HttpComponents5ClientFactory
public HttpComponents5ClientFactory()
-
-
Method Details
-
setCredentials
public void setCredentials(org.apache.hc.client5.http.auth.Credentials credentials) Sets the credentials to be used. If not set, no authentication is done.- See Also:
-
UsernamePasswordCredentials
NTCredentials
-
setAuthScope
public void setAuthScope(org.apache.hc.client5.http.auth.AuthScope authScope) Sets the authentication scope to be used. Only used when thecredentials
property has been set.By default,
ANY
is used.- See Also:
-
setConnectionTimeout
Sets the timeout until a connection is established. A value of 0 means never timeout.- Parameters:
timeout
- the timeout value
-
setReadTimeout
Set the socket read timeout for the underlying HttpClient. A value of 0 means never timeout.- Parameters:
timeout
- the timeout value
-
setMaxTotalConnections
public void setMaxTotalConnections(int maxTotalConnections) Sets the maximum number of connections allowed for the underlying HttpClient.- Parameters:
maxTotalConnections
- the maximum number of connections allowed
-
setMaxConnectionsPerHost
Sets the maximum number of connections per host for the underlying HttpClient. The maximum number of connections per host can be set in a form accepted by thejava.util.Properties
class, like as follows:https://www.example.com=1 http://www.example.com:8080=7 http://www.springframework.org=10
The host can be specified as a URI (with scheme and port).
- Parameters:
maxConnectionsPerHost
- a properties object specifying the maximum number of connection
-
isSingleton
public boolean isSingleton()- Specified by:
isSingleton
in interfaceorg.springframework.beans.factory.FactoryBean<org.apache.hc.client5.http.impl.classic.CloseableHttpClient>
-
getObject
- Specified by:
getObject
in interfaceorg.springframework.beans.factory.FactoryBean<org.apache.hc.client5.http.impl.classic.CloseableHttpClient>
- Throws:
Exception
-
getObjectType
- Specified by:
getObjectType
in interfaceorg.springframework.beans.factory.FactoryBean<org.apache.hc.client5.http.impl.classic.CloseableHttpClient>
-
setClientBuilderCustomizer
public void setClientBuilderCustomizer(HttpComponents5ClientFactory.HttpClientBuilderCustomizer clientBuilderCustomizer) -
setConnectionManagerBuilderCustomizer
public void setConnectionManagerBuilderCustomizer(HttpComponents5ClientFactory.PoolingHttpClientConnectionManagerBuilderCustomizer connectionManagerBuilderCustomizer)
-