GUACAMOLE-38: Fix issues with root identifier and directory.
Project: http://git-wip-us.apache.org/repos/asf/guacamole-client/repo Commit: http://git-wip-us.apache.org/repos/asf/guacamole-client/commit/7df88cdf Tree: http://git-wip-us.apache.org/repos/asf/guacamole-client/tree/7df88cdf Diff: http://git-wip-us.apache.org/repos/asf/guacamole-client/diff/7df88cdf Branch: refs/heads/staging/1.0.0 Commit: 7df88cdfbd22bd0964a634736c348b7475c5cd1b Parents: 555b26a Author: Nick Couchman <vn...@apache.org> Authored: Tue May 8 16:28:10 2018 -0400 Committer: Nick Couchman <vn...@apache.org> Committed: Fri Jun 1 13:40:52 2018 -0400 ---------------------------------------------------------------------- .../quickconnect/QuickConnectDirectory.java | 7 +------ .../quickconnect/QuickConnectUserContext.java | 21 ++++++++++++-------- 2 files changed, 14 insertions(+), 14 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/guacamole-client/blob/7df88cdf/extensions/guacamole-auth-quickconnect/src/main/java/org/apache/guacamole/auth/quickconnect/QuickConnectDirectory.java ---------------------------------------------------------------------- diff --git a/extensions/guacamole-auth-quickconnect/src/main/java/org/apache/guacamole/auth/quickconnect/QuickConnectDirectory.java b/extensions/guacamole-auth-quickconnect/src/main/java/org/apache/guacamole/auth/quickconnect/QuickConnectDirectory.java index 5070ea6..ceb8c80 100644 --- a/extensions/guacamole-auth-quickconnect/src/main/java/org/apache/guacamole/auth/quickconnect/QuickConnectDirectory.java +++ b/extensions/guacamole-auth-quickconnect/src/main/java/org/apache/guacamole/auth/quickconnect/QuickConnectDirectory.java @@ -37,11 +37,6 @@ import org.apache.guacamole.protocol.GuacamoleConfiguration; public class QuickConnectDirectory extends SimpleDirectory<Connection> { /** - * The unique identifier of the root connection group. - */ - private static final String ROOT_IDENTIFIER = "ROOT"; - - /** * The connections to store. */ private final Map<String, Connection> connections = @@ -113,7 +108,7 @@ public class QuickConnectDirectory extends SimpleDirectory<Connection> { // Create a new connection and set the parent identifier. Connection connection = new SimpleConnection(name, connectionId, config); - connection.setParentIdentifier(ROOT_IDENTIFIER); + connection.setParentIdentifier(QuickConnectUserContext.ROOT_IDENTIFIER); // Place the object in this directory. add(connection); http://git-wip-us.apache.org/repos/asf/guacamole-client/blob/7df88cdf/extensions/guacamole-auth-quickconnect/src/main/java/org/apache/guacamole/auth/quickconnect/QuickConnectUserContext.java ---------------------------------------------------------------------- diff --git a/extensions/guacamole-auth-quickconnect/src/main/java/org/apache/guacamole/auth/quickconnect/QuickConnectUserContext.java b/extensions/guacamole-auth-quickconnect/src/main/java/org/apache/guacamole/auth/quickconnect/QuickConnectUserContext.java index 32f4b37..aa98db7 100644 --- a/extensions/guacamole-auth-quickconnect/src/main/java/org/apache/guacamole/auth/quickconnect/QuickConnectUserContext.java +++ b/extensions/guacamole-auth-quickconnect/src/main/java/org/apache/guacamole/auth/quickconnect/QuickConnectUserContext.java @@ -38,6 +38,11 @@ import org.apache.guacamole.net.auth.simple.SimpleUser; public class QuickConnectUserContext extends AbstractUserContext { /** + * The unique identifier of the root connection group. + */ + public static final String ROOT_IDENTIFIER = DEFAULT_ROOT_CONNECTION_GROUP; + + /** * The AuthenticationProvider that created this UserContext. */ private final AuthenticationProvider authProvider; @@ -71,25 +76,25 @@ public class QuickConnectUserContext extends AbstractUserContext { * The name of the user logging in and using this class. */ public QuickConnectUserContext(AuthenticationProvider authProvider, - String username) { + String username) throws GuacamoleException { // Initialize the rootGroup to a basic connection group with a // single root identifier. this.rootGroup = new QuickConnectionGroup( - DEFAULT_ROOT_CONNECTION_GROUP, - DEFAULT_ROOT_CONNECTION_GROUP + ROOT_IDENTIFIER, + ROOT_IDENTIFIER ); + // Initialize the connection directory + this.connectionDirectory = new QuickConnectDirectory(this.rootGroup); + // Initialize the user to a SimpleUser with the provided username, // no connections, and the single root group. this.self = new SimpleUser(username, - Collections.<String>emptyList(), - Collections.singleton(DEFAULT_ROOT_CONNECTION_GROUP) + connectionDirectory.getIdentifiers(), + Collections.singleton(ROOT_IDENTIFIER) ); - // Initialize the connection directory - this.connectionDirectory = new QuickConnectDirectory(this.rootGroup); - // Set the authProvider to the calling authProvider object. this.authProvider = authProvider;