void (@NotNull Collection<String> directoryUrls, boolean recursively) { if (directoryUrls.isEmpty()) return; List<VirtualFilePointer> pointers = ContainerUtil.map(directoryUrls, url -> myVirtualFilePointerManager.createDirectoryPointer(url, recursively, myParent, myListener)); (recursively ? myJarRecursiveDirectories : myJarDirectories).addAllAbsent(pointers); myList.addAllAbsent(pointers); // hack. jar directories need to be contained in class roots too (for externalization compatibility) but be ignored in getFiles() dropCaches(); }