All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.gruelbox.transactionoutbox.Validator Maven / Gradle / Ivy

package com.gruelbox.transactionoutbox;

import javax.validation.ClockProvider;
import javax.validation.Validation;
import javax.validation.ValidationException;

class Validator {

  private final javax.validation.Validator validator;

  Validator(ClockProvider clockProvider) {
    this.validator =
        Validation.byDefaultProvider()
            .configure()
            .clockProvider(clockProvider)
            .buildValidatorFactory()
            .getValidator();
  }

  void validate(Object object) {
    var validationErrors = validator.validate(object);
    if (!validationErrors.isEmpty()) {
      throw new ValidationException(
          "Validation on " + object.toString() + " failed: " + validationErrors);
    }
  }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy