Class AbstractDryParser<T>

java.lang.Object
edu.hm.hafner.analysis.IssueParser
edu.hm.hafner.analysis.parser.dry.AbstractDryParser<T>
Type Parameters:
T - the type of the parsed warnings
All Implemented Interfaces:
Serializable
Direct Known Subclasses:
CpdParser, DupFinderParser, SimianParser

public abstract class AbstractDryParser<T> extends IssueParser
A duplication parser template for Digester based parsers.
See Also:
  • Constructor Details

    • AbstractDryParser

      protected AbstractDryParser(int highThreshold, int normalThreshold)
      Creates a new instance of AbstractDryParser.
      Parameters:
      highThreshold - minimum number of duplicate lines for high priority warnings
      normalThreshold - minimum number of duplicate lines for normal priority warnings
  • Method Details

    • getPriority

      protected Severity getPriority(int lines)
      Returns the priority of the warning.
      Parameters:
      lines - number of duplicate lines
      Returns:
      the priority of the warning
    • parse

      public Report parse(ReaderFactory readerFactory) throws ParsingCanceledException, ParsingException
      Description copied from class: IssueParser
      Parses the specified file for issues.
      Specified by:
      parse in class IssueParser
      Parameters:
      readerFactory - provides a reader to the reports
      Returns:
      the issues
      Throws:
      ParsingCanceledException - Signals that the parsing has been aborted by the user
      ParsingException - Signals that during parsing a non recoverable error has been occurred
    • configureParser

      protected abstract void configureParser(org.apache.commons.digester3.Digester digester)
      Configures the Digester parser. Register all rules that are required to parse the file.
      Parameters:
      digester - the parser to configure
    • convertDuplicationsToIssues

      protected abstract Report convertDuplicationsToIssues(List<T> duplications, IssueBuilder issueBuilder)
      Converts the parsed duplications from the original format to an Report instance.
      Parameters:
      duplications - the parsed warnings
      issueBuilder - the issue builder to use
      Returns:
      the converted warnings