From 31661144301c86246cf9f9f2446b603911525c3d Mon Sep 17 00:00:00 2001 From: Michael Jumper Date: Thu, 5 Mar 2015 15:25:42 -0800 Subject: [PATCH] GUAC-1105: Throw GuacamoleClientTooManyException if connection group usage is denied due to duplicate use. --- .../auth/jdbc/socket/MultiseatGuacamoleSocketService.java | 3 ++- .../auth/jdbc/socket/SingleSeatGuacamoleSocketService.java | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/glyptodon/guacamole/auth/jdbc/socket/MultiseatGuacamoleSocketService.java b/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/glyptodon/guacamole/auth/jdbc/socket/MultiseatGuacamoleSocketService.java index aa1786f6f..867c1b5d0 100644 --- a/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/glyptodon/guacamole/auth/jdbc/socket/MultiseatGuacamoleSocketService.java +++ b/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/glyptodon/guacamole/auth/jdbc/socket/MultiseatGuacamoleSocketService.java @@ -29,6 +29,7 @@ import java.util.Comparator; import java.util.List; import java.util.Set; import java.util.concurrent.ConcurrentHashMap; +import org.glyptodon.guacamole.GuacamoleClientTooManyException; import org.glyptodon.guacamole.auth.jdbc.user.AuthenticatedUser; import org.glyptodon.guacamole.auth.jdbc.connection.ModeledConnection; import org.glyptodon.guacamole.GuacamoleException; @@ -102,7 +103,7 @@ public class MultiseatGuacamoleSocketService // Do not allow duplicate use of connection groups Seat seat = new Seat(user.getUser().getIdentifier(), connectionGroup.getIdentifier()); if (!activeGroupSeats.add(seat)) - throw new GuacamoleResourceConflictException("Cannot connect. This connection is in use."); + throw new GuacamoleClientTooManyException("Cannot connect. Connection group already in use by this user."); } diff --git a/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/glyptodon/guacamole/auth/jdbc/socket/SingleSeatGuacamoleSocketService.java b/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/glyptodon/guacamole/auth/jdbc/socket/SingleSeatGuacamoleSocketService.java index b7f092565..383e85f66 100644 --- a/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/glyptodon/guacamole/auth/jdbc/socket/SingleSeatGuacamoleSocketService.java +++ b/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/glyptodon/guacamole/auth/jdbc/socket/SingleSeatGuacamoleSocketService.java @@ -27,6 +27,7 @@ import java.util.Collections; import java.util.List; import java.util.Set; import java.util.concurrent.ConcurrentHashMap; +import org.glyptodon.guacamole.GuacamoleClientTooManyException; import org.glyptodon.guacamole.auth.jdbc.user.AuthenticatedUser; import org.glyptodon.guacamole.auth.jdbc.connection.ModeledConnection; import org.glyptodon.guacamole.GuacamoleException; @@ -85,7 +86,7 @@ public class SingleSeatGuacamoleSocketService // Do not allow duplicate use of connection groups Seat seat = new Seat(user.getUser().getIdentifier(), connectionGroup.getIdentifier()); if (!activeGroupSeats.add(seat)) - throw new GuacamoleResourceConflictException("Cannot connect. This connection is in use."); + throw new GuacamoleClientTooManyException("Cannot connect. Connection group already in use by this user."); }