Class DefaultMethodValidator
java.lang.Object
org.springframework.validation.beanvalidation.DefaultMethodValidator
- All Implemented Interfaces:
MethodValidator
- Direct Known Subclasses:
HandlerMethodValidator
Default implementation of
MethodValidator that delegates to a
MethodValidationAdapter. Also, convenient as a base class that allows
handling of the validation result.- Since:
- 6.1
- Author:
- Rossen Stoyanchev
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionClass<?>[]determineValidationGroups(Object bean, Method method) Use this method determine the validation groups to pass intoMethodValidator.validateArguments(Object, Method, MethodParameter[], Object[], Class[])andMethodValidator.validateReturnValue(Object, Method, MethodParameter, Object, Class[]).protected voidhandleArgumentsValidationResult(Object bean, Method method, Object[] arguments, Class<?>[] groups, MethodValidationResult result) Subclasses can override this to handle the result of argument validation.protected voidhandleReturnValueValidationResult(Object bean, Method method, Object returnValue, Class<?>[] groups, MethodValidationResult result) Subclasses can override this to handle the result of return value validation.voidvalidateArguments(Object target, Method method, MethodParameter[] parameters, Object[] arguments, Class<?>[] groups) Validate the given method arguments and return the result of validation.voidvalidateReturnValue(Object target, Method method, MethodParameter returnType, Object returnValue, Class<?>[] groups) Validate the given return value and return the result of validation.
-
Constructor Details
-
DefaultMethodValidator
-
-
Method Details
-
determineValidationGroups
Description copied from interface:MethodValidatorUse this method determine the validation groups to pass intoMethodValidator.validateArguments(Object, Method, MethodParameter[], Object[], Class[])andMethodValidator.validateReturnValue(Object, Method, MethodParameter, Object, Class[]).- Specified by:
determineValidationGroupsin interfaceMethodValidator- Parameters:
bean- the target Objectmethod- the target method- Returns:
- the applicable validation groups as a
Classarray - See Also:
-
validateArguments
public void validateArguments(Object target, Method method, @Nullable MethodParameter[] parameters, Object[] arguments, Class<?>[] groups) Description copied from interface:MethodValidatorValidate the given method arguments and return the result of validation.- Specified by:
validateArgumentsin interfaceMethodValidator- Parameters:
target- the target Objectmethod- the target methodparameters- the parameters, if already created and availablearguments- the candidate argument values to validategroups- groups for validation determined viaMethodValidator.determineValidationGroups(Object, Method)
-
validateReturnValue
public void validateReturnValue(Object target, Method method, @Nullable MethodParameter returnType, @Nullable Object returnValue, Class<?>[] groups) Description copied from interface:MethodValidatorValidate the given return value and return the result of validation.- Specified by:
validateReturnValuein interfaceMethodValidator- Parameters:
target- the target Objectmethod- the target methodreturnType- the return parameter, if already created and availablereturnValue- the return value to validategroups- groups for validation determined viaMethodValidator.determineValidationGroups(Object, Method)
-
handleArgumentsValidationResult
protected void handleArgumentsValidationResult(Object bean, Method method, Object[] arguments, Class<?>[] groups, MethodValidationResult result) Subclasses can override this to handle the result of argument validation. By default,MethodValidationResult.throwIfViolationsPresent()is called.- Parameters:
bean- the target Object for method invocationmethod- the target methodarguments- the candidate argument values to validategroups- groups for validation determined via
-
handleReturnValueValidationResult
protected void handleReturnValueValidationResult(Object bean, Method method, @Nullable Object returnValue, Class<?>[] groups, MethodValidationResult result) Subclasses can override this to handle the result of return value validation. By default,MethodValidationResult.throwIfViolationsPresent()is called.- Parameters:
bean- the target Object for method invocationmethod- the target methodreturnValue- the return value to validategroups- groups for validation determined via
-