public class ValidationMappingProcessor extends MappingProcessorAdapter { protected @Inject @M ValidationManager validationManager; @Override public void postMappingField(MetadataContext context, EntityMappingBuilder emb, FieldMappingBuilder fmb) throws MetadataException { BeanProperty bp = fmb.getBeanProperty(); if(null != bp){ Annotation[] annotations = bp.getAnnotations(); for(Annotation a : annotations){ Validator validator = validationManager.tryCreateValidator(a, bp.getType()); if(null != validator){ fmb.addValidator(new DefaultFieldValidator(validationManager, validator)); } } } } }
public class DefaultParameterStrategy implements ParameterStrategy { protected @Inject @M ParamsFactory factory;
protected static final RequiredValidatorFactory REQUIRED_VALIDATOR_FACTORY = new RequiredValidatorFactory(); protected @Inject @M MessageSource messageSource; protected @Inject @M BeanFactory beanFactory; protected @Inject @M BeanValidator beanValidator; protected @Inject @M ValidatorFactory[] validatorFactories;
protected @Inject @M AppContext appContext; protected @Inject @M Db db; protected @Inject @M DataSource dataSource; protected @Inject @M OrmMetadata metadata; protected @Inject @M OrmMetadataManager metadataManager; protected @Inject @M MappingStrategy mappingStrategy; protected @Inject @M NamingStrategy namingStrategy; protected @Inject @M ParameterStrategy parameterStrategy; protected @Inject @M CommandFactory commandFactory; protected @Inject @M SqlFactory sqlFactory; protected @Inject @M QueryFactory queryFactory; protected @Inject @M EntityReader entityReader; protected @Inject @M RowReader rowReader; protected @Inject @M OrmConfig config; protected @Inject @M EntityValidator entityValidator; protected @Inject @M EntityEventHandler entityEventHandler;
protected @Inject @M MDataSourceConfig config;
protected @Inject @M ValidationManager validationManager;