@Override public void close() throws IOException { cachedData.remove(resourceName); synchronized (writeLock) { super.close(); } CachedFileData fd = getFileData(resourceName); synchronized (fd) { if (modTime > 0) fd.setLastModified(modTime); else fd.getLastModified(); fd.checksum = getChecksum(); } if (propSupport != null) propSupport.firePropertyChange(resourceName, null, ADDED_OR_MODIFIED); }