From 24dd950d83cdbab4aa62d6a3f45585d90d89bb6b Mon Sep 17 00:00:00 2001 From: Vladimir Krivosheev Date: Thu, 18 Jun 2020 10:04:39 +0200 Subject: [PATCH] =?UTF-8?q?ProjectTopics.MODULES=20broadcast=20direction?= =?UTF-8?q?=20changed=20to=20NONE=20=E2=80=94=20mostly=20all=20clients=20a?= =?UTF-8?q?lready=20subscribes=20to=20project=20message=20bus=20and=20not?= =?UTF-8?q?=20on=20module?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit GitOrigin-RevId: ffe95fda1dfb04520d7f8181aed5b50d3529940a --- .../testSrc/ModuleStoreRenameTest.kt | 2 +- .../execution/impl/ModuleRunConfigurationManager.java | 2 +- .../openapi/roots/impl/storage/ClasspathStorage.java | 7 ++++--- .../projectModel-api/src/com/intellij/ProjectTopics.java | 2 +- 4 files changed, 7 insertions(+), 6 deletions(-) diff --git a/platform/configuration-store-impl/testSrc/ModuleStoreRenameTest.kt b/platform/configuration-store-impl/testSrc/ModuleStoreRenameTest.kt index f97770785fd0..5431376dcd4c 100644 --- a/platform/configuration-store-impl/testSrc/ModuleStoreRenameTest.kt +++ b/platform/configuration-store-impl/testSrc/ModuleStoreRenameTest.kt @@ -70,7 +70,7 @@ internal class ModuleStoreRenameTest { ModuleRootModificationUtil.addDependency(dependentModule, module) } - module.messageBus.connect().subscribe(ProjectTopics.MODULES, object : ModuleListener { + projectRule.project.messageBus.connect(module).subscribe(ProjectTopics.MODULES, object : ModuleListener { override fun modulesRenamed(project: Project, modules: MutableList, oldNameProvider: Function) { assertThat(modules).containsOnly(module) oldModuleNames.add(oldNameProvider.`fun`(module)) diff --git a/platform/execution-impl/src/com/intellij/execution/impl/ModuleRunConfigurationManager.java b/platform/execution-impl/src/com/intellij/execution/impl/ModuleRunConfigurationManager.java index 62beae57febf..7946164d623f 100644 --- a/platform/execution-impl/src/com/intellij/execution/impl/ModuleRunConfigurationManager.java +++ b/platform/execution-impl/src/com/intellij/execution/impl/ModuleRunConfigurationManager.java @@ -42,7 +42,7 @@ public final class ModuleRunConfigurationManager implements PersistentStateCompo public ModuleRunConfigurationManager(@NotNull Module module) { myModule = module; - myModule.getMessageBus().connect().subscribe(ProjectTopics.MODULES, new ModuleListener() { + myModule.getProject().getMessageBus().connect(myModule).subscribe(ProjectTopics.MODULES, new ModuleListener() { @Override public void beforeModuleRemoved(@NotNull Project project, @NotNull Module module) { if (myModule.equals(module)) { diff --git a/platform/lang-impl/src/com/intellij/openapi/roots/impl/storage/ClasspathStorage.java b/platform/lang-impl/src/com/intellij/openapi/roots/impl/storage/ClasspathStorage.java index b458532a3418..5350e6012993 100644 --- a/platform/lang-impl/src/com/intellij/openapi/roots/impl/storage/ClasspathStorage.java +++ b/platform/lang-impl/src/com/intellij/openapi/roots/impl/storage/ClasspathStorage.java @@ -49,7 +49,7 @@ public final class ClasspathStorage extends StateStorageBase { private final PathMacroSubstitutor myPathMacroSubstitutor; - public ClasspathStorage(@NotNull final Module module, @NotNull StateStorageManager storageManager) { + public ClasspathStorage(@NotNull Module module, @NotNull StateStorageManager storageManager) { String storageType = module.getOptionValue(JpsProjectLoader.CLASSPATH_ATTRIBUTE); if (storageType == null) { throw new IllegalStateException("Classpath storage requires non-default storage type"); @@ -67,7 +67,8 @@ public final class ClasspathStorage extends StateStorageBase { } myConverter = new MissingClasspathConverter(); - } else { + } + else { myConverter = provider.createConverter(module); } @@ -100,7 +101,7 @@ public final class ClasspathStorage extends StateStorageBase { } }); - busConnection.subscribe(ProjectTopics.MODULES, new ModuleListener() { + module.getProject().getMessageBus().connect(module).subscribe(ProjectTopics.MODULES, new ModuleListener() { @Override public void modulesRenamed(@NotNull Project project, @NotNull List modules, diff --git a/platform/projectModel-api/src/com/intellij/ProjectTopics.java b/platform/projectModel-api/src/com/intellij/ProjectTopics.java index 6cb11bbf825c..d0a6099a2386 100644 --- a/platform/projectModel-api/src/com/intellij/ProjectTopics.java +++ b/platform/projectModel-api/src/com/intellij/ProjectTopics.java @@ -16,7 +16,7 @@ public final class ProjectTopics { * Modules added or removed from project. */ @Topic.ProjectLevel - public static final Topic MODULES = new Topic<>(ModuleListener.class); + public static final Topic MODULES = new Topic<>(ModuleListener.class, Topic.BroadcastDirection.NONE); private ProjectTopics() { }