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, may be empty
|
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(@NotNull String name)
public Permission(@NotNull String name, @Nullable PermissionDefault defaultValue)
public Permission(@NotNull String name, @Nullable String description, @Nullable PermissionDefault defaultValue)
public Permission(@NotNull String name, @Nullable String description, @Nullable Map<String,Boolean> children)
public Permission(@NotNull String name, @Nullable PermissionDefault defaultValue, @Nullable Map<String,Boolean> children)
@NotNull public String getName()
@NotNull public Map<String,Boolean> getChildren()
If you change this map in any form, you must call recalculatePermissibles()
to recalculate all Permissible
s
@NotNull public PermissionDefault getDefault()
public void setDefault(@NotNull 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 set@NotNull public String getDescription()
public void setDescription(@Nullable String value)
This will not be saved to disk, and is a temporary operation until the server reloads permissions.
value
- The new description to set@NotNull public 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
@NotNull public Permission addParent(@NotNull 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(@NotNull Permission perm, boolean value)
perm
- Parent permission to register withvalue
- The value to set this permission to@NotNull public static List<Permission> loadPermissions(@NotNull Map<?,?> data, @NotNull String error, @Nullable 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. May contain "%s" format tag, which will be replaced with the name of invalid permission.def
- Default permission value to use if missing@NotNull public static Permission loadPermission(@NotNull String name, @NotNull 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 keys@NotNull public static Permission loadPermission(@NotNull String name, @NotNull Map<?,?> data, @Nullable PermissionDefault def, @Nullable 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 © 2022. All rights reserved.