Author: brianf
Date: Sat Apr  7 14:04:41 2007
New Revision: 526483

URL: http://svn.apache.org/viewvc?view=rev&rev=526483
Log:
MNG-2926 - fixed plugin prefix searching order.

Modified:
    
maven/components/branches/maven-2.0.x/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginMappingManager.java

Modified: 
maven/components/branches/maven-2.0.x/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginMappingManager.java
URL: 
http://svn.apache.org/viewvc/maven/components/branches/maven-2.0.x/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginMappingManager.java?view=diff&rev=526483&r1=526482&r2=526483
==============================================================================
--- 
maven/components/branches/maven-2.0.x/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginMappingManager.java
 (original)
+++ 
maven/components/branches/maven-2.0.x/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginMappingManager.java
 Sat Apr  7 14:04:41 2007
@@ -29,6 +29,7 @@
 import org.codehaus.plexus.logging.AbstractLogEnabled;
 
 import java.util.ArrayList;
+import java.util.Collections;
 import java.util.HashMap;
 import java.util.Iterator;
 import java.util.List;
@@ -36,9 +37,10 @@
 
 /**
  * Manage plugin prefix to artifact ID mapping associations.
- *
+ * 
  * @author <a href="mailto:[EMAIL PROTECTED]">Brett Porter</a>
- * @version $Id$
+ * @version $Id: DefaultPluginMappingManager.java 495147 2007-01-11 07:47:53Z
+ *          jvanzyl $
  */
 public class DefaultPluginMappingManager
     extends AbstractLogEnabled
@@ -79,7 +81,7 @@
         for ( Iterator it = pluginGroupIds.iterator(); it.hasNext(); )
         {
             String groupId = (String) it.next();
-
+            getLogger().debug( "Loading plugin prefixes from group: " + 
groupId );
             try
             {
                 loadPluginMappings( groupId, pluginRepositories, 
localRepository );
@@ -108,16 +110,21 @@
                 Plugin mapping = (Plugin) pluginIterator.next();
 
                 String prefix = mapping.getPrefix();
+                
+                //if the prefix has already been found, don't add it again.
+                //this is to preserve the correct ordering of prefix searching 
(MNG-2926)
+                if ( !pluginDefinitionsByPrefix.containsKey( prefix ) )
+                {
+                    String artifactId = mapping.getArtifactId();
 
-                String artifactId = mapping.getArtifactId();
-
-                org.apache.maven.model.Plugin plugin = new 
org.apache.maven.model.Plugin();
+                    org.apache.maven.model.Plugin plugin = new 
org.apache.maven.model.Plugin();
 
-                plugin.setGroupId( metadata.getGroupId() );
+                    plugin.setGroupId( metadata.getGroupId() );
 
-                plugin.setArtifactId( artifactId );
+                    plugin.setArtifactId( artifactId );
 
-                pluginDefinitionsByPrefix.put( prefix, plugin );
+                    pluginDefinitionsByPrefix.put( prefix, plugin );
+                }
             }
         }
     }


Reply via email to