Package org.springframework.http.client
Class JettyClientHttpRequestFactory
java.lang.Object
org.springframework.http.client.JettyClientHttpRequestFactory
- All Implemented Interfaces:
DisposableBean
,InitializingBean
,ClientHttpRequestFactory
public class JettyClientHttpRequestFactory
extends Object
implements ClientHttpRequestFactory, InitializingBean, DisposableBean
ClientHttpRequestFactory
implementation based on Jetty's HttpClient
.- Since:
- 6.1
- Author:
- Arjen Poutsma
- See Also:
-
Constructor Summary
ConstructorDescriptionDefault constructor that creates a new instance ofHttpClient
.JettyClientHttpRequestFactory
(org.eclipse.jetty.client.HttpClient httpClient) Constructor that takes a customizedHttpClient
instance. -
Method Summary
Modifier and TypeMethodDescriptionvoid
Invoked by the containingBeanFactory
after it has set all bean properties and satisfiedBeanFactoryAware
,ApplicationContextAware
etc.createRequest
(URI uri, HttpMethod httpMethod) Create a newClientHttpRequest
for the specified URI and HTTP method.void
destroy()
Invoked by the containingBeanFactory
on destruction of a bean.void
setConnectTimeout
(int connectTimeout) Set the underlying connect timeout in milliseconds.void
setConnectTimeout
(Duration connectTimeout) Set the underlying connect timeout in milliseconds.void
setReadTimeout
(long readTimeout) Set the underlying read timeout in milliseconds.void
setReadTimeout
(Duration readTimeout) Set the underlying read timeout asDuration
.
-
Constructor Details
-
JettyClientHttpRequestFactory
public JettyClientHttpRequestFactory()Default constructor that creates a new instance ofHttpClient
. -
JettyClientHttpRequestFactory
public JettyClientHttpRequestFactory(org.eclipse.jetty.client.HttpClient httpClient) Constructor that takes a customizedHttpClient
instance.- Parameters:
httpClient
- the
-
-
Method Details
-
setConnectTimeout
public void setConnectTimeout(int connectTimeout) Set the underlying connect timeout in milliseconds. A value of 0 specifies an infinite timeout.Default is 5 seconds.
-
setConnectTimeout
Set the underlying connect timeout in milliseconds. A value of 0 specifies an infinite timeout.Default is 5 seconds.
-
setReadTimeout
public void setReadTimeout(long readTimeout) Set the underlying read timeout in milliseconds.Default is 10 seconds.
-
setReadTimeout
Set the underlying read timeout asDuration
.Default is 10 seconds.
-
afterPropertiesSet
Description copied from interface:InitializingBean
Invoked by the containingBeanFactory
after it has set all bean properties and satisfiedBeanFactoryAware
,ApplicationContextAware
etc.This method allows the bean instance to perform validation of its overall configuration and final initialization when all bean properties have been set.
- Specified by:
afterPropertiesSet
in interfaceInitializingBean
- Throws:
Exception
- in the event of misconfiguration (such as failure to set an essential property) or if initialization fails for any other reason
-
destroy
Description copied from interface:DisposableBean
Invoked by the containingBeanFactory
on destruction of a bean.- Specified by:
destroy
in interfaceDisposableBean
- Throws:
Exception
- in case of shutdown errors. Exceptions will get logged but not rethrown to allow other beans to release their resources as well.
-
createRequest
Description copied from interface:ClientHttpRequestFactory
Create a newClientHttpRequest
for the specified URI and HTTP method.The returned request can be written to, and then executed by calling
ClientHttpRequest.execute()
.- Specified by:
createRequest
in interfaceClientHttpRequestFactory
- Parameters:
uri
- the URI to create a request forhttpMethod
- the HTTP method to execute- Returns:
- the created request
- Throws:
IOException
- in case of I/O errors
-