Class SimpleSystemPermissionSet
- java.lang.Object
-
- org.apache.guacamole.net.auth.simple.SimpleSystemPermissionSet
-
- All Implemented Interfaces:
PermissionSet<SystemPermission>,SystemPermissionSet
public class SimpleSystemPermissionSet extends Object implements SystemPermissionSet
A read-only implementation of SystemPermissionSet which uses a backing Set of Permissions to determine which permissions are present.
-
-
Field Summary
-
Fields inherited from interface org.apache.guacamole.net.auth.permission.SystemPermissionSet
EMPTY_SET
-
-
Constructor Summary
Constructors Constructor Description SimpleSystemPermissionSet()Creates a new empty SimpleSystemPermissionSet.SimpleSystemPermissionSet(Set<SystemPermission> permissions)Creates a new SimpleSystemPermissionSet which contains the permissions within the given Set.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddPermission(SystemPermission.Type permission)Adds the specified permission.voidaddPermissions(Set<SystemPermission> permissions)Adds the specified permissions, if not already granted.Set<SystemPermission>getPermissions()Returns a Set which contains all permissions granted within this permission set.booleanhasPermission(SystemPermission.Type permission)Tests whether the permission of the given type is granted.voidremovePermission(SystemPermission.Type permission)Removes the specified permission.voidremovePermissions(Set<SystemPermission> permissions)Removes each of the specified permissions, if granted.protected voidsetPermissions(Set<SystemPermission> permissions)Sets the Set which backs this SimpleSystemPermissionSet.
-
-
-
Constructor Detail
-
SimpleSystemPermissionSet
public SimpleSystemPermissionSet()
Creates a new empty SimpleSystemPermissionSet. If you are not extending SimpleSystemPermissionSet and only need an immutable, empty SystemPermissionSet, consider usingSystemPermissionSet.EMPTY_SETinstead.
-
SimpleSystemPermissionSet
public SimpleSystemPermissionSet(Set<SystemPermission> permissions)
Creates a new SimpleSystemPermissionSet which contains the permissions within the given Set.- Parameters:
permissions- The Set of permissions this SimpleSystemPermissionSet should contain.
-
-
Method Detail
-
setPermissions
protected void setPermissions(Set<SystemPermission> permissions)
Sets the Set which backs this SimpleSystemPermissionSet. Future function calls on this SimpleSystemPermissionSet will use the provided Set.- Parameters:
permissions- The Set of permissions this SimpleSystemPermissionSet should contain.
-
getPermissions
public Set<SystemPermission> getPermissions()
Description copied from interface:PermissionSetReturns a Set which contains all permissions granted within this permission set.- Specified by:
getPermissionsin interfacePermissionSet<SystemPermission>- Specified by:
getPermissionsin interfaceSystemPermissionSet- Returns:
- A Set containing all permissions granted within this permission set.
-
hasPermission
public boolean hasPermission(SystemPermission.Type permission) throws org.apache.guacamole.GuacamoleException
Description copied from interface:SystemPermissionSetTests whether the permission of the given type is granted.- Specified by:
hasPermissionin interfaceSystemPermissionSet- Parameters:
permission- The permission to check.- Returns:
- true if the permission is granted, false otherwise.
- Throws:
org.apache.guacamole.GuacamoleException- If an error occurs while checking permissions, or if permissions cannot be checked due to lack of permissions to do so.
-
addPermission
public void addPermission(SystemPermission.Type permission) throws org.apache.guacamole.GuacamoleException
Description copied from interface:SystemPermissionSetAdds the specified permission.- Specified by:
addPermissionin interfaceSystemPermissionSet- Parameters:
permission- The permission to add.- Throws:
org.apache.guacamole.GuacamoleException- If an error occurs while adding the permission, or if permission to add permissions is denied.
-
removePermission
public void removePermission(SystemPermission.Type permission) throws org.apache.guacamole.GuacamoleException
Description copied from interface:SystemPermissionSetRemoves the specified permission.- Specified by:
removePermissionin interfaceSystemPermissionSet- Parameters:
permission- The permission to remove.- Throws:
org.apache.guacamole.GuacamoleException- If an error occurs while removing the permission, or if permission to remove permissions is denied.
-
addPermissions
public void addPermissions(Set<SystemPermission> permissions) throws org.apache.guacamole.GuacamoleException
Description copied from interface:PermissionSetAdds the specified permissions, if not already granted. If a specified permission is already granted, no operation is performed regarding that permission.- Specified by:
addPermissionsin interfacePermissionSet<SystemPermission>- Specified by:
addPermissionsin interfaceSystemPermissionSet- Parameters:
permissions- The permissions to add.- Throws:
org.apache.guacamole.GuacamoleException- If an error occurs while adding the permissions, or if permission to add permissions is denied.
-
removePermissions
public void removePermissions(Set<SystemPermission> permissions) throws org.apache.guacamole.GuacamoleException
Description copied from interface:PermissionSetRemoves each of the specified permissions, if granted. If a specified permission is not granted, no operation is performed regarding that permission.- Specified by:
removePermissionsin interfacePermissionSet<SystemPermission>- Specified by:
removePermissionsin interfaceSystemPermissionSet- Parameters:
permissions- The permissions to remove.- Throws:
org.apache.guacamole.GuacamoleException- If an error occurs while removing the permissions, or if permission to remove permissions is denied.
-
-