code: synchronized void setInputFromSavedData() {
      int len = Math.min(userBufLen, uncompressedDirectBuf.remaining());
      ((ByteBuffer)uncompressedDirectBuf).put(userBuf, userBufOff, len);
      userBufLen -= len;
      userBufOff += len;
      uncompressedDirectBufLen = uncompressedDirectBuf.position();
    }
docs: copy enough data from userBuf to uncompressedDirectBuf