Class DefaultPCEPSessionNegotiator

java.lang.Object
io.netty.channel.ChannelHandlerAdapter
io.netty.channel.ChannelInboundHandlerAdapter
All Implemented Interfaces:
io.netty.channel.ChannelHandler, io.netty.channel.ChannelInboundHandler, SessionNegotiator

public final class DefaultPCEPSessionNegotiator extends AbstractPCEPSessionNegotiator
  • Constructor Details

    • DefaultPCEPSessionNegotiator

      public DefaultPCEPSessionNegotiator(io.netty.util.concurrent.Promise<PCEPSession> promise, io.netty.channel.Channel channel, PCEPSessionListener listener, org.opendaylight.yangtools.yang.common.Uint8 sessionId, Open localPrefs, org.opendaylight.yangtools.yang.common.Uint16 maxUnknownMessages, PcepSessionTls tlsConfiguration)
    • DefaultPCEPSessionNegotiator

      public DefaultPCEPSessionNegotiator(io.netty.util.concurrent.Promise<PCEPSession> promise, io.netty.channel.Channel channel, PCEPSessionListener listener, org.opendaylight.yangtools.yang.common.Uint8 sessionId, Open localPrefs, org.opendaylight.yangtools.yang.common.Uint16 maxUnknownMessages)
  • Method Details

    • getInitialProposal

      protected Open getInitialProposal()
      Description copied from class: AbstractPCEPSessionNegotiator
      Get the initial session parameters proposal.
      Specified by:
      getInitialProposal in class AbstractPCEPSessionNegotiator
      Returns:
      Session parameters proposal.
    • createSession

      public PCEPSessionImpl createSession(io.netty.channel.Channel channel, Open localPrefs, Open remotePrefs)
      Description copied from class: AbstractPCEPSessionNegotiator
      Create the protocol session.
      Specified by:
      createSession in class AbstractPCEPSessionNegotiator
      Parameters:
      channel - Underlying channel.
      localPrefs - Session preferences proposed by us and accepted by the peer.
      remotePrefs - Session preferences proposed by the peer and accepted by us.
      Returns:
      New protocol session.
    • isProposalAcceptable

      protected boolean isProposalAcceptable(Open open)
      Description copied from class: AbstractPCEPSessionNegotiator
      Check whether a peer-provided session parameters proposal is acceptable.
      Specified by:
      isProposalAcceptable in class AbstractPCEPSessionNegotiator
      Parameters:
      open - peer-proposed session parameters
      Returns:
      true if the proposal is acceptable, false otherwise
    • getCounterProposal

      protected Open getCounterProposal(Open open)
      Description copied from class: AbstractPCEPSessionNegotiator
      Given a peer-provided session parameters proposal which we found unacceptable, provide a counter-proposal. The requirement is that the isProposalAcceptable() method has to return true when presented with this proposal.
      Specified by:
      getCounterProposal in class AbstractPCEPSessionNegotiator
      Parameters:
      open - unacceptable peer proposal
      Returns:
      our counter-proposal, or null if there is no way to negotiate an acceptable proposal
    • getRevisedProposal

      protected Open getRevisedProposal(Open suggestion)
      Description copied from class: AbstractPCEPSessionNegotiator
      Get the revised session parameters proposal based on the feedback the peer has provided to us.
      Specified by:
      getRevisedProposal in class AbstractPCEPSessionNegotiator
      Parameters:
      suggestion - Peer-provided suggested session parameters
      Returns:
      Session parameters proposal, or null if peers session parameters preclude us from suggesting anything