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 2008/09/27 23:55:00 UTC

svn commit: r699745 - in /maven/components/branches/jvz: ./ maven-compat/ maven-compat/src/ maven-compat/src/main/ maven-compat/src/main/java/ maven-compat/src/main/java/org/ maven-compat/src/main/java/org/apache/ maven-compat/src/main/java/org/apache/...

Author: jvanzyl
Date: Sat Sep 27 14:54:59 2008
New Revision: 699745

URL: http://svn.apache.org/viewvc?rev=699745&view=rev
Log:
o creating a compat module to keep track of uses of internal component plugins. someone used the inheritance assembler directly in a plugin because the internal model is being mutilated in 2.0.x and so we have to keep it around even though we don't need it anymore in 3.0.x. ugly ugly ugly.

Added:
    maven/components/branches/jvz/maven-compat/
    maven/components/branches/jvz/maven-compat/pom.xml   (with props)
    maven/components/branches/jvz/maven-compat/src/
    maven/components/branches/jvz/maven-compat/src/main/
    maven/components/branches/jvz/maven-compat/src/main/java/
    maven/components/branches/jvz/maven-compat/src/main/java/org/
    maven/components/branches/jvz/maven-compat/src/main/java/org/apache/
    maven/components/branches/jvz/maven-compat/src/main/java/org/apache/maven/
    maven/components/branches/jvz/maven-compat/src/main/java/org/apache/maven/project/
    maven/components/branches/jvz/maven-compat/src/main/java/org/apache/maven/project/inheritance/   (props changed)
      - copied from r698435, maven/components/branches/sisbell-maven-2.1-mercury/maven-project/src/main/java/org/apache/maven/project/inheritance/
    maven/components/branches/jvz/maven-compat/src/main/resources/
    maven/components/branches/jvz/maven-compat/src/main/resources/META-INF/
    maven/components/branches/jvz/maven-compat/src/main/resources/META-INF/plexus/
    maven/components/branches/jvz/maven-compat/src/main/resources/META-INF/plexus/components.xml   (with props)
    maven/components/branches/jvz/maven-project/pom.xml   (with props)
Modified:
    maven/components/branches/jvz/maven-compat/src/main/java/org/apache/maven/project/inheritance/DefaultModelInheritanceAssembler.java
    maven/components/branches/jvz/maven-compat/src/main/java/org/apache/maven/project/inheritance/ModelInheritanceAssembler.java
    maven/components/branches/jvz/pom.xml

Added: maven/components/branches/jvz/maven-compat/pom.xml
URL: http://svn.apache.org/viewvc/maven/components/branches/jvz/maven-compat/pom.xml?rev=699745&view=auto
==============================================================================
--- maven/components/branches/jvz/maven-compat/pom.xml (added)
+++ maven/components/branches/jvz/maven-compat/pom.xml Sat Sep 27 14:54:59 2008
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+  <!--
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements. See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to you under the Apache License, Version
+    2.0 (the "License"); you may not use this file except in compliance
+    with the License. You may obtain a copy of the License at
+    http://www.apache.org/licenses/LICENSE-2.0 Unless required by
+    applicable law or agreed to in writing, software distributed under
+    the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES
+    OR CONDITIONS OF ANY KIND, either express or implied. See the
+    License for the specific language governing permissions and
+    limitations under the License.
+  -->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <parent>
+    <groupId>org.apache.maven</groupId>
+    <artifactId>maven</artifactId>
+    <version>3.0-SNAPSHOT</version>
+  </parent>
+  <modelVersion>4.0.0</modelVersion>
+  <artifactId>maven-compat</artifactId>
+  <name>Maven Compat</name>
+  <dependencies>
+    <dependency>
+      <groupId>org.apache.maven</groupId>
+      <artifactId>maven-model</artifactId>      
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven</groupId>
+      <artifactId>maven-project</artifactId>      
+    </dependency>
+  </dependencies>
+</project>

Propchange: maven/components/branches/jvz/maven-compat/pom.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/components/branches/jvz/maven-compat/pom.xml
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Propchange: maven/components/branches/jvz/maven-compat/src/main/java/org/apache/maven/project/inheritance/
------------------------------------------------------------------------------
    svn:mergeinfo = 

