From 15843d4bce37563a8b816515862828c1286bbfb6 Mon Sep 17 00:00:00 2001 From: Alexander Zolotov Date: Tue, 28 Oct 2014 16:56:19 +0300 Subject: [PATCH] Emmet: replace hardcoded xml zen generator with extension --- .../platform-resources/src/META-INF/XmlPlugin.xml | 1 + .../codeInsight/template/emmet/ZenCodingTemplate.java | 2 +- .../template/emmet/generators/ZenCodingGenerator.java | 11 +++-------- 3 files changed, 5 insertions(+), 9 deletions(-) diff --git a/platform/platform-resources/src/META-INF/XmlPlugin.xml b/platform/platform-resources/src/META-INF/XmlPlugin.xml index 00f42a06cd93..b2c30eb04746 100644 --- a/platform/platform-resources/src/META-INF/XmlPlugin.xml +++ b/platform/platform-resources/src/META-INF/XmlPlugin.xml @@ -198,6 +198,7 @@ + diff --git a/xml/impl/src/com/intellij/codeInsight/template/emmet/ZenCodingTemplate.java b/xml/impl/src/com/intellij/codeInsight/template/emmet/ZenCodingTemplate.java index 433e7c680304..4b22ccf7e3db 100644 --- a/xml/impl/src/com/intellij/codeInsight/template/emmet/ZenCodingTemplate.java +++ b/xml/impl/src/com/intellij/codeInsight/template/emmet/ZenCodingTemplate.java @@ -132,7 +132,7 @@ public class ZenCodingTemplate extends CustomLiveTemplateBase { @Nullable private static ZenCodingGenerator findApplicableGenerator(ZenCodingNode node, PsiElement context, boolean wrapping) { ZenCodingGenerator defaultGenerator = null; - List generators = ZenCodingGenerator.getInstances(); + ZenCodingGenerator[] generators = ZenCodingGenerator.getInstances(); for (ZenCodingGenerator generator : generators) { if (defaultGenerator == null && generator.isMyContext(context, wrapping) && generator.isAppliedByDefault(context)) { defaultGenerator = generator; diff --git a/xml/impl/src/com/intellij/codeInsight/template/emmet/generators/ZenCodingGenerator.java b/xml/impl/src/com/intellij/codeInsight/template/emmet/generators/ZenCodingGenerator.java index 846eb867d844..fd3706df1036 100644 --- a/xml/impl/src/com/intellij/codeInsight/template/emmet/generators/ZenCodingGenerator.java +++ b/xml/impl/src/com/intellij/codeInsight/template/emmet/generators/ZenCodingGenerator.java @@ -30,8 +30,6 @@ import com.intellij.psi.PsiElement; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -import java.util.ArrayList; -import java.util.Collections; import java.util.List; @@ -39,7 +37,7 @@ import java.util.List; * @author Eugene.Kudelevsky */ public abstract class ZenCodingGenerator { - private static final ExtensionPointName EP_NAME = new ExtensionPointName("com.intellij.xml.zenCodingGenerator"); + public static final ExtensionPointName EP_NAME = new ExtensionPointName("com.intellij.xml.zenCodingGenerator"); public abstract TemplateImpl generateTemplate(@NotNull TemplateToken token, boolean hasChildren, @NotNull PsiElement context); @@ -59,11 +57,8 @@ public abstract class ZenCodingGenerator { public abstract boolean isEnabled(); - public static List getInstances() { - List generators = new ArrayList(); - Collections.addAll(generators, EP_NAME.getExtensions()); - generators.add(XmlZenCodingGeneratorImpl.INSTANCE); - return generators; + public static ZenCodingGenerator[] getInstances() { + return EP_NAME.getExtensions(); } @Nullable