Module.getModuleType() -> ModuleType.get(Module)
authorDmitry Jemerov <yole@jetbrains.com>
Fri, 19 Aug 2011 15:44:26 +0000 (19:44 +0400)
committerDmitry Jemerov <yole@jetbrains.com>
Fri, 19 Aug 2011 16:48:46 +0000 (20:48 +0400)
65 files changed:
java/compiler/impl/src/com/intellij/compiler/impl/javaCompiler/BackendCompilerWrapper.java
java/compiler/impl/src/com/intellij/compiler/options/ProcessedModulesTable.java
java/compiler/impl/src/com/intellij/openapi/deployment/DeploymentUtilImpl.java
java/compiler/impl/src/com/intellij/packaging/impl/artifacts/JarArtifactFromModulesDialog.java
java/compiler/impl/src/com/intellij/packaging/impl/ui/ModuleElementPresentation.java
java/execution/impl/src/com/intellij/execution/ui/ConfigurationModuleSelector.java
java/idea-ui/src/com/intellij/ide/util/frameworkSupport/FrameworkSupportUtil.java
java/idea-ui/src/com/intellij/openapi/roots/ui/configuration/DefaultModuleEditorsProvider.java
java/idea-ui/src/com/intellij/openapi/roots/ui/configuration/artifacts/sourceItems/ModuleSourceItemGroup.java
java/idea-ui/src/com/intellij/openapi/roots/ui/configuration/dependencyAnalysis/AnalyzeDependenciesComponent.java
java/idea-ui/src/com/intellij/openapi/roots/ui/configuration/projectRoot/AddFacetOfTypeAction.java
java/idea-ui/src/com/intellij/openapi/roots/ui/configuration/projectRoot/FacetEditorFacadeImpl.java
java/idea-ui/src/com/intellij/openapi/roots/ui/configuration/projectRoot/ModuleConfigurable.java
java/idea-ui/src/com/intellij/openapi/roots/ui/configuration/projectRoot/ModuleStructureConfigurable.java
java/idea-ui/src/com/intellij/openapi/roots/ui/configuration/projectRoot/daemon/UsageInModuleClasspath.java
java/java-impl/src/com/intellij/codeInspection/ex/GlobalJavaInspectionContextImpl.java
java/java-impl/src/com/intellij/psi/impl/JavaDirectoryIconProvider.java
java/openapi/src/com/intellij/ide/IconUtilEx.java
platform/lang-api/src/com/intellij/openapi/module/Module.java
platform/lang-api/src/com/intellij/openapi/module/ModuleType.java
platform/lang-api/src/com/intellij/openapi/module/ModuleUtil.java
platform/lang-api/src/com/intellij/openapi/roots/ui/util/OrderEntryCellAppearanceUtils.java
platform/lang-impl/src/com/intellij/codeInsight/hint/ElementLocationUtil.java
platform/lang-impl/src/com/intellij/codeInspection/reference/RefModuleImpl.java
platform/lang-impl/src/com/intellij/codeInspection/ui/InspectionModuleNode.java
platform/lang-impl/src/com/intellij/facet/FacetManagerImpl.java
platform/lang-impl/src/com/intellij/facet/impl/statistics/ModuleTypeUsagesCollector.java
platform/lang-impl/src/com/intellij/ide/navigationToolbar/NavBarPresentation.java
platform/lang-impl/src/com/intellij/ide/projectView/impl/nodes/AbstractModuleNode.java
platform/lang-impl/src/com/intellij/ide/todo/nodes/ModuleToDoNode.java
platform/lang-impl/src/com/intellij/ide/util/DirectoryChooserModuleTreeView.java
platform/lang-impl/src/com/intellij/ide/util/PsiElementModuleRenderer.java
platform/lang-impl/src/com/intellij/moduleDependencies/ModulesDependenciesPanel.java
platform/lang-impl/src/com/intellij/openapi/components/impl/stores/ModuleStoreImpl.java
platform/lang-impl/src/com/intellij/openapi/module/impl/ModuleImpl.java
platform/lang-impl/src/com/intellij/openapi/module/impl/ModuleManagerImpl.java
platform/lang-impl/src/com/intellij/openapi/roots/ui/configuration/ChooseModulesDialog.java
platform/lang-impl/src/com/intellij/openapi/roots/ui/configuration/ModulesCombobox.java
platform/lang-impl/src/com/intellij/openapi/vcs/changes/ui/ChangesBrowserModuleNode.java
platform/lang-impl/src/com/intellij/packageDependencies/ui/ModuleNode.java
platform/lang-impl/src/com/intellij/util/ui/classpath/ChooseLibrariesDialogBase.java
platform/testFramework/src/com/intellij/mock/MockModule.java
platform/usageView/src/com/intellij/usages/impl/rules/ModuleGroupingRule.java
plugins/android/src/org/jetbrains/android/exportSignedPackage/ChooseModuleStep.java
plugins/android/src/org/jetbrains/android/newProject/AndroidModuleConfigurationEditorProvider.java
plugins/android/src/org/jetbrains/android/newProject/AndroidModulesComboBox.java
plugins/devkit/src/actions/GeneratePluginClassAction.java
plugins/devkit/src/build/PluginBuildParticipantProvider.java
plugins/devkit/src/build/PluginBuildUtil.java
plugins/devkit/src/build/PrepareAllToDeployAction.java
plugins/devkit/src/build/PrepareToDeployAction.java
plugins/devkit/src/module/PluginModuleEditorsProvider.java
plugins/devkit/src/module/PluginModuleType.java
plugins/devkit/src/run/PluginRunConfiguration.java
plugins/devkit/src/run/PluginRunConfigurationEditor.java
plugins/devkit/src/util/ChooseModulesDialog.java
plugins/eclipse/src/org/jetbrains/idea/eclipse/conversion/DotProjectFileHelper.java
plugins/groovy/src/org/jetbrains/plugins/groovy/compiler/GroovyCompiler.java
plugins/groovy/src/org/jetbrains/plugins/groovy/compiler/GroovyCompilerBase.java
plugins/groovy/src/org/jetbrains/plugins/groovy/mvc/util/ModuleCellRenderer.java
plugins/groovy/src/org/jetbrains/plugins/groovy/runner/GroovyRunConfigurationEditor.java
plugins/groovy/src/org/jetbrains/plugins/groovy/util/GroovyUtils.java
plugins/maven/src/main/java/org/jetbrains/idea/maven/importing/MavenProjectImporter.java
plugins/xpath/xpath-lang/src/org/intellij/lang/xpath/xslt/run/XsltRunSettingsEditor.java
plugins/xpath/xpath-view/src/org/intellij/plugins/xpathView/search/ScopePanel.java

index 08305785073fa8c74079fa0b84704edf32294796..033bec365cd4a10bdd345adc99b8330b6f908da3 100644 (file)
@@ -345,7 +345,7 @@ public class BackendCompilerWrapper {
       return; // should not invoke javac with empty sources list
     }
 
