From 030b13588c9a45eb4edc06db9c48177f3e88abbb Mon Sep 17 00:00:00 2001 From: "sergey.vasiliev" Date: Mon, 23 Nov 2009 17:40:37 +0300 Subject: [PATCH] virtual file namespace pattern --- .../src/com/intellij/patterns/VirtualFilePattern.java | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/platform/lang-api/src/com/intellij/patterns/VirtualFilePattern.java b/platform/lang-api/src/com/intellij/patterns/VirtualFilePattern.java index 5494c73ef9..a417c914bf 100644 --- a/platform/lang-api/src/com/intellij/patterns/VirtualFilePattern.java +++ b/platform/lang-api/src/com/intellij/patterns/VirtualFilePattern.java @@ -65,6 +65,24 @@ public class VirtualFilePattern extends TreeElementPattern namespacePattern) { + return with(new PatternCondition("xmlWithRootTagNamespace") { + public boolean accepts(@NotNull final VirtualFile virtualFile, final ProcessingContext context) { + try { + String rootTagNamespace = NanoXmlUtil.parseHeaderWithException(virtualFile).getRootTagNamespace(); + return rootTagNamespace != null && namespacePattern.getCondition().accepts(rootTagNamespace, context); + } + catch (IOException e) { + return false; + } + } + }); + } protected VirtualFile getParent(@NotNull final VirtualFile t) { return t.getParent(); -- 2.11.4.GIT