| Interface | Description |
|---|---|
| StreamFactory |
An object that examines a Location and determines if a Stream is created
there.
|
| Class | Description |
|---|---|
| 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
AnnotationDatabases are being phased out, since annotations are
now stored directly in the XClass/XMethod/XField objects.
|
| 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
AnnotationDatabases are being phased out, since annotations are
now stored directly in the XClass/XMethod/XField objects.
|
| 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
AnnotationDatabases are being phased out, since annotations are
now stored directly in the XClass/XMethod/XField objects.
|
| 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 |
| Enum | Description |
|---|---|
| FindNoSideEffectMethods.MethodSideEffectStatus |
Public status of the method in NSE database
TODO: implement CHECK
|
FindBugs™ is licenced under the LGPL. Copyright © 2006 University of Maryland.