Example usage for org.apache.http.conn HttpClientConnectionManager HttpClientConnectionManager

List of usage examples for org.apache.http.conn HttpClientConnectionManager HttpClientConnectionManager

Introduction

In this page you can find the example usage for org.apache.http.conn HttpClientConnectionManager HttpClientConnectionManager.

Prototype

HttpClientConnectionManager

Source Link

Usage

From source file:org.fao.geonet.utils.GeonetHttpRequestFactory.java

public HttpClientBuilder getDefaultHttpClientBuilder() {
    final HttpClientBuilder builder = HttpClientBuilder.create();
    builder.setRedirectStrategy(new LaxRedirectStrategy());
    builder.disableContentCompression();

    synchronized (this) {
        if (connectionManager == null) {
            connectionManager = new PoolingHttpClientConnectionManager();
            connectionManager.setMaxTotal(this.numberOfConcurrentRequests);
            nonShutdownableConnectionManager = new HttpClientConnectionManager() {
                public void closeExpiredConnections() {
                    connectionManager.closeExpiredConnections();
                }/*from  w w w.j  a va  2  s. c o m*/

                public ConnectionRequest requestConnection(HttpRoute route, Object state) {
                    return connectionManager.requestConnection(route, state);
                }

                public void releaseConnection(HttpClientConnection managedConn, Object state, long keepalive,
                        TimeUnit tunit) {
                    connectionManager.releaseConnection(managedConn, state, keepalive, tunit);
                }

                public void connect(HttpClientConnection managedConn, HttpRoute route, int connectTimeout,
                        HttpContext context) throws IOException {
                    connectionManager.connect(managedConn, route, connectTimeout, context);
                }

                public void upgrade(HttpClientConnection managedConn, HttpRoute route, HttpContext context)
                        throws IOException {
                    connectionManager.upgrade(managedConn, route, context);
                }

                public void routeComplete(HttpClientConnection managedConn, HttpRoute route,
                        HttpContext context) throws IOException {
                    connectionManager.routeComplete(managedConn, route, context);
                }

                public void shutdown() {
                    // don't shutdown pool
                }

                public void closeIdleConnections(long idleTimeout, TimeUnit tunit) {
                    connectionManager.closeIdleConnections(idleTimeout, tunit);
                }
            };
        }
        connectionManager.setDefaultSocketConfig(
                SocketConfig.custom().setSoTimeout((int) TimeUnit.MINUTES.toMillis(3)).build());
        builder.setConnectionManager(nonShutdownableConnectionManager);
    }

    return builder;
}

From source file:org.callimachusproject.client.HttpClientFactory.java

private HttpClientConnectionManager getConnectionManager() {
    return new HttpClientConnectionManager() {
        public ConnectionRequest requestConnection(HttpRoute route, Object state) {
            return connManager.requestConnection(route, state);
        }/*from  ww  w .  j ava 2s . c  o m*/

        public void releaseConnection(HttpClientConnection conn, Object newState, long validDuration,
                TimeUnit timeUnit) {
            connManager.releaseConnection(conn, newState, validDuration, timeUnit);
        }

        public void connect(HttpClientConnection conn, HttpRoute route, int connectTimeout, HttpContext context)
                throws IOException {
            connManager.connect(conn, route, connectTimeout, context);
        }

        public void upgrade(HttpClientConnection conn, HttpRoute route, HttpContext context)
                throws IOException {
            connManager.upgrade(conn, route, context);
        }

        public void routeComplete(HttpClientConnection conn, HttpRoute route, HttpContext context)
                throws IOException {
            connManager.routeComplete(conn, route, context);
        }

        public void closeIdleConnections(long idletime, TimeUnit tunit) {
            connManager.closeIdleConnections(idletime, tunit);
        }

        public void closeExpiredConnections() {
            connManager.closeExpiredConnections();
        }

        public void shutdown() {
            // connection manager is closed elsewhere
        }
    };
}