mirror of
https://github.com/MilkBowl/Vault.git
synced 2025-03-02 11:31:05 +01:00
added getGroups() to return a full list of all group-names
This commit is contained in:
parent
39e0bea777
commit
23df8b181f
@ -1019,4 +1019,10 @@ public abstract class Permission {
|
||||
public void setGroupSuffix(World world, String group, String suffix) {
|
||||
setGroupSuffix(world.getName(), group, suffix);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns a list of all known groups
|
||||
* @return an Array of String of all groups
|
||||
*/
|
||||
abstract public String[] getGroups();
|
||||
}
|
@ -1,11 +1,17 @@
|
||||
package net.milkbowl.vault.permission.plugins;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.HashSet;
|
||||
import java.util.Set;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
import net.milkbowl.vault.permission.Permission;
|
||||
|
||||
import org.anjocaido.groupmanager.GroupManager;
|
||||
import org.anjocaido.groupmanager.data.Group;
|
||||
import org.anjocaido.groupmanager.permissions.AnjoPermissionsHandler;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.Event.Priority;
|
||||
import org.bukkit.event.Event.Type;
|
||||
@ -321,4 +327,16 @@ public class Permission_GroupManager extends Permission {
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String[] getGroups() {
|
||||
Set<String> groupNames = new HashSet<String>();
|
||||
for (World world : Bukkit.getServer().getWorlds()) {
|
||||
Collection<Group> groups = groupManager.getWorldsHolder().getWorldData(world.getName()).getGroupList();
|
||||
for (Group group : groups) {
|
||||
groupNames.add(group.getName());
|
||||
}
|
||||
}
|
||||
return groupNames.toArray(new String[0]);
|
||||
}
|
||||
}
|
||||
|
@ -1,7 +1,11 @@
|
||||
package net.milkbowl.vault.permission.plugins;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.Set;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.Event.Priority;
|
||||
import org.bukkit.event.Event.Type;
|
||||
@ -13,6 +17,7 @@ import org.bukkit.permissions.PermissionAttachmentInfo;
|
||||
import org.bukkit.plugin.Plugin;
|
||||
import org.bukkit.plugin.PluginManager;
|
||||
|
||||
import com.nijiko.permissions.Group;
|
||||
import com.nijiko.permissions.PermissionHandler;
|
||||
import com.nijikokun.bukkit.Permissions.Permissions;
|
||||
|
||||
@ -328,4 +333,15 @@ public class Permission_Permissions2 extends Permission {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String[] getGroups() {
|
||||
Set<String> groupNames = new HashSet<String>();
|
||||
for (World world : Bukkit.getServer().getWorlds()) {
|
||||
for (Group group : perms.getGroups(world.getName())) {
|
||||
groupNames.add(group.getName());
|
||||
}
|
||||
}
|
||||
return groupNames.toArray(new String[0]);
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -19,10 +19,14 @@
|
||||
|
||||
package net.milkbowl.vault.permission.plugins;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.Set;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
import net.milkbowl.vault.permission.Permission;
|
||||
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.Event.Priority;
|
||||
import org.bukkit.event.Event.Type;
|
||||
@ -339,4 +343,15 @@ public class Permission_Permissions3 extends Permission {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public String[] getGroups() {
|
||||
Set<String> groupNames = new HashSet<String>();
|
||||
for (World world : Bukkit.getServer().getWorlds()) {
|
||||
for (Group group : perms.getGroups(world.getName())) {
|
||||
groupNames.add(group.getName());
|
||||
}
|
||||
}
|
||||
return groupNames.toArray(new String[0]);
|
||||
}
|
||||
}
|
||||
|
@ -403,4 +403,14 @@ public class Permission_PermissionsBukkit extends Permission {
|
||||
public void setGroupSuffix(String world, String group, String suffix) {
|
||||
throw new UnsupportedOperationException(getName() + " does not support group info nodes.");
|
||||
}
|
||||
|
||||
@Override
|
||||
public String[] getGroups() {
|
||||
List<String> groupNames = new ArrayList<String>();
|
||||
for (Group group : perms.getAllGroups()) {
|
||||
groupNames.add(group.getName());
|
||||
}
|
||||
|
||||
return groupNames.toArray(new String[0]);
|
||||
}
|
||||
}
|
||||
|
@ -82,7 +82,7 @@ public class Permission_PermissionsEx extends Permission {
|
||||
|
||||
@Override
|
||||
public boolean playerHas(Player player, String permission) {
|
||||
return this.permission.has(player, permission);
|
||||
return PermissionsEx.has(player, permission);
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -466,4 +466,16 @@ public class Permission_PermissionsEx extends Permission {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public String[] getGroups() {
|
||||
PermissionGroup[] groups = PermissionsEx.getPermissionManager().getGroups();
|
||||
if (groups == null || groups.length == 0)
|
||||
return null;
|
||||
String[] groupNames = new String[groups.length];
|
||||
for (int i = 0; i < groups.length; i++) {
|
||||
groupNames[i] = groups[i].getName();
|
||||
}
|
||||
return groupNames;
|
||||
}
|
||||
}
|
@ -242,4 +242,9 @@ public class Permission_SuperPerms extends Permission {
|
||||
public void setGroupSuffix(String world, String group, String suffix) {
|
||||
throw new UnsupportedOperationException(getName() + " no data permissions.");
|
||||
}
|
||||
|
||||
@Override
|
||||
public String[] getGroups() {
|
||||
throw new UnsupportedOperationException(getName() + " does not support group listing!");
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user