Interface Vertices<V extends Vertex>

  • All Superinterfaces:
    Iterable<V>
    All Known Subinterfaces:
    Nodes<N>
    All Known Implementing Classes:
    NodesImpl, VerticesImpl

    public interface Vertices<V extends Vertex>
    extends Iterable<V>
    Container and factory class for vertices in a graph, also to be used to create and register vertices of any (derived) type
    Author:
    markr
    • Method Detail

      • remove

        void remove​(V entity)
        Remove
        Parameters:
        entity - to remove
      • remove

        void remove​(long id)
        Remove by id
        Parameters:
        id - to remove vertex for
      • createNew

        V createNew()
        Create a new vertex (without registering on this class)
        Returns:
        created vertex
      • register

        V register​(V entity)
        Add to the container
        Parameters:
        entity - to be registered in this network
        Returns:
        entity, in case it overrides an existing entry, the removed entryis returned
      • registerNew

        V registerNew()
        Create and register new entity
        Returns:
        new node created
      • size

        int size()
        Return number of registered entity
        Returns:
        number of registered entity
      • isEmpty

        default boolean isEmpty()
        When there are no vertices the nodes are considered empty
        Returns:
        true when no vertices exist yet, false otherwise
      • get

        V get​(long id)
        Find a entity by its d
        Parameters:
        id - Id of entity
        Returns:
        retrieved entity