From 415d118b5c57fc2ae3180c7e173a9e1faa2fe30c Mon Sep 17 00:00:00 2001 From: Scott Battaglia Date: Wed, 6 Aug 2008 13:07:03 +0000 Subject: [PATCH] CASC-65 added an explicit call to remove an entry from the backing storage before adding it just in case it already exists under another key --- .../org/jasig/cas/client/session/SingleSignOutFilter.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/cas-client-core/src/main/java/org/jasig/cas/client/session/SingleSignOutFilter.java b/cas-client-core/src/main/java/org/jasig/cas/client/session/SingleSignOutFilter.java index 86d2e9d..ce87728 100644 --- a/cas-client-core/src/main/java/org/jasig/cas/client/session/SingleSignOutFilter.java +++ b/cas-client-core/src/main/java/org/jasig/cas/client/session/SingleSignOutFilter.java @@ -92,6 +92,11 @@ public final class SingleSignOutFilter extends AbstractConfigurationFilter { log.debug("Storing session identifier for " + session.getId()); } if (CommonUtils.isNotBlank(artifact)) { + try { + SESSION_MAPPING_STORAGE.removeBySessionById(session.getId()); + } catch (final Exception e) { + // ignore if the session is already marked as invalid. Nothing we can do! + } SESSION_MAPPING_STORAGE.addSessionById(artifact, session); } }