Modified: maven/components/branches/jvz/maven-compat/src/main/java/org/apache/maven/project/inheritance/DefaultModelInheritanceAssembler.java
URL: http://svn.apache.org/viewvc/maven/components/branches/jvz/maven-compat/src/main/java/org/apache/maven/project/inheritance/DefaultModelInheritanceAssembler.java?rev=699745&r1=698435&r2=699745&view=diff
==============================================================================
--- maven/components/branches/jvz/maven-compat/src/main/java/org/apache/maven/project/inheritance/DefaultModelInheritanceAssembler.java (original)
+++ maven/components/branches/jvz/maven-compat/src/main/java/org/apache/maven/project/inheritance/DefaultModelInheritanceAssembler.java Sat Sep 27 14:54:59 2008
@@ -19,19 +19,10 @@
  * under the License.
  */
 
-import org.apache.maven.model.Build;
-import org.apache.maven.model.Dependency;
-import org.apache.maven.model.DependencyManagement;
-import org.apache.maven.model.DeploymentRepository;
-import org.apache.maven.model.DistributionManagement;
-import org.apache.maven.model.Model;
-import org.apache.maven.model.PluginManagement;
-import org.apache.maven.model.Reporting;
-import org.apache.maven.model.Resource;
-import org.apache.maven.model.Scm;
-import org.apache.maven.model.Site;
+import org.apache.maven.model.*;
 import org.apache.maven.project.ModelUtils;
 import org.codehaus.plexus.util.StringUtils;
+import org.codehaus.plexus.util.xml.Xpp3Dom;
 
 import java.util.ArrayList;
 import java.util.Iterator;
@@ -52,19 +43,129 @@
 public class DefaultModelInheritanceAssembler
     implements ModelInheritanceAssembler
 {
-    public void copyModel( Model dest, Model source )
+
+    // TODO: Remove this!
+    @SuppressWarnings("unchecked")
+    public void assembleBuildInheritance( Build childBuild, Build parentBuild, boolean handleAsInheritance )
     {
-        assembleModelInheritance( dest, source, null, false );
+        // The build has been set but we want to step in here and fill in
+        // values that have not been set by the child.
+
+        if ( childBuild.getSourceDirectory() == null )
+        {
+            childBuild.setSourceDirectory( parentBuild.getSourceDirectory() );
+        }
+
+        if ( childBuild.getScriptSourceDirectory() == null )
+        {
+            childBuild.setScriptSourceDirectory( parentBuild.getScriptSourceDirectory() );
+        }
+
+        if ( childBuild.getTestSourceDirectory() == null )
+        {
+            childBuild.setTestSourceDirectory( parentBuild.getTestSourceDirectory() );
+        }
+
+        if ( childBuild.getOutputDirectory() == null )
+        {
+            childBuild.setOutputDirectory( parentBuild.getOutputDirectory() );
+        }
+
+        if ( childBuild.getTestOutputDirectory() == null )
+        {
+            childBuild.setTestOutputDirectory( parentBuild.getTestOutputDirectory() );
+        }
+
+        // Extensions are accumlated
+        mergeExtensionLists( childBuild, parentBuild );
+
+        if ( childBuild.getDirectory() == null )
+        {
+            childBuild.setDirectory( parentBuild.getDirectory() );
+        }
+
+        if ( childBuild.getDefaultGoal() == null )
+        {
+            childBuild.setDefaultGoal( parentBuild.getDefaultGoal() );
+        }
+
+        if ( childBuild.getFinalName() == null )
+        {
+            childBuild.setFinalName( parentBuild.getFinalName() );
+        }
+
+        ModelUtils.mergeFilterLists( childBuild.getFilters(), parentBuild.getFilters() );
+
+        List<Resource> resources = childBuild.getResources();
+        if ( ( resources == null ) || resources.isEmpty() )
+        {
+            childBuild.setResources( parentBuild.getResources() );
+        }
+
+        resources = childBuild.getTestResources();
+        if ( ( resources == null ) || resources.isEmpty() )
+        {
+            childBuild.setTestResources( parentBuild.getTestResources() );
+        }
+
+        // Plugins are aggregated if Plugin.inherit != false
+        ModelUtils.mergePluginLists( childBuild, parentBuild, handleAsInheritance );
+
+        // Plugin management :: aggregate
+        PluginManagement dominantPM = childBuild.getPluginManagement();
+        PluginManagement recessivePM = parentBuild.getPluginManagement();
+
+        if ( ( dominantPM == null ) && ( recessivePM != null ) )
+        {
+            // FIXME: Filter out the inherited == false stuff!
+            childBuild.setPluginManagement( recessivePM );
+        }
+        else
+        {
+            ModelUtils.mergePluginLists( childBuild.getPluginManagement(), parentBuild.getPluginManagement(), false );
+        }
     }
 
-    public void assembleModelInheritance( Model child, Model parent, String childPathAdjustment )
+    private void assembleScmInheritance( Model child, Model parent, String childPathAdjustment, boolean appendPaths )
     {
-        assembleModelInheritance( child, parent, childPathAdjustment, true );
+        if ( parent.getScm() != null )
+        {
+            Scm parentScm = parent.getScm();
+
+            Scm childScm = child.getScm();
+
+            if ( childScm == null )
+            {
+                childScm = new Scm();
+
+                child.setScm( childScm );
+            }
+
+            if ( StringUtils.isEmpty( childScm.getConnection() ) && !StringUtils.isEmpty( parentScm.getConnection() ) )
+            {
+                childScm.setConnection(
+                    appendPath( parentScm.getConnection(), child.getArtifactId(), childPathAdjustment, appendPaths ) );
+            }
+
+            if ( StringUtils.isEmpty( childScm.getDeveloperConnection() ) &&
+                !StringUtils.isEmpty( parentScm.getDeveloperConnection() ) )
+            {
+                childScm
+                    .setDeveloperConnection( appendPath( parentScm.getDeveloperConnection(), child.getArtifactId(),
+                                                         childPathAdjustment, appendPaths ) );
+            }
+
+            if ( StringUtils.isEmpty( childScm.getUrl() ) && !StringUtils.isEmpty( parentScm.getUrl() ) )
+            {
+                childScm.setUrl(
+                    appendPath( parentScm.getUrl(), child.getArtifactId(), childPathAdjustment, appendPaths ) );
+            }
+        }
     }
 
-    public void assembleModelInheritance( Model child, Model parent )
+    public void copyModel( Model dest, Model source )
     {
-        assembleModelInheritance( child, parent, null, true );
+        assembleModelInheritance( dest, source, null, false );
     }
 
     private void assembleModelInheritance( Model child, Model parent, String childPathAdjustment, boolean appendPaths )
@@ -243,181 +344,229 @@
                 childReporting.setOutputDirectory( parentReporting.getOutputDirectory() );
             }
 
