diff --git a/platform/lang-api/src/com/intellij/codeInspection/LocalDummyInspectionTool.java b/platform/lang-api/src/com/intellij/codeInspection/DummyInspectionTool.java similarity index 77% rename from platform/lang-api/src/com/intellij/codeInspection/LocalDummyInspectionTool.java rename to platform/lang-api/src/com/intellij/codeInspection/DummyInspectionTool.java index 6a879de0be24..4772a6d60aae 100644 --- a/platform/lang-api/src/com/intellij/codeInspection/LocalDummyInspectionTool.java +++ b/platform/lang-api/src/com/intellij/codeInspection/DummyInspectionTool.java @@ -18,13 +18,13 @@ package com.intellij.codeInspection; import org.jetbrains.annotations.NotNull; /** - * This class is for the inspections that are gathered by another inspection, + * This interface is for the inspections that are gathered by another inspection, * but should be shown under this inspection in the inspections result view. * This inspection is identified by the problem group, which is stored in the Annotation, HighlightInfo and ProblemDescriptor classes. */ -public abstract class LocalDummyInspectionTool extends LocalInspectionTool { +public interface DummyInspectionTool { @NotNull - public abstract String getProblemGroup(); + String getProblemGroup(); - public abstract boolean shouldBeShownInInspectionProfile(); + boolean shouldBeShownInInspectionProfile(); } diff --git a/platform/lang-impl/src/com/intellij/codeInspection/ex/Descriptor.java b/platform/lang-impl/src/com/intellij/codeInspection/ex/Descriptor.java index 49de7ada2039..34a1821b872f 100644 --- a/platform/lang-impl/src/com/intellij/codeInspection/ex/Descriptor.java +++ b/platform/lang-impl/src/com/intellij/codeInspection/ex/Descriptor.java @@ -18,8 +18,8 @@ package com.intellij.codeInspection.ex; import com.intellij.codeHighlighting.HighlightDisplayLevel; import com.intellij.codeInsight.daemon.HighlightDisplayKey; +import com.intellij.codeInspection.DummyInspectionTool; import com.intellij.codeInspection.InspectionProfileEntry; -import com.intellij.codeInspection.LocalDummyInspectionTool; import com.intellij.openapi.diagnostic.Logger; import com.intellij.openapi.util.WriteExternalException; import com.intellij.psi.search.scope.packageSet.NamedScope; @@ -62,8 +62,8 @@ public class Descriptor { if (tool instanceof InspectionToolWrapper) { InspectionProfileEntry inspection = ((InspectionToolWrapper)tool).getTool(); - if (inspection instanceof LocalDummyInspectionTool) { - myShouldBeShown = ((LocalDummyInspectionTool)inspection).shouldBeShownInInspectionProfile(); + if (inspection instanceof DummyInspectionTool) { + myShouldBeShown = ((DummyInspectionTool)inspection).shouldBeShownInInspectionProfile(); } } } diff --git a/platform/lang-impl/src/com/intellij/codeInspection/ex/GlobalInspectionContextImpl.java b/platform/lang-impl/src/com/intellij/codeInspection/ex/GlobalInspectionContextImpl.java index 727fd37ae4bf..872844b78bbf 100644 --- a/platform/lang-impl/src/com/intellij/codeInspection/ex/GlobalInspectionContextImpl.java +++ b/platform/lang-impl/src/com/intellij/codeInspection/ex/GlobalInspectionContextImpl.java @@ -636,12 +636,12 @@ public class GlobalInspectionContextImpl extends UserDataHolderBase implements G InspectionToolWrapper toolWrapper = (InspectionToolWrapper)profileEntry; InspectionProfileEntry inspectionTool = toolWrapper.getTool(); - if (inspectionTool instanceof LocalDummyInspectionTool) { + if (inspectionTool instanceof DummyInspectionTool) { if (toolWrappers == null) { toolWrappers = new HashMap(); } - toolWrappers.put(((LocalDummyInspectionTool)inspectionTool).getProblemGroup(), toolWrapper); + toolWrappers.put(((DummyInspectionTool)inspectionTool).getProblemGroup(), toolWrapper); } } } diff --git a/plugins/devkit/src/inspections/InspectionDescriptionNotFoundInspection.java b/plugins/devkit/src/inspections/InspectionDescriptionNotFoundInspection.java index 56431bb8e861..c3d2bbc2b4c4 100644 --- a/plugins/devkit/src/inspections/InspectionDescriptionNotFoundInspection.java +++ b/plugins/devkit/src/inspections/InspectionDescriptionNotFoundInspection.java @@ -40,6 +40,7 @@ import java.util.List; */ public class InspectionDescriptionNotFoundInspection extends DevKitInspectionBase{ @NonNls static final String INSPECTION_PROFILE_ENTRY = InspectionProfileEntry.class.getName(); + @NonNls static final String DUMMY_INSPECTION_TOOL = DummyInspectionTool.class.getName(); @NonNls private static final String INSPECTION_DESCRIPTIONS = "inspectionDescriptions"; @Override @@ -51,8 +52,10 @@ public class InspectionDescriptionNotFoundInspection extends DevKitInspectionBas if (nameIdentifier == null || module == null || !PsiUtil.isInstantiatable(aClass)) return null; final PsiClass base = JavaPsiFacade.getInstance(project).findClass(INSPECTION_PROFILE_ENTRY, GlobalSearchScope.allScope(project)); + final PsiClass dummy = JavaPsiFacade.getInstance(project).findClass(DUMMY_INSPECTION_TOOL, GlobalSearchScope.allScope(project)); if (base == null || ! aClass.isInheritor(base, true) || isPathMethodsAreOverridden(aClass)) return null; + if (dummy == null || aClass.isInheritor(dummy, true)) return null; PsiMethod method = findNearestMethod("getShortName", aClass); if (method != null && method.getContainingClass().getQualifiedName().equals(INSPECTION_PROFILE_ENTRY)) {