Class PCEPSessionImpl
java.lang.Object
io.netty.channel.ChannelHandlerAdapter
io.netty.channel.ChannelInboundHandlerAdapter
io.netty.channel.SimpleChannelInboundHandler<Message>
org.opendaylight.protocol.pcep.impl.PCEPSessionImpl
- All Implemented Interfaces:
io.netty.channel.ChannelHandler
,io.netty.channel.ChannelInboundHandler
,AutoCloseable
,PCEPSession
,PCEPSessionState
public class PCEPSessionImpl
extends io.netty.channel.SimpleChannelInboundHandler<Message>
implements PCEPSession
Implementation of PCEPSession. (Not final for testing.)
-
Nested Class Summary
Nested classes/interfaces inherited from interface io.netty.channel.ChannelHandler
io.netty.channel.ChannelHandler.Sharable
-
Method Summary
Modifier and TypeMethodDescriptionfinal void
channelInactive
(io.netty.channel.ChannelHandlerContext ctx) protected final void
channelRead0
(io.netty.channel.ChannelHandlerContext ctx, Message msg) void
close()
Closes PCEP session without sending a Close message, as the channel is no longer active.void
close
(TerminationReason reason) Closes PCEP session, cancels all timers, returns to state Idle, sends the Close Message.void
exceptionCaught
(io.netty.channel.ChannelHandlerContext ctx, Throwable cause) final @org.checkerframework.checker.index.qual.NonNegative short
final @org.checkerframework.checker.index.qual.NonNegative short
The local (PCE) Open Message.The local (PCE) preferences.Returns session characteristics of the local PCEP Speaker.The statistics of PCEP received/sent messages from the PCE point of view.The remote peer (PCC) preferences.Returns remote address.Returns session characteristics of the remote PCEP Speaker.void
handleMessage
(Message msg) Handles incoming message.final void
handlerAdded
(io.netty.channel.ChannelHandlerContext ctx) boolean
isClosed()
io.netty.util.concurrent.Future<Void>
sendMessage
(Message msg) Sends message to serialization.final String
toString()
Methods inherited from class io.netty.channel.SimpleChannelInboundHandler
acceptInboundMessage, channelRead
Methods inherited from class io.netty.channel.ChannelInboundHandlerAdapter
channelActive, channelReadComplete, channelRegistered, channelUnregistered, channelWritabilityChanged, userEventTriggered
Methods inherited from class io.netty.channel.ChannelHandlerAdapter
ensureNotSharable, handlerRemoved, isSharable
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface io.netty.channel.ChannelHandler
handlerRemoved
Methods inherited from interface org.opendaylight.protocol.pcep.PCEPSession
localSessionCharacteristics
-
Method Details
-
getKeepAliveTimerValue
public final @org.checkerframework.checker.index.qual.NonNegative short getKeepAliveTimerValue() -
getDeadTimerValue
public final @org.checkerframework.checker.index.qual.NonNegative short getDeadTimerValue() -
sendMessage
Sends message to serialization.- Specified by:
sendMessage
in interfacePCEPSession
- Parameters:
msg
- to be sent- Returns:
- Future promise which will be succeed when the message is enqueued in the socket.
-
isClosed
public boolean isClosed() -
close
public void close()Closes PCEP session without sending a Close message, as the channel is no longer active.- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfacePCEPSession
-
close
Closes PCEP session, cancels all timers, returns to state Idle, sends the Close Message. KeepAlive and DeadTimer are cancelled if the state of the session changes to IDLE. This method is used to close the PCEP session from inside the session or from the listener, therefore the parent of this session should be informed.- Specified by:
close
in interfacePCEPSession
-
getRemoteTlvs
Description copied from interface:PCEPSession
Returns session characteristics of the remote PCEP Speaker.- Specified by:
getRemoteTlvs
in interfacePCEPSession
- Returns:
- Open message TLVs
-
getRemoteAddress
Description copied from interface:PCEPSession
Returns remote address.- Specified by:
getRemoteAddress
in interfacePCEPSession
- Returns:
- inet address
-
handleMessage
Handles incoming message. If the session is up, it notifies the user. The user is notified about every message except KeepAlive.- Parameters:
msg
- incoming message
-
toString
-
getMessages
Description copied from interface:PCEPSessionState
The statistics of PCEP received/sent messages from the PCE point of view.- Specified by:
getMessages
in interfacePCEPSessionState
- Returns:
- messages
-
getLocalPref
Description copied from interface:PCEPSessionState
The local (PCE) preferences.- Specified by:
getLocalPref
in interfacePCEPSessionState
- Returns:
- local preferences
-
getPeerPref
Description copied from interface:PCEPSessionState
The remote peer (PCC) preferences.- Specified by:
getPeerPref
in interfacePCEPSessionState
- Returns:
- peer preferences
-
getLocalOpen
Description copied from interface:PCEPSessionState
The local (PCE) Open Message.- Specified by:
getLocalOpen
in interfacePCEPSessionState
- Returns:
- Open
-
channelInactive
- Specified by:
channelInactive
in interfaceio.netty.channel.ChannelInboundHandler
- Overrides:
channelInactive
in classio.netty.channel.ChannelInboundHandlerAdapter
- Throws:
Exception
-
channelRead0
- Specified by:
channelRead0
in classio.netty.channel.SimpleChannelInboundHandler<Message>
-
handlerAdded
public final void handlerAdded(io.netty.channel.ChannelHandlerContext ctx) - Specified by:
handlerAdded
in interfaceio.netty.channel.ChannelHandler
- Overrides:
handlerAdded
in classio.netty.channel.ChannelHandlerAdapter
-
exceptionCaught
- Specified by:
exceptionCaught
in interfaceio.netty.channel.ChannelHandler
- Specified by:
exceptionCaught
in interfaceio.netty.channel.ChannelInboundHandler
- Overrides:
exceptionCaught
in classio.netty.channel.ChannelInboundHandlerAdapter
-
getLocalTlvs
Description copied from interface:PCEPSession
Returns session characteristics of the local PCEP Speaker.- Specified by:
getLocalTlvs
in interfacePCEPSession
- Returns:
- Open message TLVs
-