@Override
  public @Nullable List<VirtualFile> downloadFilesWithProgress(@Nullable String targetDirectoryPath,
                                                               @Nullable Project project,
                                                               @Nullable JComponent parentComponent) {
    final List<Pair<VirtualFile, DownloadableFileDescription>> pairs = downloadWithProgress(targetDirectoryPath, project, parentComponent);
    if (pairs == null) return null;

    List<VirtualFile> files = new ArrayList<>();
    for (Pair<VirtualFile, DownloadableFileDescription> pair : pairs) {
      files.add(pair.getFirst());
    }
    return files;
  }
@Override
  public @Nullable List<VirtualFile> downloadFilesWithProgress(@Nullable String targetDirectoryPath,
                                                               @Nullable Project project,
                                                               @Nullable JComponent parentComponent)