From cb4340a43fc8da390273aab746427bb18af71a6a Mon Sep 17 00:00:00 2001 From: Dmitry Avdeev Date: Fri, 30 Sep 2011 15:36:51 +0400 Subject: [PATCH] inspections as extension points --- .../validation/InjectionNotApplicable.java | 3 +- .../java/validation/InspectionProvider.java | 28 -------------- .../java/validation/LanguageMismatch.java | 4 +- .../java/validation/UnknownLanguageID.java | 3 +- .../pattern/InspectionProvider.java | 26 ------------- .../PatternAnnotationNotApplicable.java | 2 +- ...PatternOverriddenByNonAnnotatedMethod.java | 2 +- .../intelliLang/pattern/PatternValidator.java | 4 +- .../src/META-INF/intellilang-java-support.xml | 18 ++++++++- plugins/java-i18n/src/META-INF/plugin.xml | 20 +++++++++- .../JavaInspectionToolProvider.java | 37 ------------------- 11 files changed, 46 insertions(+), 101 deletions(-) delete mode 100644 plugins/IntelliLang/java-support/org/intellij/plugins/intelliLang/inject/java/validation/InspectionProvider.java delete mode 100644 plugins/IntelliLang/java-support/org/intellij/plugins/intelliLang/pattern/InspectionProvider.java delete mode 100644 plugins/java-i18n/src/com/intellij/codeInspection/JavaInspectionToolProvider.java diff --git a/plugins/IntelliLang/java-support/org/intellij/plugins/intelliLang/inject/java/validation/InjectionNotApplicable.java b/plugins/IntelliLang/java-support/org/intellij/plugins/intelliLang/inject/java/validation/InjectionNotApplicable.java index a3839b3af634..d93f1df8acc5 100644 --- a/plugins/IntelliLang/java-support/org/intellij/plugins/intelliLang/inject/java/validation/InjectionNotApplicable.java +++ b/plugins/IntelliLang/java-support/org/intellij/plugins/intelliLang/inject/java/validation/InjectionNotApplicable.java @@ -22,6 +22,7 @@ import com.intellij.codeInspection.ProblemsHolder; import com.intellij.psi.*; import com.intellij.psi.util.PsiTreeUtil; import org.intellij.plugins.intelliLang.Configuration; +import org.intellij.plugins.intelliLang.pattern.PatternValidator; import org.intellij.plugins.intelliLang.util.PsiUtilEx; import org.intellij.plugins.intelliLang.util.RemoveAnnotationFix; import org.jetbrains.annotations.NonNls; @@ -40,7 +41,7 @@ public class InjectionNotApplicable extends LocalInspectionTool { @NotNull public String getGroupDisplayName() { - return InspectionProvider.LANGUAGE_INJECTION; + return PatternValidator.LANGUAGE_INJECTION; } @NotNull diff --git a/plugins/IntelliLang/java-support/org/intellij/plugins/intelliLang/inject/java/validation/InspectionProvider.java b/plugins/IntelliLang/java-support/org/intellij/plugins/intelliLang/inject/java/validation/InspectionProvider.java deleted file mode 100644 index 1d844ac0accd..000000000000 --- a/plugins/IntelliLang/java-support/org/intellij/plugins/intelliLang/inject/java/validation/InspectionProvider.java +++ /dev/null @@ -1,28 +0,0 @@ -/* - * Copyright 2006 Sascha Weinreuter - * - * 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 org.intellij.plugins.intelliLang.inject.java.validation; - -import com.intellij.codeInspection.InspectionToolProvider; - -public class InspectionProvider implements InspectionToolProvider { - public static final String LANGUAGE_INJECTION = "Language Injection"; - - public Class[] getInspectionClasses() { - return new Class[]{UnknownLanguageID.class, LanguageMismatch.class, InjectionNotApplicable.class}; - } - -} diff --git a/plugins/IntelliLang/java-support/org/intellij/plugins/intelliLang/inject/java/validation/LanguageMismatch.java b/plugins/IntelliLang/java-support/org/intellij/plugins/intelliLang/inject/java/validation/LanguageMismatch.java index d0153e05efb1..c889e246e8a8 100644 --- a/plugins/IntelliLang/java-support/org/intellij/plugins/intelliLang/inject/java/validation/LanguageMismatch.java +++ b/plugins/IntelliLang/java-support/org/intellij/plugins/intelliLang/inject/java/validation/LanguageMismatch.java @@ -15,13 +15,13 @@ */ package org.intellij.plugins.intelliLang.inject.java.validation; -import com.intellij.codeHighlighting.HighlightDisplayLevel; import com.intellij.codeInspection.LocalInspectionTool; import com.intellij.codeInspection.ProblemsHolder; import com.intellij.openapi.util.Pair; import com.intellij.psi.*; import com.intellij.psi.util.PsiTreeUtil; import org.intellij.plugins.intelliLang.Configuration; +import org.intellij.plugins.intelliLang.pattern.PatternValidator; import org.intellij.plugins.intelliLang.util.AnnotateFix; import org.intellij.plugins.intelliLang.util.AnnotationUtilEx; import org.intellij.plugins.intelliLang.util.PsiUtilEx; @@ -45,7 +45,7 @@ public class LanguageMismatch extends LocalInspectionTool { @NotNull public String getGroupDisplayName() { - return InspectionProvider.LANGUAGE_INJECTION; + return PatternValidator.LANGUAGE_INJECTION; } @NotNull diff --git a/plugins/IntelliLang/java-support/org/intellij/plugins/intelliLang/inject/java/validation/UnknownLanguageID.java b/plugins/IntelliLang/java-support/org/intellij/plugins/intelliLang/inject/java/validation/UnknownLanguageID.java index 47d22d70db8e..0fb9b31883e9 100644 --- a/plugins/IntelliLang/java-support/org/intellij/plugins/intelliLang/inject/java/validation/UnknownLanguageID.java +++ b/plugins/IntelliLang/java-support/org/intellij/plugins/intelliLang/inject/java/validation/UnknownLanguageID.java @@ -24,6 +24,7 @@ import com.intellij.psi.*; import com.intellij.psi.util.PsiTreeUtil; import org.intellij.plugins.intelliLang.Configuration; import org.intellij.plugins.intelliLang.inject.InjectedLanguage; +import org.intellij.plugins.intelliLang.pattern.PatternValidator; import org.jetbrains.annotations.NonNls; import org.jetbrains.annotations.NotNull; @@ -40,7 +41,7 @@ public class UnknownLanguageID extends LocalInspectionTool { @NotNull public String getGroupDisplayName() { - return InspectionProvider.LANGUAGE_INJECTION; + return PatternValidator.LANGUAGE_INJECTION; } @NotNull diff --git a/plugins/IntelliLang/java-support/org/intellij/plugins/intelliLang/pattern/InspectionProvider.java b/plugins/IntelliLang/java-support/org/intellij/plugins/intelliLang/pattern/InspectionProvider.java deleted file mode 100644 index 09ff41103453..000000000000 --- a/plugins/IntelliLang/java-support/org/intellij/plugins/intelliLang/pattern/InspectionProvider.java +++ /dev/null @@ -1,26 +0,0 @@ -/* - * Copyright 2006 Sascha Weinreuter - * - * 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 org.intellij.plugins.intelliLang.pattern; - -import com.intellij.codeInspection.InspectionToolProvider; - -public class InspectionProvider implements InspectionToolProvider { - public static final String PATTERN_VALIDATION = "Pattern Validation"; - - public Class[] getInspectionClasses() { - return new Class[]{PatternValidator.class, PatternAnnotationNotApplicable.class, PatternOverriddenByNonAnnotatedMethod.class}; - } -} diff --git a/plugins/IntelliLang/java-support/org/intellij/plugins/intelliLang/pattern/PatternAnnotationNotApplicable.java b/plugins/IntelliLang/java-support/org/intellij/plugins/intelliLang/pattern/PatternAnnotationNotApplicable.java index 88fb7a1bd27b..b741b1a4afc0 100644 --- a/plugins/IntelliLang/java-support/org/intellij/plugins/intelliLang/pattern/PatternAnnotationNotApplicable.java +++ b/plugins/IntelliLang/java-support/org/intellij/plugins/intelliLang/pattern/PatternAnnotationNotApplicable.java @@ -40,7 +40,7 @@ public class PatternAnnotationNotApplicable extends LocalInspectionTool { @NotNull public String getGroupDisplayName() { - return InspectionProvider.PATTERN_VALIDATION; + return PatternValidator.PATTERN_VALIDATION; } @NotNull diff --git a/plugins/IntelliLang/java-support/org/intellij/plugins/intelliLang/pattern/PatternOverriddenByNonAnnotatedMethod.java b/plugins/IntelliLang/java-support/org/intellij/plugins/intelliLang/pattern/PatternOverriddenByNonAnnotatedMethod.java index 705c1df511ad..3ef2a18e76da 100644 --- a/plugins/IntelliLang/java-support/org/intellij/plugins/intelliLang/pattern/PatternOverriddenByNonAnnotatedMethod.java +++ b/plugins/IntelliLang/java-support/org/intellij/plugins/intelliLang/pattern/PatternOverriddenByNonAnnotatedMethod.java @@ -36,7 +36,7 @@ public class PatternOverriddenByNonAnnotatedMethod extends LocalInspectionTool { @NotNull public String getGroupDisplayName() { - return InspectionProvider.PATTERN_VALIDATION; + return PatternValidator.PATTERN_VALIDATION; } @NotNull diff --git a/plugins/IntelliLang/java-support/org/intellij/plugins/intelliLang/pattern/PatternValidator.java b/plugins/IntelliLang/java-support/org/intellij/plugins/intelliLang/pattern/PatternValidator.java index 43854a802f45..10bf61ad395b 100644 --- a/plugins/IntelliLang/java-support/org/intellij/plugins/intelliLang/pattern/PatternValidator.java +++ b/plugins/IntelliLang/java-support/org/intellij/plugins/intelliLang/pattern/PatternValidator.java @@ -58,6 +58,8 @@ import java.util.regex.PatternSyntaxException; */ public class PatternValidator extends LocalInspectionTool { private static final Key> COMPLIED_PATTERN = Key.create("COMPILED_PATTERN"); + public static final String PATTERN_VALIDATION = "Pattern Validation"; + public static final String LANGUAGE_INJECTION = "Language Injection"; public boolean CHECK_NON_CONSTANT_VALUES = true; @@ -73,7 +75,7 @@ public class PatternValidator extends LocalInspectionTool { @NotNull public String getGroupDisplayName() { - return InspectionProvider.PATTERN_VALIDATION; + return PATTERN_VALIDATION; } @NotNull diff --git a/plugins/IntelliLang/src/META-INF/intellilang-java-support.xml b/plugins/IntelliLang/src/META-INF/intellilang-java-support.xml index f31354799a4c..293aa2d8fa48 100644 --- a/plugins/IntelliLang/src/META-INF/intellilang-java-support.xml +++ b/plugins/IntelliLang/src/META-INF/intellilang-java-support.xml @@ -5,9 +5,23 @@ - - + + + + + + diff --git a/plugins/java-i18n/src/META-INF/plugin.xml b/plugins/java-i18n/src/META-INF/plugin.xml index 54653e1f7bc7..f4725603435d 100644 --- a/plugins/java-i18n/src/META-INF/plugin.xml +++ b/plugins/java-i18n/src/META-INF/plugin.xml @@ -20,7 +20,6 @@ - @@ -28,6 +27,25 @@ + + + + + + diff --git a/plugins/java-i18n/src/com/intellij/codeInspection/JavaInspectionToolProvider.java b/plugins/java-i18n/src/com/intellij/codeInspection/JavaInspectionToolProvider.java deleted file mode 100644 index 5c0aa23e5580..000000000000 --- a/plugins/java-i18n/src/com/intellij/codeInspection/JavaInspectionToolProvider.java +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright 2000-2009 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.intellij.codeInspection; - -import com.intellij.codeInspection.duplicateStringLiteral.DuplicateStringLiteralInspection; -import com.intellij.codeInspection.i18n.I18nInspection; -import com.intellij.codeInspection.i18n.InconsistentResourceBundleInspection; -import com.intellij.codeInspection.i18n.InvalidPropertyKeyInspection; -import com.intellij.lang.properties.UnusedMessageFormatParameterInspection; - -/** - * @author Maxim.Mossienko - */ -public class JavaInspectionToolProvider implements InspectionToolProvider { - public Class[] getInspectionClasses() { - return new Class[] { - I18nInspection.class, - InvalidPropertyKeyInspection.class, - InconsistentResourceBundleInspection.class, - UnusedMessageFormatParameterInspection.class, - DuplicateStringLiteralInspection.class - }; - } -}