Class AbstractEdge

java.lang.Object
org.graphstream.graph.implementations.AbstractElement
org.graphstream.graph.implementations.AbstractEdge
All Implemented Interfaces:
Edge, Element

public class AbstractEdge
extends AbstractElement
implements Edge

This class provides a basic implementation of Edge interface, to minimize the effort required to implement this interface.

Although this class is abstract it implements all the methods of Edge and AbstractElement. It has a low memory overhead (3 references and a boolean as fields). All Edge methods are executed in O(1) time.

  • Method Details

    • toString

      public String toString()
      Description copied from class: AbstractElement
      Override the Object method
      Overrides:
      toString in class AbstractElement
    • getNode0

      public Node getNode0()
      Description copied from interface: Edge
      First node of the edge.

      This is equivalent to the Edge.getSourceNode() method, but may be clearer in the source code if the graph you are using is not directed.

      Specified by:
      getNode0 in interface Edge
      Returns:
      The first node of the edge.
      See Also:
      Edge.getNode1(), Edge.getSourceNode()
    • getNode1

      public Node getNode1()
      Description copied from interface: Edge
      Second node of the edge.

      This is equivalent to the Edge.getTargetNode() method, but may be clearer in the source code if the graph you are using is not directed.

      Specified by:
      getNode1 in interface Edge
      Returns:
      The second node of the edge.
      See Also:
      Edge.getNode0(), Edge.getTargetNode()
    • getOpposite

      public Node getOpposite​(Node node)
      Description copied from interface: Edge
      When knowing one node and one edge of this node, this method return the node at the other end of the edge.

      Return null if the given node is not at any end of the edge.

      Specified by:
      getOpposite in interface Edge
      Parameters:
      node - The node we search the opposite of.
      Returns:
      the opposite node of the given node.
    • getSourceNode

      public Node getSourceNode()
      Description copied from interface: Edge
      Start node.

      When the edge is directed this is the source node, in this case you can get the opposite node using Edge.getTargetNode(). This is equivalent to the Edge.getNode0() method but may be clearer in the source code if the graph you are using is directed.

      Specified by:
      getSourceNode in interface Edge
      Returns:
      The origin node of the edge.
      See Also:
      Edge.getNode0(), Edge.getTargetNode()
    • getTargetNode

      public Node getTargetNode()
      Description copied from interface: Edge
      End node.

      When the edge is directed this is the target node, in this case you can get the opposite node using Edge.getSourceNode(). This is equivalent to the Edge.getNode1() method but may be clearer in the source code if the graph you are using is directed.

      Specified by:
      getTargetNode in interface Edge
      Returns:
      The destination node of the edge.
      See Also:
      Edge.getNode1(), Edge.getSourceNode()
    • isDirected

      public boolean isDirected()
      Description copied from interface: Edge
      Is the edge directed ?.
      Specified by:
      isDirected in interface Edge
      Returns:
      True if the edge is directed.
    • isLoop

      public boolean isLoop()
      Description copied from interface: Edge
      Does the source and target of this edge identify the same node ?.
      Specified by:
      isLoop in interface Edge
      Returns:
      True if this edge is a loop.