From 0dba483423b779d1cd6063c5f30cd40eb91a440c Mon Sep 17 00:00:00 2001 From: Alexey Kudravtsev Date: Thu, 10 Oct 2013 16:39:22 +0400 Subject: [PATCH] moved to analysis --- .../ig/jdk/AssertAsNameInspectionBase.java | 101 ++++++++++++++++++ .../siyeh/ig/jdk/AssertAsNameInspection.java | 84 +-------------- 2 files changed, 102 insertions(+), 83 deletions(-) create mode 100644 plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/jdk/AssertAsNameInspectionBase.java diff --git a/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/jdk/AssertAsNameInspectionBase.java b/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/jdk/AssertAsNameInspectionBase.java new file mode 100644 index 000000000000..f4c8296789da --- /dev/null +++ b/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/jdk/AssertAsNameInspectionBase.java @@ -0,0 +1,101 @@ +/* + * Copyright 2000-2013 JetBrains s.r.o. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.siyeh.ig.jdk; + +import com.intellij.psi.*; +import com.siyeh.InspectionGadgetsBundle; +import com.siyeh.ig.BaseInspection; +import com.siyeh.ig.BaseInspectionVisitor; +import org.jetbrains.annotations.NotNull; + +public class AssertAsNameInspectionBase extends BaseInspection { + @Override + @NotNull + public String getID() { + return "AssertAsIdentifier"; + } + + @Override + @NotNull + public String getDisplayName() { + return InspectionGadgetsBundle.message( + "use.assert.as.identifier.display.name"); + } + + @Override + @NotNull + public String buildErrorString(Object... infos) { + return InspectionGadgetsBundle.message( + "use.assert.as.identifier.problem.descriptor"); + } + + @Override + protected boolean buildQuickFixesOnlyForOnTheFlyErrors() { + return true; + } + + @Override + public BaseInspectionVisitor buildVisitor() { + return new AssertAsNameVisitor(); + } + + private static class AssertAsNameVisitor extends BaseInspectionVisitor { + + @Override + public void visitVariable(@NotNull PsiVariable variable) { + super.visitVariable(variable); + final String variableName = variable.getName(); + if (!PsiKeyword.ASSERT.equals(variableName)) { + return; + } + registerVariableError(variable); + } + + @Override + public void visitMethod(@NotNull PsiMethod method) { + super.visitMethod(method); + final String name = method.getName(); + if (!PsiKeyword.ASSERT.equals(name)) { + return; + } + registerMethodError(method); + } + + @Override + public void visitClass(@NotNull PsiClass aClass) { + //note: no call to super, to avoid drill-down + final String name = aClass.getName(); + if (!PsiKeyword.ASSERT.equals(name)) { + return; + } + final PsiTypeParameterList params = aClass.getTypeParameterList(); + if (params != null) { + params.accept(this); + } + registerClassError(aClass); + } + + @Override + public void visitTypeParameter(PsiTypeParameter parameter) { + super.visitTypeParameter(parameter); + final String name = parameter.getName(); + if (!PsiKeyword.ASSERT.equals(name)) { + return; + } + registerTypeParameterError(parameter); + } + } +} diff --git a/plugins/InspectionGadgets/src/com/siyeh/ig/jdk/AssertAsNameInspection.java b/plugins/InspectionGadgets/src/com/siyeh/ig/jdk/AssertAsNameInspection.java index 389a33883a5a..3af012856b9f 100644 --- a/plugins/InspectionGadgets/src/com/siyeh/ig/jdk/AssertAsNameInspection.java +++ b/plugins/InspectionGadgets/src/com/siyeh/ig/jdk/AssertAsNameInspection.java @@ -15,95 +15,13 @@ */ package com.siyeh.ig.jdk; -import com.intellij.psi.*; -import com.siyeh.InspectionGadgetsBundle; -import com.siyeh.ig.BaseInspection; -import com.siyeh.ig.BaseInspectionVisitor; import com.siyeh.ig.InspectionGadgetsFix; import com.siyeh.ig.fixes.RenameFix; -import org.jetbrains.annotations.NotNull; -public class AssertAsNameInspection extends BaseInspection { - - @Override - @NotNull - public String getID() { - return "AssertAsIdentifier"; - } - - @Override - @NotNull - public String getDisplayName() { - return InspectionGadgetsBundle.message( - "use.assert.as.identifier.display.name"); - } - - @Override - @NotNull - public String buildErrorString(Object... infos) { - return InspectionGadgetsBundle.message( - "use.assert.as.identifier.problem.descriptor"); - } +public class AssertAsNameInspection extends AssertAsNameInspectionBase { @Override protected InspectionGadgetsFix buildFix(Object... infos) { return new RenameFix(); } - - @Override - protected boolean buildQuickFixesOnlyForOnTheFlyErrors() { - return true; - } - - @Override - public BaseInspectionVisitor buildVisitor() { - return new AssertAsNameVisitor(); - } - - private static class AssertAsNameVisitor extends BaseInspectionVisitor { - - @Override - public void visitVariable(@NotNull PsiVariable variable) { - super.visitVariable(variable); - final String variableName = variable.getName(); - if (!PsiKeyword.ASSERT.equals(variableName)) { - return; - } - registerVariableError(variable); - } - - @Override - public void visitMethod(@NotNull PsiMethod method) { - super.visitMethod(method); - final String name = method.getName(); - if (!PsiKeyword.ASSERT.equals(name)) { - return; - } - registerMethodError(method); - } - - @Override - public void visitClass(@NotNull PsiClass aClass) { - //note: no call to super, to avoid drill-down - final String name = aClass.getName(); - if (!PsiKeyword.ASSERT.equals(name)) { - return; - } - final PsiTypeParameterList params = aClass.getTypeParameterList(); - if (params != null) { - params.accept(this); - } - registerClassError(aClass); - } - - @Override - public void visitTypeParameter(PsiTypeParameter parameter) { - super.visitTypeParameter(parameter); - final String name = parameter.getName(); - if (!PsiKeyword.ASSERT.equals(name)) { - return; - } - registerTypeParameterError(parameter); - } - } } \ No newline at end of file