@Override public void close() throws IOException {
synchronized (lock) {
    if (decoder != null) {
      decoder.reset();
    }
    decoder=null;
    if (in != null) {
      in.close();
      in=null;
    }
  }
}

@ Override public void close ( ) throws IOException { synchronized ( lock ) { if ( decoder != null ) { decoder . reset ( ) ; } decoder = null ; if ( in != null ) { in . close ( ) ; in = null ; } } }
closes this reader . this implementation closes the source inputstream and releases all local storage .
