void enableRequiredPlugins(@NotNull IdeaPluginDescriptor descriptor) {
    Set<PluginId> requiredPluginIds = getRequiredPluginIds(descriptor.getPluginId());
    if (requiredPluginIds.isEmpty()) {
      return;
    }

    Set<IdeaPluginDescriptor> requiredPlugins = new HashSet<>();

    for (PluginId pluginId : requiredPluginIds) {
      IdeaPluginDescriptor result = ContainerUtil.find(view, d -> pluginId.equals(d.getPluginId()));
      if (result == null && PluginManagerCore.isModuleDependency(pluginId)) {
        result = ContainerUtil.find(view, d -> {
          return d instanceof IdeaPluginDescriptorImpl && ((IdeaPluginDescriptorImpl)d).pluginAliases.contains(pluginId);
        });
        if (result != null) {
          setEnabled(pluginId, PluginEnabledState.ENABLED); // todo
        }
      }
      if (result != null) {
        requiredPlugins.add(result);
      }
    }

    if (!requiredPlugins.isEmpty()) {
      enable(requiredPlugins);
    }
  }
void enableRequiredPlugins(@NotNull IdeaPluginDescriptor descriptor)