de.unihalle.informatik.Alida.operator
Class GraphmlHelper

java.lang.Object
  extended by de.unihalle.informatik.Alida.operator.GraphmlHelper

public class GraphmlHelper
extends java.lang.Object

This class supplies some static auxiliary methods used when explicitly constructing a history graph.


Field Summary
private static boolean debug
          turns debugging on
 
Constructor Summary
GraphmlHelper()
           
 
Method Summary
(package private) static void findDataIds(org.graphdrawing.graphml.xmlns.DataType data, java.util.HashMap<java.lang.String,java.lang.String> translationTable, int nextGraphIndex)
           
(package private) static void findEdgeIds(org.graphdrawing.graphml.xmlns.EdgeType e, java.util.HashMap<java.lang.String,java.lang.String> translationTable, int nextGraphIndex)
          Insert edgeId and associated nodes into the translationTable.
private static void findIds(org.graphdrawing.graphml.xmlns.GraphType graph, java.util.HashMap<java.lang.String,java.lang.String> translationTable, int nextGraphIndex)
          Traverse the graph, find all graphIDs and insert into the translationTable.
static void findNodeIds(org.graphdrawing.graphml.xmlns.NodeType node, java.util.HashMap<java.lang.String,java.lang.String> translationTable, int nextGraphIndex)
          Insert nodeId and associated attributes into the translationTable.
static org.graphdrawing.graphml.xmlns.GraphType getToplevelGraph(org.graphdrawing.graphml.xmlns.GraphmlType graphml)
          Return the first element of type Graph found at the top level of the graphml object
private static void insertGraphId(java.lang.String id, java.util.HashMap<java.lang.String,java.lang.String> translationTable, int nextGraphIndex)
          Insert id into if not already included.
(package private) static void printData(org.graphdrawing.graphml.xmlns.DataType data, java.lang.String indent)
          Print a Data item to standard out using an indentation string
static void printEdge(org.graphdrawing.graphml.xmlns.EdgeType edge, java.lang.String indent)
          Print an Edge to standard out using an indentation string
static void printGraph(org.graphdrawing.graphml.xmlns.GraphType graph, java.lang.String indent)
          Print a graph to standard out using an indentation string
static void printGraphml(org.graphdrawing.graphml.xmlns.GraphmlType graphml)
          Print a graphml element to standard out
static void printNode(org.graphdrawing.graphml.xmlns.NodeType node, java.lang.String indent)
          Print a Node to standard out using an indentation string
(package private) static void printPort(org.graphdrawing.graphml.xmlns.PortType port, java.lang.String indent)
          Print a Port to standard out using an indentation string
(package private) static void renameDataIds(org.graphdrawing.graphml.xmlns.DataType data, java.util.HashMap<java.lang.String,java.lang.String> translationTable)
           
(package private) static void renameEdgeIds(org.graphdrawing.graphml.xmlns.EdgeType e, java.util.HashMap<java.lang.String,java.lang.String> translationTable)
           
static int renameGraphIds(org.graphdrawing.graphml.xmlns.GraphType graph, int nextGraphIndex)
          Rename all GraphIds of nodes, edges, data, etc with a new graphID.
private static void renameIds(org.graphdrawing.graphml.xmlns.GraphType graph, java.util.HashMap<java.lang.String,java.lang.String> translationTable)
          Traverse the graph, find all graphIDs and do the renaming
static void renameNodeIds(org.graphdrawing.graphml.xmlns.NodeType node, java.util.HashMap<java.lang.String,java.lang.String> translationTable)
          Traverse the graph, find all graphIDs and actually rename.
(package private) static java.lang.String translate(java.util.HashMap<java.lang.String,java.lang.String> translationTable, java.lang.String id)
          Translate the id using translationTable.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

debug

private static boolean debug
turns debugging on

Constructor Detail

GraphmlHelper

public GraphmlHelper()
Method Detail

findDataIds

static void findDataIds(org.graphdrawing.graphml.xmlns.DataType data,
                        java.util.HashMap<java.lang.String,java.lang.String> translationTable,
                        int nextGraphIndex)

findEdgeIds

