Package edu.umd.cs.findbugs.detect
Class MethodReturnValueStreamFactory
- java.lang.Object
-
- edu.umd.cs.findbugs.detect.MethodReturnValueStreamFactory
-
- All Implemented Interfaces:
StreamFactory
public class MethodReturnValueStreamFactory extends java.lang.Object implements StreamFactory
StreamFactory for streams that are created as the result of calling a method on an object.
-
-
Field Summary
Fields Modifier and Type Field Description private org.apache.bcel.generic.ObjectType
baseClassType
private java.lang.String
bugType
private static java.util.BitSet
invokeOpcodeSet
private boolean
isUninteresting
private java.lang.String
methodName
private java.lang.String
methodSig
-
Constructor Summary
Constructors Constructor Description MethodReturnValueStreamFactory(java.lang.String baseClass, java.lang.String methodName, java.lang.String methodSig)
Constructor.MethodReturnValueStreamFactory(java.lang.String baseClass, java.lang.String methodName, java.lang.String methodSig, java.lang.String bugType)
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Stream
createStream(Location location, org.apache.bcel.generic.ObjectType type, org.apache.bcel.generic.ConstantPoolGen cpg, RepositoryLookupFailureCallback lookupFailureCallback)
Determine if a Stream is created at given location.
-
-
-
Field Detail
-
invokeOpcodeSet
private static final java.util.BitSet invokeOpcodeSet
-
baseClassType
private final org.apache.bcel.generic.ObjectType baseClassType
-
methodName
private final java.lang.String methodName
-
methodSig
private final java.lang.String methodSig
-
isUninteresting
private final boolean isUninteresting
-
bugType
private java.lang.String bugType
-
-
Constructor Detail
-
MethodReturnValueStreamFactory
public MethodReturnValueStreamFactory(java.lang.String baseClass, java.lang.String methodName, java.lang.String methodSig)
Constructor. The Streams created will be marked as uninteresting.- Parameters:
baseClass
- base class through which the method will be called (we check instances of the base class and all subtypes)methodName
- name of the method calledmethodSig
- signature of the method called
-
MethodReturnValueStreamFactory
public MethodReturnValueStreamFactory(java.lang.String baseClass, java.lang.String methodName, java.lang.String methodSig, java.lang.String bugType)
Constructor. The Streams created will be marked as interesting.- Parameters:
baseClass
- base class through which the method will be called (we check instances of the base class and all subtypes)methodName
- name of the method calledmethodSig
- signature of the method calledbugType
- the bug type that should be reported if the stream is not closed on all paths out of the method
-
-
Method Detail
-
createStream
public Stream createStream(Location location, org.apache.bcel.generic.ObjectType type, org.apache.bcel.generic.ConstantPoolGen cpg, RepositoryLookupFailureCallback lookupFailureCallback)
Description copied from interface:StreamFactory
Determine if a Stream is created at given location.- Specified by:
createStream
in interfaceStreamFactory
- Parameters:
location
- the Locationtype
- the ObjectType associated with the instruction at the location; the StreamResourceTracker prescreens for TypedInstructions that are associated with ObjectTypes, since they are the only instructions that could conceivably create a stream objectcpg
- the ConstantPoolGen for the methodlookupFailureCallback
- used to report missing classes in the class hierarchy- Returns:
- a Stream created at the Location, or null if no stream is created there
-
-