Interface Permissible
- All Superinterfaces:
ServerOperator
- All Known Subinterfaces:
AbstractArrow, AbstractCow, AbstractHorse, AbstractNautilus, AbstractSkeleton, AbstractVillager, AbstractWindCharge, AcaciaBoat, AcaciaChestBoat, Ageable, Allay, Ambient, Animals, AreaEffectCloud, Armadillo, ArmorStand, Arrow, Axolotl, BambooChestRaft, BambooRaft, Bat, Bee, BirchBoat, BirchChestBoat, Blaze, BlockCommandSender, BlockDisplay, Boat, Bogged, Boss, Breedable, Breeze, BreezeWindCharge, Bucketable, Camel, CamelHusk, Cat, CaveSpider, CherryBoat, CherryChestBoat, ChestBoat, ChestedHorse, Chicken, Cod, CollarColorable, CommandMinecart, CommandSender, ComplexEntityPart, ComplexLivingEntity, ConsoleCommandSender, CopperGolem, Cow, Creaking, Creature, Creeper, Damageable, DarkOakBoat, DarkOakChestBoat, Display, 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, HappyGhast, Hoglin, HopperMinecart, Horse, HumanEntity, Husk, Illager, Illusioner, Interaction, IronGolem, Item, ItemDisplay, ItemFrame, JungleBoat, JungleChestBoat, LargeFireball, Leashable, LeashHitch, LightningStrike, LingeringPotion, LivingEntity, Llama, LlamaSpit, MagmaCube, MangroveBoat, MangroveChestBoat, Mannequin, Marker, MessageCommandSender, Minecart, Mob, Monster, Mule, MushroomCow, Nautilus, NPC, OakBoat, OakChestBoat, Ocelot, OminousItemSpawner, Painting, PaleOakBoat, PaleOakChestBoat, Panda, Parched, Parrot, Phantom, Pig, Piglin, PiglinAbstract, PiglinBrute, PigZombie, Pillager, Player, PolarBear, PoweredMinecart, Projectile, ProxiedCommandSender, PufferFish, Rabbit, Raider, RangedEntity, Ravager, RemoteConsoleCommandSender, RideableMinecart, Salmon, SchoolableFish, Shearable, Sheep, Shulker, ShulkerBullet, Silverfish, Sittable, SizedFireball, Skeleton, SkeletonHorse, Slime, SmallFireball, Sniffer, Snowball, Snowman, SpawnerMinecart, SpectralArrow, Spellcaster, Spider, SplashPotion, SpruceBoat, SpruceChestBoat, Squid, Steerable, StorageMinecart, Stray, Strider, Tadpole, Tameable, TextDisplay, ThrowableProjectile, ThrownExpBottle, ThrownPotion, TippedArrow, TNTPrimed, TraderLlama, Trident, TropicalFish, Turtle, Vehicle, Vex, Villager, Vindicator, WanderingTrader, Warden, WaterMob, WindCharge, Witch, Wither, WitherSkeleton, WitherSkull, Wolf, Zoglin, Zombie, ZombieHorse, ZombieNautilus, 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 emptyPermissionAttachmentto this objectaddAttachment(@NotNull Plugin plugin, int ticks) Temporarily adds a new emptyPermissionAttachmentto this objectaddAttachment(@NotNull Plugin plugin, @NotNull String name, boolean value) Adds a newPermissionAttachmentwith a single permission by name and valueaddAttachment(@NotNull Plugin plugin, @NotNull String name, boolean value, int ticks) Temporarily adds a newPermissionAttachmentwith a single permission by name and valueGets a set containing all of the permissions currently in effect by this objectbooleanhasPermission(@NotNull String name) Gets the value of the specified permission, if set.booleanhasPermission(@NotNull Permission perm) Gets the value of the specified permission, if set.booleanisPermissionSet(@NotNull String name) Checks if this object contains an override for the specified permission, by fully qualified namebooleanChecks if this object contains an override for the specifiedPermissionpermissionValue(@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.voidRecalculates the permissions for this object, if the attachments have changed values.voidremoveAttachment(@NotNull PermissionAttachment attachment) Removes the givenPermissionAttachmentfrom this objectMethods inherited from interface ServerOperator
isOp, setOp
-
Method Details
-
isPermissionSet
-
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
-
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 newPermissionAttachmentwith 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 emptyPermissionAttachmentto 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 newPermissionAttachmentwith 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 emptyPermissionAttachmentto 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 givenPermissionAttachmentfrom 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
-