sofya.apps.dejavu
Class EdgeSelector.EdgeMatchData

java.lang.Object
  extended by sofya.apps.dejavu.EdgeSelector.EdgeMatchData
Enclosing class:
EdgeSelector

public static class EdgeSelector.EdgeMatchData
extends java.lang.Object

Data container class which records information about the outgoing edges from nodes in each graph and the path (or paths) the traverser should follow next.

A subclass of EdgeTraverser can use knowledge of the particular types of edges and nodes contained in the graphs to produce the edges and traversal data contained in an object of this class. It will generally also want to ensure that edges recorded by an object of this class are cast to the most specific runtime type of which it is aware (so that the type can be safely recovered with a cast at a future point).


Constructor Summary
protected EdgeSelector.EdgeMatchData(EdgeSelector.EdgeTraversal traversal, Edge oem, Edge nem, Edge[] ooe, Edge[] noe)
          Creates a new edge data object.
 
Method Summary
 Edge newEdgeMatch()
          Gets the matching edge from the new graph, which the traverser should follow if it is not directed to follow all edges.
 Edge[] newOutEdges()
          Gets the outgoing edges from a node in the new graph.
 Edge oldEdgeMatch()
          Gets the matching edge from the old graph, which the traverser should follow if it is not directed to follow all edges.
 Edge[] oldOutEdges()
          Gets the outgoing edges from a node in the old graph.
 EdgeSelector.EdgeTraversal traversal()
          Gets the traversal instruction which directs the graph traverser how to proceed.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

EdgeSelector.EdgeMatchData

protected EdgeSelector.EdgeMatchData(EdgeSelector.EdgeTraversal traversal,
                                     Edge oem,
                                     Edge nem,
                                     Edge[] ooe,
                                     Edge[] noe)
Creates a new edge data object.

Parameters:
traversal - Edge traversal information which directs the graph traverser how to proceed.
oem - Matching edge to follow in the old graph.
nem - Matching edge to follow in the new graph.
ooe - Outgoing edges from a node in the old graph.
noe - Outgoing edges from a node in the new graph.
Method Detail

traversal

public EdgeSelector.EdgeTraversal traversal()
Gets the traversal instruction which directs the graph traverser how to proceed.

Returns:
An object containing information which directs the graph traverser how to proceed.

oldEdgeMatch

public Edge oldEdgeMatch()
Gets the matching edge from the old graph, which the traverser should follow if it is not directed to follow all edges.

Returns:
Edge in the old graph which should be followed by the traverser if it is not directed to follow all edges.

newEdgeMatch

public Edge newEdgeMatch()
Gets the matching edge from the new graph, which the traverser should follow if it is not directed to follow all edges.

Returns:
Edge in the new graph which should be followed by the traverser if it is not directed to follow all edges.

oldOutEdges

public Edge[] oldOutEdges()
Gets the outgoing edges from a node in the old graph.

Returns:
Outgoing edges in the old graph recorded by this object.

newOutEdges

public Edge[] newOutEdges()
Gets the outgoing edges from a node in the new graph.

Returns:
Outgoing edges in the new graph recorded by this object.