diff --git a/java/java-impl/src/com/intellij/usages/impl/rules/JavaUsageTypeProvider.java b/java/java-impl/src/com/intellij/usages/impl/rules/JavaUsageTypeProvider.java index addc8c2bc96c..ec2335f2fa91 100644 --- a/java/java-impl/src/com/intellij/usages/impl/rules/JavaUsageTypeProvider.java +++ b/java/java-impl/src/com/intellij/usages/impl/rules/JavaUsageTypeProvider.java @@ -36,11 +36,11 @@ import java.util.Set; */ public class JavaUsageTypeProvider implements UsageTypeProviderEx { public UsageType getUsageType(final PsiElement element) { - return getUsageType(element, null); + return getUsageType(element, UsageTarget.EMPTY_ARRAY); } @Override - public UsageType getUsageType(PsiElement element, @Nullable UsageTarget[] targets) { + public UsageType getUsageType(PsiElement element, @NotNull UsageTarget[] targets) { UsageType classUsageType = getClassUsageType(element, targets); if (classUsageType != null) return classUsageType; @@ -108,8 +108,10 @@ public class JavaUsageTypeProvider implements UsageTypeProviderEx { } private static boolean haveCommonSuperMethod(@NotNull PsiMethod m1, @NotNull PsiMethod m2) { - final Queue supers1Q = new ArrayDeque(); supers1Q.add(m1); - final Queue supers2Q = new ArrayDeque(); supers2Q.add(m2); + final Queue supers1Q = new ArrayDeque(); + supers1Q.add(m1); + final Queue supers2Q = new ArrayDeque(); + supers2Q.add(m2); Set supers1 = new THashSet(); Set supers2 = new THashSet(); while (true) { @@ -138,7 +140,7 @@ public class JavaUsageTypeProvider implements UsageTypeProviderEx { } }); } - if (me1 == null && me2==null) break; + if (me1 == null && me2 == null) break; } return false; /* @@ -154,9 +156,11 @@ public class JavaUsageTypeProvider implements UsageTypeProviderEx { } @Nullable - private static UsageType getClassUsageType(PsiElement element, @Nullable UsageTarget[] targets) { + private static UsageType getClassUsageType(@NotNull PsiElement element, @NotNull UsageTarget[] targets) { if (element.getParent() instanceof PsiAnnotation && - element == ((PsiAnnotation)element.getParent()).getNameReferenceElement()) return UsageType.ANNOTATION; + element == ((PsiAnnotation)element.getParent()).getNameReferenceElement()) { + return UsageType.ANNOTATION; + } if (PsiTreeUtil.getParentOfType(element, PsiImportStatement.class, false) != null) return UsageType.CLASS_IMPORT; PsiReferenceList referenceList = PsiTreeUtil.getParentOfType(element, PsiReferenceList.class); diff --git a/platform/usageView/src/com/intellij/usages/impl/rules/UsageType.java b/platform/usageView/src/com/intellij/usages/impl/rules/UsageType.java index e0f402a1141a..43905dd67b2e 100644 --- a/platform/usageView/src/com/intellij/usages/impl/rules/UsageType.java +++ b/platform/usageView/src/com/intellij/usages/impl/rules/UsageType.java @@ -32,6 +32,7 @@ public final class UsageType { public static final UsageType CLASS_METHOD_RETURN_TYPE = new UsageType(UsageViewBundle.message("usage.type.return")); public static final UsageType CLASS_NEW_OPERATOR = new UsageType(UsageViewBundle.message("usage.type.new")); public static final UsageType CLASS_INNER_NEW_OPERATOR = new UsageType(UsageViewBundle.message("usage.type.new.inner")); + public static final UsageType CLASS_ANONYMOUS_NEW_OPERATOR = new UsageType(UsageViewBundle.message("usage.type.new.anonymous")); public static final UsageType CLASS_NEW_ARRAY = new UsageType(UsageViewBundle.message("usage.type.new.array")); public static final UsageType ANNOTATION = new UsageType(UsageViewBundle.message("usage.type.annotation")); public static final UsageType TYPE_PARAMETER = new UsageType(UsageViewBundle.message("usage.type.type.parameter")); diff --git a/platform/usageView/src/com/intellij/usages/impl/rules/UsageTypeGroupingRule.java b/platform/usageView/src/com/intellij/usages/impl/rules/UsageTypeGroupingRule.java index 30c69dd1c1d4..d0ca1fc0052a 100644 --- a/platform/usageView/src/com/intellij/usages/impl/rules/UsageTypeGroupingRule.java +++ b/platform/usageView/src/com/intellij/usages/impl/rules/UsageTypeGroupingRule.java @@ -59,7 +59,7 @@ public class UsageTypeGroupingRule implements UsageGroupingRuleEx { } @Nullable - private static UsageType getUsageType(PsiElement element, UsageTarget[] targets) { + private static UsageType getUsageType(PsiElement element, @NotNull UsageTarget[] targets) { if (element == null) return null; if (PsiTreeUtil.getParentOfType(element, PsiComment.class, false) != null) { return UsageType.COMMENT_USAGE; } diff --git a/platform/usageView/src/com/intellij/usages/impl/rules/UsageTypeProviderEx.java b/platform/usageView/src/com/intellij/usages/impl/rules/UsageTypeProviderEx.java index f31c33801f0c..011a65c95514 100644 --- a/platform/usageView/src/com/intellij/usages/impl/rules/UsageTypeProviderEx.java +++ b/platform/usageView/src/com/intellij/usages/impl/rules/UsageTypeProviderEx.java @@ -17,6 +17,7 @@ package com.intellij.usages.impl.rules; import com.intellij.psi.PsiElement; import com.intellij.usages.UsageTarget; +import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; /** @@ -25,5 +26,5 @@ import org.jetbrains.annotations.Nullable; public interface UsageTypeProviderEx extends UsageTypeProvider { @Nullable UsageType - getUsageType(PsiElement element, UsageTarget[] targets); + getUsageType(PsiElement element, @NotNull UsageTarget[] targets); }