Class AbstractPCEPSessionNegotiatorFactory

  • All Implemented Interfaces:
    org.opendaylight.protocol.pcep.PCEPSessionNegotiatorFactory<PCEPSessionImpl>
    Direct Known Subclasses:
    DefaultPCEPSessionNegotiatorFactory

    public abstract class AbstractPCEPSessionNegotiatorFactory
    extends Object
    implements org.opendaylight.protocol.pcep.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 Detail

      • AbstractPCEPSessionNegotiatorFactory

        public AbstractPCEPSessionNegotiatorFactory()
    • Method Detail

      • createNegotiator

        protected abstract AbstractPCEPSessionNegotiator createNegotiator​(org.opendaylight.protocol.pcep.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 org.opendaylight.protocol.pcep.SessionNegotiator getSessionNegotiator​(org.opendaylight.protocol.pcep.PCEPSessionNegotiatorFactoryDependencies dependencies,
                                                                                           io.netty.channel.Channel channel,
                                                                                           io.netty.util.concurrent.Promise<PCEPSessionImpl> promise)
        Specified by:
        getSessionNegotiator in interface org.opendaylight.protocol.pcep.PCEPSessionNegotiatorFactory<PCEPSessionImpl>
      • getSessionRegistry

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