Author: olamy
Date: Tue Aug 7 23:21:01 2012
New Revision: 1370588
URL: http://svn.apache.org/viewvc?rev=1370588&view=rev
Log:
add hack to configure User-Agent to download index from central
Modified:
archiva/trunk/archiva-modules/archiva-base/archiva-proxy-common/src/main/java/org/apache/archiva/proxy/common/DefaultWagonFactory.java
archiva/trunk/archiva-modules/archiva-scheduler/archiva-scheduler-indexing/src/main/java/org/apache/archiva/scheduler/indexing/DownloadRemoteIndexTask.java
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/test/tomcat/log4j.xml
Modified:
archiva/trunk/archiva-modules/archiva-base/archiva-proxy-common/src/main/java/org/apache/archiva/proxy/common/DefaultWagonFactory.java
URL:
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-base/archiva-proxy-common/src/main/java/org/apache/archiva/proxy/common/DefaultWagonFactory.java?rev=1370588&r1=1370587&r2=1370588&view=diff
==============================================================================
---
archiva/trunk/archiva-modules/archiva-base/archiva-proxy-common/src/main/java/org/apache/archiva/proxy/common/DefaultWagonFactory.java
(original)
+++
archiva/trunk/archiva-modules/archiva-base/archiva-proxy-common/src/main/java/org/apache/archiva/proxy/common/DefaultWagonFactory.java
Tue Aug 7 23:21:01 2012
@@ -19,14 +19,17 @@ package org.apache.archiva.proxy.common;
* under the License.
*/
-import org.apache.archiva.common.plexusbridge.PlexusSisuBridge;
import org.apache.commons.lang.StringUtils;
import org.apache.maven.wagon.Wagon;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
import org.springframework.beans.BeansException;
import org.springframework.context.ApplicationContext;
import org.springframework.stereotype.Service;
import javax.inject.Inject;
+import java.lang.reflect.Method;
+import java.util.Properties;
/**
* @author Olivier Lamy
@@ -39,6 +42,8 @@ public class DefaultWagonFactory
private ApplicationContext applicationContext;
+ private Logger logger = LoggerFactory.getLogger( getClass() );
+
private DebugTransferListener debugTransferListener = new
DebugTransferListener();
@Inject
@@ -56,6 +61,7 @@ public class DefaultWagonFactory
Wagon wagon = applicationContext.getBean( protocol, Wagon.class );
wagon.addTransferListener( debugTransferListener );
+ configureUserAgent( wagon );
return wagon;
}
catch ( BeansException e )
@@ -63,4 +69,28 @@ public class DefaultWagonFactory
throw new WagonFactoryException( e.getMessage(), e );
}
}
+
+ protected void configureUserAgent( Wagon wagon )
+ {
+ try
+ {
+ Class clazz = wagon.getClass();
+ Method getHttpHeaders = clazz.getMethod( "getHttpHeaders", null );
+
+ Properties headers = (Properties) getHttpHeaders.invoke( wagon,
null );
+ if ( headers == null )
+ {
+ headers = new Properties();
+ }
+ headers.put( "User-Agent", "Java" );
+ Method setHttpHeaders = clazz.getMethod( "setHttpHeaders", new
Class[]{ Properties.class } );
+ setHttpHeaders.invoke( wagon, headers );
+
+ logger.debug( "http headers set to: {}", headers );
+ }
+ catch ( Exception e )
+ {
+ logger.warn( "fail to configure User-Agent: " + e.getMessage(), e
);
+ }
+ }
}
Modified:
archiva/trunk/archiva-modules/archiva-scheduler/archiva-scheduler-indexing/src/main/java/org/apache/archiva/scheduler/indexing/DownloadRemoteIndexTask.java
URL:
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-scheduler/archiva-scheduler-indexing/src/main/java/org/apache/archiva/scheduler/indexing/DownloadRemoteIndexTask.java?rev=1370588&r1=1370587&r2=1370588&view=diff
==============================================================================
---
archiva/trunk/archiva-modules/archiva-scheduler/archiva-scheduler-indexing/src/main/java/org/apache/archiva/scheduler/indexing/DownloadRemoteIndexTask.java
(original)
+++
archiva/trunk/archiva-modules/archiva-scheduler/archiva-scheduler-indexing/src/main/java/org/apache/archiva/scheduler/indexing/DownloadRemoteIndexTask.java
Tue Aug 7 23:21:01 2012
@@ -32,6 +32,7 @@ import org.apache.maven.index.updater.In
import org.apache.maven.index.updater.ResourceFetcher;
import org.apache.maven.wagon.ConnectionException;
import org.apache.maven.wagon.ResourceDoesNotExistException;
+import org.apache.maven.wagon.StreamWagon;
import org.apache.maven.wagon.TransferFailedException;
import org.apache.maven.wagon.Wagon;
import org.apache.maven.wagon.authentication.AuthenticationException;
@@ -128,7 +129,7 @@ public class DownloadRemoteIndexTask
new URL( this.remoteRepository.getUrl() ).getProtocol() + ( (
this.networkProxy != null
&& this.networkProxy.isUseNtlm() ) ? "-ntlm" : "" );
- final Wagon wagon = wagonFactory.getWagon( wagonProtocol );
+ final StreamWagon wagon = (StreamWagon) wagonFactory.getWagon(
wagonProtocol );
int timeoutInMilliseconds = remoteRepository.getTimeout() * 1000;
// FIXME olamy having 2 config values
wagon.setReadTimeout( timeoutInMilliseconds );
Modified:
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/test/tomcat/log4j.xml
URL:
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/test/tomcat/log4j.xml?rev=1370588&r1=1370587&r2=1370588&view=diff
==============================================================================
---
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/test/tomcat/log4j.xml
(original)
+++
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/test/tomcat/log4j.xml
Tue Aug 7 23:21:01 2012
@@ -46,7 +46,15 @@
<level value="debug"/>
</logger>
-
+ <!-- apache httpclient debug content transfer-->
+ <!--
+ <logger name="org.apache.http.wire">
+ <level value="debug"/>
+ </logger>
+ -->
+ <logger name="org.apache.http.headers">
+ <level value="debug"/>
+ </logger>
<logger name="org.springframework">
<level value="info"/>