Class OrderedWriteChannelHandlerContext
- java.lang.Object
-
- software.amazon.awssdk.http.nio.netty.internal.utils.DelegatingChannelHandlerContext
-
- software.amazon.awssdk.http.nio.netty.internal.utils.OrderedWriteChannelHandlerContext
-
- All Implemented Interfaces:
io.netty.channel.ChannelHandlerContext
,io.netty.channel.ChannelInboundInvoker
,io.netty.channel.ChannelOutboundInvoker
,io.netty.util.AttributeMap
public class OrderedWriteChannelHandlerContext extends DelegatingChannelHandlerContext
An implementation ofChannelHandlerContext
that ensures all writes are performed in the order they are invoked. This works around https://github.com/netty/netty/issues/7783 where writes by an event loop 'skip ahead' of writes off of the event loop.
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static io.netty.channel.ChannelHandlerContext
wrap(io.netty.channel.ChannelHandlerContext ctx)
io.netty.channel.ChannelFuture
write(Object msg)
io.netty.channel.ChannelFuture
write(Object msg, io.netty.channel.ChannelPromise promise)
io.netty.channel.ChannelFuture
writeAndFlush(Object msg)
io.netty.channel.ChannelFuture
writeAndFlush(Object msg, io.netty.channel.ChannelPromise promise)
-
Methods inherited from class software.amazon.awssdk.http.nio.netty.internal.utils.DelegatingChannelHandlerContext
alloc, attr, bind, bind, channel, close, close, connect, connect, connect, connect, deregister, deregister, disconnect, disconnect, executor, fireChannelActive, fireChannelInactive, fireChannelRead, fireChannelReadComplete, fireChannelRegistered, fireChannelUnregistered, fireChannelWritabilityChanged, fireExceptionCaught, fireUserEventTriggered, flush, handler, hasAttr, isRemoved, name, newFailedFuture, newProgressivePromise, newPromise, newSucceededFuture, pipeline, read, voidPromise
-
-
-
-
Method Detail
-
wrap
public static io.netty.channel.ChannelHandlerContext wrap(io.netty.channel.ChannelHandlerContext ctx)
-
write
public io.netty.channel.ChannelFuture write(Object msg)
- Specified by:
write
in interfaceio.netty.channel.ChannelOutboundInvoker
- Overrides:
write
in classDelegatingChannelHandlerContext
-
write
public io.netty.channel.ChannelFuture write(Object msg, io.netty.channel.ChannelPromise promise)
- Specified by:
write
in interfaceio.netty.channel.ChannelOutboundInvoker
- Overrides:
write
in classDelegatingChannelHandlerContext
-
writeAndFlush
public io.netty.channel.ChannelFuture writeAndFlush(Object msg)
- Specified by:
writeAndFlush
in interfaceio.netty.channel.ChannelOutboundInvoker
- Overrides:
writeAndFlush
in classDelegatingChannelHandlerContext
-
writeAndFlush
public io.netty.channel.ChannelFuture writeAndFlush(Object msg, io.netty.channel.ChannelPromise promise)
- Specified by:
writeAndFlush
in interfaceio.netty.channel.ChannelOutboundInvoker
- Overrides:
writeAndFlush
in classDelegatingChannelHandlerContext
-
-