Class DotParser

  • All Implemented Interfaces:
    GraphConstants

    public class DotParser
    extends java.lang.Object
    implements GraphConstants
    This class parses input in DOT format, and builds the datastructures that are passed to it. It is NOT 100% compatible with the DOT format. The GraphNode and GraphEdge classes do not have any provision for dealing with different colours or shapes of nodes, there can however, be a different label and ID for a node. It also does not do anything for labels for edges. However, this class won't crash or throw an exception if it encounters any of the above attributes of an edge or a node. This class however, won't be able to deal with things like subgraphs and grouping of nodes.
    Version:
    $Revision: 10222 $ - 23 Apr 2003 - Initial version (Ashraf M. Kibriya)
    Author:
    Ashraf M. Kibriya (amk14@cs.waikato.ac.nz)
    • Constructor Summary

      Constructors 
      Constructor Description
      DotParser​(java.io.Reader input, java.util.ArrayList<GraphNode> nodes, java.util.ArrayList<GraphEdge> edges)
      Dot parser Constructor
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.String parse()
      This method parses the string or the InputStream that we passed in through the constructor and builds up the m_nodes and m_edges vectors
      static void writeDOT​(java.lang.String filename, java.lang.String graphName, java.util.ArrayList<GraphNode> nodes, java.util.ArrayList<GraphEdge> edges)
      This method saves a graph in a file in DOT format.
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • DotParser

        public DotParser​(java.io.Reader input,
                         java.util.ArrayList<GraphNode> nodes,
                         java.util.ArrayList<GraphEdge> edges)
        Dot parser Constructor
        Parameters:
        input - - The input, if passing in a string then encapsulate that in String reader object
        nodes - - Vector to put in GraphNode objects, corresponding to the nodes parsed in from the input
        edges - - Vector to put in GraphEdge objects, corresponding to the edges parsed in from the input
    • Method Detail

      • parse

        public java.lang.String parse()
        This method parses the string or the InputStream that we passed in through the constructor and builds up the m_nodes and m_edges vectors
        Returns:
        - returns the name of the graph
      • writeDOT

        public static void writeDOT​(java.lang.String filename,
                                    java.lang.String graphName,
                                    java.util.ArrayList<GraphNode> nodes,
                                    java.util.ArrayList<GraphEdge> edges)
        This method saves a graph in a file in DOT format. However, if reloaded in GraphVisualizer we would need to layout the graph again.
        Parameters:
        filename - - The name of the file to write in. (will overwrite)
        graphName - - The name of the graph
        nodes - - Vector containing all the nodes
        edges - - Vector containing all the edges