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