You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by jv...@apache.org on 2009/07/20 18:52:08 UTC

svn commit: r795913 - in /maven/components/trunk/maven-compat/src: main/java/org/apache/maven/repository/ test/java/org/apache/maven/repository/

Author: jvanzyl
Date: Mon Jul 20 16:52:08 2009
New Revision: 795913

URL: http://svn.apache.org/viewvc?rev=795913&view=rev
Log:
MNG-4245: can't access protected mirrors with latest 3.0-SNAPSHOT (rev 795227)
Submitted by: Igor Fedorenko

Modified:
    maven/components/trunk/maven-compat/src/main/java/org/apache/maven/repository/DefaultMirrorBuilder.java
    maven/components/trunk/maven-compat/src/main/java/org/apache/maven/repository/LegacyRepositorySystem.java
    maven/components/trunk/maven-compat/src/main/java/org/apache/maven/repository/MirrorBuilder.java
    maven/components/trunk/maven-compat/src/test/java/org/apache/maven/repository/MirrorProcessorTest.java

Modified: maven/components/trunk/maven-compat/src/main/java/org/apache/maven/repository/DefaultMirrorBuilder.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-compat/src/main/java/org/apache/maven/repository/DefaultMirrorBuilder.java?rev=795913&r1=795912&r2=795913&view=diff
==============================================================================
--- maven/components/trunk/maven-compat/src/main/java/org/apache/maven/repository/DefaultMirrorBuilder.java (original)
+++ maven/components/trunk/maven-compat/src/main/java/org/apache/maven/repository/DefaultMirrorBuilder.java Mon Jul 20 16:52:08 2009
@@ -28,7 +28,7 @@
 
 import org.apache.maven.artifact.repository.ArtifactRepository;
 import org.apache.maven.artifact.repository.ArtifactRepositoryFactory;
-import org.apache.maven.artifact.repository.DefaultArtifactRepository;
+import org.apache.maven.artifact.repository.Authentication;
 import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout;
 import org.codehaus.plexus.component.annotations.Component;
 import org.codehaus.plexus.component.annotations.Requirement;
@@ -53,7 +53,7 @@
     //used LinkedMap to preserve the order.
     private Map<String, ArtifactRepository> mirrors = new LinkedHashMap<String, ArtifactRepository>();
 
-    public void addMirror( String id, String mirrorOf, String url )
+    public void addMirror( String id, String mirrorOf, String url, Authentication auth )
     {        
         if ( id == null )
         {
@@ -61,10 +61,12 @@
             logger.warn( "You are using a mirror that doesn't declare an <id/> element. Using \'" + id + "\' instead:\nId: " + id + "\nmirrorOf: " + mirrorOf + "\nurl: " + url + "\n" );
         }
 
-        ArtifactRepository mirror = repositoryFactory.createArtifactRepository( id, url, (ArtifactRepositoryLayout)null, null, null );
-
         if ( !mirrors.containsKey( mirrorOf ) )
         {
+            ArtifactRepository mirror = repositoryFactory.createArtifactRepository( id, url, (ArtifactRepositoryLayout)null, null, null );
+            
+            mirror.setAuthentication( auth );
+
             mirrors.put( mirrorOf, mirror );
         }
     }
