void (@NotNull List<? extends @NotNull VFileEvent> events) { boolean isDaemonShouldBeStopped = false; for (VFileEvent event : events) { if (event instanceof VFilePropertyChangeEvent e) { String propertyName = e.getPropertyName(); if (VirtualFile.PROP_NAME.equals(propertyName)) { fileRenamed(e); } if (!isDaemonShouldBeStopped && !propertyName.equals(PsiTreeChangeEvent.PROP_WRITABLE)) { isDaemonShouldBeStopped = true; } } } if (isDaemonShouldBeStopped) { stopDaemon(true, "Virtual file property change"); } }