Class HttpServerMultiplexChannelHandler
java.lang.Object
io.netty.channel.ChannelHandlerAdapter
io.netty.channel.ChannelInboundHandlerAdapter
io.netty.channel.SimpleChannelInboundHandler<Object>
org.apache.camel.component.netty.http.handlers.HttpServerMultiplexChannelHandler
- All Implemented Interfaces:
io.netty.channel.ChannelHandler
,io.netty.channel.ChannelInboundHandler
,HttpServerConsumerChannelFactory
@Sharable
public class HttpServerMultiplexChannelHandler
extends io.netty.channel.SimpleChannelInboundHandler<Object>
implements HttpServerConsumerChannelFactory
A multiplex
HttpServerInitializerFactory
which keeps a list of
handlers, and delegates to the target handler based on the http context path in the incoming request. This is used to
allow to reuse the same Netty consumer, allowing to have multiple routes on the same netty
ServerBootstrap
-
Nested Class Summary
Nested classes/interfaces inherited from interface io.netty.channel.ChannelHandler
io.netty.channel.ChannelHandler.Sharable
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
addConsumer
(NettyHttpConsumer consumer) Adds the given consumer.protected void
channelRead0
(io.netty.channel.ChannelHandlerContext ctx, Object msg) int
Number of active consumersvoid
exceptionCaught
(io.netty.channel.ChannelHandlerContext ctx, Throwable cause) io.netty.channel.ChannelHandler
Gets theChannelHandler
int
getPort()
The port number this consumer channel factory is using.void
init
(int port) Initializes this consumer channel factory with the given port.void
removeConsumer
(NettyHttpConsumer consumer) Removes the given consumerMethods inherited from class io.netty.channel.SimpleChannelInboundHandler
acceptInboundMessage, channelRead
Methods inherited from class io.netty.channel.ChannelInboundHandlerAdapter
channelActive, channelInactive, channelReadComplete, channelRegistered, channelUnregistered, channelWritabilityChanged, userEventTriggered
Methods inherited from class io.netty.channel.ChannelHandlerAdapter
ensureNotSharable, handlerAdded, handlerRemoved, isSharable
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface io.netty.channel.ChannelHandler
handlerAdded, handlerRemoved
-
Constructor Details
-
HttpServerMultiplexChannelHandler
public HttpServerMultiplexChannelHandler()
-
-
Method Details
-
init
public void init(int port) Description copied from interface:HttpServerConsumerChannelFactory
Initializes this consumer channel factory with the given port.- Specified by:
init
in interfaceHttpServerConsumerChannelFactory
-
addConsumer
Description copied from interface:HttpServerConsumerChannelFactory
Adds the given consumer.- Specified by:
addConsumer
in interfaceHttpServerConsumerChannelFactory
-
removeConsumer
Description copied from interface:HttpServerConsumerChannelFactory
Removes the given consumer- Specified by:
removeConsumer
in interfaceHttpServerConsumerChannelFactory
-
consumers
public int consumers()Description copied from interface:HttpServerConsumerChannelFactory
Number of active consumers- Specified by:
consumers
in interfaceHttpServerConsumerChannelFactory
-
getPort
public int getPort()Description copied from interface:HttpServerConsumerChannelFactory
The port number this consumer channel factory is using.- Specified by:
getPort
in interfaceHttpServerConsumerChannelFactory
-
getChannelHandler
public io.netty.channel.ChannelHandler getChannelHandler()Description copied from interface:HttpServerConsumerChannelFactory
Gets theChannelHandler
- Specified by:
getChannelHandler
in interfaceHttpServerConsumerChannelFactory
-
channelRead0
-
exceptionCaught
public void exceptionCaught(io.netty.channel.ChannelHandlerContext ctx, Throwable cause) throws Exception - Specified by:
exceptionCaught
in interfaceio.netty.channel.ChannelHandler
- Specified by:
exceptionCaught
in interfaceio.netty.channel.ChannelInboundHandler
- Overrides:
exceptionCaught
in classio.netty.channel.ChannelInboundHandlerAdapter
- Throws:
Exception
-