diff --git a/platform/external-system-impl/src/com/intellij/openapi/externalSystem/service/project/AbstractIdeModifiableModelsProvider.java b/platform/external-system-impl/src/com/intellij/openapi/externalSystem/service/project/AbstractIdeModifiableModelsProvider.java index 8d7f7d7576cc..6517926bd1b9 100644 --- a/platform/external-system-impl/src/com/intellij/openapi/externalSystem/service/project/AbstractIdeModifiableModelsProvider.java +++ b/platform/external-system-impl/src/com/intellij/openapi/externalSystem/service/project/AbstractIdeModifiableModelsProvider.java @@ -129,6 +129,13 @@ public abstract class AbstractIdeModifiableModelsProvider extends IdeModelsProvi return module; } + @Nullable + @Override + public Module findIdeModule(@NotNull String ideModuleName) { + Module module = getModifiableModuleModel().findModuleByName(ideModuleName); + return module == null ? getModifiableModuleModel().getModuleToBeRenamed(ideModuleName) : module; + } + @Nullable @Override public Library findIdeLibrary(@NotNull LibraryData libraryData) { diff --git a/platform/external-system-impl/src/com/intellij/openapi/externalSystem/service/project/manage/AbstractDependencyDataService.java b/platform/external-system-impl/src/com/intellij/openapi/externalSystem/service/project/manage/AbstractDependencyDataService.java index b650ba7ffd4b..41564ebe5faf 100644 --- a/platform/external-system-impl/src/com/intellij/openapi/externalSystem/service/project/manage/AbstractDependencyDataService.java +++ b/platform/external-system-impl/src/com/intellij/openapi/externalSystem/service/project/manage/AbstractDependencyDataService.java @@ -22,12 +22,14 @@ import com.intellij.openapi.externalSystem.service.project.IdeModifiableModelsPr import com.intellij.openapi.externalSystem.util.ExternalSystemApiUtil; import com.intellij.openapi.externalSystem.util.ExternalSystemConstants; import com.intellij.openapi.externalSystem.util.Order; +import com.intellij.openapi.module.ModifiableModuleModel; import com.intellij.openapi.module.Module; import com.intellij.openapi.project.Project; import com.intellij.openapi.project.ProjectBundle; import com.intellij.openapi.roots.*; import com.intellij.openapi.util.Computable; import com.intellij.openapi.util.text.StringUtil; +import com.intellij.util.ObjectUtils; import com.intellij.util.PathUtil; import com.intellij.util.containers.ContainerUtil; import com.intellij.util.containers.ContainerUtilRt; @@ -98,6 +100,7 @@ public abstract class AbstractDependencyDataService orphanEntries = ContainerUtil.newSmartList(); for (Module module : modelsProvider.getModules(projectData)) { for (OrderEntry entry : modelsProvider.getOrderEntries(module)) { @@ -107,11 +110,13 @@ public abstract class AbstractDependencyDataService getOrderEntryType(); - protected String getOrderEntryName(@NotNull I orderEntry) { + protected String getOrderEntryName(@NotNull IdeModifiableModelsProvider modelsProvider, @NotNull I orderEntry) { return orderEntry.getPresentableName(); } diff --git a/platform/external-system-impl/src/com/intellij/openapi/externalSystem/service/project/manage/ModuleDependencyDataService.java b/platform/external-system-impl/src/com/intellij/openapi/externalSystem/service/project/manage/ModuleDependencyDataService.java index 5e0ffdf5a006..403efa44dbb5 100644 --- a/platform/external-system-impl/src/com/intellij/openapi/externalSystem/service/project/manage/ModuleDependencyDataService.java +++ b/platform/external-system-impl/src/com/intellij/openapi/externalSystem/service/project/manage/ModuleDependencyDataService.java @@ -57,8 +57,16 @@ public class ModuleDependencyDataService extends AbstractDependencyDataService