Browse Source

SessionRegistryImpl uses computeIfAbsent

Fixes: gh-5834
pull/6577/head
Robbie Martinus 7 years ago committed by Rob Winch
parent
commit
f6657b7771
  1. 12
      core/src/main/java/org/springframework/security/core/session/SessionRegistryImpl.java

12
core/src/main/java/org/springframework/security/core/session/SessionRegistryImpl.java

@ -132,17 +132,7 @@ public class SessionRegistryImpl implements SessionRegistry, @@ -132,17 +132,7 @@ public class SessionRegistryImpl implements SessionRegistry,
sessionIds.put(sessionId,
new SessionInformation(principal, sessionId, new Date()));
Set<String> sessionsUsedByPrincipal = principals.get(principal);
if (sessionsUsedByPrincipal == null) {
sessionsUsedByPrincipal = new CopyOnWriteArraySet<>();
Set<String> prevSessionsUsedByPrincipal = principals.putIfAbsent(principal,
sessionsUsedByPrincipal);
if (prevSessionsUsedByPrincipal != null) {
sessionsUsedByPrincipal = prevSessionsUsedByPrincipal;
}
}
Set<String> sessionsUsedByPrincipal = principals.computeIfAbsent(principal, key -> new CopyOnWriteArraySet<>());
sessionsUsedByPrincipal.add(sessionId);
if (logger.isTraceEnabled()) {

Loading…
Cancel
Save