Example usage for org.apache.http.config SocketConfig custom

List of usage examples for org.apache.http.config SocketConfig custom

Introduction

In this page you can find the example usage for org.apache.http.config SocketConfig custom.

Prototype

public static Builder custom() 

Source Link

Usage

From source file:com.thoughtworks.go.agent.common.ssl.GoAgentServerHttpClientBuilder.java

public CloseableHttpClient build() throws Exception {
    HttpClientBuilder builder = HttpClients.custom();
    builder.useSystemProperties();//from  w  w w  .j a va  2  s. c o m
    builder.setDefaultSocketConfig(SocketConfig.custom().setTcpNoDelay(true).setSoKeepAlive(true).build())
            .setKeepAliveStrategy(DefaultConnectionKeepAliveStrategy.INSTANCE);

    HostnameVerifier hostnameVerifier = sslVerificationMode.verifier();
    TrustStrategy trustStrategy = sslVerificationMode.trustStrategy();
    KeyStore trustStore = agentTruststore();

    SSLContextBuilder sslContextBuilder = SSLContextBuilder.create().useProtocol(
            systemEnvironment.get(SystemEnvironment.GO_SSL_TRANSPORT_PROTOCOL_TO_BE_USED_BY_AGENT));

    if (trustStore != null || trustStrategy != null) {
        sslContextBuilder.loadTrustMaterial(trustStore, trustStrategy);
    }

    sslContextBuilder.loadKeyMaterial(agentKeystore(), keystorePassword().toCharArray());

    SSLConnectionSocketFactory sslConnectionSocketFactory = new SSLConnectionSocketFactory(
            sslContextBuilder.build(), hostnameVerifier);
    builder.setSSLSocketFactory(sslConnectionSocketFactory);
    return builder.build();
}

From source file:org.apache.sling.hapi.client.test.util.HttpServerRule.java

@Override
protected void before() throws Throwable {
    final SocketConfig socketConfig = SocketConfig.custom().setSoTimeout(5000).build();
    serverBootstrap = ServerBootstrap.bootstrap().setSocketConfig(socketConfig).setServerInfo(ORIGIN);
    if (ProtocolScheme.https.equals(protocolScheme)) {
        serverBootstrap.setSslContext(SSLTestContexts.createServerSSLContext());
    }//from ww w.j  a v a 2  s.c om
    registerHandlers();
    server = serverBootstrap.create();
    server.start();
    host = new HttpHost("127.0.0.1", server.getLocalPort(), protocolScheme.name());
    uri = URIUtils.rewriteURI(new URI("/"), host);
}

From source file:mobi.jenkinsci.server.core.net.PooledHttpClientFactory.java

private SocketConfig getSocketConfig() {
    return SocketConfig.custom().setSoReuseAddress(true).setSoTimeout(config.getHttpReadTimeoutMsec()).build();
}

From source file:com.feedeo.web.client.AbstractWebClient.java

protected HttpClient createHttpClient() {

    final SocketConfig socketConfig = SocketConfig.custom().setSoKeepAlive(true).setTcpNoDelay(true).build();

    final ConnectionConfig connectionConfig = ConnectionConfig.custom().build();

    final RequestConfig requestConfig = RequestConfig.custom().setConnectionRequestTimeout(30000)
            .setConnectTimeout(30000).setSocketTimeout(30000).setStaleConnectionCheckEnabled(false).build();

    final PoolingHttpClientConnectionManager connectionManager = new PoolingHttpClientConnectionManager();
    connectionManager.setMaxTotal(256);//  w  ww.  ja v a  2s.  c  om
    connectionManager.setDefaultMaxPerRoute(256);

    IdleConnectionMonitorThread staleMonitor = new IdleConnectionMonitorThread(connectionManager);
    staleMonitor.start();

    try {
        staleMonitor.join(1000);
    } catch (InterruptedException ignored) {
    }

    final ConnectionKeepAliveStrategy connectionKeepAliveStrategy = new ConnectionKeepAliveStrategy() {
        @Override
        public long getKeepAliveDuration(HttpResponse response, HttpContext context) {
            HeaderElementIterator iterator = new BasicHeaderElementIterator(
                    response.headerIterator(CONN_KEEP_ALIVE));
            while (iterator.hasNext()) {
                HeaderElement header = iterator.nextElement();
                String param = header.getName();
                String value = header.getValue();
                if (value != null && param.equalsIgnoreCase("timeout")) {
                    return Long.parseLong(value) * 1000;
                }
            }
            return 5 * 1000;
        }
    };

    return HttpClientBuilder.create().setConnectionManager(connectionManager)
            .setDefaultRequestConfig(requestConfig).setDefaultSocketConfig(socketConfig)
            .setDefaultConnectionConfig(connectionConfig).setKeepAliveStrategy(connectionKeepAliveStrategy)
            .build();
}

