Author: jvanzyl
Date: Mon May 11 04:42:19 2009
New Revision: 773460

URL: http://svn.apache.org/viewvc?rev=773460&view=rev
Log:
o maven project cache, integrators can do what they like with project caching

Added:
    
maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/project/DefaultMavenProjectCache.java
   (with props)
    
maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/project/MavenProjectCache.java
   (with props)
Modified:
    
maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java

Modified: 
maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java
URL: 
http://svn.apache.org/viewvc/maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java?rev=773460&r1=773459&r2=773460&view=diff
==============================================================================
--- 
maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java
 (original)
+++ 
maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java
 Mon May 11 04:42:19 2009
@@ -20,9 +20,7 @@
 import java.io.Reader;
 import java.util.ArrayList;
 import java.util.Collection;
-import java.util.HashMap;
 import java.util.List;
-import java.util.Map;
 import java.util.Properties;
 
 import org.apache.maven.artifact.Artifact;
@@ -92,8 +90,9 @@
     @Requirement
     private ResolutionErrorHandler resolutionErrorHandler;
     
-    private Map<File, MavenProject> projectCache = new HashMap<File, 
MavenProject>();
-
+    @Requirement
+    private MavenProjectCache projectCache;
+    
     private MavenProject superProject;
 
     // ----------------------------------------------------------------------
@@ -103,8 +102,8 @@
     public MavenProject build( File pomFile, ProjectBuilderConfiguration 
configuration )
         throws ProjectBuildingException
     {
-        MavenProject project = projectCache.get( pomFile );
-        
+        MavenProject project = projectCache.get( pomFile.getAbsolutePath() );
+                
         if ( project != null )
         {
             return project;
@@ -221,8 +220,8 @@
 
         setBuildOutputDirectoryOnParent( project );
 
-        projectCache.put(  pomFile, project );
-        
+        projectCache.put( pomFile.getAbsolutePath(), project );
+                
         return project;
     }
 

Added: 
maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/project/DefaultMavenProjectCache.java
URL: 
http://svn.apache.org/viewvc/maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/project/DefaultMavenProjectCache.java?rev=773460&view=auto
==============================================================================
--- 
maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/project/DefaultMavenProjectCache.java
 (added)
+++ 
maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/project/DefaultMavenProjectCache.java
 Mon May 11 04:42:19 2009
@@ -0,0 +1,23 @@
+package org.apache.maven.project;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.codehaus.plexus.component.annotations.Component;
+
+...@component(role=MavenProjectCache.class)
+public class DefaultMavenProjectCache
+    implements MavenProjectCache
+{
+    private Map<String, MavenProject> projectCache = new HashMap<String, 
MavenProject>();
+
+    public MavenProject get( String key )
+    {
+        return projectCache.get( key );
+    }
+
+    public void put( String key, MavenProject project )
+    {
+        projectCache.put( key, project );        
+    }
+}

Propchange: 
maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/project/DefaultMavenProjectCache.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/project/DefaultMavenProjectCache.java
------------------------------------------------------------------------------
    svn:keywords = Author Date Id Revision

Added: 
maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/project/MavenProjectCache.java
URL: 
http://svn.apache.org/viewvc/maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/project/MavenProjectCache.java?rev=773460&view=auto
==============================================================================
--- 
maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/project/MavenProjectCache.java
 (added)
+++ 
maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/project/MavenProjectCache.java
 Mon May 11 04:42:19 2009
@@ -0,0 +1,8 @@
+package org.apache.maven.project;
+
+public interface MavenProjectCache
+{
+    MavenProject get( String absolutePath );
+
+    void put( String absolutePath, MavenProject project );
+}

Propchange: 
maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/project/MavenProjectCache.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
maven/components/branches/MNG-2766/maven-core/src/main/java/org/apache/maven/project/MavenProjectCache.java
------------------------------------------------------------------------------
    svn:keywords = Author Date Id Revision


Reply via email to