Author: jvanzyl
Date: Thu Sep 18 08:49:48 2008
New Revision: 696679

URL: http://svn.apache.org/viewvc?rev=696679&view=rev
Log:
o rolling back change, not sure how subclipse commits to two separate 
repositories in one commit..

Modified:
    
maven/components/trunk/maven-core/src/main/java/org/apache/maven/extension/lineage/DefaultModelLineageBuilder.java

Modified: 
maven/components/trunk/maven-core/src/main/java/org/apache/maven/extension/lineage/DefaultModelLineageBuilder.java
URL: 
http://svn.apache.org/viewvc/maven/components/trunk/maven-core/src/main/java/org/apache/maven/extension/lineage/DefaultModelLineageBuilder.java?rev=696679&r1=696678&r2=696679&view=diff
==============================================================================
--- 
maven/components/trunk/maven-core/src/main/java/org/apache/maven/extension/lineage/DefaultModelLineageBuilder.java
 (original)
+++ 
maven/components/trunk/maven-core/src/main/java/org/apache/maven/extension/lineage/DefaultModelLineageBuilder.java
 Thu Sep 18 08:49:48 2008
@@ -35,6 +35,7 @@
 import org.apache.maven.project.ProjectBuilderConfiguration;
 import org.apache.maven.project.ProjectBuildingException;
 import org.apache.maven.project.ModelAndFile;
+import org.apache.maven.project.workspace.ProjectWorkspace;
 import org.codehaus.plexus.logging.LogEnabled;
 import org.codehaus.plexus.logging.Logger;
 import org.codehaus.plexus.logging.console.ConsoleLogger;
@@ -68,6 +69,8 @@
 
     private ProfileAdvisor profileAdvisor;
 
+    private ProjectWorkspace projectWorkspace;
+
     private Logger logger;
 
     public DefaultModelLineageBuilder()
@@ -96,7 +99,12 @@
         List currentRemoteRepositories = remoteRepositories == null ? new 
ArrayList()
                         : new ArrayList( remoteRepositories );
 
-        ModelAndFile current = new ModelAndFile( readModel( pom ), pom, 
isReactorProject );
+        ModelAndFile current = projectWorkspace.getModelAndFile( pom );
+        if ( current == null )
+        {
+            current = new ModelAndFile( readModel( pom ), pom, 
isReactorProject );
+            projectWorkspace.storeModelAndFile( current );
+        }
 
         do
         {
@@ -306,6 +314,7 @@
 
 //                getLogger().debug( "Checking cache for parent model-and-file 
instance: " + key + " using file: " + parentPomFile );
 
+                result = projectWorkspace.getModelAndFile( parentPomFile );
                 if ( result != null && !parentModelMatches( modelParent, 
result.getModel() ) )
                 {
                     parentPomFile = null;
@@ -313,6 +322,13 @@
                 }
             }
 
+            if ( result == null )
+            {
+//                getLogger().debug( "Checking cache for parent model-and-file 
instance: " + key + " using project groupId:artifactId:version." );
+
+                result = projectWorkspace.getModelAndFile( 
modelParent.getGroupId(), modelParent.getArtifactId(), modelParent.getVersion() 
);
+            }
+
             if ( result != null )
             {
 //                getLogger().debug( "Returning cached instance." );
@@ -405,6 +421,12 @@
             }
         }
 
+        if ( result != null )
+        {
+//            getLogger().debug( "Caching parent model-and-file: " + result );
+            projectWorkspace.storeModelAndFile( result );
+        }
+
         return result;
     }
 


Reply via email to