Class QueuingAsyncSocketConnection

java.lang.Object
org.nustaq.kontraktor.asyncio.AsyncSocketConnection
org.nustaq.kontraktor.asyncio.QueuingAsyncSocketConnection
Direct Known Subclasses:
ObjectAsyncSocketConnection

public abstract class QueuingAsyncSocketConnection
extends AsyncSocketConnection
Created by moelrue on 5/5/15. A server socket connection which buffers incoming/outgoing data in a binary queue so an application can easily parse and process data async in chunks without having to maintain complex state machines.
  • Field Details

    • MAX_Q_SIZE_BYTES

      public static long MAX_Q_SIZE_BYTES
    • readQueue

      protected org.nustaq.offheap.BinaryQueue readQueue
    • writeQueue

      protected org.nustaq.offheap.BinaryQueue writeQueue
    • wrapper

      protected org.nustaq.offheap.bytez.niobuffers.ByteBufferBasicBytez wrapper
  • Constructor Details

    • QueuingAsyncSocketConnection

      public QueuingAsyncSocketConnection​(java.nio.channels.SelectionKey key, java.nio.channels.SocketChannel chan)
  • Method Details

    • checkQSize

      protected void checkQSize()
    • write

      public void write​(java.nio.ByteBuffer buf)
    • write

      public void write​(byte[] b)
    • write

      public void write​(byte[] b, int off, int len)
    • write

      public void write​(int val)
    • tryFlush

      public void tryFlush()
    • dataReceived

      public void dataReceived​(java.nio.ByteBuffer buf)
      Specified by:
      dataReceived in class AsyncSocketConnection
    • dataReceived

      protected abstract void dataReceived​(org.nustaq.offheap.BinaryQueue queue)