Author: sisbell Date: Wed Mar 25 01:39:38 2009 New Revision: 758121 URL: http://svn.apache.org/viewvc?rev=758121&view=rev Log: [MNG-2591 - Plugin config inheritance.
Modified: maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/processor/ModelProcessor.java maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/processor/PluginProcessor.java maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/processor/PluginsManagementProcessor.java maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/processor/ProcessorContext.java maven/components/trunk/maven-project/src/test/java/org/apache/maven/project/PomConstructionTest.java Modified: maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java?rev=758121&r1=758120&r2=758121&view=diff ============================================================================== --- maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java (original) +++ maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java Wed Mar 25 01:39:38 2009 @@ -257,20 +257,7 @@ { request.setRemoteRepostories( new ArrayList<ArtifactRepository>() ); } - /* - if(project.getRemoteArtifactRepositories() == null) - { - try - { - System.out.println(convertToDomainModel(project.getModel(), true).asString()); - } - catch ( IOException e ) - { - // TODO Auto-generated catch block - e.printStackTrace(); - } - } - */ + ArtifactResolutionResult result = repositorySystem.resolve( request ); if ( result.hasExceptions() ) @@ -323,19 +310,21 @@ throw new ProjectBuildingException( projectId, "Failed to activate external profiles.", projectDescriptor, e ); } } - - try - { - PomClassicDomainModel dm = ProcessorContext.mergeProfilesIntoModel( projectProfiles, model, false ); - ProcessorContext.interpolateModelProperties( dm.getModelProperties(), - new ArrayList<InterpolatorProperty>(), dm ); - dm = new PomClassicDomainModel( dm.getModelProperties(), false ); - model = dm.getModel(); - } - catch ( IOException e ) + if(!projectProfiles.isEmpty()) { + try + { + PomClassicDomainModel dm = ProcessorContext.mergeProfilesIntoModel( projectProfiles, model, false ); + ProcessorContext.interpolateModelProperties( dm.getModelProperties(), + new ArrayList<InterpolatorProperty>(), dm ); + dm = new PomClassicDomainModel( dm.getModelProperties(), false ); + model = dm.getModel(); + } + catch ( IOException e ) + { - throw new ProjectBuildingException(projectId, "", projectDescriptor, e); + throw new ProjectBuildingException(projectId, "", projectDescriptor, e); + } } MavenProject project; Modified: maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/processor/ModelProcessor.java URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/processor/ModelProcessor.java?rev=758121&r1=758120&r2=758121&view=diff ============================================================================== --- maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/processor/ModelProcessor.java (original) +++ maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/processor/ModelProcessor.java Wed Mar 25 01:39:38 2009 @@ -21,7 +21,9 @@ import java.util.ArrayList; import java.util.Collection; +import java.util.HashMap; import java.util.List; +import java.util.Map; import org.apache.maven.model.Dependency; import org.apache.maven.model.DependencyManagement; @@ -43,7 +45,7 @@ public void process( Object parent, Object child, Object target, boolean isChildMostSpecialized ) { super.process( parent, child, target, isChildMostSpecialized ); - + Model c = (Model) child; Model t = (Model) target; Model p = null; @@ -151,6 +153,5 @@ } t.getDependencyManagement().getDependencies().addAll( mngDeps ); } - } } Modified: maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/processor/PluginProcessor.java URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/processor/PluginProcessor.java?rev=758121&r1=758120&r2=758121&view=diff ============================================================================== --- maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/processor/PluginProcessor.java (original) +++ maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/processor/PluginProcessor.java Wed Mar 25 01:39:38 2009 @@ -189,7 +189,7 @@ //TODO: Not copying if(target.getConfiguration() != null) { - target.setConfiguration( Xpp3Dom.mergeXpp3Dom( (Xpp3Dom) source.getConfiguration(), (Xpp3Dom) target.getConfiguration() )); + target.setConfiguration( Xpp3Dom.mergeXpp3Dom( (Xpp3Dom) source.getConfiguration(), (Xpp3Dom) target.getConfiguration() )); } else { Modified: maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/processor/PluginsManagementProcessor.java URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/processor/PluginsManagementProcessor.java?rev=758121&r1=758120&r2=758121&view=diff ============================================================================== --- maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/processor/PluginsManagementProcessor.java (original) +++ maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/processor/PluginsManagementProcessor.java Wed Mar 25 01:39:38 2009 @@ -44,7 +44,7 @@ { for(Plugin targetDep : targetPlugin) { //PluginManagement is first in ordering - if(match(depMng, targetDep)) + if(match(depMng, targetDep) ) { copy(depMng, targetDep ); } Modified: maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/processor/ProcessorContext.java URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/processor/ProcessorContext.java?rev=758121&r1=758120&r2=758121&view=diff ============================================================================== --- maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/processor/ProcessorContext.java (original) +++ maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/processor/ProcessorContext.java Wed Mar 25 01:39:38 2009 @@ -251,12 +251,14 @@ } // Plugin Management + PluginsManagementProcessor procMng = new PluginsManagementProcessor(); if ( target.getBuild() != null && target.getBuild().getPluginManagement() != null) { procMng.process( null, new ArrayList<Plugin>( target.getBuild().getPluginManagement().getPlugins() ), target.getBuild().getPlugins(), true ); } + return target; } Modified: maven/components/trunk/maven-project/src/test/java/org/apache/maven/project/PomConstructionTest.java URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-project/src/test/java/org/apache/maven/project/PomConstructionTest.java?rev=758121&r1=758120&r2=758121&view=diff ============================================================================== --- maven/components/trunk/maven-project/src/test/java/org/apache/maven/project/PomConstructionTest.java (original) +++ maven/components/trunk/maven-project/src/test/java/org/apache/maven/project/PomConstructionTest.java Wed Mar 25 01:39:38 2009 @@ -258,7 +258,6 @@ throws Exception { PomTestWrapper pom = buildPom( "equal-plugin-exec-ids" ); - System.out.println(pom.getDomainModel().asString()); assertEquals( "maven-it-plugin-a", pom.getValue( "build/plugins[1]/artifactId" ) ); assertEquals( 1, ( (List<?>) pom.getValue( "build/plugins[1]/executions" ) ).size() ); assertEquals( "maven-it-plugin-b", pom.getValue( "build/plugins[2]/artifactId" ) ); @@ -498,7 +497,7 @@ throws Exception { PomTestWrapper pom = buildPom( "merged-plugin-class-path-order/wo-plugin-mngt/sub" ); - System.out.println(pom.getDomainModel().asString()); + assertEquals( 5, ( (List<?>) pom.getValue( "build/plugins[1]/dependencies" ) ).size() ); assertNotNull( pom.getValue( "build/plugins[1]/dependencies[1]" )); assertEquals( "c", pom.getValue( "build/plugins[1]/dependencies[1]/artifactId" ) ); @@ -627,7 +626,7 @@ throws Exception { PomTestWrapper pom = buildPom( "unprefixed-expression-interpolation/child" ); - System.out.println(pom.getDomainModel().asString()); + assertEquals( pom.getBasedir(), new File( pom.getValue( "properties/projectDir" ).toString() ) ); assertEquals( "org.apache.maven.its.mng3831.child", pom.getValue( "properties/projectGroupId" ) ); @@ -761,11 +760,12 @@ assertEquals( "PASSED-4", pom.getValue( prefix + "listParam/listParam[4]" ) ); } - /* FIXME: MNG-2591 + /* FIXME: MNG-2591*/ public void testAppendOfInheritedPluginConfiguration() throws Exception { PomTestWrapper pom = buildPom( "plugin-config-append/subproject" ); + String prefix = "build/plugins[1]/configuration/"; assertEquals( "PARENT-1", pom.getValue( prefix + "stringParams/stringParam[1]" ) ); assertEquals( "PARENT-3", pom.getValue( prefix + "stringParams/stringParam[2]" ) );