package com.rayo.core.validation; import java.util.ArrayList; import java.util.List; import java.util.Set; import javax.validation.ConstraintViolation; import com.rayo.core.exception.RecoverableException; @SuppressWarnings("serial") public class ValidationException extends RecoverableException { private List<ConstraintViolation<?>> violations = new ArrayList<ConstraintViolation<?>>(); public ValidationException() { super("Validation Error."); } public ValidationException(String message) { super(message); } public ValidationException(Set<ConstraintViolation<Object>> violations) { super(String.format("Validation Error: %s",violations.iterator().next().getMessage())); this.violations = new ArrayList<ConstraintViolation<?>>(violations); } public void add(ConstraintViolation<?> violation) { violations.add(violation); } public ConstraintViolation<?> getFirstViolation() { if (violations.size() > 0) { return violations.get(0); } return null; } }