Author: markh
Date: Fri Sep 14 09:02:31 2007
New Revision: 575732

URL: http://svn.apache.org/viewvc?rev=575732&view=rev
Log:
Added readProjectWithDependencies methods to compliment readProject methods.

Modified:
    
maven/shared/trunk/maven-plugin-testing-tools/src/main/java/org/apache/maven/shared/test/plugin/ProjectTool.java

Modified: 
maven/shared/trunk/maven-plugin-testing-tools/src/main/java/org/apache/maven/shared/test/plugin/ProjectTool.java
URL: 
http://svn.apache.org/viewvc/maven/shared/trunk/maven-plugin-testing-tools/src/main/java/org/apache/maven/shared/test/plugin/ProjectTool.java?rev=575732&r1=575731&r2=575732&view=diff
==============================================================================
--- 
maven/shared/trunk/maven-plugin-testing-tools/src/main/java/org/apache/maven/shared/test/plugin/ProjectTool.java
 (original)
+++ 
maven/shared/trunk/maven-plugin-testing-tools/src/main/java/org/apache/maven/shared/test/plugin/ProjectTool.java
 Fri Sep 14 09:02:31 2007
@@ -32,6 +32,8 @@
 import org.apache.maven.artifact.handler.ArtifactHandler;
 import org.apache.maven.artifact.handler.manager.ArtifactHandlerManager;
 import org.apache.maven.artifact.repository.ArtifactRepository;
+import org.apache.maven.artifact.resolver.ArtifactNotFoundException;
+import org.apache.maven.artifact.resolver.ArtifactResolutionException;
 import org.apache.maven.model.Build;
 import org.apache.maven.model.DeploymentRepository;
 import org.apache.maven.model.DistributionManagement;
@@ -113,6 +115,43 @@
             return projectBuilder.build( pomFile, localRepository, null );
         }
         catch ( ProjectBuildingException e )
+        {
+            throw new TestToolsException( "Error building MavenProject 
instance from test pom: " + pomFile, e );
+        }
+    }
+
+    /**
+     * Construct a MavenProject instance from the specified POM file with 
dependencies.
+     */
+    public MavenProject readProjectWithDependencies( File pomFile )
+        throws TestToolsException
+    {
+        return readProjectWithDependencies( pomFile, 
repositoryTool.findLocalRepositoryDirectory() );
+    }
+
+    /**
+     * Construct a MavenProject instance from the specified POM file with 
dependencies, using the specified local
+     * repository directory to resolve ancestor POMs as needed.
+     */
+    public MavenProject readProjectWithDependencies( File pomFile, File 
localRepositoryBasedir )
+        throws TestToolsException
+    {
+        try
+        {
+            ArtifactRepository localRepository = repositoryTool
+                .createLocalArtifactRepositoryInstance( localRepositoryBasedir 
);
+
+            return projectBuilder.buildWithDependencies( pomFile, 
localRepository, null );
+        }
+        catch ( ProjectBuildingException e )
+        {
+            throw new TestToolsException( "Error building MavenProject 
instance from test pom: " + pomFile, e );
+        }
+        catch ( ArtifactResolutionException e )
+        {
+            throw new TestToolsException( "Error building MavenProject 
instance from test pom: " + pomFile, e );
+        }
+        catch ( ArtifactNotFoundException e )
         {
             throw new TestToolsException( "Error building MavenProject 
instance from test pom: " + pomFile, e );
         }


Reply via email to