@Override
  public VirtualFile @NotNull [] getFiles(@NotNull OrderRootType rootType) {
    List<VirtualFile> result = new ArrayList<>();
    for (LightFilePointer pointer : myRoots.get(rootType)) {
      final VirtualFile file = pointer.getFile();
      if (file == null) {
        continue;
      }

      if (file.isDirectory()) {
        final String url = file.getUrl();
        if (isJarDirectory(url, rootType)) {
          boolean recursive = myJarDirectoryRecursiveUrls.get(rootType).contains(url);
          collectJarFiles(file, result, recursive);
          continue;
        }
      }
      result.add(file);
    }
    return VfsUtilCore.toVirtualFileArray(result);
  }
@Override
  public VirtualFile @NotNull [] getFiles(@NotNull OrderRootType rootType)