You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by ca...@apache.org on 2006/06/01 00:15:55 UTC
svn commit: r410686 -
/maven/sandbox/plugins/maven-maven1-plugin/src/main/java/org/apache/maven/maven1converter/plugins/AbstractPluginConfigurationConverter.java
Author: carlos
Date: Wed May 31 15:15:54 2006
New Revision: 410686
URL: http://svn.apache.org/viewvc?rev=410686&view=rev
Log:
[MNG-2327] Don't add plugins twice
Modified:
maven/sandbox/plugins/maven-maven1-plugin/src/main/java/org/apache/maven/maven1converter/plugins/AbstractPluginConfigurationConverter.java
Modified: maven/sandbox/plugins/maven-maven1-plugin/src/main/java/org/apache/maven/maven1converter/plugins/AbstractPluginConfigurationConverter.java
URL: http://svn.apache.org/viewvc/maven/sandbox/plugins/maven-maven1-plugin/src/main/java/org/apache/maven/maven1converter/plugins/AbstractPluginConfigurationConverter.java?rev=410686&r1=410685&r2=410686&view=diff
==============================================================================
--- maven/sandbox/plugins/maven-maven1-plugin/src/main/java/org/apache/maven/maven1converter/plugins/AbstractPluginConfigurationConverter.java (original)
+++ maven/sandbox/plugins/maven-maven1-plugin/src/main/java/org/apache/maven/maven1converter/plugins/AbstractPluginConfigurationConverter.java Wed May 31 15:15:54 2006
@@ -17,6 +17,7 @@
*/
import java.io.StringReader;
+import java.util.Iterator;
import java.util.Properties;
import org.apache.maven.model.Model;
@@ -27,6 +28,7 @@
/**
* @author Fabrizio Giustina
+ * @author Dennis Lundberg
* @version $Id$
*/
public abstract class AbstractPluginConfigurationConverter
@@ -40,13 +42,10 @@
}
public void convertConfiguration( Model v4Model, org.apache.maven.model.v3_0_0.Model v3Model,
- Properties projectProperties )
+ Properties projectProperties )
throws MojoExecutionException
{
-
- Plugin plugin = new Plugin();
- plugin.setGroupId( getGroupId() );
- plugin.setArtifactId( getArtifactId() );
+ boolean addPlugin = false;
Xpp3Dom configuration = newXpp3Dom( "<configuration></configuration>" );
@@ -54,10 +53,44 @@
if ( configuration.getChildCount() > 0 )
{
+ Plugin plugin = findPlugin( v4Model, getGroupId(), getArtifactId() );
+ if ( plugin == null )
+ {
+ addPlugin = true;
+ plugin = new Plugin();
+ plugin.setGroupId( getGroupId() );
+ plugin.setArtifactId( getArtifactId() );
+ }
+
plugin.setConfiguration( configuration );
- v4Model.getBuild().addPlugin( plugin );
+
+ if ( addPlugin )
+ {
+ v4Model.getBuild().addPlugin( plugin );
+ }
}
+ }
+ /**
+ * Try to find a plugin in a model.
+ *
+ * @param model Look for the plugin in this model
+ * @param groupId The groupId for the plugin to look for
+ * @param artifactId The artifactId for the plugin to look for
+ * @return The requested plugin if it exists, otherwise null
+ */
+ private Plugin findPlugin( Model model, String groupId, String artifactId )
+ {
+ Iterator iterator = model.getBuild().getPlugins().iterator();
+ while ( iterator.hasNext() )
+ {
+ Plugin plugin = (Plugin) iterator.next();
+ if ( plugin.getGroupId().equals( groupId ) && plugin.getArtifactId().equals( artifactId ) )
+ {
+ return plugin;
+ }
+ }
+ return null;
}
protected abstract void buildConfiguration( Xpp3Dom configuration, org.apache.maven.model.v3_0_0.Model v3Model,