List of usage examples for org.apache.http.impl.nio.client HttpAsyncClientBuilder setSSLContext
public final HttpAsyncClientBuilder setSSLContext(final SSLContext sslcontext)
From source file:HCNIOEngine.java
private CloseableHttpAsyncClient createCloseableHttpAsyncClient() throws Exception { HttpAsyncClientBuilder builder = HttpAsyncClientBuilder.create(); builder.useSystemProperties();/* www.j av a 2 s .c o m*/ builder.setSSLContext(SSLContext.getDefault()); builder.setConnectionReuseStrategy(DefaultConnectionReuseStrategy.INSTANCE); builder.setMaxConnPerRoute(2); builder.setMaxConnTotal(2); builder.setDefaultRequestConfig(RequestConfig.custom().setConnectionRequestTimeout(1000) .setConnectTimeout(2000).setSocketTimeout(2000).build()); // builder.setHttpProcessor() CloseableHttpAsyncClient hc = builder.build(); hc.start(); return hc; }
From source file:com.streamsets.pipeline.lib.elasticsearch.ElasticsearchStageDelegate.java
private void buildSSLContext(List<Stage.ConfigIssue> issues, RestClientBuilder restClientBuilder) throws IOException { try {//ww w. j a v a 2 s . c o m final SSLContext sslcontext; final String keyStorePath = conf.securityConfig.sslTrustStorePath; if (StringUtils.isEmpty(keyStorePath)) { sslcontext = SSLContext.getDefault(); } else { String keyStorePass = null; try { keyStorePass = conf.securityConfig.sslTrustStorePassword.get(); } catch (StageException e) { issues.add(context.createConfigIssue(Groups.ELASTIC_SEARCH.name(), SecurityConfig.CONF_PREFIX + "sslTrustStorePassword", Errors.ELASTICSEARCH_31, e.toString())); } if (StringUtils.isEmpty(keyStorePass)) { issues.add(context.createConfigIssue(Groups.ELASTIC_SEARCH.name(), SecurityConfig.CONF_PREFIX + "sslTrustStorePassword", Errors.ELASTICSEARCH_10)); } Path path = Paths.get(keyStorePath); if (!Files.exists(path)) { issues.add(context.createConfigIssue(Groups.ELASTIC_SEARCH.name(), SecurityConfig.CONF_PREFIX + "sslTrustStorePath", Errors.ELASTICSEARCH_11, keyStorePath)); } KeyStore keyStore = KeyStore.getInstance("jks"); try (InputStream is = Files.newInputStream(path)) { keyStore.load(is, keyStorePass.toCharArray()); } sslcontext = SSLContexts.custom().loadTrustMaterial(keyStore, null).build(); } restClientBuilder.setHttpClientConfigCallback(new RestClientBuilder.HttpClientConfigCallback() { @Override public HttpAsyncClientBuilder customizeHttpClient(HttpAsyncClientBuilder httpClientBuilder) { return httpClientBuilder.setSSLContext(sslcontext); } }); } catch (KeyStoreException | NoSuchAlgorithmException | KeyManagementException | CertificateException e) { issues.add(context.createConfigIssue(Groups.ELASTIC_SEARCH.name(), SecurityConfig.CONF_PREFIX + "sslTrustStorePath", Errors.ELASTICSEARCH_12, e.toString(), e)); } }
From source file:org.apache.camel.component.olingo2.Olingo2Component.java
private Olingo2AppWrapper createOlingo2App(Olingo2Configuration configuration) { HttpAsyncClientBuilder clientBuilder = configuration.getHttpAsyncClientBuilder(); if (clientBuilder == null) { clientBuilder = HttpAsyncClientBuilder.create(); // apply simple configuration properties final RequestConfig.Builder requestConfigBuilder = RequestConfig.custom(); requestConfigBuilder.setConnectTimeout(configuration.getConnectTimeout()); requestConfigBuilder.setSocketTimeout(configuration.getSocketTimeout()); final HttpHost proxy = configuration.getProxy(); if (proxy != null) { requestConfigBuilder.setProxy(proxy); }/*from ww w . j a v a2s . co m*/ // set default request config clientBuilder.setDefaultRequestConfig(requestConfigBuilder.build()); SSLContextParameters sslContextParameters = configuration.getSslContextParameters(); if (sslContextParameters == null) { // use defaults if not specified sslContextParameters = new SSLContextParameters(); } try { clientBuilder.setSSLContext(sslContextParameters.createSSLContext()); } catch (GeneralSecurityException e) { throw ObjectHelper.wrapRuntimeCamelException(e); } catch (IOException e) { throw ObjectHelper.wrapRuntimeCamelException(e); } } apiProxy = new Olingo2AppWrapper(new Olingo2AppImpl(configuration.getServiceUri(), clientBuilder)); apiProxy.getOlingo2App().setContentType(configuration.getContentType()); apiProxy.getOlingo2App().setHttpHeaders(configuration.getHttpHeaders()); return apiProxy; }
From source file:org.apache.nifi.remote.util.SiteToSiteRestApiClient.java
private void setupAsyncClient() { final HttpAsyncClientBuilder clientBuilder = HttpAsyncClients.custom(); if (sslContext != null) { clientBuilder.setSSLContext(sslContext); clientBuilder.addInterceptorFirst(new HttpsResponseInterceptor()); }//from w w w .j ava 2 s .c o m httpAsyncClient = clientBuilder.setDefaultCredentialsProvider(getCredentialsProvider()).build(); httpAsyncClient.start(); }
From source file:org.janusgraph.diskstorage.es.rest.util.SSLConfigurationCallback.java
@Override public HttpAsyncClientBuilder customizeHttpClient(HttpAsyncClientBuilder httpClientBuilder) { final SSLContext sslcontext; final TrustStrategy trustStrategy = allowSelfSignedCertificates ? new TrustSelfSignedStrategy() : null; try {//from w ww . ja v a 2 s .c o m if (StringUtils.isNotEmpty(trustStoreFile)) { sslContextBuilder.loadTrustMaterial(new File(trustStoreFile), trustStorePassword.toCharArray(), trustStrategy); } else { sslContextBuilder.loadTrustMaterial(trustStrategy); } } catch (KeyStoreException | CertificateException | NoSuchAlgorithmException e) { throw new RuntimeException("Invalid trust store file " + trustStoreFile, e); } catch (IOException e) { throw new RuntimeException("Unable to load trust store data from " + trustStoreFile, e); } try { if (StringUtils.isNotEmpty(keyStoreFile)) { sslContextBuilder.loadKeyMaterial(new File(keyStoreFile), keyStorePassword.toCharArray(), keyPassword.toCharArray()); } } catch (KeyStoreException | CertificateException | NoSuchAlgorithmException | UnrecoverableKeyException e) { throw new RuntimeException("Invalid key store file " + keyStoreFile, e); } catch (IOException e) { throw new RuntimeException("Unable to load key store data from " + keyStoreFile, e); } try { sslcontext = sslContextBuilder.build(); } catch (KeyManagementException | NoSuchAlgorithmException e) { throw new RuntimeException("SSL context initialization failed", e); } httpClientBuilder.setSSLContext(sslcontext); if (disableHostNameVerification) { httpClientBuilder.setSSLHostnameVerifier(new NoopHostnameVerifier()); } return httpClientBuilder; }
From source file:org.elasticsearch.client.documentation.RestClientDocumentation.java
@SuppressWarnings("unused") public void testCommonConfiguration() throws Exception { {//from w w w .ja v a 2 s. c o m //tag::rest-client-config-timeouts RestClientBuilder builder = RestClient.builder(new HttpHost("localhost", 9200)) .setRequestConfigCallback(new RestClientBuilder.RequestConfigCallback() { @Override public RequestConfig.Builder customizeRequestConfig( RequestConfig.Builder requestConfigBuilder) { return requestConfigBuilder.setConnectTimeout(5000).setSocketTimeout(60000); } }).setMaxRetryTimeoutMillis(60000); //end::rest-client-config-timeouts } { //tag::rest-client-config-threads RestClientBuilder builder = RestClient.builder(new HttpHost("localhost", 9200)) .setHttpClientConfigCallback(new RestClientBuilder.HttpClientConfigCallback() { @Override public HttpAsyncClientBuilder customizeHttpClient( HttpAsyncClientBuilder httpClientBuilder) { return httpClientBuilder.setDefaultIOReactorConfig( IOReactorConfig.custom().setIoThreadCount(1).build()); } }); //end::rest-client-config-threads } { //tag::rest-client-config-basic-auth final CredentialsProvider credentialsProvider = new BasicCredentialsProvider(); credentialsProvider.setCredentials(AuthScope.ANY, new UsernamePasswordCredentials("user", "password")); RestClientBuilder builder = RestClient.builder(new HttpHost("localhost", 9200)) .setHttpClientConfigCallback(new RestClientBuilder.HttpClientConfigCallback() { @Override public HttpAsyncClientBuilder customizeHttpClient( HttpAsyncClientBuilder httpClientBuilder) { return httpClientBuilder.setDefaultCredentialsProvider(credentialsProvider); } }); //end::rest-client-config-basic-auth } { //tag::rest-client-config-disable-preemptive-auth final CredentialsProvider credentialsProvider = new BasicCredentialsProvider(); credentialsProvider.setCredentials(AuthScope.ANY, new UsernamePasswordCredentials("user", "password")); RestClientBuilder builder = RestClient.builder(new HttpHost("localhost", 9200)) .setHttpClientConfigCallback(new RestClientBuilder.HttpClientConfigCallback() { @Override public HttpAsyncClientBuilder customizeHttpClient( HttpAsyncClientBuilder httpClientBuilder) { httpClientBuilder.disableAuthCaching(); // <1> return httpClientBuilder.setDefaultCredentialsProvider(credentialsProvider); } }); //end::rest-client-config-disable-preemptive-auth } { Path keyStorePath = Paths.get(""); String keyStorePass = ""; //tag::rest-client-config-encrypted-communication KeyStore truststore = KeyStore.getInstance("jks"); try (InputStream is = Files.newInputStream(keyStorePath)) { truststore.load(is, keyStorePass.toCharArray()); } SSLContextBuilder sslBuilder = SSLContexts.custom().loadTrustMaterial(truststore, null); final SSLContext sslContext = sslBuilder.build(); RestClientBuilder builder = RestClient.builder(new HttpHost("localhost", 9200, "https")) .setHttpClientConfigCallback(new RestClientBuilder.HttpClientConfigCallback() { @Override public HttpAsyncClientBuilder customizeHttpClient( HttpAsyncClientBuilder httpClientBuilder) { return httpClientBuilder.setSSLContext(sslContext); } }); //end::rest-client-config-encrypted-communication } }