Example usage for org.apache.http.impl.nio.client HttpAsyncClientBuilder build

List of usage examples for org.apache.http.impl.nio.client HttpAsyncClientBuilder build

Introduction

In this page you can find the example usage for org.apache.http.impl.nio.client HttpAsyncClientBuilder build.

Prototype

public CloseableHttpAsyncClient build() 

Source Link

Usage

From source file:io.wcm.caravan.commons.httpasyncclient.impl.HttpAsyncClientItem.java

private static CloseableHttpAsyncClient buildHttpAsyncClient(HttpClientConfig config,
        PoolingNHttpClientConnectionManager connectionManager, CredentialsProvider credentialsProvider) {

    // prepare HTTPClient builder
    HttpAsyncClientBuilder httpClientAsyncBuilder = HttpAsyncClientBuilder.create()
            .setConnectionManager(connectionManager);

    // timeout settings
    httpClientAsyncBuilder.setDefaultRequestConfig(RequestConfig.custom()
            .setConnectTimeout(config.getConnectTimeout()).setSocketTimeout(config.getSocketTimeout()).build());

    httpClientAsyncBuilder.setDefaultCredentialsProvider(credentialsProvider);

    // optional proxy support
    if (StringUtils.isNotEmpty(config.getProxyHost())) {
        httpClientAsyncBuilder.setProxy(new HttpHost(config.getProxyHost(), config.getProxyPort()));

        // optional proxy authentication
        if (StringUtils.isNotEmpty(config.getProxyUser())) {
            httpClientAsyncBuilder.setProxyAuthenticationStrategy(new ProxyAuthenticationStrategy());
        }/*from www  . j a  va  2  s .  c om*/
    }

    return httpClientAsyncBuilder.build();
}

From source file:org.voltdb.exportclient.TeradataListenerExportClient.java

private void connect() throws IOReactorException {
    if (m_connManager == null) {
        ConnectingIOReactor ioReactor = new DefaultConnectingIOReactor();
        m_connManager = new PoolingNHttpClientConnectionManager(ioReactor);
        m_connManager.setMaxTotal(HTTP_EXPORT_MAX_CONNS);
        m_connManager.setDefaultMaxPerRoute(HTTP_EXPORT_MAX_CONNS);
    }//from  w w  w  .  j a va 2s. c o m

    if (m_client == null || !m_client.isRunning()) {
        HttpAsyncClientBuilder client = HttpAsyncClients.custom().setConnectionManager(m_connManager);
        m_client = client.build();
        m_client.start();
    }
}

From source file:com.facebook.presto.jdbc.QueryExecutor.java

private QueryExecutor(String userAgent, ObjectMapper mapper, HttpHost proxy) {
    checkNotNull(userAgent, "userAgent is null");
    checkNotNull(mapper, "mapper is null");

    this.userAgent = userAgent;
    this.mapper = mapper;

    HttpClientBuilder builder = HttpClients.custom();
    HttpAsyncClientBuilder asyncBuilder = HttpAsyncClients.custom();

    if (proxy != null) {
        DefaultProxyRoutePlanner routePlanner = new DefaultProxyRoutePlanner(proxy);
        builder.setRoutePlanner(routePlanner);
        asyncBuilder.setRoutePlanner(routePlanner);
    }//from w  w  w.j  a v  a 2  s.com

    this.httpClient = asyncBuilder.build();
    this.httpClient.start();
}

From source file:securitytools.common.http.HttpClientFactory.java

public static CloseableHttpAsyncClient buildAsync(ClientConfiguration clientConfiguration)
        throws NoSuchAlgorithmException {
    HttpAsyncClientBuilder builder = HttpAsyncClients.custom();

    // Certificate Validation
    // TODO//from   w  w w  .j ava2s  . c o  m
    if (clientConfiguration.isCertificateValidationEnabled()) {
        builder.setSSLStrategy(new SSLIOSessionStrategy(SSLContext.getDefault(),
                SSLConnectionSocketFactory.STRICT_HOSTNAME_VERIFIER));
    } else {
        // Disable
        SSLIOSessionStrategy sslStrategy = new SSLIOSessionStrategy(SSLContext.getDefault(),
                SSLConnectionSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER);
        builder.setSSLStrategy(sslStrategy);
    }

    // Timeouts
    RequestConfig.Builder requestConfigBuilder = RequestConfig.custom();
    requestConfigBuilder.setConnectTimeout(clientConfiguration.getConnectionTimeout());
    requestConfigBuilder.setConnectionRequestTimeout(clientConfiguration.getConnectionTimeout());
    requestConfigBuilder.setSocketTimeout(clientConfiguration.getSocketTimeout());
    builder.setDefaultRequestConfig(requestConfigBuilder.build());

    // User Agent
    builder.setUserAgent(clientConfiguration.getUserAgent());

    // Proxy
    if (clientConfiguration.getProxyHost() != null) {
        builder.setProxy(clientConfiguration.getProxyHost());
    }

    return builder.build();
}

From source file:co.paralleluniverse.fibers.dropwizard.FiberHttpClientBuilder.java

/**
 * Builds the {@link HttpClient}.//from  w ww  .j  a  va2s . c  o m
 *
 * @return an {@link HttpClient}
 */
public HttpClient build(String name) {
    RequestConfig createHttpParams = createHttpParams();
    final NHttpClientConnectionManager manager = createConnectionManager(registry, name);
    HttpAsyncClientBuilder clientBuilder = new InstrumentedNHttpClientBuilder(metricRegistry, name);
    clientBuilder.setConnectionManager(manager);
    clientBuilder.setDefaultRequestConfig(createHttpParams);
    setStrategiesForClient(clientBuilder);
    CloseableHttpAsyncClient client = clientBuilder.build();
    client.start();
    return new FiberHttpClient(client, getRetryHandler());
}

