Package org.bukkit.permissions
Class PermissionAttachment
- java.lang.Object
-
- org.bukkit.permissions.PermissionAttachment
-
public class PermissionAttachment extends Object
Holds information about a permission attachment on aPermissible
object
-
-
Constructor Summary
Constructors Constructor Description PermissionAttachment(@NotNull Plugin plugin, @NotNull Permissible permissible)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description @NotNull Permissible
getPermissible()
Gets the Permissible that this is attached to@NotNull Map<String,Boolean>
getPermissions()
Gets a copy of all set permissions and values contained within this attachment.@NotNull Plugin
getPlugin()
Gets the plugin responsible for this attachment@Nullable PermissionRemovedExecutor
getRemovalCallback()
Gets the class that was previously set to be called when this attachment was removed from aPermissible
.boolean
remove()
Removes this attachment from its registeredPermissible
void
setPermission(@NotNull String name, boolean value)
Sets a permission to the given value, by its fully qualified namevoid
setPermission(@NotNull Permission perm, boolean value)
Sets a permission to the given valuevoid
setRemovalCallback(@Nullable PermissionRemovedExecutor ex)
Sets an object to be called for when this attachment is removed from aPermissible
.void
unsetPermission(@NotNull String name)
Removes the specified permission from this attachment.void
unsetPermission(@NotNull Permission perm)
Removes the specified permission from this attachment.
-
-
-
Constructor Detail
-
PermissionAttachment
public PermissionAttachment(@NotNull @NotNull Plugin plugin, @NotNull @NotNull Permissible permissible)
-
-
Method Detail
-
getPlugin
@NotNull public @NotNull Plugin getPlugin()
Gets the plugin responsible for this attachment- Returns:
- Plugin responsible for this permission attachment
-
setRemovalCallback
public void setRemovalCallback(@Nullable @Nullable PermissionRemovedExecutor ex)
Sets an object to be called for when this attachment is removed from aPermissible
. May be null.- Parameters:
ex
- Object to be called when this is removed
-
getRemovalCallback
@Nullable public @Nullable PermissionRemovedExecutor getRemovalCallback()
Gets the class that was previously set to be called when this attachment was removed from aPermissible
. May be null.- Returns:
- Object to be called when this is removed
-
getPermissible
@NotNull public @NotNull Permissible getPermissible()
Gets the Permissible that this is attached to- Returns:
- Permissible containing this attachment
-
getPermissions
@NotNull public @NotNull Map<String,Boolean> getPermissions()
Gets a copy of all set permissions and values contained within this attachment.This map may be modified but will not affect the attachment, as it is a copy.
- Returns:
- Copy of all permissions and values expressed by this attachment
-
setPermission
public void setPermission(@NotNull @NotNull String name, boolean value)
Sets a permission to the given value, by its fully qualified name- Parameters:
name
- Name of the permissionvalue
- New value of the permission
-
setPermission
public void setPermission(@NotNull @NotNull Permission perm, boolean value)
Sets a permission to the given value- Parameters:
perm
- Permission to setvalue
- New value of the permission
-
unsetPermission
public void unsetPermission(@NotNull @NotNull String name)
Removes the specified permission from this attachment.If the permission does not exist in this attachment, nothing will happen.
- Parameters:
name
- Name of the permission to remove
-
unsetPermission
public void unsetPermission(@NotNull @NotNull Permission perm)
Removes the specified permission from this attachment.If the permission does not exist in this attachment, nothing will happen.
- Parameters:
perm
- Permission to remove
-
remove
public boolean remove()
Removes this attachment from its registeredPermissible
- Returns:
- true if the permissible was removed successfully, false if it did not exist
-
-