From c7ea4646366312dd27001701a7828d6f57e316cc Mon Sep 17 00:00:00 2001 From: "Natalia.Ukhorskaya" Date: Thu, 26 Sep 2013 13:00:03 +0400 Subject: [PATCH] Don't use modifiable model for configuration --- .../KotlinWithLibraryConfigurator.java | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/idea/src/org/jetbrains/jet/plugin/configuration/KotlinWithLibraryConfigurator.java b/idea/src/org/jetbrains/jet/plugin/configuration/KotlinWithLibraryConfigurator.java index e67c3a6b19d..4d92cd719b2 100644 --- a/idea/src/org/jetbrains/jet/plugin/configuration/KotlinWithLibraryConfigurator.java +++ b/idea/src/org/jetbrains/jet/plugin/configuration/KotlinWithLibraryConfigurator.java @@ -240,25 +240,28 @@ public abstract class KotlinWithLibraryConfigurator implements KotlinProjectConf showInfoNotification(library.getName() + " library was added to module " + module.getName()); } else { - final ModifiableRootModel model = ModuleRootManager.getInstance(module).getModifiableModel(); - LibraryOrderEntry libraryEntry = OrderEntryUtil.findLibraryOrderEntry(model, kotlinLibrary); + LibraryOrderEntry libraryEntry = findLibraryOrderEntry(ModuleRootManager.getInstance(module).getOrderEntries(), kotlinLibrary); if (libraryEntry != null) { DependencyScope libraryDependencyScope = libraryEntry.getScope(); if (!expectedDependencyScope.equals(libraryDependencyScope)) { libraryEntry.setScope(expectedDependencyScope); - ApplicationManager.getApplication().runWriteAction(new Runnable() { - @Override - public void run() { - model.commit(); - } - }); showInfoNotification(kotlinLibrary.getName() + " library scope has changed from " + libraryDependencyScope + " to " + expectedDependencyScope + " for module " + module.getName()); } } } + } + @Nullable + private static LibraryOrderEntry findLibraryOrderEntry(@NotNull OrderEntry[] orderEntries, @NotNull Library library) { + for (OrderEntry orderEntry : orderEntries) { + if (orderEntry instanceof LibraryOrderEntry && library.equals(((LibraryOrderEntry)orderEntry).getLibrary())) { + return (LibraryOrderEntry)orderEntry; + } + } + + return null; } @NotNull