PoolingHttpClientConnectionManager connectionManager = new PoolingHttpClientConnectionManager();
connectionManager.setDefaultMaxPerRoute(20);
connectionManager.setMaxTotal(100);
CloseableHttpClient httpClient = HttpClients.custom().setConnectionManager(connectionManager).build();
KualiHttpClient httpClient = KualiHttpClientBuilder.create().setContentEncoding(ContentEncoding.GZIP).build();
RequestConfig requestConfig = RequestConfig.custom()
.setConnectTimeout(5000)
.setConnectionRequestTimeout(5000)
.setSocketTimeout(5000)
.build();
HttpGet httpGet = new HttpGet("https://example.com");
httpGet.setConfig(requestConfig);
KualiHttpClient asyncKHC = KualiHttpClientBuilder.create()
.setRequestExecutorService(Executors.newCachedThreadPool())
.build();
HttpGet httpGet = new HttpGet("https://example.com");
Future<HttpResponse> future = asyncKHC.executeAsync(httpGet, new FutureCallback<HttpResponse>() {
public void completed(final HttpResponse response) {
}
public void failed(final Exception ex) {
}
public void cancelled() {
}
});
KualiHttpClient httpClient = KualiHttpClientBuilder.create()
.setConnectionKeepAliveStrategy(DefaultConnectionKeepAliveStrategy.INSTANCE)
.setRetryHandler(new DefaultHttpRequestRetryHandler(3, false))
.setKeepAliveStrategy(new DefaultConnectionKeepAliveStrategy())
.setProxy(proxy)
.setUserAgent("Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3")
.build();