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 aSaslClient
to wrap and unwrap requests and responses.
-
-
Field Summary
Fields Modifier and Type Field Description private Logger
logger
Logger for this class.private io.netty.channel.CoalescingBufferQueue
queue
To manage requests.private SaslClient
saslClient
Underlying SASL client.
-
Constructor Summary
Constructors Constructor Description SaslHandler(SaslClient sc)
Creates a new SASL handler.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
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
-
-
-
-
Field Detail
-
logger
private final Logger logger
Logger for this class.
-
saslClient
private final SaslClient saslClient
Underlying SASL client.
-
queue
private io.netty.channel.CoalescingBufferQueue queue
To manage requests.
-
-
Constructor Detail
-
SaslHandler
public SaslHandler(SaslClient sc)
Creates a new SASL handler.- Parameters:
sc
- SASL client
-
-
Method Detail
-
handlerAdded
public void handlerAdded(io.netty.channel.ChannelHandlerContext ctx) throws Exception
- Specified by:
handlerAdded
in interfaceio.netty.channel.ChannelHandler
- Overrides:
handlerAdded
in classio.netty.channel.ChannelHandlerAdapter
- Throws:
Exception
-
handlerRemoved
public void handlerRemoved(io.netty.channel.ChannelHandlerContext ctx) throws Exception
- 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
public void read(io.netty.channel.ChannelHandlerContext ctx) throws Exception
- 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
-
-