public void addAllJarDirectories(@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();
  }
public void addAllJarDirectories(@NotNull Collection<String> directoryUrls, boolean recursively)