summaryrefslogtreecommitdiffstats
path: root/src/main/java/de/bwlehrpool/bwlp_guac/BwlpAuthenticationProvider.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/de/bwlehrpool/bwlp_guac/BwlpAuthenticationProvider.java')
-rw-r--r--src/main/java/de/bwlehrpool/bwlp_guac/BwlpAuthenticationProvider.java14
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;