From 6dccdf1726f2977dc7a5d02dd5d48c287440f4d2 Mon Sep 17 00:00:00 2001 From: Peter Svanberg Date: Wed, 4 Feb 2026 23:56:54 +0100 Subject: [PATCH] Set timeouts on the http client --- .../heritrix3wrapper/Heritrix3Wrapper.java | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/netarchivesuite/heritrix3wrapper/Heritrix3Wrapper.java b/src/main/java/org/netarchivesuite/heritrix3wrapper/Heritrix3Wrapper.java index d811980..0d3626f 100644 --- a/src/main/java/org/netarchivesuite/heritrix3wrapper/Heritrix3Wrapper.java +++ b/src/main/java/org/netarchivesuite/heritrix3wrapper/Heritrix3Wrapper.java @@ -39,6 +39,7 @@ import org.apache.http.client.ClientProtocolException; import org.apache.http.client.CredentialsProvider; import org.apache.http.client.HttpClient; +import org.apache.http.client.config.RequestConfig import org.apache.http.client.entity.UrlEncodedFormEntity; import org.apache.http.client.methods.HttpGet; import org.apache.http.client.methods.HttpHead; @@ -138,7 +139,7 @@ public X509Certificate[] getAcceptedIssuers() { CredentialsProvider credsProvider = new BasicCredentialsProvider(); credsProvider.setCredentials(new AuthScope(hostname, port), new UsernamePasswordCredentials(userName, password)); - + HttpClientBuilder httpClientBuilder = HttpClientBuilder.create(); //httpClientBuilder.setSSLSocketFactory(sslSocketFactory).setHostnameVerifier(hostnameVerifier); httpClientBuilder.setSslcontext(sslcontext); @@ -155,7 +156,12 @@ public X509Certificate[] getAcceptedIssuers() { }); h3.hostname = hostname; h3.port = port; - h3.httpClient = httpClientBuilder.setDefaultCredentialsProvider(credsProvider).build(); + RequestConfig requestConfig = RequestConfig.custom() + .setConnectTimeout(10_000) + .setConnectionRequestTimeout(10_000) + .setSocketTimeout(20_000) + .build(); + h3.httpClient = httpClientBuilder.setDefaultCredentialsProvider(credsProvider).setDefaultRequestConfig(requestConfig).build(); //h3.httpClient.getConnectionManager().getSchemeRegistry().register(sch); h3.baseUrl = "https://" + hostname + ":" + Integer.toString(port) + "/engine/"; } catch (FileNotFoundException e) {