From c52ca87da1fa026bdc2e1531480c070d46366630 Mon Sep 17 00:00:00 2001
From: buczekp <buczekp>
Date: Wed, 6 Apr 2011 11:16:31 +0000
Subject: [PATCH] [LMS-2176] minor: fast logout when user changes anonymous
 flag in URL

SVN: 20666
---
 .../generic/client/web/server/AbstractClientService.java      | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/server/AbstractClientService.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/server/AbstractClientService.java
index 7ed4606809e..83c4bbd8a6f 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/server/AbstractClientService.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/server/AbstractClientService.java
@@ -473,13 +473,15 @@ public abstract class AbstractClientService implements IClientService,
     {
         try
         {
-            final SessionContextDTO session = getServer().tryGetSession(getSessionToken());
+            final String sessionToken = getSessionToken();
+            final SessionContextDTO session = getServer().tryGetSession(sessionToken);
             if (session == null)
             {
                 return null;
             } else if (anonymous != session.isAnonymous())
             {
                 operationLog.debug("expected: " + anonymous + " found: " + session.isAnonymous());
+                getServer().logout(sessionToken);
                 return null;
             }
             return createSessionContext(session);
-- 
GitLab