Class DefaultProjectDependencyGraph

    • Constructor Detail

      • DefaultProjectDependencyGraph

        public DefaultProjectDependencyGraph​(Collection<MavenProject> projects)
                                      throws org.codehaus.plexus.util.dag.CycleDetectedException,
                                             DuplicateProjectException
        Creates a new project dependency graph based on the specified projects.
        Parameters:
        projects - The projects to create the dependency graph with
        Throws:
        DuplicateProjectException
        org.codehaus.plexus.util.dag.CycleDetectedException
      • DefaultProjectDependencyGraph

        public DefaultProjectDependencyGraph​(List<MavenProject> allProjects,
                                             Collection<MavenProject> projects)
                                      throws org.codehaus.plexus.util.dag.CycleDetectedException,
                                             DuplicateProjectException
        Creates a new project dependency graph based on the specified projects.
        Parameters:
        allProjects - All collected projects.
        projects - The projects to create the dependency graph with.
        Throws:
        DuplicateProjectException
        org.codehaus.plexus.util.dag.CycleDetectedException
        Since:
        3.5.0
    • Method Detail

      • getDownstreamProjects

        public List<MavenProject> getDownstreamProjects​(MavenProject project,
                                                        boolean transitive)
        Description copied from interface: ProjectDependencyGraph
        Gets the downstream projects of the specified project. A downstream project is a project that directly or indirectly depends on the given project.
        Specified by:
        getDownstreamProjects in interface ProjectDependencyGraph
        Parameters:
        project - The project whose downstream projects should be retrieved, must not be null.
        transitive - A flag whether to retrieve all direct and indirect downstream projects or just the immediate downstream projects.
        Returns:
        The downstream projects in the build order, never null.
      • getUpstreamProjects

        public List<MavenProject> getUpstreamProjects​(MavenProject project,
                                                      boolean transitive)
        Description copied from interface: ProjectDependencyGraph
        Gets the upstream projects of the specified project. An upstream project is a project that directly or indirectly is a prerequisite of the given project.
        Specified by:
        getUpstreamProjects in interface ProjectDependencyGraph
        Parameters:
        project - The project whose upstream projects should be retrieved, must not be null.
        transitive - A flag whether to retrieve all direct and indirect upstream projects or just the immediate upstream projects.
        Returns:
        The upstream projects in the build order, never null.