Class Permission
public class Permission
extends java.lang.Object
Permissible
-
Field Summary
Fields Modifier and Type Field Description static PermissionDefault
DEFAULT_PERMISSION
-
Constructor Summary
Constructors Constructor Description Permission(java.lang.String name)
Permission(java.lang.String name, java.lang.String description)
Permission(java.lang.String name, java.lang.String description, java.util.Map<java.lang.String,java.lang.Boolean> children)
Permission(java.lang.String name, java.lang.String description, PermissionDefault defaultValue)
Permission(java.lang.String name, java.lang.String description, PermissionDefault defaultValue, java.util.Map<java.lang.String,java.lang.Boolean> children)
Permission(java.lang.String name, java.util.Map<java.lang.String,java.lang.Boolean> children)
Permission(java.lang.String name, PermissionDefault defaultValue)
Permission(java.lang.String name, PermissionDefault defaultValue, java.util.Map<java.lang.String,java.lang.Boolean> children)
-
Method Summary
Modifier and Type Method Description Permission
addParent(java.lang.String name, boolean value)
Adds this permission to the specified parent permission.void
addParent(Permission perm, boolean value)
Adds this permission to the specified parent permission.java.util.Map<java.lang.String,java.lang.Boolean>
getChildren()
Gets the children of this permission.PermissionDefault
getDefault()
Gets the default value of this permission.java.lang.String
getDescription()
Gets a brief description of this permission, if setjava.lang.String
getName()
Returns the unique fully qualified name of this Permissionjava.util.Set<Permissible>
getPermissibles()
Gets a set containing everyPermissible
that has this permission.static Permission
loadPermission(java.lang.String name, java.util.Map<?,?> data, PermissionDefault def, java.util.List<Permission> output)
Loads a Permission from a map of data, usually used from retrieval from a yaml file.static Permission
loadPermission(java.lang.String name, java.util.Map<java.lang.String,java.lang.Object> data)
Loads a Permission from a map of data, usually used from retrieval from a yaml file.static java.util.List<Permission>
loadPermissions(java.util.Map<?,?> data, java.lang.String error, PermissionDefault def)
Loads a list of Permissions from a map of data, usually used from retrieval from a yaml file.void
recalculatePermissibles()
Recalculates allPermissible
s that contain this permission.void
setDefault(PermissionDefault value)
Sets the default value of this permission.void
setDescription(java.lang.String value)
Sets the description of this permission.
-
Field Details
-
Constructor Details
-
Permission
public Permission(java.lang.String name) -
Permission
public Permission(java.lang.String name, java.lang.String description) -
Permission
-
Permission
public Permission(java.lang.String name, java.lang.String description, PermissionDefault defaultValue) -
Permission
public Permission(java.lang.String name, java.util.Map<java.lang.String,java.lang.Boolean> children) -
Permission
public Permission(java.lang.String name, java.lang.String description, java.util.Map<java.lang.String,java.lang.Boolean> children) -
Permission
public Permission(java.lang.String name, PermissionDefault defaultValue, java.util.Map<java.lang.String,java.lang.Boolean> children) -
Permission
public Permission(java.lang.String name, java.lang.String description, PermissionDefault defaultValue, java.util.Map<java.lang.String,java.lang.Boolean> children)
-
-
Method Details
-
getName
public java.lang.String getName()Returns the unique fully qualified name of this Permission- Returns:
- Fully qualified name
-
getChildren
public java.util.Map<java.lang.String,java.lang.Boolean> getChildren()Gets the children of this permission.If you change this map in any form, you must call
recalculatePermissibles()
to recalculate allPermissible
s- Returns:
- Permission children
-
getDefault
Gets the default value of this permission.- Returns:
- Default value of this permission.
-
setDefault
Sets the default value of this permission.This will not be saved to disk, and is a temporary operation until the server reloads permissions. Changing this default will cause all
Permissible
s that contain this permission to recalculate their permissions- Parameters:
value
- The new default to set
-
getDescription
public java.lang.String getDescription()Gets a brief description of this permission, if set- Returns:
- Brief description of this permission
-
setDescription
public void setDescription(java.lang.String value)Sets the description of this permission.This will not be saved to disk, and is a temporary operation until the server reloads permissions.
- Parameters:
value
- The new description to set
-
getPermissibles
Gets a set containing everyPermissible
that has this permission.This set cannot be modified.
- Returns:
- Set containing permissibles with this permission
-
recalculatePermissibles
public void recalculatePermissibles()Recalculates allPermissible
s that contain this permission.This should be called after modifying the children, and is automatically called after modifying the default value
-
addParent
Adds this permission to the specified parent permission.If the parent permission does not exist, it will be created and registered.
- Parameters:
name
- Name of the parent permissionvalue
- The value to set this permission to- Returns:
- Parent permission it created or loaded
-
addParent
Adds this permission to the specified parent permission.- Parameters:
perm
- Parent permission to register withvalue
- The value to set this permission to
-
loadPermissions
public static java.util.List<Permission> loadPermissions(java.util.Map<?,?> data, java.lang.String error, PermissionDefault def)Loads a list of Permissions from a map of data, usually used from retrieval from a yaml file.The data may contain a list of name:data, where the data contains the following keys:
- default: Boolean true or false. If not specified, false.
- children:
Map<String, Boolean>
of child permissions. If not specified, empty list. - description: Short string containing a very small description of this description. If not specified, empty string.
- Parameters:
data
- Map of permissionserror
- An error message to show if a permission is invalid.def
- Default permission value to use if missing- Returns:
- Permission object
-
loadPermission
public static Permission loadPermission(java.lang.String name, java.util.Map<java.lang.String,java.lang.Object> data)Loads a Permission from a map of data, usually used from retrieval from a yaml file.The data may contain the following keys:
- default: Boolean true or false. If not specified, false.
- children:
Map<String, Boolean>
of child permissions. If not specified, empty list. - description: Short string containing a very small description of this description. If not specified, empty string.
- Parameters:
name
- Name of the permissiondata
- Map of keys- Returns:
- Permission object
-
loadPermission
public static Permission loadPermission(java.lang.String name, java.util.Map<?,?> data, PermissionDefault def, java.util.List<Permission> output)Loads a Permission from a map of data, usually used from retrieval from a yaml file.The data may contain the following keys:
- default: Boolean true or false. If not specified, false.
- children:
Map<String, Boolean>
of child permissions. If not specified, empty list. - description: Short string containing a very small description of this description. If not specified, empty string.
- Parameters:
name
- Name of the permissiondata
- Map of keysdef
- Default permission value to use if not setoutput
- A list to append any created child-Permissions to, may be null- Returns:
- Permission object
-