void (@NotNull List<? extends VFileEvent> events) { for (VFileEvent event : events) { if (event instanceof VFileCreateEvent) { VirtualFile parent = ((VFileCreateEvent)event).getParent(); String fileName = ((VFileCreateEvent)event).getChildName(); Module module = getModuleForSourceContentFile(parent, fileName); if (module != null) { addToDirtyModules(module); } } else if (event instanceof VFileCopyEvent || event instanceof VFileMoveEvent) { VirtualFile file = event.getFile(); assert file != null; fileChanged(file); } else { if (event instanceof VFilePropertyChangeEvent pce) { String propertyName = pce.getPropertyName(); if (VirtualFile.PROP_NAME.equals(propertyName) || VirtualFile.PROP_SYMLINK_TARGET.equals(propertyName)) { fileChanged(pce.getFile()); } } } } }