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>