-            ModelUtils.mergeReportPluginLists( childReporting, parentReporting, true );
+            mergeReportPluginLists( childReporting, parentReporting, true );
         }
     }
 
-    // TODO: Remove this!
-    @SuppressWarnings("unchecked")
-    private void assembleDependencyInheritance( Model child, Model parent )
+    private static void mergeReportPluginLists( Reporting child, Reporting parent, boolean handleAsInheritance )
     {
-        Map<String, Dependency> depsMap = new LinkedHashMap<String, Dependency>();
-
-        List<Dependency> deps = parent.getDependencies();
-
-        if ( deps != null )
+        if ( ( child == null ) || ( parent == null ) )
         {
-            for ( Iterator<Dependency> it = deps.iterator(); it.hasNext(); )
-            {
-                Dependency dependency = it.next();
-                depsMap.put( dependency.getManagementKey(), dependency );
-            }
+            // nothing to do.
+            return;
         }
 
-        deps = child.getDependencies();
+        List parentPlugins = parent.getPlugins();
 
-        if ( deps != null )
+        if ( ( parentPlugins != null ) && !parentPlugins.isEmpty() )
         {
-            for ( Iterator<Dependency> it = deps.iterator(); it.hasNext(); )
+            Map assembledPlugins = new TreeMap();
+
+            Map childPlugins = child.getReportPluginsAsMap();
+
+            for ( Iterator it = parentPlugins.iterator(); it.hasNext(); )
             {
-                Dependency dependency = it.next();
-                depsMap.put( dependency.getManagementKey(), dependency );
-            }
-        }
+                ReportPlugin parentPlugin = (ReportPlugin) it.next();
 
-        child.setDependencies( new ArrayList<Dependency>( depsMap.values() ) );
-    }
+                String parentInherited = parentPlugin.getInherited();
 
