public class PermissibleBase extends Object implements Permissible
Constructor and Description |
---|
PermissibleBase(ServerOperator opable) |
Modifier and Type | Method and Description |
---|---|
PermissionAttachment |
addAttachment(Plugin plugin)
Adds a new empty
PermissionAttachment to this object |
PermissionAttachment |
addAttachment(Plugin plugin,
int ticks)
Temporarily adds a new empty
PermissionAttachment to this
object |
PermissionAttachment |
addAttachment(Plugin plugin,
String name,
boolean value)
Adds a new
PermissionAttachment with a single permission by
name and value |
PermissionAttachment |
addAttachment(Plugin plugin,
String name,
boolean value,
int ticks)
Temporarily adds a new
PermissionAttachment with a single
permission by name and value |
void |
clearPermissions() |
Set<PermissionAttachmentInfo> |
getEffectivePermissions()
Gets a set containing all of the permissions currently in effect by
this object
|
boolean |
hasPermission(Permission perm)
Gets the value of the specified permission, if set.
|
boolean |
hasPermission(String inName)
Gets the value of the specified permission, if set.
|
boolean |
isOp()
Checks if this object is a server operator
|
boolean |
isPermissionSet(Permission perm)
Checks if this object contains an override for the specified
Permission |
boolean |
isPermissionSet(String name)
Checks if this object contains an override for the specified
permission, by fully qualified name
|
void |
recalculatePermissions()
Recalculates the permissions for this object, if the attachments have
changed values.
|
void |
removeAttachment(PermissionAttachment attachment)
Removes the given
PermissionAttachment from this object |
void |
setOp(boolean value)
Sets the operator status of this object
|
public PermissibleBase(@Nullable ServerOperator opable)
public boolean isOp()
ServerOperator
isOp
in interface ServerOperator
public void setOp(boolean value)
ServerOperator
setOp
in interface ServerOperator
value
- New operator valuepublic boolean isPermissionSet(@NotNull String name)
Permissible
isPermissionSet
in interface Permissible
name
- Name of the permissionpublic boolean isPermissionSet(@NotNull Permission perm)
Permissible
Permission
isPermissionSet
in interface Permissible
perm
- Permission to checkpublic boolean hasPermission(@NotNull String inName)
Permissible
If a permission override is not set on this object, the default value of the permission will be returned.
hasPermission
in interface Permissible
inName
- Name of the permissionpublic boolean hasPermission(@NotNull Permission perm)
Permissible
If a permission override is not set on this object, the default value of the permission will be returned
hasPermission
in interface Permissible
perm
- Permission to get@NotNull public PermissionAttachment addAttachment(@NotNull Plugin plugin, @NotNull String name, boolean value)
Permissible
PermissionAttachment
with a single permission by
name and valueaddAttachment
in interface Permissible
plugin
- Plugin responsible for this attachment, may not be null
or disabledname
- Name of the permission to attachvalue
- Value of the permission@NotNull public PermissionAttachment addAttachment(@NotNull Plugin plugin)
Permissible
PermissionAttachment
to this objectaddAttachment
in interface Permissible
plugin
- Plugin responsible for this attachment, may not be null
or disabledpublic void removeAttachment(@NotNull PermissionAttachment attachment)
Permissible
PermissionAttachment
from this objectremoveAttachment
in interface Permissible
attachment
- Attachment to removepublic void recalculatePermissions()
Permissible
This should very rarely need to be called from a plugin.
recalculatePermissions
in interface Permissible
public void clearPermissions()
@Nullable public PermissionAttachment addAttachment(@NotNull Plugin plugin, @NotNull String name, boolean value, int ticks)
Permissible
PermissionAttachment
with a single
permission by name and valueaddAttachment
in interface Permissible
plugin
- Plugin responsible for this attachment, may not be null
or disabledname
- Name of the permission to attachvalue
- Value of the permissionticks
- Amount of ticks to automatically remove this attachment
after@Nullable public PermissionAttachment addAttachment(@NotNull Plugin plugin, int ticks)
Permissible
PermissionAttachment
to this
objectaddAttachment
in interface Permissible
plugin
- Plugin responsible for this attachment, may not be null
or disabledticks
- Amount of ticks to automatically remove this attachment
after@NotNull public Set<PermissionAttachmentInfo> getEffectivePermissions()
Permissible
getEffectivePermissions
in interface Permissible
Copyright © 2022. All rights reserved.