summaryrefslogtreecommitdiff
path: root/plugins/devkit/src/dom/impl/ExtensionDomExtender.java
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/devkit/src/dom/impl/ExtensionDomExtender.java')
-rw-r--r--plugins/devkit/src/dom/impl/ExtensionDomExtender.java155
1 files changed, 76 insertions, 79 deletions
diff --git a/plugins/devkit/src/dom/impl/ExtensionDomExtender.java b/plugins/devkit/src/dom/impl/ExtensionDomExtender.java
index f5c83ccb66bc..538ee7e70243 100644
--- a/plugins/devkit/src/dom/impl/ExtensionDomExtender.java
+++ b/plugins/devkit/src/dom/impl/ExtensionDomExtender.java
@@ -15,7 +15,7 @@
*/
package org.jetbrains.idea.devkit.dom.impl;
-import com.intellij.ide.plugins.PluginManager;
+import com.intellij.ide.plugins.PluginManagerCore;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.util.text.StringUtil;
import com.intellij.openapi.vfs.VirtualFile;
@@ -50,57 +50,6 @@ import java.util.*;
public class ExtensionDomExtender extends DomExtender<Extensions> {
private static final PsiClassConverter CLASS_CONVERTER = new PluginPsiClassConverter();
private static final Converter LANGUAGE_CONVERTER = new LanguageResolvingConverter();
-
- private static class MyRequired implements Required {
- @Override
- public boolean value() {
- return true;
- }
-
- @Override
- public boolean nonEmpty() {
- return true;
- }
-
- @Override
- public boolean identifier() {
- return false;
- }
-
- @Override
- public Class<? extends Annotation> annotationType() {
- return Required.class;
- }
- }
-
- private static class MyExtendClass extends ExtendClassImpl {
- private final String myInterfaceName;
-
- private MyExtendClass(String interfaceName) {
- myInterfaceName = interfaceName;
- }
-
- @Override
- public boolean allowAbstract() {
- return false;
- }
-
- @Override
- public boolean allowInterface() {
- return false;
- }
-
- @Override
- public boolean allowEnum() {
- return false;
- }
-
- @Override
- public String value() {
- return myInterfaceName;
- }
- }
-
private static final DomExtender EXTENSION_EXTENDER = new DomExtender() {
public void registerExtensions(@NotNull final DomElement domElement, @NotNull final DomExtensionsRegistrar registrar) {
final ExtensionPoint extensionPoint = (ExtensionPoint)domElement.getChildDescription().getDomDeclaration();
@@ -127,31 +76,6 @@ public class ExtensionDomExtender extends DomExtender<Extensions> {
}
};
-
- public void registerExtensions(@NotNull final Extensions extensions, @NotNull final DomExtensionsRegistrar registrar) {
- final XmlElement xmlElement = extensions.getXmlElement();
- if (xmlElement == null) return;
-
- IdeaPlugin ideaPlugin = extensions.getParentOfType(IdeaPlugin.class, true);
-
- if (ideaPlugin == null) return;
-
- String epPrefix = extensions.getEpPrefix();
- for (IdeaPlugin plugin : getVisiblePlugins(ideaPlugin)) {
- final String pluginId = StringUtil.notNullize(plugin.getPluginId(), "com.intellij");
- for (ExtensionPoints points : plugin.getExtensionPoints()) {
- for (ExtensionPoint point : points.getExtensionPoints()) {
- registerExtensionPoint(registrar, point, epPrefix, pluginId);
- }
- }
- }
- }
-
- @Override
- public boolean supportsStubs() {
- return false;
- }
-
private static Set<IdeaPlugin> getVisiblePlugins(IdeaPlugin ideaPlugin) {
Set<IdeaPlugin> result = ContainerUtil.newHashSet();
MultiMap<String, IdeaPlugin> byId = getPluginMap(ideaPlugin.getManager().getProject());
@@ -385,11 +309,10 @@ public class ExtensionDomExtender extends DomExtender<Extensions> {
return PsiTypesUtil.getPsiClass(elementType);
}
-
public static Collection<String> getDependencies(IdeaPlugin ideaPlugin) {
Set<String> result = new HashSet<String>();
- result.add(PluginManager.CORE_PLUGIN_ID);
+ result.add(PluginManagerCore.CORE_PLUGIN_ID);
for (Dependency dependency : ideaPlugin.getDependencies()) {
ContainerUtil.addIfNotNull(dependency.getStringValue(), result);
@@ -422,10 +345,84 @@ public class ExtensionDomExtender extends DomExtender<Extensions> {
return result;
}
+ public void registerExtensions(@NotNull final Extensions extensions, @NotNull final DomExtensionsRegistrar registrar) {
+ final XmlElement xmlElement = extensions.getXmlElement();
+ if (xmlElement == null) return;
+
+ IdeaPlugin ideaPlugin = extensions.getParentOfType(IdeaPlugin.class, true);
+
+ if (ideaPlugin == null) return;
+
+ String epPrefix = extensions.getEpPrefix();
+ for (IdeaPlugin plugin : getVisiblePlugins(ideaPlugin)) {
+ final String pluginId = StringUtil.notNullize(plugin.getPluginId(), "com.intellij");
+ for (ExtensionPoints points : plugin.getExtensionPoints()) {
+ for (ExtensionPoint point : points.getExtensionPoints()) {
+ registerExtensionPoint(registrar, point, epPrefix, pluginId);
+ }
+ }
+ }
+ }
+
+ @Override
+ public boolean supportsStubs() {
+ return false;
+ }
+
interface SimpleTagValue extends DomElement {
@SuppressWarnings("UnusedDeclaration")
@TagValue
String getTagValue();
}
+ private static class MyRequired implements Required {
+ @Override
+ public boolean value() {
+ return true;
+ }
+
+ @Override
+ public boolean nonEmpty() {
+ return true;
+ }
+
+ @Override
+ public boolean identifier() {
+ return false;
+ }
+
+ @Override
+ public Class<? extends Annotation> annotationType() {
+ return Required.class;
+ }
+ }
+
+ private static class MyExtendClass extends ExtendClassImpl {
+ private final String myInterfaceName;
+
+ private MyExtendClass(String interfaceName) {
+ myInterfaceName = interfaceName;
+ }
+
+ @Override
+ public boolean allowAbstract() {
+ return false;
+ }
+
+ @Override
+ public boolean allowInterface() {
+ return false;
+ }
+
+ @Override
+ public boolean allowEnum() {
+ return false;
+ }
+
+ @Override
+ public String value() {
+ return myInterfaceName;
+ }
+ }
+
}