Class Report

  • All Implemented Interfaces:
    Iterable<RuleViolation>

    public class Report
    extends Object
    implements Iterable<RuleViolation>
    A Report collects all informations during a PMD execution. This includes violations, suppressed violations, metrics, error during processing and configuration errors.
    • Constructor Detail

      • Report

        public Report()
    • Method Detail

      • createReport

        public static Report createReport​(RuleContext ctx,
                                          String fileName)
        Creates a new, initialized, empty report for the given file name.
        Parameters:
        ctx - The context to use to connect to the report
        fileName - the filename used to report any violations
        Returns:
        the new report
      • suppress

        public void suppress​(Map<Integer,​String> lines)
        Configure the lines, that are suppressed via a NOPMD comment.
        Parameters:
        lines - the suppressed lines
      • getCountSummary

        @Deprecated
        public Map<String,​Integer> getCountSummary()
        Deprecated.
        This is too specific. Not every violation has a qualified name.
        Calculate a summary of violation counts per fully classified class name.
        Returns:
        violations per class name
      • getSummary

        @Deprecated
        public Map<String,​Integer> getSummary()
        Deprecated.
        This is too specific, only used by one renderer.
        Calculate a summary of violations per rule.
        Returns:
        a Map summarizing the Report: String (rule name) -> Integer (count of violations)
      • addListener

        public void addListener​(ThreadSafeReportListener listener)
        Registers a report listener
        Parameters:
        listener - the listener
      • addRuleViolation

        public void addRuleViolation​(RuleViolation violation)
        Adds a new rule violation to the report and notify the listeners.
        Parameters:
        violation - the violation to add
      • addMetric

        @Deprecated
        public void addMetric​(Metric metric)
        Deprecated.
        Adds a new metric to the report and notify the listeners
        Parameters:
        metric - the metric to add
      • addConfigError

        public void addConfigError​(Report.ConfigurationError error)
        Adds a new configuration error to the report.
        Parameters:
        error - the error to add
      • addError

        public void addError​(Report.ProcessingError error)
        Adds a new processing error to the report.
        Parameters:
        error - the error to add
      • merge

        public void merge​(Report r)
        Merges the given report into this report. This might be necessary, if a summary over all violations is needed as PMD creates one report per file by default.
        Parameters:
        r - the report to be merged into this.
        See Also:
        AbstractAccumulatingRenderer
      • hasMetrics

        @Deprecated
        public boolean hasMetrics()
        Deprecated.
        Check whether any metrics have been reported
        Returns:
        true if there are metrics, false otherwise
      • hasErrors

        @Deprecated
        public boolean hasErrors()
        Deprecated.
        Use getProcessingErrors().isEmpty()
        Checks whether any processing errors have been reported.
        Returns:
        true if there were any processing errors, false otherwise
      • hasConfigErrors

        @Deprecated
        public boolean hasConfigErrors()
        Deprecated.
        Checks whether any configuration errors have been reported.
        Returns:
        true if there were any configuration errors, false otherwise
      • treeIsEmpty

        @Deprecated
        public boolean treeIsEmpty()
        Deprecated.
        The ReportTree is deprecated, use getViolations().isEmpty() instead.
        Checks whether no violations have been reported.
        Returns:
        true if no violations have been reported, false otherwise
      • getSuppressedViolations

        public final List<Report.SuppressedViolation> getSuppressedViolations()
        Returns an unmodifiable list of violations that were suppressed.
      • getViolations

        public final List<RuleViolation> getViolations()
        Returns an unmodifiable list of violations that have been recorded until now. None of those violations were suppressed.

        The violations list is sorted with RuleViolation.DEFAULT_COMPARATOR.

      • getProcessingErrors

        public final List<Report.ProcessingError> getProcessingErrors()
        Returns an unmodifiable list of processing errors that have been recorded until now.
      • getConfigurationErrors

        public final List<Report.ConfigurationError> getConfigurationErrors()
        Returns an unmodifiable list of configuration errors that have been recorded until now.
      • treeSize

        @Deprecated
        public int treeSize()
        Deprecated.
        The ReportTree is deprecated
        The number of violations.
        Returns:
        number of violations.
      • getElapsedTimeInMillis

        @Deprecated
        public long getElapsedTimeInMillis()
        Deprecated.
        Unused
      • addListeners

        public void addListeners​(List<ThreadSafeReportListener> allListeners)
        Adds all given listeners to this report
        Parameters:
        allListeners - the report listeners