question: public ConnectionGroupTree ( UserContext userContext , ConnectionGroup root , List < ObjectPermission . Type > permissions ) throws GuacamoleException { this . rootAPIGroup = new APIConnectionGroup ( root ) ; retrievedGroups . put ( root . getIdentifier ( ) , this . rootAPIGroup ) ; User self = userContext . self ( ) ; this . connectionPermissions = self . getConnectionPermissions ( ) ; this . sharingProfilePermissions = self . getSharingProfilePermissions ( ) ; this . connectionDirectory = userContext . getConnectionDirectory ( ) ; this . connectionGroupDirectory = userContext . getConnectionGroupDirectory ( ) ; this . sharingProfileDirectory = userContext . getSharingProfileDirectory ( ) ; addConnectionGroupDescendants ( Collections . singleton ( root ) , permissions ) ; }
target:  Creates a new connection group tree using the given connection group as the tree root.