-    private void assembleBuildInheritance( Model child, Model parent )
-    {
-        Build childBuild = child.getBuild();
-        Build parentBuild = parent.getBuild();
+                if ( !handleAsInheritance || ( parentInherited == null ) ||
+                    Boolean.valueOf( parentInherited ).booleanValue() )
+                {
 
-        if ( parentBuild != null )
-        {
-            if ( childBuild == null )
+                    ReportPlugin assembledPlugin = parentPlugin;
+
+                    ReportPlugin childPlugin = (ReportPlugin) childPlugins.get( parentPlugin.getKey() );
+
+                    if ( childPlugin != null )
+                    {
+                        assembledPlugin = childPlugin;
+
+                        mergeReportPluginDefinitions( childPlugin, parentPlugin, handleAsInheritance );
+                    }
+
+                    if ( handleAsInheritance && ( parentInherited == null ) )
+                    {
+                        assembledPlugin.unsetInheritanceApplied();
+                    }
+
+                    assembledPlugins.put( assembledPlugin.getKey(), assembledPlugin );
+                }
+            }
+
+            for ( Iterator it = childPlugins.values().iterator(); it.hasNext(); )
             {
-                childBuild = new Build();
-                child.setBuild( childBuild );
+                ReportPlugin childPlugin = (ReportPlugin) it.next();
+
+                if ( !assembledPlugins.containsKey( childPlugin.getKey() ) )
+                {
+                    assembledPlugins.put( childPlugin.getKey(), childPlugin );
+                }
             }
 
-            assembleBuildInheritance( childBuild, parentBuild, true );
+            child.setPlugins( new ArrayList( assembledPlugins.values() ) );
+
+            child.flushReportPluginMap();
         }
     }
 
