Repository: maven-wagon Updated Branches: refs/heads/master 88a6f12d1 -> ad1e07904
restore backward compat with previous versions Project: http://git-wip-us.apache.org/repos/asf/maven-wagon/repo Commit: http://git-wip-us.apache.org/repos/asf/maven-wagon/commit/ad1e0790 Tree: http://git-wip-us.apache.org/repos/asf/maven-wagon/tree/ad1e0790 Diff: http://git-wip-us.apache.org/repos/asf/maven-wagon/diff/ad1e0790 Branch: refs/heads/master Commit: ad1e0790420fef4382be98c3626a2052b26b777d Parents: 88a6f12 Author: Olivier Lamy <ol...@apache.org> Authored: Thu Jan 22 23:08:40 2015 +1100 Committer: Olivier Lamy <ol...@apache.org> Committed: Thu Jan 22 23:09:00 2015 +1100 ---------------------------------------------------------------------- .../providers/http/AbstractHttpClientWagon.java | 24 +++++++++++++++----- 1 file changed, 18 insertions(+), 6 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/maven-wagon/blob/ad1e0790/wagon-providers/wagon-http/src/main/java/org/apache/maven/wagon/providers/http/AbstractHttpClientWagon.java ---------------------------------------------------------------------- diff --git a/wagon-providers/wagon-http/src/main/java/org/apache/maven/wagon/providers/http/AbstractHttpClientWagon.java b/wagon-providers/wagon-http/src/main/java/org/apache/maven/wagon/providers/http/AbstractHttpClientWagon.java index fa31b01..983bac7 100755 --- a/wagon-providers/wagon-http/src/main/java/org/apache/maven/wagon/providers/http/AbstractHttpClientWagon.java +++ b/wagon-providers/wagon-http/src/main/java/org/apache/maven/wagon/providers/http/AbstractHttpClientWagon.java @@ -44,6 +44,7 @@ import org.apache.http.client.protocol.HttpClientContext; import org.apache.http.client.utils.DateUtils; import org.apache.http.config.Registry; import org.apache.http.config.RegistryBuilder; +import org.apache.http.conn.HttpClientConnectionManager; import org.apache.http.conn.socket.ConnectionSocketFactory; import org.apache.http.conn.socket.PlainConnectionSocketFactory; import org.apache.http.conn.ssl.SSLConnectionSocketFactory; @@ -224,7 +225,7 @@ public abstract class AbstractHttpClientWagon * use http(s) connection pool mechanism. * <b>enabled by default</b> */ - private final static boolean PERSISTENT_POOL = + private static boolean persistentPool = Boolean.valueOf( System.getProperty( "maven.wagon.http.pool", "true" ) ); /** @@ -266,7 +267,7 @@ public abstract class AbstractHttpClientWagon /** * Internal connection manager */ - private static final PoolingHttpClientConnectionManager CONN_MAN = createConnManager(); + private static HttpClientConnectionManager httpClientConnectionManager = createConnManager(); /** @@ -351,7 +352,7 @@ public abstract class AbstractHttpClientWagon "https", sslConnectionSocketFactory ).build(); PoolingHttpClientConnectionManager connManager = new PoolingHttpClientConnectionManager( registry ); - if ( PERSISTENT_POOL ) + if ( persistentPool ) { connManager.setDefaultMaxPerRoute( MAX_CONN_PER_ROUTE ); connManager.setMaxTotal( MAX_CONN_TOTAL ); @@ -370,7 +371,7 @@ public abstract class AbstractHttpClientWagon return HttpClientBuilder.create() // .useSystemProperties() // .disableConnectionState() // - .setConnectionManager( CONN_MAN ) // + .setConnectionManager( httpClientConnectionManager ) // .build(); } @@ -493,12 +494,23 @@ public abstract class AbstractHttpClientWagon public void closeConnection() { - if ( !PERSISTENT_POOL ) + if ( !persistentPool ) { - CONN_MAN.closeIdleConnections( 0, TimeUnit.MILLISECONDS ); + httpClientConnectionManager.closeIdleConnections( 0, TimeUnit.MILLISECONDS ); } } + public static void setPersistentPool( boolean persistentPool ) + { + persistentPool = persistentPool; + } + + public static void setPoolingHttpClientConnectionManager( + PoolingHttpClientConnectionManager poolingHttpClientConnectionManager ) + { + httpClientConnectionManager = poolingHttpClientConnectionManager; + } + public void put( File source, String resourceName ) throws TransferFailedException, ResourceDoesNotExistException, AuthorizationException {