FindBugs™ 1.3.9

edu.umd.cs.findbugs.ba.npe
Class TypeQualifierNullnessAnnotationDatabase

java.lang.Object
  extended by edu.umd.cs.findbugs.ba.npe.TypeQualifierNullnessAnnotationDatabase
All Implemented Interfaces:
INullnessAnnotationDatabase

public class TypeQualifierNullnessAnnotationDatabase
extends java.lang.Object
implements INullnessAnnotationDatabase

Implementation of INullnessAnnotationDatabase that is based on JSR-305 type qualifiers.

Author:
David Hovemeyer

Field Summary
 TypeQualifierValue nonnullTypeQualifierValue
           
 
Constructor Summary
TypeQualifierNullnessAnnotationDatabase()
           
 
Method Summary
 void addDefaultAnnotation(AnnotationDatabase.Target target, java.lang.String c, NullnessAnnotation n)
          Add a default annotation to the database.
 void addFieldAnnotation(java.lang.String cName, java.lang.String mName, java.lang.String mSig, boolean isStatic, NullnessAnnotation annotation)
          Add a field annotation to the database.
 void addMethodAnnotation(java.lang.String cName, java.lang.String mName, java.lang.String sig, boolean isStatic, NullnessAnnotation annotation)
          Add a method annotation to the database.
 void addMethodParameterAnnotation(java.lang.String cName, java.lang.String mName, java.lang.String sig, boolean isStatic, int param, NullnessAnnotation annotation)
          Add a method parameter annotation to the database.
 NullnessAnnotation getResolvedAnnotation(java.lang.Object o, boolean getMinimal)
          Get a resolved NullnessAnnotation on given XMethod, XField, or XMethodParameter.
 XMethod getXMethod(java.lang.String cName, java.lang.String mName, java.lang.String sig, boolean isStatic)
           
 void loadAuxiliaryAnnotations()
          Load "built-in" annotations that might not be evident from the analyzed/referenced code.
 boolean parameterMustBeNonNull(XMethod m, int param)
          Determine whether given parameter must be non-null.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

nonnullTypeQualifierValue

public final TypeQualifierValue nonnullTypeQualifierValue
Constructor Detail

TypeQualifierNullnessAnnotationDatabase

public TypeQualifierNullnessAnnotationDatabase()
Method Detail

getResolvedAnnotation

public NullnessAnnotation getResolvedAnnotation(java.lang.Object o,
                                                boolean getMinimal)
Description copied from interface: INullnessAnnotationDatabase
Get a resolved NullnessAnnotation on given XMethod, XField, or XMethodParameter.

Specified by:
getResolvedAnnotation in interface INullnessAnnotationDatabase
Parameters:
o - an XMethod, XField, or XMethodParameter
getMinimal - TODO: what does this mean?
Returns:
resolved NullnessAnnotation

parameterMustBeNonNull

public boolean parameterMustBeNonNull(XMethod m,
                                      int param)
Description copied from interface: INullnessAnnotationDatabase
Determine whether given parameter must be non-null.

Specified by:
parameterMustBeNonNull in interface INullnessAnnotationDatabase
Parameters:
m - a method
param - parameter (0 == first parameter)
Returns:
true if the parameter must be non-null, false otherwise

addDefaultAnnotation

public void addDefaultAnnotation(AnnotationDatabase.Target target,
                                 java.lang.String c,
                                 NullnessAnnotation n)
Description copied from interface: INullnessAnnotationDatabase
Add a default annotation to the database.

Specified by:
addDefaultAnnotation in interface INullnessAnnotationDatabase
Parameters:
target - one of AnnotationDatabase.METHOD, AnnotationDatabase.FIELD, AnnotationDatabase.PARAMETER, or AnnotationDatabase.ANY
c - dotted class name of class default annotation pertains to
n - the default NullnessAnnotation

addFieldAnnotation

public void addFieldAnnotation(java.lang.String cName,
                               java.lang.String mName,
                               java.lang.String mSig,
                               boolean isStatic,
                               NullnessAnnotation annotation)
Description copied from interface: INullnessAnnotationDatabase
Add a field annotation to the database.

Specified by:
addFieldAnnotation in interface INullnessAnnotationDatabase
Parameters:
cName - dotted class name
mName - field name
mSig - field signature
isStatic - true if field is static, false otherwise
annotation - NullnessAnnotation to add

getXMethod

@CheckForNull
public XMethod getXMethod(java.lang.String cName,
                                       java.lang.String mName,
                                       java.lang.String sig,
                                       boolean isStatic)

addMethodAnnotation

public void addMethodAnnotation(java.lang.String cName,
                                java.lang.String mName,
                                java.lang.String sig,
                                boolean isStatic,
                                NullnessAnnotation annotation)
Description copied from interface: INullnessAnnotationDatabase
Add a method annotation to the database.

Specified by:
addMethodAnnotation in interface INullnessAnnotationDatabase
Parameters:
cName - dotted class name
mName - method name
sig - method signature
isStatic - true if method is static, false otherwise
annotation - NullnessAnnotation to add

addMethodParameterAnnotation

public void addMethodParameterAnnotation(@DottedClassName
                                         java.lang.String cName,
                                         java.lang.String mName,
                                         java.lang.String sig,
                                         boolean isStatic,
                                         int param,
                                         NullnessAnnotation annotation)
Description copied from interface: INullnessAnnotationDatabase
Add a method parameter annotation to the database.

Specified by:
addMethodParameterAnnotation in interface INullnessAnnotationDatabase
Parameters:
cName - dotted class name
mName - method name
sig - method signature
isStatic - true if method is static, false otherwise
param - parameter (0 == first parameter)
annotation - the NullnessAnnotation to add

loadAuxiliaryAnnotations

public void loadAuxiliaryAnnotations()
Description copied from interface: INullnessAnnotationDatabase
Load "built-in" annotations that might not be evident from the analyzed/referenced code.

Specified by:
loadAuxiliaryAnnotations in interface INullnessAnnotationDatabase

FindBugs™ 1.3.9

FindBugs™ is licenced under the LGPL. Copyright © 2006 University of Maryland.