Class ValidatorContextImpl

java.lang.Object
org.hibernate.validator.internal.engine.ValidatorContextImpl
All Implemented Interfaces:
jakarta.validation.ValidatorContext, HibernateValidatorContext

public class ValidatorContextImpl extends Object implements HibernateValidatorContext
Author:
Emmanuel Bernard, Hardy Ferentschik, Kevin Pollet <kevin.pollet@serli.com> (C) 2011 SERLI, Gunnar Morling, Chris Beckey <cbeckey@paypal.com>
  • Constructor Details

  • Method Details

    • messageInterpolator

      public HibernateValidatorContext messageInterpolator(jakarta.validation.MessageInterpolator messageInterpolator)
      Specified by:
      messageInterpolator in interface HibernateValidatorContext
      Specified by:
      messageInterpolator in interface jakarta.validation.ValidatorContext
    • traversableResolver

      public HibernateValidatorContext traversableResolver(jakarta.validation.TraversableResolver traversableResolver)
      Specified by:
      traversableResolver in interface HibernateValidatorContext
      Specified by:
      traversableResolver in interface jakarta.validation.ValidatorContext
    • constraintValidatorFactory

      public HibernateValidatorContext constraintValidatorFactory(jakarta.validation.ConstraintValidatorFactory factory)
      Specified by:
      constraintValidatorFactory in interface HibernateValidatorContext
      Specified by:
      constraintValidatorFactory in interface jakarta.validation.ValidatorContext
    • parameterNameProvider

      public HibernateValidatorContext parameterNameProvider(jakarta.validation.ParameterNameProvider parameterNameProvider)
      Specified by:
      parameterNameProvider in interface HibernateValidatorContext
      Specified by:
      parameterNameProvider in interface jakarta.validation.ValidatorContext
    • clockProvider

      public HibernateValidatorContext clockProvider(jakarta.validation.ClockProvider clockProvider)
      Specified by:
      clockProvider in interface HibernateValidatorContext
      Specified by:
      clockProvider in interface jakarta.validation.ValidatorContext
    • addValueExtractor

      public HibernateValidatorContext addValueExtractor(jakarta.validation.valueextraction.ValueExtractor<?> extractor)
      Specified by:
      addValueExtractor in interface HibernateValidatorContext
      Specified by:
      addValueExtractor in interface jakarta.validation.ValidatorContext
    • failFast

      public HibernateValidatorContext failFast(boolean failFast)
      Description copied from interface: HibernateValidatorContext
      En- or disables the fail fast mode. When fail fast is enabled the validation will stop on the first constraint violation detected.
      Specified by:
      failFast in interface HibernateValidatorContext
      Parameters:
      failFast - true to enable fail fast, false otherwise.
      Returns:
      this following the chaining method pattern
    • allowOverridingMethodAlterParameterConstraint

      public HibernateValidatorContext allowOverridingMethodAlterParameterConstraint(boolean allow)
      Description copied from interface: HibernateValidatorContext
      Define whether overriding methods that override constraints should throw a ConstraintDefinitionException. The default value is false, i.e. do not allow.

      See Section 4.5.5 of the JSR 380 specification, specifically

       "In sub types (be it sub classes/interfaces or interface implementations), no parameter constraints may
       be declared on overridden or implemented methods, nor may parameters be marked for cascaded validation.
       This would pose a strengthening of preconditions to be fulfilled by the caller."
       
      Specified by:
      allowOverridingMethodAlterParameterConstraint in interface HibernateValidatorContext
      Parameters:
      allow - flag determining whether validation will allow overriding to alter parameter constraints.
      Returns:
      this following the chaining method pattern
    • allowMultipleCascadedValidationOnReturnValues

      public HibernateValidatorContext allowMultipleCascadedValidationOnReturnValues(boolean allow)
      Description copied from interface: HibernateValidatorContext
      Define whether more than one constraint on a return value may be marked for cascading validation are allowed. The default value is false, i.e. do not allow.

      See Section 4.5.5 of the JSR 380 specification, specifically

       "One must not mark a method return value for cascaded validation more than once in a line of a class hierarchy.
       In other words, overriding methods on sub types (be it sub classes/interfaces or interface implementations)
       cannot mark the return value for cascaded validation if the return value has already been marked on the
       overridden method of the super type or interface."
       
      Specified by:
      allowMultipleCascadedValidationOnReturnValues in interface HibernateValidatorContext
      Parameters:
      allow - flag determining whether validation will allow multiple cascaded validation on return values.
      Returns:
      this following the chaining method pattern
    • allowParallelMethodsDefineParameterConstraints

      public HibernateValidatorContext allowParallelMethodsDefineParameterConstraints(boolean allow)
      Description copied from interface: HibernateValidatorContext
      Define whether parallel methods that define constraints should throw a ConstraintDefinitionException. The default value is false, i.e. do not allow.

      See Section 4.5.5 of the JSR 380 specification, specifically

       "If a sub type overrides/implements a method originally defined in several parallel types of the hierarchy
       (e.g. two interfaces not extending each other, or a class and an interface not implemented by said class),
       no parameter constraints may be declared for that method at all nor parameters be marked for cascaded validation.
       This again is to avoid an unexpected strengthening of preconditions to be fulfilled by the caller."
       
      Specified by:
      allowParallelMethodsDefineParameterConstraints in interface HibernateValidatorContext
      Parameters:
      allow - flag determining whether validation will allow parameter constraints in parallel hierarchies
      Returns:
      this following the chaining method pattern
    • enableTraversableResolverResultCache

      public HibernateValidatorContext enableTraversableResolverResultCache(boolean enabled)
      Description copied from interface: HibernateValidatorContext
      Define whether the per validation call caching of TraversableResolver results is enabled. The default value is true, i.e. the caching is enabled.

      This behavior was initially introduced to cache the JPATraversableResolver results but the map lookups it introduces can be counterproductive when the TraversableResolver calls are very fast.

      Specified by:
      enableTraversableResolverResultCache in interface HibernateValidatorContext
      Parameters:
      enabled - flag determining whether per validation call caching is enabled for TraversableResolver results.
      Returns:
      this following the chaining method pattern
    • temporalValidationTolerance

      public HibernateValidatorContext temporalValidationTolerance(Duration temporalValidationTolerance)
      Description copied from interface: HibernateValidatorContext
      Define the temporal validation tolerance i.e. the acceptable margin of error when comparing date/time in temporal constraints.
      Specified by:
      temporalValidationTolerance in interface HibernateValidatorContext
      Parameters:
      temporalValidationTolerance - the tolerance
      Returns:
      this following the chaining method pattern
    • constraintValidatorPayload

      public HibernateValidatorContext constraintValidatorPayload(Object dynamicPayload)
      Description copied from interface: HibernateValidatorContext
      Define a payload passed to the constraint validators. If the method is called multiple times, only the payload passed last will be propagated.
      Specified by:
      constraintValidatorPayload in interface HibernateValidatorContext
      Parameters:
      dynamicPayload - the payload passed to constraint validators
      Returns:
      this following the chaining method pattern
    • getValidator

      public jakarta.validation.Validator getValidator()
      Specified by:
      getValidator in interface jakarta.validation.ValidatorContext