You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by mi...@apache.org on 2016/12/28 00:29:59 UTC

[4/5] maven-wagon git commit: [WAGON-480] Non-threadsafe HttpClientContext is shared between threaded use of HttpClientWagon

[WAGON-480] Non-threadsafe HttpClientContext is shared between threaded use of HttpClientWagon

The HttpClientContext is created fresh with every execute(), guaranteeing
thread safety.


Project: http://git-wip-us.apache.org/repos/asf/maven-wagon/repo
Commit: http://git-wip-us.apache.org/repos/asf/maven-wagon/commit/f9f582e8
Tree: http://git-wip-us.apache.org/repos/asf/maven-wagon/tree/f9f582e8
Diff: http://git-wip-us.apache.org/repos/asf/maven-wagon/diff/f9f582e8

Branch: refs/heads/jetty-8
Commit: f9f582e824970fd41d619c7cdbf52b787cbc4051
Parents: 2d9cf05
Author: Michael Osipov <mi...@apache.org>
Authored: Wed Dec 28 01:20:07 2016 +0100
Committer: Michael Osipov <mi...@apache.org>
Committed: Wed Dec 28 01:20:07 2016 +0100

----------------------------------------------------------------------
 .../maven/wagon/providers/http/AbstractHttpClientWagon.java  | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven-wagon/blob/f9f582e8/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 d38506f..9ef9544 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
@@ -383,8 +383,6 @@ public abstract class AbstractHttpClientWagon
 
     private AuthCache authCache;
 
-    private HttpClientContext localContext;
-
     private Closeable closeable;
 
     /**
@@ -414,11 +412,8 @@ public abstract class AbstractHttpClientWagon
     {
         repository.setUrl( getURL( repository ) );
 
-        localContext = HttpClientContext.create();
         credentialsProvider = new BasicCredentialsProvider();
         authCache = new BasicAuthCache();
-        localContext.setCredentialsProvider( credentialsProvider );
-        localContext.setAuthCache( authCache );
 
         if ( authenticationInfo != null )
         {
@@ -788,6 +783,9 @@ public abstract class AbstractHttpClientWagon
             requestConfigBuilder.setRedirectsEnabled( false );
         }
 
+        HttpClientContext localContext = HttpClientContext.create();
+        localContext.setCredentialsProvider( credentialsProvider );
+        localContext.setAuthCache( authCache );
         localContext.setRequestConfig( requestConfigBuilder.build() );
 
         if ( config != null && config.isUsePreemptive() )