Class PermissionGroup

java.lang.Object
org.bukkit.permissions.PermissibleBase
net.mathias2246.buildmc.api.permission.PermissionGroup
All Implemented Interfaces:
org.bukkit.permissions.Permissible, org.bukkit.permissions.ServerOperator

public class PermissionGroup extends org.bukkit.permissions.PermissibleBase
  • Constructor Summary

    Constructors
    Constructor
    Description
    PermissionGroup(@NotNull String name, @NotNull org.bukkit.plugin.Plugin plugin)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
     
    void
    addMember(@NotNull org.bukkit.permissions.Permissible member)
     
    @NotNull org.bukkit.permissions.PermissionAttachment
    applyToPlayer(org.bukkit.entity.Player player, @NotNull org.bukkit.plugin.Plugin plugin)
    Applies this group's effective permissions to a player via a PermissionAttachment.
     
    @NotNull Set<org.bukkit.permissions.Permissible>
     
    @NotNull String
     
    void
    grantPermission(@NotNull String permission)
    Grants a permission to this group and recalculates.
    boolean
    hasMember(@NotNull org.bukkit.permissions.Permissible member)
     
    void
    Fully recalculates permissions by rebuilding from scratch.
    void
     
    void
    removeMember(@NotNull org.bukkit.permissions.Permissible member)
     
    void
    revokePermission(@NotNull String permission)
    Revokes a permission from this group and recalculates.

    Methods inherited from class org.bukkit.permissions.PermissibleBase

    addAttachment, addAttachment, addAttachment, addAttachment, clearPermissions, getEffectivePermissions, hasPermission, hasPermission, isOp, isPermissionSet, isPermissionSet, recalculatePermissions, removeAttachment, setOp

    Methods inherited from class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface org.bukkit.permissions.Permissible

    permissionValue, permissionValue
  • Constructor Details

    • PermissionGroup

      public PermissionGroup(@NotNull @NotNull String name, @NotNull @NotNull org.bukkit.plugin.Plugin plugin)
  • Method Details

    • getName

      @NotNull public @NotNull String getName()
    • addMember

      public void addMember(@NotNull @NotNull org.bukkit.permissions.Permissible member)
    • removeMember

      public void removeMember(@NotNull @NotNull org.bukkit.permissions.Permissible member)
    • hasMember

      public boolean hasMember(@NotNull @NotNull org.bukkit.permissions.Permissible member)
    • getMembers

      @NotNull public @NotNull Set<org.bukkit.permissions.Permissible> getMembers()
    • addChildGroup

      public void addChildGroup(@NotNull @NotNull PermissionGroup group)
    • removeChildGroup

      public void removeChildGroup(@NotNull @NotNull PermissionGroup group)
    • getChildGroups

      @NotNull public @NotNull Set<PermissionGroup> getChildGroups()
    • grantPermission

      public void grantPermission(@NotNull @NotNull String permission)
      Grants a permission to this group and recalculates.
    • revokePermission

      public void revokePermission(@NotNull @NotNull String permission)
      Revokes a permission from this group and recalculates.
    • recalculate

      public void recalculate()
      Fully recalculates permissions by rebuilding from scratch. Call this whenever child group permissions change.
    • applyToPlayer

      @NotNull public @NotNull org.bukkit.permissions.PermissionAttachment applyToPlayer(@NotNull org.bukkit.entity.Player player, @NotNull @NotNull org.bukkit.plugin.Plugin plugin)
      Applies this group's effective permissions to a player via a PermissionAttachment. Store the returned attachment to remove it later on quit.