Class AbstractPCEPSessionNegotiatorFactory

java.lang.Object
org.opendaylight.protocol.pcep.impl.AbstractPCEPSessionNegotiatorFactory
All Implemented Interfaces:
PCEPSessionNegotiatorFactory<PCEPSessionImpl>
Direct Known Subclasses:
DefaultPCEPSessionNegotiatorFactory

public abstract class AbstractPCEPSessionNegotiatorFactory extends Object implements PCEPSessionNegotiatorFactory<PCEPSessionImpl>
SessionNegotiator which takes care of making sure sessions between PCEP peers are kept unique. This needs to be further subclassed to provide either a client or server factory.
  • Constructor Details

    • AbstractPCEPSessionNegotiatorFactory

      public AbstractPCEPSessionNegotiatorFactory()
  • Method Details

    • createNegotiator

      protected abstract AbstractPCEPSessionNegotiator createNegotiator(PCEPSessionNegotiatorFactoryDependencies snd, io.netty.util.concurrent.Promise<PCEPSessionImpl> promise, io.netty.channel.Channel channel, short sessionId)
      Create a new negotiator. This method needs to be implemented by subclasses to actually provide a negotiator.
      Parameters:
      snd - PCEP Session Negotiator dependencies
      promise - Session promise to be completed by the negotiator
      channel - Associated channel
      sessionId - Session ID assigned to the resulting session
      Returns:
      a PCEP session negotiator
    • getSessionNegotiator

      public final SessionNegotiator getSessionNegotiator(PCEPSessionNegotiatorFactoryDependencies dependencies, io.netty.channel.Channel channel, io.netty.util.concurrent.Promise<PCEPSessionImpl> promise)
      Description copied from interface: PCEPSessionNegotiatorFactory
      Creates PCEPSessionNegotiator instance for income attributes.
      Specified by:
      getSessionNegotiator in interface PCEPSessionNegotiatorFactory<PCEPSessionImpl>
      Parameters:
      dependencies - contains PCEPSessionNegotiator dependencies
      channel - session channel
      promise - session promise
      Returns:
      PCEPSessionNegotiator instance
    • getSessionRegistry

      public org.opendaylight.protocol.pcep.impl.PCEPPeerRegistry getSessionRegistry()