Author: nicolas
Date: Mon Feb 18 06:55:12 2008
New Revision: 628767
URL: http://svn.apache.org/viewvc?rev=628767&view=rev
Log:
MNG-3407 : improve mirrorOf to support pattern based repository URL
Modified:
maven/components/branches/maven-2.0.x/maven-artifact-manager/src/main/java/org/apache/maven/artifact/manager/DefaultWagonManager.java
maven/components/branches/maven-2.0.x/maven-artifact-manager/src/test/java/org/apache/maven/artifact/manager/DefaultWagonManagerTest.java
Modified:
maven/components/branches/maven-2.0.x/maven-artifact-manager/src/main/java/org/apache/maven/artifact/manager/DefaultWagonManager.java
URL:
http://svn.apache.org/viewvc/maven/components/branches/maven-2.0.x/maven-artifact-manager/src/main/java/org/apache/maven/artifact/manager/DefaultWagonManager.java?rev=628767&r1=628766&r2=628767&view=diff
==============================================================================
---
maven/components/branches/maven-2.0.x/maven-artifact-manager/src/main/java/org/apache/maven/artifact/manager/DefaultWagonManager.java
(original)
+++
maven/components/branches/maven-2.0.x/maven-artifact-manager/src/main/java/org/apache/maven/artifact/manager/DefaultWagonManager.java
Mon Feb 18 06:55:12 2008
@@ -61,6 +61,7 @@
import java.util.Iterator;
import java.util.List;
import java.util.Map;
+import java.text.MessageFormat;
public class DefaultWagonManager
extends AbstractLogEnabled
@@ -710,6 +711,16 @@
if ( repository == null )
{
repository = (ArtifactRepository) mirrors.get( WILDCARD );
+ if ( repository != null )
+ {
+ String url = repository.getUrl();
+ if ( url.indexOf( "{0}" ) >= 0 )
+ {
+ url = MessageFormat.format(
repository.getUrl(), new Object[] { mirrorOf } );
+ repository = new DefaultArtifactRepository(
mirrorOf, url, null );
+ mirrors.put( mirrorOf, repository );
+ }
+ }
}
return repository;
}
Modified:
maven/components/branches/maven-2.0.x/maven-artifact-manager/src/test/java/org/apache/maven/artifact/manager/DefaultWagonManagerTest.java
URL:
http://svn.apache.org/viewvc/maven/components/branches/maven-2.0.x/maven-artifact-manager/src/test/java/org/apache/maven/artifact/manager/DefaultWagonManagerTest.java?rev=628767&r1=628766&r2=628767&view=diff
==============================================================================
---
maven/components/branches/maven-2.0.x/maven-artifact-manager/src/test/java/org/apache/maven/artifact/manager/DefaultWagonManagerTest.java
(original)
+++
maven/components/branches/maven-2.0.x/maven-artifact-manager/src/test/java/org/apache/maven/artifact/manager/DefaultWagonManagerTest.java
Mon Feb 18 06:55:12 2008
@@ -43,6 +43,15 @@
wagonManager = (WagonManager) lookup( WagonManager.ROLE );
}
+ public void testMappedMirror()
+ throws Exception
+ {
+ DefaultWagonManager manager = (DefaultWagonManager)
wagonManager;
+ manager.addMirror( "wildcar", "*",
"http://archiva/repository/{0}" );
+ assertEquals( "http://archiva/repository/central",
manager.getMirror( "central" ).getUrl() );
+ assertEquals( "http://archiva/repository/apache.snapshots",
manager.getMirror( "apache.snapshots" ).getUrl() );
+ }
+
public void testDefaultWagonManager()
throws Exception
{