-    ModuleType moduleType = chunk.getModules()[0].getModuleType();
+    ModuleType moduleType = ModuleType.get(chunk.getModules()[0]);
     if (!(chunk.getJdk().getSdkType() instanceof JavaSdkType) &&
         !(moduleType instanceof JavaModuleType || moduleType.createModuleBuilder() instanceof JavaModuleBuilder)) {
       // TODO
index 05e28ae826fb0d4560b96fe9d9b1bb8d29e02320..2f9b75f8fa413ca4d1d5118ccc8e08b4203f9f06 100644 (file)
@@ -17,6 +17,7 @@ package com.intellij.compiler.options;
 
 import com.intellij.openapi.module.Module;
 import com.intellij.openapi.module.ModuleManager;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.project.Project;
 import com.intellij.openapi.roots.ui.configuration.ChooseModulesDialog;
 import com.intellij.openapi.util.Pair;
@@ -420,7 +421,7 @@ public class ProcessedModulesTable extends JPanel {
       }
       component.setEnabled(ProcessedModulesTable.this.isEnabled());
       if (component instanceof JLabel) {
-        final Icon icon = module != null ? module.getModuleType().getNodeIcon(false) : null;
+        final Icon icon = module != null ? ModuleType.get(module).getNodeIcon(false) : null;
         JLabel label = (JLabel)component;
         label.setIcon(icon);
         label.setDisabledIcon(icon);
index 6804b5ccc8eb8fb44e80cf131c41021c3ce6c038..9968fdbe3fb68729fa665f94c5db563e24851c21 100644 (file)
@@ -22,6 +22,7 @@ import com.intellij.openapi.compiler.CompilerMessageCategory;
 import com.intellij.openapi.compiler.make.BuildRecipe;
 import com.intellij.openapi.diagnostic.Logger;
 import com.intellij.openapi.module.Module;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.util.SystemInfo;
 import com.intellij.openapi.util.io.FileUtil;
 import com.intellij.openapi.vfs.VfsUtil;
@@ -119,7 +120,7 @@ public class DeploymentUtilImpl extends DeploymentUtil {
   }
 
   public void reportDeploymentDescriptorDoesNotExists(ConfigFile descriptor, CompileContext context, Module module) {
-    final String description = module.getModuleType().getName() + " '" + module.getName() + '\'';
+    final String description = ModuleType.get(module).getName() + " '" + module.getName() + '\'';
     String descriptorPath = VfsUtil.urlToPath(descriptor.getUrl());
     final String message =
       CompilerBundle.message("message.text.compiling.item.deployment.descriptor.could.not.be.found", description, descriptorPath);
@@ -130,7 +131,7 @@ public class DeploymentUtilImpl extends DeploymentUtil {
     if (new File(VfsUtil.urlToPath(descriptor.getUrl())).exists()) {
       String message = getConfigFileErrorMessage(descriptor);
       if (message != null) {
-        final String moduleDescription = module.getModuleType().getName() + " '" + module.getName() + '\'';
+        final String moduleDescription = ModuleType.get(module).getName() + " '" + module.getName() + '\'';
         compileContext.addMessage(CompilerMessageCategory.ERROR,
                                 CompilerBundle.message("message.text.compiling.module.message", moduleDescription, message),
                                   descriptor.getUrl(), -1, -1);
index b2c377b0d160c2fc464d1298e750e1f2e41fd0ee..a5e401eaabaa5d701082a1d75ee76b150e572d64 100644 (file)
@@ -17,6 +17,7 @@ package com.intellij.packaging.impl.artifacts;
 
 import com.intellij.ide.ui.ListCellRendererWrapper;
 import com.intellij.openapi.module.Module;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.project.Project;
 import com.intellij.openapi.roots.ui.configuration.ModulesAlphaComparator;
 import com.intellij.openapi.ui.DialogWrapper;
@@ -165,7 +166,7 @@ public class JarArtifactFromModulesDialog extends DialogWrapper {
     @Override
     public void customize(JList list, Module value, int index, boolean selected, boolean hasFocus) {
       if (value != null) {
-        setIcon(value.getModuleType().getNodeIcon(false));
+        setIcon(ModuleType.get(value).getNodeIcon(false));
         setText(value.getName());
       }
       else {
index 9b05f101f6fb41b7830cd829c1cc221650acba82..042329d9f2ac612c6aac48e490d3149e4d548654 100644 (file)
@@ -20,6 +20,7 @@ import com.intellij.openapi.compiler.CompilerBundle;
 import com.intellij.openapi.module.ModifiableModuleModel;
 import com.intellij.openapi.module.Module;
 import com.intellij.openapi.module.ModulePointer;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.packaging.ui.ArtifactEditorContext;
 import com.intellij.packaging.ui.PackagingElementWeights;
 import com.intellij.packaging.ui.TreeNodePresentation;
@@ -70,8 +71,8 @@ public class ModuleElementPresentation extends TreeNodePresentation {
       presentationData.setIcons(PlatformIcons.TEST_SOURCE_FOLDER);
     }
     else if (module != null) {
-      presentationData.setOpenIcon(module.getModuleType().getNodeIcon(true));
-      presentationData.setClosedIcon(module.getModuleType().getNodeIcon(false));
+      presentationData.setOpenIcon(ModuleType.get(module).getNodeIcon(true));
+      presentationData.setClosedIcon(ModuleType.get(module).getNodeIcon(false));
     }
     String moduleName;
     if (module != null) {
index f488a89cc32b0d8101c35c8219913a3873859fa6..2d7dd2f7ca16823b531c7b4719118606371f7476 100644 (file)
@@ -20,6 +20,7 @@ import com.intellij.execution.configurations.ModuleBasedConfiguration;
 import com.intellij.ide.ui.ListCellRendererWrapper;
 import com.intellij.openapi.module.Module;
 import com.intellij.openapi.module.ModuleManager;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.module.ModuleTypeManager;
 import com.intellij.openapi.project.Project;
 import com.intellij.psi.PsiClass;
@@ -66,7 +67,7 @@ public class ConfigurationModuleSelector {
       public void customize(final JList list, final Object value, final int index, final boolean selected, final boolean hasFocus) {
         if (value instanceof Module) {
           final Module module = (Module)value;
-          setIcon(module.getModuleType().getNodeIcon(true));
+          setIcon(ModuleType.get(module).getNodeIcon(true));
           setText(module.getName());
         }
         else if (value == null) {
@@ -91,7 +92,7 @@ public class ConfigurationModuleSelector {
   }
 
   public static boolean isModuleAccepted(final Module module) {
-    return ModuleTypeManager.getInstance().isClasspathProvider(module.getModuleType());    
+    return ModuleTypeManager.getInstance().isClasspathProvider(ModuleType.get(module));
   }
 
   public Project getProject() {
index 3993992f007a999a9abe380303cacdaec7d47353..0e6fb261fe637b8a85adc9b3279ba96e4a434318 100644 (file)
@@ -29,7 +29,7 @@ public class FrameworkSupportUtil {
   }
 
   public static List<FrameworkSupportProvider> getProviders(@NotNull Module module) {
-    return getProviders(module.getModuleType(), module);
+    return getProviders(ModuleType.get(module), module);
   }
 
   private static List<FrameworkSupportProvider> getProviders(@NotNull ModuleType moduleType, @Nullable Module module) {
index f365793da0d7e9d0e1cd0362aa09ffb8158be904..fe98d3db07a643ffa392fced8dd6cb36721a17af 100644 (file)
@@ -18,6 +18,7 @@ package com.intellij.openapi.roots.ui.configuration;
 import com.intellij.openapi.module.JavaModuleType;
 import com.intellij.openapi.module.Module;
 import com.intellij.openapi.module.ModuleConfigurationEditor;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.roots.ModifiableRootModel;
 
 import java.util.ArrayList;
@@ -27,7 +28,7 @@ public class DefaultModuleEditorsProvider implements ModuleConfigurationEditorPr
   public ModuleConfigurationEditor[] createEditors(ModuleConfigurationState state) {
     ModifiableRootModel rootModel = state.getRootModel();
     Module module = rootModel.getModule();
-    if (!(module.getModuleType() instanceof JavaModuleType)) {
+    if (!(ModuleType.get(module) instanceof JavaModuleType)) {
       return ModuleConfigurationEditor.EMPTY;
     }
 
index aecfe28092cf91b318a73d8768fbc7550f5d2164..5b0d5a16fc8254084da047fcefa50db47b115ce9 100644 (file)
@@ -17,6 +17,7 @@ package com.intellij.openapi.roots.ui.configuration.artifacts.sourceItems;
 
 import com.intellij.ide.projectView.PresentationData;
 import com.intellij.openapi.module.Module;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.roots.DependencyScope;
 import com.intellij.openapi.roots.ModuleOrderEntry;
 import com.intellij.openapi.roots.OrderEntry;
@@ -122,8 +123,8 @@ public class ModuleSourceItemGroup extends PackagingSourceItem {
     @Override
     public void render(@NotNull PresentationData presentationData, SimpleTextAttributes mainAttributes,
                        SimpleTextAttributes commentAttributes) {
-      presentationData.setClosedIcon(myModule.getModuleType().getNodeIcon(false));
-      presentationData.setOpenIcon(myModule.getModuleType().getNodeIcon(true));
+      presentationData.setClosedIcon(ModuleType.get(myModule).getNodeIcon(false));
+      presentationData.setOpenIcon(ModuleType.get(myModule).getNodeIcon(true));
       presentationData.addText(myModule.getName(), mainAttributes);
     }
 
index bde56cba8bc7d8a7fd57bf3fe6022fc824f4d094..f6e1386ff52a82139800e3afc4680c98bec7c712 100644 (file)
@@ -20,6 +20,7 @@ import com.intellij.ide.DataManager;
 import com.intellij.openapi.actionSystem.*;
 import com.intellij.openapi.actionSystem.ex.ComboBoxAction;
 import com.intellij.openapi.module.Module;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.options.ConfigurationException;
 import com.intellij.openapi.project.DumbAwareAction;
 import com.intellij.openapi.roots.ModuleRootEvent;
@@ -617,7 +618,7 @@ public class AnalyzeDependenciesComponent extends MasterDetailsComponent {
           return new CellAppearance() {
             @Override
             public void customize(SimpleColoredComponent component) {
-              component.setIcon(myModule.getModuleType().getNodeIcon(false));
+              component.setIcon(ModuleType.get(myModule).getNodeIcon(false));
               component.append("<This Module>", SimpleTextAttributes.SYNTHETIC_ATTRIBUTES);
             }
 
index 82a580cfdf526ce97ac9cd871ca138a2c8e4eb9e..dbc467adceed1f29d0e369a3e4afeda9d0bca970 100644 (file)
@@ -24,6 +24,7 @@ import com.intellij.ide.util.ChooseElementsDialog;
 import com.intellij.openapi.actionSystem.AnAction;
 import com.intellij.openapi.actionSystem.AnActionEvent;
 import com.intellij.openapi.module.Module;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.project.DumbAwareAction;
 import com.intellij.openapi.project.Project;
 import com.intellij.openapi.roots.ui.configuration.ChooseModulesDialog;
@@ -68,7 +69,7 @@ class AddFacetOfTypeAction extends DumbAwareAction {
     final ProjectFacetsConfigurator facetsConfigurator = myContext.getModulesConfigurator().getFacetsConfigurator();
     List<Facet> suitableParents = new ArrayList<Facet>();
     for (Module module : myContext.getModules()) {
-      if (type.isSuitableModuleType(module.getModuleType())) {
+      if (type.isSuitableModuleType(ModuleType.get(module))) {
         suitableParents.addAll(facetsConfigurator.getFacetsByType(module, underlyingType));
       }
     }
@@ -104,7 +105,7 @@ class AddFacetOfTypeAction extends DumbAwareAction {
     final Iterator<Module> iterator = suitableModules.iterator();
     while (iterator.hasNext()) {
       Module module = iterator.next();
-      if (!type.isSuitableModuleType(module.getModuleType()) || (type.isOnlyOneFacetAllowed() && facetsConfigurator.hasFacetOfType(module, null, type.getId()))) {
+      if (!type.isSuitableModuleType(ModuleType.get(module)) || (type.isOnlyOneFacetAllowed() && facetsConfigurator.hasFacetOfType(module, null, type.getId()))) {
         iterator.remove();
       }
     }
@@ -139,7 +140,7 @@ class AddFacetOfTypeAction extends DumbAwareAction {
 
   private static boolean hasSuitableModules(StructureConfigurableContext context, FacetType type) {
     for (Module module : context.getModules()) {
-      if (type.isSuitableModuleType(module.getModuleType())) {
+      if (type.isSuitableModuleType(ModuleType.get(module))) {
         return true;
       }
     }
index 6b6e3928d8d712eec99d7d1d201e48c3bb161bc9..c160d90fcd14964d7eb863866c7900bd58263c1c 100644 (file)
@@ -181,7 +181,7 @@ public class FacetEditorFacadeImpl implements FacetEditorFacade {
   @Nullable
   public ModuleType getSelectedModuleType() {
     final Module module = getSelectedModule();
-    return module != null ? module.getModuleType() : null;
+    return module != null ? ModuleType.get(module) : null;
   }
 
   @Nullable
index 3584e55b996aa8f021691e02115fe80db3bef203..26cbc73fb1e299610568e899bf1d4867afffedb3 100644 (file)
@@ -18,6 +18,7 @@ package com.intellij.openapi.roots.ui.configuration.projectRoot;
 
 import com.intellij.openapi.module.ModifiableModuleModel;
 import com.intellij.openapi.module.Module;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.module.ModuleWithNameAlreadyExists;
 import com.intellij.openapi.options.ConfigurationException;
 import com.intellij.openapi.project.ProjectBundle;
@@ -91,11 +92,11 @@ public class ModuleConfigurable extends ProjectStructureElementConfigurable<Modu
   }
 
   public Icon getIcon() {
-    return myModule.getModuleType().getNodeIcon(false);
+    return ModuleType.get(myModule).getNodeIcon(false);
   }
 
   public Icon getIcon(final boolean open) {
-    return myModule.getModuleType().getNodeIcon(open);
+    return ModuleType.get(myModule).getNodeIcon(open);
   }
 
   public Module getModule() {
index abc1e910a79dd7a4ad523009578b82f544557adb..f3fbc2e4c43cf8b25a9444eb5a75c6b034faec7a 100644 (file)
@@ -771,7 +771,7 @@ public class ModuleStructureConfigurable extends BaseStructureConfigurable imple
             }
 
             public ModuleType getModuleType() {
-              return rootModel.getModule().getModuleType();
+              return ModuleType.get(rootModel.getModule());
             }
           };
           builder.setName(component.getNameValue());
index ce8f23ebf82114df92d25875df8fd15e8fe40846..54922119a5737afddcdcf12b2133d70330cac2fd 100644 (file)
@@ -1,6 +1,7 @@
 package com.intellij.openapi.roots.ui.configuration.projectRoot.daemon;
 
 import com.intellij.openapi.module.Module;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.roots.ModuleRootModel;
 import com.intellij.openapi.roots.OrderEntry;
 import com.intellij.openapi.roots.impl.OrderEntryUtil;
@@ -81,6 +82,6 @@ public class UsageInModuleClasspath extends ProjectStructureElementUsage {
 
   @Override
   public Icon getIcon() {
-    return myModule.getModuleType().getNodeIcon(false);
+    return ModuleType.get(myModule).getNodeIcon(false);
   }
 }
index 03d8243e5f57ae471786c7281ef969ac32627ef5..95c08724069f96742152419876fd613ba40192ef 100644 (file)
@@ -31,6 +31,7 @@ import com.intellij.openapi.diagnostic.Logger;
 import com.intellij.openapi.fileTypes.StdFileTypes;
 import com.intellij.openapi.module.Module;
 import com.intellij.openapi.module.ModuleManager;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.project.Project;
 import com.intellij.openapi.projectRoots.Sdk;
 import com.intellij.openapi.roots.*;
@@ -153,7 +154,7 @@ public class GlobalJavaInspectionContextImpl extends GlobalJavaInspectionContext
     for (Module module : modules) {
       if (ModuleRootManager.getInstance(module).isSdkInherited()) {
         anyModuleUsesProjectSdk = true;
-        if (module.getModuleType().isValidSdk(module, projectSdk)) {
+        if (ModuleType.get(module).isValidSdk(module, projectSdk)) {
           anyModuleAcceptsSdk = true;
         }
       }
index 533e75937e608b7fdd68a377ad08ba1e14a6fe9d..805053a99aa4c0518157fc87942745f24de620db 100644 (file)
@@ -18,6 +18,7 @@ package com.intellij.psi.impl;
 import com.intellij.ide.IconProvider;
 import com.intellij.ide.projectView.impl.ProjectRootsUtil;
 import com.intellij.openapi.module.Module;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.project.DumbAware;
 import com.intellij.openapi.project.Project;
 import com.intellij.openapi.roots.ProjectRootManager;
@@ -56,7 +57,7 @@ public class JavaDirectoryIconProvider extends IconProvider implements DumbAware
       else if (isContentRoot) {
         Module module = ProjectRootManager.getInstance(project).getFileIndex().getModuleForFile(vFile);
         if (module != null) {
-          symbolIcon = module.getModuleType().getNodeIcon(isOpen);
+          symbolIcon = ModuleType.get(module).getNodeIcon(isOpen);
         }
         else {
           symbolIcon = isOpen ? PlatformIcons.CONTENT_ROOT_ICON_OPEN : PlatformIcons.CONTENT_ROOT_ICON_CLOSED;
index ee012e6dfc4b75189d7f6a1895a59dc03c807699..517f943c50a794e6d69bdb441daeb37574e2a65c 100644 (file)
@@ -16,6 +16,7 @@
 package com.intellij.ide;
 
 import com.intellij.openapi.module.Module;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.project.Project;
 import com.intellij.openapi.util.Iconable;
 import com.intellij.openapi.vfs.VirtualFile;
@@ -32,7 +33,7 @@ public class IconUtilEx {
       return ((PsiElement)object).getIcon(flags);
     }
     if (object instanceof Module) {
-      return ((Module)object).getModuleType().getNodeIcon((flags & Iconable.ICON_FLAG_OPEN) != 0);
+      return ModuleType.get(((Module)object)).getNodeIcon((flags & Iconable.ICON_FLAG_OPEN) != 0);
     }
     if (object instanceof VirtualFile) {
       VirtualFile file = (VirtualFile)object;
index 67729e5409212c60017891bff0f93ceee04074ac..b233262dd8a3fd9340375522b27ee8f56896f063 100644 (file)
@@ -21,6 +21,7 @@ import com.intellij.openapi.extensions.AreaInstance;
 import com.intellij.openapi.project.Project;
 import com.intellij.openapi.vfs.VirtualFile;
 import com.intellij.psi.search.GlobalSearchScope;
+import org.jetbrains.annotations.NonNls;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
 
@@ -36,6 +37,8 @@ public interface Module extends ComponentManager, AreaInstance, Disposable {
    */
   Module[] EMPTY_ARRAY = new Module[0];
 
+  @NonNls String ELEMENT_TYPE = "type";
+
   /**
    * Returns the <code>VirtualFile</code> for the module .iml file.
    *
@@ -52,13 +55,6 @@ public interface Module extends ComponentManager, AreaInstance, Disposable {
   @NotNull String getModuleFilePath();
 
   /**
-   * Returns the type of this module.
-   *
-   * @return the module type.
-   */
-  @NotNull ModuleType getModuleType();
-
-  /**
    * Returns the project to which this module belongs.
    *
    * @return the project instance.
index 93ce3b0c536426a96764648e883d6daac61e80d7..a35b8229867989bacf1881e2d71c2b26c04eeff9 100644 (file)
@@ -83,4 +83,8 @@ public abstract class ModuleType<T extends ModuleBuilder> {
   public boolean isValidSdk(final Module module, final Sdk projectSdk) {
     return true;
   }
+
+  public static ModuleType get(Module module) {
+    return ModuleTypeManager.getInstance().findByID(module.getOptionValue(Module.ELEMENT_TYPE));
+  }
 }
index 67b3386aabe4cac03c2697208da5b13324478b85..6f78c4cbb31e4a20fee19b1c6de57e05a77f0379 100644 (file)
@@ -80,7 +80,7 @@ public class ModuleUtil {
   @Nullable
   public static Module getParentModuleOfType(ModuleType expectedModuleType, Module module) {
     if (module == null) return null;
-    if (expectedModuleType.equals(module.getModuleType())) return module;
+    if (expectedModuleType.equals(ModuleType.get(module))) return module;
     final List<Module> parents = getParentModulesOfType(expectedModuleType, module);
     return parents.isEmpty() ? null : parents.get(0);
   }
@@ -90,7 +90,7 @@ public class ModuleUtil {
     final List<Module> parents = ModuleManager.getInstance(module.getProject()).getModuleDependentModules(module);
     ArrayList<Module> modules = new ArrayList<Module>();
     for (Module parent : parents) {
-      if (expectedModuleType.equals(parent.getModuleType())) {
+      if (expectedModuleType.equals(ModuleType.get(parent))) {
         modules.add(parent);
       }
     }
index 2dfb0a1e34c0d835661904045c1d0e0f6236cf19..ebafb3a04e29256ac6b78b1da43fed1141ec8709 100644 (file)
@@ -17,6 +17,7 @@
 package com.intellij.openapi.roots.ui.util;
 
 import com.intellij.openapi.module.Module;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.project.Project;
 import com.intellij.openapi.project.ProjectBundle;
 import com.intellij.openapi.projectRoots.Sdk;
@@ -74,7 +75,7 @@ public class OrderEntryCellAppearanceUtils {
       return new SimpleTextCellAppearance(presentableName, icon, SimpleTextAttributes.SYNTHETIC_ATTRIBUTES);
     }
     else if (orderEntry instanceof ModuleOrderEntry) {
-      final Icon icon = ((ModuleOrderEntry)orderEntry).getModule().getModuleType().getNodeIcon(false);
+      final Icon icon = ModuleType.get(((ModuleOrderEntry)orderEntry).getModule()).getNodeIcon(false);
       return SimpleTextCellAppearance.normal(orderEntry.getPresentableName(), icon);
     }
     else return CompositeAppearance.single(orderEntry.getPresentableName());
@@ -158,7 +159,7 @@ public class OrderEntryCellAppearanceUtils {
   }
 
   public static CellAppearance forModule(Module module) {
-    return SimpleTextCellAppearance.normal(module.getName(), module.getModuleType().getNodeIcon(false));
+    return SimpleTextCellAppearance.normal(module.getName(), ModuleType.get(module).getNodeIcon(false));
   }
 
   public static CellAppearance forContentEntry(ContentEntry contentEntry) {
index bd89680967ca7bd83a4cb36208843e2769144187..6349077970d8d1448f41c3b46fd2a619aad5dd38 100644 (file)
@@ -16,6 +16,7 @@
 
 package com.intellij.codeInsight.hint;
 
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.util.IconLoader;
 import com.intellij.openapi.vfs.VirtualFile;
 import com.intellij.openapi.roots.*;
@@ -49,7 +50,7 @@ public class ElementLocationUtil {
 
       if (module != null) {
         label.setText(module.getName());
-        label.setIcon(module.getModuleType().getNodeIcon(false));
+        label.setIcon(ModuleType.get(module).getNodeIcon(false));
       }
       else {
         final List<OrderEntry> entries = fileIndex.getOrderEntriesForFile(vfile);
index 455c4490e6dab5330f1f977a9c26b10d199bb709..89ab7b9e7ab4f74bcdb25046f53440ec26c22efc 100644 (file)
@@ -3,6 +3,7 @@ package com.intellij.codeInspection.reference;
 import com.intellij.openapi.application.ApplicationManager;
 import com.intellij.openapi.module.Module;
 import com.intellij.openapi.module.ModuleManager;
+import com.intellij.openapi.module.ModuleType;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
 
@@ -57,7 +58,7 @@ public class RefModuleImpl extends RefEntityImpl implements RefModule {
   }
 
   public Icon getIcon(final boolean expanded) {
-    return getModule().getModuleType().getNodeIcon(expanded);
+    return ModuleType.get(getModule()).getNodeIcon(expanded);
   }
 
   @Nullable
index eb355303165c63c944c0ce97e5af28316f463c5b..ff16feef19b2233a0e4b4295bb569db17af6e0f7 100644 (file)
@@ -1,6 +1,7 @@
 package com.intellij.codeInspection.ui;
 
 import com.intellij.openapi.module.Module;
+import com.intellij.openapi.module.ModuleType;
 
 import javax.swing.*;
 
@@ -16,7 +17,7 @@ public class InspectionModuleNode extends InspectionTreeNode{
   }
 
   public Icon getIcon(boolean expanded) {
-    return myModule.getModuleType().getNodeIcon(expanded);
+    return ModuleType.get(myModule).getNodeIcon(expanded);
   }
 
   public String getName(){
index 451c3a505bed657541cdbc46976c6a27dc6a60fd..4cb3f4e56fb95f854cf4372b2daab4e9832af6be 100644 (file)
@@ -169,7 +169,7 @@ public class FacetManagerImpl extends FacetManager implements ModuleComponent, P
         continue;
       }
 
-      ModuleType moduleType = myModule.getModuleType();
+      ModuleType moduleType = ModuleType.get(myModule);
       if (!type.isSuitableModuleType(moduleType)) {
         addInvalidFacet(child, model, underlyingFacet, ProjectBundle.message("error.message.0.facets.are.not.allowed.in.1",
                                                                       type.getPresentableName(), moduleType.getName()));
index 397fd724c1eced874128d7503aa617e9e45f2b90..1f14356d996893800a6ebb4062c3009504c2dc7f 100644 (file)
@@ -20,6 +20,7 @@ import com.intellij.internal.statistic.beans.GroupDescriptor;
 import com.intellij.internal.statistic.beans.UsageDescriptor;
 import com.intellij.openapi.module.Module;
 import com.intellij.openapi.module.ModuleManager;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.project.Project;
 import com.intellij.util.Function;
 import com.intellij.util.containers.ContainerUtil;
@@ -42,7 +43,7 @@ public class ModuleTypeUsagesCollector extends AbstractApplicationUsagesCollecto
   public Set<UsageDescriptor> getProjectUsages(@NotNull Project project) {
     Set<String> modulesTypes = new HashSet<String>();
     for (Module module : ModuleManager.getInstance(project).getModules()) {
-      modulesTypes.add(module.getModuleType().getId());
+      modulesTypes.add(ModuleType.get(module).getId());
     }
     return ContainerUtil.map2Set(modulesTypes, new Function<String, UsageDescriptor>() {
       @Override
index 22978bfc056982c6394317f085987b3b3df845ff..cac639843895ca24146040a7be80a08fa26d7dd0 100644 (file)
@@ -21,6 +21,7 @@ import com.intellij.openapi.application.ApplicationManager;
 import com.intellij.openapi.extensions.Extensions;
 import com.intellij.openapi.module.Module;
 import com.intellij.openapi.module.ModuleManager;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.module.ModuleUtil;
 import com.intellij.openapi.project.IndexNotReadyException;
 import com.intellij.openapi.project.Project;
@@ -64,7 +65,7 @@ public class NavBarPresentation {
   public static Icon getIcon(final Object object, final boolean open) {
     if (!NavBarModel.isValid(object)) return null;
     if (object instanceof Project) return PROJECT_ICON;
-    if (object instanceof Module) return ((Module)object).getModuleType().getNodeIcon(false);
+    if (object instanceof Module) return ModuleType.get(((Module)object)).getNodeIcon(false);
     try {
       if (object instanceof PsiElement) {
         return ApplicationManager.getApplication().runReadAction(new Computable<Icon>() {
@@ -80,7 +81,7 @@ public class NavBarPresentation {
     }
     if (object instanceof JdkOrderEntry) return ((JdkOrderEntry)object).getJdk().getSdkType().getIcon();
     if (object instanceof LibraryOrderEntry) return IconLoader.getIcon("/nodes/ppLibClosed.png");
-    if (object instanceof ModuleOrderEntry) return ((ModuleOrderEntry)object).getModule().getModuleType().getNodeIcon(false);
+    if (object instanceof ModuleOrderEntry) return ModuleType.get(((ModuleOrderEntry)object).getModule()).getNodeIcon(false);
     return null;
   }
 
index 7dbc52abe646d8c808afbe1bf86d32958edbc61b..db02417b443c9890f6ae42a724440702012e22b7 100644 (file)
@@ -19,6 +19,7 @@ import com.intellij.ide.projectView.PresentationData;
 import com.intellij.ide.projectView.ProjectViewNode;
 import com.intellij.ide.projectView.ViewSettings;
 import com.intellij.openapi.module.Module;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.project.Project;
 import com.intellij.openapi.roots.ModuleRootManager;
 import com.intellij.openapi.roots.ui.configuration.ProjectSettingsService;
@@ -47,8 +48,8 @@ public abstract class AbstractModuleNode extends ProjectViewNode<Module> impleme
       presentation.addText(getValue().getName(), SimpleTextAttributes.REGULAR_BOLD_ATTRIBUTES);
     }
 
-    presentation.setOpenIcon(getValue().getModuleType().getNodeIcon(true));
-    presentation.setClosedIcon(getValue().getModuleType().getNodeIcon(false));
+    presentation.setOpenIcon(ModuleType.get(getValue()).getNodeIcon(true));
+    presentation.setClosedIcon(ModuleType.get(getValue()).getNodeIcon(false));
   }
 
   protected boolean showModuleNameInBold() {
@@ -86,7 +87,7 @@ public abstract class AbstractModuleNode extends ProjectViewNode<Module> impleme
 
   public String getToolTip() {
     final Module module = getValue();
-    return module.getModuleType().getName();
+    return ModuleType.get(module).getName();
   }
 
   public void navigate(final boolean requestFocus) {
index b732a6950f4c3f57272f9597d330b2ecb2e431db..75f60b3b5e059d670f553255752a689a9173b8cc 100644 (file)
@@ -27,6 +27,7 @@ import com.intellij.openapi.editor.colors.EditorColorsScheme;
 import com.intellij.openapi.editor.markup.TextAttributes;
 import com.intellij.openapi.ide.CopyPasteManager;
 import com.intellij.openapi.module.Module;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.project.Project;
 import com.intellij.openapi.roots.ModuleRootManager;
 import com.intellij.openapi.util.Computable;
@@ -96,8 +97,8 @@ public class ModuleToDoNode extends BaseToDoNode<Module> implements HighlightedR
     EditorColorsScheme colorsScheme = UsageTreeColorsScheme.getInstance().getScheme();
     myHighlightedRegions.add(
       new HighlightedRegion(nameEndOffset, newName.length(), colorsScheme.getAttributes(UsageTreeColors.NUMBER_OF_USAGES)));
-    presentation.setOpenIcon(getValue().getModuleType().getNodeIcon(true));
-    presentation.setClosedIcon(getValue().getModuleType().getNodeIcon(false));
+    presentation.setOpenIcon(ModuleType.get(getValue()).getNodeIcon(true));
+    presentation.setClosedIcon(ModuleType.get(getValue()).getNodeIcon(false));
     presentation.setPresentableText(newName);
   }
 
index 83409382bfbc85602b845f9cc5549b40506d99e2..d7b6944174a9fa2f546a70fd5d6bc310e3a685f7 100644 (file)
@@ -21,6 +21,7 @@ import com.intellij.ide.projectView.impl.ModuleGroupUtil;
 import com.intellij.openapi.diagnostic.Logger;
 import com.intellij.openapi.module.Module;
 import com.intellij.openapi.module.ModuleManager;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.project.Project;
 import com.intellij.openapi.roots.ProjectFileIndex;
 import com.intellij.openapi.roots.ProjectRootManager;
@@ -240,7 +241,7 @@ public class DirectoryChooserModuleTreeView implements DirectoryChooserView {
         final Module module = (Module)value;
         append(module.getName(), SimpleTextAttributes.REGULAR_ATTRIBUTES);
         int flags1 = expanded ? Iconable.ICON_FLAG_OPEN : Iconable.ICON_FLAG_CLOSED;
-        setIcon(module.getModuleType().getNodeIcon((flags1 & Iconable.ICON_FLAG_OPEN) != 0));
+        setIcon(ModuleType.get(module).getNodeIcon((flags1 & Iconable.ICON_FLAG_OPEN) != 0));
       } else if (value instanceof ModuleGroup) {
         append(value.toString(), SimpleTextAttributes.REGULAR_ATTRIBUTES);
         setIcon(expanded ? PlatformIcons.OPENED_MODULE_GROUP_ICON : PlatformIcons.CLOSED_MODULE_GROUP_ICON);
index 4a5c108b5744b3d9f8b4ea75cc081329b9eae8a5..3271e723cbc665837fdbb201f811b1787c2e8225 100644 (file)
@@ -17,6 +17,7 @@
 package com.intellij.ide.util;
 
 import com.intellij.openapi.module.Module;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.module.ModuleUtil;
 import com.intellij.openapi.roots.*;
 import com.intellij.openapi.util.IconLoader;
@@ -77,7 +78,7 @@ public class PsiElementModuleRenderer extends DefaultListCellRenderer{
             setIcon(TEST_ICON);
           }
           else {
-            setIcon(module.getModuleType().getNodeIcon(false));
+            setIcon(ModuleType.get(module).getNodeIcon(false));
           }
         } else {
           if (psiFile != null) {
index 53564cc8c00911c6ab5069710f63991ca2983c79..0f074ee65eaec62c62d370ec4c44c283b2f52a5e 100644 (file)
@@ -27,6 +27,7 @@ import com.intellij.openapi.Disposable;
 import com.intellij.openapi.actionSystem.*;
 import com.intellij.openapi.module.Module;
 import com.intellij.openapi.module.ModuleManager;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.progress.ProgressIndicator;
 import com.intellij.openapi.progress.ProgressManager;
 import com.intellij.openapi.project.Project;
@@ -530,7 +531,7 @@ public class ModulesDependenciesPanel extends JPanel implements ModuleRootListen
       }
       MyUserObject node = (MyUserObject)userObject;
       Module module = node.getModule();
-      setIcon(module.getModuleType().getNodeIcon(expanded));
+      setIcon(ModuleType.get(module).getNodeIcon(expanded));
       if (node.isInCycle()){
         append(module.getName(), SimpleTextAttributes.ERROR_ATTRIBUTES);
       } else {
index 74bf0470155add8373505bf88af18556d5e8b04b..5d0e994a317c55738d884df5abf6aa89d9280f2c 100644 (file)
@@ -70,7 +70,7 @@ public class ModuleStoreImpl extends BaseFileConfigurableStoreImpl implements IM
 
     final ModuleFileData storageData = getMainStorageData();
     final String moduleTypeId = storageData.myOptions.get(ModuleImpl.ELEMENT_TYPE);
-    myModule.setModuleType(ModuleTypeManager.getInstance().findByID(moduleTypeId));
+    myModule.setOption(Module.ELEMENT_TYPE, ModuleTypeManager.getInstance().findByID(moduleTypeId).getId());
 
     if (ApplicationManager.getApplication().isHeadlessEnvironment() || ApplicationManager.getApplication().isUnitTestMode()) return;
 
index 58adea10b78fe0f463219227b3f7e18148b47b45..1c2078e06d2e2729263e47b0d047ea3d4fd205af 100644 (file)
@@ -24,7 +24,6 @@ import com.intellij.openapi.components.impl.ComponentManagerImpl;
 import com.intellij.openapi.components.impl.ModulePathMacroManager;
 import com.intellij.openapi.components.impl.stores.IComponentStore;
 import com.intellij.openapi.components.impl.stores.IModuleStore;
-import com.intellij.openapi.components.impl.stores.IProjectStore;
 import com.intellij.openapi.components.impl.stores.ModuleStoreImpl;
 import com.intellij.openapi.diagnostic.Logger;
 import com.intellij.openapi.extensions.AreaInstance;
@@ -32,7 +31,6 @@ import com.intellij.openapi.extensions.ExtensionPointName;
 import com.intellij.openapi.extensions.Extensions;
 import com.intellij.openapi.module.Module;
 import com.intellij.openapi.module.ModuleComponent;
-import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.module.impl.scopes.ModuleWithDependenciesScope;
 import com.intellij.openapi.module.impl.scopes.ModuleWithDependentsScope;
 import com.intellij.openapi.project.Project;
@@ -61,11 +59,9 @@ public class ModuleImpl extends ComponentManagerImpl implements Module {
   private static final Logger LOG = Logger.getInstance("#com.intellij.openapi.module.impl.ModuleImpl");
 
   @NotNull private final Project myProject;
-  private ModuleType myModuleType = null;
   private boolean isModuleAdded;
 
   @NonNls private static final String OPTION_WORKSPACE = "workspace";
-  @NonNls public static final String ELEMENT_TYPE = "type";
 
   private final Map<Integer, GlobalSearchScope> myScopeCache = new StripedLockConcurrentHashMap<Integer, GlobalSearchScope>();
 
@@ -210,12 +206,6 @@ public class ModuleImpl extends ComponentManagerImpl implements Module {
   }
 
   @NotNull
-  public ModuleType getModuleType() {
-    LOG.assertTrue(myModuleType != null, "Module type not initialized yet");
-    return myModuleType;
-  }
-
-  @NotNull
   public Project getProject() {
     return myProject;
   }
@@ -236,11 +226,6 @@ public class ModuleImpl extends ComponentManagerImpl implements Module {
     }
   }
 
-  public void setModuleType(ModuleType type) {
-    myModuleType = type;
-    setOption(ELEMENT_TYPE, type.getId());
-  }
-
   public void setOption(@NotNull String optionName, @NotNull String optionValue) {
     getStateStore().setOption(optionName, optionValue);
   }
index 4bc2d0496d0e474f72916b4c48fe91f902798599..250d6862a41e736b6fab6d8729c5b66df1d3830b 100644 (file)
@@ -244,7 +244,7 @@ public class ModuleManagerImpl extends ModuleManager implements ProjectComponent
           for (final ModulePath modulePath : myModulePaths) {
             try {
               final Module module = moduleModel.loadModuleInternal(modulePath.getPath());
-              if (module.getModuleType() instanceof UnknownModuleType) {
+              if (ModuleType.get(module) instanceof UnknownModuleType) {
                 modulesWithUnknownTypes.add(module);
               }
               final String groupPathString = modulePath.getModuleGroup();
@@ -273,13 +273,13 @@ public class ModuleManagerImpl extends ModuleManager implements ProjectComponent
             String message;
             if (modulesWithUnknownTypes.size() == 1) {
               message = ProjectBundle.message("module.unknown.type.single.error", modulesWithUnknownTypes.get(0).getName(),
-                                              modulesWithUnknownTypes.get(0).getModuleType().getId());
+                                              ModuleType.get(modulesWithUnknownTypes.get(0)).getId());
             }
             else {
               StringBuilder modulesBuilder = new StringBuilder();
               for (final Module module : modulesWithUnknownTypes) {
                 modulesBuilder.append("<br>\"");
-                modulesBuilder.append(module.getName()).append("\" (type '").append(module.getModuleType().getId()).append("')");
+                modulesBuilder.append(module.getName()).append("\" (type '").append(ModuleType.get(module).getId()).append("')");
               }
               modulesBuilder.append("<br>");
               message = ProjectBundle.message("module.unknown.type.multiple.error", modulesBuilder.toString());
@@ -684,7 +684,7 @@ public class ModuleManagerImpl extends ModuleManager implements ProjectComponent
       ModuleImpl module = getModuleByFilePath(filePath);
       if (module == null) {
         module = new ModuleImpl(filePath, myProject);
-        module.setModuleType(moduleType);
+        module.setOption(Module.ELEMENT_TYPE, moduleType.getId());
         if (options != null) {
           for ( Map.Entry<String,String> option : options.entrySet()) {
             module.setOption(option.getKey(),option.getValue());
index e26799d7fc6769e2193a3821723883536679b00f..279fa8c76a0cc6f59061f26d1ea37754600f61f9 100644 (file)
@@ -23,6 +23,7 @@
 package com.intellij.openapi.roots.ui.configuration;
 
 import com.intellij.openapi.module.Module;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.project.Project;
 import com.intellij.ide.util.ChooseElementsDialog;
 import org.jetbrains.annotations.Nullable;
@@ -50,7 +51,7 @@ public class ChooseModulesDialog extends ChooseElementsDialog<Module> {
   }
 
   protected Icon getItemIcon(final Module item) {
-    return item.getModuleType().getNodeIcon(false);
+    return ModuleType.get(item).getNodeIcon(false);
   }
 
   protected String getItemText(final Module item) {
index 64a0aa6e69eaf02c46101e08674098fc804cf9c4..36d6b70a1840104b9c5dae5732b09b5a06b7db20 100644 (file)
@@ -18,6 +18,7 @@ package com.intellij.openapi.roots.ui.configuration;
 import com.intellij.ide.ui.ListCellRendererWrapper;
 import com.intellij.openapi.module.Module;
 import com.intellij.openapi.module.ModuleManager;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.project.Project;
 import com.intellij.openapi.ui.ComboBox;
 import com.intellij.ui.SortedComboBoxModel;
@@ -45,7 +46,7 @@ public class ModulesCombobox extends ComboBox {
       public void customize(JList list, Module value, int index, boolean selected, boolean hasFocus) {
         if (value != null) {
           setText(value.getName());
-          setIcon(value.getModuleType().getNodeIcon(false));
+          setIcon(ModuleType.get(value).getNodeIcon(false));
         }
         else {
           setText("[none]");
index 8965746c2ecd8b5ada21dae2e047703c87f4842e..00fb025f7cd2a818351d8285b99cffb44a67ff00 100644 (file)
@@ -17,6 +17,7 @@
 package com.intellij.openapi.vcs.changes.ui;
 
 import com.intellij.openapi.module.Module;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.vcs.FilePath;
 import com.intellij.openapi.vcs.FilePathImpl;
 import com.intellij.openapi.vfs.VirtualFile;
@@ -37,7 +38,7 @@ public class ChangesBrowserModuleNode extends ChangesBrowserNode<Module> {
 
     renderer.append(module.isDisposed() ? "" : module.getName(), SimpleTextAttributes.REGULAR_ATTRIBUTES);
     appendCount(renderer);
-    renderer.setIcon(module.getModuleType().getNodeIcon(expanded));
+    renderer.setIcon(ModuleType.get(module).getNodeIcon(expanded));
   }
 
   @Override
index cef04e9d092a4f5794765d6e663d38f38149c69f..1db1b4d5d04ec3767acbb3a958ec972e2f810a9c 100644 (file)
@@ -18,6 +18,7 @@ package com.intellij.packageDependencies.ui;
 
 import com.intellij.analysis.AnalysisScopeBundle;
 import com.intellij.openapi.module.Module;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.roots.ui.configuration.ProjectSettingsService;
 import com.intellij.openapi.util.Comparing;
 import com.intellij.pom.NavigatableWithText;
@@ -59,11 +60,11 @@ public class ModuleNode extends PackageDependenciesNode implements NavigatableWi
   }
 
   public Icon getOpenIcon() {
-    return myModule == null ? null : myModule.getModuleType().getNodeIcon(true);
+    return myModule == null ? null : ModuleType.get(myModule).getNodeIcon(true);
   }
 
   public Icon getClosedIcon() {
-    return myModule == null ? null : myModule.getModuleType().getNodeIcon(false);
+    return myModule == null ? null : ModuleType.get(myModule).getNodeIcon(false);
   }
 
   public String toString() {
index fbea5193613eab5bd61068e74533729713e586ef..02bcb475c29c71ee77d8860f567aa50f164f5091 100644 (file)
@@ -14,6 +14,7 @@ import com.intellij.openapi.application.Application;
 import com.intellij.openapi.application.ApplicationManager;
 import com.intellij.openapi.module.Module;
 import com.intellij.openapi.module.ModuleManager;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.project.Project;
 import com.intellij.openapi.project.ProjectManager;
 import com.intellij.openapi.roots.LibraryOrderEntry;
@@ -271,8 +272,8 @@ public abstract class ChooseLibrariesDialogBase extends DialogWrapper {
     protected ModuleDescriptor(final Project project, final NodeDescriptor parentDescriptor, final Module element) {
       super(project, parentDescriptor, element);
       final PresentationData templatePresentation = getTemplatePresentation();
-      templatePresentation.setClosedIcon(element.getModuleType().getNodeIcon(false));
-      templatePresentation.setOpenIcon(element.getModuleType().getNodeIcon(true));
+      templatePresentation.setClosedIcon(ModuleType.get(element).getNodeIcon(false));
+      templatePresentation.setOpenIcon(ModuleType.get(element).getNodeIcon(true));
       templatePresentation.addText(notEmpty(element.getName()), SimpleTextAttributes.REGULAR_ATTRIBUTES);
     }
 
index c900ec975d69ee5f3e8a03a64c45b4cefe987569..c0cee8e54384330ae458e1bf8cdf0519213c0ae5 100644 (file)
@@ -4,7 +4,6 @@
 package com.intellij.mock;
 
 import com.intellij.openapi.module.Module;
-import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.project.Project;
 import com.intellij.openapi.vfs.VirtualFile;
 import com.intellij.psi.search.GlobalSearchScope;
@@ -58,12 +57,6 @@ public class MockModule extends MockComponentManager implements Module {
   }
 
   @Override
-  @NotNull
-  public ModuleType getModuleType() {
-    throw new UnsupportedOperationException("Method getModuleType is not yet implemented in " + getClass().getName());
-  }
-
-  @Override
   public GlobalSearchScope getModuleWithDependenciesAndLibrariesScope(final boolean includeTests) {
     return new MockGlobalSearchScope();
 
index 0978ab0e03bbfb04299ea02d7e12fc5c627c4a39..d57d36db645e598c65600cf3d2683abd1a22e336 100644 (file)
@@ -20,6 +20,7 @@ import com.intellij.openapi.actionSystem.DataSink;
 import com.intellij.openapi.actionSystem.LangDataKeys;
 import com.intellij.openapi.actionSystem.TypeSafeDataProvider;
 import com.intellij.openapi.module.Module;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.roots.OrderEntry;
 import com.intellij.openapi.util.IconLoader;
 import com.intellij.openapi.vcs.FileStatus;
@@ -137,7 +138,7 @@ public class ModuleGroupingRule implements UsageGroupingRule {
     }
 
     public Icon getIcon(boolean isOpen) {
-      return myModule.getModuleType().getNodeIcon(isOpen);
+      return ModuleType.get(myModule).getNodeIcon(isOpen);
     }
 
     @NotNull
index ccb5f9cf58a796568dc6f4742cef6a1d1cd42eea..2244913de37e14d379a2865a5923d33ed45daa9d 100644 (file)
@@ -20,6 +20,7 @@ import com.intellij.ide.ui.ListCellRendererWrapper;
 import com.intellij.ide.util.PropertiesComponent;
 import com.intellij.ide.wizard.CommitStepException;
 import com.intellij.openapi.module.Module;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.ui.CollectionComboBoxModel;
 import org.jetbrains.android.facet.AndroidFacet;
 import org.jetbrains.android.util.AndroidBundle;
@@ -62,7 +63,7 @@ class ChooseModuleStep extends ExportSignedPackageWizardStep {
       public void customize(JList list, AndroidFacet value, int index, boolean selected, boolean hasFocus) {
         final Module module = value.getModule();
         setText(module.getName());
-        setIcon(module.getModuleType().getNodeIcon(false));
+        setIcon(ModuleType.get(module).getNodeIcon(false));
       }
     });
     myModuleCombo.addActionListener(new ActionListener() {
index 0025a08aa9a28a41710324aa9b23efeafb68b51e..98b77903d7bed4ae67f7df40f7702e08ead19fa2 100644 (file)
@@ -16,6 +16,7 @@
 
 package org.jetbrains.android.newProject;
 
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.roots.ui.configuration.ModuleConfigurationEditorProvider;
 import com.intellij.openapi.roots.ui.configuration.ModuleConfigurationState;
 import com.intellij.openapi.roots.ui.configuration.DefaultModuleConfigurationEditorFactory;
@@ -35,7 +36,7 @@ import java.util.ArrayList;
 public class AndroidModuleConfigurationEditorProvider implements ModuleConfigurationEditorProvider {
   public ModuleConfigurationEditor[] createEditors(ModuleConfigurationState state) {
     final Module module = state.getRootModel().getModule();
-    if (module.getModuleType() != AndroidModuleType.getInstance()) {
+    if (ModuleType.get(module) != AndroidModuleType.getInstance()) {
       return ModuleConfigurationEditor.EMPTY;
     }
 
index 44b8c5f15bde7950fdf37670a17afbed7b7f5deb..3c7dc4cb8f6edb759b42c81fb50960c71af0960a 100644 (file)
@@ -18,6 +18,7 @@ package org.jetbrains.android.newProject;
 import com.intellij.ide.ui.ListCellRendererWrapper;
 import com.intellij.openapi.module.Module;
 import com.intellij.openapi.module.ModuleManager;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.project.Project;
 import org.jetbrains.android.facet.AndroidFacet;
 import org.jetbrains.annotations.NotNull;
@@ -37,7 +38,7 @@ public class AndroidModulesComboBox extends JComboBox {
         if (value instanceof Module) {
           final Module module = (Module)value;
           setText(module.getName());
-          setIcon(module.getModuleType().getNodeIcon(false));
+          setIcon(ModuleType.get(module).getNodeIcon(false));
         }
         else {
           setText("<html><font color='red'>[none]</font></html>");
index 24e066ee5014f5197448cfc36628b5184d2c408e..db5e55e00c3866cf26035a30a0ba572dfa9ce0fe 100644 (file)
@@ -20,6 +20,7 @@ import com.intellij.ide.actions.CreateElementActionBase;
 import com.intellij.openapi.actionSystem.*;
 import com.intellij.openapi.module.Module;
 import com.intellij.openapi.module.ModuleManager;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.project.Project;
 import com.intellij.openapi.roots.OrderEntry;
 import com.intellij.openapi.roots.ProjectFileIndex;
@@ -77,7 +78,7 @@ public abstract class GeneratePluginClassAction extends CreateElementActionBase
     final Module module = getModule(directory);
 
     if (module != null) {
-      if (module.getModuleType() == PluginModuleType.getInstance()) {
+      if (ModuleType.get(module) == PluginModuleType.getInstance()) {
         addPluginModule(module);
       } else {
         final List<Module> candidateModules = PluginModuleType.getCandidateModules(module);
index 7064ce720196434ea6a444e7e2fdce9b135e86b7..b8a35d377a96100bf26e9c89b0fd55c85518872f 100644 (file)
@@ -18,6 +18,7 @@ package org.jetbrains.idea.devkit.build;
 
 import com.intellij.openapi.compiler.make.BuildParticipantProvider;
 import com.intellij.openapi.module.Module;
+import com.intellij.openapi.module.ModuleType;
 import org.jetbrains.idea.devkit.module.PluginModuleType;
 
 import java.util.Collection;
@@ -28,7 +29,7 @@ import java.util.Collections;
  */
 public class PluginBuildParticipantProvider extends BuildParticipantProvider {
   public Collection<PluginBuildParticipant> getParticipants(final Module module) {
-    if (module.getModuleType() != PluginModuleType.getInstance()) {
+    if (ModuleType.get(module) != PluginModuleType.getInstance()) {
       return Collections.emptyList();
     }
 
index c173fdc50fcc036c5b26e3f84c3831d97acd05e9..157d31cd0cfaa587168c5eae00307c7949482525 100644 (file)
@@ -18,6 +18,7 @@ package org.jetbrains.idea.devkit.build;
 import com.intellij.openapi.application.ApplicationManager;
 import com.intellij.openapi.module.Module;
 import com.intellij.openapi.module.ModuleManager;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.module.StdModuleTypes;
 import com.intellij.openapi.projectRoots.Sdk;
 import com.intellij.openapi.roots.*;
@@ -63,7 +64,7 @@ public class PluginBuildUtil {
     productionRuntimeDependencies(module).forEachModule(new Processor<Module>() {
       @Override
       public boolean process(Module dep) {
-        if (dep.getModuleType() == StdModuleTypes.JAVA && !modules.contains(dep)) {
+        if (ModuleType.get(dep) == StdModuleTypes.JAVA && !modules.contains(dep)) {
           modules.add(dep);
           getDependencies(dep, modules);
         }
index b9cf49fa938df5e0ea3f93ca2229882c25f37f71..da57a7d1fbd3812444a6ac7a4a0b9df17fabb2e8 100644 (file)
@@ -20,6 +20,7 @@ import com.intellij.openapi.actionSystem.LangDataKeys;
 import com.intellij.openapi.actionSystem.PlatformDataKeys;
 import com.intellij.openapi.module.Module;
 import com.intellij.openapi.module.ModuleManager;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.project.Project;
 import org.jetbrains.idea.devkit.DevKitBundle;
 import org.jetbrains.idea.devkit.module.PluginModuleType;
@@ -36,7 +37,7 @@ public class PrepareAllToDeployAction extends PrepareToDeployAction {
 
     List<Module> pluginModules = new ArrayList<Module>();
     for (Module aModule : ModuleManager.getInstance(project).getModules()) {
-      if (aModule.getModuleType() instanceof PluginModuleType) {
+      if (ModuleType.get(aModule) instanceof PluginModuleType) {
         pluginModules.add(aModule);
       }
     }
@@ -55,7 +56,7 @@ public class PrepareAllToDeployAction extends PrepareToDeployAction {
     final Project project = e.getData(PlatformDataKeys.PROJECT);
     if (project != null) {
       for (Module aModule : (ModuleManager.getInstance(project).getModules())) {
-        if (aModule.getModuleType() instanceof PluginModuleType) {
+        if (ModuleType.get(aModule) instanceof PluginModuleType) {
           moduleCount++;
         }
       }
@@ -66,7 +67,7 @@ public class PrepareAllToDeployAction extends PrepareToDeployAction {
     }
     else if (moduleCount > 0) {
       final Module module = e.getData(LangDataKeys.MODULE);
-      if (module == null || !(module.getModuleType() instanceof PluginModuleType)) {
+      if (module == null || !(ModuleType.get(module) instanceof PluginModuleType)) {
         enabled = true;
       }
     }
index c141f3723d4d6fd041cf23648abfa8a8c1413043..9739ef0dbc74fd287e3eb6c51ac5a8b9c434620d 100644 (file)
@@ -25,6 +25,7 @@ import com.intellij.openapi.compiler.CompilerManager;
 import com.intellij.openapi.compiler.make.ManifestBuilder;
 import com.intellij.openapi.fileTypes.FileTypeManager;
 import com.intellij.openapi.module.Module;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.progress.ProgressIndicator;
 import com.intellij.openapi.progress.ProgressManager;
 import com.intellij.openapi.project.Project;
@@ -67,7 +68,7 @@ public class PrepareToDeployAction extends AnAction {
 
   public void actionPerformed(final AnActionEvent e) {
     final Module module = LangDataKeys.MODULE.getData(e.getDataContext());
-    if (module != null && module.getModuleType() instanceof PluginModuleType) {
+    if (module != null && ModuleType.get(module) instanceof PluginModuleType) {
       doPrepare(Arrays.asList(module), LangDataKeys.PROJECT.getData(e.getDataContext()));
     }
   }
@@ -343,7 +344,7 @@ public class PrepareToDeployAction extends AnAction {
 
   public void update(AnActionEvent e) {
     final Module module = LangDataKeys.MODULE.getData(e.getDataContext());
-    boolean enabled = module != null && module.getModuleType() instanceof PluginModuleType;
+    boolean enabled = module != null && ModuleType.get(module) instanceof PluginModuleType;
     e.getPresentation().setVisible(enabled);
     e.getPresentation().setEnabled(enabled);
     if (enabled) {
index c2b5d0a5cf6f09f9c5b2b9a4fc9be748e70b99cc..2e91b570e8bba34c7f51d6f69e3729768412a575 100644 (file)
@@ -17,6 +17,7 @@ package org.jetbrains.idea.devkit.module;
 
 import com.intellij.openapi.module.Module;
 import com.intellij.openapi.module.ModuleConfigurationEditor;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.roots.ui.configuration.DefaultModuleConfigurationEditorFactory;
 import com.intellij.openapi.roots.ui.configuration.ModuleConfigurationEditorProvider;
 import com.intellij.openapi.roots.ui.configuration.ModuleConfigurationState;
@@ -29,7 +30,7 @@ public class PluginModuleEditorsProvider implements ModuleConfigurationEditorPro
 
   public ModuleConfigurationEditor[] createEditors(ModuleConfigurationState state) {
     final Module module = state.getRootModel().getModule();
-    if (module.getModuleType() != PluginModuleType.getInstance()) return ModuleConfigurationEditor.EMPTY;
+    if (ModuleType.get(module) != PluginModuleType.getInstance()) return ModuleConfigurationEditor.EMPTY;
 
     final DefaultModuleConfigurationEditorFactory editorFactory = DefaultModuleConfigurationEditorFactory.getInstance();
     List<ModuleConfigurationEditor> editors = new ArrayList<ModuleConfigurationEditor>();
index 315295f71bfaa047933cc91067e39760ae52fe4a..b1637ec0e643fedeb7ee18f79a54e46162207e3a 100644 (file)
@@ -60,7 +60,7 @@ public class PluginModuleType extends ModuleType<PluginModuleBuilder> {
   }
 
   public static boolean isOfType(Module module) {
-    return module.getModuleType() instanceof PluginModuleType;
+    return get(module) instanceof PluginModuleType;
   }
 
   public ModuleWizardStep[] createWizardSteps(final WizardContext wizardContext,
@@ -107,7 +107,7 @@ public class PluginModuleType extends ModuleType<PluginModuleBuilder> {
   @Nullable
   public static XmlFile getPluginXml(Module module, boolean initialize) {
     if (module == null) return null;
-    if (!(module.getModuleType() instanceof PluginModuleType)) return null;
+    if (!(get(module) instanceof PluginModuleType)) return null;
 
     final PluginBuildConfiguration buildConfiguration = PluginBuildConfiguration.getInstance(module);
     if (buildConfiguration == null) return null;
@@ -137,7 +137,7 @@ public class PluginModuleType extends ModuleType<PluginModuleBuilder> {
     final List<Module> candidates = new ArrayList<Module>(modules.length);
     final Set<Module> deps = new HashSet<Module>(modules.length);
     for (Module m : modules) {
-      if (m.getModuleType() == getInstance()) {
+      if (get(m) == getInstance()) {
         deps.clear();
         PluginBuildUtil.getDependencies(m, deps);
 
index 301459f68afcee67f79dfc2b58e3da019d71f7d4..dc0da164deb52c74117b452b60b9bb79a3f64106 100644 (file)
@@ -25,6 +25,7 @@ import com.intellij.execution.runners.ProgramRunner;
 import com.intellij.openapi.application.ApplicationManager;
 import com.intellij.openapi.module.Module;
 import com.intellij.openapi.module.ModuleManager;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.options.SettingsEditor;
 import com.intellij.openapi.project.Project;
 import com.intellij.openapi.projectRoots.JavaSdkType;
@@ -207,7 +208,7 @@ public class PluginRunConfiguration extends RunConfigurationBase implements Modu
     List<Module> modules = new ArrayList<Module>();
     Module[] allModules = ModuleManager.getInstance(getProject()).getModules();
     for (Module module : allModules) {
-      if (module.getModuleType() == PluginModuleType.getInstance()) {
+      if (ModuleType.get(module) == PluginModuleType.getInstance()) {
         modules.add(module);
       }
     }
index ae1da5511c7dbe8674e23c3be3944db8bf76e41f..e583397b813d00c41585b72b12a2ca12bc9d87f3 100644 (file)
@@ -19,6 +19,7 @@ import com.intellij.execution.configurations.LogFileOptions;
 import com.intellij.ide.ui.ListCellRendererWrapper;
 import com.intellij.openapi.diagnostic.Logger;
 import com.intellij.openapi.module.Module;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.options.ConfigurationException;
 import com.intellij.openapi.options.SettingsEditor;
 import com.intellij.openapi.projectRoots.Sdk;
@@ -126,7 +127,7 @@ public class PluginRunConfigurationEditor extends SettingsEditor<PluginRunConfig
       public void customize(JList list, final Module module, int index, boolean selected, boolean hasFocus) {
         if (module != null) {
           setText(module.getName());
-          setIcon(module.getModuleType().getNodeIcon(true));
+          setIcon(ModuleType.get(module).getNodeIcon(true));
         }
       }
     });
index 308845f152e39234147ae9a9a840158a1bac49cd..d74072b1ccd087864ac7ed72821bf705630d6cf2 100644 (file)
@@ -16,6 +16,7 @@
 package org.jetbrains.idea.devkit.util;
 
 import com.intellij.openapi.module.Module;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.project.Project;
 import com.intellij.openapi.ui.DialogWrapper;
 import com.intellij.openapi.ui.Messages;
@@ -177,7 +178,7 @@ public class ChooseModulesDialog extends DialogWrapper {
       myCellRenderer = new ColoredListCellRenderer() {
         protected void customizeCellRenderer(JList list, Object value, int index, boolean selected, boolean hasFocus) {
           final Module module = ((Module)value);
-          setIcon(module.getModuleType().getNodeIcon(false));
+          setIcon(ModuleType.get(module).getNodeIcon(false));
           append(module.getName(), SimpleTextAttributes.REGULAR_ATTRIBUTES);
 
           final XmlFile pluginXml = PluginModuleType.getPluginXml(module);
index 006282815f20f304fe4ea3c522055520f387340e..20644e9d1f3b6d306d56997defad0060ced7c409 100644 (file)
@@ -24,6 +24,7 @@ import com.intellij.openapi.application.ApplicationManager;
 import com.intellij.openapi.diagnostic.Logger;
 import com.intellij.openapi.module.JavaModuleType;
 import com.intellij.openapi.module.Module;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.util.JDOMUtil;
 import com.intellij.openapi.util.io.FileUtil;
 import com.intellij.openapi.vfs.LocalFileSystem;
@@ -45,7 +46,7 @@ public class DotProjectFileHelper {
   public static void saveDotProjectFile(Module module, String storageRoot) throws IOException {
     try {
       final Document doc;
-      if (module.getModuleType() instanceof JavaModuleType) {
+      if (ModuleType.get(module) instanceof JavaModuleType) {
         doc = JDOMUtil.loadDocument(DotProjectFileHelper.class.getResource("template.project.xml"));
       } else {
         doc = JDOMUtil.loadDocument(DotProjectFileHelper.class.getResource("template.empty.project.xml"));
index f3f7f192d540a2e35b04467b02cdca08385f6ded..d34154bd29def0f3c0d9c7565ce3ebc841bae882 100644 (file)
@@ -22,6 +22,7 @@ import com.intellij.openapi.compiler.CompileContext;
 import com.intellij.openapi.compiler.CompileScope;
 import com.intellij.openapi.diagnostic.Logger;
 import com.intellij.openapi.module.Module;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.progress.ProcessCanceledException;
 import com.intellij.openapi.project.Project;
 import com.intellij.openapi.projectRoots.JavaSdkType;
@@ -212,7 +213,7 @@ public class GroovyCompiler extends GroovyCompilerBase {
 
     Set<Module> nojdkModules = new HashSet<Module>();
     for (Module module : modules) {
-      if(!GroovyUtils.isAcceptableModuleType(module.getModuleType())) continue;
+      if(!GroovyUtils.isAcceptableModuleType(ModuleType.get(module))) continue;
       final Sdk sdk = ModuleRootManager.getInstance(module).getSdk();
       if (sdk == null || !(sdk.getSdkType() instanceof JavaSdkType)) {
         nojdkModules.add(module);
index 6e8982a2003c3b1cd6b1cf243881f3b881c481a3..924d785d4a6fc590b95892b4e80040984efcf1a2 100644 (file)
@@ -36,6 +36,7 @@ import com.intellij.openapi.diagnostic.Logger;
 import com.intellij.openapi.fileTypes.FileType;
 import com.intellij.openapi.fileTypes.StdFileTypes;
 import com.intellij.openapi.module.Module;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.progress.ProgressIndicator;
 import com.intellij.openapi.progress.ProgressManager;
 import com.intellij.openapi.project.Project;
@@ -383,7 +384,7 @@ public abstract class GroovyCompilerBase implements TranslatingCompiler {
       final CompilerConfiguration configuration = CompilerConfiguration.getInstance(myProject);
       final PsiManager psiManager = PsiManager.getInstance(myProject);
 
-      if (GroovyUtils.isAcceptableModuleType(module.getModuleType())) {
+      if (GroovyUtils.isAcceptableModuleType(ModuleType.get(module))) {
         for (final VirtualFile file : moduleFiles) {
           if (shouldCompile(file, configuration, psiManager)) {
             (index.isInTestSourceContent(file) ? toCompileTests : toCompile).add(file);
index a483b060ccfd185bb7271fb9ffd564d9d1629701..8cea320dc95e59dc2ce726a2ceb50ff3d4dbdb76 100644 (file)
@@ -17,6 +17,7 @@ package org.jetbrains.plugins.groovy.mvc.util;
 
 import com.intellij.ide.ui.ListCellRendererWrapper;
 import com.intellij.openapi.module.Module;
+import com.intellij.openapi.module.ModuleType;
 
 import javax.swing.*;
 
@@ -31,7 +32,7 @@ public class ModuleCellRenderer extends ListCellRendererWrapper<Module> {
   @Override
   public void customize(JList list, Module module, int index, boolean selected, boolean hasFocus) {
     if (module != null) {
-      setIcon(module.getModuleType().getNodeIcon(false));
+      setIcon(ModuleType.get(module).getNodeIcon(false));
       setText(module.getName());
     }
   }
index a46e50b107cf86a1860f47382a9f81661a30e6bf..7eb93093acc3619e76748256b093002c7c2d6b93 100644 (file)
@@ -21,6 +21,7 @@ import com.intellij.ide.ui.ListCellRendererWrapper;
 import com.intellij.ide.util.BrowseFilesListener;
 import com.intellij.openapi.fileChooser.FileChooserDescriptor;
 import com.intellij.openapi.module.Module;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.options.ConfigurationException;
 import com.intellij.openapi.options.SettingsEditor;
 import com.intellij.openapi.roots.ui.configuration.ModulesAlphaComparator;
@@ -119,7 +120,7 @@ public class GroovyRunConfigurationEditor extends SettingsEditor<GroovyScriptRun
       @Override
       public void customize(JList list, Module module, int index, boolean selected, boolean hasFocus) {
         if (module != null) {
-          setIcon(module.getModuleType().getNodeIcon(false));
+          setIcon(ModuleType.get(module).getNodeIcon(false));
           setText(module.getName());
         }
       }
index 8c7fca41d4ab73a6f9e25f8a88235fb13ad26820..8b2eb1998594d89165fc450311494a6c6dc47b7f 100644 (file)
@@ -63,7 +63,7 @@ public abstract class GroovyUtils {
 
   public static boolean isSuitableModule(Module module) {
     if (module == null) return false;
-    return isAcceptableModuleType(module.getModuleType());
+    return isAcceptableModuleType(ModuleType.get(module));
   }
 
   public static boolean isAcceptableModuleType(ModuleType type) {
index cc2e0f6c68dad6779af87bd8c5844e095466c3d3..32c3051362cfe0572f2c3538dbc010d0912b07ff 100644 (file)
@@ -17,10 +17,7 @@ package org.jetbrains.idea.maven.importing;
 
 import com.intellij.compiler.impl.javaCompiler.javac.JavacSettings;
 import com.intellij.openapi.application.ApplicationManager;
-import com.intellij.openapi.module.JavaModuleType;
-import com.intellij.openapi.module.ModifiableModuleModel;
-import com.intellij.openapi.module.Module;
-import com.intellij.openapi.module.StdModuleTypes;
+import com.intellij.openapi.module.*;
 import com.intellij.openapi.project.Project;
 import com.intellij.openapi.roots.LibraryOrderEntry;
 import com.intellij.openapi.roots.ModifiableRootModel;
@@ -218,7 +215,7 @@ public class MavenProjectImporter {
       Module module = myFileToModuleMapping.get(each.getFile());
       if (module == null) continue;
 
-      if (shouldCreateModuleFor(each) && !(module.getModuleType() instanceof JavaModuleType)) {
+      if (shouldCreateModuleFor(each) && !(ModuleType.get(module) instanceof JavaModuleType)) {
         incompatible.add(Pair.create(each, module));
       }
     }
@@ -230,7 +227,7 @@ public class MavenProjectImporter {
         public String fun(Pair<MavenProject, Module> each) {
           MavenProject project = each.first;
           Module module = each.second;
-          return module.getModuleType().getName() +
+          return ModuleType.get(module).getName() +
                  " '" +
                  module.getName() +
                  "' for Maven project '" +
index a90e2a5cb26dcc6ed3f6a91bb04db442d96e0227..7cf3a0e245bf63b9bb62041e7dfdfdcebe8e47a3 100644 (file)
@@ -25,6 +25,7 @@ import com.intellij.openapi.fileTypes.*;
 import com.intellij.openapi.fileTypes.impl.FileTypeRenderer;
 import com.intellij.openapi.module.Module;
 import com.intellij.openapi.module.ModuleManager;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.options.ConfigurationException;
 import com.intellij.openapi.options.SettingsEditor;
 import com.intellij.openapi.project.Project;
@@ -277,7 +278,7 @@ class XsltRunSettingsEditor extends SettingsEditor<XsltRunConfiguration> {
                       return module.getName();
                     }
                   }));
-                  setIcon(module.getModuleType().getNodeIcon(true));
+                  setIcon(ModuleType.get(module).getNodeIcon(true));
                 } else if (value instanceof String) {
                   setText((String)value);
                 }
index ab813d6e8d35a560962aac12c3c91320d218d9ac..2d79e7571fade35a458cbd17cef2eb3e69ef0868 100644 (file)
@@ -21,6 +21,7 @@ import com.intellij.openapi.Disposable;
 import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
 import com.intellij.openapi.module.Module;
 import com.intellij.openapi.module.ModuleManager;
+import com.intellij.openapi.module.ModuleType;
 import com.intellij.openapi.project.Project;
 import com.intellij.openapi.ui.ComboBox;
 import com.intellij.openapi.ui.TextFieldWithBrowseButton;
@@ -95,7 +96,7 @@ public class ScopePanel extends JPanel implements Disposable{
           @Override
           public void customize(JList list, Module m, int index, boolean selected, boolean hasFocus) {
             if (m != null) {
-              setIcon(m.getModuleType().getNodeIcon(true));
+              setIcon(ModuleType.get(m).getNodeIcon(true));
               setText(m.getName());
             }
           }