-    // TODO: Remove this!
-    @SuppressWarnings("unchecked")
-    public void assembleBuildInheritance( Build childBuild,
-                                           Build parentBuild,
-                                           boolean handleAsInheritance )
+    private static void mergeReportSetDefinitions( ReportSet child, ReportSet parent )
     {
-        // The build has been set but we want to step in here and fill in
-        // values that have not been set by the child.
+        List parentReports = parent.getReports();
+        List childReports = child.getReports();
 
-        if ( childBuild.getSourceDirectory() == null )
-        {
-            childBuild.setSourceDirectory( parentBuild.getSourceDirectory() );
-        }
+        List reports = new ArrayList();
 
-        if ( childBuild.getScriptSourceDirectory() == null )
+        if ( ( childReports != null ) && !childReports.isEmpty() )
         {
-            childBuild.setScriptSourceDirectory( parentBuild.getScriptSourceDirectory() );
+            reports.addAll( childReports );
         }
 
-        if ( childBuild.getTestSourceDirectory() == null )
+        if ( parentReports != null )
         {
-            childBuild.setTestSourceDirectory( parentBuild.getTestSourceDirectory() );
-        }
+            for ( Iterator i = parentReports.iterator(); i.hasNext(); )
+            {
+                String report = (String) i.next();
 
-        if ( childBuild.getOutputDirectory() == null )
-        {
-            childBuild.setOutputDirectory( parentBuild.getOutputDirectory() );
+                if ( !reports.contains( report ) )
+                {
+                    reports.add( report );
+                }
+            }
         }
 
-        if ( childBuild.getTestOutputDirectory() == null )
-        {
-            childBuild.setTestOutputDirectory( parentBuild.getTestOutputDirectory() );
-        }
+        child.setReports( reports );
 
-        // Extensions are accumlated
-        ModelUtils.mergeExtensionLists( childBuild, parentBuild );
+        Xpp3Dom childConfiguration = (Xpp3Dom) child.getConfiguration();
+        Xpp3Dom parentConfiguration = (Xpp3Dom) parent.getConfiguration();
 
-        if ( childBuild.getDirectory() == null )
-        {
-            childBuild.setDirectory( parentBuild.getDirectory() );
-        }
+        childConfiguration = Xpp3Dom.mergeXpp3Dom( childConfiguration, parentConfiguration );
 
-        if ( childBuild.getDefaultGoal() == null )
+        child.setConfiguration( childConfiguration );
+    }
+
+
+    public static void mergeReportPluginDefinitions( ReportPlugin child, ReportPlugin parent,
+                                                     boolean handleAsInheritance )
+    {
+        if ( ( child == null ) || ( parent == null ) )
         {
-            childBuild.setDefaultGoal( parentBuild.getDefaultGoal() );
+            // nothing to do.
+            return;
         }
 
-        if ( childBuild.getFinalName() == null )
+        if ( ( child.getVersion() == null ) && ( parent.getVersion() != null ) )
         {
-            childBuild.setFinalName( parentBuild.getFinalName() );
+            child.setVersion( parent.getVersion() );
         }
 
-        ModelUtils.mergeFilterLists( childBuild.getFilters(), parentBuild.getFilters() );
+        // from here to the end of the method is dealing with merging of the <executions/> section.
+        String parentInherited = parent.getInherited();
 
-        List<Resource> resources = childBuild.getResources();
-        if ( ( resources == null ) || resources.isEmpty() )
-        {
-            childBuild.setResources( parentBuild.getResources() );
-        }
+        boolean parentIsInherited = ( parentInherited == null ) || Boolean.valueOf( parentInherited ).booleanValue();
 
-        resources = childBuild.getTestResources();
-        if ( ( resources == null ) || resources.isEmpty() )
+        List parentReportSets = parent.getReportSets();
+
+        if ( ( parentReportSets != null ) && !parentReportSets.isEmpty() )
         {
-            childBuild.setTestResources( parentBuild.getTestResources() );
-        }
+            Map assembledReportSets = new TreeMap();
 
-        // Plugins are aggregated if Plugin.inherit != false
-        ModelUtils.mergePluginLists( childBuild, parentBuild, handleAsInheritance );
+            Map childReportSets = child.getReportSetsAsMap();
 
-        // Plugin management :: aggregate
-        PluginManagement dominantPM = childBuild.getPluginManagement();
-        PluginManagement recessivePM = parentBuild.getPluginManagement();
+            for ( Iterator it = parentReportSets.iterator(); it.hasNext(); )
+            {
+                ReportSet parentReportSet = (ReportSet) it.next();
 
-        if ( ( dominantPM == null ) && ( recessivePM != null ) )
-        {
-            // FIXME: Filter out the inherited == false stuff!
-            childBuild.setPluginManagement( recessivePM );
-        }
-        else
-        {
-            ModelUtils.mergePluginLists( childBuild.getPluginManagement(), parentBuild.getPluginManagement(),
-                                         false );
-        }
-    }
+                if ( !handleAsInheritance || parentIsInherited )
+                {
+                    ReportSet assembledReportSet = parentReportSet;
 
-    private void assembleScmInheritance( Model child, Model parent, String childPathAdjustment, boolean appendPaths )
-    {
-        if ( parent.getScm() != null )
-        {
-            Scm parentScm = parent.getScm();
+                    ReportSet childReportSet = (ReportSet) childReportSets.get( parentReportSet.getId() );
 
-            Scm childScm = child.getScm();
+                    if ( childReportSet != null )
+                    {
+                        mergeReportSetDefinitions( childReportSet, parentReportSet );
 
-            if ( childScm == null )
+                        assembledReportSet = childReportSet;
+                    }
+                    else if ( handleAsInheritance && ( parentInherited == null ) )
+                    {
+                        parentReportSet.unsetInheritanceApplied();
+                    }
+
+                    assembledReportSets.put( assembledReportSet.getId(), assembledReportSet );
+                }
+            }
+
+            for ( Iterator it = childReportSets.entrySet().iterator(); it.hasNext(); )
             {
-                childScm = new Scm();
+                Map.Entry entry = (Map.Entry) it.next();
 
-                child.setScm( childScm );
+                String id = (String) entry.getKey();
+
+                if ( !assembledReportSets.containsKey( id ) )
+                {
+                    assembledReportSets.put( id, entry.getValue() );
+                }
             }
 
-            if ( StringUtils.isEmpty( childScm.getConnection() ) && !StringUtils.isEmpty( parentScm.getConnection() ) )
+            child.setReportSets( new ArrayList( assembledReportSets.values() ) );
+
+            child.flushReportSetMap();
+        }
+
+    }
+
+    // TODO: Remove this!
+    @SuppressWarnings("unchecked")
+    private void assembleDependencyInheritance( Model child, Model parent )
+    {
+        Map<String, Dependency> depsMap = new LinkedHashMap<String, Dependency>();
+
+        List<Dependency> deps = parent.getDependencies();
+
+        if ( deps != null )
+        {
+            for ( Iterator<Dependency> it = deps.iterator(); it.hasNext(); )
             {
-                childScm.setConnection(
-                    appendPath( parentScm.getConnection(), child.getArtifactId(), childPathAdjustment, appendPaths ) );
+                Dependency dependency = it.next();
+                depsMap.put( dependency.getManagementKey(), dependency );
             }
+        }
 
-            if ( StringUtils.isEmpty( childScm.getDeveloperConnection() ) &&
-                !StringUtils.isEmpty( parentScm.getDeveloperConnection() ) )
+        deps = child.getDependencies();
+
+        if ( deps != null )
+        {
+            for ( Iterator<Dependency> it = deps.iterator(); it.hasNext(); )
             {
-                childScm
-                    .setDeveloperConnection( appendPath( parentScm.getDeveloperConnection(), child.getArtifactId(),
-                                                         childPathAdjustment, appendPaths ) );
+                Dependency dependency = it.next();
+                depsMap.put( dependency.getManagementKey(), dependency );
             }
+        }
 
-            if ( StringUtils.isEmpty( childScm.getUrl() ) && !StringUtils.isEmpty( parentScm.getUrl() ) )
+        child.setDependencies( new ArrayList<Dependency>( depsMap.values() ) );
+    }
+
+    private void assembleBuildInheritance( Model child, Model parent )
+    {
+        Build childBuild = child.getBuild();
+        Build parentBuild = parent.getBuild();
+
+        if ( parentBuild != null )
+        {
+            if ( childBuild == null )
             {
-                childScm.setUrl(
-                    appendPath( parentScm.getUrl(), child.getArtifactId(), childPathAdjustment, appendPaths ) );
+                childBuild = new Build();
+                child.setBuild( childBuild );
             }
+
+            assembleBuildInheritance( childBuild, parentBuild, true );
         }
     }
 
