You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by be...@apache.org on 2009/07/26 20:18:47 UTC

svn commit: r797968 - in /maven/components/trunk/maven-model-builder/src/main/java/org/apache/maven/model: building/DefaultModelBuilder.java composition/DefaultDependencyManagementImporter.java composition/DependencyManagementImporter.java

Author: bentmann
Date: Sun Jul 26 18:18:47 2009
New Revision: 797968

URL: http://svn.apache.org/viewvc?rev=797968&view=rev
Log:
o Revised API

Modified:
    maven/components/trunk/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuilder.java
    maven/components/trunk/maven-model-builder/src/main/java/org/apache/maven/model/composition/DefaultDependencyManagementImporter.java
    maven/components/trunk/maven-model-builder/src/main/java/org/apache/maven/model/composition/DependencyManagementImporter.java

Modified: maven/components/trunk/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuilder.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuilder.java?rev=797968&r1=797967&r2=797968&view=diff
==============================================================================
--- maven/components/trunk/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuilder.java (original)
+++ maven/components/trunk/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuilder.java Sun Jul 26 18:18:47 2009
@@ -234,6 +234,9 @@
             throw new ModelBuildingException( problems );
         }
 
+        putCache( request.getModelCache(), resultModel.getGroupId(), resultModel.getArtifactId(),
+                  resultModel.getVersion(), ModelCacheTag.EFFECTIVE, resultModel );
+
         return result;
     }
 
@@ -565,7 +568,7 @@
 
         ModelBuildingRequest importRequest = null;
 
-        List<Model> importModels = null;
+        List<DependencyManagement> importMngts = null;
 
         for ( Iterator<Dependency> it = depMngt.getDependencies().iterator(); it.hasNext(); )
         {
@@ -582,6 +585,8 @@
             String artifactId = dependency.getArtifactId();
             String version = dependency.getVersion();
 
+            DependencyManagement importMngt;
+
             Model importModel =
                 getCache( request.getModelCache(), groupId, artifactId, version, ModelCacheTag.EFFECTIVE );
 
@@ -630,22 +635,27 @@
 
                 importModel = importResult.getEffectiveModel();
 
-                putCache( request.getModelCache(), groupId, artifactId, version, ModelCacheTag.EFFECTIVE, importModel );
+                importMngt = importModel.getDependencyManagement();
             }
             else
             {
-                importModel = ModelUtils.cloneModel( importModel );
+                importMngt = ModelUtils.cloneDependencyManagement( importModel.getDependencyManagement() );
+            }
+
+            if ( importMngt == null )
+            {
+                continue;
             }
 
-            if ( importModels == null )
+            if ( importMngts == null )
             {
-                importModels = new ArrayList<Model>();
+                importMngts = new ArrayList<DependencyManagement>();
             }
 
-            importModels.add( importModel );
+            importMngts.add( importMngt );
         }
 
-        dependencyManagementImporter.importManagement( model, importModels, request );
+        dependencyManagementImporter.importManagement( model, importMngts, request );
     }
 
     private <T> void putCache( ModelCache modelCache, String groupId, String artifactId, String version,

Modified: maven/components/trunk/maven-model-builder/src/main/java/org/apache/maven/model/composition/DefaultDependencyManagementImporter.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-model-builder/src/main/java/org/apache/maven/model/composition/DefaultDependencyManagementImporter.java?rev=797968&r1=797967&r2=797968&view=diff
==============================================================================
--- maven/components/trunk/maven-model-builder/src/main/java/org/apache/maven/model/composition/DefaultDependencyManagementImporter.java (original)
+++ maven/components/trunk/maven-model-builder/src/main/java/org/apache/maven/model/composition/DefaultDependencyManagementImporter.java Sun Jul 26 18:18:47 2009
@@ -40,7 +40,8 @@
     implements DependencyManagementImporter
 {
 
-    public void importManagement( Model target, List<? extends Model> sources, ModelBuildingRequest request )
+    public void importManagement( Model target, List<? extends DependencyManagement> sources,
+                                  ModelBuildingRequest request )
     {
         if ( sources != null && !sources.isEmpty() )
         {
@@ -61,19 +62,14 @@
                 target.setDependencyManagement( depMngt );
             }
 
-            for ( Model source : sources )
+            for ( DependencyManagement source : sources )
             {
-                DependencyManagement depMngtImport = source.getDependencyManagement();
-
-                if ( depMngtImport != null )
+                for ( Dependency dependency : source.getDependencies() )
                 {
-                    for ( Dependency dependency : depMngtImport.getDependencies() )
+                    String key = dependency.getManagementKey();
+                    if ( !dependencies.containsKey( key ) )
                     {
-                        String key = dependency.getManagementKey();
-                        if ( !dependencies.containsKey( key ) )
-                        {
-                            dependencies.put( key, dependency );
-                        }
+                        dependencies.put( key, dependency );
                     }
                 }
             }

Modified: maven/components/trunk/maven-model-builder/src/main/java/org/apache/maven/model/composition/DependencyManagementImporter.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-model-builder/src/main/java/org/apache/maven/model/composition/DependencyManagementImporter.java?rev=797968&r1=797967&r2=797968&view=diff
==============================================================================
--- maven/components/trunk/maven-model-builder/src/main/java/org/apache/maven/model/composition/DependencyManagementImporter.java (original)
+++ maven/components/trunk/maven-model-builder/src/main/java/org/apache/maven/model/composition/DependencyManagementImporter.java Sun Jul 26 18:18:47 2009
@@ -21,6 +21,7 @@
 
 import java.util.List;
 
+import org.apache.maven.model.DependencyManagement;
 import org.apache.maven.model.Model;
 import org.apache.maven.model.building.ModelBuildingRequest;
 
@@ -33,12 +34,12 @@
 {
 
     /**
-     * Imports the dependency management of the specified source models into the given target model.
+     * Imports the specified dependency management sections into the given target model.
      * 
      * @param target The model into which to import the dependency management section, must not be <code>null</code>.
-     * @param sources The models from which to import the dependency management sections, may be <code>null</code>.
+     * @param sources The dependency management sections to import, may be <code>null</code>.
      * @param request The model building request that holds further settings, must not be {@code null}.
      */
-    void importManagement( Model target, List<? extends Model> sources, ModelBuildingRequest request );
+    void importManagement( Model target, List<? extends DependencyManagement> sources, ModelBuildingRequest request );
 
 }