Interface ConnectedEdge

  • All Known Implementing Classes:
    ConnectedEdgeImpl

    public interface ConnectedEdge
    Connected Edge class is the connected version of the Edge class from the graph yang model.

    It is composed of a reference to the associated Edge class from the Graph class, a unique Key identifier in the associated Connected Graph, and two references to the associated Connected Vertex in the connected Graph: source and destination.

     
     ---------------------------                        --------------------------------
     | Source Connected Vertex |---- Connected Edge --->| Destination Connected Vertex |
     ---------------------------                        --------------------------------
     
     
    Author:
    Olivier Dugeon, Philippe Niger
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      void addBandwidth​(Long bw, int cos)
      Add the given Bandwidth for the given Class of Service (CoS) to the associated Edge of this Connected Edge.
      void delBandwidth​(Long bw, int cos)
      Remove the given Bandwidth for the given Class of Service (CoS) to the associated Edge of this Connected Edge.
      Long getCosResvBandwidth​(int cos)
      Returns the total amount of Bandwidth consumes by all Constrained Paths that belong to the Edge associated to this Connected Edge for the given Class of Service (CoS).
      @Nullable ConnectedVertex getDestination()
      Returns the destination Connected Vertex from the Connected Graph associated to this Connected Edge.
      @NonNull Edge getEdge()
      Returns the Edge from the Graph associated to this connection.
      Long getGlobalResvBandwidth()
      Returns the total amount of Bandwidth consumes by all Constrained Paths that belong to the Edge associated to this Connected Edge for all Class of Service.
      @NonNull Long getKey()
      Returns unique key associated to this Connected Edge.
      @Nullable ConnectedVertex getSource()
      Returns the source Connected Vertex from the Connected Graph associated to this Connected Edge.
      boolean registerTrigger​(ConnectedEdgeTrigger trigger, String key)
      Register a trigger that is executed when a problem occurs on the Connected Edge.
      boolean unRegisterTrigger​(ConnectedEdgeTrigger trigger, String key)
      Un-register a trigger that is already registered on the Connected Edge.
    • Method Detail

      • getKey

        @NonNull Long getKey()
        Returns unique key associated to this Connected Edge.
        Returns:
        Edge Key
      • getEdge

        @NonNull Edge getEdge()
        Returns the Edge from the Graph associated to this connection.
        Returns:
        Edge associated to this connection
      • getSource

        @Nullable ConnectedVertex getSource()
        Returns the source Connected Vertex from the Connected Graph associated to this Connected Edge.
        Returns:
        Source Connected Vertex
      • getDestination

        @Nullable ConnectedVertex getDestination()
        Returns the destination Connected Vertex from the Connected Graph associated to this Connected Edge.
        Returns:
        Destination Connected Vertex
      • getGlobalResvBandwidth

        Long getGlobalResvBandwidth()
        Returns the total amount of Bandwidth consumes by all Constrained Paths that belong to the Edge associated to this Connected Edge for all Class of Service.
        Returns:
        Global Reserved Bandwidth
      • getCosResvBandwidth

        Long getCosResvBandwidth​(int cos)
        Returns the total amount of Bandwidth consumes by all Constrained Paths that belong to the Edge associated to this Connected Edge for the given Class of Service (CoS).
        Parameters:
        cos - Class of Service
        Returns:
        Reserved Bandwidth per CoS
      • addBandwidth

        void addBandwidth​(Long bw,
                          int cos)
        Add the given Bandwidth for the given Class of Service (CoS) to the associated Edge of this Connected Edge. This method increments by the Bandwidth value the GlobalResvBandwidth and the ReservedBandwidth[cos] attributes.
        Parameters:
        bw - Bandwidth consumed by the TE Path
        cos - Class of Service of the TE Path
      • delBandwidth

        void delBandwidth​(Long bw,
                          int cos)
        Remove the given Bandwidth for the given Class of Service (CoS) to the associated Edge of this Connected Edge. This method decrements by the Bandwidth value the GlobalResvBandwidth and the ReservedBandwidth[cos] attributes.
        Parameters:
        bw - Bandwidth consumed by the TE Path
        cos - Class of Service of the TE Path
      • registerTrigger

        boolean registerTrigger​(ConnectedEdgeTrigger trigger,
                                String key)
        Register a trigger that is executed when a problem occurs on the Connected Edge.
        Parameters:
        trigger - Trigger to be registered
        key - A unique key as string e.g. NodeId+LspId
        Returns:
        True if registration is done, false otherwise
      • unRegisterTrigger

        boolean unRegisterTrigger​(ConnectedEdgeTrigger trigger,
                                  String key)
        Un-register a trigger that is already registered on the Connected Edge.
        Parameters:
        trigger - Trigger to be unregistered
        key - A unique key as string e.g. NodeId+LspId
        Returns:
        True if un-registration is done, false otherwise