Package org.apache.maven.graph
Class DefaultGraphBuilder
- java.lang.Object
-
- org.apache.maven.graph.DefaultGraphBuilder
-
- All Implemented Interfaces:
GraphBuilder
@Component(role=GraphBuilder.class, hint="graphBuilder") public class DefaultGraphBuilder extends java.lang.Object implements GraphBuilder
Builds theinter-dependencies graph
between projects in the reactor.
-
-
Field Summary
Fields Modifier and Type Field Description private org.codehaus.plexus.logging.Logger
logger
protected ProjectBuilder
projectBuilder
-
Fields inherited from interface org.apache.maven.graph.GraphBuilder
HINT
-
-
Constructor Summary
Constructors Constructor Description DefaultGraphBuilder()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Result<ProjectDependencyGraph>
build(MavenSession session)
private void
collectProjects(java.util.List<MavenProject> projects, java.util.List<java.io.File> files, MavenExecutionRequest request)
private java.lang.String
formatProjects(java.util.List<MavenProject> projects)
private java.util.List<MavenProject>
getProjectsForMavenReactor(MavenSession session)
private boolean
isMatchingProject(MavenProject project, java.lang.String selector, java.io.File reactorDirectory)
private Result<ProjectDependencyGraph>
reactorDependencyGraph(MavenSession session, java.util.List<MavenProject> projects)
private Result<ProjectDependencyGraph>
sessionDependencyGraph(MavenSession session)
private java.util.List<MavenProject>
trimExcludedProjects(java.util.List<MavenProject> projects, MavenExecutionRequest request)
private java.util.List<MavenProject>
trimResumedProjects(java.util.List<MavenProject> projects, MavenExecutionRequest request)
private java.util.List<MavenProject>
trimSelectedProjects(java.util.List<MavenProject> projects, ProjectDependencyGraph graph, MavenExecutionRequest request)
private void
validateProjects(java.util.List<MavenProject> projects)
-
-
-
Field Detail
-
logger
@Requirement private org.codehaus.plexus.logging.Logger logger
-
projectBuilder
@Requirement protected ProjectBuilder projectBuilder
-
-
Method Detail
-
build
public Result<ProjectDependencyGraph> build(MavenSession session)
- Specified by:
build
in interfaceGraphBuilder
-
sessionDependencyGraph
private Result<ProjectDependencyGraph> sessionDependencyGraph(MavenSession session) throws org.codehaus.plexus.util.dag.CycleDetectedException, DuplicateProjectException
- Throws:
org.codehaus.plexus.util.dag.CycleDetectedException
DuplicateProjectException
-
reactorDependencyGraph
private Result<ProjectDependencyGraph> reactorDependencyGraph(MavenSession session, java.util.List<MavenProject> projects) throws org.codehaus.plexus.util.dag.CycleDetectedException, DuplicateProjectException, MavenExecutionException
- Throws:
org.codehaus.plexus.util.dag.CycleDetectedException
DuplicateProjectException
MavenExecutionException
-
trimSelectedProjects
private java.util.List<MavenProject> trimSelectedProjects(java.util.List<MavenProject> projects, ProjectDependencyGraph graph, MavenExecutionRequest request) throws MavenExecutionException
- Throws:
MavenExecutionException
-
trimExcludedProjects
private java.util.List<MavenProject> trimExcludedProjects(java.util.List<MavenProject> projects, MavenExecutionRequest request) throws MavenExecutionException
- Throws:
MavenExecutionException
-
trimResumedProjects
private java.util.List<MavenProject> trimResumedProjects(java.util.List<MavenProject> projects, MavenExecutionRequest request) throws MavenExecutionException
- Throws:
MavenExecutionException
-
formatProjects
private java.lang.String formatProjects(java.util.List<MavenProject> projects)
-
isMatchingProject
private boolean isMatchingProject(MavenProject project, java.lang.String selector, java.io.File reactorDirectory)
-
getProjectsForMavenReactor
private java.util.List<MavenProject> getProjectsForMavenReactor(MavenSession session) throws ProjectBuildingException
- Throws:
ProjectBuildingException
-
collectProjects
private void collectProjects(java.util.List<MavenProject> projects, java.util.List<java.io.File> files, MavenExecutionRequest request) throws ProjectBuildingException
- Throws:
ProjectBuildingException
-
validateProjects
private void validateProjects(java.util.List<MavenProject> projects)
-
-