Package edu.umd.cs.findbugs.props
Class WarningPropertySet<T extends WarningProperty>
java.lang.Object
edu.umd.cs.findbugs.props.WarningPropertySet<T>
- All Implemented Interfaces:
Cloneable
A Set of WarningProperty objects, each with an optional attribute Object. A
WarningPropertySet is useful for collecting heuristics to use in the
determination of whether or not a warning is a false positive, or what the
warning's priority should be.
- Author:
- David Hovemeyer
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddProperty
(T prop) Add a warning property to the set.boolean
checkProperty
(T prop, Object value) Check whether or not the given WarningProperty has the given attribute value.clone()
int
computePriority
(int basePriority) Use the PriorityAdjustments specified by the set's WarningProperty elements to compute a warning priority from the given base priority.boolean
containsProperty
(T prop) Return whether or not the set contains the given WarningProperty.void
decorateBugInstance
(BugInstance bugInstance) Decorate given BugInstance with properties.getProperty
(T prop) Get the value of the attribute for the given WarningProperty.boolean
isFalsePositive
(int priority) Determine whether or not a warning with given priority is expected to be a false positive.removeProperty
(T prop) Remove a warning property from the set.void
setProperty
(T prop, Boolean value) Add a warning property and its attribute value.setProperty
(T prop, String value) Add a warning property and its attribute value.toString()
-
Constructor Details
-
WarningPropertySet
public WarningPropertySet()Constructor Creates empty object.
-
-
Method Details
-
toString
-
clone
-
addProperty
Add a warning property to the set. The warning implicitly has the boolean value "true" as its attribute.- Parameters:
prop
- the WarningProperty- Returns:
- this object
-
removeProperty
Remove a warning property from the set.- Parameters:
prop
- the WarningProperty- Returns:
- this object
-
setProperty
Add a warning property and its attribute value.- Parameters:
prop
- the WarningPropertyvalue
- the attribute value- Returns:
- this object
-
setProperty
Add a warning property and its attribute value.- Parameters:
prop
- the WarningPropertyvalue
- the attribute value
-
containsProperty
Return whether or not the set contains the given WarningProperty.- Parameters:
prop
- the WarningProperty- Returns:
- true if the set contains the WarningProperty, false if not
-
checkProperty
Check whether or not the given WarningProperty has the given attribute value.- Parameters:
prop
- the WarningPropertyvalue
- the attribute value- Returns:
- true if the set contains the WarningProperty and has an attribute equal to the one given, false otherwise
-
getProperty
Get the value of the attribute for the given WarningProperty. Returns null if the set does not contain the WarningProperty.- Parameters:
prop
- the WarningProperty- Returns:
- the WarningProperty's attribute value, or null if the set does not contain the WarningProperty
-
computePriority
public int computePriority(int basePriority) Use the PriorityAdjustments specified by the set's WarningProperty elements to compute a warning priority from the given base priority.- Parameters:
basePriority
- the base priority- Returns:
- the computed warning priority
-
isFalsePositive
public boolean isFalsePositive(int priority) Determine whether or not a warning with given priority is expected to be a false positive.- Parameters:
priority
- the priority- Returns:
- true if the warning is expected to be a false positive, false if not
-
decorateBugInstance
Decorate given BugInstance with properties.- Parameters:
bugInstance
- the BugInstance
-