From 55b38397296813b66082ad935f773357c8ad5282 Mon Sep 17 00:00:00 2001 From: Luck Date: Mon, 2 Sep 2024 20:44:24 +0100 Subject: Add methods for spark-paper to check permissions (#444) --- .../java/me/lucko/spark/paper/PaperSparkPlugin.java | 10 ++++++++++ .../java/me/lucko/spark/paper/api/PaperSparkModule.java | 17 +++++++++++++++++ 2 files changed, 27 insertions(+) (limited to 'spark-paper/src') diff --git a/spark-paper/src/main/java/me/lucko/spark/paper/PaperSparkPlugin.java b/spark-paper/src/main/java/me/lucko/spark/paper/PaperSparkPlugin.java index eb82f8e..d70d5db 100644 --- a/spark-paper/src/main/java/me/lucko/spark/paper/PaperSparkPlugin.java +++ b/spark-paper/src/main/java/me/lucko/spark/paper/PaperSparkPlugin.java @@ -90,6 +90,16 @@ public class PaperSparkPlugin implements PaperSparkModule, SparkPlugin { return this.platform.tabCompleteCommand(new PaperCommandSender(sender), args); } + @Override + public boolean hasPermission(CommandSender sender) { + return this.platform.hasPermissionForAnyCommand(new PaperCommandSender(sender)); + } + + @Override + public Collection getPermissions() { + return this.platform.getAllSparkPermissions(); + } + @Override public void onServerTickStart() { this.tickHook.onTick(); diff --git a/spark-paper/src/main/java/me/lucko/spark/paper/api/PaperSparkModule.java b/spark-paper/src/main/java/me/lucko/spark/paper/api/PaperSparkModule.java index 011841d..e796438 100644 --- a/spark-paper/src/main/java/me/lucko/spark/paper/api/PaperSparkModule.java +++ b/spark-paper/src/main/java/me/lucko/spark/paper/api/PaperSparkModule.java @@ -24,7 +24,9 @@ import me.lucko.spark.paper.PaperSparkPlugin; import org.bukkit.Server; import org.bukkit.command.CommandSender; +import java.util.Collection; import java.util.List; +import java.util.Set; import java.util.logging.Logger; /** @@ -94,6 +96,21 @@ public interface PaperSparkModule { */ List tabComplete(CommandSender sender, String[] args); + /** + * Gets if the sender has permission to execute any spark commands. + * + * @param sender the sender + * @return if the sender has permission + */ + boolean hasPermission(CommandSender sender); + + /** + * Gets a collection of all known spark permissions. + * + * @return a set of permissions + */ + Collection getPermissions(); + /** * Called by Paper at the start of each server tick. */ -- cgit