Class Graph<DataT,NodeT extends Node<DataT,NodeT>>

java.lang.Object
com.azure.resourcemanager.resources.fluentcore.dag.Graph<DataT,NodeT>
Type Parameters:
DataT - the type of the data stored in the graph's nodes
NodeT - the type of the nodes in the graph
Direct Known Subclasses:
DAGraph

public class Graph<DataT,NodeT extends Node<DataT,NodeT>> extends Object
Type representing a directed graph data structure.

Each node in a graph is represented by Node

  • Field Details

  • Constructor Details

    • Graph

      public Graph()
      Creates a directed graph.
  • Method Details

    • getNodes

      public Collection<NodeT> getNodes()
      Gets all nodes in the graph.
      Returns:
      all nodes in the graph.
    • addNode

      public void addNode(NodeT node)
      Adds a node to this graph.
      Parameters:
      node - the node
    • visit

      public void visit(Graph.Visitor<Node<DataT,NodeT>> visitor)
      Perform DFS visit in this graph.

      The directed graph will be traversed in DFS order and the visitor will be notified as search explores each node and edge.

      Parameters:
      visitor - the graph visitor
    • findPath

      protected String findPath(String start, String end)
      Find the path.
      Parameters:
      start - key of first node in the path
      end - key of last node in the path
      Returns:
      string containing the nodes keys in the path separated by arrow symbol