Author: olamy
Date: Wed Oct 24 21:14:46 2012
New Revision: 1401889

URL: http://svn.apache.org/viewvc?rev=1401889&view=rev
Log:
[MRM-1705] Feature to add custom parameters and/or headers when requesting an 
external repositories.
correctly use headers.

Modified:
    
archiva/trunk/archiva-modules/archiva-base/archiva-proxy/src/main/java/org/apache/archiva/proxy/DefaultRepositoryProxyConnectors.java
    
archiva/trunk/archiva-modules/archiva-scheduler/archiva-scheduler-indexing/src/main/java/org/apache/archiva/scheduler/indexing/DownloadRemoteIndexTask.java
    
archiva/trunk/archiva-modules/plugins/maven2-repository/src/main/java/org/apache/archiva/metadata/repository/storage/maven2/RepositoryModelResolver.java

Modified: 
archiva/trunk/archiva-modules/archiva-base/archiva-proxy/src/main/java/org/apache/archiva/proxy/DefaultRepositoryProxyConnectors.java
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-base/archiva-proxy/src/main/java/org/apache/archiva/proxy/DefaultRepositoryProxyConnectors.java?rev=1401889&r1=1401888&r2=1401889&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/archiva-base/archiva-proxy/src/main/java/org/apache/archiva/proxy/DefaultRepositoryProxyConnectors.java
 (original)
+++ 
archiva/trunk/archiva-modules/archiva-base/archiva-proxy/src/main/java/org/apache/archiva/proxy/DefaultRepositoryProxyConnectors.java
 Wed Oct 24 21:14:46 2012
@@ -96,7 +96,7 @@ import java.util.concurrent.ConcurrentHa
  * @todo exception handling needs work - "not modified" is not really an 
exceptional case, and it has more layers than
  * your average brown onion
  */
-@Service ("repositoryProxyConnectors#default")
+@Service ( "repositoryProxyConnectors#default" )
 public class DefaultRepositoryProxyConnectors
     implements RepositoryProxyConnectors, RegistryListener
 {
@@ -106,21 +106,21 @@ public class DefaultRepositoryProxyConne
      *
      */
     @Inject
-    @Named (value = "archivaConfiguration#default")
+    @Named ( value = "archivaConfiguration#default" )
     private ArchivaConfiguration archivaConfiguration;
 
     /**
      *
      */
     @Inject
-    @Named (value = "repositoryContentFactory#default")
+    @Named ( value = "repositoryContentFactory#default" )
     private RepositoryContentFactory repositoryFactory;
 
     /**
      *
      */
     @Inject
-    @Named (value = "metadataTools#default")
+    @Named ( value = "metadataTools#default" )
     private MetadataTools metadataTools;
 
     /**
@@ -161,7 +161,7 @@ public class DefaultRepositoryProxyConne
      *
      */
     @Inject
-    @Named (value = "archivaTaskScheduler#repository")
+    @Named ( value = "archivaTaskScheduler#repository" )
     private ArchivaTaskScheduler scheduler;
 
     @Inject
@@ -175,7 +175,7 @@ public class DefaultRepositoryProxyConne
 
     }
 
-    @SuppressWarnings ("unchecked")
+    @SuppressWarnings ( "unchecked" )
     private void initConnectorsAndNetworkProxies()
     {
 
@@ -705,8 +705,10 @@ public class DefaultRepositoryProxyConne
                 }
 
                 wagon = ( networkProxy != null && networkProxy.isUseNtlm() )
-                    ? wagonFactory.getWagon( new 
WagonFactoryRequest().protocol( "wagon#" + protocol + "-ntlm" ) )
-                    : wagonFactory.getWagon( new 
WagonFactoryRequest().protocol( "wagon#" + protocol ) );
+                    ? wagonFactory.getWagon( new WagonFactoryRequest( "wagon#" 
+ protocol + "-ntlm",
+                                                                      
remoteRepository.getRepository().getExtraHeaders() ) )
+                    : wagonFactory.getWagon( new WagonFactoryRequest( "wagon#" 
+ protocol,
+                                                                      
remoteRepository.getRepository().getExtraHeaders() ) );
                 if ( wagon == null )
                 {
                     throw new ProxyException( "Unsupported target repository 
protocol: " + protocol );

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=1401889&r1=1401888&r2=1401889&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
 Wed Oct 24 21:14:46 2012
@@ -135,8 +135,8 @@ public class DownloadRemoteIndexTask
                 new URL( this.remoteRepository.getUrl() ).getProtocol() + ( ( 
this.networkProxy != null
                     && this.networkProxy.isUseNtlm() ) ? "-ntlm" : "" );
 
-            final StreamWagon wagon =
-                (StreamWagon) wagonFactory.getWagon( new 
WagonFactoryRequest().protocol( wagonProtocol ) );
+            final StreamWagon wagon = (StreamWagon) wagonFactory.getWagon(
+                new WagonFactoryRequest( wagonProtocol, 
this.remoteRepository.getExtraHeaders() ) );
             int timeoutInMilliseconds = remoteRepository.getTimeout() * 1000;
             // FIXME olamy having 2 config values
             wagon.setReadTimeout( timeoutInMilliseconds );

Modified: 
archiva/trunk/archiva-modules/plugins/maven2-repository/src/main/java/org/apache/archiva/metadata/repository/storage/maven2/RepositoryModelResolver.java
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/plugins/maven2-repository/src/main/java/org/apache/archiva/metadata/repository/storage/maven2/RepositoryModelResolver.java?rev=1401889&r1=1401888&r2=1401889&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/plugins/maven2-repository/src/main/java/org/apache/archiva/metadata/repository/storage/maven2/RepositoryModelResolver.java
 (original)
+++ 
archiva/trunk/archiva-modules/plugins/maven2-repository/src/main/java/org/apache/archiva/metadata/repository/storage/maven2/RepositoryModelResolver.java
 Wed Oct 24 21:14:46 2012
@@ -238,9 +238,12 @@ public class RepositoryModelResolver
                 // if it's a ntlm proxy we have to lookup the wagon light 
which support thats
                 // wagon http client doesn't support that
                 wagon = ( networkProxy != null && networkProxy.isUseNtlm() )
-                    ? wagonFactory.getWagon( new 
WagonFactoryRequest().protocol( "wagon#" + protocol + "-ntlm" ) )
-                    : wagonFactory.getWagon( new 
WagonFactoryRequest().protocol( "wagon#" + protocol ) );
-                wagon = wagonFactory.getWagon( new 
WagonFactoryRequest().protocol( "wagon#" + protocol ) );
+                    ? wagonFactory.getWagon(
+                    new WagonFactoryRequest( "wagon#" + protocol + "-ntlm", 
remoteRepository.getExtraHeaders() ) )
+                    : wagonFactory.getWagon(
+                        new WagonFactoryRequest( "wagon#" + protocol, 
remoteRepository.getExtraHeaders() ) );
+                wagon = wagonFactory.getWagon(
+                    new WagonFactoryRequest( "wagon#" + protocol, 
remoteRepository.getExtraHeaders() ) );
                 if ( wagon == null )
                 {
                     throw new RuntimeException( "Unsupported remote repository 
protocol: " + protocol );


Reply via email to