Package edu.umd.cs.findbugs.config
Class ProjectFilterSettings
- java.lang.Object
-
- edu.umd.cs.findbugs.config.ProjectFilterSettings
-
- All Implemented Interfaces:
java.lang.Cloneable
public class ProjectFilterSettings extends java.lang.Object implements java.lang.Cloneable
Settings for user filtering of warnings for a project. This includes selecting particular bug categories to view, as well as a minimum warning priority. Includes support for encoding these settings as a String, which can easily be stored as a persistent project property in Eclipse.- Author:
- David Hovemeyer
- See Also:
BugInstance
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
DEFAULT_PRIORITY
Default warning threshold priority.static java.lang.String
EXPERIMENTAL_PRIORITY
Text string for experimental priority.static java.lang.String
HIGH_PRIORITY
Text string for high priority.static java.lang.String
LOW_PRIORITY
Text string for low priority.static java.lang.String
MEDIUM_PRIORITY
Text string for medium priority.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addCategory(java.lang.String category)
Add a bug category to the set of categories to be displayed.void
clearAllCategories()
Clear all bug categories from the hidden list.java.lang.Object
clone()
boolean
containsCategory(java.lang.String category)
Returns false if the given category is hidden in the project filter settings.static ProjectFilterSettings
createDefault()
Factory method to create a default ProjectFilterSettings object.boolean
displayFalseWarnings()
Get whether or not false warnings should be displayed.boolean
displayWarning(BugInstance bugInstance)
Return whether or not a warning should be displayed, according to the project filter settings.boolean
equals(java.lang.Object obj)
static ProjectFilterSettings
fromEncodedString(java.lang.String s)
Create ProjectFilterSettings from an encoded string.java.util.Set<java.lang.String>
getActiveCategorySet()
Return set of active (enabled) bug categories.static java.lang.String
getIntPriorityAsString(int prio)
Convert an integer warning priority threshold value to a String.java.lang.String
getMinPriority()
Get the minimum warning priority threshold.int
getMinPriorityAsInt()
Return the minimum warning priority threshold as an integer.int
getMinRank()
int
hashCode()
static void
hiddenFromEncodedString(ProjectFilterSettings result, java.lang.String s)
set the hidden bug categories on the specifed ProjectFilterSettings from an encoded stringjava.lang.String
hiddenToEncodedString()
Create a string containing the encoded form of the hidden bug categoriesvoid
removeCategory(java.lang.String category)
Remove a bug category from the set of categories to be displayed.void
setDisplayFalseWarnings(boolean displayFalseWarnings)
Set whether or not false warnings should be displayed.void
setMinPriority(java.lang.String minPriority)
Set minimum warning priority threshold.void
setMinRank(int minRank)
java.lang.String
toEncodedString()
Create a string containing the encoded form of the ProjectFilterSettings.java.lang.String
toString()
-
-
-
Field Detail
-
HIGH_PRIORITY
public static final java.lang.String HIGH_PRIORITY
Text string for high priority.- See Also:
- Constant Field Values
-
MEDIUM_PRIORITY
public static final java.lang.String MEDIUM_PRIORITY
Text string for medium priority.- See Also:
- Constant Field Values
-
LOW_PRIORITY
public static final java.lang.String LOW_PRIORITY
Text string for low priority.- See Also:
- Constant Field Values
-
EXPERIMENTAL_PRIORITY
public static final java.lang.String EXPERIMENTAL_PRIORITY
Text string for experimental priority.- See Also:
- Constant Field Values
-
DEFAULT_PRIORITY
public static final java.lang.String DEFAULT_PRIORITY
Default warning threshold priority.- See Also:
- Constant Field Values
-
-
Method Detail
-
setMinRank
public void setMinRank(int minRank)
-
getMinRank
public int getMinRank()
-
createDefault
public static ProjectFilterSettings createDefault()
Factory method to create a default ProjectFilterSettings object. Uses the default warning priority threshold, and enables all bug categories.- Returns:
- a default ProjectFilterSettings object
-
fromEncodedString
public static ProjectFilterSettings fromEncodedString(java.lang.String s)
Create ProjectFilterSettings from an encoded string.- Parameters:
s
- the encoded string- Returns:
- the ProjectFilterSettings
-
hiddenFromEncodedString
public static void hiddenFromEncodedString(ProjectFilterSettings result, java.lang.String s)
set the hidden bug categories on the specifed ProjectFilterSettings from an encoded string- Parameters:
result
- the ProjectFilterSettings from which to remove bug categoriess
- the encoded string- See Also:
hiddenFromEncodedString(ProjectFilterSettings, String)
-
displayWarning
public boolean displayWarning(BugInstance bugInstance)
Return whether or not a warning should be displayed, according to the project filter settings.- Parameters:
bugInstance
- the warning- Returns:
- true if the warning should be displayed, false if not
-
setMinPriority
public void setMinPriority(java.lang.String minPriority)
Set minimum warning priority threshold.- Parameters:
minPriority
- the priority threshold: one of "High", "Medium", or "Low"
-
getMinPriority
public java.lang.String getMinPriority()
Get the minimum warning priority threshold.- Returns:
- minimum warning priority threshold: one of "High", "Medium", or "Low"
-
getMinPriorityAsInt
public int getMinPriorityAsInt()
Return the minimum warning priority threshold as an integer.- Returns:
- the minimum warning priority threshold as an integer
-
addCategory
public void addCategory(java.lang.String category)
Add a bug category to the set of categories to be displayed.- Parameters:
category
- the bug category: e.g., "CORRECTNESS"
-
removeCategory
public void removeCategory(java.lang.String category)
Remove a bug category from the set of categories to be displayed.- Parameters:
category
- the bug category: e.g., "CORRECTNESS"
-
clearAllCategories
public void clearAllCategories()
Clear all bug categories from the hidden list. So the effect is to enable all bug categories.
-
containsCategory
public boolean containsCategory(java.lang.String category)
Returns false if the given category is hidden in the project filter settings.- Parameters:
category
- the category- Returns:
- false if the category is hidden, true if not
-
getActiveCategorySet
public java.util.Set<java.lang.String> getActiveCategorySet()
Return set of active (enabled) bug categories. Note that bug categories that are not explicity hidden will appear active even if they are not members of this set.- Returns:
- the set of active categories
-
setDisplayFalseWarnings
public void setDisplayFalseWarnings(boolean displayFalseWarnings)
Set whether or not false warnings should be displayed.- Parameters:
displayFalseWarnings
- true if false warnings should be displayed, false if not
-
displayFalseWarnings
public boolean displayFalseWarnings()
Get whether or not false warnings should be displayed.- Returns:
- true if false warnings should be displayed, false if not
-
hiddenToEncodedString
public java.lang.String hiddenToEncodedString()
Create a string containing the encoded form of the hidden bug categories- Returns:
- an encoded string
-
toEncodedString
public java.lang.String toEncodedString()
Create a string containing the encoded form of the ProjectFilterSettings.- Returns:
- an encoded string
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
equals
public boolean equals(java.lang.Object obj)
- Overrides:
equals
in classjava.lang.Object
-
clone
public java.lang.Object clone()
- Overrides:
clone
in classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
getIntPriorityAsString
public static java.lang.String getIntPriorityAsString(int prio)
Convert an integer warning priority threshold value to a String.
-
-