Hervé Boutemy <https://plus.google.com/u/0/107251243568189719606?prsrc=4> said: in interface DependencyGraphBuilder, why expect a Map reactorProjects, when a List seems simpler and more natural (result from MavenSession.getProjects())?
Good point. We could pass in List<Project> and construct the Map internally. Where/How would you like me to make the change? William On Mon, May 19, 2014 at 12:51 AM, Hervé BOUTEMY <herve.bout...@free.fr>wrote: > > + DependencyNode buildDependencyGraph( > > + MavenProject project, ArtifactFilter filter, Map<String, > > MavenProject> reactorProjects ) + throws > > DependencyGraphBuilderException; > > why expect a Map<String, MavenProject> reactorProjects, when a > List<MavenProject> seems simpler and more natural (result from > MavenSession.getProjects())? > > Regards, > > Hervé > > Le samedi 17 mai 2014 14:33:41 jvan...@apache.org a écrit : > > Author: jvanzyl > > Date: Sat May 17 14:33:40 2014 > > New Revision: 1595491 > > > > URL: http://svn.apache.org/r1595491 > > Log: > > MSHARED-336: Added an overloaded method to DependencyGraphBuilder that > > accepts the reactor projects and resolves dependencies from within the > > reactor. - Added multi-module-test to validate that the new method works > > against both direct and transitive deps. - Added multi-module-plugin to > be > > used to validate multi-module-test - Added ProjectReferenceKeyGenerator > as > > there is currently no public method to generate the key for > > MavenProject#projectReferences, MavenSession#projectMap or the Map of > > reactor projects that we will use. - Separated the reflective invocation > > out into the Invoker class. > > - Made maven-project dependency scope=provided as at runtime we want the > > version in the maven install, not 2.2.0 Submitted by: William Ferguson > > <william.fergu...@xandar.com.au> > > > ... > > > maven/shared/trunk/maven-dependency-tree/src/main/java/org/apache/maven/sha > > red/dependency/graph/DependencyGraphBuilder.java (original) +++ > > > maven/shared/trunk/maven-dependency-tree/src/main/java/org/apache/maven/sha > > red/dependency/graph/DependencyGraphBuilder.java Sat May 17 14:33:40 > 2014 @@ > > -22,6 +22,8 @@ package org.apache.maven.shared.dependen > > import org.apache.maven.artifact.resolver.filter.ArtifactFilter; > > import org.apache.maven.project.MavenProject; > > > > +import java.util.Map; > > + > > /** > > * Maven project dependency graph builder API, neutral against Maven 2 > or > > Maven 3. * > > @@ -31,7 +33,10 @@ import org.apache.maven.project.MavenPro > > public interface DependencyGraphBuilder > > { > > /** > > - * Build the dependency graph. > > + * Build the dependency graph from the repository. > > + * > > + * This is the same as {@link > > #buildDependencyGraph(org.apache.maven.project.MavenProject, + * > > org.apache.maven.artifact.resolver.filter.ArtifactFilter, java.util.Map)} > > with an empty reactorProjects Map. * > > * @param project the project > > * @param filter artifact filter (can be <code>null</code> > > @@ -40,4 +45,18 @@ public interface DependencyGraphBuilder > > */ > > DependencyNode buildDependencyGraph( MavenProject project, > > ArtifactFilter filter ) throws DependencyGraphBuilderException; > > + > > + /** > > + * Build the dependency graph including any dependencies contained > in > > the reactor projects. + * > > + * @param project the project > > + * @param filter artifact filter (can be <code>null</code> > > + * @param reactorProjects Map of those projects contained in the > > reactor. + * Key is made up of > > groupId-artifactId-version. + * @return the dependency graph > > + * @throws DependencyGraphBuilderException > > + */ > > + DependencyNode buildDependencyGraph( > > + MavenProject project, ArtifactFilter filter, Map<String, > > MavenProject> reactorProjects ) + throws > > DependencyGraphBuilderException; > > } > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org > For additional commands, e-mail: dev-h...@maven.apache.org > >