You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by si...@apache.org on 2008/11/21 05:49:46 UTC
svn commit: r719472 - in /maven/components/trunk: ./ maven-core/
maven-core/src/main/java/org/apache/maven/plugin/
maven-embedder/src/main/java/org/apache/maven/embedder/execution/
maven-project/ maven-project/src/main/java/org/apache/maven/project/bui...
Author: sisbell
Date: Thu Nov 20 20:49:46 2008
New Revision: 719472
URL: http://svn.apache.org/viewvc?rev=719472&view=rev
Log:
Merge of sisbell-maven-3.0-mercury branch to trunk. Includes maven-project-builder component, which breaks out some of the independent project builder classes, so that Mercury does not need to pull in the entire trunk.
Added:
maven/components/trunk/maven-shared-model/src/main/java/org/apache/maven/shared/model/DomainModelFactory.java
Removed:
maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/builder/ArtifactModelContainerFactory.java
maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/builder/IdModelContainerFactory.java
maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/builder/PluginExecutionIdModelContainerFactory.java
maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/builder/PluginReportSetIdModelContainerFactory.java
maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/builder/PomInterpolatorTag.java
maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/builder/Profile.java
maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/builder/ProjectEventListeners.java
maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/builder/ProjectUri.java
maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/builder/listeners/
Modified:
maven/components/trunk/maven-core/pom.xml
maven/components/trunk/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManager.java
maven/components/trunk/maven-embedder/src/main/java/org/apache/maven/embedder/execution/DefaultMavenExecutionRequestPopulator.java
maven/components/trunk/maven-project/pom.xml
maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/builder/PomClassicDomainModel.java
maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/builder/PomClassicTransformer.java
maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/builder/impl/DefaultProjectBuilder.java
maven/components/trunk/maven-shared-model/src/main/java/org/apache/maven/shared/model/DomainModel.java
maven/components/trunk/maven-shared-model/src/main/java/org/apache/maven/shared/model/InterpolatorProperty.java
maven/components/trunk/maven-shared-model/src/main/java/org/apache/maven/shared/model/ModelTransformerContext.java
maven/components/trunk/pom.xml
Modified: maven/components/trunk/maven-core/pom.xml
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-core/pom.xml?rev=719472&r1=719471&r2=719472&view=diff
==============================================================================
--- maven/components/trunk/maven-core/pom.xml (original)
+++ maven/components/trunk/maven-core/pom.xml Thu Nov 20 20:49:46 2008
@@ -60,6 +60,10 @@
<artifactId>maven-project</artifactId>
</dependency>
<dependency>
+ <groupId>org.apache.maven</groupId>
+ <artifactId>maven-project-builder</artifactId>
+ </dependency>
+ <dependency>
<groupId>commons-cli</groupId>
<artifactId>commons-cli</artifactId>
</dependency>
Modified: maven/components/trunk/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManager.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManager.java?rev=719472&r1=719471&r2=719472&view=diff
==============================================================================
--- maven/components/trunk/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManager.java (original)
+++ maven/components/trunk/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManager.java Thu Nov 20 20:49:46 2008
@@ -59,7 +59,6 @@
import org.apache.maven.project.MavenProject;
import org.apache.maven.project.MavenProjectBuilder;
import org.apache.maven.project.ProjectBuildingException;
-import org.apache.maven.project.ModelUtils;
import org.apache.maven.project.builder.PomClassicTransformer;
import org.apache.maven.project.builder.PomInterpolatorTag;
import org.apache.maven.project.artifact.InvalidDependencyVersionException;
Modified: maven/components/trunk/maven-embedder/src/main/java/org/apache/maven/embedder/execution/DefaultMavenExecutionRequestPopulator.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-embedder/src/main/java/org/apache/maven/embedder/execution/DefaultMavenExecutionRequestPopulator.java?rev=719472&r1=719471&r2=719472&view=diff
==============================================================================
--- maven/components/trunk/maven-embedder/src/main/java/org/apache/maven/embedder/execution/DefaultMavenExecutionRequestPopulator.java (original)
+++ maven/components/trunk/maven-embedder/src/main/java/org/apache/maven/embedder/execution/DefaultMavenExecutionRequestPopulator.java Thu Nov 20 20:49:46 2008
@@ -49,7 +49,6 @@
import org.apache.maven.settings.SettingsUtils;
import org.apache.maven.wagon.repository.RepositoryPermissions;
import org.codehaus.plexus.PlexusConstants;
-import org.codehaus.plexus.PlexusContainer;
import org.codehaus.plexus.MutablePlexusContainer;
import org.codehaus.plexus.component.repository.exception.ComponentLifecycleException;
import org.codehaus.plexus.component.repository.exception.ComponentLookupException;
Modified: maven/components/trunk/maven-project/pom.xml
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-project/pom.xml?rev=719472&r1=719471&r2=719472&view=diff
==============================================================================
--- maven/components/trunk/maven-project/pom.xml (original)
+++ maven/components/trunk/maven-project/pom.xml Thu Nov 20 20:49:46 2008
@@ -68,7 +68,11 @@
<dependency>
<groupId>org.apache.maven.shared</groupId>
<artifactId>maven-shared-model</artifactId>
- </dependency>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.maven</groupId>
+ <artifactId>maven-project-builder</artifactId>
+ </dependency>
</dependencies>
<build>
<plugins>
Modified: maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/builder/PomClassicDomainModel.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/builder/PomClassicDomainModel.java?rev=719472&r1=719471&r2=719472&view=diff
==============================================================================
--- maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/builder/PomClassicDomainModel.java (original)
+++ maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/builder/PomClassicDomainModel.java Thu Nov 20 20:49:46 2008
@@ -24,6 +24,7 @@
import org.apache.maven.model.io.xpp3.MavenXpp3Reader;
import org.apache.maven.model.io.xpp3.MavenXpp3Writer;
import org.apache.maven.shared.model.InputStreamDomainModel;
+import org.apache.maven.shared.model.ModelProperty;
import org.codehaus.plexus.util.IOUtil;
import org.codehaus.plexus.util.ReaderFactory;
import org.codehaus.plexus.util.WriterFactory;
@@ -36,6 +37,7 @@
import java.io.IOException;
import java.io.InputStream;
import java.io.Writer;
+import java.util.List;
/**
* Provides a wrapper for the maven model.
@@ -273,6 +275,11 @@
return file;
}
+ public List<ModelProperty> getModelProperties()
+ {
+ return null;
+ }
+
/**
* @see org.apache.maven.shared.model.DomainModel#getEventHistory()
*/
Modified: maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/builder/PomClassicTransformer.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/builder/PomClassicTransformer.java?rev=719472&r1=719471&r2=719472&view=diff
==============================================================================
--- maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/builder/PomClassicTransformer.java (original)
+++ maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/builder/PomClassicTransformer.java Thu Nov 20 20:49:46 2008
@@ -102,18 +102,6 @@
private static Map<String, List<ModelProperty>> cache = new HashMap<String, List<ModelProperty>>();
- private Collection<Profile> profiles;
-
- //private static List<DomainModel> cache = new ArrayList<DomainModel>();
-
- /**
- * Default constructor
- */
- public PomClassicTransformer( Collection<Profile> profiles )
- {
- this.profiles = profiles;
- }
-
/**
* @see ModelTransformer#transformToDomainModel(java.util.List, java.util.List)
*/
Modified: maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/builder/impl/DefaultProjectBuilder.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/builder/impl/DefaultProjectBuilder.java?rev=719472&r1=719471&r2=719472&view=diff
==============================================================================
--- maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/builder/impl/DefaultProjectBuilder.java (original)
+++ maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/builder/impl/DefaultProjectBuilder.java Thu Nov 20 20:49:46 2008
@@ -27,12 +27,7 @@
import org.apache.maven.model.Parent;
import org.apache.maven.project.MavenProject;
import org.apache.maven.project.ProjectBuilderConfiguration;
-import org.apache.maven.project.builder.ArtifactModelContainerFactory;
-import org.apache.maven.project.builder.IdModelContainerFactory;
-import org.apache.maven.project.builder.PomArtifactResolver;
-import org.apache.maven.project.builder.PomClassicDomainModel;
-import org.apache.maven.project.builder.PomClassicTransformer;
-import org.apache.maven.project.builder.ProjectBuilder;
+import org.apache.maven.project.builder.*;
import org.apache.maven.project.builder.listeners.BuildExtensionListener;
import org.apache.maven.project.validation.ModelValidationResult;
import org.apache.maven.project.validation.ModelValidator;
@@ -167,7 +162,7 @@
domainModels.add( new PomClassicDomainModel( model ) );
}
- PomClassicTransformer transformer = new PomClassicTransformer( null );
+ PomClassicTransformer transformer = new PomClassicTransformer( );
ModelTransformerContext ctx = new ModelTransformerContext(
Arrays.asList( new ArtifactModelContainerFactory(), new IdModelContainerFactory() ) );
Modified: maven/components/trunk/maven-shared-model/src/main/java/org/apache/maven/shared/model/DomainModel.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-shared-model/src/main/java/org/apache/maven/shared/model/DomainModel.java?rev=719472&r1=719471&r2=719472&view=diff
==============================================================================
--- maven/components/trunk/maven-shared-model/src/main/java/org/apache/maven/shared/model/DomainModel.java (original)
+++ maven/components/trunk/maven-shared-model/src/main/java/org/apache/maven/shared/model/DomainModel.java Thu Nov 20 20:49:46 2008
@@ -1,5 +1,7 @@
package org.apache.maven.shared.model;
+import java.util.List;
+
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
@@ -27,6 +29,8 @@
public interface DomainModel
{
+ List<ModelProperty> getModelProperties();
+
/**
* Returns event history of joins and deletes used in constructing this domain model.
*
Added: maven/components/trunk/maven-shared-model/src/main/java/org/apache/maven/shared/model/DomainModelFactory.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-shared-model/src/main/java/org/apache/maven/shared/model/DomainModelFactory.java?rev=719472&view=auto
==============================================================================
--- maven/components/trunk/maven-shared-model/src/main/java/org/apache/maven/shared/model/DomainModelFactory.java (added)
+++ maven/components/trunk/maven-shared-model/src/main/java/org/apache/maven/shared/model/DomainModelFactory.java Thu Nov 20 20:49:46 2008
@@ -0,0 +1,9 @@
+package org.apache.maven.shared.model;
+
+import java.util.List;
+import java.io.IOException;
+
+public interface DomainModelFactory {
+
+ DomainModel createDomainModel(List<ModelProperty> modelProperties) throws IOException;
+}
Modified: maven/components/trunk/maven-shared-model/src/main/java/org/apache/maven/shared/model/InterpolatorProperty.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-shared-model/src/main/java/org/apache/maven/shared/model/InterpolatorProperty.java?rev=719472&r1=719471&r2=719472&view=diff
==============================================================================
--- maven/components/trunk/maven-shared-model/src/main/java/org/apache/maven/shared/model/InterpolatorProperty.java (original)
+++ maven/components/trunk/maven-shared-model/src/main/java/org/apache/maven/shared/model/InterpolatorProperty.java Thu Nov 20 20:49:46 2008
@@ -99,6 +99,20 @@
{
this.tag = tag;
}
+ public static List<InterpolatorProperty> toInterpolatorProperties( Map<String, String> properties, String tag )
+ {
+ if( properties == null )
+ {
+ throw new IllegalArgumentException( "properties: null" );
+ }
+
+ List<InterpolatorProperty> interpolatorProperties = new ArrayList<InterpolatorProperty>();
+ for ( Map.Entry<String, String> e : properties.entrySet() )
+ {
+ interpolatorProperties.add( new InterpolatorProperty( "${" + e.getKey() +"}", e.getValue(), tag) );
+ }
+ return interpolatorProperties;
+ }
/**
* Returns true if key values match, otherwise returns false.
Modified: maven/components/trunk/maven-shared-model/src/main/java/org/apache/maven/shared/model/ModelTransformerContext.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-shared-model/src/main/java/org/apache/maven/shared/model/ModelTransformerContext.java?rev=719472&r1=719471&r2=719472&view=diff
==============================================================================
--- maven/components/trunk/maven-shared-model/src/main/java/org/apache/maven/shared/model/ModelTransformerContext.java (original)
+++ maven/components/trunk/maven-shared-model/src/main/java/org/apache/maven/shared/model/ModelTransformerContext.java Thu Nov 20 20:49:46 2008
@@ -231,6 +231,12 @@
eventListeners = new ArrayList<ModelEventListener>(eventListeners);
}
+ if(interpolatorProperties == null)
+ {
+ interpolatorProperties = new ArrayList<InterpolatorProperty>();
+ }
+
+
List<ModelProperty> transformedProperties =
importModelProperties(importModels, fromModelTransformer.transformToModelProperties( domainModels));
transformedProperties = fromModelTransformer.preprocessModelProperties(transformedProperties);
Modified: maven/components/trunk/pom.xml
URL: http://svn.apache.org/viewvc/maven/components/trunk/pom.xml?rev=719472&r1=719471&r2=719472&view=diff
==============================================================================
--- maven/components/trunk/pom.xml (original)
+++ maven/components/trunk/pom.xml Thu Nov 20 20:49:46 2008
@@ -272,6 +272,8 @@
<module>maven-plugin-api</module>
<module>maven-project</module>
<module>maven-reporting-api</module>
+ <module>maven-project-builder</module>
+ <module>maven-mercury</module>
<module>maven-embedder</module>
<module>maven-shared-model</module>
<module>maven-toolchain</module>
@@ -291,6 +293,7 @@
<plexusUtilsVersion>1.5.5</plexusUtilsVersion>
<wagonVersion>1.0-beta-4</wagonVersion>
<mavenSharedModel>1.0-SNAPSHOT</mavenSharedModel>
+ <mercuryVersion>1.0.0-alpha-2-SNAPSHOT</mercuryVersion>
<woodstoxVersion>3.2.6</woodstoxVersion>
</properties>
@@ -355,6 +358,11 @@
</dependency>
<dependency>
<groupId>org.apache.maven</groupId>
+ <artifactId>maven-project-builder</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.maven</groupId>
<artifactId>maven-compat</artifactId>
<version>${project.version}</version>
</dependency>
@@ -463,6 +471,16 @@
</exclusion>
</exclusions>
</dependency>
+ <dependency>
+ <groupId>org.apache.maven.mercury</groupId>
+ <artifactId>mercury-artifact</artifactId>
+ <version>${mercuryVersion}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.maven.mercury</groupId>
+ <artifactId>mercury-external</artifactId>
+ <version>${mercuryVersion}</version>
+ </dependency>
<!-- Needed for backward compat aspect. -->
<dependency>
<groupId>aspectj</groupId>