/* * Hibernate Validator, declare and validate application constraints * * License: Apache License, Version 2.0 * See the license.txt file in the root directory or <http://www.apache.org/licenses/LICENSE-2.0>. */ package org.hibernate.validator.integration.wildfly; import java.util.Set; import javax.enterprise.context.ApplicationScoped; import javax.validation.ConstraintViolation; import javax.validation.Validation; import javax.validation.Validator; import javax.validation.executable.ExecutableValidator; import javax.validation.metadata.BeanDescriptor; /** * A custom {@link Validator}. * * @author Gunnar Morling */ @ApplicationScoped public class MyValidator implements Validator { private final Validator delegate; private int forExecutablesInvocationCount = 0; public MyValidator() { delegate = Validation.buildDefaultValidatorFactory().getValidator(); } @Override public <T> Set<ConstraintViolation<T>> validate(T object, Class<?>... groups) { return delegate.validate( object, groups ); } @Override public <T> Set<ConstraintViolation<T>> validateProperty(T object, String propertyName, Class<?>... groups) { return delegate.validateProperty( object, propertyName, groups ); } @Override public <T> Set<ConstraintViolation<T>> validateValue(Class<T> beanType, String propertyName, Object value, Class<?>... groups) { return delegate.validateValue( beanType, propertyName, value, groups ); } @Override public BeanDescriptor getConstraintsForClass(Class<?> clazz) { return delegate.getConstraintsForClass( clazz ); } @Override public <T> T unwrap(Class<T> type) { return delegate.unwrap( type ); } @Override public ExecutableValidator forExecutables() { forExecutablesInvocationCount++; return delegate.forExecutables(); } public int getForExecutablesInvocationCount() { return forExecutablesInvocationCount; } }