public class Permission extends Object
Permissible
Modifier and Type | Field and Description |
---|---|
static PermissionDefault |
DEFAULT_PERMISSION |
Constructor and Description |
---|
Permission(String name) |
Permission(String name,
Map<String,Boolean> children) |
Permission(String name,
PermissionDefault defaultValue) |
Permission(String name,
PermissionDefault defaultValue,
Map<String,Boolean> children) |
Permission(String name,
String description) |
Permission(String name,
String description,
Map<String,Boolean> children) |
Permission(String name,
String description,
PermissionDefault defaultValue) |
Permission(String name,
String description,
PermissionDefault defaultValue,
Map<String,Boolean> children) |
Modifier and Type | Method and Description |
---|---|
void |
addParent(Permission perm,
boolean value)
Adds this permission to the specified parent permission.
|
Permission |
addParent(String name,
boolean value)
Adds this permission to the specified parent permission.
|
Map<String,Boolean> |
getChildren()
Gets the children of this permission.
|
PermissionDefault |
getDefault()
Gets the default value of this permission.
|
String |
getDescription()
Gets a brief description of this permission, if set
|
String |
getName()
Returns the unique fully qualified name of this Permission
|
Set<Permissible> |
getPermissibles()
Gets a set containing every
Permissible that has this
permission. |
static Permission |
loadPermission(String name,
Map<?,?> data,
PermissionDefault def,
List<Permission> output)
Loads a Permission from a map of data, usually used from retrieval from
a yaml file.
|
static Permission |
loadPermission(String name,
Map<String,Object> data)
Loads a Permission from a map of data, usually used from retrieval from
a yaml file.
|
static List<Permission> |
loadPermissions(Map<?,?> data,
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 all
Permissible s that contain this permission. |
void |
setDefault(PermissionDefault value)
Sets the default value of this permission.
|
void |
setDescription(String value)
Sets the description of this permission.
|
public static final PermissionDefault DEFAULT_PERMISSION
public Permission(String name)
public Permission(String name, PermissionDefault defaultValue)
public Permission(String name, String description, PermissionDefault defaultValue)
public Permission(String name, PermissionDefault defaultValue, Map<String,Boolean> children)
public String getName()
public Map<String,Boolean> getChildren()
If you change this map in any form, you must call recalculatePermissibles()
to recalculate all Permissible
s
public PermissionDefault getDefault()
public void setDefault(PermissionDefault value)
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
value
- The new default to setpublic String getDescription()
public void setDescription(String value)
This will not be saved to disk, and is a temporary operation until the server reloads permissions.
value
- The new description to setpublic Set<Permissible> getPermissibles()
Permissible
that has this
permission.
This set cannot be modified.
public void recalculatePermissibles()
Permissible
s that contain this permission.
This should be called after modifying the children, and is automatically called after modifying the default value
public Permission addParent(String name, boolean value)
If the parent permission does not exist, it will be created and registered.
name
- Name of the parent permissionvalue
- The value to set this permission topublic void addParent(Permission perm, boolean value)
perm
- Parent permission to register withvalue
- The value to set this permission topublic static List<Permission> loadPermissions(Map<?,?> data, String error, PermissionDefault def)
The data may contain a list of name:data, where the data contains the following keys:
Map<String, Boolean>
of child permissions. If not
specified, empty list.
data
- Map of permissionserror
- An error message to show if a permission is invalid.def
- Default permission value to use if missingpublic static Permission loadPermission(String name, Map<String,Object> data)
The data may contain the following keys:
Map<String, Boolean>
of child permissions. If not
specified, empty list.
name
- Name of the permissiondata
- Map of keyspublic static Permission loadPermission(String name, Map<?,?> data, PermissionDefault def, List<Permission> output)
The data may contain the following keys:
Map<String, Boolean>
of child permissions. If not
specified, empty list.
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 nullCopyright © 2021. All rights reserved.