Package org.springframework.http.client
Class OkHttp3ClientHttpRequestFactory
java.lang.Object
org.springframework.http.client.OkHttp3ClientHttpRequestFactory
- All Implemented Interfaces:
Closeable
,AutoCloseable
,DisposableBean
,ClientHttpRequestFactory
public class OkHttp3ClientHttpRequestFactory
extends Object
implements ClientHttpRequestFactory, DisposableBean
ClientHttpRequestFactory
implementation that uses
OkHttp 3.x to create requests.- Since:
- 4.3
- Author:
- Luciano Leggieri, Arjen Poutsma, Roy Clarkson
-
Constructor Summary
ConstructorDescriptionCreate a factory with a defaultOkHttpClient
instance.OkHttp3ClientHttpRequestFactory
(okhttp3.OkHttpClient client) Create a factory with the givenOkHttpClient
instance. -
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
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
setReadTimeout
(int readTimeout) Set the underlying read timeout in milliseconds.void
setWriteTimeout
(int writeTimeout) Set the underlying write timeout in milliseconds.
-
Constructor Details
-
OkHttp3ClientHttpRequestFactory
public OkHttp3ClientHttpRequestFactory()Create a factory with a defaultOkHttpClient
instance. -
OkHttp3ClientHttpRequestFactory
public OkHttp3ClientHttpRequestFactory(okhttp3.OkHttpClient client) Create a factory with the givenOkHttpClient
instance.- Parameters:
client
- the client to use
-
-
Method Details
-
setReadTimeout
public void setReadTimeout(int readTimeout) Set the underlying read timeout in milliseconds. A value of 0 specifies an infinite timeout. -
setWriteTimeout
public void setWriteTimeout(int writeTimeout) Set the underlying write timeout in milliseconds. A value of 0 specifies an infinite timeout. -
setConnectTimeout
public void setConnectTimeout(int connectTimeout) Set the underlying connect timeout in milliseconds. A value of 0 specifies an infinite timeout. -
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
-
destroy
Description copied from interface:DisposableBean
Invoked by the containingBeanFactory
on destruction of a bean.- Specified by:
destroy
in interfaceDisposableBean
- Throws:
IOException
-
close
- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceClientHttpRequestFactory
- Specified by:
close
in interfaceCloseable
- Throws:
IOException
-