static void findEdgeIds(org.graphdrawing.graphml.xmlns.EdgeType e,
                        java.util.HashMap<java.lang.String,java.lang.String> translationTable,
                        int nextGraphIndex)
Insert edgeId and associated nodes into the translationTable.


findIds

private static void findIds(org.graphdrawing.graphml.xmlns.GraphType graph,
                            java.util.HashMap<java.lang.String,java.lang.String> translationTable,
                            int nextGraphIndex)
Traverse the graph, find all graphIDs and insert into the translationTable.

Parameters:
graph - graph to traverse
translationTable -
nextGraphIndex - index to use

findNodeIds

public static void findNodeIds(org.graphdrawing.graphml.xmlns.NodeType node,
                               java.util.HashMap<java.lang.String,java.lang.String> translationTable,
                               int nextGraphIndex)
Insert nodeId and associated attributes into the translationTable.


getToplevelGraph

public static org.graphdrawing.graphml.xmlns.GraphType getToplevelGraph(org.graphdrawing.graphml.xmlns.GraphmlType graphml)
Return the first element of type Graph found at the top level of the graphml object

Parameters:
graphml - complete graphml object
Returns:
first top level graph object or null if none found

insertGraphId

private static void insertGraphId(java.lang.String id,
                                  java.util.HashMap<java.lang.String,java.lang.String> translationTable,
                                  int nextGraphIndex)
Insert id into if not already included.


printData

static void printData(org.graphdrawing.graphml.xmlns.DataType data,
                      java.lang.String indent)
Print a Data item to standard out using an indentation string

Parameters:
data - data to be print
indent - indentation string

printEdge

public static void printEdge(org.graphdrawing.graphml.xmlns.EdgeType edge,
                             java.lang.String indent)
Print an Edge to standard out using an indentation string

Parameters:
edge - edge to be print
indent - indentation string

printGraph

public static void printGraph(org.graphdrawing.graphml.xmlns.GraphType graph,
                              java.lang.String indent)
Print a graph to standard out using an indentation string

Parameters:
graph - graph to be print
indent - indentation string

printGraphml

public static void printGraphml(org.graphdrawing.graphml.xmlns.GraphmlType graphml)
Print a graphml element to standard out

Parameters:
graphml - graphml object to be print

printNode

public static void printNode(org.graphdrawing.graphml.xmlns.NodeType node,
                             java.lang.String indent)
Print a Node to standard out using an indentation string

Parameters:
node - node to be print
indent - indentation string

printPort

static void printPort(org.graphdrawing.graphml.xmlns.PortType port,
                      java.lang.String indent)
Print a Port to standard out using an indentation string

Parameters:
port - port to be print
indent - indentation string

renameDataIds

static void renameDataIds(org.graphdrawing.graphml.xmlns.DataType data,
                          java.util.HashMap<java.lang.String,java.lang.String> translationTable)

renameEdgeIds

static void renameEdgeIds(org.graphdrawing.graphml.xmlns.EdgeType e,
                          java.util.HashMap<java.lang.String,java.lang.String> translationTable)

renameGraphIds

public static int renameGraphIds(org.graphdrawing.graphml.xmlns.GraphType graph,
                                 int nextGraphIndex)
Rename all GraphIds of nodes, edges, data, etc with a new graphID. The graphId is the part of the id up (excluding) the first ALDProcessingDAG.idSeparator. The new graphIDs start with nextGraphIndex an are constructed via ALDProcessingDAG.getGraphName()

Parameters:
graph - graph to rename
nextGraphIndex - index to use

renameIds

private static void renameIds(org.graphdrawing.graphml.xmlns.GraphType graph,
                              java.util.HashMap<java.lang.String,java.lang.String> translationTable)
Traverse the graph, find all graphIDs and do the renaming


renameNodeIds

public static void renameNodeIds(org.graphdrawing.graphml.xmlns.NodeType node,
                                 java.util.HashMap<java.lang.String,java.lang.String> translationTable)
Traverse the graph, find all graphIDs and actually rename.


translate

static java.lang.String translate(java.util.HashMap<java.lang.String,java.lang.String> translationTable,
                                  java.lang.String id)
Translate the id using translationTable.