-    private void assembleDistributionInheritence( Model child, Model parent, String childPathAdjustment, boolean appendPaths )
+    private void assembleDistributionInheritence( Model child, Model parent, String childPathAdjustment,
+                                                  boolean appendPaths )
     {
         if ( parent.getDistributionManagement() != null )
         {
@@ -570,7 +719,6 @@
             }
         }
 
-
         StringBuffer cleanedPath = new StringBuffer();
 
         while ( !pathElements.isEmpty() )
@@ -585,4 +733,15 @@
         return cleanedPath.toString();
     }
 
+    private static void mergeExtensionLists( Build childBuild, Build parentBuild )
+    {
+        for ( Iterator i = parentBuild.getExtensions().iterator(); i.hasNext(); )
+        {
+            Extension e = (Extension) i.next();
+            if ( !childBuild.getExtensions().contains( e ) )
+            {
+                childBuild.addExtension( e );
+            }
+        }
+    }
 }

Modified: maven/components/branches/jvz/maven-compat/src/main/java/org/apache/maven/project/inheritance/ModelInheritanceAssembler.java
URL: http://svn.apache.org/viewvc/maven/components/branches/jvz/maven-compat/src/main/java/org/apache/maven/project/inheritance/ModelInheritanceAssembler.java?rev=699745&r1=698435&r2=699745&view=diff
==============================================================================
--- maven/components/branches/jvz/maven-compat/src/main/java/org/apache/maven/project/inheritance/ModelInheritanceAssembler.java (original)
+++ maven/components/branches/jvz/maven-compat/src/main/java/org/apache/maven/project/inheritance/ModelInheritanceAssembler.java Sat Sep 27 14:54:59 2008
@@ -30,13 +30,7 @@
 {
     String ROLE = ModelInheritanceAssembler.class.getName();
 
-    void assembleModelInheritance( Model child, Model parent, String childPathAdjustment );
-
-    void assembleModelInheritance( Model child, Model parent );
-
-    void assembleBuildInheritance( Build childBuild,
-                                          Build parentBuild,
-                                          boolean handleAsInheriance );
+    void assembleBuildInheritance( Build childBuild, Build parentBuild, boolean handleAsInheriance );
 
     void copyModel( Model dest, Model source );
 }

