Package edu.umd.cs.findbugs
Class TextUIBugReporter
- java.lang.Object
-
- edu.umd.cs.findbugs.AbstractBugReporter
-
- edu.umd.cs.findbugs.TextUIBugReporter
-
- All Implemented Interfaces:
RepositoryLookupFailureCallback
,BugReporter
,IClassObserver
,IErrorLogger
,ConfigurableBugReporter
- Direct Known Subclasses:
BugCollectionBugReporter
,EmacsBugReporter
,PrintingBugReporter
,SortingBugReporter
,XDocsBugReporter
public abstract class TextUIBugReporter extends AbstractBugReporter implements ConfigurableBugReporter
Base class for BugReporters which provides convenient formatting and reporting of warnings and analysis errors."TextUIBugReporter" is a bit of a misnomer, since this class is useful in GUIs, too.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class edu.umd.cs.findbugs.AbstractBugReporter
AbstractBugReporter.Error
-
-
Field Summary
Fields Modifier and Type Field Description private boolean
analysisErrors
private boolean
applySuppressions
private boolean
missingClasses
(package private) static java.lang.String
OTHER_CATEGORY_ABBREV
protected java.io.PrintWriter
outputStream
private java.lang.String
outputTarget
private boolean
reportHistory
private boolean
reportStackTrace
private boolean
showRank
private boolean
useLongBugCodes
-
Fields inherited from interface edu.umd.cs.findbugs.BugReporter
NORMAL, SILENT
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
TextUIBugReporter()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
checkBugInstance(BugInstance bugInstance)
For debugging: check a BugInstance to make sure it is valid.protected void
emitLine(java.lang.String line)
Emit one line of the error message report.java.lang.String
getOutputTarget()
BugReporter
getRealBugReporter()
boolean
getUseLongBugCodes()
boolean
isApplySuppressions()
boolean
isDuplicateOf(TextUIBugReporter other)
protected void
printBug(BugInstance bugInstance)
Print bug in one-line format.void
reportAnalysisError(AnalysisError error)
Report a queued error.void
reportMissingClass(java.lang.String message)
Report a missing class.void
reportQueuedErrors()
Report any accumulated error messages.void
setApplySuppressions(boolean applySuppressions)
void
setOutputStream(java.io.PrintStream outputStream)
Set the PrintStream to write bug output to.void
setOutputTarget(java.lang.String key)
void
setReportHistory(boolean reportHistory)
void
setReportStackTrace(boolean reportStackTrace)
Set whether or not stack traces should be reported in error output.void
setShowRank(boolean showRank)
void
setUseLongBugCodes(boolean useLongBugCodes)
void
setWriter(java.io.PrintWriter writer)
-
Methods inherited from class edu.umd.cs.findbugs.AbstractBugReporter
addObserver, doReportBug, getMissingClasses, getMissingClassName, getProjectStats, getQueuedErrors, isRelaxed, isValidMissingClassMessage, logError, logError, notifyObservers, reportBug, reportBugsFromXml, reportMissingClass, reportMissingClass, reportSkippedAnalysis, setErrorVerbosity, setIsRelaxed, setPriorityThreshold, setRankThreshold
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface edu.umd.cs.findbugs.BugReporter
addObserver, finish, getBugCollection, getProjectStats, reportBug, setErrorVerbosity, setPriorityThreshold
-
Methods inherited from interface edu.umd.cs.findbugs.ConfigurableBugReporter
setRankThreshold
-
Methods inherited from interface edu.umd.cs.findbugs.classfile.IClassObserver
observeClass
-
Methods inherited from interface edu.umd.cs.findbugs.classfile.IErrorLogger
logError, logError, reportMissingClass, reportMissingClass, reportSkippedAnalysis
-
-
-
-
Field Detail
-
reportStackTrace
private boolean reportStackTrace
-
useLongBugCodes
private boolean useLongBugCodes
-
showRank
private boolean showRank
-
reportHistory
private boolean reportHistory
-
applySuppressions
private boolean applySuppressions
-
outputTarget
private java.lang.String outputTarget
-
OTHER_CATEGORY_ABBREV
static final java.lang.String OTHER_CATEGORY_ABBREV
- See Also:
- Constant Field Values
-
outputStream
protected java.io.PrintWriter outputStream
-
analysisErrors
private boolean analysisErrors
-
missingClasses
private boolean missingClasses
-
-
Method Detail
-
setOutputStream
public void setOutputStream(java.io.PrintStream outputStream)
Set the PrintStream to write bug output to.- Specified by:
setOutputStream
in interfaceConfigurableBugReporter
- Parameters:
outputStream
- the PrintStream to write bug output to
-
setWriter
public void setWriter(java.io.PrintWriter writer)
-
setReportStackTrace
public void setReportStackTrace(boolean reportStackTrace)
Set whether or not stack traces should be reported in error output.- Parameters:
reportStackTrace
- true if stack traces should be reported, false if not
-
printBug
protected void printBug(BugInstance bugInstance)
Print bug in one-line format.- Parameters:
bugInstance
- the bug to print
-
reportQueuedErrors
public void reportQueuedErrors()
Description copied from interface:BugReporter
Report any accumulated error messages.- Specified by:
reportQueuedErrors
in interfaceBugReporter
- Overrides:
reportQueuedErrors
in classAbstractBugReporter
-
reportAnalysisError
public void reportAnalysisError(AnalysisError error)
Description copied from class:AbstractBugReporter
Report a queued error.- Specified by:
reportAnalysisError
in classAbstractBugReporter
- Parameters:
error
- the queued error
-
reportMissingClass
public void reportMissingClass(java.lang.String message)
Description copied from class:AbstractBugReporter
Report a missing class.- Specified by:
reportMissingClass
in classAbstractBugReporter
- Parameters:
message
- the name of the class
-
emitLine
protected void emitLine(java.lang.String line)
Emit one line of the error message report. By default, error messages are printed to System.err. Subclasses may override.- Parameters:
line
- one line of the error report
-
getUseLongBugCodes
public boolean getUseLongBugCodes()
-
setReportHistory
public void setReportHistory(boolean reportHistory)
-
setUseLongBugCodes
public void setUseLongBugCodes(boolean useLongBugCodes)
- Specified by:
setUseLongBugCodes
in interfaceConfigurableBugReporter
-
setShowRank
public void setShowRank(boolean showRank)
-
setApplySuppressions
public void setApplySuppressions(boolean applySuppressions)
-
getRealBugReporter
public BugReporter getRealBugReporter()
-
checkBugInstance
protected void checkBugInstance(BugInstance bugInstance)
For debugging: check a BugInstance to make sure it is valid.- Parameters:
bugInstance
- the BugInstance to check
-
getOutputTarget
public java.lang.String getOutputTarget()
-
setOutputTarget
public void setOutputTarget(java.lang.String key)
-
isDuplicateOf
public boolean isDuplicateOf(TextUIBugReporter other)
-
isApplySuppressions
public boolean isApplySuppressions()
-
-