code: @Override
    public boolean ready() throws IOException {
      try {
        return in.ready();
      } catch (IOException e) {
        handleIOException(e);
        return false;
      }
    }
docs: Invokes the delegate's <code>ready()</code> method.
  @return true if the stream is ready to be read
  @throws IOException if an I/O error occurs