Class PCEPTopologyTracker

java.lang.Object
org.opendaylight.bgpcep.pcep.topology.provider.PCEPTopologyTracker
All Implemented Interfaces:
AutoCloseable, org.opendaylight.mdsal.binding.api.DataTreeChangeListener<TopologyPcep>

@Singleton public final class PCEPTopologyTracker extends Object implements org.opendaylight.mdsal.binding.api.DataTreeChangeListener<TopologyPcep>, AutoCloseable
Primary entrypoint into this component. Once an instance of this class is instantiated, it will subscribe to changes to the configuration datastore. There it filters only topologies which have TopologyPcep type and for each one of those instantiates a cluster-wide singleton to handle lifecycle of services attached to that topology.
  • Constructor Details

    • PCEPTopologyTracker

      @Inject public PCEPTopologyTracker(org.opendaylight.mdsal.binding.api.DataBroker dataBroker, org.opendaylight.mdsal.singleton.api.ClusterSingletonServiceProvider singletonService, org.opendaylight.mdsal.binding.api.RpcProviderService rpcProviderRegistry, PCEPExtensionConsumerContext extensions, PCEPDispatcher pcepDispatcher, InstructionSchedulerFactory instructionSchedulerFactory, PceServerProvider pceServerProvider)
  • Method Details

    • getMessageRegistry

      public MessageRegistry getMessageRegistry()
    • getPCEPDispatcher

      public PCEPDispatcher getPCEPDispatcher()
    • getRpcProviderRegistry

      public org.opendaylight.mdsal.binding.api.RpcProviderService getRpcProviderRegistry()
    • getDataBroker

      public org.opendaylight.mdsal.binding.api.DataBroker getDataBroker()
    • getStateRegistry

      public org.opendaylight.bgpcep.pcep.topology.provider.SessionStateRegistry getStateRegistry()
    • getPceServerProvider

      public PceServerProvider getPceServerProvider()
    • getTimer

      public io.netty.util.Timer getTimer()
    • close

      @PreDestroy public void close()
      Specified by:
      close in interface AutoCloseable
    • onDataTreeChanged

      public void onDataTreeChanged(List<org.opendaylight.mdsal.binding.api.DataTreeModification<TopologyPcep>> changes)
      Specified by:
      onDataTreeChanged in interface org.opendaylight.mdsal.binding.api.DataTreeChangeListener<TopologyPcep>