mirror of
https://github.com/gyurix1968/guacamole-client.git
synced 2025-09-07 13:41:21 +00:00
Ticket #362: Cleaned up permission list code a bit.
This commit is contained in:
@@ -18,6 +18,7 @@ package org.glyptodon.guacamole.net.basic.rest.permission;
|
|||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
import org.codehaus.jackson.map.annotate.JsonSerialize;
|
||||||
import org.glyptodon.guacamole.net.auth.permission.ConnectionGroupPermission;
|
import org.glyptodon.guacamole.net.auth.permission.ConnectionGroupPermission;
|
||||||
import org.glyptodon.guacamole.net.auth.permission.ConnectionPermission;
|
import org.glyptodon.guacamole.net.auth.permission.ConnectionPermission;
|
||||||
import org.glyptodon.guacamole.net.auth.permission.ObjectPermission;
|
import org.glyptodon.guacamole.net.auth.permission.ObjectPermission;
|
||||||
@@ -30,6 +31,7 @@ import org.glyptodon.guacamole.net.auth.permission.UserPermission;
|
|||||||
*
|
*
|
||||||
* @author James Muehlner
|
* @author James Muehlner
|
||||||
*/
|
*/
|
||||||
|
@JsonSerialize(include=JsonSerialize.Inclusion.NON_NULL)
|
||||||
public class APIPermission {
|
public class APIPermission {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -79,14 +81,17 @@ public class APIPermission {
|
|||||||
this.objectType = ObjectType.CONNECTION;
|
this.objectType = ObjectType.CONNECTION;
|
||||||
|
|
||||||
this.objectPermissionType = ((ConnectionPermission) permission).getType();
|
this.objectPermissionType = ((ConnectionPermission) permission).getType();
|
||||||
|
this.objectIdentifier = ((ConnectionPermission) permission).getObjectIdentifier();
|
||||||
} else if(permission instanceof ConnectionGroupPermission) {
|
} else if(permission instanceof ConnectionGroupPermission) {
|
||||||
this.objectType = ObjectType.CONNECTION_GROUP;
|
this.objectType = ObjectType.CONNECTION_GROUP;
|
||||||
|
|
||||||
this.objectPermissionType = ((ConnectionGroupPermission) permission).getType();
|
this.objectPermissionType = ((ConnectionGroupPermission) permission).getType();
|
||||||
|
this.objectIdentifier = ((ConnectionGroupPermission) permission).getObjectIdentifier();
|
||||||
} else if(permission instanceof UserPermission) {
|
} else if(permission instanceof UserPermission) {
|
||||||
this.objectType = ObjectType.USER;
|
this.objectType = ObjectType.USER;
|
||||||
|
|
||||||
this.objectPermissionType = ((UserPermission) permission).getType();
|
this.objectPermissionType = ((UserPermission) permission).getType();
|
||||||
|
this.objectIdentifier = ((UserPermission) permission).getObjectIdentifier();
|
||||||
} else if(permission instanceof SystemPermission) {
|
} else if(permission instanceof SystemPermission) {
|
||||||
this.objectType = ObjectType.SYSTEM;
|
this.objectType = ObjectType.SYSTEM;
|
||||||
|
|
||||||
@@ -175,7 +180,7 @@ public class APIPermission {
|
|||||||
* @return An org.glyptodon.guacamole.net.auth.permission.Permission
|
* @return An org.glyptodon.guacamole.net.auth.permission.Permission
|
||||||
* representation of this APIPermission.
|
* representation of this APIPermission.
|
||||||
*/
|
*/
|
||||||
public Permission getPermission() {
|
public Permission toPermission() {
|
||||||
switch(this.objectType) {
|
switch(this.objectType) {
|
||||||
case CONNECTION:
|
case CONNECTION:
|
||||||
return new ConnectionPermission
|
return new ConnectionPermission
|
||||||
|
@@ -61,7 +61,7 @@ public class PermissionService {
|
|||||||
Set<Permission> permissions = new HashSet<Permission>();
|
Set<Permission> permissions = new HashSet<Permission>();
|
||||||
|
|
||||||
for(APIPermission restPermission : restPermissions) {
|
for(APIPermission restPermission : restPermissions) {
|
||||||
permissions.add(restPermission.getPermission());
|
permissions.add(restPermission.toPermission());
|
||||||
}
|
}
|
||||||
|
|
||||||
return permissions;
|
return permissions;
|
||||||
|
Reference in New Issue
Block a user