Class ChannelAsyncOutputStream

    • Field Detail

      • channelInstance

        private final Channel channelInstance
      • cmd

        private final byte cmd
      • pendingWrite

        private final java.util.concurrent.atomic.AtomicReference<IoWriteFutureImpl> pendingWrite
      • packetWriteId

        private final java.lang.Object packetWriteId
    • Constructor Detail

      • ChannelAsyncOutputStream

        public ChannelAsyncOutputStream​(Channel channel,
                                        byte cmd)
    • Method Detail

      • onWindowExpanded

        public void onWindowExpanded()
                              throws java.io.IOException
        Throws:
        java.io.IOException
      • writePacket

        public IoWriteFuture writePacket​(Buffer buffer)
                                  throws java.io.IOException
        Description copied from interface: PacketWriter
        Encode and send the given buffer. Note: for session packets the buffer has to have 5 bytes free at the beginning to allow the encoding to take place. Also, the write position of the buffer has to be set to the position of the last byte to write.
        Specified by:
        writePacket in interface PacketWriter
        Parameters:
        buffer - the buffer to encode and send. NOTE: the buffer must not be touched until the returned write future is completed.
        Returns:
        An IoWriteFuture that can be used to check when the packet has actually been sent
        Throws:
        java.io.IOException - if an error occurred when encoding sending the packet
      • preClose

        protected void preClose()
        Description copied from class: AbstractCloseable
        preClose is guaranteed to be called before doCloseGracefully or doCloseImmediately. When preClose() is called, isClosing() == true
        Overrides:
        preClose in class AbstractCloseable
      • doWriteIfPossible

        protected void doWriteIfPossible​(boolean resume)
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object