Package io.grpc.alts.internal
Class TsiFrameHandler
- java.lang.Object
-
- io.netty.channel.ChannelHandlerAdapter
-
- io.netty.channel.ChannelInboundHandlerAdapter
-
- io.netty.handler.codec.ByteToMessageDecoder
-
- io.grpc.alts.internal.TsiFrameHandler
-
- All Implemented Interfaces:
io.netty.channel.ChannelHandler,io.netty.channel.ChannelInboundHandler,io.netty.channel.ChannelOutboundHandler
public final class TsiFrameHandler extends io.netty.handler.codec.ByteToMessageDecoder implements io.netty.channel.ChannelOutboundHandlerEncrypts and decrypts TSI Frames. Writes are buffered here untilflush(io.netty.channel.ChannelHandlerContext)is called. Writes must not be made before the TSI handshake is complete.
-
-
Field Summary
Fields Modifier and Type Field Description private booleancloseInitiatedprivate static java.util.logging.Loggerloggerprivate io.netty.channel.PendingWriteQueuependingUnprotectedWritesprivate TsiFrameProtectorprotector
-
Constructor Summary
Constructors Constructor Description TsiFrameHandler(TsiFrameProtector protector)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidbind(io.netty.channel.ChannelHandlerContext ctx, java.net.SocketAddress localAddress, io.netty.channel.ChannelPromise promise)voidclose(io.netty.channel.ChannelHandlerContext ctx, io.netty.channel.ChannelPromise promise)voidconnect(io.netty.channel.ChannelHandlerContext ctx, java.net.SocketAddress remoteAddress, java.net.SocketAddress localAddress, io.netty.channel.ChannelPromise promise)protected voiddecode(io.netty.channel.ChannelHandlerContext ctx, io.netty.buffer.ByteBuf in, java.util.List<java.lang.Object> out)voidderegister(io.netty.channel.ChannelHandlerContext ctx, io.netty.channel.ChannelPromise promise)private voiddestroyProtectorAndWrites()voiddisconnect(io.netty.channel.ChannelHandlerContext ctx, io.netty.channel.ChannelPromise promise)private voiddoClose(io.netty.channel.ChannelHandlerContext ctx)voidflush(io.netty.channel.ChannelHandlerContext ctx)voidhandlerAdded(io.netty.channel.ChannelHandlerContext ctx)voidhandlerRemoved0(io.netty.channel.ChannelHandlerContext ctx)voidread(io.netty.channel.ChannelHandlerContext ctx)voidwrite(io.netty.channel.ChannelHandlerContext ctx, java.lang.Object message, io.netty.channel.ChannelPromise promise)-
Methods inherited from class io.netty.handler.codec.ByteToMessageDecoder
actualReadableBytes, callDecode, channelInactive, channelRead, channelReadComplete, decodeLast, discardSomeReadBytes, handlerRemoved, internalBuffer, isSingleDecode, setCumulator, setDiscardAfterReads, setSingleDecode, userEventTriggered
-
Methods inherited from class io.netty.channel.ChannelInboundHandlerAdapter
channelActive, channelRegistered, channelUnregistered, channelWritabilityChanged, exceptionCaught
-
-
-
-
Field Detail
-
logger
private static final java.util.logging.Logger logger
-
protector
private TsiFrameProtector protector
-
pendingUnprotectedWrites
private io.netty.channel.PendingWriteQueue pendingUnprotectedWrites
-
closeInitiated
private boolean closeInitiated
-
-
Constructor Detail
-
TsiFrameHandler
public TsiFrameHandler(TsiFrameProtector protector)
-
-
Method Detail
-
handlerAdded
public void handlerAdded(io.netty.channel.ChannelHandlerContext ctx) throws java.lang.Exception- Specified by:
handlerAddedin interfaceio.netty.channel.ChannelHandler- Overrides:
handlerAddedin classio.netty.channel.ChannelHandlerAdapter- Throws:
java.lang.Exception
-
decode
protected void decode(io.netty.channel.ChannelHandlerContext ctx, io.netty.buffer.ByteBuf in, java.util.List<java.lang.Object> out) throws java.lang.Exception- Specified by:
decodein classio.netty.handler.codec.ByteToMessageDecoder- Throws:
java.lang.Exception
-
write
public void write(io.netty.channel.ChannelHandlerContext ctx, java.lang.Object message, io.netty.channel.ChannelPromise promise)- Specified by:
writein interfaceio.netty.channel.ChannelOutboundHandler
-
handlerRemoved0
public void handlerRemoved0(io.netty.channel.ChannelHandlerContext ctx) throws java.lang.Exception- Overrides:
handlerRemoved0in classio.netty.handler.codec.ByteToMessageDecoder- Throws:
java.lang.Exception
-
disconnect
public void disconnect(io.netty.channel.ChannelHandlerContext ctx, io.netty.channel.ChannelPromise promise)- Specified by:
disconnectin interfaceio.netty.channel.ChannelOutboundHandler
-
close
public void close(io.netty.channel.ChannelHandlerContext ctx, io.netty.channel.ChannelPromise promise)- Specified by:
closein interfaceio.netty.channel.ChannelOutboundHandler
-
doClose
private void doClose(io.netty.channel.ChannelHandlerContext ctx)
-
flush
public void flush(io.netty.channel.ChannelHandlerContext ctx) throws java.security.GeneralSecurityException- Specified by:
flushin interfaceio.netty.channel.ChannelOutboundHandler- Throws:
java.security.GeneralSecurityException
-
bind
public void bind(io.netty.channel.ChannelHandlerContext ctx, java.net.SocketAddress localAddress, io.netty.channel.ChannelPromise promise)- Specified by:
bindin interfaceio.netty.channel.ChannelOutboundHandler
-
connect
public void connect(io.netty.channel.ChannelHandlerContext ctx, java.net.SocketAddress remoteAddress, java.net.SocketAddress localAddress, io.netty.channel.ChannelPromise promise)- Specified by:
connectin interfaceio.netty.channel.ChannelOutboundHandler
-
deregister
public void deregister(io.netty.channel.ChannelHandlerContext ctx, io.netty.channel.ChannelPromise promise)- Specified by:
deregisterin interfaceio.netty.channel.ChannelOutboundHandler
-
read
public void read(io.netty.channel.ChannelHandlerContext ctx)
- Specified by:
readin interfaceio.netty.channel.ChannelOutboundHandler
-
destroyProtectorAndWrites
private void destroyProtectorAndWrites()
-
-