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 void
handleArgumentsValidationResult
(Object bean, Method method, Object[] arguments, Class<?>[] groups, MethodValidationResult result) Subclasses can override this to handle the result of argument validation.protected void
handleReturnValueValidationResult
(Object bean, Method method, Object returnValue, Class<?>[] groups, MethodValidationResult result) Subclasses can override this to handle the result of return value validation.void
validateArguments
(Object target, Method method, MethodParameter[] parameters, Object[] arguments, Class<?>[] groups) Validate the given method arguments and return the result of validation.void
validateReturnValue
(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:MethodValidator
Use this method determine the validation groups to pass intoMethodValidator.validateArguments(Object, Method, MethodParameter[], Object[], Class[])
andMethodValidator.validateReturnValue(Object, Method, MethodParameter, Object, Class[])
.- Specified by:
determineValidationGroups
in interfaceMethodValidator
- Parameters:
bean
- the target Objectmethod
- the target method- Returns:
- the applicable validation groups as a
Class
array - See Also:
-
validateArguments
public void validateArguments(Object target, Method method, @Nullable MethodParameter[] parameters, Object[] arguments, Class<?>[] groups) Description copied from interface:MethodValidator
Validate the given method arguments and return the result of validation.- Specified by:
validateArguments
in 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:MethodValidator
Validate the given return value and return the result of validation.- Specified by:
validateReturnValue
in 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
-