Interface DirectedConnectoid

  • All Superinterfaces:
    Comparable<IdAble>, Connectoid, ExternalIdAble, IdAble, Iterable<Zone>, ManagedId
    All Known Implementing Classes:
    DirectedConnectoidImpl

    public interface DirectedConnectoid
    extends Connectoid
    A directed connectoid is referring to an access edge segment in a network (layer) which is directed for access hence, the connectoid also being directed. It is used in situations where not all segments connected to the access node may be available to access the connectoid
    Author:
    markr
    • Field Detail

      • DIRECTED_CONNECTOID_ID_CLASS

        static final Class<DirectedConnectoid> DIRECTED_CONNECTOID_ID_CLASS
        the class to use for the additional directed connectoid id generation
      • DEFAULT_NODE_ACCESS_DOWNSTREAM

        static final boolean DEFAULT_NODE_ACCESS_DOWNSTREAM
        default node access is set to the downstream end of a link segment
        See Also:
        Constant Field Values
    • Method Detail

      • getDirectedConnectoidId

        long getDirectedConnectoidId()
        Collect the directed connectoid id
        Returns:
        directed connectoid id
      • deepClone

        DirectedConnectoid deepClone()
        An id entity should always support a deep copy, i.e., all "owned" members will be deep copied when a clone of this instance is created via this call. To be used with caution if not called by managed id container related code
        Specified by:
        deepClone in interface Connectoid
        Specified by:
        deepClone in interface IdAble
        Returns:
        deep copy of entity
      • getAccessLinkSegment

        LinkSegment getAccessLinkSegment()
        The edge segment that provides access
        Returns:
        access edge segment
      • replaceAccessLinkSegment

        void replaceAccessLinkSegment​(LinkSegment accessEdgeSegment)
        Replace the access link segment for this connectoid
        Parameters:
        accessEdgeSegment - to use
      • setNodeAccessDownstream

        void setNodeAccessDownstream​(boolean nodeAccessDownstream)
        set if the node access is downstream or not
        Parameters:
        nodeAccessDownstream - true to set it downstream, false otherwise
      • isNodeAccessDownstream

        boolean isNodeAccessDownstream()
        determine if the node access is downstream or not
        Returns:
        true when downstream, false otherwise, i.e., upstream
      • getDirectedConnectoidIdClass

        default Class<DirectedConnectoid> getDirectedConnectoidIdClass()
        the class for directed connectoid id generation
        Returns:
        class to use
      • getAccessNode

        default Node getAccessNode()
        Based on the edge segment and the location (upstream/downstream) of the access point, collect the access node
        Returns:
        accessNode to use
      • hasAccessLinkSegment

        default boolean hasAccessLinkSegment()
        Verify if an access link segment is present
        Returns:
        true when present, false otherwise