Examples of ConstraintMappingContext


Examples of org.hibernate.validator.cfg.context.impl.ConstraintMappingContext

public class ConstraintMapping {

  protected ConstraintMappingContext context;

  public ConstraintMapping() {
    context = new ConstraintMappingContext();
  }
View Full Code Here

Examples of org.hibernate.validator.cfg.context.impl.ConstraintMappingContext

   *
   * @param mapping The constraint configuration created via the programmatic API.
   */
  private <T> void initProgrammaticConfiguration(ConstraintMapping mapping) {
   
    ConstraintMappingContext context = ConstraintMappingContext.getFromMapping(mapping);
   
    final Map<Class<?>, List<ConfiguredConstraint<?, BeanConstraintLocation>>> constraintsByType = context.getConstraintConfig();
    final Map<Class<?>, List<ConfiguredConstraint<?, MethodConstraintLocation>>> methodConstraintsByType = context
        .getMethodConstraintConfig();
    final Map<Class<?>, List<BeanConstraintLocation>> cascadeConfigByType = context.getCascadeConfig();
    final Map<Class<?>, List<MethodConstraintLocation>> methodCascadeConfigByType = context.getMethodCascadeConfig();

    for ( Class<?> clazz : context.getConfiguredClasses() ) {
      @SuppressWarnings("unchecked")
      Class<T> beanClass = (Class<T>) clazz;

      // for each configured entity we have to check whether any of the interfaces or super classes is configured
      // via the programmatic api as well
      List<Class<?>> classes = ReflectionHelper.computeClassHierarchy( beanClass, true );

      Map<Class<?>, List<BeanMetaConstraint<?>>> constraints = newHashMap();
      Set<AggregatedMethodMetaData.Builder> builders = newHashSet();
      Set<Member> cascadedMembers = newHashSet();

      for ( Class<?> classInHierarchy : classes ) {

        // if the programmatic config contains constraints for the class in the hierarchy create equivalent meta constraints
        List<ConfiguredConstraint<?, BeanConstraintLocation>> constraintsOfType = constraintsByType.get(
            classInHierarchy
        );
        if ( constraintsOfType != null ) {
          addProgrammaticConfiguredConstraints(
              constraintsOfType,
              beanClass,
              classInHierarchy,
              constraints
          );
        }

        // retrieve the method constraints
        List<ConfiguredConstraint<?, MethodConstraintLocation>> methodConstraintsOfType = methodConstraintsByType
            .get( classInHierarchy );
        if ( methodConstraintsOfType != null ) {
          addProgrammaticConfiguredMethodConstraint(
              methodConstraintsOfType, beanClass, classInHierarchy, builders
          );
        }

        // retrieve the cascading members of the current class if applicable
        List<BeanConstraintLocation> cascadesOfType = cascadeConfigByType.get( classInHierarchy );
        if ( cascadesOfType != null ) {
          addProgrammaticConfiguredCascade( cascadesOfType, cascadedMembers );
        }

        // retrieve the cascading method return value and method parameter
        List<MethodConstraintLocation> methodCascadesOfType = methodCascadeConfigByType.get( classInHierarchy );
        if ( methodCascadesOfType != null ) {
          addProgrammaticConfiguredMethodCascade( methodCascadesOfType, builders );
        }
      }

      // build the programmatic configured method metaData
      Set<AggregatedMethodMetaData> methodMetaDataMap = newHashSet();
      for ( AggregatedMethodMetaData.Builder oneBuilder : builders ) {
        methodMetaDataMap.add( oneBuilder.build() );
      }

      // create the bean metadata with the programmatic configured constraints and cascade
      BeanMetaDataImpl<T> metaData = new BeanMetaDataImpl<T>(
          beanClass,
          constraintHelper,
          context.getDefaultSequence( beanClass ),
          context.getDefaultGroupSequenceProvider( beanClass ),
          constraints,
          methodMetaDataMap,
          cascadedMembers,
          new AnnotationIgnores(),
          beanMetaDataCache
View Full Code Here

Examples of org.hibernate.validator.internal.cfg.context.ConstraintMappingContext

  private static final Log log  = LoggerFactory.make();

  public ProgrammaticMappingMetaDataProvider(ConstraintHelper constraintHelper, Set<ConstraintMapping> programmaticMappings) {
    super( constraintHelper );
    Contracts.assertNotNull( programmaticMappings );
    ConstraintMappingContext mergedContext = createMergedMappingContext( programmaticMappings );
    initProgrammaticConfiguration( mergedContext );
  }
View Full Code Here

Examples of org.hibernate.validator.internal.cfg.context.ConstraintMappingContext

    // if we only have one mapping we can return the context of just this mapping
    if ( programmaticMappings.size() == 1 ) {
      return ConstraintMappingContext.getFromMapping( programmaticMappings.iterator().next() );
    }

    ConstraintMappingContext mergedContext = new ConstraintMappingContext();
    for ( ConstraintMapping mapping : programmaticMappings ) {
      ConstraintMappingContext context = ConstraintMappingContext.getFromMapping( mapping );

      for ( Set<ConfiguredConstraint<?, BeanConstraintLocation>> propertyConstraints : context.getConstraintConfig()
          .values() ) {
        for ( ConfiguredConstraint<?, BeanConstraintLocation> constraint : propertyConstraints ) {
          mergedContext.addConstraintConfig( constraint );
        }
      }

      for ( Set<BeanConstraintLocation> beanConstraintLocations : context.getCascadeConfig().values() ) {
        for ( BeanConstraintLocation beanLocation : beanConstraintLocations ) {
          mergedContext.addCascadeConfig( beanLocation );
        }
      }

      for ( Set<ConfiguredConstraint<?, MethodConstraintLocation>> methodConstraints : context.getMethodConstraintConfig()
          .values() ) {
        for ( ConfiguredConstraint<?, MethodConstraintLocation> methodConstraint : methodConstraints ) {
          mergedContext.addMethodConstraintConfig( methodConstraint );
        }
      }

      for ( Set<MethodConstraintLocation> cascadedMethodConstraints : context.getMethodCascadeConfig()
          .values() ) {
        for ( MethodConstraintLocation methodCascade : cascadedMethodConstraints ) {
          mergedContext.addMethodCascadeConfig( methodCascade );
        }
      }
View Full Code Here

Examples of org.hibernate.validator.internal.cfg.context.ConstraintMappingContext

*/
public class ConstraintMapping {
  protected ConstraintMappingContext context;

  public ConstraintMapping() {
    context = new ConstraintMappingContext();
  }
View Full Code Here

Examples of org.hibernate.validator.internal.cfg.context.ConstraintMappingContext

  public ProgrammaticMetaDataProvider(ConstraintHelper constraintHelper, ParameterNameProvider parameterNameProvider, Set<ConstraintMapping> programmaticMappings) {
    super( constraintHelper );
    Contracts.assertNotNull( programmaticMappings );
    this.parameterNameProvider = parameterNameProvider;
    ConstraintMappingContext mergedContext = createMergedMappingContext( programmaticMappings );
    initProgrammaticConfiguration( mergedContext );
    annotationProcessingOptions = mergedContext.getAnnotationProcessingOptions();
  }
View Full Code Here

Examples of org.hibernate.validator.internal.cfg.context.ConstraintMappingContext

    // if we only have one mapping we can return the context of just this mapping
    if ( programmaticMappings.size() == 1 ) {
      return ( (DefaultConstraintMapping) programmaticMappings.iterator().next() ).getContext();
    }

    ConstraintMappingContext mergedContext = new ConstraintMappingContext();
    for ( ConstraintMapping mapping : programmaticMappings ) {
      ConstraintMappingContext context = ( (DefaultConstraintMapping) mapping ).getContext();

      mergedContext.getAnnotationProcessingOptions().merge( context.getAnnotationProcessingOptions() );

      for ( Set<ConfiguredConstraint<?, BeanConstraintLocation>> propertyConstraints : context.getConstraintConfig()
          .values() ) {
        for ( ConfiguredConstraint<?, BeanConstraintLocation> constraint : propertyConstraints ) {
          mergedContext.addConstraintConfig( constraint );
        }
      }

      for ( Set<BeanConstraintLocation> beanConstraintLocations : context.getCascadeConfig().values() ) {
        for ( BeanConstraintLocation beanLocation : beanConstraintLocations ) {
          mergedContext.addCascadeConfig( beanLocation );
        }
      }

      for ( Set<ConfiguredConstraint<?, ExecutableConstraintLocation>> methodConstraints : context.getMethodConstraintConfig()
          .values() ) {
        for ( ConfiguredConstraint<?, ExecutableConstraintLocation> methodConstraint : methodConstraints ) {
          mergedContext.addMethodConstraintConfig( methodConstraint );
        }
      }

      for ( Set<ExecutableConstraintLocation> cascadedMethodConstraints : context.getMethodCascadeConfig()
          .values() ) {
        for ( ExecutableConstraintLocation methodCascade : cascadedMethodConstraints ) {
          mergedContext.addMethodCascadeConfig( methodCascade );
        }
      }
View Full Code Here

Examples of org.hibernate.validator.internal.cfg.context.ConstraintMappingContext

  private final AnnotationProcessingOptions annotationProcessingOptions;

  public ProgrammaticMetaDataProvider(ConstraintHelper constraintHelper, Set<ConstraintMapping> programmaticMappings) {
    super( constraintHelper );
    Contracts.assertNotNull( programmaticMappings );
    ConstraintMappingContext mergedContext = createMergedMappingContext( programmaticMappings );
    initProgrammaticConfiguration( mergedContext );
    annotationProcessingOptions = mergedContext.getAnnotationProcessingOptions();
  }
View Full Code Here

Examples of org.hibernate.validator.internal.cfg.context.ConstraintMappingContext

    // if we only have one mapping we can return the context of just this mapping
    if ( programmaticMappings.size() == 1 ) {
      return ConstraintMappingContext.getFromMapping( programmaticMappings.iterator().next() );
    }

    ConstraintMappingContext mergedContext = new ConstraintMappingContext();
    for ( ConstraintMapping mapping : programmaticMappings ) {
      ConstraintMappingContext context = ConstraintMappingContext.getFromMapping( mapping );

      mergedContext.getAnnotationProcessingOptions().merge( context.getAnnotationProcessingOptions() );

      for ( Set<ConfiguredConstraint<?, BeanConstraintLocation>> propertyConstraints : context.getConstraintConfig()
          .values() ) {
        for ( ConfiguredConstraint<?, BeanConstraintLocation> constraint : propertyConstraints ) {
          mergedContext.addConstraintConfig( constraint );
        }
      }

      for ( Set<BeanConstraintLocation> beanConstraintLocations : context.getCascadeConfig().values() ) {
        for ( BeanConstraintLocation beanLocation : beanConstraintLocations ) {
          mergedContext.addCascadeConfig( beanLocation );
        }
      }

      for ( Set<ConfiguredConstraint<?, MethodConstraintLocation>> methodConstraints : context.getMethodConstraintConfig()
          .values() ) {
        for ( ConfiguredConstraint<?, MethodConstraintLocation> methodConstraint : methodConstraints ) {
          mergedContext.addMethodConstraintConfig( methodConstraint );
        }
      }

      for ( Set<MethodConstraintLocation> cascadedMethodConstraints : context.getMethodCascadeConfig()
          .values() ) {
        for ( MethodConstraintLocation methodCascade : cascadedMethodConstraints ) {
          mergedContext.addMethodCascadeConfig( methodCascade );
        }
      }
View Full Code Here

Examples of org.hibernate.validator.internal.cfg.context.ConstraintMappingContext

  private final AnnotationProcessingOptions annotationProcessingOptions;

  public ProgrammaticMetaDataProvider(ConstraintHelper constraintHelper, Set<ConstraintMapping> programmaticMappings) {
    super( constraintHelper );
    Contracts.assertNotNull( programmaticMappings );
    ConstraintMappingContext mergedContext = createMergedMappingContext( programmaticMappings );
    initProgrammaticConfiguration( mergedContext );
    annotationProcessingOptions = mergedContext.getAnnotationProcessingOptions();
  }
View Full Code Here
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.