You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@maven.apache.org by jd...@apache.org on 2005/04/28 06:21:12 UTC
svn commit: r165096 -
/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/injection/DefaultModelDefaultsInjector.java
Author: jdcasey
Date: Wed Apr 27 21:21:11 2005
New Revision: 165096
URL: http://svn.apache.org/viewcvs?rev=165096&view=rev
Log:
Corrected goal and plugin configuration injection (from managed info).
Modified:
maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/injection/DefaultModelDefaultsInjector.java
Modified: maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/injection/DefaultModelDefaultsInjector.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/injection/DefaultModelDefaultsInjector.java?rev=165096&r1=165095&r2=165096&view=diff
==============================================================================
--- maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/injection/DefaultModelDefaultsInjector.java (original)
+++ maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/injection/DefaultModelDefaultsInjector.java Wed Apr 27 21:21:11 2005
@@ -18,6 +18,7 @@
import org.apache.maven.model.Dependency;
import org.apache.maven.model.DependencyManagement;
+import org.apache.maven.model.Goal;
import org.apache.maven.model.Model;
import org.apache.maven.model.Plugin;
import org.apache.maven.model.PluginManagement;
@@ -89,18 +90,49 @@
{
plugin.setVersion( def.getVersion() );
}
-
- List pluginGoals = plugin.getGoals();
- if( pluginGoals == null || pluginGoals.isEmpty() )
+
+ Map defaultGoals = new TreeMap();
+
+ List defGoalList = def.getGoals();
+
+ if ( defGoalList != null )
{
- plugin.setGoals( def.getGoals() );
+ for ( Iterator it = defGoalList.iterator(); it.hasNext(); )
+ {
+ Goal defaultGoal = (Goal) it.next();
+
+ defaultGoals.put( defaultGoal.getId(), defaultGoal );
+ }
}
-
- Xpp3Dom pluginConfiguration = (Xpp3Dom) plugin.getConfiguration();
- if( pluginConfiguration == null )
+
+ List pluginGoals = plugin.getGoals();
+
+ if ( pluginGoals != null )
{
- plugin.setConfiguration( def.getConfiguration() );
+ for ( Iterator it = pluginGoals.iterator(); it.hasNext(); )
+ {
+ Goal pluginGoal = (Goal) it.next();
+
+ Goal defaultGoal = (Goal) defaultGoals.get( pluginGoal.getId() );
+
+ if ( defaultGoal != null )
+ {
+ Xpp3Dom pluginGoalConfig = (Xpp3Dom) pluginGoal.getConfiguration();
+ Xpp3Dom defaultGoalConfig = (Xpp3Dom) defaultGoal.getConfiguration();
+
+ pluginGoalConfig = Xpp3Dom.mergeXpp3Dom( pluginGoalConfig, defaultGoalConfig );
+
+ pluginGoal.setConfiguration( pluginGoalConfig );
+ }
+ }
}
+
+ Xpp3Dom pluginConfiguration = (Xpp3Dom) plugin.getConfiguration();
+ Xpp3Dom defaultConfiguration = (Xpp3Dom) def.getConfiguration();
+
+ pluginConfiguration = Xpp3Dom.mergeXpp3Dom( pluginConfiguration, defaultConfiguration );
+
+ plugin.setConfiguration( pluginConfiguration );
}
private void injectDependencyDefaults( List dependencies, DependencyManagement dependencyManagement )
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org