@Override public void close() throws IOException {
  if (closed.compareAndSet(false,true)) {
    if (Files.exists(path)) {
      MoreFiles.deleteRecursive(path);
    }
  }
}

@ Override public void close ( ) throws IOException { if ( closed . compareAndSet ( false , true ) ) { if ( Files . exists ( path ) ) { MoreFiles . deleteRecursive ( path ) ; } } }
closes this path , deleting the file or directory if it exists . if this path is already closed , this method has no effect .
