Package org.bukkit.permissions
Interface Permissible
-
- All Superinterfaces:
ServerOperator
- All Known Subinterfaces:
AbstractArrow
,AbstractHorse
,AbstractVillager
,Ageable
,Ambient
,Animals
,AreaEffectCloud
,ArmorStand
,Arrow
,Bat
,Blaze
,BlockCommandSender
,Boat
,Boss
,Cat
,CaveSpider
,ChestedHorse
,Chicken
,Cod
,CommandMinecart
,CommandSender
,ComplexEntityPart
,ComplexLivingEntity
,ConsoleCommandSender
,Cow
,Creature
,Creeper
,Damageable
,Dolphin
,Donkey
,DragonFireball
,Drowned
,Egg
,ElderGuardian
,EnderCrystal
,EnderDragon
,EnderDragonPart
,Enderman
,Endermite
,EnderPearl
,EnderSignal
,Entity
,Evoker
,EvokerFangs
,ExperienceOrb
,Explosive
,ExplosiveMinecart
,FallingBlock
,Fireball
,Firework
,Fish
,FishHook
,Flying
,Fox
,Ghast
,Giant
,Golem
,Guardian
,Hanging
,HopperMinecart
,Horse
,HumanEntity
,Husk
,Illager
,Illusioner
,IronGolem
,Item
,ItemFrame
,LargeFireball
,LeashHitch
,LightningStrike
,LingeringPotion
,LivingEntity
,Llama
,LlamaSpit
,MagmaCube
,Minecart
,Mob
,Monster
,Mule
,MushroomCow
,NPC
,Ocelot
,Painting
,Panda
,Parrot
,Phantom
,Pig
,PigZombie
,Pillager
,Player
,PolarBear
,PoweredMinecart
,Projectile
,ProxiedCommandSender
,PufferFish
,Rabbit
,Raider
,Ravager
,RemoteConsoleCommandSender
,RideableMinecart
,Salmon
,Sheep
,Shulker
,ShulkerBullet
,Silverfish
,Skeleton
,SkeletonHorse
,Slime
,SmallFireball
,Snowball
,Snowman
,SpawnerMinecart
,SpectralArrow
,Spellcaster
,Spider
,SplashPotion
,Squid
,StorageMinecart
,Stray
,Tameable
,ThrownExpBottle
,ThrownPotion
,TippedArrow
,TNTPrimed
,TraderLlama
,Trident
,TropicalFish
,Turtle
,Vehicle
,Vex
,Villager
,Vindicator
,WanderingTrader
,WaterMob
,Witch
,Wither
,WitherSkeleton
,WitherSkull
,Wolf
,Zombie
,ZombieHorse
,ZombieVillager
- All Known Implementing Classes:
PermissibleBase
public interface Permissible extends ServerOperator
Represents an object that may be assigned permissions
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description PermissionAttachment
addAttachment(Plugin plugin)
Adds a new emptyPermissionAttachment
to this objectPermissionAttachment
addAttachment(Plugin plugin, int ticks)
Temporarily adds a new emptyPermissionAttachment
to this objectPermissionAttachment
addAttachment(Plugin plugin, String name, boolean value)
Adds a newPermissionAttachment
with a single permission by name and valuePermissionAttachment
addAttachment(Plugin plugin, String name, boolean value, int ticks)
Temporarily adds a newPermissionAttachment
with a single permission by name and valueSet<PermissionAttachmentInfo>
getEffectivePermissions()
Gets a set containing all of the permissions currently in effect by this objectboolean
hasPermission(String name)
Gets the value of the specified permission, if set.boolean
hasPermission(Permission perm)
Gets the value of the specified permission, if set.boolean
isPermissionSet(String name)
Checks if this object contains an override for the specified permission, by fully qualified nameboolean
isPermissionSet(Permission perm)
Checks if this object contains an override for the specifiedPermission
void
recalculatePermissions()
Recalculates the permissions for this object, if the attachments have changed values.void
removeAttachment(PermissionAttachment attachment)
Removes the givenPermissionAttachment
from this object-
Methods inherited from interface org.bukkit.permissions.ServerOperator
isOp, setOp
-
-
-
-
Method Detail
-
isPermissionSet
boolean isPermissionSet(@NotNull String name)
Checks if this object contains an override for the specified permission, by fully qualified name- Parameters:
name
- Name of the permission- Returns:
- true if the permission is set, otherwise false
-
isPermissionSet
boolean isPermissionSet(@NotNull Permission perm)
Checks if this object contains an override for the specifiedPermission
- Parameters:
perm
- Permission to check- Returns:
- true if the permission is set, otherwise false
-
hasPermission
boolean hasPermission(@NotNull String name)
Gets the value of the specified permission, if set.If a permission override is not set on this object, the default value of the permission will be returned.
- Parameters:
name
- Name of the permission- Returns:
- Value of the permission
-
hasPermission
boolean hasPermission(@NotNull Permission perm)
Gets the value of the specified permission, if set.If a permission override is not set on this object, the default value of the permission will be returned
- Parameters:
perm
- Permission to get- Returns:
- Value of the permission
-
addAttachment
@NotNull PermissionAttachment addAttachment(@NotNull Plugin plugin, @NotNull String name, boolean value)
Adds a newPermissionAttachment
with a single permission by name and value- Parameters:
plugin
- Plugin responsible for this attachment, may not be null or disabledname
- Name of the permission to attachvalue
- Value of the permission- Returns:
- The PermissionAttachment that was just created
-
addAttachment
@NotNull PermissionAttachment addAttachment(@NotNull Plugin plugin)
Adds a new emptyPermissionAttachment
to this object- Parameters:
plugin
- Plugin responsible for this attachment, may not be null or disabled- Returns:
- The PermissionAttachment that was just created
-
addAttachment
@Nullable PermissionAttachment addAttachment(@NotNull Plugin plugin, @NotNull String name, boolean value, int ticks)
Temporarily adds a newPermissionAttachment
with a single permission by name and value- Parameters:
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- Returns:
- The PermissionAttachment that was just created
-
addAttachment
@Nullable PermissionAttachment addAttachment(@NotNull Plugin plugin, int ticks)
Temporarily adds a new emptyPermissionAttachment
to this object- Parameters:
plugin
- Plugin responsible for this attachment, may not be null or disabledticks
- Amount of ticks to automatically remove this attachment after- Returns:
- The PermissionAttachment that was just created
-
removeAttachment
void removeAttachment(@NotNull PermissionAttachment attachment)
Removes the givenPermissionAttachment
from this object- Parameters:
attachment
- Attachment to remove- Throws:
IllegalArgumentException
- Thrown when the specified attachment isn't part of this object
-
recalculatePermissions
void recalculatePermissions()
Recalculates the permissions for this object, if the attachments have changed values.This should very rarely need to be called from a plugin.
-
getEffectivePermissions
@NotNull Set<PermissionAttachmentInfo> getEffectivePermissions()
Gets a set containing all of the permissions currently in effect by this object- Returns:
- Set of currently effective permissions
-
-