}
// successfully acquired the lock, start clearing caches
// notify provided listeners, presumably to clear caches
for (WeakReference<SourceListener> i : listeners) {
SourceListener sl = i.get();
if (sl != null) {
sl.onSourceChanged(source, event, filePath);
}
}
// lastly, clear MDR's static caches
invalidateSourceRelatedCaches(source);