Interface Edge

  • All Superinterfaces:
    Element

    public interface Edge
    extends Element
    An Edge links two Vertex objects. Along with its Property objects, an Edge has both a Direction and a label. The Direction determines which Vertex is the tail Vertex (out Vertex) and which Vertex is the head Vertex (in Vertex). The Edge label determines the type of relationship that exists between the two vertices.

    Diagrammatically:

     outVertex ---label---> inVertex.
     
    Author:
    Marko A. Rodriguez (http://markorodriguez.com), Stephen Mallette (http://stephen.genoprime.com)
    • Field Detail

      • DEFAULT_LABEL

        static final String DEFAULT_LABEL
        The default label to use for an edge. This is typically never used as when an edge is created, an edge label is required to be specified.
        See Also:
        Constant Field Values
    • Method Detail

      • vertices

        Iterator<Vertex> vertices​(Direction direction)
        Retrieve the vertex (or vertices) associated with this edge as defined by the direction. If the direction is Direction.BOTH then the iterator order is: Direction.OUT then Direction.IN.
        Parameters:
        direction - Get the incoming vertex, outgoing vertex, or both vertices
        Returns:
        An iterator with 1 or 2 vertices
      • outVertex

        default Vertex outVertex()
        Get the outgoing/tail vertex of this edge.
        Returns:
        the outgoing vertex of the edge
      • inVertex

        default Vertex inVertex()
        Get the incoming/head vertex of this edge.
        Returns:
        the incoming vertex of the edge
      • bothVertices

        default Iterator<Vertex> bothVertices()
        Get both the outgoing and incoming vertices of this edge. The first vertex in the iterator is the outgoing vertex. The second vertex in the iterator is the incoming vertex.
        Returns:
        an iterator of the two vertices of this edge
      • properties

        <V> Iterator<Property<V>> properties​(String... propertyKeys)
        Get an Iterator of properties where the propertyKeys is meant to be a filter on the available keys. If no keys are provide then return all the properties.
        Specified by:
        properties in interface Element