From source file:onl.area51.httpd.service.HttpService.java

@PostConstruct
void start() {//from w  w  w. j a va  2s.  c  om
    httpdConfig = configurationService.getConfiguration("httpd");

    port = httpdConfig.getInt("port", 8080);
    serverInfo = httpdConfig.getString("serverInfo", "Area51/1.1");

    LOG.log(Level.INFO, () -> "Creating http server " + serverInfo + " on port " + port);

    HttpServerBuilder serverBuilder = HttpServerBuilder.builder()
            // HTTP Server config
            .setSocketConfig(SocketConfig.custom().setSoTimeout(httpdConfig.getInt("socket.soTimeout", 15000))
                    .setTcpNoDelay(httpdConfig.getBoolean("socket.tcpNoDelay", true)).build())
            .setListenerPort(port).setServerInfo(serverInfo).setSslContext(null)
            .setExceptionLogger(ex -> LOG.log(Level.SEVERE, null, ex))
            .shutdown(httpdConfig.getLong("shutdown.time", 5L),
                    httpdConfig.getEnum("shutdown.unit", TimeUnit.class, TimeUnit.SECONDS));

    // Default global action is to serve resources
    Actions.registerClassResourceHandler(serverBuilder, HttpService.class);

    serverBuilder.notify(CDI.current().getBeanManager()::fireEvent);

    // Add global error handlers. As these are at the end, earlier ones take precedence
    Actions.registerErrorHandlers(serverBuilder);

    server = serverBuilder.build();

    LOG.log(Level.INFO, () -> "Starting http server " + serverInfo + " on port " + port);

    try {
        server.start();
    } catch (IOException ex) {
        throw new UncheckedIOException(ex);
    }

    LOG.log(Level.INFO, () -> "Started http server " + serverInfo + " on port " + port);
}

From source file:com.comcast.drivethru.client.DefaultRestClient.java

private static HttpClient defaultClient() {
    return HttpClientBuilder.create()
            .setDefaultSocketConfig(SocketConfig.custom().setSoTimeout(DEFAULT_TIMEOUT).build()).build();
}

From source file:com.gs.tools.doc.extractor.core.DownloadManager.java

private DownloadManager() {
    logger.info("Init DownloadManager");
    cookieStore = new BasicCookieStore();
    HttpClientBuilder clientBuilder = HttpClientBuilder.create();
    clientBuilder.setDefaultCookieStore(cookieStore);

    Collection<Header> headers = new ArrayList<Header>();
    headers.add(new BasicHeader("Accept",
            "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8"));
    headers.add(new BasicHeader("User-Agent",
            "Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.57 Safari/537.36"));
    headers.add(new BasicHeader("Accept-Encoding", "gzip,deflate,sdch"));
    headers.add(new BasicHeader("Accept-Language", "en-US,en;q=0.8"));
    //        headers.add(new BasicHeader("Accept-Encoding", 
    //                "gzip,deflate,sdch"));
    clientBuilder.setDefaultHeaders(headers);

    ConnectionConfig.Builder connectionConfigBuilder = ConnectionConfig.custom();
    connectionConfigBuilder.setBufferSize(10485760);
    clientBuilder.setDefaultConnectionConfig(connectionConfigBuilder.build());

    SocketConfig.Builder socketConfigBuilder = SocketConfig.custom();
    socketConfigBuilder.setSoKeepAlive(true);
    socketConfigBuilder.setSoTimeout(3000000);
    clientBuilder.setDefaultSocketConfig(socketConfigBuilder.build());
    logger.info("Create HTTP Client");
    httpClient = clientBuilder.build();//from   w w  w . j av a  2 s.  c  o m

}

From source file:com.redhat.ceylon.cmr.repository.webdav.WebDAVRepository.java

private SardineImpl getSardine() {
    if (sardine == null) {
        synchronized (this) {
            if (sardine == null) {
                sardine = new SardineImpl(username, password, null) {
                    @Override/*from w w w .j  av  a2  s .  c  o  m*/
                    protected HttpClientConnectionManager createDefaultConnectionManager(
                            Registry<ConnectionSocketFactory> schemeRegistry) {
                        HttpClientConnectionManager connMan = super.createDefaultConnectionManager(
                                schemeRegistry);
                        if (connMan instanceof PoolingHttpClientConnectionManager) {
                            @SuppressWarnings("resource")
                            PoolingHttpClientConnectionManager phccm = (PoolingHttpClientConnectionManager) connMan;
                            SocketConfig config = SocketConfig.custom().setSoTimeout(timeout).build();
                            phccm.setDefaultSocketConfig(config);
                        }
                        return connMan;
                    }
                };
            }
        }
    }
    return sardine;
}