Class PrincipalMethodArgumentResolver
java.lang.Object
org.springframework.web.servlet.mvc.method.annotation.PrincipalMethodArgumentResolver
- All Implemented Interfaces:
HandlerMethodArgumentResolver
public class PrincipalMethodArgumentResolver
extends Object
implements HandlerMethodArgumentResolver
Resolves an argument of type
Principal, similar to
ServletRequestMethodArgumentResolver but irrespective of whether the
argument is annotated or not. This is done to enable custom argument
resolution of a Principal argument (with a custom annotation).- Since:
- 5.3.1
- Author:
- Rossen Stoyanchev
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionresolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory) Resolves a method parameter into an argument value from a given request.booleansupportsParameter(MethodParameter parameter) Whether the given method parameter is supported by this resolver.
-
Constructor Details
-
PrincipalMethodArgumentResolver
public PrincipalMethodArgumentResolver()
-
-
Method Details
-
supportsParameter
Description copied from interface:HandlerMethodArgumentResolverWhether the given method parameter is supported by this resolver.- Specified by:
supportsParameterin interfaceHandlerMethodArgumentResolver- Parameters:
parameter- the method parameter to check- Returns:
trueif this resolver supports the supplied parameter;falseotherwise
-
resolveArgument
public Object resolveArgument(MethodParameter parameter, @Nullable ModelAndViewContainer mavContainer, NativeWebRequest webRequest, @Nullable WebDataBinderFactory binderFactory) throws Exception Description copied from interface:HandlerMethodArgumentResolverResolves a method parameter into an argument value from a given request. AModelAndViewContainerprovides access to the model for the request. AWebDataBinderFactoryprovides a way to create aWebDataBinderinstance when needed for data binding and type conversion purposes.- Specified by:
resolveArgumentin interfaceHandlerMethodArgumentResolver- Parameters:
parameter- the method parameter to resolve. This parameter must have previously been passed toHandlerMethodArgumentResolver.supportsParameter(org.springframework.core.MethodParameter)which must have returnedtrue.mavContainer- the ModelAndViewContainer for the current requestwebRequest- the current requestbinderFactory- a factory for creatingWebDataBinderinstances- Returns:
- the resolved argument value, or
nullif not resolvable - Throws:
Exception- in case of errors with the preparation of argument values
-