Here are the examples of the java api class org.apache.http.client.config.RequestConfig taken from open source projects.
1. HttpYarClient#httpPost()
Project: yar-java
File: HttpYarClient.java
File: HttpYarClient.java
@Override protected byte[] httpPost(String url, Map<String, String> headers, byte[] content) { RequestConfig requestConfig = RequestConfig.custom().setSocketTimeout(soTimeout).setConnectTimeout(connectTimeout).build(); HttpPost httpPost = new HttpPost(url); httpPost.setConfig(requestConfig); httpPost.setEntity(new ByteArrayEntity(content, ContentType.APPLICATION_FORM_URLENCODED)); try { HttpResponse response = httpClient.execute(httpPost); int status = response.getStatusLine().getStatusCode(); if (status >= 200 && status < 300) { HttpEntity entity = response.getEntity(); return entity != null ? EntityUtils.toByteArray(entity) : null; } else { log.error("Unexpected response status: " + status); return null; } } catch (Exception e) { log.error("httpclient execute fail.", e); return null; } }
2. DefaultRestDriver#createHttpClientBuilder()
Project: wasabi
File: DefaultRestDriver.java
File: DefaultRestDriver.java
private HttpClientBuilder createHttpClientBuilder(final Driver.Configuration configuration) { PoolingHttpClientConnectionManager poolingHttpClientConnectionManager = new PoolingHttpClientConnectionManager(); poolingHttpClientConnectionManager.setMaxTotal(200); poolingHttpClientConnectionManager.setDefaultMaxPerRoute(50); RequestConfig requestConfig = RequestConfig.custom().setConnectTimeout(configuration.getConnectionTimeout()).setSocketTimeout(configuration.getSocketTimeout()).build(); return HttpClients.custom().setConnectionManager(poolingHttpClientConnectionManager).setDefaultRequestConfig(requestConfig); }
3. RibbonLoadBalancingHttpClientTests#testRequestConfigFollowRedirectsOverrideWithDoNotFollowRedirects()
Project: spring-cloud-netflix
File: RibbonLoadBalancingHttpClientTests.java
File: RibbonLoadBalancingHttpClientTests.java
@Test public void testRequestConfigFollowRedirectsOverrideWithDoNotFollowRedirects() throws Exception { DefaultClientConfigImpl override = new DefaultClientConfigImpl(); override.set(CommonClientConfigKey.FollowRedirects, false); override.set(CommonClientConfigKey.IsSecure, false); RequestConfig result = getBuiltRequestConfig(FollowRedirects.class, override); assertThat(result.isRedirectsEnabled(), is(false)); }
4. RibbonLoadBalancingHttpClientTests#testRequestConfigDoNotFollowRedirectsOverrideWithFollowRedirects()
Project: spring-cloud-netflix
File: RibbonLoadBalancingHttpClientTests.java
File: RibbonLoadBalancingHttpClientTests.java
@Test public void testRequestConfigDoNotFollowRedirectsOverrideWithFollowRedirects() throws Exception { DefaultClientConfigImpl override = new DefaultClientConfigImpl(); override.set(CommonClientConfigKey.FollowRedirects, true); override.set(CommonClientConfigKey.IsSecure, false); RequestConfig result = getBuiltRequestConfig(DoNotFollowRedirects.class, override); assertThat(result.isRedirectsEnabled(), is(true)); }
5. LegacyMmsConnection#constructHttpClient()
Project: Silence
File: LegacyMmsConnection.java
File: LegacyMmsConnection.java
protected CloseableHttpClient constructHttpClient() throws IOException { RequestConfig config = RequestConfig.custom().setConnectTimeout(20 * 1000).setConnectionRequestTimeout(20 * 1000).setSocketTimeout(20 * 1000).setMaxRedirects(20).build(); URL mmsc = new URL(apn.getMmsc()); CredentialsProvider credsProvider = new BasicCredentialsProvider(); if (apn.hasAuthentication()) { credsProvider.setCredentials(new AuthScope(mmsc.getHost(), mmsc.getPort() > -1 ? mmsc.getPort() : mmsc.getDefaultPort()), new UsernamePasswordCredentials(apn.getUsername(), apn.getPassword())); } return HttpClients.custom().setConnectionReuseStrategy(new NoConnectionReuseStrategyHC4()).setRedirectStrategy(new LaxRedirectStrategy()).setUserAgent(SilencePreferences.getMmsUserAgent(context, USER_AGENT)).setConnectionManager(new BasicHttpClientConnectionManager()).setDefaultRequestConfig(config).setDefaultCredentialsProvider(credsProvider).build(); }
6. ApacheHttpClient43Engine#getCurrentConfiguration()
Project: Resteasy
File: ApacheHttpClient43Engine.java
File: ApacheHttpClient43Engine.java
private RequestConfig getCurrentConfiguration(final HttpRequestBase httpMethod) { RequestConfig baseConfig; if (httpMethod != null && httpMethod.getConfig() != null) { baseConfig = httpMethod.getConfig(); } else { Configurable clientConfiguration = (Configurable) httpClient; baseConfig = clientConfiguration.getConfig(); } return baseConfig; }
7. IhcHttpsClient#sendQ()
Project: openhab
File: IhcHttpsClient.java
File: IhcHttpsClient.java
private String sendQ(String query, int timeout) throws ClientProtocolException, IOException, NoHttpResponseException { logger.trace("Send query (timeout={}): {}", timeout, query); postReq.setEntity(new StringEntity(query, "UTF-8")); postReq.addHeader("content-type", "text/xml"); final RequestConfig params = RequestConfig.custom().setConnectTimeout(connectTimeout).setSocketTimeout(timeout).build(); postReq.setConfig(params); // Execute POST HttpResponse response = client.execute(postReq, IhcConnectionPool.getInstance().getHttpContext()); String resp = EntityUtils.toString(response.getEntity()); logger.trace("Received response: {}", resp); return resp; }
8. AbstractProxyResponseHandler#prepareRemoteRequest()
Project: moco
File: AbstractProxyResponseHandler.java
File: AbstractProxyResponseHandler.java
private HttpRequestBase prepareRemoteRequest(final FullHttpRequest request, final URL url) { HttpRequestBase remoteRequest = createRemoteRequest(request, url); RequestConfig config = RequestConfig.custom().setRedirectsEnabled(false).build(); remoteRequest.setConfig(config); remoteRequest.setProtocolVersion(createVersion(request)); long contentLength = HttpUtil.getContentLength(request, -1); if (contentLength > 0 && remoteRequest instanceof HttpEntityEnclosingRequest) { HttpEntityEnclosingRequest entityRequest = (HttpEntityEnclosingRequest) remoteRequest; entityRequest.setEntity(createEntity(request.content(), contentLength)); } return remoteRequest; }
9. HttpClientUtil#setRequestConfig()
Project: fqms
File: HttpClientUtil.java
File: HttpClientUtil.java
private static RequestConfig setRequestConfig(String proxyIp, int proxyPort) { RequestConfig requestConfig = null; if (StringUtils.isNotBlank(proxyIp) && 0 != proxyPort) { HttpHost proxy = new HttpHost(proxyIp, proxyPort); //?????????? requestConfig = RequestConfig.custom().setConnectionRequestTimeout(10000).setConnectTimeout(20000).setSocketTimeout(30000).setProxy(proxy).setCookieSpec("mySpec").build(); } else { //?????????? requestConfig = RequestConfig.custom().setConnectionRequestTimeout(10000).setConnectTimeout(20000).setSocketTimeout(30000).setCookieSpec("mySpec").build(); } return requestConfig; }
10. ApacheConnector#getUriHttpRequest()
Project: docker-java
File: ApacheConnector.java
File: ApacheConnector.java
private HttpUriRequest getUriHttpRequest(final ClientRequest clientRequest) { final Boolean redirectsEnabled = clientRequest.resolveProperty(ClientProperties.FOLLOW_REDIRECTS, requestConfig.isRedirectsEnabled()); final RequestConfig config = RequestConfig.copy(requestConfig).setRedirectsEnabled(redirectsEnabled).build(); final Boolean bufferingEnabled = clientRequest.resolveProperty(ClientProperties.REQUEST_ENTITY_PROCESSING, RequestEntityProcessing.class) == RequestEntityProcessing.BUFFERED; final HttpEntity entity = getHttpEntity(clientRequest, bufferingEnabled); return RequestBuilder.create(clientRequest.getMethod()).setUri(clientRequest.getUri()).setConfig(config).setEntity(entity).build(); }
11. RestletRedirectTest#testRedirect()
Project: camel
File: RestletRedirectTest.java
File: RestletRedirectTest.java
@Test public void testRedirect() throws Exception { HttpGet get = new HttpGet("http://localhost:" + portNum + "/users/homer"); // do not follow redirects RequestConfig requestconfig = RequestConfig.custom().setRedirectsEnabled(false).build(); CloseableHttpClient client = HttpClientBuilder.create().setDefaultRequestConfig(requestconfig).build(); try { HttpResponse response = client.execute(get); for (Header header : response.getAllHeaders()) { log.info("Header {}", header); } assertEquals(302, response.getStatusLine().getStatusCode()); assertTrue("Should have location header", response.containsHeader("Location")); assertEquals("http://somewhere.com", response.getFirstHeader("Location").getValue()); assertEquals("bar", response.getFirstHeader("Foo").getValue()); } finally { client.close(); } }
12. DefaultTSDBService#getClient()
Project: Argus
File: DefaultTSDBService.java
File: DefaultTSDBService.java
/* Helper to create the read and write clients. */ private CloseableHttpClient getClient(String endpoint, int connCount, int connTimeout, int socketTimeout) throws MalformedURLException { URL url = new URL(endpoint); int port = url.getPort(); requireArgument(port != -1, "Read endpoint must include explicit port."); PoolingHttpClientConnectionManager connMgr = new PoolingHttpClientConnectionManager(); connMgr.setMaxTotal(connCount); connMgr.setDefaultMaxPerRoute(connCount); String route = endpoint.substring(0, endpoint.lastIndexOf(":")); HttpHost host = new HttpHost(route, port); RequestConfig reqConfig = RequestConfig.custom().setConnectionRequestTimeout(connTimeout).setConnectTimeout(connTimeout).setSocketTimeout(socketTimeout).build(); connMgr.setMaxPerRoute(new HttpRoute(host), connCount / 2); return HttpClients.custom().setConnectionManager(connMgr).setDefaultRequestConfig(reqConfig).build(); }
13. BasicHttpSolrClientTest#testCompression()
Project: lucene-solr
File: BasicHttpSolrClientTest.java
File: BasicHttpSolrClientTest.java
@Test public void testCompression() throws Exception { SolrQuery q = new SolrQuery("*:*"); final String clientUrl = jetty.getBaseUrl().toString() + "/debug/foo"; try (HttpSolrClient client = getHttpSolrClient(clientUrl)) { // verify request header gets set DebugServlet.clear(); try { client.query(q); } catch (ParseException ignored) { } assertNull(DebugServlet.headers.toString(), DebugServlet.headers.get("Accept-Encoding")); } try (HttpSolrClient client = getHttpSolrClient(clientUrl, null, null, true)) { try { client.query(q); } catch (ParseException ignored) { } assertNotNull(DebugServlet.headers.get("Accept-Encoding")); } try (HttpSolrClient client = getHttpSolrClient(clientUrl, null, null, false)) { try { client.query(q); } catch (ParseException ignored) { } } assertNull(DebugServlet.headers.get("Accept-Encoding")); // verify server compresses output HttpGet get = new HttpGet(jetty.getBaseUrl().toString() + "/collection1" + "/select?q=foo&wt=xml"); get.setHeader("Accept-Encoding", "gzip"); ModifiableSolrParams params = new ModifiableSolrParams(); params.set(HttpClientUtil.PROP_ALLOW_COMPRESSION, true); RequestConfig config = RequestConfig.custom().setDecompressionEnabled(false).build(); get.setConfig(config); CloseableHttpClient httpclient = HttpClientUtil.createClient(params); HttpEntity entity = null; try { HttpResponse response = httpclient.execute(get, HttpClientUtil.createNewHttpClientRequestContext()); entity = response.getEntity(); Header ceheader = entity.getContentEncoding(); assertNotNull(Arrays.asList(response.getAllHeaders()).toString(), ceheader); assertEquals("gzip", ceheader.getValue()); } finally { if (entity != null) { entity.getContent().close(); } HttpClientUtil.close(httpclient); } // verify compressed response can be handled try (HttpSolrClient client = getHttpSolrClient(jetty.getBaseUrl().toString() + "/collection1")) { q = new SolrQuery("foo"); QueryResponse response = client.query(q); assertEquals(0, response.getStatus()); } }
14. HttpClientUtil#setupBuilder()
Project: lucene-solr
File: HttpClientUtil.java
File: HttpClientUtil.java
private static HttpClientBuilder setupBuilder(HttpClientBuilder builder, SolrParams config) { Builder requestConfigBuilder = RequestConfig.custom().setRedirectsEnabled(config.getBool(HttpClientUtil.PROP_FOLLOW_REDIRECTS, false)).setDecompressionEnabled(false).setConnectTimeout(config.getInt(HttpClientUtil.PROP_CONNECTION_TIMEOUT, DEFAULT_CONNECT_TIMEOUT)).setSocketTimeout(config.getInt(HttpClientUtil.PROP_SO_TIMEOUT, DEFAULT_SO_TIMEOUT)); String cpolicy = cookiePolicy; if (cpolicy != null) { requestConfigBuilder.setCookieSpec(cpolicy); } RequestConfig requestConfig = requestConfigBuilder.build(); HttpClientBuilder retBuilder = builder.setDefaultRequestConfig(requestConfig); if (config.getBool(HttpClientUtil.PROP_USE_RETRY, true)) { retBuilder = retBuilder.setRetryHandler(new SolrHttpRequestRetryHandler(3)); } else { retBuilder = retBuilder.setRetryHandler(NO_RETRY); } final String basicAuthUser = config.get(HttpClientUtil.PROP_BASIC_AUTH_USER); final String basicAuthPass = config.get(HttpClientUtil.PROP_BASIC_AUTH_PASS); if (basicAuthUser != null && basicAuthPass != null) { CredentialsProvider credsProvider = new BasicCredentialsProvider(); credsProvider.setCredentials(AuthScope.ANY, new UsernamePasswordCredentials(basicAuthUser, basicAuthPass)); retBuilder.setDefaultCredentialsProvider(credsProvider); } if (config.getBool(HttpClientUtil.PROP_ALLOW_COMPRESSION, false)) { retBuilder.addInterceptorFirst(new UseCompressionRequestInterceptor()); retBuilder.addInterceptorFirst(new UseCompressionResponseInterceptor()); } else { retBuilder.disableContentCompression(); } return retBuilder; }
15. Options#refresh()
Project: unirest-java
File: Options.java
File: Options.java
public static void refresh() { // Load timeouts Object connectionTimeout = Options.getOption(Option.CONNECTION_TIMEOUT); if (connectionTimeout == null) connectionTimeout = CONNECTION_TIMEOUT; Object socketTimeout = Options.getOption(Option.SOCKET_TIMEOUT); if (socketTimeout == null) socketTimeout = SOCKET_TIMEOUT; // Load limits Object maxTotal = Options.getOption(Option.MAX_TOTAL); if (maxTotal == null) maxTotal = MAX_TOTAL; Object maxPerRoute = Options.getOption(Option.MAX_PER_ROUTE); if (maxPerRoute == null) maxPerRoute = MAX_PER_ROUTE; // Load proxy if set HttpHost proxy = (HttpHost) Options.getOption(Option.PROXY); // Create common default configuration RequestConfig clientConfig = RequestConfig.custom().setConnectTimeout(((Long) connectionTimeout).intValue()).setSocketTimeout(((Long) socketTimeout).intValue()).setConnectionRequestTimeout(((Long) socketTimeout).intValue()).setProxy(proxy).build(); PoolingHttpClientConnectionManager syncConnectionManager = new PoolingHttpClientConnectionManager(); syncConnectionManager.setMaxTotal((Integer) maxTotal); syncConnectionManager.setDefaultMaxPerRoute((Integer) maxPerRoute); // Create clients setOption(Option.HTTPCLIENT, HttpClientBuilder.create().setDefaultRequestConfig(clientConfig).setConnectionManager(syncConnectionManager).build()); SyncIdleConnectionMonitorThread syncIdleConnectionMonitorThread = new SyncIdleConnectionMonitorThread(syncConnectionManager); setOption(Option.SYNC_MONITOR, syncIdleConnectionMonitorThread); syncIdleConnectionMonitorThread.start(); DefaultConnectingIOReactor ioreactor; PoolingNHttpClientConnectionManager asyncConnectionManager; try { ioreactor = new DefaultConnectingIOReactor(); asyncConnectionManager = new PoolingNHttpClientConnectionManager(ioreactor); asyncConnectionManager.setMaxTotal((Integer) maxTotal); asyncConnectionManager.setDefaultMaxPerRoute((Integer) maxPerRoute); } catch (IOReactorException e) { throw new RuntimeException(e); } CloseableHttpAsyncClient asyncClient = HttpAsyncClientBuilder.create().setDefaultRequestConfig(clientConfig).setConnectionManager(asyncConnectionManager).build(); setOption(Option.ASYNCHTTPCLIENT, asyncClient); setOption(Option.ASYNC_MONITOR, new AsyncIdleConnectionMonitorThread(asyncConnectionManager)); }
16. RibbonLoadBalancingHttpClientTests#testRequestConfigFollowRedirectsNoOverride()
Project: spring-cloud-netflix
File: RibbonLoadBalancingHttpClientTests.java
File: RibbonLoadBalancingHttpClientTests.java
@Test public void testRequestConfigFollowRedirectsNoOverride() throws Exception { RequestConfig result = getBuiltRequestConfig(FollowRedirects.class, null); assertThat(result.isRedirectsEnabled(), is(true)); }
17. RibbonLoadBalancingHttpClientTests#testRequestConfigDoNotFollowRedirectsNoOverride()
Project: spring-cloud-netflix
File: RibbonLoadBalancingHttpClientTests.java
File: RibbonLoadBalancingHttpClientTests.java
@Test public void testRequestConfigDoNotFollowRedirectsNoOverride() throws Exception { RequestConfig result = getBuiltRequestConfig(DoNotFollowRedirects.class, null); assertThat(result.isRedirectsEnabled(), is(false)); }
18. RibbonLoadBalancingHttpClientTests#testRequestConfigUseDefaultsNoOverride()
Project: spring-cloud-netflix
File: RibbonLoadBalancingHttpClientTests.java
File: RibbonLoadBalancingHttpClientTests.java
@Test public void testRequestConfigUseDefaultsNoOverride() throws Exception { RequestConfig result = getBuiltRequestConfig(UseDefaults.class, null); assertThat(result.isRedirectsEnabled(), is(false)); }
19. SimpleHostRoutingFilter#newClient()
Project: spring-cloud-netflix
File: SimpleHostRoutingFilter.java
File: SimpleHostRoutingFilter.java
protected CloseableHttpClient newClient() { final RequestConfig requestConfig = RequestConfig.custom().setSocketTimeout(SOCKET_TIMEOUT.get()).setConnectTimeout(CONNECTION_TIMEOUT.get()).setCookieSpec(CookieSpecs.IGNORE_COOKIES).build(); HttpClientBuilder httpClientBuilder = HttpClients.custom(); if (!sslHostnameValidationEnabled) { httpClientBuilder.setSSLHostnameVerifier(NoopHostnameVerifier.INSTANCE); } return httpClientBuilder.setConnectionManager(newConnectionManager()).setDefaultRequestConfig(requestConfig).setRetryHandler(new DefaultHttpRequestRetryHandler(0, false)).setRedirectStrategy(new RedirectStrategy() { @Override public boolean isRedirected(HttpRequest request, HttpResponse response, HttpContext context) throws ProtocolException { return false; } @Override public HttpUriRequest getRedirect(HttpRequest request, HttpResponse response, HttpContext context) throws ProtocolException { return null; } }).build(); }
20. RibbonLoadBalancingHttpClient#execute()
Project: spring-cloud-netflix
File: RibbonLoadBalancingHttpClient.java
File: RibbonLoadBalancingHttpClient.java
@Override public RibbonApacheHttpResponse execute(RibbonApacheHttpRequest request, final IClientConfig configOverride) throws Exception { final RequestConfig.Builder builder = RequestConfig.custom(); if (configOverride != null) { builder.setConnectTimeout(configOverride.get(CommonClientConfigKey.ConnectTimeout, this.connectTimeout)); builder.setConnectionRequestTimeout(configOverride.get(CommonClientConfigKey.ReadTimeout, this.readTimeout)); builder.setRedirectsEnabled(configOverride.get(CommonClientConfigKey.FollowRedirects, this.followRedirects)); } else { builder.setConnectTimeout(this.connectTimeout); builder.setConnectionRequestTimeout(this.readTimeout); builder.setRedirectsEnabled(this.followRedirects); } final RequestConfig requestConfig = builder.build(); if (isSecure(configOverride)) { final URI secureUri = UriComponentsBuilder.fromUri(request.getUri()).scheme("https").build().toUri(); request = request.withNewUri(secureUri); } final HttpUriRequest httpUriRequest = request.toRequest(requestConfig); final HttpResponse httpResponse = this.delegate.execute(httpUriRequest); return new RibbonApacheHttpResponse(httpResponse, httpUriRequest.getURI()); }
21. TestRestTemplateTests#options()
Project: spring-boot
File: TestRestTemplateTests.java
File: TestRestTemplateTests.java
@Test public void options() throws Exception { TestRestTemplate template = new TestRestTemplate(HttpClientOption.ENABLE_REDIRECTS); CustomHttpComponentsClientHttpRequestFactory factory = (CustomHttpComponentsClientHttpRequestFactory) template.getRestTemplate().getRequestFactory(); RequestConfig config = factory.getRequestConfig(); assertThat(config.isRedirectsEnabled()).isTrue(); }
22. HttpClientFactory#cliBuilder()
Project: SeimiCrawler
File: HttpClientFactory.java
File: HttpClientFactory.java
public static HttpClientBuilder cliBuilder(int timeout) { HttpRequestRetryHandler retryHander = new HttpRequestRetryHandler() { @Override public boolean retryRequest(IOException exception, int executionCount, HttpContext context) { if (executionCount > 3) { // Do not retry if over max retry count return false; } if (exception instanceof java.net.SocketTimeoutException) { //???? return true; } if (exception instanceof InterruptedIOException) { // Timeout return true; } if (exception instanceof UnknownHostException) { // Unknown host return false; } if (exception instanceof SSLException) { // SSL handshake exception return false; } HttpClientContext clientContext = HttpClientContext.adapt(context); HttpRequest request = clientContext.getRequest(); boolean idempotent = !(request instanceof HttpEntityEnclosingRequest); if (idempotent) { // Retry if the request is considered idempotent return true; } return false; } }; RedirectStrategy redirectStrategy = new SeimiRedirectStrategy(); RequestConfig requestConfig = RequestConfig.custom().setConnectTimeout(timeout).setSocketTimeout(timeout).build(); PoolingHttpClientConnectionManager poolingHttpClientConnectionManager = HttpClientConnectionManagerProvider.getHcPoolInstance(); return HttpClients.custom().setDefaultRequestConfig(requestConfig).setConnectionManager(poolingHttpClientConnectionManager).setRedirectStrategy(redirectStrategy).setRetryHandler(retryHander); }
23. StdRemoteLiveWebCache#getCachedResource()
Project: openwayback
File: StdRemoteLiveWebCache.java
File: StdRemoteLiveWebCache.java
/** * Gets resource object from the live web. Configure timeout to 10 seconds. * * @param url to fetch from the live web. * @param maxCacheMS maximum age of resource to return - optionally honored * @param bUseOlder if true, return documents older than maxCacheMS if * a more recent copy is not available. * * @return Resource for url * * @throws LiveDocumentNotAvailableException if the resource cannot be * retrieved from the live web, but all proxying and caching * mechanisms functioned properly * @throws LiveWebCacheUnavailableException if there was a problem either * accessing the live web, in proxying to the live web, or in * maintaining the cache for the live web * @throws LiveWebTimeoutException if there is no response from the live * web cache before a timeout occurred. * @throws IOException for the usual reasons * * @see org.archive.wayback.liveweb.LiveWebCache#getCachedResource(java.net.URL, long, boolean) * @inheritDoc org.archive.wayback.liveweb.LiveWebCache#getCachedResource */ @Override public Resource getCachedResource(URL url, long maxCacheMS, boolean bUseOlder) throws LiveDocumentNotAvailableException, LiveWebCacheUnavailableException, LiveWebTimeoutException, IOException { String urlStr = url.toExternalForm(); if (requestPrefix != null) urlStr = requestPrefix + urlStr; HttpHost proxy = new HttpHost(hostConfiguration.getProxyHost(), hostConfiguration.getProxyPort()); // Set socketTimeout and connectionTimeout to 10 seconds. RequestConfig reqConf = RequestConfig.custom().setProxy(proxy).setSocketTimeout(10000).setConnectTimeout(10000).setConnectionRequestTimeout(10000).build(); CloseableHttpClient httpclient = HttpClients.custom().setDefaultRequestConfig(reqConf).build(); HttpGet httpGet = new HttpGet(urlStr); try { // The following line gets robots.txt from live web response = httpclient.execute(httpGet); String httpHeaderStr = ""; String bodyStr = ""; /* If it fails to get robots.txt (http status code is 404), then display contents and don't throw exception (socketTimeOutException or connectTimeOutException) */ if (response.getStatusLine().getStatusCode() == 404) { httpHeaderStr = "HTTP/1.0 200 OK\n"; bodyStr = String.format("%s\n%s\n", "User-agent: *", "Allow: /"); } else if (response.getStatusLine().getStatusCode() == 200) { // The following line represents first line in http header httpHeaderStr = String.format("%s %d %s\n", response.getStatusLine().getProtocolVersion(), response.getStatusLine().getStatusCode(), response.getStatusLine().getReasonPhrase()); // Get robots.txt contents and store it into bodyStr HttpEntity entity = response.getEntity(); bodyStr = EntityUtils.toString(entity); } // Get Http Header and store complete http header in httpHeaderStr for (Header header : response.getAllHeaders()) httpHeaderStr += header.toString() + "\n"; httpHeaderStr += "\n"; int length = httpHeaderStr.length() + bodyStr.length(); /* Using httpHeaderStr and bodyStr to construct responseStr. First line in responseStr should exist. */ // TODO: the following line should be enhanced, // especially the first line in responseStr. String responseStr = String.format("%s %s %d\n%s%s", urlStr, "0.0.0.0 10000000000000 text/plain", length, httpHeaderStr, bodyStr); ByteArrayInputStream bais = new ByteArrayInputStream(responseStr.getBytes()); // TODO: Should not use ARCRecord ARCRecord r = new ARCRecord(bais, "id", 0L, false, false, true); ar = (ArcResource) ResourceFactory.ARCArchiveRecordToResource(r, null); if (ar.getStatusCode() == 502) { throw new LiveDocumentNotAvailableException(urlStr); } else if (ar.getStatusCode() == 504) { throw new LiveWebTimeoutException("Timeout:" + urlStr); } return ar; } catch (ResourceNotAvailableException e) { throw new LiveDocumentNotAvailableException(urlStr); } catch (NoHttpResponseException e) { throw new LiveWebCacheUnavailableException("No Http Response for " + urlStr); } catch (ConnectException e) { throw new LiveWebCacheUnavailableException(e.getLocalizedMessage() + " : " + urlStr); } catch (SocketException e) { throw new LiveWebCacheUnavailableException(e.getLocalizedMessage() + " : " + urlStr); } catch (SocketTimeoutException e) { throw new LiveWebTimeoutException(e.getLocalizedMessage() + " : " + urlStr); } catch (ConnectTimeoutException e) { throw new LiveWebTimeoutException(e.getLocalizedMessage() + " : " + urlStr); } finally { response.close(); } }
24. Tr064Comm#createTr064HttpClient()
Project: openhab
File: Tr064Comm.java
File: Tr064Comm.java
/*** * Creates a apache HTTP Client object, ignoring SSL Exceptions like self signed certificates * and sets Auth. Scheme to Digest Auth * * @param fboxUrl the URL from config file of fbox to connect to * @return the ready-to-use httpclient for tr064 requests */ private CloseableHttpClient createTr064HttpClient(String fboxUrl) { CloseableHttpClient hc = null; // Convert URL String from config in easy explotable URI object URIBuilder uriFbox = null; try { uriFbox = new URIBuilder(fboxUrl); } catch (URISyntaxException e) { logger.error("Invalid FritzBox URL! {}", e.getMessage()); return null; } // Create context of the http client _httpClientContext = HttpClientContext.create(); CookieStore cookieStore = new BasicCookieStore(); _httpClientContext.setCookieStore(cookieStore); // SETUP AUTH // Auth is specific for this target HttpHost target = new HttpHost(uriFbox.getHost(), uriFbox.getPort(), uriFbox.getScheme()); // Add digest authentication with username/pw from global config CredentialsProvider credp = new BasicCredentialsProvider(); credp.setCredentials(new AuthScope(target.getHostName(), target.getPort()), new UsernamePasswordCredentials(_user, _pw)); // Create AuthCache instance. Manages authentication based on server response AuthCache authCache = new BasicAuthCache(); // Generate DIGEST scheme object, initialize it and add it to the local auth cache. Digeste is standard for fbox // auth SOAP DigestScheme digestAuth = new DigestScheme(); // known from fbox specification digestAuth.overrideParamter("realm", "HTTPS Access"); // never known at first request digestAuth.overrideParamter("nonce", ""); authCache.put(target, digestAuth); // Add AuthCache to the execution context _httpClientContext.setAuthCache(authCache); // SETUP SSL TRUST SSLContextBuilder sslContextBuilder = new SSLContextBuilder(); SSLConnectionSocketFactory sslsf = null; try { // accept self signed certs sslContextBuilder.loadTrustMaterial(null, new TrustSelfSignedStrategy()); // dont sslsf = new SSLConnectionSocketFactory(sslContextBuilder.build(), null, null, new NoopHostnameVerifier()); // verify // hostname // against // cert // CN } catch (Exception ex) { logger.error(ex.getMessage()); } // Set timeout values RequestConfig rc = RequestConfig.copy(RequestConfig.DEFAULT).setSocketTimeout(4000).setConnectTimeout(4000).setConnectionRequestTimeout(4000).build(); // BUILDER // setup builder with parameters defined before hc = // set the SSL options which trust every self signed HttpClientBuilder.create().setSSLSocketFactory(sslsf).setDefaultCredentialsProvider(// cert credp).setDefaultRequestConfig(// set auth options using digest rc).build(); return hc; }
25. EtcdClient#buildDefaultHttpClient()
Project: jetcd
File: EtcdClient.java
File: EtcdClient.java
static CloseableHttpAsyncClient buildDefaultHttpClient() { // TODO: Increase timeout?? RequestConfig requestConfig = RequestConfig.custom().build(); CloseableHttpAsyncClient httpClient = HttpAsyncClients.custom().setDefaultRequestConfig(requestConfig).build(); httpClient.start(); return httpClient; }
26. JestClientFactoryTest#clientCreationWithTimeout()
Project: Jest
File: JestClientFactoryTest.java
File: JestClientFactoryTest.java
@Test public void clientCreationWithTimeout() { JestClientFactory factory = new JestClientFactory(); HttpClientConfig httpClientConfig = new HttpClientConfig.Builder("someUri").connTimeout(150).readTimeout(300).build(); factory.setHttpClientConfig(httpClientConfig); final RequestConfig defaultRequestConfig = factory.getRequestConfig(); assertNotNull(defaultRequestConfig); assertEquals(150, defaultRequestConfig.getConnectTimeout()); assertEquals(300, defaultRequestConfig.getSocketTimeout()); }
27. EduAdaptiveStepicConnector#setTimeout()
Project: intellij-community
File: EduAdaptiveStepicConnector.java
File: EduAdaptiveStepicConnector.java
private static void setTimeout(HttpPost request) { final RequestConfig requestConfig = RequestConfig.custom().setConnectionRequestTimeout(CONNECTION_TIMEOUT).setConnectTimeout(CONNECTION_TIMEOUT).setSocketTimeout(CONNECTION_TIMEOUT).build(); request.setConfig(requestConfig); }
28. EduAdaptiveStepicConnector#setTimeout()
Project: intellij-community
File: EduAdaptiveStepicConnector.java
File: EduAdaptiveStepicConnector.java
private static void setTimeout(HttpGet request) { final RequestConfig requestConfig = RequestConfig.custom().setConnectionRequestTimeout(CONNECTION_TIMEOUT).setConnectTimeout(CONNECTION_TIMEOUT).setSocketTimeout(CONNECTION_TIMEOUT).build(); request.setConfig(requestConfig); }
29. HttpUtil#getRequestConfig()
Project: fqms
File: HttpUtil.java
File: HttpUtil.java
/** * ??requestConfig * * @param i * @return */ private static RequestConfig getRequestConfig(int i) { RequestConfig requestConfig = RequestConfig.custom().setSocketTimeout(i).setConnectTimeout(i).setConnectionRequestTimeout(i).setStaleConnectionCheckEnabled(true).build(); return requestConfig; }
30. ApacheHttpClient#toHttpUriRequest()
Project: feign
File: ApacheHttpClient.java
File: ApacheHttpClient.java
HttpUriRequest toHttpUriRequest(Request request, Request.Options options) throws UnsupportedEncodingException, MalformedURLException, URISyntaxException { RequestBuilder requestBuilder = RequestBuilder.create(request.method()); //per request timeouts RequestConfig requestConfig = RequestConfig.custom().setConnectTimeout(options.connectTimeoutMillis()).setSocketTimeout(options.readTimeoutMillis()).build(); requestBuilder.setConfig(requestConfig); URI uri = new URIBuilder(request.url()).build(); requestBuilder.setUri(uri.getScheme() + "://" + uri.getAuthority() + uri.getRawPath()); //request query params List<NameValuePair> queryParams = URLEncodedUtils.parse(uri, requestBuilder.getCharset().name()); for (NameValuePair queryParam : queryParams) { requestBuilder.addParameter(queryParam); } //request headers boolean hasAcceptHeader = false; for (Map.Entry<String, Collection<String>> headerEntry : request.headers().entrySet()) { String headerName = headerEntry.getKey(); if (headerName.equalsIgnoreCase(ACCEPT_HEADER_NAME)) { hasAcceptHeader = true; } if (headerName.equalsIgnoreCase(Util.CONTENT_LENGTH)) { // doesn't like us to set it as well. continue; } for (String headerValue : headerEntry.getValue()) { requestBuilder.addHeader(headerName, headerValue); } } //some servers choke on the default accept string, so we'll set it to anything if (!hasAcceptHeader) { requestBuilder.addHeader(ACCEPT_HEADER_NAME, "*/*"); } //request body if (request.body() != null) { HttpEntity entity = null; if (request.charset() != null) { ContentType contentType = getContentType(request); String content = new String(request.body(), request.charset()); entity = new StringEntity(content, contentType); } else { entity = new ByteArrayEntity(request.body()); } requestBuilder.setEntity(entity); } return requestBuilder.build(); }
31. Monitor#run()
Project: elasticsearch-analysis-ik
File: Monitor.java
File: Monitor.java
/** * ????? * ?????????Head?? * ???????Last-Modify?ETags?????????? * ?????????1min?????? * ????????????? * ???1min?????? */ public void run() { //???? RequestConfig rc = RequestConfig.custom().setConnectionRequestTimeout(10 * 1000).setConnectTimeout(10 * 1000).setSocketTimeout(15 * 1000).build(); HttpHead head = new HttpHead(location); head.setConfig(rc); //????? if (last_modified != null) { head.setHeader("If-Modified-Since", last_modified); } if (eTags != null) { head.setHeader("If-None-Match", eTags); } CloseableHttpResponse response = null; try { response = httpclient.execute(head); //??200 ???? if (response.getStatusLine().getStatusCode() == 200) { if (((response.getLastHeader("Last-Modified") != null) && !response.getLastHeader("Last-Modified").getValue().equalsIgnoreCase(last_modified)) || ((response.getLastHeader("ETag") != null) && !response.getLastHeader("ETag").getValue().equalsIgnoreCase(eTags))) { // ???????,????????????last_modified,eTags Dictionary.getSingleton().reLoadMainDict(); last_modified = response.getLastHeader("Last-Modified") == null ? null : response.getLastHeader("Last-Modified").getValue(); eTags = response.getLastHeader("ETag") == null ? null : response.getLastHeader("ETag").getValue(); } } else if (response.getStatusLine().getStatusCode() == 304) { //????????? //noop } else { Dictionary.logger.info("remote_ext_dict {} return bad code {}", location, response.getStatusLine().getStatusCode()); } } catch (Exception e) { Dictionary.logger.error("remote_ext_dict {} error!", e, location); } finally { try { if (response != null) { response.close(); } } catch (IOException e) { logger.error(e.getMessage(), e); } } }
32. Dictionary#getRemoteWords()
Project: elasticsearch-analysis-ik
File: Dictionary.java
File: Dictionary.java
/** * ?????????????? */ private static List<String> getRemoteWords(String location) { List<String> buffer = new ArrayList<String>(); RequestConfig rc = RequestConfig.custom().setConnectionRequestTimeout(10 * 1000).setConnectTimeout(10 * 1000).setSocketTimeout(60 * 1000).build(); CloseableHttpClient httpclient = HttpClients.createDefault(); CloseableHttpResponse response; BufferedReader in; HttpGet get = new HttpGet(location); get.setConfig(rc); try { response = httpclient.execute(get); if (response.getStatusLine().getStatusCode() == 200) { String charset = "UTF-8"; // ????????utf-8 if (response.getEntity().getContentType().getValue().contains("charset=")) { String contentType = response.getEntity().getContentType().getValue(); charset = contentType.substring(contentType.lastIndexOf("=") + 1); } in = new BufferedReader(new InputStreamReader(response.getEntity().getContent(), charset)); String line; while ((line = in.readLine()) != null) { buffer.add(line); } in.close(); response.close(); return buffer; } response.close(); } catch (ClientProtocolException e) { logger.error("getRemoteWords {} error", e, location); } catch (IllegalStateException e) { logger.error("getRemoteWords {} error", e, location); } catch (IOException e) { logger.error("getRemoteWords {} error", e, location); } return buffer; }
33. RestTestClient#createRestClient()
Project: elasticsearch
File: RestTestClient.java
File: RestTestClient.java
private static RestClient createRestClient(URL[] urls, Settings settings) throws IOException { SSLConnectionSocketFactory sslsf; String keystorePath = settings.get(TRUSTSTORE_PATH); if (keystorePath != null) { final String keystorePass = settings.get(TRUSTSTORE_PASSWORD); if (keystorePass == null) { throw new IllegalStateException(TRUSTSTORE_PATH + " is provided but not " + TRUSTSTORE_PASSWORD); } Path path = PathUtils.get(keystorePath); if (!Files.exists(path)) { throw new IllegalStateException(TRUSTSTORE_PATH + " is set but points to a non-existing file"); } try { KeyStore keyStore = KeyStore.getInstance("jks"); try (InputStream is = Files.newInputStream(path)) { keyStore.load(is, keystorePass.toCharArray()); } SSLContext sslcontext = SSLContexts.custom().loadTrustMaterial(keyStore, null).build(); sslsf = new SSLConnectionSocketFactory(sslcontext); } catch (KeyStoreExceptionNoSuchAlgorithmException | KeyManagementException | CertificateException | e) { throw new RuntimeException(e); } } else { sslsf = SSLConnectionSocketFactory.getSocketFactory(); } Registry<ConnectionSocketFactory> socketFactoryRegistry = RegistryBuilder.<ConnectionSocketFactory>create().register("http", PlainConnectionSocketFactory.getSocketFactory()).register("https", sslsf).build(); PoolingHttpClientConnectionManager connectionManager = new PoolingHttpClientConnectionManager(socketFactoryRegistry); //default settings may be too constraining connectionManager.setDefaultMaxPerRoute(10); connectionManager.setMaxTotal(30); //default timeouts are all infinite RequestConfig requestConfig = RequestConfig.custom().setConnectTimeout(CONNECT_TIMEOUT_MILLIS).setSocketTimeout(SOCKET_TIMEOUT_MILLIS).setConnectionRequestTimeout(CONNECTION_REQUEST_TIMEOUT_MILLIS).build(); CloseableHttpClient httpClient = HttpClientBuilder.create().setConnectionManager(connectionManager).setDefaultRequestConfig(requestConfig).build(); String protocol = settings.get(PROTOCOL, "http"); HttpHost[] hosts = new HttpHost[urls.length]; for (int i = 0; i < hosts.length; i++) { URL url = urls[i]; hosts[i] = new HttpHost(url.getHost(), url.getPort(), protocol); } RestClient.Builder builder = RestClient.builder(hosts).setHttpClient(httpClient).setMaxRetryTimeoutMillis(MAX_RETRY_TIMEOUT_MILLIS); try (ThreadContext threadContext = new ThreadContext(settings)) { Header[] defaultHeaders = new Header[threadContext.getHeaders().size()]; int i = 0; for (Map.Entry<String, String> entry : threadContext.getHeaders().entrySet()) { defaultHeaders[i++] = new BasicHeader(entry.getKey(), entry.getValue()); } builder.setDefaultHeaders(defaultHeaders); } return builder.build(); }
34. HttpClientBuilder#createClient()
Project: dropwizard
File: HttpClientBuilder.java
File: HttpClientBuilder.java
/** * Map the parameters in {@link HttpClientConfiguration} to configuration on a * {@link org.apache.http.impl.client.HttpClientBuilder} instance * * @param builder * @param manager * @param name * @return the configured {@link CloseableHttpClient} */ protected ConfiguredCloseableHttpClient createClient(final org.apache.http.impl.client.HttpClientBuilder builder, final InstrumentedHttpClientConnectionManager manager, final String name) { final String cookiePolicy = configuration.isCookiesEnabled() ? CookieSpecs.DEFAULT : CookieSpecs.IGNORE_COOKIES; final Integer timeout = (int) configuration.getTimeout().toMilliseconds(); final Integer connectionTimeout = (int) configuration.getConnectionTimeout().toMilliseconds(); final Integer connectionRequestTimeout = (int) configuration.getConnectionRequestTimeout().toMilliseconds(); final long keepAlive = configuration.getKeepAlive().toMilliseconds(); final ConnectionReuseStrategy reuseStrategy = keepAlive == 0 ? new NoConnectionReuseStrategy() : new DefaultConnectionReuseStrategy(); final HttpRequestRetryHandler retryHandler = configuration.getRetries() == 0 ? NO_RETRIES : (httpRequestRetryHandler == null ? new DefaultHttpRequestRetryHandler(configuration.getRetries(), false) : httpRequestRetryHandler); final RequestConfig requestConfig = RequestConfig.custom().setCookieSpec(cookiePolicy).setSocketTimeout(timeout).setConnectTimeout(connectionTimeout).setConnectionRequestTimeout(connectionRequestTimeout).build(); final SocketConfig socketConfig = SocketConfig.custom().setTcpNoDelay(true).setSoTimeout(timeout).build(); builder.setRequestExecutor(new InstrumentedHttpRequestExecutor(metricRegistry, metricNameStrategy, name)).setConnectionManager(manager).setDefaultRequestConfig(requestConfig).setDefaultSocketConfig(socketConfig).setConnectionReuseStrategy(reuseStrategy).setRetryHandler(retryHandler).setUserAgent(createUserAgent(name)); if (keepAlive != 0) { // either keep alive based on response header Keep-Alive, // or if the server can keep a persistent connection (-1), then override based on client's configuration builder.setKeepAliveStrategy(new DefaultConnectionKeepAliveStrategy() { @Override public long getKeepAliveDuration(HttpResponse response, HttpContext context) { final long duration = super.getKeepAliveDuration(response, context); return (duration == -1) ? keepAlive : duration; } }); } // create a tunnel through a proxy host if it's specified in the config final ProxyConfiguration proxy = configuration.getProxyConfiguration(); if (proxy != null) { final HttpHost httpHost = new HttpHost(proxy.getHost(), proxy.getPort(), proxy.getScheme()); builder.setRoutePlanner(new NonProxyListProxyRoutePlanner(httpHost, proxy.getNonProxyHosts())); // if the proxy host requires authentication then add the host credentials to the credentials provider final AuthConfiguration auth = proxy.getAuth(); if (auth != null) { if (credentialsProvider == null) { credentialsProvider = new BasicCredentialsProvider(); } credentialsProvider.setCredentials(new AuthScope(httpHost), new UsernamePasswordCredentials(auth.getUsername(), auth.getPassword())); } } if (credentialsProvider != null) { builder.setDefaultCredentialsProvider(credentialsProvider); } if (routePlanner != null) { builder.setRoutePlanner(routePlanner); } if (disableContentCompression) { builder.disableContentCompression(); } if (redirectStrategy != null) { builder.setRedirectStrategy(redirectStrategy); } if (defaultHeaders != null) { builder.setDefaultHeaders(defaultHeaders); } return new ConfiguredCloseableHttpClient(builder.build(), requestConfig); }
35. HttpClientUtil#buildHttpClient()
Project: disconf
File: HttpClientUtil.java
File: HttpClientUtil.java
/** * ???httpclient?? */ private static void buildHttpClient() { RequestConfig globalConfig = RequestConfig.custom().setConnectTimeout(5000).setSocketTimeout(5000).build(); CloseableHttpClient httpclient = HttpClients.custom().setKeepAliveStrategy(new HttpClientKeepAliveStrategy()).setDefaultRequestConfig(globalConfig).build(); HttpClientUtil.httpclient = httpclient; }
36. RemoteContentServlet#initApacheHttpClient()
Project: cyfm
File: RemoteContentServlet.java
File: RemoteContentServlet.java
// ????connection pool??????client private void initApacheHttpClient() { RequestConfig requestConfig = RequestConfig.custom().setSocketTimeout(TIMEOUT_SECONDS * 1000).setConnectTimeout(TIMEOUT_SECONDS * 1000).build(); httpClient = HttpClientBuilder.create().setMaxConnTotal(POOL_SIZE).setMaxConnPerRoute(POOL_SIZE).setDefaultRequestConfig(requestConfig).build(); }
37. ApacheSender43#enhanceRequest()
Project: ApplicationInsights-Java
File: ApacheSender43.java
File: ApacheSender43.java
@Override public void enhanceRequest(HttpPost request) { RequestConfig requestConfig = RequestConfig.custom().setConnectionRequestTimeout(REQUEST_TIMEOUT_IN_MILLIS).setSocketTimeout(REQUEST_TIMEOUT_IN_MILLIS).setConnectTimeout(REQUEST_TIMEOUT_IN_MILLIS).setSocketTimeout(REQUEST_TIMEOUT_IN_MILLIS).build(); request.setConfig(requestConfig); }