Class BeanValidationHandler.PersistenceTraversalResolver

  • All Implemented Interfaces:
    javax.validation.TraversableResolver
    Enclosing class:
    BeanValidationHandler

    static class BeanValidationHandler.PersistenceTraversalResolver
    extends java.lang.Object
    implements javax.validation.TraversableResolver
    Resolver for traversal of validation.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      (package private) ExecutionContext ec  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean isCascadable​(java.lang.Object traversableObject, javax.validation.Path.Node traversableProperty, java.lang.Class<?> rootBeanType, javax.validation.Path pathToTraversableObject, java.lang.annotation.ElementType elementType)
      Determine if the Bean Validation provider is allowed to cascade validation on the bean instance returned by the property value marked as @Valid.
      boolean isReachable​(java.lang.Object traversableObject, javax.validation.Path.Node traversableProperty, java.lang.Class<?> rootBeanType, javax.validation.Path pathToTraversableObject, java.lang.annotation.ElementType elementType)
      Determine if the Bean Validation provider is allowed to reach the property state
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • PersistenceTraversalResolver

        PersistenceTraversalResolver​(ExecutionContext ec)
    • Method Detail

      • isCascadable

        public boolean isCascadable​(java.lang.Object traversableObject,
                                    javax.validation.Path.Node traversableProperty,
                                    java.lang.Class<?> rootBeanType,
                                    javax.validation.Path pathToTraversableObject,
                                    java.lang.annotation.ElementType elementType)
        Determine if the Bean Validation provider is allowed to cascade validation on the bean instance returned by the property value marked as @Valid. Note that this method is called only if isReachable returns true for the same set of arguments and if the property is marked as @Valid
        Specified by:
        isCascadable in interface javax.validation.TraversableResolver
        Parameters:
        traversableObject - object hosting traversableProperty or null if validateValue is called
        traversableProperty - the traversable property.
        rootBeanType - type of the root object passed to the Validator.
        pathToTraversableObject - path from the root object to traversableObject (using the path specification defined by Bean Validator).
        elementType - either FIELD or METHOD.
        Returns:
        true if the Bean Validation provider is allowed to cascade validation, false otherwise.
      • isReachable

        public boolean isReachable​(java.lang.Object traversableObject,
                                   javax.validation.Path.Node traversableProperty,
                                   java.lang.Class<?> rootBeanType,
                                   javax.validation.Path pathToTraversableObject,
                                   java.lang.annotation.ElementType elementType)
        Determine if the Bean Validation provider is allowed to reach the property state
        Specified by:
        isReachable in interface javax.validation.TraversableResolver
        Parameters:
        traversableObject - object hosting traversableProperty or null if validateValue is called
        traversableProperty - the traversable property.
        rootBeanType - type of the root object passed to the Validator.
        pathToTraversableObject - path from the root object to traversableObject (using the path specification defined by Bean Validator).
        elementType - either FIELD or METHOD.
        Returns:
        true if the Bean Validation provider is allowed to reach the property state, false otherwise.