package com.qianwen.core.boot.resolver; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.qianwen.core.secure.BladeUser; import com.qianwen.core.secure.utils.AuthUtil; import org.springframework.core.MethodParameter; import org.springframework.web.bind.support.WebDataBinderFactory; import org.springframework.web.context.request.NativeWebRequest; import org.springframework.web.method.support.HandlerMethodArgumentResolver; import org.springframework.web.method.support.ModelAndViewContainer; public class TokenArgumentResolver implements HandlerMethodArgumentResolver { private static final Logger log = LoggerFactory.getLogger(TokenArgumentResolver.class); public boolean supportsParameter(MethodParameter methodParameter) { return methodParameter.getParameterType().equals(BladeUser.class); } public Object resolveArgument(MethodParameter methodParameter, ModelAndViewContainer modelAndViewContainer, NativeWebRequest nativeWebRequest, WebDataBinderFactory webDataBinderFactory) { return AuthUtil.getUser(); } }