edu.umd.cs.findbugs
Interface Detector

All Known Implementing Classes:
BadAppletConstructor, BadlyOverriddenAdapter, BadResultSetAccess, BCPDoubleCheck, BCPMethodReturnCheck, ByteCodePatternDetector, BytecodeScanningDetector, CloneIdiom, DontCatchIllegalMonitorStateException, DroppedException, DumbMethods, EmptyZipFileEntry, EqStringTest, FindBugsSummaryStats, FindDeadLocalStores, FindDoubleCheck, FindFieldSelfAssignment, FindFinalizeInvocations, FindFloatMath, FindHEmismatch, FindInconsistentSync2, FindJSR166LockMonitorenter, FindLocalSelfAssignment, FindMaskedFields, FindMismatchedWaitOrNotify, FindNakedNotify, FindNonShortCircuit, FindNullDeref, FindOpenStream, FindRefComparison, FindReturnRef, FindRunInvocations, FindSpinLoop, FindTwoLockWait, FindUncalledPrivateMethods, FindUnconditionalWait, FindUninitializedGet, FindUnreleasedLock, FindUnsyncGet, FindUselessControlFlow, IncompatMask, InefficientToArray, InfiniteRecursiveLoop, InheritanceUnsafeGetResource, InitializationChain, InstantiateStaticClass, InvalidJUnitTest, IteratorIdioms, LazyInit, LockedFields, MutableLock, MutableStaticFields, Naming, NoteCheckReturnValue, NoteSuppressedWarnings, PreferZeroLengthArrays, ReadReturnShouldBeChecked, ResourceTrackingDetector, RuntimeExceptionCapture, SerializableIdiom, StartInConstructor, StringConcatenation, SuperfluousInstanceOf, SuspiciousThreadInterrupted, SwitchFallthrough, TestingGround, UnreadFields, UseObjectEquals, VolatileUsage, WaitInLoop, WrongMapIterator

public interface Detector

The interface which all bug pattern detectors must implement.


Field Summary
static int EXP_PRIORITY
          Experimental priority for bug instances.
static int HIGH_PRIORITY
          High priority for bug instances.
static int LOW_PRIORITY
          Low priority for bug instances.
static int NORMAL_PRIORITY
          Normal priority for bug instances.
 
Method Summary
 void report()
          This method is called after all classes to be visited.
 void setAnalysisContext(AnalysisContext analysisContext)
          Set the AnalysisContext that will be used.
 void visitClassContext(ClassContext classContext)
          Visit the ClassContext for a class which should be analyzed for instances of bug patterns.
 

Field Detail

EXP_PRIORITY

static final int EXP_PRIORITY
Experimental priority for bug instances.

See Also:
Constant Field Values

LOW_PRIORITY

static final int LOW_PRIORITY
Low priority for bug instances.

See Also:
Constant Field Values

NORMAL_PRIORITY

static final int NORMAL_PRIORITY
Normal priority for bug instances.

See Also:
Constant Field Values

HIGH_PRIORITY

static final int HIGH_PRIORITY
High priority for bug instances.

See Also:
Constant Field Values
Method Detail

setAnalysisContext

void setAnalysisContext(AnalysisContext analysisContext)
Set the AnalysisContext that will be used. This is called before visitClassContext() is called on any class to be analyzed.

Parameters:
analysisContext - the AnalysisContext

visitClassContext

void visitClassContext(ClassContext classContext)
Visit the ClassContext for a class which should be analyzed for instances of bug patterns.

Parameters:
classContext - the ClassContext

report

void report()
This method is called after all classes to be visited. It should be used by any detectors which accumulate information over all visited classes to generate results.