Class AbstractIOUringChannel

  • All Implemented Interfaces:
    io.netty.channel.Channel, io.netty.channel.ChannelOutboundInvoker, io.netty.channel.unix.UnixChannel, io.netty.util.AttributeMap, java.lang.Comparable<io.netty.channel.Channel>
    Direct Known Subclasses:
    AbstractIOUringServerChannel, AbstractIOUringStreamChannel, IOUringDatagramChannel

    abstract class AbstractIOUringChannel
    extends io.netty.channel.AbstractChannel
    implements io.netty.channel.unix.UnixChannel
    • Field Detail

      • logger

        private static final io.netty.util.internal.logging.InternalLogger logger
      • METADATA

        private static final io.netty.channel.ChannelMetadata METADATA
      • active

        protected volatile boolean active
      • ioState

        private byte ioState
      • numOutstandingWrites

        private short numOutstandingWrites
      • numOutstandingReads

        private short numOutstandingReads
      • delayedClose

        private io.netty.channel.ChannelPromise delayedClose
      • inputClosedSeenErrorOnRead

        private boolean inputClosedSeenErrorOnRead
      • connectPromise

        private io.netty.channel.ChannelPromise connectPromise
        The future of the current connection attempt. If not null, subsequent connection attempts will fail.
      • connectTimeoutFuture

        private java.util.concurrent.ScheduledFuture<?> connectTimeoutFuture
      • requestedRemoteAddress

        private java.net.SocketAddress requestedRemoteAddress
      • remoteAddressMemory

        private java.nio.ByteBuffer remoteAddressMemory
      • local

        private volatile java.net.SocketAddress local
      • remote

        private volatile java.net.SocketAddress remote
    • Constructor Detail

      • AbstractIOUringChannel

        AbstractIOUringChannel​(io.netty.channel.Channel parent,
                               LinuxSocket socket)
      • AbstractIOUringChannel

        AbstractIOUringChannel​(io.netty.channel.Channel parent,
                               LinuxSocket socket,
                               boolean active)
      • AbstractIOUringChannel

        AbstractIOUringChannel​(io.netty.channel.Channel parent,
                               LinuxSocket fd,
                               java.net.SocketAddress remote)
    • Method Detail

      • isOpen

        public boolean isOpen()
        Specified by:
        isOpen in interface io.netty.channel.Channel
      • isActive

        public boolean isActive()
        Specified by:
        isActive in interface io.netty.channel.Channel
      • metadata

        public io.netty.channel.ChannelMetadata metadata()
        Specified by:
        metadata in interface io.netty.channel.Channel
      • fd

        public io.netty.channel.unix.FileDescriptor fd()
        Specified by:
        fd in interface io.netty.channel.unix.UnixChannel
      • isCompatible

        protected boolean isCompatible​(io.netty.channel.EventLoop loop)
        Specified by:
        isCompatible in class io.netty.channel.AbstractChannel
      • newDirectBuffer

        protected final io.netty.buffer.ByteBuf newDirectBuffer​(io.netty.buffer.ByteBuf buf)
      • newDirectBuffer

        protected final io.netty.buffer.ByteBuf newDirectBuffer​(java.lang.Object holder,
                                                                io.netty.buffer.ByteBuf buf)
      • newDirectBuffer0

        private static io.netty.buffer.ByteBuf newDirectBuffer0​(java.lang.Object holder,
                                                                io.netty.buffer.ByteBuf buf,
                                                                io.netty.buffer.ByteBufAllocator alloc,
                                                                int capacity)
      • doDisconnect

        protected void doDisconnect()
                             throws java.lang.Exception
        Specified by:
        doDisconnect in class io.netty.channel.AbstractChannel
        Throws:
        java.lang.Exception
      • freeRemoteAddressMemory

        private void freeRemoteAddressMemory()
      • freeMsgHdrArray

        private void freeMsgHdrArray()
      • ioScheduled

        boolean ioScheduled()
      • doClose

        protected void doClose()
                        throws java.lang.Exception
        Specified by:
        doClose in class io.netty.channel.AbstractChannel
        Throws:
        java.lang.Exception
      • doBeginRead

        protected void doBeginRead()
        Specified by:
        doBeginRead in class io.netty.channel.AbstractChannel
      • doWrite

        protected void doWrite​(io.netty.channel.ChannelOutboundBuffer in)
        Specified by:
        doWrite in class io.netty.channel.AbstractChannel
      • scheduleWrite

        private int scheduleWrite​(io.netty.channel.ChannelOutboundBuffer in)
      • schedulePollOut

        private void schedulePollOut()
      • schedulePollRdHup

        final void schedulePollRdHup()
      • resetCachedAddresses

        final void resetCachedAddresses()
      • submitConnect

        private void submitConnect​(java.net.InetSocketAddress inetSocketAddress)
      • filterOutboundMessage

        protected java.lang.Object filterOutboundMessage​(java.lang.Object msg)
        Overrides:
        filterOutboundMessage in class io.netty.channel.AbstractChannel
      • doRegister

        protected void doRegister()
                           throws java.lang.Exception
        Overrides:
        doRegister in class io.netty.channel.AbstractChannel
        Throws:
        java.lang.Exception
      • doDeregister

        protected final void doDeregister()
        Overrides:
        doDeregister in class io.netty.channel.AbstractChannel
      • doBind

        protected void doBind​(java.net.SocketAddress local)
                       throws java.lang.Exception
        Specified by:
        doBind in class io.netty.channel.AbstractChannel
        Throws:
        java.lang.Exception
      • checkResolvable

        protected static void checkResolvable​(java.net.InetSocketAddress addr)
      • localAddress0

        protected java.net.SocketAddress localAddress0()
        Specified by:
        localAddress0 in class io.netty.channel.AbstractChannel
      • remoteAddress0

        protected java.net.SocketAddress remoteAddress0()
        Specified by:
        remoteAddress0 in class io.netty.channel.AbstractChannel
      • isAllowHalfClosure

        private static boolean isAllowHalfClosure​(io.netty.channel.ChannelConfig config)
      • cancelConnectTimeoutFuture

        private void cancelConnectTimeoutFuture()
      • computeRemote

        private void computeRemote()
      • shouldBreakIoUringInReady

        private boolean shouldBreakIoUringInReady​(io.netty.channel.ChannelConfig config)
      • clearPollFlag

        public void clearPollFlag​(int pollMask)