private void parseMisraViolation(String line, List<Violation> violations) { List<String> parts = getParts( line, "^([^\\(]+)\\(", "^([\\d]+)\\): ", "^(?:Error|Warning|Info|Note) [\\d]+: ([^\\[]*)", "^\\[(.*),", "(mandatory|required|advisory)\\]", "^(.*)$"); if (parts.isEmpty()) { return; } String filename = parts.get(0); Integer lineNumber = parseInt(parts.get(1)); String severityString = parts.get(4); SEVERITY severity = toMisraSeverity(severityString); String rule = parts.get(3) + ", " + severityString; String message = parts.get(2) + " " + parts.get(5); violations.add( // violationBuilder() // .setParser(PCLINT) // .setStartLine(lineNumber) // .setFile(filename) // .setRule(rule) // .setSeverity(severity) // .setMessage(message) // .build() // ); }
private void parseMisraViolation(String line, List<Violation> violations) { List<String> parts = getParts( line, "^([^\\(]+)\\(", "^([\\d]+)\\): ", "^(?:Error|Warning|Info|Note) [\\d]+: ([^\\[]*)", "^\\[(.*),", "(mandatory|required|advisory)\\]", "^(.*)$"); if (parts.isEmpty()) { return; } String filename = parts.get(0); Integer lineNumber = parseInt(parts.get(1)); String severityString = parts.get(4); SEVERITY severity = toMisraSeverity(severityString); String rule = parts.get(3) + ", " + severityString; String message = parts.get(2) + " " + parts.get(5); violations.add( // violationBuilder() // .setParser(PCLINT) // .setStartLine(lineNumber) // .setFile(filename) // .setRule(rule) // .setSeverity(severity) // .setMessage(message) // .build() // ); }