void (@Nullable String path) { if (path != null) { synchronized (myLock) { myDirtyPaths.addDirtyPathRecursive(path); } } else { VirtualFile[] roots = myManagingFS.getLocalRoots(); synchronized (myLock) { for (VirtualFile root : roots) { myDirtyPaths.addDirtyPathRecursive(root.getPresentableUrl()); } } } notifyOnEvent(RESET); }