Das Groovy Skript arbeitet mit der Matcher Instanz, die in der Variablen matcher an das Skript übergeben wird. Das Skript muss einen Rückgabewert vom Typ Optional<edu.hm.hafner.analysis.Issue> haben. Eine Issue Instanz muss mit dem edu.hm.hafner.analysis.IssueBuilder erstellt werden, der in der Variablen builder an das Skript übergeben wird. Hinweis: der Rückgabewert der Methode ist vom TypOptional<Issue>, d.h. im Falle einer Falschmeldung muss Optional.empty() zurückgeliefert werden.

Folgende Variablen stehen außerdem zur Verfügung:

fileName
der Name der analysierten Report Datei
lineNumber
die aktuelle Zeilennummer

Beispiel

Hier folgt ein Beispiel, das als Ausgangsbasis für das Skript verwendet werden kann. Es erzeugt eine neue Warnung für den regulären Ausdruck ^\s*(.*):(\d+):(.*):\s*(.*)$.


import edu.hm.hafner.analysis.Severity

builder.setFileName(matcher.group(1))
        .setLineStart(Integer.parseInt(matcher.group(2)))
        .setSeverity(Severity.WARNING_NORMAL)
        .setCategory(matcher.group(3))
        .setMessage(matcher.group(4))

return builder.buildOptional();