private void showMarketplaceData(@Nullable IdeaPluginDescriptor descriptor) {
    String rating = null;
    String downloads = null;
    String size = null;
    Collection<String> requiredPluginNames = emptyList();

    if (descriptor instanceof PluginNode pluginNode) {
      rating = pluginNode.getPresentableRating();
      downloads = pluginNode.getPresentableDownloads();
      size = pluginNode.getPresentableSize();

      if (myReviewPanel != null) {
        updateReviews(pluginNode);
      }

      updateUrlComponent(myForumUrl, "plugins.configurable.forum.url", pluginNode.getForumUrl());
      updateUrlComponent(myLicenseUrl, "plugins.configurable.license.url", pluginNode.getLicenseUrl());
      updateUrlComponent(myBugtrackerUrl, "plugins.configurable.bugtracker.url", pluginNode.getBugtrackerUrl());
      updateUrlComponent(myDocumentationUrl, "plugins.configurable.documentation.url", pluginNode.getDocumentationUrl());
      updateUrlComponent(mySourceCodeUrl, "plugins.configurable.source.code", pluginNode.getSourceCodeUrl());
      updateUrlComponent(myPluginReportUrl, "plugins.configurable.report.marketplace.plugin", pluginNode.getReportPluginUrl());

      myVendorInfoPanel.show(pluginNode);

      requiredPluginNames = pluginNode.getDependencyNames() != null ? pluginNode.getDependencyNames() : emptyList();

      if (myCustomRepoForDebug != null) {
        String customRepo = pluginNode.getRepositoryName();
        myCustomRepoForDebug.setText("Custom Repository: " + customRepo); //NON-NLS
        myCustomRepoForDebug.setVisible(customRepo != null);
      }
    }

    myRating.setText(myMultiTabs ? IdeBundle.message("plugins.configurable.rate.0", rating) : rating);
    myRating.setVisible(rating != null);

    myDownloads.setText(myMultiTabs ? IdeBundle.message("plugins.configurable.downloads.0", downloads) : downloads);
    myDownloads.setVisible(downloads != null);

    mySize.setText(IdeBundle.message("plugins.configurable.size.0", size));
    mySize.setVisible(size != null);

    myRequiredPlugins.setText(IdeBundle.message("plugins.configurable.required.plugins.0",
                                                StringUtil.join(ContainerUtil.map(requiredPluginNames, x -> "    • " + x), "\n")));
    myRequiredPlugins.setVisible(!requiredPluginNames.isEmpty());
  }


private void showMarketplaceData(@Nullable IdeaPluginDescriptor descriptor)