Class ManagedTePath

java.lang.Object
org.opendaylight.bgpcep.pcep.server.provider.ManagedTePath
All Implemented Interfaces:
ConnectedEdgeTrigger, ConnectedVertexTrigger

public class ManagedTePath extends Object implements ConnectedEdgeTrigger, ConnectedVertexTrigger
  • Constructor Details

    • ManagedTePath

      public ManagedTePath(ManagedTeNode teNode, org.opendaylight.yangtools.yang.binding.InstanceIdentifier<org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.Topology> topology)
    • ManagedTePath

      public ManagedTePath(ManagedTeNode teNode, ConfiguredLsp lsp, org.opendaylight.yangtools.yang.binding.InstanceIdentifier<org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.Topology> topology)
    • ManagedTePath

      public ManagedTePath(ManagedTeNode teNode, ManagedTePath mngPath)
  • Method Details

    • getLsp

      public ConfiguredLsp getLsp()
    • getManagedTeNode

      public ManagedTeNode getManagedTeNode()
    • getType

      public PathType getType()
    • getTopology

      public org.opendaylight.yangtools.yang.binding.InstanceIdentifier<org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.Topology> getTopology()
    • setConfiguredLsp

      public ManagedTePath setConfiguredLsp(ConfiguredLsp lsp)
    • setType

      public ManagedTePath setType(PathType type)
    • sync

      public void sync()
      Mark this TE Path as synchronized and update the Data Store accordingly.
    • disabled

      public void disabled()
      Disabling this TE Path by marking it as Configured. Do not update the Data Store.
    • failed

      public void failed()
      Mark this TE Path as Failed.
    • isSent

      public boolean isSent()
    • checkReportedPath

      public PathStatus checkReportedPath(ConfiguredLsp lsp)
      Compare the current TE Path against the reported LSP to determine if there are in Sync, need Update or considered as in Failure if already updated.
      Parameters:
      lsp - LSP that corresponds to the reported LSP
      Returns:
      new LSP status
    • setGraph

      public void setGraph(ConnectedGraph graph)
    • unsetGraph

      public void unsetGraph(ConnectedGraph graph)
    • updateGraph

      public void updateGraph(ConnectedGraph graph)
    • unSetTriggerFlag

      public void unSetTriggerFlag()
      Reset Triggered Flag.
    • verifyVertex

      public boolean verifyVertex(ConnectedVertex next, Vertex current)
      Description copied from interface: ConnectedVertexTrigger
      This method verifies the next Vertex attribute against the current one to determine if is necessary to launch correction which are left at the discretion of the class which implements this method.

      If current Vertex is null, this means that the Connected Vertex will be added in the Connected Graph. If next Connected Vertex is null, this means that the Connect Vertex will be deleted from the Connected Graph. Otherwise, this is an update of Vertex attributes.

      Specified by:
      verifyVertex in interface ConnectedVertexTrigger
      Parameters:
      next - Next Connected Vertex to be installed in the Connected Graph
      current - Current Vertex installed in the Connected Graph
      Returns:
      True if the Vertex need attention, false otherwise
    • verifyEdge

      public boolean verifyEdge(ConnectedEdge next, Edge current)
      Description copied from interface: ConnectedEdgeTrigger
      This method verifies the next Edge attributes against the current one to determine if is necessary to launch correction which are left at the discretion of the class which implements this method.

      If current Edge is null, this means that the Connected Edge will be added in the Connected Graph. If next Edge is null, this means that the Connected Edge will be deleted from the Connected Graph. Otherwise, this is an update of Edge attributes.

      Specified by:
      verifyEdge in interface ConnectedEdgeTrigger
      Parameters:
      next - Next Connected Edge to be installed in the Connected Graph
      current - Current Edge attributes in the Connected Graph
      Returns:
      True if the Edge need attention, false otherwise
    • addPath

      public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<AddLspOutput>> addPath(AddLsp addLsp)
      Call add-lsp RPC to enforce the LSP into the PCC. This action will trigger a PcInitiate message to the PCC.
      Parameters:
      addLsp - Add Lsp RPC
      Returns:
      Add LSP Output to convey the RPC result
    • updatePath

      public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<UpdateLspOutput>> updatePath(UpdateLsp updateLsp)
      Call update-lsp RPC to enforce the LSP into the PCC. This action will trigger a PcUpdate message to the PCC.
      Parameters:
      updateLsp - Update LSP RPC
      Returns:
      Update LSP Output to convey the RPC result
    • removePath

      public com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<RemoveLspOutput>> removePath(RemoveLsp removeLsp)
      Call remove-lsp RPC to remove the LSP from the PCC. This action will trigger a PcInitiate message to the PCC with 'R' bit set.
      Parameters:
      removeLsp - Remove Lsp RPC
      Returns:
      Remove LSP Output to convey the RPC result
    • addToDataStore

      public void addToDataStore()
      Add LSP components to the Operational Data Store.
    • updateToDataStore

      public void updateToDataStore()
      Update LSP components to the Data Store.
    • removeFromDataStore

      public void removeFromDataStore()
      Remove LSP components to the Data Store.
    • toString

      public String toString()
      Overrides:
      toString in class Object