List of usage examples for org.apache.http.config RegistryBuilder build
public Registry<I> build()
From source file:com.microsoft.azure.keyvault.authentication.BearerAuthenticationSetup.java
/** * Configures a {@link HttpClientBuilder} to call the informed * {@link BearerCredentialsSupport} object to answer "bearer" challenges, * such as <code>401 Unauthorized</code> responses. The * {@link BearerCredentialsSupport} object can return a token an hide * <code>401</code> results from users. *///from w ww. j a va 2s .c o m public static void configureClientBuilder(HttpClientBuilder httpBuilder, BearerCredentialsSupport support) { // Configure to use "bearer" as preferred authentication scheme (without // this, the client uses basic, diggest, etc). Builder configBuilder = RequestConfig.custom() .setTargetPreferredAuthSchemes(Arrays.asList(new String[] { BearerAuthentication.NAME })); httpBuilder.setDefaultRequestConfig(configBuilder.build()); // Provide a custom "bearer" authentication provider. RegistryBuilder<AuthSchemeProvider> schemeProviderBuilder = RegistryBuilder.create(); schemeProviderBuilder.register(BearerAuthentication.NAME, BearerAuthenticationProvider.INSTANCE); httpBuilder.setDefaultAuthSchemeRegistry(schemeProviderBuilder.build()); // Configure to use the CloudCredentialsProvider. httpBuilder.setDefaultCredentialsProvider(new BearerCredentialsProvider(support)); }
From source file:org.sonatype.nexus.internal.httpclient.SharedHttpClientConnectionManager.java
private static Registry<ConnectionSocketFactory> createRegistry( final List<SSLContextSelector> sslContextSelectors) { RegistryBuilder<ConnectionSocketFactory> builder = RegistryBuilder.create(); builder.register(HTTP, PlainConnectionSocketFactory.getSocketFactory()); builder.register(HTTPS, new NexusSSLConnectionSocketFactory(sslContextSelectors)); return builder.build(); }
From source file:ee.ria.xroad.proxy.clientproxy.FastestConnectionSelectingSSLSocketFactoryIntegrationTest.java
private static void createClient() throws Exception { RegistryBuilder<ConnectionSocketFactory> socketFactoryRegistry = RegistryBuilder .<ConnectionSocketFactory>create(); socketFactoryRegistry.register("http", PlainConnectionSocketFactory.INSTANCE); socketFactoryRegistry.register("https", createSSLSocketFactory()); PoolingHttpClientConnectionManager connMgr = new PoolingHttpClientConnectionManager( socketFactoryRegistry.build()); connMgr.setMaxTotal(CLIENT_MAX_TOTAL_CONNECTIONS); connMgr.setDefaultMaxPerRoute(CLIENT_MAX_CONNECTIONS_PER_ROUTE); int timeout = SystemProperties.getClientProxyTimeout(); RequestConfig.Builder rb = RequestConfig.custom(); rb.setConnectTimeout(timeout);/*from ww w . j a v a2 s. c om*/ rb.setConnectionRequestTimeout(timeout); rb.setSocketTimeout(timeout); HttpClientBuilder cb = HttpClients.custom(); cb.setConnectionManager(connMgr); cb.setDefaultRequestConfig(rb.build()); // Disable request retry cb.setRetryHandler(new DefaultHttpRequestRetryHandler(0, false)); client = cb.build(); }
From source file:ee.ria.xroad.common.opmonitoring.OpMonitoringDaemonHttpClient.java
/** * Creates HTTP client./*from w w w. j ava 2s . c o m*/ * @param authKey the client's authentication key * @param clientMaxTotalConnections client max total connections * @param clientMaxConnectionsPerRoute client max connections per route * @param connectionTimeoutMilliseconds connection timeout in milliseconds * @param socketTimeoutMilliseconds socket timeout in milliseconds * @return HTTP client * @throws Exception if creating a HTTPS client and SSLContext * initialization fails */ public static CloseableHttpClient createHttpClient(InternalSSLKey authKey, int clientMaxTotalConnections, int clientMaxConnectionsPerRoute, int connectionTimeoutMilliseconds, int socketTimeoutMilliseconds) throws Exception { log.trace("createHttpClient()"); RegistryBuilder<ConnectionSocketFactory> sfr = RegistryBuilder.<ConnectionSocketFactory>create(); if ("https".equalsIgnoreCase(OpMonitoringSystemProperties.getOpMonitorDaemonScheme())) { sfr.register("https", createSSLSocketFactory(authKey)); } else { sfr.register("http", PlainConnectionSocketFactory.INSTANCE); } PoolingHttpClientConnectionManager cm = new PoolingHttpClientConnectionManager(sfr.build()); cm.setMaxTotal(clientMaxTotalConnections); cm.setDefaultMaxPerRoute(clientMaxConnectionsPerRoute); cm.setDefaultSocketConfig(SocketConfig.custom().setTcpNoDelay(true).build()); RequestConfig.Builder rb = RequestConfig.custom().setConnectTimeout(connectionTimeoutMilliseconds) .setConnectionRequestTimeout(connectionTimeoutMilliseconds) .setSocketTimeout(socketTimeoutMilliseconds); HttpClientBuilder cb = HttpClients.custom().setConnectionManager(cm).setDefaultRequestConfig(rb.build()); // Disable request retry cb.setRetryHandler(new DefaultHttpRequestRetryHandler(0, false)); return cb.build(); }
From source file:leap.webunit.client.THttpClientImpl.java
private static Registry<ConnectionSocketFactory> getDefaultRegistry() { RegistryBuilder<ConnectionSocketFactory> reg = RegistryBuilder.<ConnectionSocketFactory>create(); reg.register("http", PlainConnectionSocketFactory.getSocketFactory()); SSLConnectionSocketFactory sslSocketFactory = new SSLConnectionSocketFactory(sslContext, SSLConnectionSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER); reg.register("https", sslSocketFactory); return reg.build(); }
From source file:com.liferay.sync.engine.lan.session.LanSession.java
private static HttpClient _createHttpClient(int connectTimeout, int maxPerRoute, int maxTotal, int socketTimeout) { RegistryBuilder<ConnectionSocketFactory> registryBuilder = RegistryBuilder.create(); try {/*w w w. j ava2 s . c o m*/ registryBuilder.register("https", _getSSLSocketFactory()); } catch (Exception e) { _logger.error(e.getMessage(), e); } PoolingHttpClientConnectionManager connectionManager = new PoolingHttpClientConnectionManager( registryBuilder.build()); connectionManager.setDefaultMaxPerRoute(maxPerRoute); connectionManager.setMaxTotal(maxTotal); HttpClientBuilder httpClientBuilder = HttpClientBuilder.create(); RequestConfig.Builder builder = RequestConfig.custom(); builder.setConnectTimeout(connectTimeout); builder.setSocketTimeout(socketTimeout); httpClientBuilder.setDefaultRequestConfig(builder.build()); httpClientBuilder.setConnectionManager(connectionManager); return httpClientBuilder.build(); }
From source file:ee.ria.xroad.common.request.ManagementRequestClient.java
private static CloseableHttpClient createHttpClient(KeyManager km, TrustManager tm) throws Exception { RegistryBuilder<ConnectionSocketFactory> sfr = RegistryBuilder.<ConnectionSocketFactory>create(); sfr.register("http", PlainConnectionSocketFactory.INSTANCE); SSLContext ctx = SSLContext.getInstance(CryptoUtils.SSL_PROTOCOL); ctx.init(km != null ? new KeyManager[] { km } : null, tm != null ? new TrustManager[] { tm } : null, new SecureRandom()); SSLConnectionSocketFactory sf = new SSLConnectionSocketFactory(ctx, SSLConnectionSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER); sfr.register("https", sf); PoolingHttpClientConnectionManager cm = new PoolingHttpClientConnectionManager(sfr.build()); cm.setMaxTotal(CLIENT_MAX_TOTAL_CONNECTIONS); cm.setDefaultMaxPerRoute(CLIENT_MAX_CONNECTIONS_PER_ROUTE); int timeout = SystemProperties.getClientProxyTimeout(); int socketTimeout = SystemProperties.getClientProxyHttpClientTimeout(); RequestConfig.Builder rb = RequestConfig.custom(); rb.setConnectTimeout(timeout);/*from w ww. j a va 2s . c om*/ rb.setConnectionRequestTimeout(timeout); rb.setSocketTimeout(socketTimeout); HttpClientBuilder cb = HttpClients.custom(); cb.setConnectionManager(cm); cb.setDefaultRequestConfig(rb.build()); // Disable request retry cb.setRetryHandler(new DefaultHttpRequestRetryHandler(0, false)); return cb.build(); }
From source file:com.mirth.connect.client.core.ConnectServiceUtil.java
private static CloseableHttpClient getClient(String[] protocols, String[] cipherSuites) { RegistryBuilder<ConnectionSocketFactory> socketFactoryRegistry = RegistryBuilder .<ConnectionSocketFactory>create(); String[] enabledProtocols = MirthSSLUtil.getEnabledHttpsProtocols(protocols); String[] enabledCipherSuites = MirthSSLUtil.getEnabledHttpsCipherSuites(cipherSuites); SSLConnectionSocketFactory sslConnectionSocketFactory = new SSLConnectionSocketFactory( SSLContexts.createSystemDefault(), enabledProtocols, enabledCipherSuites, SSLConnectionSocketFactory.STRICT_HOSTNAME_VERIFIER); socketFactoryRegistry.register("https", sslConnectionSocketFactory); BasicHttpClientConnectionManager httpClientConnectionManager = new BasicHttpClientConnectionManager( socketFactoryRegistry.build()); httpClientConnectionManager.setSocketConfig(SocketConfig.custom().setSoTimeout(TIMEOUT).build()); return HttpClients.custom().setConnectionManager(httpClientConnectionManager).build(); }
From source file:com.mirth.connect.util.HttpUtil.java
/** * Applies global settings to any Apache HttpComponents HttpClientBuilder.<br/> * <br/>//from ww w. j a va2 s . c o m * As of version 4.5, the default cookie specifications used by Apache HttpClient are more * strict in order to abide by RFC 6265. As part of this change, domain parameters in cookies * are checked against a public ICANN suffix matcher before they are allowed to be added to * outgoing requests. However this may cause clients to fail to connect if they are using custom * hostnames like "mycustomhost". To prevent that, we're building our own CookieSpecProvider * registry, and setting that on the client. Look at CookieSpecRegistries to see how the default * registry is built. The only difference now is that DefaultCookieSpecProvider is being * constructed without a PublicSuffixMatcher. */ public static void configureClientBuilder(HttpClientBuilder clientBuilder) { PublicSuffixMatcher publicSuffixMatcher = PublicSuffixMatcherLoader.getDefault(); clientBuilder.setPublicSuffixMatcher(publicSuffixMatcher); RegistryBuilder<CookieSpecProvider> cookieSpecBuilder = RegistryBuilder.<CookieSpecProvider>create(); CookieSpecProvider defaultProvider = new DefaultCookieSpecProvider(); CookieSpecProvider laxStandardProvider = new RFC6265CookieSpecProvider( RFC6265CookieSpecProvider.CompatibilityLevel.RELAXED, publicSuffixMatcher); CookieSpecProvider strictStandardProvider = new RFC6265CookieSpecProvider( RFC6265CookieSpecProvider.CompatibilityLevel.STRICT, publicSuffixMatcher); cookieSpecBuilder.register(CookieSpecs.DEFAULT, defaultProvider); cookieSpecBuilder.register("best-match", defaultProvider); cookieSpecBuilder.register("compatibility", defaultProvider); cookieSpecBuilder.register(CookieSpecs.STANDARD, laxStandardProvider); cookieSpecBuilder.register(CookieSpecs.STANDARD_STRICT, strictStandardProvider); cookieSpecBuilder.register(CookieSpecs.NETSCAPE, new NetscapeDraftSpecProvider()); cookieSpecBuilder.register(CookieSpecs.IGNORE_COOKIES, new IgnoreSpecProvider()); clientBuilder.setDefaultCookieSpecRegistry(cookieSpecBuilder.build()); }
From source file:io.fabric8.kit.build.service.docker.access.hc.util.AbstractNativeClientBuilder.java
private Registry<ConnectionSocketFactory> buildRegistry(String path) { final RegistryBuilder<ConnectionSocketFactory> registryBuilder = RegistryBuilder.create(); registryBuilder.register(getProtocol(), getConnectionSocketFactory()); return registryBuilder.build(); }