Refactoring. Add some self-documented functions

This commit is contained in:
Nikolay Krasko
2012-09-21 12:18:25 +04:00
parent 9dfb9c883f
commit bed1d0e7a6
@@ -26,7 +26,7 @@ import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
import com.intellij.openapi.fileChooser.FileChooserFactory;
import com.intellij.openapi.fileChooser.FileTextField;
import com.intellij.openapi.module.Module;
import com.intellij.openapi.module.ModuleUtil;
import com.intellij.openapi.module.ModuleUtilCore;
import com.intellij.openapi.progress.ProcessCanceledException;
import com.intellij.openapi.project.IndexNotReadyException;
import com.intellij.openapi.project.Project;
@@ -55,6 +55,7 @@ import com.intellij.ui.EditorNotificationPanel;
import com.intellij.ui.EditorNotifications;
import com.intellij.util.containers.ContainerUtil;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.jet.lang.resolve.java.JvmStdlibNames;
import org.jetbrains.jet.plugin.JetFileType;
import org.jetbrains.jet.utils.PathUtil;
@@ -87,15 +88,10 @@ public class ConfigureKotlinLibraryNotificationProvider implements EditorNotific
if (CompilerManager.getInstance(myProject).isExcludedFromCompilation(file)) return null;
final Module module = ModuleUtil.findModuleForFile(file, myProject);
final Module module = ModuleUtilCore.findModuleForFile(file, myProject);
if (module == null) return null;
if (isMavenModule(module)) return null;
if (isJsModule(module)) return null;
GlobalSearchScope scope = module.getModuleWithDependenciesAndLibrariesScope(false);
if (JavaPsiFacade.getInstance(myProject).findClass("jet.JetObject", scope) == null) {
if (!isModuleAlreadyConfigured(module)) {
return createNotificationPanel(module);
}
}
@@ -106,7 +102,6 @@ public class ConfigureKotlinLibraryNotificationProvider implements EditorNotific
// Ignore
}
return null;
}
@@ -251,6 +246,16 @@ public class ConfigureKotlinLibraryNotificationProvider implements EditorNotific
});
}
private boolean isModuleAlreadyConfigured(Module module) {
return isMavenModule(module) || isJsModule(module) || isWithJavaModule(module);
}
private boolean isWithJavaModule(Module module) {
// Can find a reference to kotlin class in module scope
GlobalSearchScope scope = module.getModuleWithDependenciesAndLibrariesScope(false);
return (JavaPsiFacade.getInstance(myProject).findClass(JvmStdlibNames.JET_OBJECT.getSignatureName(), scope) != null);
}
private static boolean isMavenModule(@NotNull Module module) {
for (VirtualFile root : ModuleRootManager.getInstance(module).getContentRoots()) {
if (root.findChild("pom.xml") != null) return true;