Class Summary |
Analyze | |
AnyMethodReturnValueStreamFactory |
Factory for stream objects of a particular
base class type returned by any method.
|
AtomicityProblem |
if we get from a ConcurrentHashMap and assign to a variable...
and don't do anything else
and perform a null check on it...
and then do a set on it... (or anything else inside the if that modifies it?)
|
BadAppletConstructor | |
BadCastWarningProperty |
Warning property for bad cast warnings.
|
BadlyOverriddenAdapter | |
BadResultSetAccess | |
BadSyntaxForRegularExpression | |
BadUseOfReturnValue | |
BuildCheckReturnAnnotationDatabase |
Scan application classes for
CheckReturnValue annotations.
|
BuildNonnullReturnDatabase |
Build database of methods that return values guaranteed to be nonnull
|
BuildNonNullAnnotationDatabase |
Scan application classes for
NonNull annotations.
|
BuildUnconditionalParamDerefDatabase |
Build database of unconditionally dereferenced parameters.
|
CalledMethods |
Detector to find private methods that are never called. |
CheckCalls |
This is just for debugging method call resolution.
|
CheckImmutableAnnotation | |
CloneIdiom | |
ComparatorIdiom | |
ConfusedInheritance | |
ConfusionBetweenInheritedAndOuterMethod | |
DeadLocalStoreProperty |
Warning property for FindDeadLocalStores.
|
DoInsideDoPrivileged | |
DontCatchIllegalMonitorStateException | |
DontUseEnum | |
DoomedCodeWarningProperty |
A WarningProperty for warnings that are reported at a "doomed" Location;
one that cannot return normally.
|
DroppedException | |
DumbMethodInvocations | |
DumbMethods | |
DuplicateBranches | |
EmptyZipFileEntry | |
EqStringTest | |
FinalizerNullsFields | |
FindBadCast | |
FindBadCast2 | |
FindBadEqualsImplementation |
Find equals(Object) methods that unconditionally dereference the parameter,
rather than returning false if it's null.
|
FindBadForLoop | |
FindBugsSummaryStats | |
FindCircularDependencies | |
FindDeadLocalStores |
Find dead stores to local variables.
|
FindDoubleCheck | |
FindEmptySynchronizedBlock | |
FindFieldSelfAssignment | |
FindFinalizeInvocations | |
FindFloatEquality | |
FindFloatMath | |
FindHEmismatch | |
FindInconsistentSync2 |
Find instance fields which are sometimes accessed (read or written)
with the receiver lock held and sometimes without.
|
FindJSR166LockMonitorenter |
Find places where ordinary (balanced) synchronization is performed
on JSR166 Lock objects. |
FindLocalSelfAssignment2 | |
FindMaskedFields | |
FindMismatchedWaitOrNotify | |
FindNakedNotify | |
FindNonSerializableStoreIntoSession | |
FindNonSerializableValuePassedToWriteObject | |
FindNonShortCircuit | |
FindNullDeref |
A Detector to find instructions where a NullPointerException might be raised.
|
FindOpenStream |
A Detector to look for streams that are opened in a method,
do not escape the method, and are not closed on all paths
out of the method. |
FindPuzzlers | |
FindRefComparison |
Find suspicious reference comparisons.
|
FindReturnRef | |
FindRunInvocations | |
FindSelfComparison | |
FindSelfComparison2 | |
FindSleepWithLockHeld |
Find calls to Thread.sleep() made with a lock held.
|
FindSpinLoop | |
FindSqlInjection |
Find potential SQL injection vulnerabilities.
|
FindTwoLockWait | |
FindUncalledPrivateMethods |
Detector to find private methods that are never called. |
FindUnconditionalWait | |
FindUninitializedGet | |
FindUnrelatedTypesInGenericContainer | |
FindUnreleasedLock | |
FindUnsatisfiedObligation |
Find unsatisfied obligations in Java methods.
|
FindUnsyncGet | |
FindUselessControlFlow |
A Detector to look for useless control flow. |
HugeSharedStringConstants | |
IDivResultCastToDouble | |
IncompatMask |
Find comparisons involving values computed with bitwise
operations whose outcomes are fixed at compile time.
|
InconsistentSyncWarningProperty |
Warning properties for inconsistent synchronization detector.
|
InefficientMemberAccess | |
InefficientToArray |
Find occurrences of collection.toArray( new Foo[0] );
This causes another memory allocation through reflection
Much better to do collection.toArray( new Foo[collection.size()] );
|
InfiniteLoop | |
InfiniteRecursiveLoop | |
InheritanceUnsafeGetResource | |
InitializationChain | |
InstanceFieldLoadStreamFactory |
StreamFactory for stream objects loaded from instance fields.
|
InstantiateStaticClass | |
InvalidJUnitTest | |
IOStreamFactory |
A StreamFactory for normal java.io streams that
are created using NEW instructions. |
IteratorIdioms | |
LazyInit | |
LoadOfKnownNullValue | |
LockedFields | |
MethodReturnCheck |
Look for calls to methods where the return value is erroneously ignored. |
MethodReturnValueStreamFactory |
StreamFactory for streams that are created as the result
of calling a method on an object. |
Methods | |
MultithreadedInstanceAccess | |
MutableLock | |
MutableStaticFields | |
Naming | |
NonNullReturnProperty | |
NoteAnnotationRetention | |
NoteCheckReturnValue | |
NoteCheckReturnValueAnnotations |
Scan classes for @CheckReturnValue annotations |
NoteJCIPAnnotation | |
NoteNonnullReturnValues |
As a first scanning pass, make a note of unconditionally dereferenced
parameters for later use by FindNullDerefs.
|
NoteNonNullAnnotations |
Scan classes for @NonNull, @PossiblyNull and @CheckForNull annotations,
and convey them to FindNullDeref. |
NoteSuppressedWarnings | |
NoteUnconditionalParamDerefs |
As a first scanning pass, make a note of unconditionally dereferenced
parameters for later use by FindNullDerefs.
|
NullArgumentWarningProperty |
Warning property for a null argument being passed to a
method which might dereference it.
|
NullDerefProperty |
Warning properties for null pointer dereference and redundant null
comparison warnings.
|
NumberConstructor |
Detector to find calls to Number constructors with base type argument in
Java 5 or newer bytecode.
|
PreferZeroLengthArrays | |
PublicSemaphores |
finds public classes that use 'this' as a semaphore, which can cause conflicts if clients of this
class use an instance of this class as their own synchronization point. |
QuestionableBooleanAssignment | |
ReadReturnShouldBeChecked | |
RedundantInterfaces | |
RefComparisonWarningProperty |
Warning properties for FindRefComparison detector.
|
ResolveAllReferences | |
RuntimeExceptionCapture |
RuntimeExceptionCapture
|
SerializableIdiom | |
StartInConstructor | |
StaticCalendarDetector |
Detector for static fields of type java.util.Calendar or
java.text.DateFormat and their subclasses. |
StaticFieldLoadStreamFactory |
Stream factory for streams created by loading a value
from a static field. |
Stream |
A Stream object marks the location in the code where a
stream is created. |
StreamEquivalenceClass |
Set of streams that are in an equivalence class.
|
StreamEscape |
A StreamEscape is an object representing the escape of a Stream
to a called method.
|
StreamFrameModelingVisitor |
A visitor to model the effect of instructions on the status
of the resource (in this case, Streams). |
StreamResourceTracker |
Resource tracker which determines where streams are created,
and how they are used within the method.
|
StringConcatenation |
Find occurrences of using the String "+" or "+=" operators
within a loop. |
SuperfluousInstanceOf |
Find occurrences of a instanceof b where it can be determined
statically whether this is true or false. |
SuspiciousThreadInterrupted |
looks for calls to Thread.interrupted from a non static context, especially when that context is
not 'currentThread()'. |
SwitchFallthrough | |
SynchronizeAndNullCheckField | |
TestASM |
Sample detector, using ASM
|
TestingGround | |
TrainFieldStoreTypes |
Build a database of reference types stored into fields.
|
TrainNonNullAnnotations |
Training detector to
store NonNull, PossiblyNull and CheckForNull annotations to database files.
|
TrainUnconditionalDerefParams |
Training pass to find method parameters which are
unconditionally dereferenced. |
UncallableMethodOfAnonymousClass | |
UnnecessaryMath |
Find occurrences of Math using constants, where the result of the
calculation can be determined statically. |
UnreadFields | |
URLProblems |
equals and hashCode are blocking methods on URL's. |
UselessSubclassMethod | |
UseObjectEquals | |
VarArgsProblems | |
VolatileUsage | |
WaitInLoop | |
WrongMapIterator | |
XMLFactoryBypass | |