Package org.bukkit.permissions
Interface Permissible
- All Superinterfaces:
ServerOperator
- All Known Subinterfaces:
AbstractArrow
,AbstractHorse
,AbstractSkeleton
,AbstractVillager
,Ageable
,Allay
,Ambient
,Animals
,AreaEffectCloud
,ArmorStand
,Arrow
,Axolotl
,Bat
,Bee
,Blaze
,BlockCommandSender
,Boat
,Boss
,Breedable
,Bucketable
,Camel
,Cat
,CaveSpider
,ChestBoat
,ChestedHorse
,Chicken
,Cod
,CollarColorable
,CommandMinecart
,CommandSender
,ComplexEntityPart
,ComplexLivingEntity
,ConsoleCommandSender
,Cow
,Creature
,Creeper
,Damageable
,Dolphin
,Donkey
,DragonFireball
,Drowned
,Egg
,ElderGuardian
,EnderCrystal
,EnderDragon
,EnderDragonPart
,Enderman
,Endermite
,EnderPearl
,EnderSignal
,Enemy
,Entity
,Evoker
,EvokerFangs
,ExperienceOrb
,Explosive
,ExplosiveMinecart
,FallingBlock
,Fireball
,Firework
,Fish
,FishHook
,Flying
,Fox
,Frog
,Ghast
,Giant
,GlowItemFrame
,GlowSquid
,Goat
,Golem
,Guardian
,Hanging
,Hoglin
,HopperMinecart
,Horse
,HumanEntity
,Husk
,Illager
,Illusioner
,IronGolem
,Item
,ItemFrame
,LargeFireball
,LeashHitch
,LightningStrike
,LingeringPotion
,LivingEntity
,Llama
,LlamaSpit
,MagmaCube
,Marker
,MessageCommandSender
,Minecart
,Mob
,Monster
,Mule
,MushroomCow
,NPC
,Ocelot
,Painting
,Panda
,Parrot
,Phantom
,Pig
,Piglin
,PiglinAbstract
,PiglinBrute
,PigZombie
,Pillager
,Player
,PolarBear
,PoweredMinecart
,Projectile
,ProxiedCommandSender
,PufferFish
,Rabbit
,Raider
,RangedEntity
,Ravager
,RemoteConsoleCommandSender
,RideableMinecart
,Salmon
,SchoolableFish
,Sheep
,Shulker
,ShulkerBullet
,Silverfish
,SizedFireball
,Skeleton
,SkeletonHorse
,Slime
,SmallFireball
,Snowball
,Snowman
,SpawnerMinecart
,SpectralArrow
,Spellcaster
,Spider
,SplashPotion
,Squid
,Steerable
,StorageMinecart
,Stray
,Strider
,Tadpole
,Tameable
,ThrowableProjectile
,ThrownExpBottle
,ThrownPotion
,TippedArrow
,TNTPrimed
,TraderLlama
,Trident
,TropicalFish
,Turtle
,Vehicle
,Vex
,Villager
,Vindicator
,WanderingTrader
,Warden
,WaterMob
,Witch
,Wither
,WitherSkeleton
,WitherSkull
,Wolf
,Zoglin
,Zombie
,ZombieHorse
,ZombieVillager
- All Known Implementing Classes:
BufferedCommandSender
,PermissibleBase
,TimingsReportListener
Represents an object that may be assigned permissions
-
Method Summary
Modifier and TypeMethodDescriptionaddAttachment
(@NotNull Plugin plugin) Adds a new emptyPermissionAttachment
to this objectaddAttachment
(@NotNull Plugin plugin, int ticks) Temporarily adds a new emptyPermissionAttachment
to this objectaddAttachment
(@NotNull Plugin plugin, @NotNull String name, boolean value) Adds a newPermissionAttachment
with a single permission by name and valueaddAttachment
(@NotNull Plugin plugin, @NotNull String name, boolean value, int ticks) Temporarily adds a newPermissionAttachment
with a single permission by name and valueGets a set containing all of the permissions currently in effect by this objectboolean
hasPermission
(@NotNull String name) Gets the value of the specified permission, if set.boolean
hasPermission
(@NotNull Permission perm) Gets the value of the specified permission, if set.boolean
isPermissionSet
(@NotNull String name) Checks if this object contains an override for the specified permission, by fully qualified nameboolean
Checks if this object contains an override for the specifiedPermission
permissionValue
(@NotNull String permission) Checks if this object has a permission set and, if it is set, the value of the permission.permissionValue
(@NotNull Permission permission) Checks if this object has a permission set and, if it is set, the value of the permission.void
Recalculates the permissions for this object, if the attachments have changed values.void
removeAttachment
(@NotNull PermissionAttachment attachment) Removes the givenPermissionAttachment
from this objectMethods inherited from interface org.bukkit.permissions.ServerOperator
isOp, setOp
-
Method Details
-
isPermissionSet
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
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
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
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 @NotNull PermissionAttachment addAttachment(@NotNull @NotNull Plugin plugin, @NotNull @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
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 @Nullable PermissionAttachment addAttachment(@NotNull @NotNull Plugin plugin, @NotNull @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
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
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
Gets a set containing all of the permissions currently in effect by this object- Returns:
- Set of currently effective permissions
-
permissionValue
Checks if this object has a permission set and, if it is set, the value of the permission.- Parameters:
permission
- the permission to check- Returns:
- a tri-state of if the permission is set and, if it is set, it's value
-
permissionValue
Checks if this object has a permission set and, if it is set, the value of the permission.- Parameters:
permission
- the permission to check- Returns:
- a tri-state of if the permission is set and, if it is set, it's value
-