1 package net.sf.mavenhist.extractor.checkstyle; 2 3 /** 4 * Extracts the number of all checkstyle warnings. 5 */ 6 public abstract class AbstractCheckstyleViolationExtractor 7 extends AbstractCheckstyleSingleValueExtractor { 8 9 /** 10 * XPath to extract the number of all checkstyle warnings. 11 * @return XPath to extract the number of all checkstyle warnings. 12 */ 13 protected String getXPath(String version) { 14 StringBuffer buffer = new StringBuffer(); 15 buffer.append("count(/checkstyle/file/error"); 16 if (getSeverity() != null) { 17 buffer.append("[@severity = '"); 18 buffer.append(getSeverity()); 19 buffer.append("'])"); 20 } else { 21 buffer.append(")"); 22 } 23 return buffer.toString(); 24 } 25 26 /** 27 * Returns the severity as <code>String</code>. If severity is given as <code>null</code> no 28 * filtering is done. 29 * @return the severity. 30 */ 31 protected abstract String getSeverity(); 32 }