docs: public void writeTo( WritableByteChannel channel ) throws IOException {
          int numberOfBytesToWrite = size;
          for (ByteBuffer buffer : buffers) {
              if (buffer == null) {
                  // already flushed
                  continue;
              }
              int numBytesInBuffer = Math.min(numberOfBytesToWrite, bufferSize);
              buffer.position(numBytesInBuffer);
              buffer.flip();
              channel.write(buffer);
              numberOfBytesToWrite -= numBytesInBuffer;
          }
          buffers.clear();
      }