+ cookie.getDomain());
}
}
}
final HttpServletResponse response = (HttpServletResponse) resp;
PFUserDO user = null;
try {
MDC.put("ip", request.getRemoteAddr());
MDC.put("session", request.getSession().getId());
if (ignoreFilterFor(request) == true) {
// Ignore the filter for this request:
if (log.isDebugEnabled() == true) {
log.debug("Ignore: " + request.getRequestURI());
}
chain.doFilter(request, response);
} else {
// final boolean sessionTimeout = request.isRequestedSessionIdValid() == false;
user = (PFUserDO) request.getSession().getAttribute(SESSION_KEY_USER);
if (user != null) {
if (updateRequiredFirst == false) {
// Get the fresh user from the user cache (not in maintenance mode because user group cache is perhaps not initialized correctly
// if updates of e. g. the user table are necessary.
user = Registry.instance().getUserGroupCache().getUser(user.getId());
}
if (log.isDebugEnabled() == true) {
log.debug("User found in session: " + request.getRequestURI());
}
} else if (updateRequiredFirst == false) {
// Ignore stay-logged-in if redirect to update page is required.
user = checkStayLoggedIn(request, response);
if (user != null) {
if (log.isDebugEnabled() == true) {
log.debug("User's stay logged-in cookie found: " + request.getRequestURI());
}
user.setAttribute(USER_ATTR_STAY_LOGGED_IN, true); // Used by MenuMobilePage.
UserFilter.login(request, user);
}
}
if (user != null) {
MDC.put("user", user.getUsername());
PFUserContext.setUser(user);
request = decorateWithLocale(request, user);
chain.doFilter(request, response);
} else {
if (((HttpServletRequest) req).getRequestURI().startsWith(WICKET_PAGES_PREFIX) == true) {