Added: maven/components/branches/jvz/maven-compat/src/main/resources/META-INF/plexus/components.xml
URL: http://svn.apache.org/viewvc/maven/components/branches/jvz/maven-compat/src/main/resources/META-INF/plexus/components.xml?rev=699745&view=auto
==============================================================================
--- maven/components/branches/jvz/maven-compat/src/main/resources/META-INF/plexus/components.xml (added)
+++ maven/components/branches/jvz/maven-compat/src/main/resources/META-INF/plexus/components.xml Sat Sep 27 14:54:59 2008
@@ -0,0 +1,26 @@
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+<component-set>
+  <components>
+    <component>
+      <role>org.apache.maven.project.inheritance.ModelInheritanceAssembler</role>
+      <implementation>org.apache.maven.project.inheritance.DefaultModelInheritanceAssembler</implementation>
+    </component>
+  </components>
+</component-set>

Propchange: maven/components/branches/jvz/maven-compat/src/main/resources/META-INF/plexus/components.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/components/branches/jvz/maven-compat/src/main/resources/META-INF/plexus/components.xml
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Added: maven/components/branches/jvz/maven-project/pom.xml
URL: http://svn.apache.org/viewvc/maven/components/branches/jvz/maven-project/pom.xml?rev=699745&view=auto
==============================================================================
--- maven/components/branches/jvz/maven-project/pom.xml (added)
+++ maven/components/branches/jvz/maven-project/pom.xml Sat Sep 27 14:54:59 2008
@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <parent>
+    <artifactId>maven</artifactId>
+    <groupId>org.apache.maven</groupId>
+    <version>3.0-SNAPSHOT</version>
+  </parent>
+  <modelVersion>4.0.0</modelVersion>
+  <artifactId>maven-project</artifactId>
+  <name>Maven Project Builder</name>
+  <description>This library is used to not only read Maven project object model files, but to assemble inheritence
+    and to retrieve remote models as required.</description>
+  <dependencies>
+    <dependency>
+      <groupId>org.apache.maven</groupId>
+      <artifactId>maven-model</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.codehaus.plexus</groupId>
+      <artifactId>plexus-utils</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.codehaus.plexus</groupId>
+      <artifactId>plexus-interpolation</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven.artifact</groupId>
+      <artifactId>maven-artifact</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.codehaus.plexus</groupId>
+      <artifactId>plexus-container-default</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>aspectj</groupId>
+      <artifactId>aspectjrt</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven.wagon</groupId>
+      <artifactId>wagon-file</artifactId>
+      <scope>test</scope>
+    </dependency>  
+    <dependency>
+      <groupId>org.codehaus.woodstox</groupId>
+      <artifactId>wstx-asl</artifactId>
+    </dependency> 
+    <dependency>
+      <groupId>org.apache.maven.shared</groupId>
+      <artifactId>maven-shared-model</artifactId>
+    </dependency> 
+  </dependencies>
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.codehaus.modello</groupId>
+        <artifactId>modello-maven-plugin</artifactId>
+        <configuration>
+          <version>1.0.0</version>
+          <model>src/main/mdo/profiles.mdo</model>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>  
+</project>

Propchange: maven/components/branches/jvz/maven-project/pom.xml
------------------------------------------------------------------------------
    svn:mergeinfo = 

Modified: maven/components/branches/jvz/pom.xml
URL: http://svn.apache.org/viewvc/maven/components/branches/jvz/pom.xml?rev=699745&r1=699744&r2=699745&view=diff
==============================================================================
--- maven/components/branches/jvz/pom.xml (original)
+++ maven/components/branches/jvz/pom.xml Sat Sep 27 14:54:59 2008
@@ -258,6 +258,7 @@
     <module>maven-embedder</module>
     <module>maven-shared-model</module>
     <module>maven-toolchain</module>
+    <module>maven-compat</module>
   </modules>
   <properties>
     <artifactVersion>3.0-alpha-2-SNAPSHOT</artifactVersion>