Package org.jivesoftware.openfire.nio
Class NettyConnectionHandler
java.lang.Object
io.netty.channel.ChannelHandlerAdapter
io.netty.channel.ChannelInboundHandlerAdapter
io.netty.channel.SimpleChannelInboundHandler<String>
org.jivesoftware.openfire.nio.NettyConnectionHandler
- All Implemented Interfaces:
io.netty.channel.ChannelHandler
,io.netty.channel.ChannelInboundHandler
- Direct Known Subclasses:
NettyClientConnectionHandler
,NettyComponentConnectionHandler
,NettyMultiplexerConnectionHandler
,NettyOutboundConnectionHandler
,NettyServerConnectionHandler
public abstract class NettyConnectionHandler
extends io.netty.channel.SimpleChannelInboundHandler<String>
A NettyConnectionHandler is responsible for creating new sessions, destroying sessions and delivering
received XML stanzas to the proper StanzaHandler.
Subclasses of this will supply a specific StanzaHandler
implementation depending on the
type of connection to be handled, e.g. C2S, S2S.
- Author:
- Matthew Vivian, Alex Gidman
-
Nested Class Summary
Nested classes/interfaces inherited from interface io.netty.channel.ChannelHandler
io.netty.channel.ChannelHandler.Sharable
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final ConnectionConfiguration
The configuration for new connections.static final io.netty.util.AttributeKey<NettyConnection>
static final io.netty.util.AttributeKey<Boolean>
protected static final ThreadLocal<XMPPPacketReader>
static final io.netty.util.AttributeKey<Long>
protected boolean
static final io.netty.util.AttributeKey<Long>
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
NettyConnectionHandler
(ConnectionConfiguration configuration) -
Method Summary
Modifier and TypeMethodDescriptionvoid
channelRead0
(io.netty.channel.ChannelHandlerContext ctx, String message) void
channelUnregistered
(io.netty.channel.ChannelHandlerContext ctx) void
exceptionCaught
(io.netty.channel.ChannelHandlerContext ctx, Throwable cause) abstract Duration
Returns the time that a connection can be idle before being closed.void
handlerAdded
(io.netty.channel.ChannelHandlerContext ctx) void
handlerRemoved
(io.netty.channel.ChannelHandlerContext ctx) toString()
void
userEventTriggered
(io.netty.channel.ChannelHandlerContext ctx, Object evt) Methods inherited from class io.netty.channel.SimpleChannelInboundHandler
acceptInboundMessage, channelRead
Methods inherited from class io.netty.channel.ChannelInboundHandlerAdapter
channelActive, channelInactive, channelReadComplete, channelRegistered, channelWritabilityChanged
Methods inherited from class io.netty.channel.ChannelHandlerAdapter
ensureNotSharable, isSharable
-
Field Details
-
CONNECTION
-
READ_BYTES
-
WRITTEN_BYTES
-
IDLE_FLAG
-
PARSER_CACHE
-
sslInitDone
protected boolean sslInitDone -
configuration
The configuration for new connections.
-
-
Constructor Details
-
NettyConnectionHandler
-
-
Method Details
-
getMaxIdleTime
Returns the time that a connection can be idle before being closed.- Returns:
- the time a connection can be idle.
-
handlerAdded
public void handlerAdded(io.netty.channel.ChannelHandlerContext ctx) - Specified by:
handlerAdded
in interfaceio.netty.channel.ChannelHandler
- Overrides:
handlerAdded
in classio.netty.channel.ChannelHandlerAdapter
-
handlerRemoved
public void handlerRemoved(io.netty.channel.ChannelHandlerContext ctx) - Specified by:
handlerRemoved
in interfaceio.netty.channel.ChannelHandler
- Overrides:
handlerRemoved
in classio.netty.channel.ChannelHandlerAdapter
-
channelRead0
- Specified by:
channelRead0
in classio.netty.channel.SimpleChannelInboundHandler<String>
-
exceptionCaught
- Specified by:
exceptionCaught
in interfaceio.netty.channel.ChannelHandler
- Specified by:
exceptionCaught
in interfaceio.netty.channel.ChannelInboundHandler
- Overrides:
exceptionCaught
in classio.netty.channel.ChannelInboundHandlerAdapter
-
channelUnregistered
- Specified by:
channelUnregistered
in interfaceio.netty.channel.ChannelInboundHandler
- Overrides:
channelUnregistered
in classio.netty.channel.ChannelInboundHandlerAdapter
- Throws:
Exception
-
userEventTriggered
public void userEventTriggered(io.netty.channel.ChannelHandlerContext ctx, Object evt) throws Exception - Specified by:
userEventTriggered
in interfaceio.netty.channel.ChannelInboundHandler
- Overrides:
userEventTriggered
in classio.netty.channel.ChannelInboundHandlerAdapter
- Throws:
Exception
-
toString
-