You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by jv...@apache.org on 2009/02/20 01:23:21 UTC
svn commit: r746066 [2/2] - in /maven/components/branches/MNG-3932: ./
apache-maven/ maven-compat/src/main/java/org/apache/maven/artifact/
maven-compat/src/main/java/org/apache/maven/artifact/manager/
maven-compat/src/main/java/org/apache/maven/project...
Modified: maven/components/branches/MNG-3932/maven-project/src/main/java/org/apache/maven/profiles/DefaultProfileManager.java
URL: http://svn.apache.org/viewvc/maven/components/branches/MNG-3932/maven-project/src/main/java/org/apache/maven/profiles/DefaultProfileManager.java?rev=746066&r1=746065&r2=746066&view=diff
==============================================================================
--- maven/components/branches/MNG-3932/maven-project/src/main/java/org/apache/maven/profiles/DefaultProfileManager.java (original)
+++ maven/components/branches/MNG-3932/maven-project/src/main/java/org/apache/maven/profiles/DefaultProfileManager.java Fri Feb 20 00:23:19 2009
@@ -181,6 +181,7 @@
return getActiveProfiles( null );
}
+ // TODO: Portions of this logic are duplicated in o.a.m.p.b.p.ProfileContext, something is wrong here
public List getActiveProfiles( Model model )
throws ProfileActivationException
{
Propchange: maven/components/branches/MNG-3932/maven-project/src/main/java/org/apache/maven/profiles/MavenProfilesBuilder.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Feb 20 00:23:19 2009
@@ -3,4 +3,4 @@
/maven/components/branches/maven-2.0.x/maven-profile/src/main/java/org/apache/maven/profiles/MavenProfilesBuilder.java:679206
/maven/components/branches/sisbell-plugin-manager/maven-project/src/main/java/org/apache/maven/profiles/MavenProfilesBuilder.java:738973-739966
/maven/components/sisbell-plugin-manager/maven-project/src/main/java/org/apache/maven/profiles/MavenProfilesBuilder.java:738757-738972
-/maven/components/trunk/maven-project/src/main/java/org/apache/maven/profiles/MavenProfilesBuilder.java:739772-740199,740316-741812,742231-742684,742726-745532
+/maven/components/trunk/maven-project/src/main/java/org/apache/maven/profiles/MavenProfilesBuilder.java:739772-740199,740316-741812,742231-742684,742726-745532,745632-746028
Propchange: maven/components/branches/MNG-3932/maven-project/src/main/java/org/apache/maven/profiles/ProfilesConversionUtils.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Feb 20 00:23:19 2009
@@ -3,4 +3,4 @@
/maven/components/branches/maven-2.0.x/maven-profile/src/main/java/org/apache/maven/profiles/ProfilesConversionUtils.java:679206
/maven/components/branches/sisbell-plugin-manager/maven-project/src/main/java/org/apache/maven/profiles/ProfilesConversionUtils.java:738973-739966
/maven/components/sisbell-plugin-manager/maven-project/src/main/java/org/apache/maven/profiles/ProfilesConversionUtils.java:738757-738972
-/maven/components/trunk/maven-project/src/main/java/org/apache/maven/profiles/ProfilesConversionUtils.java:739772-740199,740316-741812,742231-742684,742726-745532
+/maven/components/trunk/maven-project/src/main/java/org/apache/maven/profiles/ProfilesConversionUtils.java:739772-740199,740316-741812,742231-742684,742726-745532,745632-746028
Modified: maven/components/branches/MNG-3932/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java
URL: http://svn.apache.org/viewvc/maven/components/branches/MNG-3932/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java?rev=746066&r1=746065&r2=746066&view=diff
==============================================================================
--- maven/components/branches/MNG-3932/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java (original)
+++ maven/components/branches/MNG-3932/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java Fri Feb 20 00:23:19 2009
@@ -19,8 +19,7 @@
* under the License.
*/
-import java.io.File;
-import java.io.IOException;
+import java.io.*;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.HashMap;
@@ -40,6 +39,7 @@
import org.apache.maven.model.Build;
import org.apache.maven.model.Model;
import org.apache.maven.model.Profile;
+import org.apache.maven.model.io.xpp3.MavenXpp3Writer;
import org.apache.maven.profiles.MavenProfilesBuilder;
import org.apache.maven.profiles.ProfileManager;
import org.apache.maven.profiles.activation.DefaultProfileActivationContext;
@@ -47,10 +47,7 @@
import org.apache.maven.profiles.activation.ProfileActivationException;
import org.apache.maven.profiles.build.ProfileAdvisor;
import org.apache.maven.project.artifact.InvalidDependencyVersionException;
-import org.apache.maven.project.builder.DefaultPomArtifactResolver;
-import org.apache.maven.project.builder.PomArtifactResolver;
-import org.apache.maven.project.builder.PomInterpolatorTag;
-import org.apache.maven.project.builder.ProjectBuilder;
+import org.apache.maven.project.builder.*;
import org.apache.maven.project.validation.ModelValidationResult;
import org.apache.maven.project.validation.ModelValidator;
import org.apache.maven.shared.model.InterpolatorProperty;
@@ -59,6 +56,7 @@
import org.codehaus.plexus.logging.LogEnabled;
import org.codehaus.plexus.logging.Logger;
import org.codehaus.plexus.util.StringUtils;
+import org.codehaus.plexus.util.WriterFactory;
/**
Propchange: maven/components/branches/MNG-3932/maven-project/src/main/mdo/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Feb 20 00:23:19 2009
@@ -3,4 +3,4 @@
/maven/components/branches/maven-2.0.x/maven-profile/src/main/mdo:679206
/maven/components/branches/sisbell-plugin-manager/maven-project/src/main/mdo:738973-739966
/maven/components/sisbell-plugin-manager/maven-project/src/main/mdo:738757-738972
-/maven/components/trunk/maven-project/src/main/mdo:739772-740199,740316-741812,742231-742684,742726-745532
+/maven/components/trunk/maven-project/src/main/mdo:739772-740199,740316-741812,742231-742684,742726-745532,745632-746028
Modified: maven/components/branches/MNG-3932/maven-project/src/test/java/org/apache/maven/project/builder/PomConstructionTest.java
URL: http://svn.apache.org/viewvc/maven/components/branches/MNG-3932/maven-project/src/test/java/org/apache/maven/project/builder/PomConstructionTest.java?rev=746066&r1=746065&r2=746066&view=diff
==============================================================================
--- maven/components/branches/MNG-3932/maven-project/src/test/java/org/apache/maven/project/builder/PomConstructionTest.java (original)
+++ maven/components/branches/MNG-3932/maven-project/src/test/java/org/apache/maven/project/builder/PomConstructionTest.java Fri Feb 20 00:23:19 2009
@@ -29,15 +29,12 @@
import org.apache.maven.profiles.activation.DefaultProfileActivationContext;
import org.apache.maven.profiles.activation.ProfileActivationContext;
import org.apache.maven.model.Model;
-import org.apache.maven.model.Plugin;
import org.apache.maven.model.io.xpp3.MavenXpp3Reader;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.repository.DefaultArtifactRepository;
import org.apache.maven.artifact.repository.layout.DefaultRepositoryLayout;
import org.apache.maven.project.harness.PomTestWrapper;
-import org.apache.maven.project.MavenProjectBuilder;
-import org.apache.maven.project.ProjectBuilderConfiguration;
-import org.apache.maven.project.DefaultProjectBuilderConfiguration;
+import org.apache.maven.project.*;
import org.codehaus.plexus.PlexusTestCase;
import org.codehaus.plexus.util.xml.pull.XmlPullParserException;
@@ -55,8 +52,6 @@
private MavenProjectBuilder mavenProjectBuilder;
- private Mixer mixer;
-
private MavenTools mavenTools;
private PomArtifactResolver pomArtifactResolver;
@@ -72,7 +67,6 @@
testMixinDirectory = new File( getBasedir(), BASE_MIXIN_DIR );
mavenProjectBuilder = lookup( MavenProjectBuilder.class );
projectBuilder = lookup( ProjectBuilder.class );
- mixer = (Mixer) projectBuilder;
mavenTools = lookup( MavenTools.class );
pomArtifactResolver = new PomArtifactResolver()
{
@@ -86,6 +80,17 @@
};
}
+ /**
+ * Will throw exception if doesn't find parent(s) in build
+ *
+ * @throws Exception
+ */
+ public void testParentInheritance()
+ throws Exception
+ {
+ buildPom( "parent-inheritance/sub" );
+ }
+
/*MNG-3995*/
public void testExecutionConfigurationJoin()
throws Exception
@@ -102,17 +107,6 @@
assertEquals( "my.property", pom.getValue( "build/plugins[1]/configuration[1]/systemProperties[1]/property[1]/name" ) );
}
- public void testPluginMergeSimple()
- throws Exception
- {
- Model model = buildPom( "plugin-merge-simple" ).getDomainModel().getModel();
- Model plugin = buildMixin("plugins/simple");
-
- model = mixer.mixPlugin((Plugin) plugin.getBuild().getPlugins().get(0), model);
-
- PomTestWrapper pom = new PomTestWrapper( model );
- assertEquals( "FAILED", pom.getValue( "build/plugins[1]/configuration[1]/propertiesFile" ) );
- }
// Some better conventions for the test poms needs to be created and each of these tests
// that represent a verification of a specification item needs to be a couple lines at most.
@@ -129,7 +123,7 @@
PomClassicDomainModel model = projectBuilder.buildModel( pom, null, resolver );
// This should be 2
//assertEquals( 2, model.getLineageCount() );
- PomTestWrapper tester = new PomTestWrapper( model );
+ PomTestWrapper tester = new PomTestWrapper( (PomClassicDomainModel) model );
assertModelEquals( tester, "child-descriptor", "build/plugins[1]/executions[1]/goals[1]" );
}
@@ -886,7 +880,7 @@
{
pomFile = new File( pomFile, "pom.xml" );
}
- return new PomTestWrapper( pomFile, projectBuilder.buildModel( pomFile, null, pomArtifactResolver ) );
+ return new PomTestWrapper( pomFile, (PomClassicDomainModel) projectBuilder.buildModel( pomFile, null, pomArtifactResolver ) );
}
private PomTestWrapper buildPomFromMavenProject( String pomPath, String profileId )
Modified: maven/components/branches/MNG-3932/maven-project/src/test/java/org/apache/maven/project/harness/PomTestWrapper.java
URL: http://svn.apache.org/viewvc/maven/components/branches/MNG-3932/maven-project/src/test/java/org/apache/maven/project/harness/PomTestWrapper.java?rev=746066&r1=746065&r2=746066&view=diff
==============================================================================
--- maven/components/branches/MNG-3932/maven-project/src/test/java/org/apache/maven/project/harness/PomTestWrapper.java (original)
+++ maven/components/branches/MNG-3932/maven-project/src/test/java/org/apache/maven/project/harness/PomTestWrapper.java Fri Feb 20 00:23:19 2009
@@ -19,8 +19,7 @@
* under the License.
*/
-import java.io.File;
-import java.io.IOException;
+import java.io.*;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
@@ -29,9 +28,13 @@
import org.apache.commons.jxpath.JXPathContext;
import org.apache.commons.jxpath.ri.JXPathContextReferenceImpl;
import org.apache.maven.model.Model;
+import org.apache.maven.model.io.xpp3.MavenXpp3Writer;
+import org.apache.maven.model.io.xpp3.MavenXpp3Reader;
import org.apache.maven.project.builder.PomClassicDomainModel;
import org.apache.maven.project.MavenProject;
import org.apache.maven.shared.model.ModelProperty;
+import org.codehaus.plexus.util.WriterFactory;
+import org.codehaus.plexus.util.xml.pull.XmlPullParserException;
public class PomTestWrapper
{
@@ -64,7 +67,11 @@
}
this.domainModel = domainModel;
this.pomFile = pomFile;
- context = JXPathContext.newContext( domainModel.getModel() );
+ try {
+ context = JXPathContext.newContext( new MavenXpp3Reader().read(domainModel.getInputStream()));
+ } catch (XmlPullParserException e) {
+ throw new IOException(e.getMessage());
+ }
}
public PomTestWrapper( File pomFile, MavenProject mavenProject )
@@ -99,19 +106,11 @@
}
this.domainModel = new PomClassicDomainModel( file );
- context = JXPathContext.newContext( domainModel.getModel() );
- }
-
- public PomTestWrapper( Model model )
- throws IOException
- {
- if ( model == null )
- {
- throw new IllegalArgumentException( "model: null" );
+ try {
+ context = JXPathContext.newContext( new MavenXpp3Reader().read(domainModel.getInputStream()));
+ } catch (XmlPullParserException e) {
+ throw new IOException(e.getMessage());
}
-
- this.domainModel = new PomClassicDomainModel( model );
- context = JXPathContext.newContext( domainModel.getModel() );
}
public MavenProject getMavenProject()
@@ -124,7 +123,7 @@
if(domainModel == null && mavenProject != null)
{
try {
- return new PomClassicDomainModel(mavenProject.getModel());
+ return convertToDomainModel(mavenProject.getModel());
} catch (IOException e) {
}
@@ -133,6 +132,30 @@
return this.domainModel;
}
+ private PomClassicDomainModel convertToDomainModel(Model model) throws IOException
+ {
+ if ( model == null )
+ {
+ throw new IllegalArgumentException( "model: null" );
+ }
+ ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ Writer out = null;
+ MavenXpp3Writer writer = new MavenXpp3Writer();
+ try
+ {
+ out = WriterFactory.newXmlWriter( baos );
+ writer.write( out, model );
+ }
+ finally
+ {
+ if ( out != null )
+ {
+ out.close();
+ }
+ }
+ return new PomClassicDomainModel(new ByteArrayInputStream(baos.toByteArray()));
+ }
+
public File getBasedir()
{
return ( pomFile != null ) ? pomFile.getParentFile() : null;
Modified: maven/components/branches/MNG-3932/maven-project/src/test/resources/org/apache/maven/project/ProjectClasspathTest.xml
URL: http://svn.apache.org/viewvc/maven/components/branches/MNG-3932/maven-project/src/test/resources/org/apache/maven/project/ProjectClasspathTest.xml?rev=746066&r1=746065&r2=746066&view=diff
==============================================================================
--- maven/components/branches/MNG-3932/maven-project/src/test/resources/org/apache/maven/project/ProjectClasspathTest.xml (original)
+++ maven/components/branches/MNG-3932/maven-project/src/test/resources/org/apache/maven/project/ProjectClasspathTest.xml Fri Feb 20 00:23:19 2009
@@ -57,9 +57,9 @@
</requirements>
</component>
<component>
- <role>org.apache.maven.project.builder.ProjectBuilder</role>
+ <role>org.apache.maven.project.ProjectBuilder</role>
<role-hint>default</role-hint>
- <implementation>org.apache.maven.project.builder.impl.DefaultProjectBuilder</implementation>
+ <implementation>org.apache.maven.project.DefaultProjectBuilder</implementation>
<requirements>
<requirement>
<role>org.apache.maven.artifact.factory.ArtifactFactory</role>
@@ -75,7 +75,7 @@
<implementation>org.apache.maven.project.TestProjectBuilder</implementation>
<requirements>
<requirement>
- <role>org.apache.maven.project.builder.ProjectBuilder</role>
+ <role>org.apache.maven.project.ProjectBuilder</role>
</requirement>
<requirement>
<role>org.apache.maven.profiles.build.ProfileAdvisor</role>
Modified: maven/components/branches/MNG-3932/maven-project/src/test/resources/org/apache/maven/project/canonical/CanonicalProjectBuilderTest.xml
URL: http://svn.apache.org/viewvc/maven/components/branches/MNG-3932/maven-project/src/test/resources/org/apache/maven/project/canonical/CanonicalProjectBuilderTest.xml?rev=746066&r1=746065&r2=746066&view=diff
==============================================================================
--- maven/components/branches/MNG-3932/maven-project/src/test/resources/org/apache/maven/project/canonical/CanonicalProjectBuilderTest.xml (original)
+++ maven/components/branches/MNG-3932/maven-project/src/test/resources/org/apache/maven/project/canonical/CanonicalProjectBuilderTest.xml Fri Feb 20 00:23:19 2009
@@ -60,9 +60,9 @@
</requirements>
</component>
<component>
- <role>org.apache.maven.project.builder.ProjectBuilder</role>
+ <role>org.apache.maven.project.ProjectBuilder</role>
<role-hint>default</role-hint>
- <implementation>org.apache.maven.project.builder.impl.DefaultProjectBuilder</implementation>
+ <implementation>org.apache.maven.project.DefaultProjectBuilder</implementation>
<requirements>
<requirement>
<role>org.apache.maven.artifact.factory.ArtifactFactory</role>
@@ -78,7 +78,7 @@
<implementation>org.apache.maven.project.TestProjectBuilder</implementation>
<requirements>
<requirement>
- <role>org.apache.maven.project.builder.ProjectBuilder</role>
+ <role>org.apache.maven.project.ProjectBuilder</role>
</requirement>
<requirement>
<role>org.apache.maven.profiles.build.ProfileAdvisor</role>