Class AuthHandler
java.lang.Object
com.couchbase.client.core.deps.io.netty.channel.ChannelHandlerAdapter
com.couchbase.client.core.deps.io.netty.channel.ChannelInboundHandlerAdapter
com.couchbase.client.core.deps.io.netty.channel.SimpleChannelInboundHandler<T>
com.couchbase.client.dcp.transport.netty.AuthHandler
- All Implemented Interfaces:
com.couchbase.client.core.deps.io.netty.channel.ChannelHandler,com.couchbase.client.core.deps.io.netty.channel.ChannelInboundHandler,com.couchbase.client.core.deps.io.netty.channel.ChannelOutboundHandler,CallbackHandler
public class AuthHandler
extends com.couchbase.client.core.deps.io.netty.channel.SimpleChannelInboundHandler<T>
implements CallbackHandler
Performs SASL authentication against the socket and once complete removes itself.
-
Nested Class Summary
Nested classes/interfaces inherited from interface com.couchbase.client.core.deps.io.netty.channel.ChannelHandler
com.couchbase.client.core.deps.io.netty.channel.ChannelHandler.Sharable -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidbind(com.couchbase.client.core.deps.io.netty.channel.ChannelHandlerContext ctx, SocketAddress localAddress, com.couchbase.client.core.deps.io.netty.channel.ChannelPromise promise) voidchannelActive(com.couchbase.client.core.deps.io.netty.channel.ChannelHandlerContext ctx) Once the channel is active, start the SASL auth negotiation.voidchannelInactive(com.couchbase.client.core.deps.io.netty.channel.ChannelHandlerContext ctx) protected voidchannelRead0(com.couchbase.client.core.deps.io.netty.channel.ChannelHandlerContext ctx, com.couchbase.client.core.deps.io.netty.buffer.ByteBuf msg) Every time we receive a message as part of the negotiation process, handle it according to the req/res process.voidclose(com.couchbase.client.core.deps.io.netty.channel.ChannelHandlerContext ctx, com.couchbase.client.core.deps.io.netty.channel.ChannelPromise promise) voidconnect(com.couchbase.client.core.deps.io.netty.channel.ChannelHandlerContext ctx, SocketAddress remoteAddress, SocketAddress localAddress, com.couchbase.client.core.deps.io.netty.channel.ChannelPromise promise) Intercept the connect phase and store the original promise.voidderegister(com.couchbase.client.core.deps.io.netty.channel.ChannelHandlerContext ctx, com.couchbase.client.core.deps.io.netty.channel.ChannelPromise promise) voiddisconnect(com.couchbase.client.core.deps.io.netty.channel.ChannelHandlerContext ctx, com.couchbase.client.core.deps.io.netty.channel.ChannelPromise promise) voidexceptionCaught(com.couchbase.client.core.deps.io.netty.channel.ChannelHandlerContext ctx, Throwable cause) voidflush(com.couchbase.client.core.deps.io.netty.channel.ChannelHandlerContext ctx) voidHandles the SASL defined callbacks to set user and password (theCallbackHandlerinterface).voidread(com.couchbase.client.core.deps.io.netty.channel.ChannelHandlerContext ctx) voiduserEventTriggered(com.couchbase.client.core.deps.io.netty.channel.ChannelHandlerContext ctx, Object evt) voidwrite(com.couchbase.client.core.deps.io.netty.channel.ChannelHandlerContext ctx, Object msg, com.couchbase.client.core.deps.io.netty.channel.ChannelPromise promise) Methods inherited from class com.couchbase.client.core.deps.io.netty.channel.SimpleChannelInboundHandler
acceptInboundMessage, channelReadMethods inherited from class com.couchbase.client.core.deps.io.netty.channel.ChannelInboundHandlerAdapter
channelReadComplete, channelRegistered, channelUnregistered, channelWritabilityChangedMethods inherited from class com.couchbase.client.core.deps.io.netty.channel.ChannelHandlerAdapter
ensureNotSharable, handlerAdded, handlerRemoved, isSharableMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.couchbase.client.core.deps.io.netty.channel.ChannelHandler
handlerAdded, handlerRemoved
-
Constructor Details
-
AuthHandler
-
-
Method Details
-
channelActive
public void channelActive(com.couchbase.client.core.deps.io.netty.channel.ChannelHandlerContext ctx) throws Exception Once the channel is active, start the SASL auth negotiation.- Specified by:
channelActivein interfacecom.couchbase.client.core.deps.io.netty.channel.ChannelInboundHandler- Overrides:
channelActivein classcom.couchbase.client.core.deps.io.netty.channel.ChannelInboundHandlerAdapter- Throws:
Exception
-
channelRead0
protected void channelRead0(com.couchbase.client.core.deps.io.netty.channel.ChannelHandlerContext ctx, com.couchbase.client.core.deps.io.netty.buffer.ByteBuf msg) throws Exception Every time we receive a message as part of the negotiation process, handle it according to the req/res process.- Specified by:
channelRead0in classcom.couchbase.client.core.deps.io.netty.channel.SimpleChannelInboundHandler<com.couchbase.client.core.deps.io.netty.buffer.ByteBuf>- Throws:
Exception
-
handle
Handles the SASL defined callbacks to set user and password (theCallbackHandlerinterface).- Specified by:
handlein interfaceCallbackHandler- Throws:
IOExceptionUnsupportedCallbackException
-
connect
public void connect(com.couchbase.client.core.deps.io.netty.channel.ChannelHandlerContext ctx, SocketAddress remoteAddress, SocketAddress localAddress, com.couchbase.client.core.deps.io.netty.channel.ChannelPromise promise) throws Exception Intercept the connect phase and store the original promise.- Specified by:
connectin interfacecom.couchbase.client.core.deps.io.netty.channel.ChannelOutboundHandler- Throws:
Exception
-
bind
public void bind(com.couchbase.client.core.deps.io.netty.channel.ChannelHandlerContext ctx, SocketAddress localAddress, com.couchbase.client.core.deps.io.netty.channel.ChannelPromise promise) throws Exception - Specified by:
bindin interfacecom.couchbase.client.core.deps.io.netty.channel.ChannelOutboundHandler- Throws:
Exception
-
disconnect
public void disconnect(com.couchbase.client.core.deps.io.netty.channel.ChannelHandlerContext ctx, com.couchbase.client.core.deps.io.netty.channel.ChannelPromise promise) throws Exception - Specified by:
disconnectin interfacecom.couchbase.client.core.deps.io.netty.channel.ChannelOutboundHandler- Throws:
Exception
-
close
public void close(com.couchbase.client.core.deps.io.netty.channel.ChannelHandlerContext ctx, com.couchbase.client.core.deps.io.netty.channel.ChannelPromise promise) throws Exception - Specified by:
closein interfacecom.couchbase.client.core.deps.io.netty.channel.ChannelOutboundHandler- Throws:
Exception
-
deregister
public void deregister(com.couchbase.client.core.deps.io.netty.channel.ChannelHandlerContext ctx, com.couchbase.client.core.deps.io.netty.channel.ChannelPromise promise) throws Exception - Specified by:
deregisterin interfacecom.couchbase.client.core.deps.io.netty.channel.ChannelOutboundHandler- Throws:
Exception
-
read
public void read(com.couchbase.client.core.deps.io.netty.channel.ChannelHandlerContext ctx) throws Exception - Specified by:
readin interfacecom.couchbase.client.core.deps.io.netty.channel.ChannelOutboundHandler- Throws:
Exception
-
write
public void write(com.couchbase.client.core.deps.io.netty.channel.ChannelHandlerContext ctx, Object msg, com.couchbase.client.core.deps.io.netty.channel.ChannelPromise promise) throws Exception - Specified by:
writein interfacecom.couchbase.client.core.deps.io.netty.channel.ChannelOutboundHandler- Throws:
Exception
-
flush
public void flush(com.couchbase.client.core.deps.io.netty.channel.ChannelHandlerContext ctx) throws Exception - Specified by:
flushin interfacecom.couchbase.client.core.deps.io.netty.channel.ChannelOutboundHandler- Throws:
Exception
-
exceptionCaught
public void exceptionCaught(com.couchbase.client.core.deps.io.netty.channel.ChannelHandlerContext ctx, Throwable cause) throws Exception - Specified by:
exceptionCaughtin interfacecom.couchbase.client.core.deps.io.netty.channel.ChannelHandler- Specified by:
exceptionCaughtin interfacecom.couchbase.client.core.deps.io.netty.channel.ChannelInboundHandler- Overrides:
exceptionCaughtin classcom.couchbase.client.core.deps.io.netty.channel.ChannelInboundHandlerAdapter- Throws:
Exception
-
userEventTriggered
public void userEventTriggered(com.couchbase.client.core.deps.io.netty.channel.ChannelHandlerContext ctx, Object evt) throws Exception - Specified by:
userEventTriggeredin interfacecom.couchbase.client.core.deps.io.netty.channel.ChannelInboundHandler- Overrides:
userEventTriggeredin classcom.couchbase.client.core.deps.io.netty.channel.ChannelInboundHandlerAdapter- Throws:
Exception
-
channelInactive
public void channelInactive(com.couchbase.client.core.deps.io.netty.channel.ChannelHandlerContext ctx) throws Exception - Specified by:
channelInactivein interfacecom.couchbase.client.core.deps.io.netty.channel.ChannelInboundHandler- Overrides:
channelInactivein classcom.couchbase.client.core.deps.io.netty.channel.ChannelInboundHandlerAdapter- Throws:
Exception
-