code: @Nonnegative
    public long read (@Nonnull final ByteBuffer aDestByteBuffer)
    {
      ValueEnforcer.notNull (aDestByteBuffer, "DestByteBuffer");
  
      long nBytesRead = 0;
      if (m_aBuffer.hasRemaining ())
        nBytesRead += ByteBufferHelper.transfer (m_aBuffer, aDestByteBuffer, false);
      return nBytesRead;
    }
docs: Reads as much as possible into the destination buffer.
  
  @param aDestByteBuffer
  The destination byte buffer to use. May not be <code>null</code>.
  @return The number of bytes read. Always &ge; 0.