code: private void doRelease() {
          try {
              in.close();
          } catch (Exception ex) {
              if (log.isDebugEnabled())
                  log.debug("FYI", ex);
          }
          if (in instanceof Releasable) {
              // This allows any underlying stream that has the close operation
              // disabled to be truly released
              Releasable r = (Releasable)in;
              r.release();
          }
          abortIfNeeded();
      }
docs: Used to truly release the underlying resources.