code: @Override
    public void close()
        throws IOException {
      if (delegateReader != null) {
        logger.atWarning().log(
            "Got non-null delegateReader during close(); possible premature close() call.");
        delegateReader.close();
        delegateReader = null;
      }
    }
docs: Closes the record reader.
  
  @throws IOException on IO Error.