Class SimpleClientHttpRequestFactory
- All Implemented Interfaces:
- ClientHttpRequestFactory
ClientHttpRequestFactory implementation that uses standard JDK facilities.- Since:
- 3.0
- Author:
- Arjen Poutsma, Juergen Hoeller
- See Also:
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptioncreateRequest(URI uri, HttpMethod httpMethod) Create a newClientHttpRequestfor the specified URI and HTTP method.protected HttpURLConnectionopenConnection(URL url, Proxy proxy) Opens and returns a connection to the given URL.protected voidprepareConnection(HttpURLConnection connection, String httpMethod) Template method for preparing the givenHttpURLConnection.voidsetBufferRequestBody(boolean bufferRequestBody) Deprecated, for removal: This API element is subject to removal in a future version.voidsetChunkSize(int chunkSize) Set the number of bytes to write in each chunk when not buffering request bodies locally.voidsetConnectTimeout(int connectTimeout) Set the underlying URLConnection's connect timeout (in milliseconds).voidsetConnectTimeout(Duration connectTimeout) Set the underlying URLConnection's connect timeout asDuration.voidsetOutputStreaming(boolean outputStreaming) Deprecated, for removal: This API element is subject to removal in a future version.as of 6.1, this property is ignored with no direct replacement.voidSet theProxyto use for this request factory.voidsetReadTimeout(int readTimeout) Set the underlying URLConnection's read timeout (in milliseconds).voidsetReadTimeout(Duration readTimeout) Set the underlying URLConnection's read timeout (in milliseconds).
- 
Constructor Details- 
SimpleClientHttpRequestFactorypublic SimpleClientHttpRequestFactory()
 
- 
- 
Method Details- 
setProxySet theProxyto use for this request factory.
- 
setBufferRequestBody@Deprecated(since="6.1", forRemoval=true) public void setBufferRequestBody(boolean bufferRequestBody) Deprecated, for removal: This API element is subject to removal in a future version.since 6.1 requests are never buffered, as if this property isfalseIndicate whether this request factory should buffer the request body internally.Default is true. When sending large amounts of data via POST or PUT, it is recommended to change this property tofalse, so as not to run out of memory. This will result in aClientHttpRequestthat either streams directly to the underlyingHttpURLConnection(if theContent-Lengthis known in advance), or that will use "Chunked transfer encoding" (if theContent-Lengthis not known in advance).
- 
setChunkSizepublic void setChunkSize(int chunkSize) Set the number of bytes to write in each chunk when not buffering request bodies locally.Note that this parameter is only used when bufferRequestBodyis set tofalse, and theContent-Lengthis not known in advance.- See Also:
 
- 
setConnectTimeoutpublic void setConnectTimeout(int connectTimeout) Set the underlying URLConnection's connect timeout (in milliseconds). A timeout value of 0 specifies an infinite timeout.Default is the system's default timeout. - See Also:
 
- 
setConnectTimeoutSet the underlying URLConnection's connect timeout asDuration. A timeout value of 0 specifies an infinite timeout.Default is the system's default timeout. - Since:
- 6.1
- See Also:
 
- 
setReadTimeoutpublic void setReadTimeout(int readTimeout) Set the underlying URLConnection's read timeout (in milliseconds). A timeout value of 0 specifies an infinite timeout.Default is the system's default timeout. - See Also:
 
- 
setReadTimeoutSet the underlying URLConnection's read timeout (in milliseconds). A timeout value of 0 specifies an infinite timeout.Default is the system's default timeout. - Since:
- 6.1
- See Also:
 
- 
setOutputStreamingDeprecated, for removal: This API element is subject to removal in a future version.as of 6.1, this property is ignored with no direct replacement.Set if the underlying URLConnection can be set to 'output streaming' mode. Default istrue.When output streaming is enabled, authentication and redirection cannot be handled automatically. If output streaming is disabled, the HttpURLConnection.setFixedLengthStreamingMode(int)andHttpURLConnection.setChunkedStreamingMode(int)methods of the underlying connection will never be called.- Parameters:
- outputStreaming- if output streaming is enabled
 
- 
createRequestDescription copied from interface:ClientHttpRequestFactoryCreate a newClientHttpRequestfor the specified URI and HTTP method.The returned request can be written to, and then executed by calling ClientHttpRequest.execute().- Specified by:
- createRequestin interface- ClientHttpRequestFactory
- Parameters:
- uri- the URI to create a request for
- httpMethod- the HTTP method to execute
- Returns:
- the created request
- Throws:
- IOException- in case of I/O errors
 
- 
openConnectionOpens and returns a connection to the given URL.The default implementation uses the given proxy - if any - to open a connection. - Parameters:
- url- the URL to open a connection to
- proxy- the proxy to use, may be- null
- Returns:
- the opened connection
- Throws:
- IOException- in case of I/O errors
 
- 
prepareConnectionprotected void prepareConnection(HttpURLConnection connection, String httpMethod) throws IOException Template method for preparing the givenHttpURLConnection.The default implementation prepares the connection for input and output, and sets the HTTP method. - Parameters:
- connection- the connection to prepare
- httpMethod- the HTTP request method (- GET,- POST, etc.)
- Throws:
- IOException- in case of I/O errors
 
 
- 
false