package hudson.plugins.violations; import java.io.File; import java.io.IOException; import hudson.plugins.violations.model.FullBuildModel; /** * Interface that violations parsers need * to implement. */ public interface ViolationsParser { /** * Parse a violations file. * @param model the model to store the violations in. * @param projectPath the project path used for resolving paths. * @param fileName the name of the violations file to parse * (relative to the projectPath). * @param sourcePaths a list of source paths to resolve classes against * @throws IOException if there is an error. */ void parse( FullBuildModel model, File projectPath, String fileName, String[] sourcePaths) throws IOException; }