Spring Rest filter Цепочка данных
У меня есть веб-приложение Spring Rest. И создал фильтр авторизации. на этом слое я получаю пользователя, который необходим в методах RestController. Я хочу избежать дублирования запросов к БД. Можно ли передать некоторые объекты из Filter в RestController Methods в качестве параметра?
@Override
public void doFilter(ServletRequest req, ServletResponse res,
FilterChain chain) throws IOException,
ServletException {
String authorization = ((HttpServletRequest) req).getHeader("Authorization");
DeviceEntity deviceEntity = mDeviceService.byToken(authorization);
if (deviceEntity != null) {
if (new Date().before(deviceEntity.getExpireOn())) {
chain.doFilter(req, res);
}
} else {
((HttpServletResponse) res).setStatus(HttpServletResponse.SC_UNAUTHORIZED);
}
}
Я хочу передать deviceEntity в следующий класс
@RestController
@RequestMapping("/general")
public class RestService {
@RequestMapping(value = "/ping", method = RequestMethod.GET)
@ResponseStatus(HttpStatus.OK)
public void ping(DeviceEntity de) {
// ^^^^^^^^^^
//i want to have access to this device here
LOG.info("Ping called");
}
}
Мне нужен какой-то способ передать эту сущность устройства в метод RequestMapped