@Override
  public @NotNull List<RemoteRepositoryDescription> getRepositories(@NotNull String url) throws IOException {
    ApplicationManager.getApplication().assertIsNonDispatchThread();
    try {
      NexusModel.RepositorySearchResults repos = gson.fromJson(
        HttpRequests.request(toUrl(url, "repositories"))
          .productNameAsUserAgent()
          .accept("application/json")
          .readString(), NexusModel.RepositorySearchResults.class);
      final List<RemoteRepositoryDescription> result = new SmartList<>();
      if (repos.data != null) {
        for (NexusModel.RepositoryType repo : repos.data) {
          if ("maven2".equals(repo.provider)) {
            final RemoteRepositoryDescription desc = convertRepositoryInfo(repo);
            if (desc != null) {
              result.add(desc);
            }
          }
        }
      }
      return result;
    }
    catch (JsonSyntaxException e) {
      return Collections.emptyList();
    }
    catch (Exception e) {
      throw new IOException(e);
    }
  }
@Override
  public @NotNull List<RemoteRepositoryDescription> getRepositories(@NotNull String url)