| AnyMethodReturnValueStreamFactory |
Factory for stream objects of a particular base class type returned by any
method.
|
| AppendingToAnObjectOutputStream |
|
| AtomicityProblem |
if we get from a ConcurrentHashMap and assign to a variable...
|
| BadAppletConstructor |
|
| BadlyOverriddenAdapter |
|
| BadResultSetAccess |
|
| BadSyntaxForRegularExpression |
|
| BadUseOfReturnValue |
|
| BooleanReturnNull |
|
| BuildCheckReturnAnnotationDatabase |
Scan application classes for CheckReturnValue annotations.
|
| BuildInterproceduralCallGraph |
Build the interprocedural call graph.
|
| BuildNonNullAnnotationDatabase |
Deprecated.
|
| BuildNonnullReturnDatabase |
Build database of methods that return values guaranteed to be nonnull
|
| BuildObligationPolicyDatabase |
Build the ObligationPolicyDatabase used by ObligationAnalysis.
|
| BuildStringPassthruGraph |
Builds the database of string parameters passed from method to method unchanged.
|
| BuildStringPassthruGraph.MethodParameter |
|
| BuildStringPassthruGraph.StringPassthruDatabase |
|
| BuildUnconditionalParamDerefDatabase |
Build database of unconditionally dereferenced parameters.
|
| CalledMethods |
Detector to find private methods that are never called.
|
| CallToUnconditionalThrower |
|
| CallToUnsupportedMethod |
|
| CbeckMustOverrideSuperAnnotation |
|
| CheckAnalysisContextContainedAnnotation |
|
| CheckCalls |
This is just for debugging method call resolution.
|
| CheckExpectedWarnings |
Check uses of the ExpectWarning and NoWarning annotations.
|
| CheckImmutableAnnotation |
|
| CheckRelaxingNullnessAnnotation |
Checks that overriding methods do not relax Nonnull (made
CheckForNull) on return values or CheckForNull (made
Nonnull) on parameters.
|
| CheckTypeQualifiers |
Check JSR-305 type qualifiers.
|
| CloneIdiom |
|
| ComparatorIdiom |
|
| ConfusedInheritance |
|
| ConfusionBetweenInheritedAndOuterMethod |
|
| CovariantArrayAssignment |
|
| CrossSiteScripting |
|
| DeadLocalStoreProperty |
Warning property for FindDeadLocalStores.
|
| DefaultEncodingDetector |
Finds invocations of JDK methods that rely on the default platform encoding.
|
| DoInsideDoPrivileged |
|
| DontCatchIllegalMonitorStateException |
|
| DontIgnoreResultOfPutIfAbsent |
|
| DontUseEnum |
|
| DoomedCodeWarningProperty |
A WarningProperty for warnings that are reported at a "doomed" Location; one
that cannot return normally.
|
| DroppedException |
|
| DumbMethodInvocations |
|
| DumbMethods |
|
| DuplicateBranches |
|
| EmptyZipFileEntry |
This detector is currently disabled by default.
|
| EqualsOperandShouldHaveClassCompatibleWithThis |
|
| ExplicitSerialization |
|
| FieldItemSummary |
|
| FinalizerNullsFields |
|
| FindBadCast2 |
|
| FindBadForLoop |
|
| FindBugsSummaryStats |
|
| FindCircularDependencies |
|
| FindComparatorProblems |
|
| 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 |
|
| FindNoSideEffectMethods |
|
| FindNoSideEffectMethods.NoSideEffectMethodsDatabase |
|
| FindNullDeref |
A Detector to find instructions where a NullPointerException might be raised.
|
| FindNullDerefsInvolvingNonShortCircuitEvaluation |
|
| 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.
|
| FindRefComparison.DynamicStringType |
Type representing a dynamically created String.
|
| FindRefComparison.EmptyStringType |
|
| FindRefComparison.FinalConstant |
|
| FindRefComparison.ParameterStringType |
Type representing a String passed as a parameter.
|
| FindRefComparison.StaticStringType |
Type representing a static String.
|
| FindReturnRef |
|
| FindRoughConstants |
|
| 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.
|
| FindUselessObjects |
|
| FindUseOfNonSerializableValue |
|
| FormatStringChecker |
|
| FunctionsThatMightBeMistakenForProcedures |
|
| HugeSharedStringConstants |
|
| IDivResultCastToDouble |
|
| IncompatMask |
Find comparisons involving values computed with bitwise operations whose
outcomes are fixed at compile time.
|
| InconsistentAnnotations |
|
| InconsistentSyncWarningProperty |
Warning properties for inconsistent synchronization detector.
|
| InefficientIndexOf |
Use whenever possible String.indexOf(int) instead of String.indexOf(String),
or String.lastIndexOf(int) instead of String.lastIndexOf(String).
|
| InefficientInitializationInsideLoop |
|
| 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 |
|
| InitializeNonnullFieldsInConstructor |
|
| InstanceFieldLoadStreamFactory |
StreamFactory for stream objects loaded from instance fields.
|
| InstantiateStaticClass |
|
| IntCast2LongAsInstant |
|
| InvalidJUnitTest |
|
| IOStreamFactory |
A StreamFactory for normal java.io streams that are created using NEW
instructions.
|
| IteratorIdioms |
|
| LazyInit |
|
| LoadOfKnownNullValue |
|
| LostLoggerDueToWeakReference |
We found a problem with the new OpenJDK that everyone is now using to compile
and run java code.
|
| 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 |
|
| MutableEnum |
|
| MutableLock |
|
| MutableStaticFields |
|
| Naming |
|
| Naming.NamingProperty |
|
| Noise |
|
| NoiseNullDeref |
A Detector to find instructions where a NullPointerException might be raised.
|
| NonNullReturnProperty |
|
| NoteAnnotationRetention |
|
| NoteCheckReturnValueAnnotations |
Scan classes for @CheckReturnValue annotations
|
| NoteDirectlyRelevantTypeQualifiers |
Scan methods for directly-relevant type qualifiers, building the
DirectlyRelevantTypeQualifiersDatabase.
|
| NoteJCIPAnnotation |
|
| NoteNonNullAnnotations |
Deprecated.
|
| NoteNonnullReturnValues |
As a first scanning pass, make a note of unconditionally dereferenced
parameters for later use by FindNullDerefs.
|
| NoteSuppressedWarnings |
|
| NoteUnconditionalParamDerefs |
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.
|
| OptionalReturnNull |
Methods with "Optional" return type should never return null.
|
| OverridingEqualsNotSymmetrical |
|
| 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 |
|
| ReadOfInstanceFieldInMethodInvokedByConstructorInSuperclass |
|
| ReadReturnShouldBeChecked |
|
| RedundantConditions |
|
| RedundantInterfaces |
|
| RefComparisonWarningProperty |
Warning properties for FindRefComparison detector.
|
| ReflectiveClasses |
Detector to find private methods that are never called.
|
| RepeatedConditionals |
|
| ResolveAllReferences |
|
| RuntimeExceptionCapture |
RuntimeExceptionCapture
|
| SerializableIdiom |
|
| StartInConstructor |
|
| StaticCalendarDetector |
Detector for static fields of type Calendar or
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 |
|
| SynchronizationOnSharedBuiltinConstant |
|
| SynchronizeAndNullCheckField |
|
| SynchronizeOnClassLiteralNotGetClass |
|
| SynchronizingOnContentsOfFieldToProtectField |
|
| TestASM |
Sample detector, using ASM
|
| TestDataflowAnalysis<Fact,AnalysisType extends DataflowAnalysis<Fact>> |
This detector is just a test harness to test a dataflow analysis class
specified by the dataflow.classname property.
|
| TestingGround |
|
| TestingGround2 |
|
| TrainFieldStoreTypes |
Build a database of reference types stored into fields.
|
| TrainLongInstantfParams |
|
| TrainNonNullAnnotations |
Deprecated.
|
| TrainUnconditionalDerefParams |
Training pass to find method parameters which are unconditionally
dereferenced.
|
| TypeReturnNull |
Base class for simple type checking detectors which tests if the method
returns null references for specific types.
|
| UncallableMethodOfAnonymousClass |
|
| UnnecessaryMath |
Find occurrences of Math using constants, where the result of the calculation
can be determined statically.
|
| UnreadFields |
|
| UnreadFieldsData |
|
| URLProblems |
equals and hashCode are blocking methods on URL's.
|
| UselessSubclassMethod |
|
| VarArgsProblems |
|
| VolatileUsage |
|
| WaitInLoop |
|
| WrongMapIterator |
|
| XMLFactoryBypass |
|