void (@NotNull List<? extends @NotNull VFileEvent> events) { for (VFileEvent each : events) { if (each instanceof VFileDeleteEvent) { deleteRecursively(each.getFile(), each); } else { if (!isRelevant(each.getPath())) continue; if (each instanceof VFilePropertyChangeEvent) { if (isRenamed(each)) { deleteRecursively(each.getFile(), each); } } else if (each instanceof VFileMoveEvent moveEvent) { String newPath = moveEvent.getNewParent().getPath() + "/" + moveEvent.getFile().getName(); if (!isRelevant(newPath)) { deleteRecursively(moveEvent.getFile(), each); } } } } }