aboutsummaryrefslogtreecommitdiff
path: root/spark-paper/src
diff options
context:
space:
mode:
authorLuck <git@lucko.me>2024-09-02 20:44:24 +0100
committerLuck <git@lucko.me>2024-09-02 20:44:42 +0100
commit55b38397296813b66082ad935f773357c8ad5282 (patch)
tree542fa21ab61892ff3c9c96421f5aa05b2e2ef273 /spark-paper/src
parent0cd9b01e0106e03f28d18354cec319ad3d2cd8e5 (diff)
downloadspark-55b38397296813b66082ad935f773357c8ad5282.tar.gz
spark-55b38397296813b66082ad935f773357c8ad5282.tar.bz2
spark-55b38397296813b66082ad935f773357c8ad5282.zip
Add methods for spark-paper to check permissions (#444)
Diffstat (limited to 'spark-paper/src')
-rw-r--r--spark-paper/src/main/java/me/lucko/spark/paper/PaperSparkPlugin.java10
-rw-r--r--spark-paper/src/main/java/me/lucko/spark/paper/api/PaperSparkModule.java17
2 files changed, 27 insertions, 0 deletions
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
@@ -91,6 +91,16 @@ public class PaperSparkPlugin implements PaperSparkModule, SparkPlugin {
}
@Override
+ public boolean hasPermission(CommandSender sender) {
+ return this.platform.hasPermissionForAnyCommand(new PaperCommandSender(sender));
+ }
+
+ @Override
+ public Collection<String> 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;
/**
@@ -95,6 +97,21 @@ public interface PaperSparkModule {
List<String> 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<String> getPermissions();
+
+ /**
* Called by Paper at the start of each server tick.
*/
void onServerTickStart();