From cdca9c31ed9b148ae56e9767128b8dfcac757ff3 Mon Sep 17 00:00:00 2001 From: "David M. Johnson" Date: Mon, 20 Jan 2025 13:18:38 -0500 Subject: [PATCH] Make it clear RollerSession is a UI thing. --- ...RollerSession.java => RollerUISession.java} | 16 ++++++++-------- ...tener.java => RollerUISessionListener.java} | 6 +++--- ...anager.java => RollerUISessionManager.java} | 12 ++++++------ ...ssionManager.java => UISessionManager.java} | 6 +++--- .../ui/core/filters/LoadSaltFilter.java | 10 +++++----- .../ui/core/filters/ValidateSaltFilter.java | 10 +++++----- .../weblogger/ui/struts2/admin/UserEdit.java | 13 ++++++------- .../ui/struts2/ajax/CommentDataServlet.java | 10 +++++----- .../weblogger/ui/struts2/core/Register.java | 5 ++--- .../ui/struts2/util/UIActionInterceptor.java | 10 +++++----- .../ui/struts2/util/UIBeanFactory.java | 10 +++++----- app/src/main/webapp/WEB-INF/web.xml | 2 +- .../main/webapp/roller-ui/login-redirect.jsp | 7 ++++--- .../main/webapp/roller-ui/logout-redirect.jsp | 5 +++-- ...st.java => RollerUISessionManagerTest.java} | 15 +++++++-------- .../ui/core/filters/LoadSaltFilterTest.java | 10 +++++----- .../core/filters/ValidateSaltFilterTest.java | 18 +++++++++--------- 17 files changed, 82 insertions(+), 83 deletions(-) rename app/src/main/java/org/apache/roller/weblogger/ui/core/{RollerSession.java => RollerUISession.java} (89%) rename app/src/main/java/org/apache/roller/weblogger/ui/core/{RollerSessionListener.java => RollerUISessionListener.java} (86%) rename app/src/main/java/org/apache/roller/weblogger/ui/core/{RollerSessionManager.java => RollerUISessionManager.java} (89%) rename app/src/main/java/org/apache/roller/weblogger/ui/core/{SessionManager.java => UISessionManager.java} (87%) rename app/src/test/java/org/apache/roller/weblogger/ui/core/{RollerSessionManagerTest.java => RollerUISessionManagerTest.java} (88%) diff --git a/app/src/main/java/org/apache/roller/weblogger/ui/core/RollerSession.java b/app/src/main/java/org/apache/roller/weblogger/ui/core/RollerUISession.java similarity index 89% rename from app/src/main/java/org/apache/roller/weblogger/ui/core/RollerSession.java rename to app/src/main/java/org/apache/roller/weblogger/ui/core/RollerUISession.java index cb909a7390..985e95d158 100644 --- a/app/src/main/java/org/apache/roller/weblogger/ui/core/RollerSession.java +++ b/app/src/main/java/org/apache/roller/weblogger/ui/core/RollerUISession.java @@ -39,7 +39,7 @@ /** * Roller session handles session startup and shutdown. */ -public class RollerSession implements HttpSessionListener, HttpSessionActivationListener, Serializable { +public class RollerUISession implements HttpSessionListener, HttpSessionActivationListener, Serializable { private static final long serialVersionUID = 5890132909166913727L; private static final Log log; @@ -47,18 +47,18 @@ public class RollerSession implements HttpSessionListener, HttpSessionActivation // the id of the user represented by this session private String userName = null; - private SessionManager sessionManager; + private UISessionManager UISessionManager; public static final String ROLLER_SESSION = "org.apache.roller.weblogger.rollersession"; static{ WebloggerConfig.init(); // must be called before calls to logging APIs - log = LogFactory.getLog(RollerSession.class); + log = LogFactory.getLog(RollerUISession.class); } @Inject - public RollerSession(SessionManager sessionManager, HttpServletRequest request) { - this.sessionManager = sessionManager; + public RollerUISession(UISessionManager UISessionManager, HttpServletRequest request) { + this.UISessionManager = UISessionManager; // No session exists yet, nothing to do HttpSession session = request.getSession(false); @@ -67,13 +67,13 @@ public RollerSession(SessionManager sessionManager, HttpServletRequest request) } // Get or create roller session in HTTP session - RollerSession storedSession = (RollerSession)session.getAttribute(ROLLER_SESSION); + RollerUISession storedSession = (RollerUISession)session.getAttribute(ROLLER_SESSION); if (storedSession == null) { session.setAttribute(ROLLER_SESSION, this); } // If stored session exists with authenticated user but not in cache, override it else if (storedSession.getAuthenticatedUser() != null - && sessionManager.get(storedSession.getAuthenticatedUser().getUserName()) == null) { + && UISessionManager.get(storedSession.getAuthenticatedUser().getUserName()) == null) { session.setAttribute(ROLLER_SESSION, this); } @@ -154,6 +154,6 @@ public User getAuthenticatedUser() { */ public void setAuthenticatedUser(User authenticatedUser) { this.userName = authenticatedUser.getUserName(); - sessionManager.register(authenticatedUser.getUserName(), this); + UISessionManager.register(authenticatedUser.getUserName(), this); } } diff --git a/app/src/main/java/org/apache/roller/weblogger/ui/core/RollerSessionListener.java b/app/src/main/java/org/apache/roller/weblogger/ui/core/RollerUISessionListener.java similarity index 86% rename from app/src/main/java/org/apache/roller/weblogger/ui/core/RollerSessionListener.java rename to app/src/main/java/org/apache/roller/weblogger/ui/core/RollerUISessionListener.java index f0e3ea754a..2d3a791fae 100644 --- a/app/src/main/java/org/apache/roller/weblogger/ui/core/RollerSessionListener.java +++ b/app/src/main/java/org/apache/roller/weblogger/ui/core/RollerUISessionListener.java @@ -27,8 +27,8 @@ import javax.servlet.http.HttpSessionListener; -public class RollerSessionListener implements HttpSessionListener, HttpSessionActivationListener { - private static final Log log = LogFactory.getLog(RollerSessionListener.class); +public class RollerUISessionListener implements HttpSessionListener, HttpSessionActivationListener { + private static final Log log = LogFactory.getLog(RollerUISessionListener.class); @Override public void sessionDestroyed(HttpSessionEvent se) { @@ -43,7 +43,7 @@ public void sessionWillPassivate(HttpSessionEvent se) { private void clearSession(HttpSessionEvent se) { HttpSession session = se.getSession(); try { - session.removeAttribute(RollerSession.ROLLER_SESSION); + session.removeAttribute(RollerUISession.ROLLER_SESSION); } catch (Exception e) { log.debug("Exception purging session attributes", e); } diff --git a/app/src/main/java/org/apache/roller/weblogger/ui/core/RollerSessionManager.java b/app/src/main/java/org/apache/roller/weblogger/ui/core/RollerUISessionManager.java similarity index 89% rename from app/src/main/java/org/apache/roller/weblogger/ui/core/RollerSessionManager.java rename to app/src/main/java/org/apache/roller/weblogger/ui/core/RollerUISessionManager.java index 4f269da909..c2e0079667 100644 --- a/app/src/main/java/org/apache/roller/weblogger/ui/core/RollerSessionManager.java +++ b/app/src/main/java/org/apache/roller/weblogger/ui/core/RollerUISessionManager.java @@ -28,13 +28,13 @@ import java.util.HashMap; import java.util.Map; -public class RollerSessionManager implements SessionManager { - private static final Log log = LogFactory.getLog(RollerSessionManager.class); +public class RollerUISessionManager implements UISessionManager { + private static final Log log = LogFactory.getLog(RollerUISessionManager.class); private static final String CACHE_ID = "roller.session.cache"; private final Cache sessionCache; - public RollerSessionManager() { + public RollerUISessionManager() { Map cacheProps = new HashMap<>(); cacheProps.put("id", CACHE_ID); cacheProps.put("size", "1000"); // Default cache size @@ -43,7 +43,7 @@ public RollerSessionManager() { CacheManager.registerHandler(new SessionCacheHandler()); } - public void register(String userName, RollerSession session) { + public void register(String userName, RollerUISession session) { if (userName != null && session != null) { try { this.sessionCache.put(userName, session); @@ -54,10 +54,10 @@ public void register(String userName, RollerSession session) { } } - public RollerSession get(String userName) { + public RollerUISession get(String userName) { if (userName != null) { try { - return (RollerSession) this.sessionCache.get(userName); + return (RollerUISession) this.sessionCache.get(userName); } catch (Exception e) { log.error("Failed to retrieve session for user: " + userName, e); } diff --git a/app/src/main/java/org/apache/roller/weblogger/ui/core/SessionManager.java b/app/src/main/java/org/apache/roller/weblogger/ui/core/UISessionManager.java similarity index 87% rename from app/src/main/java/org/apache/roller/weblogger/ui/core/SessionManager.java rename to app/src/main/java/org/apache/roller/weblogger/ui/core/UISessionManager.java index e3594bb2e5..288547fda6 100644 --- a/app/src/main/java/org/apache/roller/weblogger/ui/core/SessionManager.java +++ b/app/src/main/java/org/apache/roller/weblogger/ui/core/UISessionManager.java @@ -18,9 +18,9 @@ package org.apache.roller.weblogger.ui.core; -public interface SessionManager { - void register(String userName, RollerSession session); - RollerSession get(String userName); +public interface UISessionManager { + void register(String userName, RollerUISession session); + RollerUISession get(String userName); void invalidate(String userName); } diff --git a/app/src/main/java/org/apache/roller/weblogger/ui/core/filters/LoadSaltFilter.java b/app/src/main/java/org/apache/roller/weblogger/ui/core/filters/LoadSaltFilter.java index 4ab2696bec..92d88d23ca 100644 --- a/app/src/main/java/org/apache/roller/weblogger/ui/core/filters/LoadSaltFilter.java +++ b/app/src/main/java/org/apache/roller/weblogger/ui/core/filters/LoadSaltFilter.java @@ -25,7 +25,7 @@ import org.apache.commons.lang3.RandomStringUtils; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import org.apache.roller.weblogger.ui.core.RollerSession; +import org.apache.roller.weblogger.ui.core.RollerUISession; import org.apache.roller.weblogger.ui.rendering.util.cache.SaltCache; import org.apache.roller.weblogger.ui.struts2.util.UIBeanFactory; @@ -41,11 +41,11 @@ public void doFilter(ServletRequest request, ServletResponse response, FilterCha throws IOException, ServletException { HttpServletRequest httpReq = (HttpServletRequest) request; - RollerSession rollerSession = UIBeanFactory.getBean(RollerSession.class, httpReq); + RollerUISession rollerUISession = UIBeanFactory.getBean(RollerUISession.class, httpReq); - if (rollerSession != null) { - String userId = rollerSession.getAuthenticatedUser() != null ? - rollerSession.getAuthenticatedUser().getId() : ""; + if (rollerUISession != null) { + String userId = rollerUISession.getAuthenticatedUser() != null ? + rollerUISession.getAuthenticatedUser().getId() : ""; SaltCache saltCache = SaltCache.getInstance(); String salt = RandomStringUtils.random(20, 0, 0, true, true, null, new SecureRandom()); saltCache.put(salt, userId); diff --git a/app/src/main/java/org/apache/roller/weblogger/ui/core/filters/ValidateSaltFilter.java b/app/src/main/java/org/apache/roller/weblogger/ui/core/filters/ValidateSaltFilter.java index 19250e0618..37c1714b6e 100644 --- a/app/src/main/java/org/apache/roller/weblogger/ui/core/filters/ValidateSaltFilter.java +++ b/app/src/main/java/org/apache/roller/weblogger/ui/core/filters/ValidateSaltFilter.java @@ -36,7 +36,7 @@ import org.apache.commons.logging.LogFactory; import org.apache.roller.weblogger.config.WebloggerConfig; import org.apache.roller.weblogger.ui.rendering.util.cache.SaltCache; -import org.apache.roller.weblogger.ui.core.RollerSession; +import org.apache.roller.weblogger.ui.core.RollerUISession; import org.apache.roller.weblogger.ui.struts2.util.UIBeanFactory; /** @@ -52,7 +52,7 @@ public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { HttpServletRequest httpReq = (HttpServletRequest) request; - RollerSession rollerSession = UIBeanFactory.getBean(RollerSession.class, httpReq); + RollerUISession rollerUISession = UIBeanFactory.getBean(RollerUISession.class, httpReq); String requestURL = httpReq.getRequestURL().toString(); String queryString = httpReq.getQueryString(); @@ -61,9 +61,9 @@ public void doFilter(ServletRequest request, ServletResponse response, } if ("POST".equals(httpReq.getMethod()) && !isIgnoredURL(requestURL)) { - if (rollerSession != null) { - String userId = rollerSession.getAuthenticatedUser() != null ? - rollerSession.getAuthenticatedUser().getId() : ""; + if (rollerUISession != null) { + String userId = rollerUISession.getAuthenticatedUser() != null ? + rollerUISession.getAuthenticatedUser().getId() : ""; String salt = httpReq.getParameter("salt"); SaltCache saltCache = SaltCache.getInstance(); diff --git a/app/src/main/java/org/apache/roller/weblogger/ui/struts2/admin/UserEdit.java b/app/src/main/java/org/apache/roller/weblogger/ui/struts2/admin/UserEdit.java index a1b506815d..33fa0ca116 100644 --- a/app/src/main/java/org/apache/roller/weblogger/ui/struts2/admin/UserEdit.java +++ b/app/src/main/java/org/apache/roller/weblogger/ui/struts2/admin/UserEdit.java @@ -37,9 +37,8 @@ import org.apache.roller.weblogger.pojos.GlobalPermission; import org.apache.roller.weblogger.pojos.User; import org.apache.roller.weblogger.pojos.WeblogPermission; -import org.apache.roller.weblogger.ui.core.RollerSession; -import org.apache.roller.weblogger.ui.core.RollerSessionManager; -import org.apache.roller.weblogger.ui.core.SessionManager; +import org.apache.roller.weblogger.ui.core.RollerUISessionManager; +import org.apache.roller.weblogger.ui.core.UISessionManager; import org.apache.roller.weblogger.ui.struts2.core.Register; import org.apache.roller.weblogger.ui.struts2.util.UIAction; import org.apache.struts2.interceptor.ServletRequestAware; @@ -148,9 +147,9 @@ public String firstSave() { */ public String save() { - SessionManager sessionManager; + UISessionManager UISessionManager; try { - sessionManager = UIBeanFactory.getBean(RollerSessionManager.class, request); + UISessionManager = UIBeanFactory.getBean(RollerUISessionManager.class, request); } catch (ServletException e) { log.error("Failed to get RollerSessionManager", e); throw new RuntimeException("Failed to get RollerSessionManager", e); @@ -187,13 +186,13 @@ public String save() { // invalidate user's session if it's not user executing this action if (!getAuthenticatedUser().getUserName().equals(user.getUserName())) { - sessionManager.invalidate(user.getUserName()); + UISessionManager.invalidate(user.getUserName()); } } // if user is disabled and not the same as the user executing this action, then invalidate their session if (!user.getEnabled() && !getAuthenticatedUser().getUserName().equals(user.getUserName())) { - sessionManager.invalidate(user.getUserName()); + UISessionManager.invalidate(user.getUserName()); } try { diff --git a/app/src/main/java/org/apache/roller/weblogger/ui/struts2/ajax/CommentDataServlet.java b/app/src/main/java/org/apache/roller/weblogger/ui/struts2/ajax/CommentDataServlet.java index 5306af9934..97dc1c8ac0 100644 --- a/app/src/main/java/org/apache/roller/weblogger/ui/struts2/ajax/CommentDataServlet.java +++ b/app/src/main/java/org/apache/roller/weblogger/ui/struts2/ajax/CommentDataServlet.java @@ -34,7 +34,7 @@ import org.apache.roller.weblogger.pojos.Weblog; import org.apache.roller.weblogger.pojos.WeblogEntryComment; import org.apache.roller.weblogger.pojos.WeblogPermission; -import org.apache.roller.weblogger.ui.core.RollerSession; +import org.apache.roller.weblogger.ui.core.RollerUISession; import org.apache.roller.weblogger.ui.struts2.util.UIBeanFactory; import org.apache.roller.weblogger.util.Utilities; @@ -58,7 +58,7 @@ public void init() throws ServletException { */ @Override public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { - RollerSession rollerSession = UIBeanFactory.getBean(RollerSession.class, request); + RollerUISession rollerUISession = UIBeanFactory.getBean(RollerUISession.class, request); Weblogger roller = WebloggerFactory.getWeblogger(); try { @@ -69,7 +69,7 @@ public void doGet(HttpServletRequest request, HttpServletResponse response) thro } else { // need post permission to view comments Weblog weblog = c.getWeblogEntry().getWebsite(); - if (weblog.hasUserPermission(rollerSession.getAuthenticatedUser(), WeblogPermission.POST)) { + if (weblog.hasUserPermission(rollerUISession.getAuthenticatedUser(), WeblogPermission.POST)) { String content = Utilities.escapeHTML(c.getContent()); content = StringEscapeUtils.escapeEcmaScript(content); String json = "{ id: \"" + c.getId() + "\"," + "content: \"" + content + "\" }"; @@ -95,7 +95,7 @@ public void doGet(HttpServletRequest request, HttpServletResponse response) thro */ @Override public void doPut(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { - RollerSession rollerSession = UIBeanFactory.getBean(RollerSession.class, request); + RollerUISession rollerUISession = UIBeanFactory.getBean(RollerUISession.class, request); Weblogger roller = WebloggerFactory.getWeblogger(); try { @@ -106,7 +106,7 @@ public void doPut(HttpServletRequest request, HttpServletResponse response) thro } else { // need post permission to edit comments Weblog weblog = c.getWeblogEntry().getWebsite(); - if (weblog.hasUserPermission(rollerSession.getAuthenticatedUser(), WeblogPermission.POST)) { + if (weblog.hasUserPermission(rollerUISession.getAuthenticatedUser(), WeblogPermission.POST)) { String content = Utilities.streamToString(request.getInputStream()); c.setContent(content); // don't update the posttime when updating the comment diff --git a/app/src/main/java/org/apache/roller/weblogger/ui/struts2/core/Register.java b/app/src/main/java/org/apache/roller/weblogger/ui/struts2/core/Register.java index 1d8f6628ae..278fbc9674 100644 --- a/app/src/main/java/org/apache/roller/weblogger/ui/struts2/core/Register.java +++ b/app/src/main/java/org/apache/roller/weblogger/ui/struts2/core/Register.java @@ -33,11 +33,10 @@ import org.apache.roller.weblogger.config.WebloggerConfig; import org.apache.roller.weblogger.config.WebloggerRuntimeConfig; import org.apache.roller.weblogger.pojos.User; -import org.apache.roller.weblogger.ui.core.RollerSession; +import org.apache.roller.weblogger.ui.core.RollerUISession; import org.apache.roller.weblogger.ui.core.security.CustomUserRegistry; import org.apache.roller.weblogger.ui.struts2.util.UIAction; import org.apache.roller.weblogger.util.MailUtil; -import org.apache.struts2.convention.annotation.AllowedMethods; import org.apache.struts2.interceptor.ServletRequestAware; import org.apache.struts2.interceptor.validation.SkipValidation; @@ -237,7 +236,7 @@ public String save() { // Invalidate session, otherwise new user who was originally // authenticated via LDAP/SSO will remain logged in but // without a valid Roller role. - getServletRequest().getSession().removeAttribute(RollerSession.ROLLER_SESSION); + getServletRequest().getSession().removeAttribute(RollerUISession.ROLLER_SESSION); getServletRequest().getSession().invalidate(); // set a special page title diff --git a/app/src/main/java/org/apache/roller/weblogger/ui/struts2/util/UIActionInterceptor.java b/app/src/main/java/org/apache/roller/weblogger/ui/struts2/util/UIActionInterceptor.java index 0bbd2e3506..3b90edb262 100644 --- a/app/src/main/java/org/apache/roller/weblogger/ui/struts2/util/UIActionInterceptor.java +++ b/app/src/main/java/org/apache/roller/weblogger/ui/struts2/util/UIActionInterceptor.java @@ -26,7 +26,7 @@ import org.apache.commons.logging.LogFactory; import org.apache.roller.weblogger.business.WebloggerFactory; import org.apache.roller.weblogger.pojos.Weblog; -import org.apache.roller.weblogger.ui.core.RollerSession; +import org.apache.roller.weblogger.ui.core.RollerUISession; import org.apache.struts2.StrutsStatics; import com.opensymphony.xwork2.ActionContext; @@ -51,9 +51,9 @@ public String doIntercept(ActionInvocation invocation) throws Exception { final ActionContext context = invocation.getInvocationContext(); HttpServletRequest request = (HttpServletRequest) context.get(HTTP_REQUEST); - RollerSession rollerSession; + RollerUISession rollerUISession; try { - rollerSession = UIBeanFactory.getBean(RollerSession.class, request); + rollerUISession = UIBeanFactory.getBean(RollerUISession.class, request); } catch (ServletException e) { log.error("Failed to instantiate RollerSession", e); throw new RuntimeException("Failed to instantiate RollerSession", e); @@ -73,8 +73,8 @@ public String doIntercept(ActionInvocation invocation) throws Exception { UIAction theAction = (UIAction) action; - if (rollerSession != null) { - theAction.setAuthenticatedUser(rollerSession.getAuthenticatedUser()); + if (rollerUISession != null) { + theAction.setAuthenticatedUser(rollerUISession.getAuthenticatedUser()); } // extract the work weblog and set it diff --git a/app/src/main/java/org/apache/roller/weblogger/ui/struts2/util/UIBeanFactory.java b/app/src/main/java/org/apache/roller/weblogger/ui/struts2/util/UIBeanFactory.java index 58934c85e2..64063fa548 100644 --- a/app/src/main/java/org/apache/roller/weblogger/ui/struts2/util/UIBeanFactory.java +++ b/app/src/main/java/org/apache/roller/weblogger/ui/struts2/util/UIBeanFactory.java @@ -20,8 +20,8 @@ import com.opensymphony.xwork2.ObjectFactory; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import org.apache.roller.weblogger.ui.core.RollerSession; -import org.apache.roller.weblogger.ui.core.RollerSessionManager; +import org.apache.roller.weblogger.ui.core.RollerUISession; +import org.apache.roller.weblogger.ui.core.RollerUISessionManager; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; @@ -33,15 +33,15 @@ public class UIBeanFactory extends ObjectFactory { @Override public Object buildBean(Class clazz, Map extraContext) throws Exception { - if (clazz == RollerSession.class) { + if (clazz == RollerUISession.class) { return createRollerSession(extraContext); } return super.buildBean(clazz, extraContext); } - private RollerSession createRollerSession(Map extraContext) { + private RollerUISession createRollerSession(Map extraContext) { HttpServletRequest request = (HttpServletRequest) extraContext.get("request"); - return new RollerSession(new RollerSessionManager(), request); + return new RollerUISession(new RollerUISessionManager(), request); } public static T getBean(Class beanClass) throws ServletException { diff --git a/app/src/main/webapp/WEB-INF/web.xml b/app/src/main/webapp/WEB-INF/web.xml index e75cb68693..03bc26845f 100644 --- a/app/src/main/webapp/WEB-INF/web.xml +++ b/app/src/main/webapp/WEB-INF/web.xml @@ -174,7 +174,7 @@ - org.apache.roller.weblogger.ui.core.RollerSessionListener + org.apache.roller.weblogger.ui.core.RollerUISessionListener diff --git a/app/src/main/webapp/roller-ui/login-redirect.jsp b/app/src/main/webapp/roller-ui/login-redirect.jsp index 8457add1c9..63936b1106 100644 --- a/app/src/main/webapp/roller-ui/login-redirect.jsp +++ b/app/src/main/webapp/roller-ui/login-redirect.jsp @@ -19,17 +19,18 @@ <%@ page import="org.apache.roller.weblogger.business.*" %> <%@ page import="org.apache.roller.weblogger.pojos.*" %> <%@ page import="org.apache.roller.weblogger.ui.struts2.util.UIBeanFactory" %> -<%@ page import="org.apache.roller.weblogger.ui.core.RollerSession" %> +<%@ page import="org.apache.roller.weblogger.ui.core.RollerUISession" %> <%@ page import="java.util.List" %> <%@ page import="org.apache.roller.weblogger.WebloggerException" %> <%@ page import="java.util.Collections" %> <%@ page import="org.apache.commons.logging.Log" %> <%@ page import="org.apache.commons.logging.LogFactory" %> +<%@ page import="org.apache.roller.weblogger.ui.core.RollerUISession" %> <% Log log = LogFactory.getLog("login-redirect.jsp"); -RollerSession rollerSession = UIBeanFactory.getBean(RollerSession.class, request); -User user = rollerSession.getAuthenticatedUser(); +RollerUISession rollerUISession = UIBeanFactory.getBean(RollerUISession.class, request); +User user = rollerUISession.getAuthenticatedUser(); List weblogs; try { diff --git a/app/src/main/webapp/roller-ui/logout-redirect.jsp b/app/src/main/webapp/roller-ui/logout-redirect.jsp index 45211b9eb6..4dc1319aac 100644 --- a/app/src/main/webapp/roller-ui/logout-redirect.jsp +++ b/app/src/main/webapp/roller-ui/logout-redirect.jsp @@ -16,12 +16,13 @@ directory of this distribution. --%> <%@ page language="java" contentType="text/html; charset=UTF-8" %> -<%@ page import="org.apache.roller.weblogger.ui.core.RollerSession" %> +<%@ page import="org.apache.roller.weblogger.ui.core.RollerUISession" %> <%@ page import="javax.servlet.http.Cookie" %> <%@ page import="org.springframework.security.web.authentication.rememberme.TokenBasedRememberMeServices" %> +<%@ page import="org.apache.roller.weblogger.ui.core.RollerUISession" %> <% -request.getSession().removeAttribute(RollerSession.ROLLER_SESSION); +request.getSession().removeAttribute(RollerUISession.ROLLER_SESSION); request.getSession().invalidate(); // Mimic exactly TokenBasedRememberMeServices.makeCancelCookie() diff --git a/app/src/test/java/org/apache/roller/weblogger/ui/core/RollerSessionManagerTest.java b/app/src/test/java/org/apache/roller/weblogger/ui/core/RollerUISessionManagerTest.java similarity index 88% rename from app/src/test/java/org/apache/roller/weblogger/ui/core/RollerSessionManagerTest.java rename to app/src/test/java/org/apache/roller/weblogger/ui/core/RollerUISessionManagerTest.java index 769ff33b50..bdb4659da8 100644 --- a/app/src/test/java/org/apache/roller/weblogger/ui/core/RollerSessionManagerTest.java +++ b/app/src/test/java/org/apache/roller/weblogger/ui/core/RollerUISessionManagerTest.java @@ -19,7 +19,6 @@ package org.apache.roller.weblogger.ui.core; import org.apache.roller.weblogger.pojos.User; -import org.apache.roller.weblogger.pojos.WeblogEntry; import org.apache.roller.weblogger.util.cache.Cache; import org.apache.roller.weblogger.util.cache.CacheManager; import org.junit.jupiter.api.BeforeEach; @@ -31,15 +30,15 @@ import static org.junit.jupiter.api.Assertions.*; import static org.mockito.Mockito.*; -class RollerSessionManagerTest { +class RollerUISessionManagerTest { - private RollerSessionManager sessionManager; + private RollerUISessionManager sessionManager; @Mock private Cache mockCache; @Mock - private RollerSession mockSession; + private RollerUISession mockSession; @Mock private User mockUser; @@ -50,7 +49,7 @@ void setUp() { try (MockedStatic mockedCacheManager = mockStatic(CacheManager.class)) { mockedCacheManager.when(() -> CacheManager.constructCache(isNull(), any())).thenReturn(mockCache); mockedCacheManager.when(() -> CacheManager.registerHandler(any())).then(invocation -> null); - sessionManager = new RollerSessionManager(); + sessionManager = new RollerUISessionManager(); } } @@ -67,7 +66,7 @@ void testCacheHandlerInvalidateUser() { when(mockUser.getUserName()).thenReturn(userName); // Create handler directly from instance - RollerSessionManager.SessionCacheHandler handler = sessionManager.new SessionCacheHandler(); + RollerUISessionManager.SessionCacheHandler handler = sessionManager.new SessionCacheHandler(); handler.invalidate(mockUser); verify(mockCache).remove(userName); @@ -90,14 +89,14 @@ void testGetSession() { String userName = "testUser"; when(mockCache.get(userName)).thenReturn(mockSession); - RollerSession result = sessionManager.get(userName); + RollerUISession result = sessionManager.get(userName); assertEquals(mockSession, result); verify(mockCache).get(userName); } @Test void testGetSessionNullUserName() { - RollerSession result = sessionManager.get(null); + RollerUISession result = sessionManager.get(null); assertNull(result); verify(mockCache, never()).get(any()); } diff --git a/app/src/test/java/org/apache/roller/weblogger/ui/core/filters/LoadSaltFilterTest.java b/app/src/test/java/org/apache/roller/weblogger/ui/core/filters/LoadSaltFilterTest.java index 10079a82be..2d3884fe81 100644 --- a/app/src/test/java/org/apache/roller/weblogger/ui/core/filters/LoadSaltFilterTest.java +++ b/app/src/test/java/org/apache/roller/weblogger/ui/core/filters/LoadSaltFilterTest.java @@ -1,7 +1,7 @@ package org.apache.roller.weblogger.ui.core.filters; import org.apache.roller.weblogger.pojos.User; -import org.apache.roller.weblogger.ui.core.RollerSession; +import org.apache.roller.weblogger.ui.core.RollerUISession; import org.apache.roller.weblogger.ui.rendering.util.cache.SaltCache; import org.apache.roller.weblogger.ui.struts2.util.UIBeanFactory; import org.junit.jupiter.api.BeforeEach; @@ -32,7 +32,7 @@ public class LoadSaltFilterTest { private FilterChain chain; @Mock - private RollerSession rollerSession; + private RollerUISession rollerUISession; @Mock private SaltCache saltCache; @@ -42,8 +42,8 @@ public void setUp() throws ServletException { MockitoAnnotations.openMocks(this); try (MockedStatic mockedFactory = mockStatic(UIBeanFactory.class)) { - mockedFactory.when(() -> UIBeanFactory.getBean(RollerSession.class)) - .thenReturn(rollerSession); + mockedFactory.when(() -> UIBeanFactory.getBean(RollerUISession.class)) + .thenReturn(rollerUISession); filter = new LoadSaltFilter(); filter.init(mock(FilterConfig.class)); @@ -64,7 +64,7 @@ public void testDoFilterGeneratesSalt() throws Exception { @Test public void testDoFilterWithNullRollerSession() throws Exception { try (MockedStatic mockedUIBeanFactory = mockStatic(UIBeanFactory.class)) { - mockedUIBeanFactory.when(() -> UIBeanFactory.getBean(RollerSession.class)) + mockedUIBeanFactory.when(() -> UIBeanFactory.getBean(RollerUISession.class)) .thenReturn(null); filter.init(mock(FilterConfig.class)); diff --git a/app/src/test/java/org/apache/roller/weblogger/ui/core/filters/ValidateSaltFilterTest.java b/app/src/test/java/org/apache/roller/weblogger/ui/core/filters/ValidateSaltFilterTest.java index e8694797b4..b423a93fae 100644 --- a/app/src/test/java/org/apache/roller/weblogger/ui/core/filters/ValidateSaltFilterTest.java +++ b/app/src/test/java/org/apache/roller/weblogger/ui/core/filters/ValidateSaltFilterTest.java @@ -2,7 +2,7 @@ import org.apache.roller.weblogger.config.WebloggerConfig; import org.apache.roller.weblogger.pojos.User; -import org.apache.roller.weblogger.ui.core.RollerSession; +import org.apache.roller.weblogger.ui.core.RollerUISession; import org.apache.roller.weblogger.ui.rendering.util.cache.SaltCache; import org.apache.roller.weblogger.ui.struts2.util.UIBeanFactory; import org.junit.jupiter.api.BeforeEach; @@ -34,7 +34,7 @@ public class ValidateSaltFilterTest { private FilterChain chain; @Mock - private RollerSession rollerSession; + private RollerUISession rollerUISession; @Mock private SaltCache saltCache; @@ -44,7 +44,7 @@ public void setUp() throws ServletException { MockitoAnnotations.openMocks(this); filter = new ValidateSaltFilter(); try (MockedStatic mockedUIBeanFactory = mockStatic(UIBeanFactory.class)) { - mockedUIBeanFactory.when(() -> UIBeanFactory.getBean(RollerSession.class)).thenReturn(rollerSession); + mockedUIBeanFactory.when(() -> UIBeanFactory.getBean(RollerUISession.class)).thenReturn(rollerUISession); filter.init(mock(FilterConfig.class)); } } @@ -75,12 +75,12 @@ public void testDoFilterWithPostMethodAndValidSalt() throws Exception { when(request.getParameter("salt")).thenReturn("validSalt"); when(saltCache.get("validSalt")).thenReturn("testUser"); - RollerSession rollerSession = mock(RollerSession.class); + RollerUISession rollerUISession = mock(RollerUISession.class); User user = mock(User.class); - when(rollerSession.getAuthenticatedUser()).thenReturn(user); + when(rollerUISession.getAuthenticatedUser()).thenReturn(user); when(user.getId()).thenReturn("testUser"); - mockedUIBeanFactory.when(() -> UIBeanFactory.getBean(any(), any())).thenReturn(rollerSession); + mockedUIBeanFactory.when(() -> UIBeanFactory.getBean(any(), any())).thenReturn(rollerUISession); filter = new ValidateSaltFilter(); filter.init(mock(FilterConfig.class)); @@ -115,7 +115,7 @@ public void testDoFilterWithPostMethodAndMismatchedUserId() throws Exception { when(request.getMethod()).thenReturn("POST"); when(request.getParameter("salt")).thenReturn("validSalt"); when(saltCache.get("validSalt")).thenReturn("differentUserId"); - when(rollerSession.getAuthenticatedUser()).thenReturn(new TestUser("userId")); + when(rollerUISession.getAuthenticatedUser()).thenReturn(new TestUser("userId")); StringBuffer requestURL = new StringBuffer("https://example.com/app/ignoredurl"); when(request.getRequestURL()).thenReturn(requestURL); @@ -131,7 +131,7 @@ public void testDoFilterWithPostMethodAndNullRollerSession() throws Exception { MockedStatic mockedUIBeanFactory = mockStatic(UIBeanFactory.class)) { mockedSaltCache.when(SaltCache::getInstance).thenReturn(saltCache); - mockedUIBeanFactory.when(() -> UIBeanFactory.getBean(RollerSession.class)).thenReturn(null); + mockedUIBeanFactory.when(() -> UIBeanFactory.getBean(RollerUISession.class)).thenReturn(null); when(request.getMethod()).thenReturn("POST"); when(request.getParameter("salt")).thenReturn("validSalt"); @@ -154,7 +154,7 @@ public void testDoFilterWithIgnoredURL() throws Exception { mockedWebloggerConfig.when(() -> WebloggerConfig.getProperty("salt.ignored.urls")) .thenReturn("https://example.com/app/ignoredurl?param1=value1&m2=value2"); - mockedUIBeanFactory.when(() -> UIBeanFactory.getBean(RollerSession.class)).thenReturn(rollerSession); + mockedUIBeanFactory.when(() -> UIBeanFactory.getBean(RollerUISession.class)).thenReturn(rollerUISession); when(request.getMethod()).thenReturn("POST"); StringBuffer requestURL = new StringBuffer("https://example.com/app/ignoredurl");