Package org.ldaptive.transport.netty
Class SaslHandler
java.lang.Object
io.netty.channel.ChannelHandlerAdapter
io.netty.channel.ChannelInboundHandlerAdapter
io.netty.channel.SimpleChannelInboundHandler<io.netty.buffer.ByteBuf>
org.ldaptive.transport.netty.SaslHandler
- All Implemented Interfaces:
io.netty.channel.ChannelHandler
,io.netty.channel.ChannelInboundHandler
,io.netty.channel.ChannelOutboundHandler
public class SaslHandler
extends io.netty.channel.SimpleChannelInboundHandler<io.netty.buffer.ByteBuf>
implements io.netty.channel.ChannelOutboundHandler
Netty handler that uses a
SaslClient
to wrap and unwrap requests and responses.-
Nested Class Summary
Nested classes/interfaces inherited from interface io.netty.channel.ChannelHandler
io.netty.channel.ChannelHandler.Sharable
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final org.slf4j.Logger
Logger for this class.private io.netty.channel.CoalescingBufferQueue
To manage requests.private final SaslClient
Underlying SASL client. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
bind
(io.netty.channel.ChannelHandlerContext ctx, SocketAddress localAddress, io.netty.channel.ChannelPromise promise) protected void
channelRead0
(io.netty.channel.ChannelHandlerContext ctx, io.netty.buffer.ByteBuf msg) void
close
(io.netty.channel.ChannelHandlerContext ctx, io.netty.channel.ChannelPromise promise) void
connect
(io.netty.channel.ChannelHandlerContext ctx, SocketAddress remoteAddress, SocketAddress localAddress, io.netty.channel.ChannelPromise promise) void
deregister
(io.netty.channel.ChannelHandlerContext ctx, io.netty.channel.ChannelPromise promise) void
disconnect
(io.netty.channel.ChannelHandlerContext ctx, io.netty.channel.ChannelPromise promise) private void
dispose()
Disposes the SASL client and releases all buffers from the queue.void
flush
(io.netty.channel.ChannelHandlerContext ctx) void
handlerAdded
(io.netty.channel.ChannelHandlerContext ctx) void
handlerRemoved
(io.netty.channel.ChannelHandlerContext ctx) void
read
(io.netty.channel.ChannelHandlerContext ctx) void
write
(io.netty.channel.ChannelHandlerContext ctx, Object msg, io.netty.channel.ChannelPromise promise) Methods inherited from class io.netty.channel.SimpleChannelInboundHandler
acceptInboundMessage, channelRead
Methods inherited from class io.netty.channel.ChannelInboundHandlerAdapter
channelActive, channelInactive, channelReadComplete, channelRegistered, channelUnregistered, channelWritabilityChanged, exceptionCaught, userEventTriggered
Methods inherited from class io.netty.channel.ChannelHandlerAdapter
ensureNotSharable, isSharable
-
Field Details
-
logger
private final org.slf4j.Logger loggerLogger for this class. -
saslClient
Underlying SASL client. -
queue
private io.netty.channel.CoalescingBufferQueue queueTo manage requests.
-
-
Constructor Details
-
SaslHandler
Creates a new SASL handler.- Parameters:
sc
- SASL client
-
-
Method Details
-
handlerAdded
- Specified by:
handlerAdded
in interfaceio.netty.channel.ChannelHandler
- Overrides:
handlerAdded
in classio.netty.channel.ChannelHandlerAdapter
- Throws:
Exception
-
handlerRemoved
- Specified by:
handlerRemoved
in interfaceio.netty.channel.ChannelHandler
- Overrides:
handlerRemoved
in classio.netty.channel.ChannelHandlerAdapter
- Throws:
Exception
-
channelRead0
protected void channelRead0(io.netty.channel.ChannelHandlerContext ctx, io.netty.buffer.ByteBuf msg) throws Exception - Specified by:
channelRead0
in classio.netty.channel.SimpleChannelInboundHandler<io.netty.buffer.ByteBuf>
- Throws:
Exception
-
bind
public void bind(io.netty.channel.ChannelHandlerContext ctx, SocketAddress localAddress, io.netty.channel.ChannelPromise promise) throws Exception - Specified by:
bind
in interfaceio.netty.channel.ChannelOutboundHandler
- Throws:
Exception
-
connect
public void connect(io.netty.channel.ChannelHandlerContext ctx, SocketAddress remoteAddress, SocketAddress localAddress, io.netty.channel.ChannelPromise promise) throws Exception - Specified by:
connect
in interfaceio.netty.channel.ChannelOutboundHandler
- Throws:
Exception
-
disconnect
public void disconnect(io.netty.channel.ChannelHandlerContext ctx, io.netty.channel.ChannelPromise promise) throws Exception - Specified by:
disconnect
in interfaceio.netty.channel.ChannelOutboundHandler
- Throws:
Exception
-
close
public void close(io.netty.channel.ChannelHandlerContext ctx, io.netty.channel.ChannelPromise promise) throws Exception - Specified by:
close
in interfaceio.netty.channel.ChannelOutboundHandler
- Throws:
Exception
-
dispose
private void dispose()Disposes the SASL client and releases all buffers from the queue. -
deregister
public void deregister(io.netty.channel.ChannelHandlerContext ctx, io.netty.channel.ChannelPromise promise) throws Exception - Specified by:
deregister
in interfaceio.netty.channel.ChannelOutboundHandler
- Throws:
Exception
-
read
- Specified by:
read
in interfaceio.netty.channel.ChannelOutboundHandler
- Throws:
Exception
-
write
public void write(io.netty.channel.ChannelHandlerContext ctx, Object msg, io.netty.channel.ChannelPromise promise) throws Exception - Specified by:
write
in interfaceio.netty.channel.ChannelOutboundHandler
- Throws:
Exception
-
flush
- Specified by:
flush
in interfaceio.netty.channel.ChannelOutboundHandler
- Throws:
Exception
-