Package org.apache.maven.graph
Class DefaultGraphBuilder
java.lang.Object
org.apache.maven.graph.DefaultGraphBuilder
- All Implemented Interfaces:
GraphBuilder
@Named("graphBuilder")
@Singleton
public class DefaultGraphBuilder
extends Object
implements GraphBuilder
Builds the
inter-dependencies graph
between projects in the reactor.-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final BuildResumptionDataRepository
private static final org.slf4j.Logger
private final MultiModuleCollectionStrategy
private final PomlessCollectionStrategy
private final ProjectSelector
private final RequestPomCollectionStrategy
Fields inherited from interface org.apache.maven.graph.GraphBuilder
HINT
-
Constructor Summary
ConstructorsConstructorDescriptionDeprecated.DefaultGraphBuilder
(BuildResumptionDataRepository buildResumptionDataRepository, PomlessCollectionStrategy pomlessCollectionStrategy, MultiModuleCollectionStrategy multiModuleCollectionStrategy, RequestPomCollectionStrategy requestPomCollectionStrategy) -
Method Summary
Modifier and TypeMethodDescriptionbuild
(MavenSession session) private void
enrichRequestFromResumptionData
(List<MavenProject> projects, MavenExecutionRequest request) private String
formatProjects
(List<MavenProject> projects) private List
<MavenProject> getProjectsForMavenReactor
(MavenSession session) private List
<MavenProject> getProjectsInRequestScope
(MavenExecutionRequest request, List<MavenProject> projects) private List
<MavenProject> includeAlsoMakeTransitively
(List<MavenProject> projects, MavenExecutionRequest request, ProjectDependencyGraph graph) private void
processPackagingAttribute
(List<MavenProject> projects, MavenExecutionRequest request) private Result
<ProjectDependencyGraph> reactorDependencyGraph
(MavenSession session, List<MavenProject> projects) private Result
<ProjectDependencyGraph> sessionDependencyGraph
(MavenSession session) private List
<MavenProject> trimExcludedProjects
(List<MavenProject> projects, ProjectDependencyGraph graph, MavenExecutionRequest request) private List
<MavenProject> trimProjectsToRequest
(List<MavenProject> activeProjects, ProjectDependencyGraph graph, MavenExecutionRequest request) private List
<MavenProject> trimResumedProjects
(List<MavenProject> projects, ProjectDependencyGraph graph, MavenExecutionRequest request) private List
<MavenProject> trimSelectedProjects
(List<MavenProject> projects, List<MavenProject> allSortedProjects, ProjectDependencyGraph graph, MavenExecutionRequest request) private void
validateProjects
(List<MavenProject> projects, MavenExecutionRequest request)
-
Field Details
-
LOGGER
private static final org.slf4j.Logger LOGGER -
buildResumptionDataRepository
-
pomlessCollectionStrategy
-
multiModuleCollectionStrategy
-
requestPomCollectionStrategy
-
projectSelector
-
-
Constructor Details
-
DefaultGraphBuilder
Deprecated. -
DefaultGraphBuilder
@Inject public DefaultGraphBuilder(BuildResumptionDataRepository buildResumptionDataRepository, PomlessCollectionStrategy pomlessCollectionStrategy, MultiModuleCollectionStrategy multiModuleCollectionStrategy, RequestPomCollectionStrategy requestPomCollectionStrategy)
-
-
Method Details
-
build
- Specified by:
build
in interfaceGraphBuilder
-
sessionDependencyGraph
private Result<ProjectDependencyGraph> sessionDependencyGraph(MavenSession session) throws CycleDetectedException, DuplicateProjectException -
reactorDependencyGraph
private Result<ProjectDependencyGraph> reactorDependencyGraph(MavenSession session, List<MavenProject> projects) throws CycleDetectedException, DuplicateProjectException, MavenExecutionException -
trimProjectsToRequest
private List<MavenProject> trimProjectsToRequest(List<MavenProject> activeProjects, ProjectDependencyGraph graph, MavenExecutionRequest request) throws MavenExecutionException - Throws:
MavenExecutionException
-
trimSelectedProjects
private List<MavenProject> trimSelectedProjects(List<MavenProject> projects, List<MavenProject> allSortedProjects, ProjectDependencyGraph graph, MavenExecutionRequest request) throws MavenExecutionException - Throws:
MavenExecutionException
-
trimResumedProjects
private List<MavenProject> trimResumedProjects(List<MavenProject> projects, ProjectDependencyGraph graph, MavenExecutionRequest request) throws MavenExecutionException - Throws:
MavenExecutionException
-
trimExcludedProjects
private List<MavenProject> trimExcludedProjects(List<MavenProject> projects, ProjectDependencyGraph graph, MavenExecutionRequest request) throws MavenExecutionException - Throws:
MavenExecutionException
-
includeAlsoMakeTransitively
private List<MavenProject> includeAlsoMakeTransitively(List<MavenProject> projects, MavenExecutionRequest request, ProjectDependencyGraph graph) throws MavenExecutionException - Throws:
MavenExecutionException
-
enrichRequestFromResumptionData
private void enrichRequestFromResumptionData(List<MavenProject> projects, MavenExecutionRequest request) -
getProjectsInRequestScope
private List<MavenProject> getProjectsInRequestScope(MavenExecutionRequest request, List<MavenProject> projects) throws MavenExecutionException - Throws:
MavenExecutionException
-
formatProjects
-
getProjectsForMavenReactor
private List<MavenProject> getProjectsForMavenReactor(MavenSession session) throws ProjectBuildingException - Throws:
ProjectBuildingException
-
validateProjects
private void validateProjects(List<MavenProject> projects, MavenExecutionRequest request) throws MavenExecutionException - Throws:
MavenExecutionException
-
processPackagingAttribute
private void processPackagingAttribute(List<MavenProject> projects, MavenExecutionRequest request) throws MavenExecutionException - Throws:
MavenExecutionException
-
DefaultGraphBuilder(BuildResumptionDataRepository, PomlessCollectionStrategy, MultiModuleCollectionStrategy, RequestPomCollectionStrategy)
instead or rely on JSR 330