Package edu.umd.cs.findbugs.detect
Class FindUnreleasedLock
java.lang.Object
edu.umd.cs.findbugs.ResourceTrackingDetector<edu.umd.cs.findbugs.detect.Lock,edu.umd.cs.findbugs.detect.FindUnreleasedLock.LockResourceTracker>
edu.umd.cs.findbugs.detect.FindUnreleasedLock
- All Implemented Interfaces:
Detector
,Priorities
public class FindUnreleasedLock
extends ResourceTrackingDetector<edu.umd.cs.findbugs.detect.Lock,edu.umd.cs.findbugs.detect.FindUnreleasedLock.LockResourceTracker>
-
Field Summary
Fields inherited from class edu.umd.cs.findbugs.ResourceTrackingDetector
bugAccumulator, bugReporter
Fields inherited from interface edu.umd.cs.findbugs.Priorities
EXP_PRIORITY, HIGH_PRIORITY, IGNORE_PRIORITY, LOW_PRIORITY, NORMAL_PRIORITY
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionedu.umd.cs.findbugs.detect.FindUnreleasedLock.LockResourceTracker
getResourceTracker
(ClassContext classContext, org.apache.bcel.classfile.Method method) void
inspectResult
(ClassContext classContext, org.apache.bcel.generic.MethodGen methodGen, CFG cfg, Dataflow<ResourceValueFrame, ResourceValueAnalysis<edu.umd.cs.findbugs.detect.Lock>> dataflow, edu.umd.cs.findbugs.detect.Lock resource) boolean
prescreen
(ClassContext classContext, org.apache.bcel.classfile.Method method, boolean mightClose) void
report()
This method is called after all classes to be visited.void
visitClassContext
(ClassContext classContext) Visit the ClassContext for a class which should be analyzed for instances of bug patterns.Methods inherited from class edu.umd.cs.findbugs.ResourceTrackingDetector
analyzeMethod
-
Constructor Details
-
FindUnreleasedLock
-
-
Method Details
-
visitClassContext
Description copied from interface:Detector
Visit the ClassContext for a class which should be analyzed for instances of bug patterns.- Specified by:
visitClassContext
in interfaceDetector
- Overrides:
visitClassContext
in classResourceTrackingDetector<edu.umd.cs.findbugs.detect.Lock,
edu.umd.cs.findbugs.detect.FindUnreleasedLock.LockResourceTracker> - Parameters:
classContext
- the ClassContext
-
prescreen
public boolean prescreen(ClassContext classContext, org.apache.bcel.classfile.Method method, boolean mightClose) - Specified by:
prescreen
in classResourceTrackingDetector<edu.umd.cs.findbugs.detect.Lock,
edu.umd.cs.findbugs.detect.FindUnreleasedLock.LockResourceTracker>
-
getResourceTracker
public edu.umd.cs.findbugs.detect.FindUnreleasedLock.LockResourceTracker getResourceTracker(ClassContext classContext, org.apache.bcel.classfile.Method method) throws CFGBuilderException, DataflowAnalysisException - Specified by:
getResourceTracker
in classResourceTrackingDetector<edu.umd.cs.findbugs.detect.Lock,
edu.umd.cs.findbugs.detect.FindUnreleasedLock.LockResourceTracker> - Throws:
CFGBuilderException
DataflowAnalysisException
-
inspectResult
public void inspectResult(ClassContext classContext, org.apache.bcel.generic.MethodGen methodGen, CFG cfg, Dataflow<ResourceValueFrame, ResourceValueAnalysis<edu.umd.cs.findbugs.detect.Lock>> dataflow, edu.umd.cs.findbugs.detect.Lock resource) - Specified by:
inspectResult
in classResourceTrackingDetector<edu.umd.cs.findbugs.detect.Lock,
edu.umd.cs.findbugs.detect.FindUnreleasedLock.LockResourceTracker>
-
report
public void report()Description copied from interface:Detector
This method is called after all classes to be visited. It should be used by any detectors which accumulate information over all visited classes to generate results.- Specified by:
report
in interfaceDetector
- Overrides:
report
in classResourceTrackingDetector<edu.umd.cs.findbugs.detect.Lock,
edu.umd.cs.findbugs.detect.FindUnreleasedLock.LockResourceTracker>
-