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.)
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
channelInactive(io.netty.channel.ChannelHandlerContext ctx)
protected 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)
Integer
getDeadTimerValue()
Integer
getKeepAliveTimerValue()
Open
getLocalOpen()
The local (PCE) Open Message.LocalPref
getLocalPref()
The local (PCE) preferences.Tlvs
getLocalTlvs()
Returns session characteristics of the local PCEP Speaker.Messages
getMessages()
The statistics of PCEP received/sent messages from the PCE point of view.PeerPref
getPeerPref()
The remote peer (PCC) preferences.InetAddress
getRemoteAddress()
Returns remote address.Tlvs
getRemoteTlvs()
Returns session characteristics of the remote PCEP Speaker.void
handleMessage(Message msg)
Handles incoming message.void
handlerAdded(io.netty.channel.ChannelHandlerContext ctx)
boolean
isClosed()
io.netty.util.concurrent.Future<Void>
sendMessage(Message msg)
Sends message to serialization.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 org.opendaylight.protocol.pcep.PCEPSession
localSessionCharacteristics
-
-
-
-
Method Detail
-
getKeepAliveTimerValue
public final Integer getKeepAliveTimerValue()
-
getDeadTimerValue
public final Integer getDeadTimerValue()
-
sendMessage
public io.netty.util.concurrent.Future<Void> sendMessage(Message msg)
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
-
close
public void close(TerminationReason reason)
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
public Tlvs getRemoteTlvs()
Description copied from interface:PCEPSession
Returns session characteristics of the remote PCEP Speaker.- Specified by:
getRemoteTlvs
in interfacePCEPSession
- Returns:
- Open message TLVs
-
getRemoteAddress
public InetAddress getRemoteAddress()
Description copied from interface:PCEPSession
Returns remote address.- Specified by:
getRemoteAddress
in interfacePCEPSession
- Returns:
- inet address
-
handleMessage
public void handleMessage(Message msg)
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
-
getMessages
public Messages 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
public LocalPref getLocalPref()
Description copied from interface:PCEPSessionState
The local (PCE) preferences.- Specified by:
getLocalPref
in interfacePCEPSessionState
- Returns:
- local preferences
-
getPeerPref
public PeerPref getPeerPref()
Description copied from interface:PCEPSessionState
The remote peer (PCC) preferences.- Specified by:
getPeerPref
in interfacePCEPSessionState
- Returns:
- peer preferences
-
getLocalOpen
public Open getLocalOpen()
Description copied from interface:PCEPSessionState
The local (PCE) Open Message.- Specified by:
getLocalOpen
in interfacePCEPSessionState
- Returns:
- Open
-
channelInactive
public final void channelInactive(io.netty.channel.ChannelHandlerContext ctx) throws Exception
- Specified by:
channelInactive
in interfaceio.netty.channel.ChannelInboundHandler
- Overrides:
channelInactive
in classio.netty.channel.ChannelInboundHandlerAdapter
- Throws:
Exception
-
channelRead0
protected final void channelRead0(io.netty.channel.ChannelHandlerContext ctx, Message msg)
- 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
public void exceptionCaught(io.netty.channel.ChannelHandlerContext ctx, Throwable cause)
- Specified by:
exceptionCaught
in interfaceio.netty.channel.ChannelHandler
- Specified by:
exceptionCaught
in interfaceio.netty.channel.ChannelInboundHandler
- Overrides:
exceptionCaught
in classio.netty.channel.ChannelInboundHandlerAdapter
-
getLocalTlvs
public Tlvs getLocalTlvs()
Description copied from interface:PCEPSession
Returns session characteristics of the local PCEP Speaker.- Specified by:
getLocalTlvs
in interfacePCEPSession
- Returns:
- Open message TLVs
-
-