public void delete(@NonNull Key key){
  final ReentrantReadWriteLock.WriteLock lock=guard.writeLock();
  lock.lock();
  try {
    if (!readKeys.remove(key))     throw new IllegalArgumentException("key does not exist");
    Files.delete(key.getFile());
  }
 catch (  IOException ex) {
    LOG.log(Level.WARNING,"unable to remove file " + key.getFile(),ex);
  }
 finally {
    lock.unlock();
  }
}

public void delete ( @ NonNull Key key ) { final ReentrantReadWriteLock . WriteLock lock = guard . writeLock ( ) ; lock . lock ( ) ; try { if ( ! readKeys . remove ( key ) ) throw new IllegalArgumentException ( "key does not exist" ) ; Files . delete ( key . getFile ( ) ) ; } catch ( IOException ex ) { LOG . log ( Level . WARNING , "unable to remove file " + key . getFile ( ) , ex ) ; } finally { lock . unlock ( ) ; } }
removes the file associated with the given key .
