mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-18 09:34:34 +07:00
safe varags: rename inspection
This commit is contained in:
+6
-2
@@ -32,7 +32,7 @@ import org.jetbrains.annotations.NotNull;
|
||||
* User: anna
|
||||
* Date: 1/28/11
|
||||
*/
|
||||
public class SafeVarargsCanBeUsedInspection extends BaseJavaLocalInspectionTool {
|
||||
public class PossibleHeapPollutionVarargsInspection extends BaseJavaLocalInspectionTool {
|
||||
@Nls
|
||||
@NotNull
|
||||
@Override
|
||||
@@ -44,7 +44,7 @@ public class SafeVarargsCanBeUsedInspection extends BaseJavaLocalInspectionTool
|
||||
@NotNull
|
||||
@Override
|
||||
public String getDisplayName() {
|
||||
return "Method can be annotated as @SafeVarargs";
|
||||
return "Possible heap pollution from parameterized vararg type";
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -68,6 +68,7 @@ public class SafeVarargsCanBeUsedInspection extends BaseJavaLocalInspectionTool
|
||||
if (!PsiUtil.getLanguageLevel(method).isAtLeast(LanguageLevel.JDK_1_7)) return;
|
||||
if (AnnotationUtil.isAnnotated(method, "java.lang.SafeVarargs", false)) return;
|
||||
if (!method.isVarArgs()) return;
|
||||
|
||||
final PsiParameter psiParameter = method.getParameterList().getParameters()[method.getParameterList().getParametersCount() - 1];
|
||||
final PsiType componentType = ((PsiEllipsisType)psiParameter.getType()).getComponentType();
|
||||
if (GenericsHighlightUtil.isReifiableType(componentType)) {
|
||||
@@ -81,6 +82,9 @@ public class SafeVarargsCanBeUsedInspection extends BaseJavaLocalInspectionTool
|
||||
}
|
||||
final PsiIdentifier nameIdentifier = method.getNameIdentifier();
|
||||
if (nameIdentifier != null) {
|
||||
//if (method.hasModifierProperty(PsiModifier.ABSTRACT)) return;
|
||||
//final PsiClass containingClass = method.getContainingClass();
|
||||
//if (containingClass == null || containingClass.isInterface()) return; do not add
|
||||
holder.registerProblem(nameIdentifier, "Possible heap pollution from parameterized vararg type #loc",
|
||||
//todo check if can be final or static
|
||||
method.hasModifierProperty(PsiModifier.FINAL) || method.hasModifierProperty(PsiModifier.STATIC) ? new AnnotateAsSafeVarargsQuickFix() : null);
|
||||
+1
-1
@@ -118,7 +118,7 @@ public class StandardInspectionToolsProvider implements InspectionToolProvider {
|
||||
UnknownGuardInspection.class,
|
||||
|
||||
ExplicitTypeCanBeDiamondInspection.class,
|
||||
SafeVarargsCanBeUsedInspection.class,
|
||||
PossibleHeapPollutionVarargsInspection.class,
|
||||
RedundantUncheckedSuppressWarningsInspection.class
|
||||
};
|
||||
}
|
||||
|
||||
-3
@@ -17,9 +17,6 @@ package com.intellij.codeInsight.daemon.quickFix;
|
||||
|
||||
import com.intellij.codeInspection.LocalInspectionTool;
|
||||
import com.intellij.codeInspection.RedundantUncheckedSuppressWarningsInspection;
|
||||
import com.intellij.codeInspection.SafeVarargsCanBeUsedInspection;
|
||||
import com.intellij.openapi.projectRoots.Sdk;
|
||||
import com.intellij.openapi.projectRoots.impl.JavaSdkImpl;
|
||||
|
||||
|
||||
public class RemoveRedundantUncheckedSuppressionTest extends LightQuickFixTestCase {
|
||||
|
||||
+2
-4
@@ -16,16 +16,14 @@
|
||||
package com.intellij.codeInsight.daemon.quickFix;
|
||||
|
||||
import com.intellij.codeInspection.LocalInspectionTool;
|
||||
import com.intellij.codeInspection.SafeVarargsCanBeUsedInspection;
|
||||
import com.intellij.openapi.projectRoots.Sdk;
|
||||
import com.intellij.openapi.projectRoots.impl.JavaSdkImpl;
|
||||
import com.intellij.codeInspection.PossibleHeapPollutionVarargsInspection;
|
||||
|
||||
|
||||
public class SafeVarargsCanBeUsedTest extends LightQuickFixTestCase {
|
||||
@Override
|
||||
protected LocalInspectionTool[] configureLocalInspectionTools() {
|
||||
return new LocalInspectionTool[]{
|
||||
new SafeVarargsCanBeUsedInspection(),
|
||||
new PossibleHeapPollutionVarargsInspection(),
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user