@@ -120,6 +122,7 @@
                 {       
                     // We basically just want to take the URL
                     repository.setUrl( mirror.getUrl() );
+                    repository.setAuthentication( mirror.getAuthentication() );
                     
                     // I would like a mirrored repository to be visually different but we'll put another field
                     // in the repository as changing the ID hoses up authentication.

Modified: maven/components/trunk/maven-compat/src/main/java/org/apache/maven/repository/LegacyRepositorySystem.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-compat/src/main/java/org/apache/maven/repository/LegacyRepositorySystem.java?rev=795913&r1=795912&r2=795913&view=diff
==============================================================================
--- maven/components/trunk/maven-compat/src/main/java/org/apache/maven/repository/LegacyRepositorySystem.java (original)
+++ maven/components/trunk/maven-compat/src/main/java/org/apache/maven/repository/LegacyRepositorySystem.java Mon Jul 20 16:52:08 2009
@@ -327,7 +327,8 @@
     // Mirror 
     public void addMirror( String id, String mirrorOf, String url )
     {
-        mirrorBuilder.addMirror( id, mirrorOf, url );
+        Authentication auth = id != null ? authentications.get( id ) : null;
+        mirrorBuilder.addMirror( id, mirrorOf, url, auth );
     }
 
     public List<ArtifactRepository> getMirrors( List<ArtifactRepository> repositories )

Modified: maven/components/trunk/maven-compat/src/main/java/org/apache/maven/repository/MirrorBuilder.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-compat/src/main/java/org/apache/maven/repository/MirrorBuilder.java?rev=795913&r1=795912&r2=795913&view=diff
==============================================================================
--- maven/components/trunk/maven-compat/src/main/java/org/apache/maven/repository/MirrorBuilder.java (original)
+++ maven/components/trunk/maven-compat/src/main/java/org/apache/maven/repository/MirrorBuilder.java Mon Jul 20 16:52:08 2009
@@ -22,6 +22,7 @@
 import java.util.List;
 
 import org.apache.maven.artifact.repository.ArtifactRepository;
+import org.apache.maven.artifact.repository.Authentication;
 
 public interface MirrorBuilder
 {
@@ -29,7 +30,7 @@
     
     List<ArtifactRepository> getMirrors( List<ArtifactRepository> repositories );
     
-    void addMirror( String id, String mirrorOf, String url );
+    void addMirror( String id, String mirrorOf, String url, Authentication auth );
     
     void clearMirrors();    
 }

Modified: maven/components/trunk/maven-compat/src/test/java/org/apache/maven/repository/MirrorProcessorTest.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-compat/src/test/java/org/apache/maven/repository/MirrorProcessorTest.java?rev=795913&r1=795912&r2=795913&view=diff
==============================================================================
--- maven/components/trunk/maven-compat/src/test/java/org/apache/maven/repository/MirrorProcessorTest.java (original)
+++ maven/components/trunk/maven-compat/src/test/java/org/apache/maven/repository/MirrorProcessorTest.java Mon Jul 20 16:52:08 2009
@@ -28,7 +28,7 @@
     
     public void testAddMirrorWithNullRepositoryId()
     {
-        mirrorBuilder.addMirror( null, "test", "http://www.nowhere.com/" );
+        mirrorBuilder.addMirror( null, "test", "http://www.nowhere.com/", null );
     }
         
     public void testExternalURL()
@@ -55,8 +55,8 @@
 
     public void testMirrorLookup()
     {
-        mirrorBuilder.addMirror( "a", "a", "http://a" );
-        mirrorBuilder.addMirror( "b", "b", "http://b" );
+        mirrorBuilder.addMirror( "a", "a", "http://a", null );
+        mirrorBuilder.addMirror( "b", "b", "http://b", null );
 
         ArtifactRepository repo = null;
         repo = mirrorBuilder.getMirrorRepository( getRepo( "a", "http://a.a" ) );
@@ -72,9 +72,9 @@
 
     public void testMirrorWildcardLookup()
     {
-        mirrorBuilder.addMirror( "a", "a", "http://a" );
-        mirrorBuilder.addMirror( "b", "b", "http://b" );
-        mirrorBuilder.addMirror( "c", "*", "http://wildcard" );
+        mirrorBuilder.addMirror( "a", "a", "http://a", null );
+        mirrorBuilder.addMirror( "b", "b", "http://b", null );
+        mirrorBuilder.addMirror( "c", "*", "http://wildcard", null );
 
         ArtifactRepository repo = null;
         repo = mirrorBuilder.getMirrorRepository( getRepo( "a", "http://a.a" ) );
@@ -91,15 +91,15 @@
     public void testMirrorStopOnFirstMatch()
     {
         //exact matches win first
-        mirrorBuilder.addMirror( "a2", "a,b", "http://a2" );
-        mirrorBuilder.addMirror( "a", "a", "http://a" );
+        mirrorBuilder.addMirror( "a2", "a,b", "http://a2", null );
+        mirrorBuilder.addMirror( "a", "a", "http://a", null );
         //make sure repeated entries are skipped
-        mirrorBuilder.addMirror( "a", "a", "http://a3" ); 
+        mirrorBuilder.addMirror( "a", "a", "http://a3", null ); 
         
-        mirrorBuilder.addMirror( "b", "b", "http://b" );
-        mirrorBuilder.addMirror( "c", "d,e", "http://de" );
-        mirrorBuilder.addMirror( "c", "*", "http://wildcard" );
-        mirrorBuilder.addMirror( "c", "e,f", "http://ef" );        
+        mirrorBuilder.addMirror( "b", "b", "http://b", null );
+        mirrorBuilder.addMirror( "c", "d,e", "http://de", null );
+        mirrorBuilder.addMirror( "c", "*", "http://wildcard", null );
+        mirrorBuilder.addMirror( "c", "e,f", "http://ef", null );        
 
         ArtifactRepository repo = null;
         repo = mirrorBuilder.getMirrorRepository( getRepo( "a", "http://a.a" ) );