code: public void reset()
    {
      current = null;
      _hasWritten = false;
      byteBuffersRetrieved = false;
      limit = -1;
      total = 0;
      if (!byteBuffersRetrieved)
      {
        ListIterator<WsByteBuffer> it = bbList.listIterator();
        while (it.hasNext())
        {
          WsByteBuffer next = it.next();
          next.release();
          it.remove();
        }
      }
    }
docs: clean up...