From source file:org.apache.zeppelin.notebook.repo.zeppelinhub.rest.HttpProxyClient.java

private CloseableHttpAsyncClient getAsyncProxyHttpClient(URI proxyUri) {
    LOG.info("Creating async proxy http client");
    PoolingNHttpClientConnectionManager cm = getAsyncConnectionManager();
    HttpHost proxy = new HttpHost(proxyUri.getHost(), proxyUri.getPort());

    HttpAsyncClientBuilder clientBuilder = HttpAsyncClients.custom();
    if (cm != null) {
        clientBuilder = clientBuilder.setConnectionManager(cm);
    }//from www . ja  va 2  s  .c  o m

    if (proxy != null) {
        clientBuilder = clientBuilder.setProxy(proxy);
    }
    clientBuilder = setRedirects(clientBuilder);
    return clientBuilder.build();
}

From source file:HCNIOEngine.java

private CloseableHttpAsyncClient createCloseableHttpAsyncClient() throws Exception {
    HttpAsyncClientBuilder builder = HttpAsyncClientBuilder.create();
    builder.useSystemProperties();/*from w  w  w.j  av a 2  s  .  c  om*/
    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:org.rapidoid.http.HttpClientUtil.java

static CloseableHttpAsyncClient client(HttpClient client) {

    ConnectionReuseStrategy reuseStrategy = client.reuseConnections() ? new DefaultConnectionReuseStrategy()
            : new NoConnectionReuseStrategy();

    HttpAsyncClientBuilder builder = HttpAsyncClients.custom()
            .setThreadFactory(new RapidoidThreadFactory("http-client")).disableConnectionState()
            .disableAuthCaching().setMaxConnPerRoute(client.maxConnPerRoute())
            .setMaxConnTotal(client.maxConnTotal()).setConnectionReuseStrategy(reuseStrategy)
            .setRedirectStrategy(client.followRedirects() ? new DefaultRedirectStrategy() : NO_REDIRECTS);

    if (!U.isEmpty(client.cookies())) {
        BasicCookieStore cookieStore = new BasicCookieStore();

        for (Map.Entry<String, String> e : client.cookies().entrySet()) {
            BasicClientCookie cookie = new BasicClientCookie(e.getKey(), e.getValue());

            String host = client.host();
            U.notNull(host, "HTTP client host");

            cookie.setDomain(getDomain(host));
            cookie.setPath("/");
            cookieStore.addCookie(cookie);
        }//w ww .ja  v a2s  .  c o m

        builder = builder.setDefaultCookieStore(cookieStore);
    }

    if (client.userAgent() != null) {
        builder = builder.setUserAgent(client.userAgent());
    }

    if (!client.keepCookies() && U.isEmpty(client.cookies())) {
        builder = builder.disableCookieManagement();
    }

    return builder.build();
}

From source file:org.elasticsearch.client.RestClientBuilder.java

private CloseableHttpAsyncClient createHttpClient() {
    //default timeouts are all infinite
    RequestConfig.Builder requestConfigBuilder = RequestConfig.custom()
            .setConnectTimeout(DEFAULT_CONNECT_TIMEOUT_MILLIS).setSocketTimeout(DEFAULT_SOCKET_TIMEOUT_MILLIS)
            .setConnectionRequestTimeout(DEFAULT_CONNECTION_REQUEST_TIMEOUT_MILLIS);
    if (requestConfigCallback != null) {
        requestConfigBuilder = requestConfigCallback.customizeRequestConfig(requestConfigBuilder);
    }//  w  w w .  j  a va2s  .c o  m

    HttpAsyncClientBuilder httpClientBuilder = HttpAsyncClientBuilder.create()
            .setDefaultRequestConfig(requestConfigBuilder.build())
            //default settings for connection pooling may be too constraining
            .setMaxConnPerRoute(DEFAULT_MAX_CONN_PER_ROUTE).setMaxConnTotal(DEFAULT_MAX_CONN_TOTAL);
    if (httpClientConfigCallback != null) {
        httpClientBuilder = httpClientConfigCallback.customizeHttpClient(httpClientBuilder);
    }
    return httpClientBuilder.build();
}

From source file:io.getlime.push.service.fcm.FcmClient.java

/**
 * Set information about proxy./*from   w  w w .  j a  v  a2s  .  c  o m*/
 * @param host Proxy host URL.
 * @param port Proxy port.
 * @param username Proxy username, use 'null' for proxy without authentication.
 * @param password Proxy user password, ignored in case username is 'null'
 */
public void setProxy(String host, int port, String username, String password) {

    HttpAsyncClientBuilder clientBuilder = HttpAsyncClientBuilder.create();
    clientBuilder.useSystemProperties();
    clientBuilder.setProxy(new HttpHost(host, port));

    if (username != null) {
        CredentialsProvider credsProvider = new BasicCredentialsProvider();
        UsernamePasswordCredentials user = new UsernamePasswordCredentials(username, password);
        credsProvider.setCredentials(new AuthScope(host, port), user);
        clientBuilder.setDefaultCredentialsProvider(credsProvider);
        clientBuilder.setProxyAuthenticationStrategy(new ProxyAuthenticationStrategy());
    }

    CloseableHttpAsyncClient client = clientBuilder.build();

    HttpComponentsAsyncClientHttpRequestFactory factory = new HttpComponentsAsyncClientHttpRequestFactory();
    factory.setAsyncClient(client);

    restTemplate.setAsyncRequestFactory(factory);
}