class DefaultSettingsValidator implements SettingsValidator {

    private static final String ID = "[\\w.-]+";
    private static final Pattern ID_REGEX = Pattern.compile(ID);

    private final SettingsBuilder settingsBuilder;

    @Inject
    public DefaultSettingsValidator(SettingsBuilder settingsBuilder) {
        this.settingsBuilder = settingsBuilder;
    }

    @Override
    public void validate(Settings settings, SettingsProblemCollector problems) {
        validate(settings, false, problems);
    }

    @Override
    public void validate(Settings settings, boolean isProjectSettings, SettingsProblemCollector problems) {<FILL_FUNCTION_BODY>}

    // ----------------------------------------------------------------------
    // Field validation
    // ----------------------------------------------------------------------

    private static void addViolation(SettingsProblemCollector problems, Severity severity, String message) {
        problems.add(severity, message, -1, -1, null);
    }
}

        List<BuilderProblem> list = settingsBuilder.validate(settings.getDelegate(), isProjectSettings);
        for (BuilderProblem problem : list) {
            addViolation(problems, Severity.valueOf(problem.getSeverity().name()), problem.getMessage());
        }
    
<no_super_class>