Package br.com.caelum.vraptor.tasks.validator

Source Code of br.com.caelum.vraptor.tasks.validator.TaskValidatorFactory

package br.com.caelum.vraptor.tasks.validator;

import javax.validation.ValidatorFactory;

import br.com.caelum.vraptor.ioc.ApplicationScoped;
import br.com.caelum.vraptor.ioc.Component;
import br.com.caelum.vraptor.validator.BeanValidator;
import br.com.caelum.vraptor.validator.NullBeanValidator;
import br.com.caelum.vraptor.validator.ValidatorFactoryCreator;

@Component
@ApplicationScoped
public class TaskValidatorFactory {

  public Validator getInstance() {
    return new TaskValidator(buildBeanValidator());
  }
 
  public BeanValidator buildBeanValidator(){
    if(isClassPresent("javax.validation.Validation")){
      ValidatorFactory factory = new ValidatorFactoryCreator().getInstance();
      return new CustomJSR303Validator(factory.getValidator(), factory.getMessageInterpolator());
    }
    else
      return new NullBeanValidator();
  }
 
  private boolean isClassPresent(String className) {
        try {
            Class.forName(className);
            return true;
        } catch (ClassNotFoundException e) {
            return false;
        }
    }

}
TOP

Related Classes of br.com.caelum.vraptor.tasks.validator.TaskValidatorFactory

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.