Class AnnotationDatabase<AnnotationEnum extends AnnotationEnumeration<AnnotationEnum>>
java.lang.Object
edu.umd.cs.findbugs.ba.AnnotationDatabase<AnnotationEnum>
- Direct Known Subclasses:
CheckReturnAnnotationDatabase, DefaultEncodingDetector.DefaultEncodingAnnotationDatabase, NullnessAnnotationDatabase
public class AnnotationDatabase<AnnotationEnum extends AnnotationEnumeration<AnnotationEnum>>
extends Object
Database to keep track of annotated fields/methods/classes/etc. for a
particular kind of annotation.
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescription(package private) boolean(package private) Map<Object, AnnotationEnum> (package private) Map<Object, AnnotationEnum> (package private) static final booleanprivate final Map<AnnotationDatabase.Target, Map<String, AnnotationEnum>> private final Map<Object, AnnotationEnum> static final booleanprivate final Set<AnnotationEnum> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddDefaultAnnotation(AnnotationDatabase.Target target, String c, AnnotationEnum n) protected voidaddDefaultMethodAnnotation(String cName, AnnotationEnum annotation) voidprotected voidaddFieldAnnotation(String cName, String mName, String mSig, boolean isStatic, AnnotationEnum annotation) protected voidaddMethodAnnotation(Class<?> clazz, String mName, String mSig, boolean isStatic, AnnotationEnum annotation) protected voidaddMethodAnnotation(String cName, String mName, String mSig, boolean isStatic, AnnotationEnum annotation) protected voidaddMethodParameterAnnotation(String cName, String mName, String mSig, boolean isStatic, int param, AnnotationEnum annotation) booleanbooleanprivate booleanclassDefinesMethod(org.apache.bcel.classfile.JavaClass c, XMethod m) getResolvedAnnotation(Object o, boolean getMinimal) getUncachedResolvedAnnotation(Object o, boolean getMinimal) voidprivate AnnotationEnumlookInOverriddenMethod(Object originalQuery, String classToLookIn, XMethod originalMethod, boolean getMinimal) private booleanonlyAppliesToReferenceParameters(AnnotationEnum annotation) booleansetAddClassOnly(boolean newValue)
-
Field Details
-
DEBUG
static final boolean DEBUG -
IGNORE_BUILTIN_ANNOTATIONS
public static final boolean IGNORE_BUILTIN_ANNOTATIONS -
directAnnotations
private final Map<Object, AnnotationEnum extends AnnotationEnumeration<AnnotationEnum>> directAnnotations -
defaultAnnotation
private final Map<AnnotationDatabase.Target, Map<String, AnnotationEnum extends AnnotationEnumeration<AnnotationEnum>>> defaultAnnotation -
seen
-
cachedMinimal
Map<Object, AnnotationEnum extends AnnotationEnumeration<AnnotationEnum>> cachedMinimal -
cachedMaximal
Map<Object, AnnotationEnum extends AnnotationEnumeration<AnnotationEnum>> cachedMaximal -
addClassOnly
boolean addClassOnly
-
-
Constructor Details
-
AnnotationDatabase
public AnnotationDatabase()
-
-
Method Details
-
loadAuxiliaryAnnotations
public void loadAuxiliaryAnnotations() -
addDirectAnnotation
-
addDefaultAnnotation
-
anyAnnotations
-
getResolvedAnnotation
-
annotationIsDirect
-
getUncachedResolvedAnnotation
-
getDirectAnnotation
-
classDefinesMethod
-
lookInOverriddenMethod
private AnnotationEnum lookInOverriddenMethod(Object originalQuery, String classToLookIn, XMethod originalMethod, boolean getMinimal) -
setAddClassOnly
public boolean setAddClassOnly(boolean newValue) -
addDefaultMethodAnnotation
-
addFieldAnnotation
protected void addFieldAnnotation(String cName, String mName, String mSig, boolean isStatic, AnnotationEnum annotation) -
addMethodAnnotation
protected void addMethodAnnotation(Class<?> clazz, String mName, String mSig, boolean isStatic, AnnotationEnum annotation) -
addMethodAnnotation
protected void addMethodAnnotation(@DottedClassName String cName, String mName, String mSig, boolean isStatic, AnnotationEnum annotation) -
onlyAppliesToReferenceParameters
-
addMethodParameterAnnotation
protected void addMethodParameterAnnotation(String cName, String mName, String mSig, boolean isStatic, int param, AnnotationEnum annotation)
-