X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=server%2Fruntime%2Forg.argeo.server.jackrabbit%2Fsrc%2Fmain%2Fjava%2Forg%2Fargeo%2Fjackrabbit%2Fremote%2FSimpleSessionProvider.java;h=aa9bfa5d6f16fd7e492bf9014d5301dcba426935;hb=a171094436482fa16e8da47d5501df59ec06e595;hp=eab7451db741471555979486f55a974f3bf3333c;hpb=10c220cf49f5b146bac50ed7fe2578135cd466f1;p=lgpl%2Fargeo-commons.git diff --git a/server/runtime/org.argeo.server.jackrabbit/src/main/java/org/argeo/jackrabbit/remote/SimpleSessionProvider.java b/server/runtime/org.argeo.server.jackrabbit/src/main/java/org/argeo/jackrabbit/remote/SimpleSessionProvider.java index eab7451db..aa9bfa5d6 100644 --- a/server/runtime/org.argeo.server.jackrabbit/src/main/java/org/argeo/jackrabbit/remote/SimpleSessionProvider.java +++ b/server/runtime/org.argeo.server.jackrabbit/src/main/java/org/argeo/jackrabbit/remote/SimpleSessionProvider.java @@ -5,7 +5,6 @@ import java.util.Collections; import java.util.HashMap; import java.util.Map; -import javax.jcr.Credentials; import javax.jcr.LoginException; import javax.jcr.Repository; import javax.jcr.RepositoryException; @@ -27,22 +26,19 @@ public class SimpleSessionProvider implements SessionProvider, Serializable { private transient Map sessions; - private Credentials credentials = null; - public Session getSession(HttpServletRequest request, Repository rep, String workspace) throws LoginException, ServletException, RepositoryException { - - // since sessions is transient it can be restored from the session + // since sessions is transient it can't be restored from the session if (sessions == null) sessions = Collections .synchronizedMap(new HashMap()); if (!sessions.containsKey(workspace)) { try { - Session session = rep.login(credentials, workspace); - if (log.isDebugEnabled()) - log.debug("User " + session.getUserID() + " logged into " + Session session = rep.login(null, workspace); + if (log.isTraceEnabled()) + log.trace("User " + session.getUserID() + " logged into " + request.getServletPath()); sessions.put(workspace, session); return session; @@ -53,7 +49,7 @@ public class SimpleSessionProvider implements SessionProvider, Serializable { Session session = sessions.get(workspace); if (!session.isLive()) { sessions.remove(workspace); - session = rep.login(credentials, workspace); + session = rep.login(null, workspace); sessions.put(workspace, session); } return session; @@ -72,8 +68,11 @@ public class SimpleSessionProvider implements SessionProvider, Serializable { if (sessions != null) for (String workspace : sessions.keySet()) { Session session = sessions.get(workspace); - if (session.isLive()) + if (session.isLive()) { session.logout(); + if (log.isDebugEnabled()) + log.debug("Logged out JCR session " + session); + } } } }