edu.umd.cs.findbugs.detect
Class IOStreamFactory

java.lang.Object
  extended by edu.umd.cs.findbugs.detect.IOStreamFactory
All Implemented Interfaces:
StreamFactory

public class IOStreamFactory
extends java.lang.Object
implements StreamFactory

A StreamFactory for normal java.io streams that are created using NEW instructions.


Field Summary
private  org.apache.bcel.generic.ObjectType baseClassType
           
private  java.lang.String bugType
           
private  org.apache.bcel.generic.ObjectType[] uninterestingSubclassTypeList
           
 
Constructor Summary
IOStreamFactory(java.lang.String baseClass, java.lang.String[] uninterestingSubclassList, java.lang.String bugType)
           
 
Method Summary
 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.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

baseClassType

private org.apache.bcel.generic.ObjectType baseClassType

uninterestingSubclassTypeList

private org.apache.bcel.generic.ObjectType[] uninterestingSubclassTypeList

bugType

private java.lang.String bugType
Constructor Detail

IOStreamFactory

public IOStreamFactory(java.lang.String baseClass,
                       java.lang.String[] uninterestingSubclassList,
                       java.lang.String bugType)
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 interface StreamFactory
Parameters:
location - the Location
type - 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 object
cpg - the ConstantPoolGen for the method
lookupFailureCallback - used to report missing classes in the class hierarchy
Returns:
a Stream created at the Location, or null if no stream is created there