Class DependencyGraphNode

  • All Implemented Interfaces:

    
    public final class DependencyGraphNode
    
                        

    A data class representing a node in the dependency graph.

    A node corresponds to a package, which is referenced by a numeric index. A package may, however, occur multiple times in the dependency graph with different transitive dependencies. In this case, different fragment indices are used to distinguish between these occurrences.

    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
    • Enum Constant Summary

      Enum Constants 
      Enum Constant Description
    • Method Summary

      Modifier and Type Method Description
      final Integer getPkg() Stores the numeric index of the package dependency referenced by this object.
      final Integer getFragment() Stores the index of the fragment in the dependency graph where the referenced dependency is contained.
      final PackageLinkage getLinkage() The type of linkage used for the referred package from its dependent package.
      final List<Issue> getIssues() A list of Issues that occurred handling this dependency.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Method Detail

      • getPkg

         final Integer getPkg()

        Stores the numeric index of the package dependency referenced by this object. The package behind this index can be resolved by evaluating the list of identifiers stored in DependencyGraph at this index.

      • getFragment

         final Integer getFragment()

        Stores the index of the fragment in the dependency graph where the referenced dependency is contained. This is needed to uniquely identify the target if the dependency occurs multiple times in the graph.

      • getLinkage

         final PackageLinkage getLinkage()

        The type of linkage used for the referred package from its dependent package. As most of our supported package managers / languages only support dynamic linking or at least default to it, also use that as the default value here to not blow up our result files.