diff options
Diffstat (limited to 'src/main/java/de/bwlehrpool/bwlp_guac/BwlpAuthenticationProvider.java')
-rw-r--r-- | src/main/java/de/bwlehrpool/bwlp_guac/BwlpAuthenticationProvider.java | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/src/main/java/de/bwlehrpool/bwlp_guac/BwlpAuthenticationProvider.java b/src/main/java/de/bwlehrpool/bwlp_guac/BwlpAuthenticationProvider.java index c59c477..017c806 100644 --- a/src/main/java/de/bwlehrpool/bwlp_guac/BwlpAuthenticationProvider.java +++ b/src/main/java/de/bwlehrpool/bwlp_guac/BwlpAuthenticationProvider.java @@ -65,11 +65,15 @@ public class BwlpAuthenticationProvider implements AuthenticationProvider { if (user != null && user.hasValidConnection()) return user; - - int groupid = requestGroup(credentials); - - LOGGER.warn("Doing the REdecoration"); - user = new BwlpUserContext(authenticatedUser, context, groupid); + + WrappedConnection exConn = ConnectionManager.getExistingConnection(username); + if (exConn != null) { + user = new BwlpUserContext(authenticatedUser, context, exConn); + } else { + int groupid = requestGroup(credentials); + LOGGER.warn("Doing the REdecoration"); + user = new BwlpUserContext(authenticatedUser, context, groupid); + } oldMappings.put(username, user); return user; |