X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=org.argeo.cms%2Fsrc%2Forg%2Fargeo%2Fcms%2Finternal%2Fhttp%2FWebCmsSessionImpl.java;h=fd51c597a4795308a6ef9591fd65cdea0a90de9c;hb=4185ff8826f893a4a1f054f61a11b89333c3e85d;hp=ce819051870b11dd59caf3c37bab451db4855625;hpb=a1e5c8447beec2b896b0a03e38a4c17608a4b85d;p=lgpl%2Fargeo-commons.git diff --git a/org.argeo.cms/src/org/argeo/cms/internal/http/WebCmsSessionImpl.java b/org.argeo.cms/src/org/argeo/cms/internal/http/WebCmsSessionImpl.java index ce8190518..fd51c597a 100644 --- a/org.argeo.cms/src/org/argeo/cms/internal/http/WebCmsSessionImpl.java +++ b/org.argeo.cms/src/org/argeo/cms/internal/http/WebCmsSessionImpl.java @@ -3,36 +3,31 @@ package org.argeo.cms.internal.http; import java.util.Locale; import javax.security.auth.Subject; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpSession; +import org.argeo.cms.auth.RemoteAuthRequest; +import org.argeo.cms.auth.RemoteAuthSession; import org.argeo.cms.internal.auth.CmsSessionImpl; import org.osgi.service.useradmin.Authorization; /** CMS session implementation in a web context. */ public class WebCmsSessionImpl extends CmsSessionImpl { private static final long serialVersionUID = -5178883380637048025L; - private HttpSession httpSession; + private RemoteAuthSession httpSession; public WebCmsSessionImpl(Subject initialSubject, Authorization authorization, Locale locale, - HttpServletRequest request) { - super(initialSubject, authorization, locale, request.getSession(false).getId()); - httpSession = request.getSession(false); + RemoteAuthRequest request) { + super(initialSubject, authorization, locale, request.getSession().getId()); + httpSession = request.getSession(); } @Override public boolean isValid() { if (isClosed()) return false; - try {// test http session - httpSession.getCreationTime(); - return true; - } catch (IllegalStateException ise) { - return false; - } + return httpSession.isValid(); } - public static CmsSessionImpl getCmsSession(HttpServletRequest request) { - return CmsSessionImpl.getByLocalId(request.getSession(false).getId()); + public static CmsSessionImpl getCmsSession(RemoteAuthRequest request) { + return CmsSessionImpl.getByLocalId(request.getSession().getId()); } }