make jsp independent

This commit is contained in:
Alexey Kudravtsev
2013-08-20 12:23:59 +04:00
parent bb0ce80001
commit b35bd53371
22 changed files with 45 additions and 62 deletions
@@ -806,7 +806,7 @@ public class PostHighlightingPass extends TextEditorHighlightingPass {
DaemonCodeAnalyzerImpl codeAnalyzer = (DaemonCodeAnalyzerImpl)DaemonCodeAnalyzer.getInstance(myProject);
PsiFile file = PsiDocumentManager.getInstance(myProject).getPsiFile(myDocument);
// dont optimize out imports in JSP since it can be included in other JSP
if (file == null || !codeAnalyzer.isHighlightingAvailable(file) || !(file instanceof PsiJavaFile) || file instanceof JspFile) return false;
if (file == null || !codeAnalyzer.isHighlightingAvailable(file) || !(file instanceof PsiJavaFile) || file instanceof ServerPageFile) return false;
if (!codeAnalyzer.isErrorAnalyzingFinished(file)) return false;
boolean errors = containsErrorsPreventingOptimize(file);
@@ -47,7 +47,6 @@ import com.intellij.openapi.util.TextRange;
import com.intellij.openapi.util.io.FileUtil;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.psi.*;
import com.intellij.psi.impl.source.jsp.jspJava.JspClass;
import com.intellij.psi.search.GlobalSearchScope;
import com.intellij.psi.util.*;
import com.intellij.refactoring.util.RefactoringChangeUtil;
@@ -893,7 +892,7 @@ public class HighlightClassUtil {
PsiClass outerClass = aClass.getContainingClass();
if (outerClass == null) return null;
if (outerClass instanceof JspClass || hasEnclosingInstanceInScope(outerClass, placeToSearchEnclosingFrom, true, false)) return null;
if (outerClass instanceof PsiSyntheticClass || hasEnclosingInstanceInScope(outerClass, placeToSearchEnclosingFrom, true, false)) return null;
return reportIllegalEnclosingUsage(placeToSearchEnclosingFrom, aClass, outerClass, element);
}
@@ -26,14 +26,12 @@ import com.intellij.codeInsight.daemon.impl.HighlightInfo;
import com.intellij.codeInsight.daemon.impl.HighlightInfoType;
import com.intellij.lang.ASTNode;
import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.editor.colors.EditorColorsScheme;
import com.intellij.openapi.editor.colors.TextAttributesKey;
import com.intellij.openapi.editor.colors.TextAttributesScheme;
import com.intellij.openapi.editor.markup.TextAttributes;
import com.intellij.openapi.util.Pair;
import com.intellij.openapi.util.TextRange;
import com.intellij.psi.*;
import com.intellij.psi.impl.source.jsp.jspJava.JspHolderMethod;
import com.intellij.psi.impl.source.tree.ElementType;
import com.intellij.psi.impl.source.tree.TreeUtil;
import com.intellij.psi.search.scope.packageSet.NamedScope;
@@ -252,7 +250,7 @@ public class HighlightNamesUtil {
}
public static TextRange getMethodDeclarationTextRange(@NotNull PsiMethod method) {
if (method instanceof JspHolderMethod) return TextRange.EMPTY_RANGE;
if (method instanceof SyntheticElement) return TextRange.EMPTY_RANGE;
int start = stripAnnotationsFromModifierList(method.getModifierList());
final TextRange throwsRange = method.getThrowsList().getTextRange();
LOG.assertTrue(throwsRange != null, method);
@@ -38,7 +38,6 @@ import com.intellij.psi.*;
import com.intellij.psi.codeStyle.JavaCodeStyleManager;
import com.intellij.psi.codeStyle.SuggestedNameInfo;
import com.intellij.psi.codeStyle.VariableKind;
import com.intellij.psi.impl.source.jsp.jspJava.JspClass;
import com.intellij.psi.search.LocalSearchScope;
import com.intellij.psi.search.searches.ReferencesSearch;
import com.intellij.psi.util.PsiTreeUtil;
@@ -91,7 +90,7 @@ public class CreateConstructorParameterFromFieldFix implements IntentionAction {
&& field.getManager().isInProject(field)
&& !field.hasModifierProperty(PsiModifier.STATIC)
&& containingClass != null
&& !(containingClass instanceof JspClass)
&& !(containingClass instanceof PsiSyntheticClass)
&& containingClass.getName() != null;
}
@@ -22,7 +22,6 @@ import com.intellij.openapi.util.TextRange;
import com.intellij.psi.*;
import com.intellij.psi.codeStyle.CodeStyleSettings;
import com.intellij.psi.codeStyle.CodeStyleSettingsManager;
import com.intellij.psi.impl.source.jsp.jspJava.JspHolderMethod;
import org.jetbrains.annotations.Nullable;
public class JavaFoldingBuilder extends JavaFoldingBuilderBase {
@@ -47,8 +46,9 @@ public class JavaFoldingBuilder extends JavaFoldingBuilderBase {
@Nullable
@Override
public TextRange getRangeToFold(PsiElement element) {
if (element instanceof JspHolderMethod)
if (element instanceof SyntheticElement) {
return null;
}
return super.getRangeToFold(element); //To change body of overridden methods use File | Settings | File Templates.
}
}
@@ -53,7 +53,6 @@ import com.intellij.psi.codeStyle.CodeStyleManager;
import com.intellij.psi.codeStyle.CodeStyleSettingsManager;
import com.intellij.psi.codeStyle.CommonCodeStyleSettings;
import com.intellij.psi.codeStyle.JavaCodeStyleManager;
import com.intellij.psi.impl.source.jsp.jspJava.JspClass;
import com.intellij.psi.infos.CandidateInfo;
import com.intellij.psi.javadoc.PsiDocComment;
import com.intellij.psi.search.GlobalSearchScope;
@@ -624,7 +623,7 @@ public class OverrideImplementUtil extends OverrideImplementExploreUtil {
while (element instanceof PsiTypeParameter);
final PsiClass aClass = (PsiClass)element;
if (aClass instanceof JspClass) return null;
if (aClass instanceof PsiSyntheticClass) return null;
return aClass == null || !allowInterface && aClass.isInterface() ? null : aClass;
}
@@ -26,7 +26,6 @@ import com.intellij.openapi.editor.markup.TextAttributes;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.util.Ref;
import com.intellij.psi.*;
import com.intellij.psi.impl.source.jsp.jspJava.JspClass;
import com.intellij.psi.javadoc.PsiDocComment;
import com.intellij.psi.util.PsiTreeUtil;
import com.intellij.refactoring.util.RefactoringChangeUtil;
@@ -52,7 +51,7 @@ public abstract class BaseMoveInitializerToMethodAction extends PsiElementBaseIn
if (!field.hasInitializer()) return false;
PsiClass psiClass = field.getContainingClass();
return psiClass != null && !psiClass.isInterface() && !(psiClass instanceof PsiAnonymousClass) && !(psiClass instanceof JspClass);
return psiClass != null && !psiClass.isInterface() && !(psiClass instanceof PsiAnonymousClass) && !(psiClass instanceof PsiSyntheticClass);
}
private boolean hasUnsuitableModifiers(@NotNull PsiField field) {
@@ -22,8 +22,6 @@ import com.intellij.profile.codeInspection.InspectionProfileManager;
import com.intellij.profile.codeInspection.InspectionProjectProfileManager;
import com.intellij.psi.*;
import com.intellij.psi.impl.source.javadoc.PsiDocParamRef;
import com.intellij.psi.impl.source.jsp.jspJava.JspClass;
import com.intellij.psi.impl.source.jsp.jspJava.JspHolderMethod;
import com.intellij.psi.javadoc.*;
import com.intellij.psi.util.InheritanceUtil;
import com.intellij.psi.util.PropertyUtil;
@@ -421,7 +419,7 @@ public class JavaDocLocalInspection extends BaseLocalInspectionTool {
@Nullable
public ProblemDescriptor[] checkClass(@NotNull PsiClass psiClass, @NotNull InspectionManager manager, boolean isOnTheFly) {
if (psiClass instanceof PsiAnonymousClass) return null;
if (psiClass instanceof JspClass) return null;
if (psiClass instanceof PsiSyntheticClass) return null;
if (psiClass instanceof PsiTypeParameter) return null;
if (IGNORE_DEPRECATED && psiClass.isDeprecated()) {
return null;
@@ -553,7 +551,7 @@ public class JavaDocLocalInspection extends BaseLocalInspectionTool {
@Override
@Nullable
public ProblemDescriptor[] checkMethod(@NotNull PsiMethod psiMethod, @NotNull InspectionManager manager, boolean isOnTheFly) {
if (psiMethod instanceof JspHolderMethod) return null;
if (psiMethod instanceof SyntheticElement) return null;
if (IGNORE_DEPRECATED && (psiMethod.isDeprecated() || psiMethod.getContainingClass().isDeprecated())) {
return null;
}
@@ -33,7 +33,6 @@ import com.intellij.openapi.util.Iconable;
import com.intellij.openapi.util.TextRange;
import com.intellij.pom.Navigatable;
import com.intellij.psi.*;
import com.intellij.psi.impl.source.jsp.jspJava.JspHolderMethod;
import com.intellij.psi.presentation.java.ClassPresentationUtil;
import com.intellij.psi.util.PsiFormatUtil;
import com.intellij.psi.util.PsiTreeUtil;
@@ -125,7 +124,7 @@ public final class CallHierarchyNodeDescriptor extends HierarchyNodeDescriptor i
mainTextAttributes = new TextAttributes(myColor, null, null, null, Font.PLAIN);
}
if (enclosingElement instanceof PsiMethod) {
if (enclosingElement instanceof JspHolderMethod) {
if (enclosingElement instanceof SyntheticElement) {
PsiFile file = enclosingElement.getContainingFile();
myHighlightedText.getEnding().addText(file != null ? file.getName() : IdeBundle.message("node.call.hierarchy.unknown.jsp"), mainTextAttributes);
}
@@ -28,11 +28,7 @@ import com.intellij.openapi.vfs.ReadonlyStatusHandler;
import com.intellij.openapi.vfs.VfsUtil;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.openapi.wm.ToolWindowManager;
import com.intellij.psi.PsiClass;
import com.intellij.psi.PsiFile;
import com.intellij.psi.PsiMethod;
import com.intellij.psi.PsiSubstitutor;
import com.intellij.psi.impl.source.jsp.jspJava.JspClass;
import com.intellij.psi.*;
import com.intellij.psi.util.MethodSignature;
import com.intellij.util.IncorrectOperationException;
@@ -151,7 +147,7 @@ abstract class OverrideImplementMethodAction extends AnAction {
private static boolean canImplementOverride(final MethodHierarchyNodeDescriptor descriptor, final MethodHierarchyBrowser methodHierarchyBrowser, final boolean toImplement) {
final PsiClass psiClass = descriptor.getPsiClass();
if (psiClass == null || psiClass instanceof JspClass) return false;
if (psiClass == null || psiClass instanceof PsiSyntheticClass) return false;
final PsiMethod baseMethod = methodHierarchyBrowser.getBaseMethod();
if (baseMethod == null) return false;
final MethodSignature signature = baseMethod.getSignature(PsiSubstitutor.EMPTY);
@@ -29,7 +29,6 @@ import com.intellij.openapi.roots.ProjectRootManager;
import com.intellij.openapi.util.Computable;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.psi.*;
import com.intellij.psi.jsp.JspFile;
import org.jetbrains.annotations.Nullable;
import java.util.ArrayList;
@@ -47,7 +46,7 @@ public class ClassesTreeStructureProvider implements SelectableTreeStructureProv
ArrayList<AbstractTreeNode> result = new ArrayList<AbstractTreeNode>();
for (final AbstractTreeNode child : children) {
Object o = child.getValue();
if (o instanceof PsiClassOwner && !(o instanceof JspFile)) {
if (o instanceof PsiClassOwner && !(o instanceof ServerPageFile)) {
final ViewSettings settings1 = ((ProjectViewNode)parent).getSettings();
final PsiClassOwner classOwner = (PsiClassOwner)o;
final VirtualFile file = classOwner.getVirtualFile();
@@ -181,6 +180,6 @@ public class ClassesTreeStructureProvider implements SelectableTreeStructureProv
}
return result;
}
}
}
@@ -24,7 +24,6 @@ import com.intellij.openapi.util.TextRange;
import com.intellij.openapi.util.registry.Registry;
import com.intellij.openapi.util.text.StringUtil;
import com.intellij.psi.*;
import com.intellij.psi.impl.source.jsp.jspJava.JspHolderMethod;
import com.intellij.psi.search.searches.SuperMethodsSearch;
import com.intellij.psi.util.MethodSignatureBackedByPsiMethod;
import com.intellij.psi.util.PsiFormatUtil;
@@ -45,11 +44,12 @@ public class PsiMethodTreeElement extends JavaClassTreeElementBase<PsiMethod> im
super(isInherited, method);
}
@Override
@NotNull
public Collection<StructureViewTreeElement> getChildrenBase() {
final ArrayList<StructureViewTreeElement> result = new ArrayList<StructureViewTreeElement>();
final PsiMethod element = getElement();
if (element == null || element instanceof JspHolderMethod) return result;
if (element == null || element instanceof SyntheticElement) return result;
final TextRange range = element.getTextRange();
if (range == null) return result;
@@ -72,6 +72,7 @@ public class PsiMethodTreeElement extends JavaClassTreeElementBase<PsiMethod> im
return result;
}
@Override
public String getPresentableText() {
String method = PsiFormatUtil.formatMethod(getElement(),
PsiSubstitutor.EMPTY,
@@ -126,6 +127,7 @@ public class PsiMethodTreeElement extends JavaClassTreeElementBase<PsiMethod> im
return getElement();
}
@Override
public String getAlphaSortKey() {
final PsiMethod method = getElement();
if (method != null) {
@@ -43,7 +43,6 @@ import com.intellij.openapi.util.io.FileUtil;
import com.intellij.openapi.util.text.StringUtil;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.psi.*;
import com.intellij.psi.jsp.JspFile;
import com.intellij.util.PathsList;
import com.intellij.util.containers.HashSet;
import org.jdom.Element;
@@ -348,7 +347,7 @@ public class JavadocConfiguration implements ModuleRunProfile, JDOMExternalizabl
if (file instanceof PsiJavaFile) {
final PsiJavaFile javaFile = (PsiJavaFile)file;
final String packageName = javaFile.getPackageName();
if (containsPackagePrefix(module, packageName) || (packageName.length() == 0 && !(javaFile instanceof JspFile)) || !myUsePackageNotation) {
if (containsPackagePrefix(module, packageName) || (packageName.length() == 0 && !(javaFile instanceof ServerPageFile)) || !myUsePackageNotation) {
mySourceFiles.add(FileUtil.toSystemIndependentName(fileOrDir.getPath()));
}
else {
@@ -20,11 +20,11 @@ import com.intellij.formatting.alignment.AlignmentStrategy;
import com.intellij.lang.ASTNode;
import com.intellij.openapi.util.text.StringUtil;
import com.intellij.psi.JavaTokenType;
import com.intellij.psi.PsiSyntheticClass;
import com.intellij.psi.TokenType;
import com.intellij.psi.codeStyle.CommonCodeStyleSettings;
import com.intellij.psi.formatter.FormatterUtil;
import com.intellij.psi.formatter.common.AbstractBlock;
import com.intellij.psi.impl.source.jsp.jspJava.JspClass;
import com.intellij.psi.impl.source.tree.JavaDocElementType;
import com.intellij.psi.impl.source.tree.JavaElementType;
import com.intellij.psi.impl.source.tree.StdTokenSets;
@@ -59,7 +59,7 @@ public class CodeBlockBlock extends AbstractJavaBlock {
/**
* There is a possible case that 'implements' section is incomplete (e.g. ends with comma). We may want to align lbrace
* to the comma then.
*
*
* @param alignment block alignment
* @param baseNode base AST node
* @return alignment strategy to use for the given node
@@ -86,7 +86,7 @@ public class CodeBlockBlock extends AbstractJavaBlock {
}
return AlignmentStrategy.wrap(alignment);
}
private boolean isSwitchCodeBlock() {
return myNode.getTreeParent().getElementType() == JavaElementType.SWITCH_STATEMENT;
}
@@ -108,7 +108,7 @@ public class CodeBlockBlock extends AbstractJavaBlock {
int state = BEFORE_FIRST;
if (myNode.getPsi() instanceof JspClass) {
if (myNode.getPsi() instanceof PsiSyntheticClass) {
state = INSIDE_BODY;
}
@@ -157,7 +157,7 @@ public class CodeBlockBlock extends AbstractJavaBlock {
}
return StringUtil.countNewLines(whiteSpaceCandidate.getChars()) > 0 ? myAlignment : defaultAlignment;
}
@Nullable
private ASTNode processCaseAndStatementAfter(final ArrayList<Block> result,
ASTNode child,
@@ -17,10 +17,7 @@ package com.intellij.psi.impl.search;
import com.intellij.lang.java.JavaParserDefinition;
import com.intellij.lexer.Lexer;
import com.intellij.psi.JavaDocTokenType;
import com.intellij.psi.JavaTokenType;
import com.intellij.psi.PsiFile;
import com.intellij.psi.PsiJavaFile;
import com.intellij.psi.*;
import com.intellij.psi.impl.source.tree.StdTokenSets;
import com.intellij.psi.jsp.JspFile;
import com.intellij.psi.tree.IElementType;
@@ -48,7 +45,7 @@ public class JavaIndexPatternBuilder implements IndexPatternBuilder {
@Override
@Nullable
public TokenSet getCommentTokenSet(final PsiFile file) {
if (file instanceof PsiJavaFile && !(file instanceof JspFile)) {
if (file instanceof PsiJavaFile && !(file instanceof ServerPageFile)) {
return TokenSet.orSet(StdTokenSets.COMMENT_BIT_SET, XML_COMMENT_BIT_SET, JavaDocTokenType.ALL_JAVADOC_TOKENS, XML_DATA_CHARS);
}
return null;
@@ -41,7 +41,6 @@ import com.intellij.psi.impl.source.resolve.ResolveCache;
import com.intellij.psi.impl.source.resolve.reference.impl.GenericReference;
import com.intellij.psi.infos.CandidateInfo;
import com.intellij.psi.infos.ClassCandidateInfo;
import com.intellij.psi.jsp.JspFile;
import com.intellij.psi.scope.JavaScopeProcessorEvent;
import com.intellij.psi.scope.PsiScopeProcessor;
import com.intellij.psi.search.GlobalSearchScope;
@@ -413,7 +412,7 @@ public class JavaClassReference extends GenericReference implements PsiJavaRefer
PsiFile containingFile = psiElement.getContainingFile();
if (containingFile instanceof PsiJavaFile) {
if (containingFile instanceof JspFile) {
if (containingFile instanceof ServerPageFile) {
containingFile = containingFile.getViewProvider().getPsi(JavaLanguage.INSTANCE);
if (containingFile == null) return JavaResolveResult.EMPTY;
}
@@ -31,7 +31,6 @@ import com.intellij.openapi.ui.Messages;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.psi.*;
import com.intellij.psi.impl.file.JavaDirectoryServiceImpl;
import com.intellij.psi.impl.source.jsp.jspJava.JspClass;
import com.intellij.psi.search.GlobalSearchScope;
import com.intellij.refactoring.JavaRefactoringSettings;
import com.intellij.refactoring.RefactoringBundle;
@@ -81,12 +80,12 @@ public class JavaMoveClassesOrPackagesHandler extends MoveHandlerDelegate {
final PsiClass[] classes = ((PsiClassOwner)element).getClasses();
if (classes.length == 0) return true;
for (PsiClass aClass : classes) {
if (aClass instanceof JspClass) return true;
if (aClass instanceof PsiSyntheticClass) return true;
}
parentFile = (PsiFile)element;
}
else {
if (element instanceof JspClass) return true;
if (element instanceof PsiSyntheticClass) return true;
if (!(element instanceof PsiClass)) return true;
if (element instanceof PsiAnonymousClass) return true;
if (((PsiClass)element).getContainingClass() != null) return true;
@@ -15,27 +15,28 @@
*/
package com.intellij.refactoring.move.moveInstanceMethod;
import com.intellij.psi.*;
import com.intellij.psi.impl.source.jsp.jspJava.JspHolderMethod;
import com.intellij.refactoring.move.MoveHandlerDelegate;
import com.intellij.refactoring.move.MoveCallback;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.actionSystem.DataContext;
import com.intellij.openapi.editor.Editor;
import com.intellij.openapi.project.Project;
import com.intellij.psi.*;
import com.intellij.refactoring.move.MoveCallback;
import com.intellij.refactoring.move.MoveHandlerDelegate;
import com.intellij.refactoring.move.moveClassesOrPackages.JavaMoveClassesOrPackagesHandler;
import org.jetbrains.annotations.Nullable;
public class MoveInstanceMethodHandlerDelegate extends MoveHandlerDelegate {
@Override
public boolean canMove(final PsiElement[] elements, @Nullable final PsiElement targetContainer) {
if (elements.length != 1) return false;
PsiElement element = elements [0];
if (!(element instanceof PsiMethod)) return false;
if (element instanceof JspHolderMethod) return false;
if (element instanceof SyntheticElement) return false;
PsiMethod method = (PsiMethod) element;
if (method.hasModifierProperty(PsiModifier.STATIC)) return false;
return super.canMove(elements, targetContainer);
}
@Override
public boolean isValidTarget(final PsiElement psiElement, PsiElement[] sources) {
for (PsiElement source : sources) {
if (JavaMoveClassesOrPackagesHandler.invalid4Move(source)) return false;
@@ -43,6 +44,7 @@ public class MoveInstanceMethodHandlerDelegate extends MoveHandlerDelegate {
return psiElement instanceof PsiClass && !(psiElement instanceof PsiAnonymousClass);
}
@Override
public boolean tryToMove(final PsiElement element, final Project project, final DataContext dataContext, final PsiReference reference,
final Editor editor) {
if (element instanceof PsiMethod) {
@@ -55,6 +57,7 @@ public class MoveInstanceMethodHandlerDelegate extends MoveHandlerDelegate {
return false;
}
@Override
public void doMove(final Project project, final PsiElement[] elements, final PsiElement targetContainer, final MoveCallback callback) {
new MoveInstanceMethodHandler().invoke(project, elements, null);
}
@@ -19,7 +19,6 @@ import com.intellij.openapi.actionSystem.DataContext;
import com.intellij.openapi.editor.Editor;
import com.intellij.openapi.project.Project;
import com.intellij.psi.*;
import com.intellij.psi.impl.source.jsp.jspJava.JspHolderMethod;
import com.intellij.refactoring.move.MoveCallback;
import com.intellij.refactoring.move.MoveHandlerDelegate;
import org.jetbrains.annotations.Nullable;
@@ -52,7 +51,7 @@ public class MoveMembersHandler extends MoveHandlerDelegate {
private static boolean isFieldOrStaticMethod(final PsiElement element) {
if (element instanceof PsiField) return true;
if (element instanceof PsiMethod) {
if (element instanceof JspHolderMethod) return false;
if (element instanceof SyntheticElement) return false;
return ((PsiMethod) element).hasModifierProperty(PsiModifier.STATIC);
}
return false;
@@ -25,7 +25,6 @@ import com.intellij.openapi.util.Iconable;
import com.intellij.openapi.vcs.FileStatus;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.psi.*;
import com.intellij.psi.jsp.JspFile;
import com.intellij.psi.util.PsiTreeUtil;
import com.intellij.usageView.UsageInfo;
import com.intellij.usages.Usage;
@@ -53,7 +52,7 @@ public class ClassGroupingRule implements UsageGroupingRule {
PsiFile topLevelFile = InjectedLanguageManager.getInstance(containingFile.getProject()).getTopLevelFile(containingFile);
if (!(topLevelFile instanceof PsiJavaFile) || topLevelFile instanceof JspFile) {
if (!(topLevelFile instanceof PsiJavaFile) || topLevelFile instanceof ServerPageFile) {
return null;
}
PsiElement containingClass = topLevelFile == containingFile ? psiElement : InjectedLanguageManager
@@ -18,7 +18,7 @@ package com.intellij.usages.impl.rules;
import com.intellij.openapi.project.Project;
import com.intellij.psi.PsiFile;
import com.intellij.psi.PsiJavaFile;
import com.intellij.psi.jsp.JspFile;
import com.intellij.psi.ServerPageFile;
import com.intellij.usages.Usage;
import com.intellij.usages.UsageGroup;
import org.jetbrains.annotations.NotNull;
@@ -28,11 +28,12 @@ public class NonJavaFileGroupingRule extends FileGroupingRule {
super(project);
}
@Override
public UsageGroup groupUsage(@NotNull Usage usage) {
final FileUsageGroup usageGroup = (FileUsageGroup)super.groupUsage(usage);
if (usageGroup != null) {
final PsiFile psiFile = usageGroup.getPsiFile();
if (psiFile instanceof PsiJavaFile && !(psiFile instanceof JspFile)) {
if (psiFile instanceof PsiJavaFile && !(psiFile instanceof ServerPageFile)) {
return null;
}
}
@@ -30,7 +30,6 @@ import com.intellij.openapi.ui.Messages;
import com.intellij.openapi.util.Comparing;
import com.intellij.openapi.vfs.*;
import com.intellij.psi.*;
import com.intellij.psi.impl.source.jsp.jspJava.JspClass;
import com.intellij.psi.javadoc.PsiDocComment;
import com.intellij.psi.javadoc.PsiDocTag;
import com.intellij.psi.search.GlobalSearchScope;
@@ -245,7 +244,7 @@ public class TestNGUtil
private static boolean isBrokenPsiClass(PsiClass psiClass) {
return (psiClass == null
|| psiClass instanceof PsiAnonymousClass
|| psiClass instanceof JspClass);
|| psiClass instanceof PsiSyntheticClass);
}
/**