public Result<T> validate(final T config, final Class<T> configSuperType) {
        LOGGER.debug(() -> LogUtil.message("Validating class {}", config.getClass()));
        final Set<ConstraintViolation<T>> constraintViolations = validator.validate(config);
        return Result.of(constraintViolations, configSuperType);
    }
Default validation that logs errors/warnings to the logger as well as returning the results.
Will only validate child objects marked with @Valid.
stroom-util/src/main/java/stroom/util/config/ConfigValidator.java