From f0d22d071ac0737d8f962be376dcf8cf028ae365 Mon Sep 17 00:00:00 2001 From: GeorgH93 Date: Mon, 17 Jul 2023 21:01:11 +0200 Subject: [PATCH] Add permissions list to Permissions class --- .../Minepacks/Bukkit/Permissions.java | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/Minepacks/src/at/pcgamingfreaks/Minepacks/Bukkit/Permissions.java b/Minepacks/src/at/pcgamingfreaks/Minepacks/Bukkit/Permissions.java index b741a6c..c02f34c 100644 --- a/Minepacks/src/at/pcgamingfreaks/Minepacks/Bukkit/Permissions.java +++ b/Minepacks/src/at/pcgamingfreaks/Minepacks/Bukkit/Permissions.java @@ -17,6 +17,13 @@ package at.pcgamingfreaks.Minepacks.Bukkit; +import lombok.SneakyThrows; + +import java.lang.reflect.Field; +import java.lang.reflect.Modifier; +import java.util.ArrayList; +import java.util.List; + public class Permissions { public static final String BASE = "backpack."; @@ -41,4 +48,23 @@ public class Permissions public static final String INVENTORY_CLEAR = "clearInventory"; public static final String INVENTORY_CLEAR_OTHER = "clearInventory.other"; + + @SneakyThrows + public static List getPermissions() + { + Field[] fields = Permissions.class.getDeclaredFields(); + List permissions = new ArrayList<>(fields.length); + for(Field field : fields) + { + if (field.getType().equals(String.class) && field.getModifiers() == Modifier.STATIC) + { + String val = ((String) field.get(null)); + if (!val.endsWith(".")) + { + permissions.add(val); + } + } + } + return permissions; + } } \ No newline at end of file