[
https://issues.apache.org/jira/browse/HTTPCLIENT-2349?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Oleg Kalnichevski resolved HTTPCLIENT-2349.
-------------------------------------------
Resolution: Information Provided
> [Question] How do I set connect timeout per request with the async client?
> --------------------------------------------------------------------------
>
> Key: HTTPCLIENT-2349
> URL: https://issues.apache.org/jira/browse/HTTPCLIENT-2349
> Project: HttpComponents HttpClient
> Issue Type: Wish
> Components: HttpClient (async)
> Affects Versions: 5.4
> Reporter: Siqi Li
> Priority: Trivial
>
> So the library allows me to set the default connection request timeout,
> request timeout, and connect timeout on the client level. But since the
> setConnectTimeout method in RequestConfig.Builder is deprecated, I have not
> found a way of setting the connect timeout per request. Is there a way of
> doing it? Or am I stuck with setting the connect timeout on the client level?
> Here's a code example to demonstrate what I mean.
> {code:java}
> public static void main(String[] args) throws Exception {
> try (CloseableHttpAsyncClient httpAsyncClient = HttpAsyncClients.custom()
> .setDefaultRequestConfig(RequestConfig.custom()
> .setConnectionRequestTimeout(1, TimeUnit.MINUTES)
> .setResponseTimeout(1, TimeUnit.MINUTES)
> // This is deprecated, but I can set it with setConnectionManager
> below
> //.setConnectTimeout(1, TimeUnit.MINUTES)
> .build())
>
> .setConnectionManager(PoolingAsyncClientConnectionManagerBuilder.create()
> .setDefaultConnectionConfig(ConnectionConfig.custom()
> // I guess this is the preferred way of setting the connect
> timeout on the client level
> .setConnectTimeout(1, TimeUnit.MINUTES)
> .setSocketTimeout(1, TimeUnit.MINUTES)
> .build())
> .build())
> .build()) {
> SimpleRequestBuilder.get("https://example.com")
> .setRequestConfig(RequestConfig.custom()
> .setConnectionRequestTimeout(5, TimeUnit.SECONDS)
> .setResponseTimeout(5, TimeUnit.SECONDS)
> // This is deprecated. What's the replacement if I want to set
> the connect timeout per request?
> .setConnectTimeout(5, TimeUnit.SECONDS)
> .build())
> .build();
> }
> }{code}
> Thanks!
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]