From e5e59400c0e0475679e90a88154ee1a7aa1de1eb Mon Sep 17 00:00:00 2001 From: Sergey Vasiliev Date: Tue, 11 Aug 2009 15:53:40 +0400 Subject: [PATCH] spring security roles support --- openapi/src/com/intellij/patterns/PsiJavaPatterns.java | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/openapi/src/com/intellij/patterns/PsiJavaPatterns.java b/openapi/src/com/intellij/patterns/PsiJavaPatterns.java index 92b620a04c..a654d9aa73 100644 --- a/openapi/src/com/intellij/patterns/PsiJavaPatterns.java +++ b/openapi/src/com/intellij/patterns/PsiJavaPatterns.java @@ -8,6 +8,7 @@ import com.intellij.psi.*; import com.intellij.psi.tree.IElementType; import com.intellij.util.ProcessingContext; import org.jetbrains.annotations.Nullable; +import org.jetbrains.annotations.NotNull; /** * @author peter @@ -38,6 +39,21 @@ public class PsiJavaPatterns extends StandardPatterns{ return literalExpression(null); } + public static PsiJavaElementPattern.Capture psiNewExpression(@NotNull final String fqn) { + return new PsiJavaElementPattern.Capture(new InitialPatternCondition(PsiNewExpression.class) { + public boolean accepts(@Nullable final Object o, final ProcessingContext context) { + if(o instanceof PsiNewExpression) { + PsiJavaCodeReferenceElement reference = ((PsiNewExpression)o).getClassOrAnonymousClassReference(); + if (reference != null) { + return fqn.equals(reference.getQualifiedName()); + } + } + return false; + } + }); + } + + public static PsiJavaElementPattern.Capture literalExpression(final ElementPattern value) { return new PsiJavaElementPattern.Capture(new InitialPatternCondition(PsiLiteralExpression.class) { public boolean accepts(@Nullable final Object o, final ProcessingContext context) { -- 2.11.4.GIT