Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
小 白蛋
Intellij Community
Commits
37570506
Commit
37570506
authored
10 years ago
by
Bas Leijdekkers
Browse files
Options
Download
Email Patches
Plain Diff
IG: Introduce shouldInspect(File) method
parent
9e5881e7
Branches unavailable
Tags unavailable
Changes
26
Hide whitespace changes
Inline
Side-by-side
Showing
20 changed files
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/BaseInspection.java
+15
-1
...ctionGadgetsAnalysis/src/com/siyeh/ig/BaseInspection.java
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/bugs/NullArgumentToVariableArgMethodInspection.java
+6
-11
...eh/ig/bugs/NullArgumentToVariableArgMethodInspection.java
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/bugs/PrimitiveArrayArgumentToVariableArgMethodInspection.java
+5
-10
.../PrimitiveArrayArgumentToVariableArgMethodInspection.java
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/classlayout/InterfaceMayBeAnnotatedFunctionalInspection.java
+5
-4
...sslayout/InterfaceMayBeAnnotatedFunctionalInspection.java
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/inheritance/ExtendsAnnotationInspection.java
+4
-10
...com/siyeh/ig/inheritance/ExtendsAnnotationInspection.java
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/inheritance/MissingOverrideAnnotationInspection.java
+5
-10
...h/ig/inheritance/MissingOverrideAnnotationInspection.java
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/inheritance/TypeParameterExtendsFinalClassInspection.java
+5
-10
...inheritance/TypeParameterExtendsFinalClassInspection.java
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/javadoc/HtmlTagCanBeJavadocTagInspection.java
+9
-12
...om/siyeh/ig/javadoc/HtmlTagCanBeJavadocTagInspection.java
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/javadoc/MissingDeprecatedAnnotationInspection.java
+5
-10
...yeh/ig/javadoc/MissingDeprecatedAnnotationInspection.java
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/jdk/AutoBoxingInspection.java
+2
-17
...tsAnalysis/src/com/siyeh/ig/jdk/AutoBoxingInspection.java
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/jdk/AutoUnboxingInspection.java
+8
-13
...Analysis/src/com/siyeh/ig/jdk/AutoUnboxingInspection.java
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/migration/BigDecimalLegacyMethodInspection.java
+6
-11
.../siyeh/ig/migration/BigDecimalLegacyMethodInspection.java
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/migration/CollectionsFieldAccessReplaceableByMethodCallInspection.java
+4
-9
...lectionsFieldAccessReplaceableByMethodCallInspection.java
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/migration/ForCanBeForeachInspectionBase.java
+5
-10
...com/siyeh/ig/migration/ForCanBeForeachInspectionBase.java
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/migration/IndexOfReplaceableByContainsInspection.java
+6
-11
.../ig/migration/IndexOfReplaceableByContainsInspection.java
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/migration/MethodCanBeVariableArityMethodInspection.java
+5
-10
...g/migration/MethodCanBeVariableArityMethodInspection.java
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/migration/RawUseOfParameterizedTypeInspection.java
+6
-11
...yeh/ig/migration/RawUseOfParameterizedTypeInspection.java
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/migration/StringBufferReplaceableByStringBuilderInspection.java
+2
-8
...ion/StringBufferReplaceableByStringBuilderInspection.java
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/migration/TryFinallyCanBeTryWithResourcesInspection.java
+6
-4
.../migration/TryFinallyCanBeTryWithResourcesInspection.java
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/migration/TryWithIdenticalCatchesInspection.java
+12
-10
...siyeh/ig/migration/TryWithIdenticalCatchesInspection.java
with
121 additions
and
192 deletions
+121
-192
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/BaseInspection.java
+
15
-
1
View file @
37570506
...
...
@@ -26,6 +26,7 @@ import com.intellij.openapi.util.text.StringUtil;
import
com.intellij.profile.codeInspection.InspectionProjectProfileManager
;
import
com.intellij.psi.PsiElement
;
import
com.intellij.psi.PsiElementVisitor
;
import
com.intellij.psi.PsiFile
;
import
com.intellij.ui.DocumentAdapter
;
import
com.intellij.util.ReflectionUtil
;
import
com.intellij.util.ui.UIUtil
;
...
...
@@ -95,8 +96,11 @@ public abstract class BaseInspection extends BaseJavaBatchLocalInspectionTool {
@Override
@NotNull
public
PsiElementVisitor
buildVisitor
(
@NotNull
ProblemsHolder
holder
,
public
final
PsiElementVisitor
buildVisitor
(
@NotNull
ProblemsHolder
holder
,
boolean
isOnTheFly
)
{
if
(!
shouldInspect
(
holder
.
getFile
()))
{
return
new
PsiElementVisitor
()
{
};
}
final
BaseInspectionVisitor
visitor
=
buildVisitor
();
visitor
.
setProblemsHolder
(
holder
);
visitor
.
setOnTheFly
(
isOnTheFly
);
...
...
@@ -104,6 +108,16 @@ public abstract class BaseInspection extends BaseJavaBatchLocalInspectionTool {
return
visitor
;
}
/**
* To check precondition(s) on the entire file, to prevent doing the check on every PsiElement visited.
* Useful for e.g. a {@link com.intellij.psi.util.PsiUtil#isLanguageLevel5OrHigher(com.intellij.psi.PsiElement)} check
* which will be the same for all elements in the specified file.
* When this method returns false, {@link #buildVisitor()} will not be called.
*/
public
boolean
shouldInspect
(
PsiFile
file
)
{
return
true
;
}
protected
JFormattedTextField
prepareNumberEditor
(
@NonNls
final
String
fieldName
)
{
final
NumberFormat
formatter
=
NumberFormat
.
getIntegerInstance
();
formatter
.
setParseIntegerOnly
(
true
);
...
...
This diff is collapsed.
Click to expand it.
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/bugs/NullArgumentToVariableArgMethodInspection.java
+
6
-
11
View file @
37570506
/*
* Copyright 2003-20
07
Dave Griffith, Bas Leijdekkers
* Copyright 2003-20
14
Dave Griffith, Bas Leijdekkers
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
...
...
@@ -15,7 +15,6 @@
*/
package
com.siyeh.ig.bugs
;
import
com.intellij.codeInspection.ProblemsHolder
;
import
com.intellij.psi.*
;
import
com.intellij.psi.util.PsiUtil
;
import
com.siyeh.InspectionGadgetsBundle
;
...
...
@@ -47,17 +46,13 @@ public class NullArgumentToVariableArgMethodInspection
}
@Override
public
BaseInspectionVisitor
buildVisitor
(
)
{
return
new
NullArgumentToVariableArgVisitor
(
);
public
boolean
shouldInspect
(
PsiFile
file
)
{
return
PsiUtil
.
isLanguageLevel5OrHigher
(
file
);
}
@NotNull
@Override
public
PsiElementVisitor
buildVisitor
(
@NotNull
ProblemsHolder
holder
,
boolean
isOnTheFly
)
{
if
(!
PsiUtil
.
isLanguageLevel5OrHigher
(
holder
.
getFile
()))
{
return
new
PsiElementVisitor
()
{
};
}
return
super
.
buildVisitor
(
holder
,
isOnTheFly
);
@Override
public
BaseInspectionVisitor
buildVisitor
()
{
return
new
NullArgumentToVariableArgVisitor
();
}
private
static
class
NullArgumentToVariableArgVisitor
...
...
This diff is collapsed.
Click to expand it.
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/bugs/PrimitiveArrayArgumentToVariableArgMethodInspection.java
+
5
-
10
View file @
37570506
...
...
@@ -16,7 +16,6 @@
package
com.siyeh.ig.bugs
;
import
com.intellij.codeInsight.AnnotationUtil
;
import
com.intellij.codeInspection.ProblemsHolder
;
import
com.intellij.psi.*
;
import
com.intellij.psi.util.PsiUtil
;
import
com.intellij.psi.util.TypeConversionUtil
;
...
...
@@ -47,17 +46,13 @@ public class PrimitiveArrayArgumentToVariableArgMethodInspection extends BaseIns
}
@Override
public
BaseInspectionVisitor
buildVisitor
(
)
{
return
new
PrimitiveArrayArgumentToVariableArgVisitor
(
);
public
boolean
shouldInspect
(
PsiFile
file
)
{
return
PsiUtil
.
isLanguageLevel5OrHigher
(
file
);
}
@NotNull
@Override
public
PsiElementVisitor
buildVisitor
(
@NotNull
ProblemsHolder
holder
,
boolean
isOnTheFly
)
{
if
(!
PsiUtil
.
isLanguageLevel5OrHigher
(
holder
.
getFile
()))
{
return
new
PsiElementVisitor
()
{
};
}
return
super
.
buildVisitor
(
holder
,
isOnTheFly
);
@Override
public
BaseInspectionVisitor
buildVisitor
()
{
return
new
PrimitiveArrayArgumentToVariableArgVisitor
();
}
private
static
class
PrimitiveArrayArgumentToVariableArgVisitor
extends
BaseInspectionVisitor
{
...
...
This diff is collapsed.
Click to expand it.
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/classlayout/InterfaceMayBeAnnotatedFunctionalInspection.java
+
5
-
4
View file @
37570506
...
...
@@ -48,12 +48,16 @@ public class InterfaceMayBeAnnotatedFunctionalInspection extends BaseInspection
return
InspectionGadgetsBundle
.
message
(
"interface.may.be.annotated.functional.problem.descriptor"
);
}
@Override
public
boolean
shouldInspect
(
PsiFile
file
)
{
return
PsiUtil
.
isLanguageLevel8OrHigher
(
file
);
}
@Nullable
@Override
protected
InspectionGadgetsFix
buildFix
(
Object
...
infos
)
{
final
PsiClass
aClass
=
(
PsiClass
)
infos
[
0
];
return
new
DelegatingFix
(
new
AddAnnotationPsiFix
(
CommonClassNames
.
JAVA_LANG_FUNCTIONAL_INTERFACE
,
aClass
,
PsiNameValuePair
.
EMPTY_ARRAY
));
}
@Override
...
...
@@ -65,9 +69,6 @@ public class InterfaceMayBeAnnotatedFunctionalInspection extends BaseInspection
@Override
public
void
visitClass
(
PsiClass
aClass
)
{
if
(!
PsiUtil
.
isLanguageLevel8OrHigher
(
aClass
))
{
return
;
}
super
.
visitClass
(
aClass
);
if
(!
aClass
.
isInterface
()
||
AnnotationUtil
.
isAnnotated
(
aClass
,
"java.lang.FunctionalInterface"
,
false
))
{
return
;
...
...
This diff is collapsed.
Click to expand it.
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/inheritance/ExtendsAnnotationInspection.java
+
4
-
10
View file @
37570506
...
...
@@ -15,7 +15,6 @@
*/
package
com.siyeh.ig.inheritance
;
import
com.intellij.codeInspection.ProblemsHolder
;
import
com.intellij.psi.*
;
import
com.intellij.psi.util.PsiUtil
;
import
com.siyeh.InspectionGadgetsBundle
;
...
...
@@ -53,18 +52,13 @@ public class ExtendsAnnotationInspection extends BaseInspection {
}
@Override
public
BaseInspectionVisitor
buildVisitor
(
)
{
return
new
ExtendsAnnotationVisitor
(
);
public
boolean
shouldInspect
(
PsiFile
file
)
{
return
PsiUtil
.
isLanguageLevel5OrHigher
(
file
);
}
@NotNull
@Override
public
PsiElementVisitor
buildVisitor
(
@NotNull
ProblemsHolder
holder
,
boolean
isOnTheFly
)
{
if
(!
PsiUtil
.
isLanguageLevel5OrHigher
(
holder
.
getFile
()))
{
return
new
PsiElementVisitor
()
{
};
}
return
super
.
buildVisitor
(
holder
,
isOnTheFly
);
public
BaseInspectionVisitor
buildVisitor
()
{
return
new
ExtendsAnnotationVisitor
();
}
private
static
class
ExtendsAnnotationVisitor
...
...
This diff is collapsed.
Click to expand it.
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/inheritance/MissingOverrideAnnotationInspection.java
+
5
-
10
View file @
37570506
...
...
@@ -16,7 +16,6 @@
package
com.siyeh.ig.inheritance
;
import
com.intellij.codeInspection.ProblemDescriptor
;
import
com.intellij.codeInspection.ProblemsHolder
;
import
com.intellij.codeInspection.ui.MultipleCheckboxOptionsPanel
;
import
com.intellij.openapi.project.Project
;
import
com.intellij.psi.*
;
...
...
@@ -121,19 +120,15 @@ public class MissingOverrideAnnotationInspection extends BaseInspection {
}
@Override
public
BaseInspectionVisitor
buildVisitor
(
)
{
return
new
MissingOverrideAnnotationVisitor
(
);
public
boolean
shouldInspect
(
PsiFile
file
)
{
return
PsiUtil
.
isLanguageLevel5OrHigher
(
file
);
}
@NotNull
@Override
public
PsiElementVisitor
buildVisitor
(
@NotNull
ProblemsHolder
holder
,
boolean
isOnTheFly
)
{
if
(!
PsiUtil
.
isLanguageLevel5OrHigher
(
holder
.
getFile
()))
{
return
new
PsiElementVisitor
()
{
};
}
return
super
.
buildVisitor
(
holder
,
isOnTheFly
);
public
BaseInspectionVisitor
buildVisitor
()
{
return
new
MissingOverrideAnnotationVisitor
();
}
private
class
MissingOverrideAnnotationVisitor
extends
BaseInspectionVisitor
{
...
...
This diff is collapsed.
Click to expand it.
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/inheritance/TypeParameterExtendsFinalClassInspection.java
+
5
-
10
View file @
37570506
...
...
@@ -17,7 +17,6 @@ package com.siyeh.ig.inheritance;
import
com.intellij.codeInsight.daemon.impl.analysis.JavaGenericsUtil
;
import
com.intellij.codeInspection.ProblemDescriptor
;
import
com.intellij.codeInspection.ProblemsHolder
;
import
com.intellij.openapi.project.Project
;
import
com.intellij.psi.*
;
import
com.intellij.psi.search.searches.ReferencesSearch
;
...
...
@@ -110,17 +109,13 @@ public class TypeParameterExtendsFinalClassInspection extends BaseInspection {
}
@Override
public
BaseInspectionVisitor
buildVisitor
(
)
{
return
new
TypeParameterExtendsFinalClassVisitor
(
);
public
boolean
shouldInspect
(
PsiFile
file
)
{
return
PsiUtil
.
isLanguageLevel5OrHigher
(
file
);
}
@NotNull
@Override
public
PsiElementVisitor
buildVisitor
(
@NotNull
ProblemsHolder
holder
,
boolean
isOnTheFly
)
{
if
(!
PsiUtil
.
isLanguageLevel5OrHigher
(
holder
.
getFile
()))
{
return
new
PsiElementVisitor
()
{
};
}
return
super
.
buildVisitor
(
holder
,
isOnTheFly
);
@Override
public
BaseInspectionVisitor
buildVisitor
()
{
return
new
TypeParameterExtendsFinalClassVisitor
();
}
private
static
class
TypeParameterExtendsFinalClassVisitor
extends
BaseInspectionVisitor
{
...
...
This diff is collapsed.
Click to expand it.
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/javadoc/HtmlTagCanBeJavadocTagInspection.java
+
9
-
12
View file @
37570506
/*
* Copyright 2011-201
3
Bas Leijdekkers
* Copyright 2011-201
4
Bas Leijdekkers
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
...
...
@@ -16,11 +16,13 @@
package
com.siyeh.ig.javadoc
;
import
com.intellij.codeInspection.ProblemDescriptor
;
import
com.intellij.codeInspection.ProblemsHolder
;
import
com.intellij.openapi.editor.Document
;
import
com.intellij.openapi.project.Project
;
import
com.intellij.openapi.util.TextRange
;
import
com.intellij.psi.*
;
import
com.intellij.psi.JavaDocTokenType
;
import
com.intellij.psi.PsiDocumentManager
;
import
com.intellij.psi.PsiElement
;
import
com.intellij.psi.PsiFile
;
import
com.intellij.psi.javadoc.PsiDocToken
;
import
com.intellij.psi.tree.IElementType
;
import
com.intellij.psi.util.PsiTreeUtil
;
...
...
@@ -122,18 +124,13 @@ public class HtmlTagCanBeJavadocTagInspection extends BaseInspection {
}
@Override
public
BaseInspectionVisitor
buildVisitor
(
)
{
return
new
HtmlTagCanBeJavaDocTagVisitor
(
);
public
boolean
shouldInspect
(
PsiFile
file
)
{
return
PsiUtil
.
isLanguageLevel5OrHigher
(
file
);
}
@NotNull
@Override
public
PsiElementVisitor
buildVisitor
(
@NotNull
ProblemsHolder
holder
,
boolean
isOnTheFly
)
{
if
(!
PsiUtil
.
isLanguageLevel5OrHigher
(
holder
.
getFile
()))
{
return
new
PsiElementVisitor
()
{
};
}
return
super
.
buildVisitor
(
holder
,
isOnTheFly
);
public
BaseInspectionVisitor
buildVisitor
()
{
return
new
HtmlTagCanBeJavaDocTagVisitor
();
}
private
static
class
HtmlTagCanBeJavaDocTagVisitor
extends
BaseInspectionVisitor
{
...
...
This diff is collapsed.
Click to expand it.
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/javadoc/MissingDeprecatedAnnotationInspection.java
+
5
-
10
View file @
37570506
...
...
@@ -16,7 +16,6 @@
package
com.siyeh.ig.javadoc
;
import
com.intellij.codeInspection.ProblemDescriptor
;
import
com.intellij.codeInspection.ProblemsHolder
;
import
com.intellij.codeInspection.ui.SingleCheckboxOptionsPanel
;
import
com.intellij.openapi.project.Project
;
import
com.intellij.psi.*
;
...
...
@@ -104,17 +103,13 @@ public class MissingDeprecatedAnnotationInspection extends BaseInspection {
}
@Override
public
BaseInspectionVisitor
buildVisitor
(
)
{
return
new
MissingDeprecatedAnnotationVisitor
(
);
public
boolean
shouldInspect
(
PsiFile
file
)
{
return
PsiUtil
.
isLanguageLevel5OrHigher
(
file
);
}
@NotNull
@Override
public
PsiElementVisitor
buildVisitor
(
@NotNull
ProblemsHolder
holder
,
boolean
isOnTheFly
)
{
if
(!
PsiUtil
.
isLanguageLevel5OrHigher
(
holder
.
getFile
()))
{
return
new
PsiElementVisitor
()
{
};
}
return
super
.
buildVisitor
(
holder
,
isOnTheFly
);
@Override
public
BaseInspectionVisitor
buildVisitor
()
{
return
new
MissingDeprecatedAnnotationVisitor
();
}
private
class
MissingDeprecatedAnnotationVisitor
extends
BaseInspectionVisitor
{
...
...
This diff is collapsed.
Click to expand it.
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/jdk/AutoBoxingInspection.java
+
2
-
17
View file @
37570506
...
...
@@ -17,9 +17,7 @@ package com.siyeh.ig.jdk;
import
com.intellij.codeInsight.AnnotationUtil
;
import
com.intellij.codeInspection.ProblemDescriptor
;
import
com.intellij.codeInspection.ProblemsHolder
;
import
com.intellij.codeInspection.ui.SingleCheckboxOptionsPanel
;
import
com.intellij.lang.java.JavaLanguage
;
import
com.intellij.openapi.project.Project
;
import
com.intellij.psi.*
;
import
com.intellij.psi.util.PsiUtil
;
...
...
@@ -90,14 +88,9 @@ public class AutoBoxingInspection extends BaseInspection {
"ignoreAddedToCollection"
);
}
@NotNull
@Override
public
PsiElementVisitor
buildVisitor
(
@NotNull
ProblemsHolder
holder
,
boolean
isOnTheFly
)
{
if
(!
PsiUtil
.
isLanguageLevel5OrHigher
(
holder
.
getFile
()))
{
return
new
PsiElementVisitor
()
{
};
}
return
super
.
buildVisitor
(
holder
,
isOnTheFly
);
public
boolean
shouldInspect
(
PsiFile
file
)
{
return
PsiUtil
.
isLanguageLevel5OrHigher
(
file
);
}
@Override
...
...
@@ -228,14 +221,6 @@ public class AutoBoxingInspection extends BaseInspection {
private
class
AutoBoxingVisitor
extends
BaseInspectionVisitor
{
@Override
public
void
visitElement
(
PsiElement
element
)
{
if
(
element
.
getLanguage
()
!=
JavaLanguage
.
INSTANCE
)
{
return
;
}
super
.
visitElement
(
element
);
}
@Override
public
void
visitArrayAccessExpression
(
PsiArrayAccessExpression
expression
)
{
super
.
visitArrayAccessExpression
(
expression
);
...
...
This diff is collapsed.
Click to expand it.
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/jdk/AutoUnboxingInspection.java
+
8
-
13
View file @
37570506
...
...
@@ -17,8 +17,6 @@ package com.siyeh.ig.jdk;
import
com.intellij.codeInsight.AnnotationUtil
;
import
com.intellij.codeInspection.ProblemDescriptor
;
import
com.intellij.codeInspection.ProblemsHolder
;
import
com.intellij.lang.java.JavaLanguage
;
import
com.intellij.openapi.project.Project
;
import
com.intellij.psi.*
;
import
com.intellij.psi.search.LocalSearchScope
;
...
...
@@ -39,7 +37,10 @@ import org.jetbrains.annotations.NonNls;
import
org.jetbrains.annotations.NotNull
;
import
org.jetbrains.annotations.Nullable
;
import
java.util.*
;
import
java.util.Collection
;
import
java.util.Collections
;
import
java.util.HashMap
;
import
java.util.Map
;
public
class
AutoUnboxingInspection
extends
BaseInspection
{
...
...
@@ -298,19 +299,13 @@ public class AutoUnboxingInspection extends BaseInspection {
}
@Override
public
BaseInspectionVisitor
buildVisitor
(
)
{
return
new
AutoUnboxingVisitor
(
);
public
boolean
shouldInspect
(
PsiFile
file
)
{
return
PsiUtil
.
isLanguageLevel5OrHigher
(
file
);
}
@NotNull
@Override
public
PsiElementVisitor
buildVisitor
(
@NotNull
ProblemsHolder
holder
,
boolean
isOnTheFly
)
{
PsiFile
psiFile
=
holder
.
getFile
();
if
(
psiFile
.
getLanguage
()
!=
JavaLanguage
.
INSTANCE
||
!
PsiUtil
.
isLanguageLevel5OrHigher
(
psiFile
))
{
return
new
PsiElementVisitor
()
{
};
}
return
super
.
buildVisitor
(
holder
,
isOnTheFly
);
public
BaseInspectionVisitor
buildVisitor
()
{
return
new
AutoUnboxingVisitor
();
}
private
static
class
AutoUnboxingVisitor
extends
BaseInspectionVisitor
{
...
...
This diff is collapsed.
Click to expand it.
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/migration/BigDecimalLegacyMethodInspection.java
+
6
-
11
View file @
37570506
...
...
@@ -16,7 +16,6 @@
package
com.siyeh.ig.migration
;
import
com.intellij.codeInspection.ProblemDescriptor
;
import
com.intellij.codeInspection.ProblemsHolder
;
import
com.intellij.openapi.project.Project
;
import
com.intellij.psi.*
;
import
com.intellij.psi.util.PsiUtil
;
...
...
@@ -58,7 +57,7 @@ public class BigDecimalLegacyMethodInspection extends BaseInspection {
if
(!(
value
instanceof
Integer
))
{
return
null
;
}
final
int
roundingMode
=
(
Integer
)
value
;
final
int
roundingMode
=
(
(
Integer
)
value
).
intValue
()
;
if
(
roundingMode
<
0
||
roundingMode
>
7
)
{
return
null
;
}
...
...
@@ -128,19 +127,15 @@ public class BigDecimalLegacyMethodInspection extends BaseInspection {
}
@Override
public
BaseInspectionVisitor
buildVisitor
(
)
{
return
new
BigDecimalLegacyMethodVisitor
(
);
public
boolean
shouldInspect
(
PsiFile
file
)
{
return
PsiUtil
.
isLanguageLevel5OrHigher
(
file
);
}
@NotNull
@Override
public
PsiElementVisitor
buildVisitor
(
@NotNull
ProblemsHolder
holder
,
boolean
isOnTheFly
)
{
if
(!
PsiUtil
.
isLanguageLevel5OrHigher
(
holder
.
getFile
()))
{
return
new
PsiElementVisitor
()
{
};
}
return
super
.
buildVisitor
(
holder
,
isOnTheFly
);
public
BaseInspectionVisitor
buildVisitor
()
{
return
new
BigDecimalLegacyMethodVisitor
();
}
private
static
class
BigDecimalLegacyMethodVisitor
extends
BaseInspectionVisitor
{
@Override
...
...
This diff is collapsed.
Click to expand it.
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/migration/CollectionsFieldAccessReplaceableByMethodCallInspection.java
+
4
-
9
View file @
37570506
/*
* Copyright 2008-201
1
Bas Leijdekkers
* Copyright 2008-201
4
Bas Leijdekkers
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
...
...
@@ -16,7 +16,6 @@
package
com.siyeh.ig.migration
;
import
com.intellij.codeInspection.ProblemDescriptor
;
import
com.intellij.codeInspection.ProblemsHolder
;
import
com.intellij.openapi.project.Project
;
import
com.intellij.openapi.util.text.StringUtil
;
import
com.intellij.psi.*
;
...
...
@@ -182,15 +181,11 @@ public class CollectionsFieldAccessReplaceableByMethodCallInspection
return
new
CollectionsFieldAccessReplaceableByMethodCallVisitor
();
}
@NotNull
@Override
public
PsiElementVisitor
buildVisitor
(
@NotNull
ProblemsHolder
holder
,
boolean
isOnTheFly
)
{
if
(!
PsiUtil
.
isLanguageLevel5OrHigher
(
holder
.
getFile
()))
{
return
new
PsiElementVisitor
()
{
};
}
return
super
.
buildVisitor
(
holder
,
isOnTheFly
);
public
boolean
shouldInspect
(
PsiFile
file
)
{
return
PsiUtil
.
isLanguageLevel5OrHigher
(
file
);
}
private
static
class
CollectionsFieldAccessReplaceableByMethodCallVisitor
extends
BaseInspectionVisitor
{
...
...
This diff is collapsed.
Click to expand it.
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/migration/ForCanBeForeachInspectionBase.java
+
5
-
10
View file @
37570506
...
...
@@ -15,7 +15,6 @@
*/
package
com.siyeh.ig.migration
;
import
com.intellij.codeInspection.ProblemsHolder
;
import
com.intellij.psi.*
;
import
com.intellij.psi.tree.IElementType
;
import
com.intellij.psi.util.InheritanceUtil
;
...
...
@@ -568,17 +567,13 @@ public class ForCanBeForeachInspectionBase extends BaseInspection {
}
@Override
public
BaseInspectionVisitor
buildVisitor
(
)
{
return
new
ForCanBeForeachVisitor
(
);
public
boolean
shouldInspect
(
PsiFile
file
)
{
return
PsiUtil
.
isLanguageLevel5OrHigher
(
file
);
}
@NotNull
@Override
public
PsiElementVisitor
buildVisitor
(
@NotNull
ProblemsHolder
holder
,
boolean
isOnTheFly
)
{
if
(!
PsiUtil
.
isLanguageLevel5OrHigher
(
holder
.
getFile
()))
{
return
new
PsiElementVisitor
()
{
};
}
return
super
.
buildVisitor
(
holder
,
isOnTheFly
);
@Override
public
BaseInspectionVisitor
buildVisitor
()
{
return
new
ForCanBeForeachVisitor
();
}
private
static
class
NumCallsToIteratorNextVisitor
...
...
This diff is collapsed.
Click to expand it.
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/migration/IndexOfReplaceableByContainsInspection.java
+
6
-
11
View file @
37570506
/*
* Copyright 2005-201
1
Bas Leijdekkers
* Copyright 2005-201
4
Bas Leijdekkers
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
...
...
@@ -17,7 +17,6 @@
package
com.siyeh.ig.migration
;
import
com.intellij.codeInspection.ProblemDescriptor
;
import
com.intellij.codeInspection.ProblemsHolder
;
import
com.intellij.openapi.project.Project
;
import
com.intellij.psi.*
;
import
com.intellij.psi.tree.IElementType
;
...
...
@@ -162,17 +161,13 @@ public class IndexOfReplaceableByContainsInspection
}
@Override
public
BaseInspectionVisitor
buildVisitor
(
)
{
return
new
IndexOfReplaceableByContainsVisitor
(
);
public
boolean
shouldInspect
(
PsiFile
file
)
{
return
PsiUtil
.
isLanguageLevel5OrHigher
(
file
);
}
@NotNull
@Override
public
PsiElementVisitor
buildVisitor
(
@NotNull
ProblemsHolder
holder
,
boolean
isOnTheFly
)
{
if
(!
PsiUtil
.
isLanguageLevel5OrHigher
(
holder
.
getFile
()))
{
return
new
PsiElementVisitor
()
{
};
}
return
super
.
buildVisitor
(
holder
,
isOnTheFly
);
@Override
public
BaseInspectionVisitor
buildVisitor
()
{
return
new
IndexOfReplaceableByContainsVisitor
();
}
private
static
class
IndexOfReplaceableByContainsVisitor
...
...
This diff is collapsed.
Click to expand it.
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/migration/MethodCanBeVariableArityMethodInspection.java
+
5
-
10
View file @
37570506
...
...
@@ -16,7 +16,6 @@
package
com.siyeh.ig.migration
;
import
com.intellij.codeInsight.NullableNotNullManager
;
import
com.intellij.codeInspection.ProblemsHolder
;
import
com.intellij.codeInspection.ui.MultipleCheckboxOptionsPanel
;
import
com.intellij.openapi.util.InvalidDataException
;
import
com.intellij.openapi.util.WriteExternalException
;
...
...
@@ -98,19 +97,15 @@ public class MethodCanBeVariableArityMethodInspection extends BaseInspection {
}
@Override
public
BaseInspectionVisitor
buildVisitor
(
)
{
return
new
MethodCanBeVariableArityMethodVisitor
(
);
public
boolean
shouldInspect
(
PsiFile
file
)
{
return
PsiUtil
.
isLanguageLevel5OrHigher
(
file
);
}
@NotNull
@Override
public
PsiElementVisitor
buildVisitor
(
@NotNull
ProblemsHolder
holder
,
boolean
isOnTheFly
)
{
if
(!
PsiUtil
.
isLanguageLevel5OrHigher
(
holder
.
getFile
()))
{
return
new
PsiElementVisitor
()
{
};
}
return
super
.
buildVisitor
(
holder
,
isOnTheFly
);
public
BaseInspectionVisitor
buildVisitor
()
{
return
new
MethodCanBeVariableArityMethodVisitor
();
}
private
class
MethodCanBeVariableArityMethodVisitor
extends
BaseInspectionVisitor
{
@Override
...
...
This diff is collapsed.
Click to expand it.
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/migration/RawUseOfParameterizedTypeInspection.java
+
6
-
11
View file @
37570506
/*
* Copyright 2003-201
3
Dave Griffith, Bas Leijdekkers
* Copyright 2003-201
4
Dave Griffith, Bas Leijdekkers
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
...
...
@@ -15,7 +15,6 @@
*/
package
com.siyeh.ig.migration
;
import
com.intellij.codeInspection.ProblemsHolder
;
import
com.intellij.codeInspection.ui.MultipleCheckboxOptionsPanel
;
import
com.intellij.psi.*
;
import
com.intellij.psi.util.PsiTreeUtil
;
...
...
@@ -72,17 +71,13 @@ public class RawUseOfParameterizedTypeInspection extends BaseInspection {
}
@Override
public
BaseInspectionVisitor
buildVisitor
(
)
{
return
new
RawUseOfParameterizedTypeVisitor
(
);
public
boolean
shouldInspect
(
PsiFile
file
)
{
return
PsiUtil
.
isLanguageLevel5OrHigher
(
file
);
}
@NotNull
@Override
public
PsiElementVisitor
buildVisitor
(
@NotNull
ProblemsHolder
holder
,
boolean
isOnTheFly
)
{
if
(!
PsiUtil
.
isLanguageLevel5OrHigher
(
holder
.
getFile
()))
{
return
new
PsiElementVisitor
()
{
};
}
return
super
.
buildVisitor
(
holder
,
isOnTheFly
);
@Override
public
BaseInspectionVisitor
buildVisitor
()
{
return
new
RawUseOfParameterizedTypeVisitor
();
}
private
class
RawUseOfParameterizedTypeVisitor
extends
BaseInspectionVisitor
{
...
...
This diff is collapsed.
Click to expand it.
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/migration/StringBufferReplaceableByStringBuilderInspection.java
+
2
-
8
View file @
37570506
...
...
@@ -16,7 +16,6 @@
package
com.siyeh.ig.migration
;
import
com.intellij.codeInspection.ProblemDescriptor
;
import
com.intellij.codeInspection.ProblemsHolder
;
import
com.intellij.openapi.project.Project
;
import
com.intellij.psi.*
;
import
com.intellij.psi.util.PsiTreeUtil
;
...
...
@@ -151,14 +150,9 @@ public class StringBufferReplaceableByStringBuilderInspection extends BaseInspec
return
new
StringBufferReplaceableByStringBuilderVisitor
();
}
@NotNull
@Override
public
PsiElementVisitor
buildVisitor
(
@NotNull
ProblemsHolder
holder
,
boolean
isOnTheFly
)
{
if
(!
PsiUtil
.
isLanguageLevel5OrHigher
(
holder
.
getFile
()))
{
return
new
PsiElementVisitor
()
{
};
}
return
super
.
buildVisitor
(
holder
,
isOnTheFly
);
public
boolean
shouldInspect
(
PsiFile
file
)
{
return
PsiUtil
.
isLanguageLevel5OrHigher
(
file
);
}
private
static
class
StringBufferReplaceableByStringBuilderVisitor
extends
BaseInspectionVisitor
{
...
...
This diff is collapsed.
Click to expand it.
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/migration/TryFinallyCanBeTryWithResourcesInspection.java
+
6
-
4
View file @
37570506
/*
* Copyright 2000-201
3
JetBrains s.r.o.
* Copyright 2000-201
4
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.
...
...
@@ -296,6 +296,11 @@ public class TryFinallyCanBeTryWithResourcesInspection extends BaseInspection {
}
}
@Override
public
boolean
shouldInspect
(
PsiFile
file
)
{
return
PsiUtil
.
isLanguageLevel7OrHigher
(
file
);
}
@Override
public
BaseInspectionVisitor
buildVisitor
()
{
return
new
TryFinallyCanBeTryWithResourcesVisitor
();
...
...
@@ -306,9 +311,6 @@ public class TryFinallyCanBeTryWithResourcesInspection extends BaseInspection {
@Override
public
void
visitTryStatement
(
PsiTryStatement
tryStatement
)
{
super
.
visitTryStatement
(
tryStatement
);
if
(!
PsiUtil
.
isLanguageLevel7OrHigher
(
tryStatement
))
{
return
;
}
final
PsiResourceList
resourceList
=
tryStatement
.
getResourceList
();
if
(
resourceList
!=
null
)
{
return
;
...
...
This diff is collapsed.
Click to expand it.
plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/migration/TryWithIdenticalCatchesInspection.java
+
12
-
10
View file @
37570506
...
...
@@ -53,11 +53,6 @@ public class TryWithIdenticalCatchesInspection extends BaseInspection {
return
InspectionGadgetsBundle
.
message
(
"try.with.identical.catches.problem.descriptor"
,
type
.
getPresentableText
());
}
@Override
public
BaseInspectionVisitor
buildVisitor
()
{
return
new
TryWithIdenticalCatchesVisitor
();
}
@Nls
@NotNull
@Override
...
...
@@ -66,8 +61,13 @@ public class TryWithIdenticalCatchesInspection extends BaseInspection {
}
@Override
protected
InspectionGadgetsFix
buildFix
(
Object
...
infos
)
{
return
new
CollapseCatchSectionsFix
(((
Integer
)
infos
[
1
]).
intValue
(),
((
Integer
)
infos
[
2
]).
intValue
());
public
boolean
shouldInspect
(
PsiFile
file
)
{
return
PsiUtil
.
isLanguageLevel7OrHigher
(
file
);
}
@Override
public
BaseInspectionVisitor
buildVisitor
()
{
return
new
TryWithIdenticalCatchesVisitor
();
}
private
static
class
TryWithIdenticalCatchesVisitor
extends
BaseInspectionVisitor
{
...
...
@@ -75,9 +75,6 @@ public class TryWithIdenticalCatchesInspection extends BaseInspection {
@Override
public
void
visitTryStatement
(
PsiTryStatement
statement
)
{
super
.
visitTryStatement
(
statement
);
if
(!
PsiUtil
.
isLanguageLevel7OrHigher
(
statement
))
{
return
;
}
final
PsiCatchSection
[]
catchSections
=
statement
.
getCatchSections
();
if
(
catchSections
.
length
<
2
)
{
return
;
...
...
@@ -158,6 +155,11 @@ public class TryWithIdenticalCatchesInspection extends BaseInspection {
}
}
@Override
protected
InspectionGadgetsFix
buildFix
(
Object
...
infos
)
{
return
new
CollapseCatchSectionsFix
(((
Integer
)
infos
[
1
]).
intValue
(),
((
Integer
)
infos
[
2
]).
intValue
());
}
private
static
class
CollapseCatchSectionsFix
extends
InspectionGadgetsFix
{
private
final
int
myCollapseIntoIndex
;
...
...
This diff is collapsed.
Click to expand it.
Prev
1
2
Next
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment
Menu
Projects
Groups
Snippets
Help