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 );
}