Class TextUIBugReporter

java.lang.Object
edu.umd.cs.findbugs.AbstractBugReporter
edu.umd.cs.findbugs.TextUIBugReporter
All Implemented Interfaces:
RepositoryLookupFailureCallback, BugReporter, IClassObserver, IErrorLogger
Direct Known Subclasses:
BugCollectionBugReporter, EmacsBugReporter, PrintingBugReporter, SortingBugReporter, XDocsBugReporter

public abstract class TextUIBugReporter extends AbstractBugReporter
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.

Author:
David Hovemeyer
  • Field Details

  • Constructor Details

    • TextUIBugReporter

      protected TextUIBugReporter()
  • Method Details

    • setOutputStream

      public void setOutputStream(PrintStream outputStream)
      Set the PrintStream to write bug output to.
      Parameters:
      outputStream - the PrintStream to write bug output to
    • setWriter

      public void setWriter(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 interface BugReporter
      Overrides:
      reportQueuedErrors in class AbstractBugReporter
    • reportAnalysisError

      public void reportAnalysisError(AnalysisError error)
      Description copied from class: AbstractBugReporter
      Report a queued error.
      Specified by:
      reportAnalysisError in class AbstractBugReporter
      Parameters:
      error - the queued error
    • reportMissingClass

      public void reportMissingClass(String message)
      Description copied from class: AbstractBugReporter
      Report a missing class.
      Specified by:
      reportMissingClass in class AbstractBugReporter
      Parameters:
      message - the name of the class
    • emitLine

      protected void emitLine(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)
    • 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 String getOutputTarget()
    • setOutputTarget

      public void setOutputTarget(String key)
    • isDuplicateOf

      public boolean isDuplicateOf(TextUIBugReporter other)
    • isApplySuppressions

      public boolean isApplySuppressions()
    • setRankThreshold

      void setRankThreshold(int threshold)