You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by ol...@apache.org on 2011/12/13 00:43:49 UTC
svn commit: r1213498 -
/maven/wagon/trunk/wagon-providers/wagon-http-shared4/src/main/java/org/apache/maven/wagon/shared/http4/AbstractHttpClientWagon.java
Author: olamy
Date: Mon Dec 12 23:43:49 2011
New Revision: 1213498
URL: http://svn.apache.org/viewvc?rev=1213498&view=rev
Log:
[WAGON-366] support Preemptive Authentication on proxy for wagon-http.
Modified:
maven/wagon/trunk/wagon-providers/wagon-http-shared4/src/main/java/org/apache/maven/wagon/shared/http4/AbstractHttpClientWagon.java
Modified: maven/wagon/trunk/wagon-providers/wagon-http-shared4/src/main/java/org/apache/maven/wagon/shared/http4/AbstractHttpClientWagon.java
URL: http://svn.apache.org/viewvc/maven/wagon/trunk/wagon-providers/wagon-http-shared4/src/main/java/org/apache/maven/wagon/shared/http4/AbstractHttpClientWagon.java?rev=1213498&r1=1213497&r2=1213498&view=diff
==============================================================================
--- maven/wagon/trunk/wagon-providers/wagon-http-shared4/src/main/java/org/apache/maven/wagon/shared/http4/AbstractHttpClientWagon.java (original)
+++ maven/wagon/trunk/wagon-providers/wagon-http-shared4/src/main/java/org/apache/maven/wagon/shared/http4/AbstractHttpClientWagon.java Mon Dec 12 23:43:49 2011
@@ -647,6 +647,30 @@ public abstract class AbstractHttpClient
setHeaders( httpMethod );
client.getParams().setParameter( CoreProtocolPNames.USER_AGENT, getUserAgent( httpMethod ) );
+ ProxyInfo proxyInfo = getProxyInfo( getRepository().getProtocol(), getRepository().getHost() );
+
+ if ( proxyInfo != null )
+ {
+ if ( proxyInfo.getUserName() != null && proxyInfo.getPassword() != null )
+ {
+ Credentials creds;
+ if ( proxyInfo.getNtlmHost() != null || proxyInfo.getNtlmDomain() != null )
+ {
+ creds =
+ new NTCredentials( proxyInfo.getUserName(), proxyInfo.getPassword(), proxyInfo.getNtlmHost(),
+ proxyInfo.getNtlmDomain() );
+ }
+ else
+ {
+ creds = new UsernamePasswordCredentials( proxyInfo.getUserName(), proxyInfo.getPassword() );
+ }
+
+ Header bs = new BasicScheme().authenticate( creds, httpMethod );
+ httpMethod.addHeader( "Proxy-Authorization", bs.getValue() );
+ }
+
+ }
+
return client.execute( httpMethod, localContext );
}