in appactive-java-client/client-bridge/client-bridge-rpc-springcloud/client-bridge-rpc-springcloud-common/src/main/java/io/appactive/rpc/springcloud/common/provider/UnitServiceFilter.java [54:72]
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
throws IOException, ServletException {
if (!(request instanceof HttpServletRequest && response instanceof HttpServletResponse)) {
chain.doFilter(request, response);
return;
}
HttpServletRequest httpRequest = (HttpServletRequest)request;
String routerId = ServletService.getRouteIdFromHeader(httpRequest, Constants.ROUTER_ID_HEADER_KEY);
if (StringUtils.isBlank(routerId)){
throw new ResponseStatusException(HttpStatus.FORBIDDEN, "no routerId provided for this request");
}
if (!trafficMachineService.isInCurrentUnit(routerId)) {
throw new ResponseStatusException(HttpStatus.FORBIDDEN, "routerId "+ routerId + " does not belong in unit:"+ machineUnitRuleService.getCurrentUnit());
}
AppContextClient.setUnitContext(routerId);
LogUtil.info(AppactiveConstant.PROJECT_NAME + "-routerIdFilter-doFilter-header:" + AppContextClient.getRouteId());
chain.doFilter(request, response);
clear();
}