void (@NotNull IdeaPluginDescriptor pluginDescriptor, boolean isUpdate) { Set<ProjectSystemId> availableES = new HashSet<>(); for (ExternalSystemManager<?, ?, ?, ?, ?> manager : ExternalSystemManager.EP_NAME.getExtensionList()) { ProjectSystemId id = manager.getSystemId(); availableES.add(id); } Iterator<ExternalProjectsView> iterator = myProjectsViews.iterator(); while (iterator.hasNext()) { ExternalProjectsView view = iterator.next(); if (!availableES.contains(view.getSystemId())) { iterator.remove(); } if (view instanceof Disposable) { Disposer.dispose((Disposable)view); } } }