Class WriteBuffer


  • public class WriteBuffer
    extends java.lang.Object
    Provides an expandable set of buffers for writes. Non-blocking writes can be of any size and may not be able to be written immediately or wholly contained in the buffer used to perform the writes to the next layer. This class provides a buffering capability to allow such writes to return immediately and also allows for the user provided buffers to be re-used / recycled as required.
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      static interface  WriteBuffer.Sink
      Interface implemented by clients of the WriteBuffer to enable data to be written back out from the buffer.
    • Constructor Summary

      Constructors 
      Constructor Description
      WriteBuffer​(int bufferSize)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void add​(java.nio.ByteBuffer from)  
      boolean isEmpty()  
      boolean write​(WriteBuffer.Sink sink, boolean blocking)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • WriteBuffer

        public WriteBuffer​(int bufferSize)
    • Method Detail

      • add

        public void add​(java.nio.ByteBuffer from)
      • isEmpty

        public boolean isEmpty()
      • write

        public boolean write​(WriteBuffer.Sink sink,
                             boolean blocking)
                      throws java.io.IOException
        Throws:
        java.io.IOException