Class IWorkspace.ProjectOrder

  • Enclosing interface:
    IWorkspace

    public static final class IWorkspace.ProjectOrder
    extends Object
    Data structure for holding the multi-part outcome of IWorkspace.computeProjectOrder.

    This class is not intended to be instantiated by clients.

    Since:
    2.1
    See Also:
    IWorkspace.computeProjectOrder(IProject[])
    • Field Summary

      Fields 
      Modifier and Type Field Description
      boolean hasCycles
      Indicates whether any of the accessible projects in projects are involved in non-trivial cycles.
      IProject[][] knots
      A list of knots in the project reference graph.
      IProject[] projects
      A list of projects ordered so as to honor the project reference, and build configuration reference, relationships between these projects wherever possible.
    • Constructor Summary

      Constructors 
      Constructor Description
      ProjectOrder​(IProject[] projects, boolean hasCycles, IProject[][] knots)
      Creates an instance with the given values.
    • Field Detail

      • projects

        public IProject[] projects
        A list of projects ordered so as to honor the project reference, and build configuration reference, relationships between these projects wherever possible. The elements are a subset of the ones passed as the projects parameter to IWorkspace.computeProjectOrder, where inaccessible (closed or non-existent) projects have been omitted.
      • hasCycles

        public boolean hasCycles
        Indicates whether any of the accessible projects in projects are involved in non-trivial cycles. true if the reference graph contains at least one cycle involving two or more of the projects in projects, and false if none of the projects in projects are involved in cycles.
      • knots

        public IProject[][] knots
        A list of knots in the project reference graph. This list is empty if the project reference graph does not contain cycles. If the project reference graph contains cycles, each element is a knot of two or more accessible projects from projects that are involved in a cycle of mutually dependent references.
    • Constructor Detail

      • ProjectOrder

        public ProjectOrder​(IProject[] projects,
                            boolean hasCycles,
                            IProject[][] knots)
        Creates an instance with the given values.

        This class is not intended to be instantiated by clients.

        Parameters:
        projects - initial value of projects field
        hasCycles - initial value of hasCycles field
        knots - initial value of knots field